Страница 1 из 1
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 15:57
PersianJ
Добрый день всем. У меня такой вопрос.
Имеется котел который нагревается 9-ю ТЭН-ами. Включение и выключение этих ТЭН-ов сделал несколько необычно.
Блок ПИД регулятора выставил на работу с ШИМ а выходной сигнал (0....100%) раскидал через компараторы на 9 релюшек. То есть если сигнал равен 100% работают все 9 реле. Если заданная температура достигает определенного % от уставки (приближается к уставке), то несколько из 9 реле выключаются. Проценты не пишу так как их можно выставлять как угодно.
Так же начало ступенчатой регулировки можно подбирать через компараторы.
Это вкратце. Там еще через меню можно выбирать от 3 до 9 реле. Ступенчатое включение и прочие функции. (кому будет интересно позже скину схемку в Flprog. С этим всем я разобрался.
Но еще хочу сделать следующее (для понимания возьмем температуру (40гр):
Логика такая:
1. При включении поочередно включаются все 9 ТЭН=ов (это сделано).
2. При достижении 37-38 градусов (92-93% сигнала ШИМ) часть ТЭНов выключаются. К примеру 7 из 9 реле. И так до полного отключения всех ТЭН-ов. Это тоже сделано.
3. При снижении температуры все происходит в обратном направлении. Сделано.
НО!!! Тут есть одна загвоздка. При такой схеме ТЭН-ы которые находятся в конце будут перегорать чаще так как будут чаще других включатся и отключатся.
Для того чтобы этого не было. Нужно чтобы при снижении температуры каждый раз включались разные ТЭН-ы. Рандомно или по типу бегущих огней(поочередно). Вот здесь я и встал в тупик.
Как это сделать ума не приложу. Ткните носом куда копать?
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 16:28
Dryundel
Самое простое, без рандомности, это через таблицу состояний. К примеру
режим 1 - вкл 3,
режим 2 - вкл 4, 2,
режим 3 - вкл 5, 9, 6
и т. д.
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 16:47
Sancho
PersianJ писал(а): 22 окт 2021, 15:57
НО!!! Тут есть одна загвоздка. При такой схеме ТЭН-ы которые находятся в конце будут перегорать чаще так как будут чаще других включатся и отключатся.
Для того чтобы этого не было. Нужно чтобы при снижении температуры каждый раз включались разные ТЭН-ы. Рандомно или по типу бегущих огней(поочередно). Вот здесь я и встал в тупик.
Как это сделать ума не приложу. Ткните носом куда копать?
Сделать можно, но я бы сделал немного не так. Порядок включения реле менять, например, один раз в день.
Можно сделать на мультиплексорах - но это огромное поле блоков.
Можно проще, но с изменяемой длиной "цепи"
Там еще через меню можно выбирать от 3 до 9 реле.
будет заморочка, с фиксированной длиной проще.
Отправлено спустя 1 минуту 50 секунд:
[ref]PersianJ[/ref], пришлите выходы в .flp - попробую обрисовать как. лень набирать переменные, пойдёт черновой проект с выходами.
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 16:52
Ingwar
PersianJ писал(а): 22 окт 2021, 15:57
Ткните носом куда копать?
Делал пару лет назад похожий алгоритм, но для насосов. Когда включается новый, а отключается дольше всех работающий. Делал на двух массивах, но блоков немало...
В итоге, прикинув, что частые старты и остановки это не самый лучший режим для моторов, поставили один большой и завели на ПИД частотника
Вот и Вам рекомендую - поставить один большой симистор и им плавно управлять сразу всеми ТЭНами. Может не так дешево, но в итоге ТЭНы прослужат дольше.
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 17:21
Sancho
Ingwar писал(а): 22 окт 2021, 16:52
Вот и Вам рекомендую - поставить один большой симистор и им плавно управлять сразу всеми ТЭНами. Может не так дешево, но в итоге ТЭНы прослужат дольше.
согласен, или несколько маленьких.
Скорее всего используется три фазы - сделать три секции по три фазы, сигнал от регулятора через сиквенсор, выходы чередовать посуточно.
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 17:55
PersianJ
Можно как вы сказали, но сама идея имеет право на существование и как-то очень хочется такое замутить.
Файл кинул на файлообменник сюда не лезет.
https://disk.yandex.ru/d/kfnyWAttdNKKAQ
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 20:59
Sancho
PersianJ писал(а): 22 окт 2021, 17:55
Можно как вы сказали, но сама идея имеет право на существование и как-то очень хочется такое замутить.
Согласен.
Но если оснастить хотя-бы одну ступень плавной регулировкой, было-бы намного лучше.
Желательно, что-бы эта ступень была на 10-15% мощнее всех одинаковых остальных.
Это так называемый режим мастер-слэйв(ы).
Посмотрел Ваш проект - для меня самая страшная ошибка - установка переменной из нескольких мест без условий.
Например, переменные RanX. Жуть! Вы сами представляете, какое у них будет состояние?
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 22:27
Phazz
Я вижу такой вариант, счётчик + стэк
Управление 9-ю релюшками поочередно
Добавлено: 22 окт 2021, 22:59
Sancho
Вот пример блока, на последней плате.
in - вход необходимого количества включённых тэнов;
sdvig - на сколько сдвинуть последовательность влево/вниз;
stup - количество тэнов.
Не тестировал.
Думаю, проще быть не может.
Отправлено спустя 5 минут 44 секунды:
Если использовать выводы для реле от D2 до D10 - будет вообще просто.
Управление 9-ю релюшками поочередно
Добавлено: 23 окт 2021, 16:14
Dryundel
[ref]PersianJ[/ref], специально для Вас.
RandSumBit
Рандомная сумма бит.
На вход блока подается количество бит которые должны принять "1"
На выходе - рандомное число в котором сумма бит равна значению на входе.
В параметрах пользователя необходимо выставить максимальное число задействованных бит.
(В Вашем случае это 9 - по количеству ТЭН)
Важно!
В случае если на входе число превышающее задействованную битность,
на выходе будет максимально возможное число соответствующее выбранной битности.
Если на входе "0" или отрицательное число, то на выходе будет "0"
Код блока совсем не большой и не займет много памяти.
Для того что бы раскидать биты по выходам(пинам) воспользуйтесь штатным блоком "Дешифратор". Количество единиц на выходах дешифратора будет соответствовать числу на входе блока
RandSumBit, на остальных выходах будет "0". Выходы включатся рандомно.
К примеру: Если на входе 4 то на выходе 323 или 198 или 449 и так далее...
Что соответствует комбинациям на выходе дешифратора 101000011 или 011000110 или 111000001 и так далее... (это для 9 бит)
Рандомное включение ТЭН.jpg
Рандомное включение ТЭН.flp
Отправлено спустя 1 час 12 минут 15 секунд:
В предыдущем блоке рандомное число изменяется только при изменении входного значения.
Если требуется изменить комбинацию при неизменном входном значении, вот блок с RST.
При появлении единицы на входе RST рандомное число на выходе начинает изменяться каждый цикл программы.
Можно добавить таймер и дополнительно изменять комбинацию ТЭН периодически.
Для работы с ТЭН подавайте сигнал на RST через R-триггер. Иначе, пока на RST висит "1", релюхи будут сходить с ума.
Рандомное включение ТЭН 2.jpg
Рандомное включение ТЭН 2.flp
Управление 9-ю релюшками поочередно
Добавлено: 22 апр 2022, 14:04
LGii
всем доброго времени суток ) , ребята помогите с проблемкой , сделал переключатель на релюшки , принцип как переключатель на вытяжке или на комнатном вентиляторе , не могу до делать чтобы к примеру включил первую релюшку , и этой же кнопкой была возможность ее выключить. это реально сделать ?? за ранее огромное спасибо за любой ответ,или наглядное разъяснение ) то что сделал прикрепляю
Управление 9-ю релюшками поочередно
Добавлено: 22 апр 2022, 17:13
Di123
[ref]LGii[/ref],
В пользовательских блоках выкладывал блок на одну кнопку
Я ее использую по принципу одно нажатие выключить а два нажатия включить а три нажатия сброс данных либо быстрый старт для жекодера что бы не крутить до 100% он стразу выставляет их
Можете свое навешать исполнение
Отправлено спустя 23 минуты 41 секунду:
хотя по вашему проекту хватит и тт тригера
2022-04-22_210928.png
Отправлено спустя 3 минуты 42 секунды:
2022-04-22_212842.png
либо вариант со сбросом
Управление 9-ю релюшками поочередно
Добавлено: 22 апр 2022, 18:25
LGii
да я пытался и стем блоком играться , но идеальный вариант когда это работает как переключатель 4 кнопки - 4 реле (если включено реле 1 , нажав к примеру реле 3 , первое выключается , и так все 4 реле, и эти же кнопки каждая могла включить и выключить свое реле . хотя спасибо , кажется дошло )))