Поэтому, для того, чтобы в стратегии получить состояние каждого тумблера необходимо преобразовать число от “Блока дискретных сигналов” в восемь сигналов, каждый из которых будет сигнализировать о состоянии конкретного переключателя.
Рисунок 40- Эмуляция БДС
Один из вариантов пробразования – использовать в стратегии “Блок процедуры пользователя” (рисунок 41). Причем, данный блок должен быть соединен с “Блоком дискретного ввода” проводником.
Рисунок 41- Дискретный ввод
Код “Блока процедуры пользователя” приведен ниже:
a = DI1;
output(#7, a & 128 );
output(#6, a & 64 );
output(#5, a & 32 );
output(#4, a & 16 );
output(#3, a & 8 );
output(#2, a & 4 );
output(#1, a & 2 );
output(#0, a & 1 );
Операция “Операнд1 & Операнд2” является битовым выделением и возвращает единицу или ноль, в зависимости от того устновлен или сброшен соответствующий бит.
Вместо “Блока процедуры пользователя” можно использовать “Блок бейсик-сценария” с кодом:
Sub SCR1()
dim A as TAG
set A = GetTag("TASK1","DI1")
‘ получение дискретного сигнала в программе
outputi 0,0
outputi 1,0
outputi 2,0
outputi 3,0
outputi 4,0
outputi 5,0
outputi 6,0
outputi 7,0
‘ обнуление 8-ми выходов
if A >= 128 Then
A = A – 128
‘ выделение битов
outputi 7,1
end if
if A >= 64 Then
A = A - 64
outputi 6,1
end if
if A >= 32 Then
A = A - 32
outputi 5,1
end if
if A >= 16 Then
A = A - 16
outputi 4,1
end if
if A >= 8 Then
A = A - 8
outputi 3,1
end if
if A >= 4 Then
A = A - 4
outputi 2,1
end if
if A >= 2 Then
A = A - 2
outputi 1,1
end if
if A >= 1 Then
A = A - 1
outputi 0,1
end if
End Sub
Если не требуется опрашивать состояние всех восьми дискретных входов, то существует возможность получить состояние одного дискретного входа отдельно. Для этого в настройке “Блока дискретного ввода” в в поле “Бит(ы)” следует выделить необходимый номер бита. Для нулевого дискретного входа (восьмого тумблера) номер бита будет 16, а для седьмого дискретного входа (первого тумблера) – 23. Тогда на выходе блока будет появляться единица или ноль, в зависимости от состояния соответствующего дискретного входа. Для опроса другого дискретного входа можно использовать другой “Блок дискретного ввода” с теми же параметрами, но с другим номером бита. Т.е. в одном “Блоке дискретного ввода” можно опрашивать один и несколько входов: от одного до восьми, меняя лишь дальнейшее выделение битов, если входов больше одного.
Задание:
1. Загрузив файлы bds.gni, di1.gni, di2.gni изучете организацию разложения входного байта в каждой из них.
2. Отобразите в стратегии состояние (вкл-выкл) какого-либо одного из восьми тумблеров БДС;
3. Отобразите в стратегии состояние (вкл-выкл) двух из восьми тумблеров БДС, не находящихся рядом, например: 1 и 3; 2 и 4; 5 и 8; 1 и 7 и т.д.), используя только один “Блок дискретного ввода”.
На лицевой панели блока дискретных сигналов (БДС расположены два ряда тумблеров (по 8 в каждом ряду). Каждый тумблер имеет два положения: включено и выключено. Переключатели соединены проводами с платой гальванической развязки PCL – 782. Первый тумблер соединен с 7-м дискретным входом платы PCL – 782, второй тумблер с 6-м дискретным входом и т.д. (см. приложение). Восьмой переключатель передает данные на нулевой дискретный вход платы. Включение какого-либо переключателя сигнализируется на плате свечением светодиода соответствующего дискретного входа. С платы гальванической развязки через 20-ти проводный шлейф данные поступают на плату дискретного ввода-вывода PCL – 724. У этой платы имеются три группы, каждая из которых может быть индивидуально настроена на ввод или вывод данных. Каждая группа поддерживает до восьми дискретных сигналов. В нашем случае на ввод данных следует,например,настроить группу С(2) платы PCL – 724. Таким образом, состояние восьми тумблеров (верхний ряд) блока дискретных сигналов можно получить от группы С платы дискретного ввода – вывода PCL – 724.
Получение дискретных данных от блока дискретных сигналов в стратегии программы Genie осуществляется “Блоком дискретного ввода“ (DI), настроенного на соответствующее устройство, т.е. на плату PCL – 724 (рисунок 42). В поле “Группа” выбирается группа байт. Но в нашем случае на выбор предоставляется только одно число – 2, что соответствует группе “C”, определенной на ввод данных на этапе настройки устройств.
Рисунок 42 - Настройка Блока дискретного ввода
Задание:
1. Загрузите файл devices.gni и ознакомтесь с примерами
2. Произведите настройку платы дискретного ввода- вывода.
3. Передайтеь информацию о состоянии тумблеров в редактор форм.
4. Загрузите файл di1_!.gni.Переключая тумблеры источника дискретных сигналов, проследите прохождение последниих.Выполните то же для di2_!.gni
Организация дискретного вывода реализуется следующим образом. Вначале в стратегии сигнал передается на “Блок дискретного вывода”(DO), настроенного на плату дискретного ввода-вывода (рисунок 43). Затем сигналы поступают на плату дискретного ввода-вывода PCL – 724, а с нее через 20-ти проводный шлейф на плату релейных выходов PCL – 785, выходы некоторых реле которой, подклчены соединительными проводами с двумя рядами индикаторов на БДС.
Плата дискретного ввода-вывода имеет три группы сигналов, одна из которых настроена на ввод (см. выше), следовательно две оставшиеся: группа 0(А) и 1(В) настроены на вывод. На плате релейных выходов расположены 16 реле, поэтому одна половина реле связана группой 0, а другая половина с группой 1. Реле с номерами 0 и 1 управляют вращением двигателя (через промежуточные реле), а реле с номерами 8 – 15 управляют двумя рядами светодиодов. Верхний ряд показывает, что выходные контакты соответствующих реле замкнуты, нижний – разомкнуты.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.