Возникла проблема. Имеется несколько пароувлажнителей, общая мощность у них выше, чем мы можем использовать. Попросили реализовать такое решение - например одновременно разрешаем работать одновременно не больше пяти, ставим в очередь, и последовательно переключаем. Сперва хотел сделать в FBD. В регистр пишем, сдвигаем по кругу, но сходу не получилось. Этот регистр может меняться на ходу, его как то надо накладывать на регистр выходов, нет функции сдвига регистра с переносом битов (можно сделать свою конечно :) ) Короче сходу с FBD не заладилось. Благо в owenlogic есть возможность использовать модули в ST. Вкратце - создаем массив увлажнителей, которые нужно включить. Из этого массива читаем индексы первых пяти увлажнителей (1,2,3,4,5). Через заданное время начинаем считать со второго элемента следующие 5 индексов (2,3,4,5,6) и т.д. При этом следим, что если дошли до конца массива увлажнителей, то возвращаемся к началу. Ссылка на прогу Макрос ротатор получает состояние входов контрол