25.06.2021, 21:30
|
#3
|
Бывалый
Регистрация: 04.03.2016
Сообщения: 22
Сказал Спасибо: 2
Сказали Спасибо 1 раз(а) в 1 сообщении
|
Сообщение от Андрей Косцов
|
Удалось решить этот вопрос. Теперь вместо списка сигналов я отправляю список строк состоящий из имён сигналов, после чего с помощью AliasIO привожу их к нужному виду. Выглядит это следующим образом:
PROC WaitSignalDI(string signal_array{*},dionum value_array{*},num alarmcode_array{*})
__Recheck:
__timeout:=FALSE;
__FOR i FROM 1 TO DIM(signal_array,1) DO
____AliasIO signal_array{i},actual_wait_signal;
____WaitDI actual_wait_signal,value_array{i}MaxTime:=max_wait _timeTimeFlag:=timeout;
____IF timeout THEN
______ALARM(alarmcode_array{i});
______GOTO Recheck;
____ENDIF
__ENDFOR
ENDPROC
Вызов программы выглядит следующим образом:
WaitSignalDI ["DI_signal_1","DI_signal_2"],[0,1],[101,102];
Надеюсь кому-нибудь это будет полезно ;D
|
божественно!
|
|
|