Цитата Сообщение от Сергей0308 Посмотреть сообщение
Наверно номер(весовой коэффициент) входа надо с стек писать, по выключению - импульс на тактовый вход! Кстати вопрос, а если очередь ещё не дошла, может на второй, третий круг пойти запись в очередь или нет?
С 8 дискретными входами-выходами, больше в ПР200 не нашёл, без вторых, третьих кругов, т. е. сигнал появляется на входе и ждёт включения соответствующего выхода, короче как-то так:

Пример_2.PNG

Возможно у других проще получится, буду рад посмотреть!
Цитата Сообщение от Сергей0308 Посмотреть сообщение
Так я и не ставил такой цели, можно сделать чтобы из очереди выбрасывало если сигнал на входе пропадал до срабатывания соответствующего выхода, но это существенно всё усложнит и стоит ли такое делать? А при нормальной работе, когда сигнал держится до срабатывания выхода и переполнится стек не может, так как глубина стека равняется количеству входов-выходов!
Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
Всё это конечно интересно, но любой "сбойный" ("моросящий" по вашему) датчик кладёт всю систему (прямо "родовое пятно" какое-то). От чего могут возникать некритичные сбои датчиков уровня, говорил выше. Алгоритм чётко встаёт на сбойном датчике (заполнение не отключается), и это хорошо для поиска причины.
сбой.PNG
У моего решения подобных недостатков нет.
1)Можно одновременно открывать несколько линий залива. (от превышения числа открытых линий при сбоях избавился)
2) использование 2х уровней. верх/низ (можно объединить в 1 датчик).
3) "моросящий" по зыби датчик, отправляется в конец очереди. (уровень жидкости упадёт, и он нормально отработает).
4) задержка включения следующего клапана - (это важно для катушек переменного тока при одновременной работе нескольких линий)
В исходном (после запуска симулятора) - все датчики показывают минимальный уровень.
Вроде всё уже писал, думаю повторять в каждом посте нет необходимости?! И что мешает это отдельно сделать по гистерезису или как Мелкий предлагал, по времени или и то и другое всё вместе! Мне кажется это правильней, чем городить супер макрос, лучше когда под рукой отдельные функции и лепишь из них что хочешь, это как буквы и иероглифы!
Можно конечно сделать если вход выключился до включения соответствующего выхода чтобы этот клапан удалялся из очереди(если Гампус не успеет объявиться к этому времени), в следующей версии наверно так и сделаю!
И насчёт массивов, я наверно ещё не осознал их полезность, чем критиковать лучше конкретный пример привели бы, не очень заумный, чтобы понятно всем стало, это Ситникову!