Условия задачи не понятны
Т.к. биты PSB не являются энергонезависимыми, то при ВКЛЮЧЕНИИ панели PSB300 ВСЕГДА РАВЕН 0.
Таким образом "условный PSB300" никогда не сможет быть равным 1 при включении панели
Вид для печати
Но теоретически решение выглядит так
ГМ логическое И между "условный PSB300 =1" и PSB31 (одиноч. импульс при включении питания)
Вложение 74131
единица в результате (PSB500) вызывает (однократно) ф.область
Вложение 74132 Вложение 74133
Второе условие
ГМ логическое И между "условный PSB300 =0" и PSB31 (одиноч. импульс при включении питания)
Вложение 74134
единица в результате (PSB501) вызывает (однократно) ф.область
Вложение 74135 Вложение 74136
ЗЫ.
Использовал ГМ "Логика" из моей библиотеки
Вложение 74129
Проект во вложении
Извиняюсь, не уточнил, условный PSB300 это сетевой бит на ПР(slave)
Вашей библиотекой ГМ пользуюсь, и сильно благодарен за такой инструмент в безвозмездном пользовании!
Тогда может быть засада..
Вложение 74139
Ведь при включении панели бит PSB31 генерирует одиночный импульс, а состояние сетевого бита из ПР в этот момент неопределенное, чтение слева, я думаю, начнется значительно позже этого момента.
Так и есть. PSB31 срабатывает раньше, чем панель успевает прочитать сетевой регистр. Как то надо отсрочить этот момент.
И еще в догонку вопрос - на графике (температур) один график DWORD, т.к. уличная температура и ее возможное отрицательное значение, второй - температура подачи WORD. Если не ставить свою размерность, то он ставит всё DWORD, а если поставить, но не включать доп шкалу (не красиво), то минимальное значение для WORD 0. И график становится брехливый. Или нельзя на одном поле разные типы данных рисовать?
Наврено нужно не PSB31 использовать, а какой то свободный бит в том же регистре ПР взять и писать туда единицу постоянно
Точнее не постоянно, а например 1 секунду
Зачем такие сложности?
В панели есть возможность принудительного переключения экранов
Вложение 74142
Пишите в ПРке в этот регистр нужные номера экрана, однократно, через SEL.
Панель когда "очухается" после включения питания сама перейдет на заданный экран, и запишет в этот регистр 0 и дальнейшие переходы по экранам можно делать кнопками панели.
Отрицательные значения не зависят от размерности WORD или DWORD.
Наверно у Вас там где DWORD используется формат Float?
Но и для WORD можно использовать отрицательные числа, в том числе и с точкой. В панели это формат DEC. В этом случае максимальное и минимальное значение зависят от положения точки
от -32768 до -32767
от -3276,8 до -3276,7
от -327,68 до -327,67
от -32,768 до -32,767