savushkin-r-d / ptusa_main

Programmable automation controller (PAC) main program
MIT License
4 stars 20 forks source link

Проверка команд для управления ручным режимом устройств #722

Closed AlexandrBehunkov closed 1 month ago

AlexandrBehunkov commented 1 month ago

Для всех устройств необходимо добавить функцию проверки активности ручного режима: в устройствах если в поле ручного режима записывается значение >1, то возвращать 0. Активность ручного режима должна выполняться только отправкой значения 0/1.

idzm commented 1 month ago

@AlexandrBehunkov - тут нужны пояснения: что эта функция должна делать и как она будет использоваться.

AlexandrBehunkov commented 1 month ago

@idzm Эта функция нужна для проверки любого устройства на ручной режим. В последующем планируется создать "индикатор", который будет указывать на активность ручного режима в группе сигналов/устройств.

idzm commented 1 month ago

А зачем нам такой индикатор?

AlexandrBehunkov commented 1 month ago

Были ситуации, когда сигнал DO/AO переводили в ручной режим и при трансляции на данный сигнал значения, оно не передавалось.

idzm commented 1 month ago

Все правильно - если устройство в ручном режиме, то оно управляется оператором, а все остальное игнорируется. Или нужна какая-то другая логика?

AlexandrBehunkov commented 1 month ago

Нет, логику менять не нужно. Нужно подумать над визуализацией активности ручного режима для AO сигналов. Для этого я и планировал создать пользовательскую функцию в lua, для обработки устройств, ручной режим которых не отображается.

idzm commented 1 month ago

Так есть тег M- по нему можно определить, активен ли ручной режим.

AlexandrBehunkov commented 1 month ago

Вопрос: как понять, что в сигнале AO включен ручной режим?

idzm commented 1 month ago

Тег M - по нему можно определить, активен ли ручной режим: 1 - ручной режим активен, 0 - ручной режим неактивен.