Алгоритм работы ВП wait_and_do.vi
Общий вид (иконка)
виртуального прибора
показана на
Рис.9.1.
Входы виртуального прибора:
x(executant)[Output.ctl]
управляющего элемента;
–
вход
y(sensor)[Intput.ctl]
–
выход
датчика;
Delay[32-bit integer] – определяет
время между итерациями опроса
датчика в миллисекундах. По умолчанию
равно 50 мс;
Timeout[32-bit
integer]
–
максимальное время ожидание сигнала с
датчика;
Рис.9.1 Виртуальный прибор wait_and_do
Tasks – массив кластеров для
управления cDAQ;
Mod[boolean] – определяется типом управляющего элемента. Если Mod = TRUE,
то сначала на управляющий вход (x) подается TRUE, а по приходу нужного сигнала на
датчик (y) подается FALSE; если Mod = FALSE, то на управляющий вход (x) подается
TRUE или FALSE в зависимости от состояния входа Вкл-выкл[boolean], а по приходу
сигнала на датчик (y) управляющий вход остается без изменений;
Вкл-выкл[booolean] – определяет, будет подан сигнал TRUE или FALSE на
управляющий вход. Активен только при Mod = 1;
Wait 0-1[boolean] – вход, определяющий, какого сигнала ждать с датчика.
Состояние входа соответствует ожидаемому сигналу с датчика;
Wait_time(ms) – время в миллисекундах, которое должно пройти от прихода
ожидаемого сигнала с датчика до выключения управляющего элемента (если Mod =
TRUE);
error in – кластер ошибок;
Ready[boolean] – вход, определяющий, будет ли выполняться данный модуль;
Выходы виртуального прибора:
Ready[boolean] – определяющий успешность выполнения данного модуля.
TRUE – модуль сработал успешно, FALSE – выход произошел по таймауту;
error out – кластер ошибок.
30
|
Блок-схема работы данного модуля представлена на рис.9.2.
Описание работы данного модуля:
1. Ожидание сигнала с датчика y
1.1. Если нужный сигнал пришел, ВП завершает работу и выдает TRUE на
выходе Ready out
1.2. Если нужный сигнал не пришел в течение времени, определенном входом
Timeout, вызывается ВП do_and_wait
1.2.1. Если ВП do_and_wait выполняется успешно, ВП завершает работу и выдает
TRUE на выходе Ready out
1.2.2. Если ВП do_and_wait выполняется неуспешно, ВП завершает работу и выдает
FALSE на выходе Ready out
Рис.9.2 Блок-схема программы работы виртуального
прибора wait _and_ do
31
|