Задание 2
Создайте папку Zadanie2.
В данной папке создайте две папки ProjectA и ProjectB.
Откройте окно пустого проекта, сохраните его в папке Zadanie2/ ProjectA как ProjectA.lvproj и оставьте его открытым.
Создайте при помощи контекстного меню My Computer пустой ВП и пока он открыт можете сохранить его, не закрывая, как PriborA.vi в папке Zadanie2/ ProjectA.
Установите на лицевой панели ВП следующие элементы палитры элементов Controls:
элемен управления Modern >> Boolean >> Stop Button (1 шт.)
элемен управления Modern >> Boolean >> Vertical Toggle Switch (1 шт.)
цифровой индикатор Modern >> Numeric >> Numeric >> Indicator (3 шт.)
Расположите и обозначьте их так, ка показано на рисунке 5.
Рис. 5
Переключитесь в окно проекта и создайте в My Computer библиотеку ProjectA.lvlib, содержащую четыре общие переменные:
Bottle (тип Double),
Count (тип Double),
Moving (тип Int16),
Stop (тип Boolean).
Перейдите на блок-диаграмму и раскройте её на весь экран.
Установите на блок-диаграмме цикл Programming >> Structure >> While Loop, сделав его как можно больше по вертикали и по горизонтали.
Внутри данного цикла установите элемент Programming >> Structure >> Flat Sequence, состоящий из двух кадров.
Добавьте на блок-диаграмму элементы и соедините их между собой так, как показано на рисунке 6.
Рис. 6
На данном рисунке обозначены терминалы общих переменных и локальной переменной.
Перед установкой терминалов общих переменных на блок-диаграмму нужно развернуть библиотеку. Для этого выполнить команду ProjectA.lvlib из контекстного меню библиотеки ProjectA.lvlib.
Затем с палитры элементов Functions нужно перетащить пустой терминал общей переменной (Programming >> Structure >> Shared Variable).
Чтобы назначить пустому терминалу определённую общую переменную, в контекстном меню пустого терминала нужно перейти к строке Select Variable, а затем либо последовательно перейти к библиотеке компьютера с общими переменными (см. рис. 7) и выбрать нужную,
Рис. 7
Либо сделать это в окне Browse for Variable (рис. 8), вызываемого при помощи кнопки Browse… (рис. 7).
Рис. 8
После выбора общей переменной её название появится в терминале.
Ещё проще создать на блок-диаграмме общую переменную – это перетащить её из библиотеки в окне проекта на блок-диаграмму.
Если вывод общей переменной расположен слева, например, так, как показано на рисунке 9,
Рис. 9
то общая переменная находится в режиме записи данных. Чтобы переключить её в режим считывания данных, нужно в контекстном меню общей переменной, представленном на рисунке 10, поставить галочку в строке Read.
Рис. 10
Тогда общая переменная примет вид, представленный на рисунке 11.
Рис. 11
Чтобы передавать данные с ВП проекта, хранящегося в одной папке, в ВП проекта, хранящегося в другой папке необходимо создать сервер ввода/вывода (I/O Server) протокола Modbus.
В данном задании для создания такого сервера используется контекстное меню библиотеки (рис. 12).
Рис. 12
В окне Create New I/O Server нужно выбрать строку Modbus (рис. 13)
Рис.13
После щелчка по кнопке Continue в окне I/O Server Type в появившемся окне Configure Modbus I/O Server, в выпадающем списке Model нужно выбрать строку Modbus Ethernet (рис. 14)
Рис. 14
После щелчка по кнопке OK в окне проекта будет создана библиотека с созданным сервером типа Modbus (рис. 15).
Рис. 15
После этого созданные общие переменные нужно связать с сервером Modbus1. Для этого щелчком правой клавишей мыши по серверу Modbus1 вызвать контекстное меню и щёлкнуть левой клавишей мыши по строке Create Bound Variables, чтобы вызвать соответствующее окно, в котором нужно выделить созданные переменные ( рис. 16).
Рис. 16
После щелчка левой клавишей мыши по кнопке OK появится окно Multiple Variable Editor (рис.17.), в котором нужно только щёлкнуть по кнопке Done и, тем самым, создать связь общих переменных с сервером Modbus1.
Сохраните проект и пока его можно закрыть.
Рис. 17
Создайте новый проект и пока он открыт можете сохранить его в папке Zadanie2/ProjectB под именем ProjectB.lvproj.
В данном проекте щелчком правой клавиши мыши по My Computer нужно вызвать контекстное меню и выполнить команду New >> VI, чтобы открыть пустой ВП. Пока он открыт его можно сохранить в папке ProjectB под именем PriborB.vi.
Установите на лицевой панели данного ВП индикатор Modern >> Numeric >> Vertical Progress Bar (тип Double).
В контекстном меню данного индикатора снимите метку Visible Item >> Label, а в окне свойств на вкладке Appearance в секции Size задайте размеры: Height = 40, Width = 20.
Для задания координаты горизонтального перемещения X = 0 нужно вызвать на блок-диаграмме контекстное меню терминала данного индикатора и выполнить команду Create >> Property Node >> Position >> Left. На блок-диаграмме появится свойство Left в режиме считывания данных. Чтобы перевести его в режим записи данных, нужно в контекстно меню выполнить команду Change To Write. Тогда стрелка ввода данных окажется слева.
Установите на лицевой панели элемент управления Modern >> Numeric >> Vertical Pointer Slide и подключите его терминал на блок-диаграмме к свойству Left. Ползунок данного элемента должен находиться в положении 0.
После щёлчка по кнопке запуска ВП индикатор Slide окажется в позиции X=0 и ВП остановится.
Если индикатор окажется за пределами лицевой панели или очень близко к границам лицевой панели, то, перемещая ползунки лицевой панели, добейтесь нужного положения индикатора.
После этого все элементы на лицевой панели кроме индикатора Slide можно удалить, а на блок-диаграмме должны остаться только терминал элемента Slide и его свойство Left.
Добавьте на лицевую панель элементы в соответствии с рисунком 18 и расположите их так, чтобы они не перекрывали банку при перемещение до позиции с координатой X=250.
Поскольку метка Slide скрыта, то рядом с этим индикатором справа инструментом вставьте надпись «Банка».
В проекте ProjectB.lvproj в такой же последовательности, как и в проекте Project A.lvproj, нужно создать сервер Modbus Slave1. Но перед этим необходимо щелчком правой клавишей мыши по названию библиотеки (в нашем случае Library A.lvlib) вызвать контекстное меню и щелчком левой клавишей мыши по строке Deploy All развернуть библиотеку. В результате появится окно Deploiyment Progress, представленное на рисунке 19, в котором по окончании процесса развёртки библиотеки нужно щёлкнуть по кнопке Close. Благодаря этому библиотека LibraryA.lvlib станет доступной и из проекта ProjectB.lvproj
Рис. 19
После этого общие переменные из библиотеки LibraryA.lvlib нужно связать с сервером Modbus Slave1. Для этого щелчком правой клавишей мыши по серверу Modbus Slave1 вызвать контекстное меню и щёлкнуть левой клавишей мыши по строке Create Bound Variables, чтобы вызвать соответствующее окно, в котором нужно выделить созданные переменные (рис. 20), щелчком по кнопке Add добавить их в окно Added Variables.
Рис.20
После щелчка левой клавишей мыши по кнопке OK появится окно Multiple Variable Editor, в котором нужно только щёлкнуть по кнопке Done и, тем самым, создать связь общих переменных из библиотеки LibraryA.lvlib с сервером Modbus Slave1.
Используя оставшиеся на блок-диаграмме и на лицевой панели элементы сформируйте ВП, блок-диаграмма и лицевая панель которого представлены на рисунке 18.
Рис. 18
Сохраните созданный ВП.