PDA

Просмотр полной версии : мой пример автоматизации запуска старого котла



Dimur
08.02.2010, 11:23
Здравствуйте, уважаемые коллеги!

Во вложенном файле - моя первая законченная реализация алгоритма запуска водогрейного котла (70х годов выпуска, с тремя горелками). С пояснительной запиской! Цель - алгоритм должен заменить оператора котла.

Внутри проекта во вкладке "модель" - виртуальная модель шкафа с ПЛК, модулями, с мигающими лампочками и все такое. Вроде всё нажимается.

Прошу Вас оценить опытным взглядом качество реализации, подсказать ньюансы и возможные варианты улучшений моих алгоритмов. Может найдете какой "косяк" :rolleyes:

Прошу учесть следующие "исходные данные":
1. Проект не коммерческий. Идея и набор оборудования принят на основе некоего мифического реализованного проекта, который мне удалось выклянчить у наладчиков. О реальном существовании такой котельной данных нет.
2. Проект последовательный и простой, как барабан. Я старался делать больше комментариев и пользовался системой обозначения переменных, как учил нас "программный препод" в школе. :D Оттуда же - любовь к Паскалю и языку ST.
3. Аналоговое управление, ПИД-регулятор и все такое - я не рискнул применить - это пока выше моих сил, но по совету наладчиков предусмотрел выход на некий регулятор ТРМ212, который будет управлять мощностью горелок по температуре... В принципе, мне кажется, что проект работоспособен :o
4. В качестве модуля ввода дискретных сигналов использован МВА8, а в качестве управления МВУ8 - эта глупость была сделана в самом начале, когда мне "посоветовали" набор оборудования наладчики. Потом я сам понял, что надо было применять МДВВ. Но в процессе работы выяснилось, что схема имеет пикантную особенность считывания реле через МВА8 (два реле кодируются цифрами 1..4) - что усложняет обработку и увеличивает мой интерес "добить до конца".

Спасибо за Ваши комментарии!!! с уважением, Рожников Дмитрий, инженер-теплотехник.

rovki
08.02.2010, 21:56
я не спец в области управления котлами,но ваш подход в реализации алгоритма мне понравился ,много внимания уделено безопасности ,здесь и тестовая и функциональная диагностика.не могу утверждать точно,но хорошо бы еще предусмотреть режим "отладочный",если это возможно в принципе в данном случае.своего рода эмулятор.это упростит работу наладчиков,при ремонте.программная имитация последовательности входных сигналов с отработкой выходных по рабочему алгоритму.ну естественно без подачи газа .Или в упрошенном варианте -запуск вентиляторов,поджога,и т.д.это может пригодится для профилактических работ.еще раз оговорюсь,если это целесообразно в данном конкретном случае,желаю вам успехов ,дерзайте,из вас будет толк,даже при наличии каких то ошибок(косяков),спецы вам подскажут.и еще ,подробная и ясная инструкция,многие разработчики грешат при оформлении своих трудов.

Jeck
08.02.2010, 23:00
а каких коментов вы ожидаете?

Dimur
09.02.2010, 08:53
2 rovki: спасибо! продолжу в том же духе.:)

2 Jeck: ;) ну, по возможности, хороших комментариев ;) с положительной оценкой и предложениями :) А если Вы скажете: "дружище, смотри, вот этот алгоритм я бы сделал так...." - это будут самые отличные слова.
И если Вы найдете косяк в алгоритме/особенность языка CodeSys или возможность "выйти в ступорный режим", бесконечные циклы и неоднозначные какие-то ньюансы - то, что часто обсуждают в подобных темах - это тоже мне очень поможет.
Впрочем, даже если не будет комментариев, раздел форума называется "наши примеры" - и я выложил свой пример! Может кто-то из новичков, таких как я, им воспользуется - всегда пожалуйста и успехов! :cool:

Николаев Андрей
09.02.2010, 10:50
Не вникал в подробности, есть несколько рекомендаций:
1. На SFC не используйте действие Init, лучше добавьте еще один шаг, и в нем реализуйте логику.
2. Сделайте отдельный ФБ для декодирования входов для МВА8 - это очень просто:
if in=0 then
vh1:=0;
vh2:=0;
end_if;
if in=1 then
...
И уже используя этот блок декодируйте все входы МВА8. А вообще, если проект - переделайте на МДВВ. По тому как скорость опроса дискретных входов с помощью МВА8 достигает 3-4 секунды. Для сигнализации долговато...