Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > SCADA-системы и контроллеры стандарта IEC (МЭК) > Написание регулятора в LD


Автор: MOPEDE 14.11.2010, 14:39
Помогите написать Регулятор температуры на ЛД... немогу никак вдуплить как его написать... как график загнать в ЛД...

Автор: ama_kid 14.11.2010, 15:30
1) переведи на русский
2) Какая среда разработки?

Автор: MOPEDE 14.11.2010, 16:08
1)
1. После нажатия кнопки "ПУСК" и за условием что вакуум-аппарат пустой открыть клапан 1 и сироп поступает в аппарат.
2. После достижения  сиропа верхнего уровня, клапан 1 закрыть і открыть клапан 2 на 100%
3. После 2 мин. подачи пары , включить регулятор температуры, открыть клапан 3.
4. Клапан 3 закрыть после достижения температуры 70 градусов (диапазон датчика 50 - 250 градусов)
5. Дальше включается регулятор температуры, которая должна изменятся за таким графиком;
......
.....
6. После 1 часа 30 мин (по графику) клапан 2 закрывается и открывается клапан 4. 
7. После срабатывание датчика нижнего уровня (аппарат пустой) закрыть клапан 4.
8.(цикл можна не повторять)

2) Ladder Diagram. В PL7 pro.

Автор: ama_kid 14.11.2010, 19:32
Цитата(MOPEDE @  14.11.2010,  17:08 Найти цитируемый пост)
В PL7 pro. 
Блин, одна из самых неудобных в плане отладки - нету симулятора контроллера smile 

Накидал примерный вид, посмотри в аттаче.
Симулятора нет, поэтому какие-то недочеты могут быть, в принципе. Будут вопросы - спрашивай.

Автор: MOPEDE 14.11.2010, 21:16
Написал ты по крутому как специалист) Спасибо! По ЛД я все понял...
Но не понял ST... мы такое не учили и что оно делает не сильно понимаю...

(* Здесь переключается режим работы регулятора *)
IF(%M3)AND(NOT %MW0.4.5:X3)THEN
    %MW0.4.11:=16#0024;
    WRITE_CMD %CH0.4;
ELSIF(NOT %M3)AND(%MW0.4.5:X3)THEN
    %MW0.4.11:=16#0023;
    WRITE_CMD %CH0.4;
END_IF;


Автор: ama_kid 14.11.2010, 21:34
для начала - включи у себя отображение в символьном режиме. Должно быть вот так: 
Код
IF(Reg_on)AND(NOT P_sts_m_a)THEN
    P_order_command:=16#0024;
    WRITE_CMD %CH0.4;
ELSIF(NOT Reg_on)AND(P_sts_m_a)THEN
    P_order_command:=16#0023;
    WRITE_CMD %CH0.4;
END_IF;

переключение - либо в меню, либо клавишей Ctrl+F

А делают эти команды все лишь переключение работы регулятора, который сконфигурирован в Hardware, из авматического в ручной режим и обратно. Т.к. регулятор должен работать только когда идет обогрев паром (включен флаг Reg_on) - то в регулятор посылается команда на перевод в автоматический  режим командой 16#0024 когда этот флаг установлен. Когда флаг отключается - регулятор переводится в ручной режим обратно командой 16#0023. Эти команды для loop-контроллеров описаны в хелпе

Автор: MOPEDE 14.11.2010, 22:02
Вроде понял...

Токо у нас стоят контроллеры Micro 3705/3722 і Premium 5720, а в них loop нету(((

Автор: ama_kid 14.11.2010, 22:45
Цитата(MOPEDE @  14.11.2010,  23:02 Найти цитируемый пост)
у нас стоят контроллеры Micro 3705/3722 і Premium 5720
Хм, надо было мне сразу это уточнить. Значит надо использовать внутритекстовый блок ПИД-регулирования. Если хочешь - попробуй сам, не получится - завтра я постараюсь модифицировать в соответствии с новой информацией

Автор: MOPEDE 14.11.2010, 22:47
В этом то вся и проблема я не могу его написать)))) Буду ждать)

Автор: ama_kid 15.11.2010, 08:48
Ну ладно, смотри в аттаче. Я поправил, конечно, только давно уже работал с серией Junior, сейчас не помню точно в каком формате параметры работы ПИД-регулятора задаются. Я вынес в таблицу констант по адресу %KW0:43 это дело и проставил, как вспомнил. Поизучай ftp://57.67.146.236/HelpDesk/Automation/Algemene_Technische_Documentatie/Automation_Technical_Documentation/CD2/Intren/PDFS/35007108_K01_001_00.pdf документ на странице 362-363 и проверь\исправь как надо (а может быть вам вообще это дело преподавали недавно).

Автор: MOPEDE 25.11.2010, 21:23
Спасибо большое))))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)