SIEMENS, DF&PD

Предыдущее посещение: Ср июл 06, 2016 6:12 Текущее время: Ср июл 06, 2016 6:12

Часовой пояс: UTC + 3 часа




 [ Сообщений: 54 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Ср ноя 24, 2010 22:48 
Не в сети
Начинающий писатель

Зарегистрирован: Пн авг 10, 2009 12:54
Сообщения: 61
Добрый день!

В программе использую PID_Compact. Вроде настраивается нормально, нормально регулируется, но всплывает аналогичная проблемма - после сбоя питания контроллера регулятор отказывается запускаться в автоматическом режиме.
Кто-нибуть поборол эту проблемму? Как справиться?

Спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 25, 2010 8:10 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7511
Откуда: Украина
Beginning_programmer писал(а):
В программе использую PID_Compact. Вроде настраивается нормально, нормально регулируется, но всплывает аналогичная проблемма - после сбоя питания контроллера регулятор отказывается запускаться в автоматическом режиме.
Кто-нибуть поборол эту проблемму? Как справиться?

Проблема в том, что PID Compact меняет режим по изменению параметра sRet.i_Mode. Поэтому в OB100 я вначале присваиваю sRet.i_Mode = 0 и вызываю PID Compact, затем присваиваю sRet.i_Mode = 3 и PID Compact далее вызывается в циклическом OB, как положено. В переменной State контролируется то же значение, что и в sRet.i_Mode. После этих телодвижений вроде всё работает как в нормальных условиях, так и после сбоя питания.

P.S. Что выдаёт PID Compact в выходе Error в случае, когда регулятор не запускается? У меня - ноль, как будто всё в порядку, хотя sRet.i_Mode не равен State.
P.P.S. Те блоки (из FAQ с сайта техподдержки), которые решают всякие проблемы с PID Compact у меня не заработали, поэтому и пришлось экспериментировать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс ноя 28, 2010 16:42 
Не в сети
Известный Писатель

Зарегистрирован: Сб мар 14, 2009 19:00
Сообщения: 333
Откуда: Санкт-Петербург
Eugene1974
позвольте с Вами не согласиться: фирменное лечилово для PID-Compact худо-бедно работает, но только если совершенно точно следовать инструкциям. косячность со сбоем питания побороть оно позволяет...
с перепадом сигнала - фирменное не пробовал, но тут и свое несложно написать...

Beginning_programmer

Вам поможет вот это:
https://www.automation.siemens.com/WW/forum/guests/PostShow.aspx?HTTPS=REDIR&PostID=181103&language=en

мне помогло

стоит изучить тему http://www.automation-drives.ru/forum/viewtopic.php?t=10957, много гадостей 1200 там обсуждается, и Ваша проблема в том числе


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн ноя 29, 2010 12:25 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7511
Откуда: Украина
Андрей Афонин писал(а):
Eugene1974
позвольте с Вами не согласиться: фирменное лечилово для PID-Compact худо-бедно работает, но только если совершенно точно следовать инструкциям. косячность со сбоем питания побороть оно позволяет...
Фирменное лечилово не предназначено для сбоя по питанию. Речь в FAQ'е идёт о переходе регулятора в неактивный режим при превышении времени цикла вроде бы. Хотя я и не могу сказать, что делал в точности то, что написано. Да и собственное решение заработало. Мне одно не понятно. Почему при явной ошибке регулятора выход Error нулевой?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 30, 2010 10:01 
Не в сети

Зарегистрирован: Чт фев 18, 2010 15:13
Сообщения: 1
Откуда: Саратов
Евгений а вы бы не могли выложить на всеобщее обозрение свой вариант решения этой проблеммы.
Сам столкнулся с этой проблемой, техподдержка только пожимает плечами. Решил таким образом . В ОВ200 перед вызовоб DB "PID" ставил условие что при выходе значений аналогового датчика за границы PID input=0. Попробывал 4 раза обесточить весь шкаф все работало. Но через некоторое время, объект находиться очень далеко, при долгосрочном откл питания ПИД регулирование в автоматическом режиме не восстановилось.
Хотелось бы увидеть примеры программ кто как решил данную проблему[/quote]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 30, 2010 10:02 
Не в сети
Известный Писатель

Зарегистрирован: Сб мар 14, 2009 19:00
Сообщения: 333
Откуда: Санкт-Петербург
сорри, не тот линк

вот то, что лечит зависание при отключении питания самого контроллера: https://support.automation.siemens.com/WW/llisapi.dll?func=cslib.csinfo&lang=en&objid=42321471&caller=view


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 30, 2010 10:51 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7511
Откуда: Украина
ALEX78 писал(а):
Евгений а вы бы не могли выложить на всеобщее обозрение свой вариант решения этой проблеммы.
Выше я написал уже об этом:
http://www.automation-drives.ru/forum/viewtopic.php?p=75672#75672

ALEX78 писал(а):
В ОВ200 перед вызовоб DB "PID" ставил условие что при выходе значений аналогового датчика за границы PID input=0.
Это решение другой проблемы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 30, 2010 10:56 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7511
Откуда: Украина
Андрей Афонин писал(а):
сорри, не тот линк

вот то, что лечит зависание при отключении питания самого контроллера: https://support.automation.siemens.com/WW/llisapi.dll?func=cslib.csinfo&lang=en&objid=42321471&caller=view
FAQ называется "How can you restart a PID controller stopped by sample time failure or disable the sample time monitoring?". Но ведь сбой питания - это не проблема с циклом вызова регулятора, тем более что мониторинг цикла отключается, что я и сделал в первую очередь.


Последний раз редактировалось Eugene1974 Пт дек 03, 2010 12:36, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 30, 2010 11:11 
Не в сети
Известный Писатель

Зарегистрирован: Сб мар 14, 2009 19:00
Сообщения: 333
Откуда: Санкт-Петербург
я поначалу пробовал только отключение мониторинга (R EnCyclMonitoring) - не помогало. Выключаю питание, включаю - и усё, приплыли.

Потом - (R) и предложенный PID_restart function block - вот только тогда он начал нормально подниматься после отключения питания

задача была: автоматизация контейнерной автономной установки, там сбои по питанию предполагались нормальным рабочим режимом. и тестирование, соответственно, было очень жестким

третий шаг - мониторинг входного сигнала. чтоб отсечь вызов ПИД-блока, если он, сигнал, больше 1,5 или меньше 0,5 от сигнала на предыдущем сканировании (на случай, если отваливается питание на датчике)

итого: 3 таблэтки - и ПИД работает


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт дек 03, 2010 11:49 
Не в сети
Ведущий специалист

Зарегистрирован: Ср авг 02, 2006 9:56
Сообщения: 976
Откуда: SIEMENS I IA AS Москва
Решение проблемы перехода ПИД-регулятора в неактивный режим после перезапуска по питанию:
http://support.automation.siemens.com/W ... n/46163827


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт дек 03, 2010 12:06 
Не в сети
Известный Писатель

Зарегистрирован: Сб мар 14, 2009 19:00
Сообщения: 333
Откуда: Санкт-Петербург
может быть, нам проще самим скинуться мыслями и написать функциональный блок ПИД-регулятора для 1200?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт дек 03, 2010 15:30 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Ср июл 07, 2010 0:27
Сообщения: 1230
Откуда: ООО Фирма "КГПА"
Андрей Афонин писал(а):
может быть, нам проще самим скинуться мыслями и написать функциональный блок ПИД-регулятора для 1200?
Хорошая идея, собственно я уже написал) Только без автонастройки. В этом у меня знаний практически нету.
Может умные люди подскажут как реализовать алгоритм автонастройки? Или туда лучше не лезть?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб дек 04, 2010 15:23 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс янв 29, 2006 10:01
Сообщения: 1932
Откуда: Портал razrab.ru
Самое простое, наверное, это использовать нечеткую логику. Литературы много о fuzzy-ПИД-регуляторах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб дек 04, 2010 23:34 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Ср июл 07, 2010 0:27
Сообщения: 1230
Откуда: ООО Фирма "КГПА"
Михайло писал(а):
Самое простое, наверное, это использовать нечеткую логику. Литературы много о fuzzy-ПИД-регуляторах.
Литературы всегда много, только никогда нет времени читать)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс дек 05, 2010 8:13 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс янв 29, 2006 10:01
Сообщения: 1932
Откуда: Портал razrab.ru
Да, действительно!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 06, 2010 9:30 
Не в сети
Известный Писатель

Зарегистрирован: Сб мар 14, 2009 19:00
Сообщения: 333
Откуда: Санкт-Петербург
Михайло писал(а):
Самое простое, наверное, это использовать нечеткую логику. Литературы много о fuzzy-ПИД-регуляторах.


нечеткость может потребовать много памяти...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт май 24, 2012 17:11 
Не в сети
Писатель со стажем

Зарегистрирован: Пт фев 05, 2010 9:26
Сообщения: 505
Откуда: Moscow
Первый раз добрался до Pid_comapact.
Целый день ему сегодня потратил.
Резюмирую свои вопросы, которые пока остались

1. Программирую на SCL. Как я понимаю из подсказок Портала для PID_compact нужно сконфигурировать Setpoint,Input,Output, т.е. указать числа или переменные откуда он будет брать эти значения. Но в Конфигураторе, который открывается через папку "технологические объекты" этого сделать нельзя. Опять подсказывает, что это нужно сделать в Inspector Window. Я чуть икать от злости не начал, так как никак не мог понять где и что конфигурировать. Потом уже следуя строго по инструкции на СТЕП7 я понял, что у меня просто не открывается нужное окно. Решил попробовать создать циклический ОВ на LAD и вставил туда свой ПИД, и о!! чудо!! нужное окошко, где можно настроить Setpoint,Input,Output открылось.
В итоге на SCL я просто не могу сконфигурировать Setpoint,Input,Output и поэтому они по умолчанию равны нолю, при этом компилятор выдает ошибку, что 0 меньше нижней границы, которую я задал для входа. Чтобы завершить компиляцию, мне нужно задать границы входа, которые мне не подходят.
Считаю, что это недоработка Портала!!!

2. Никак не пойму зачем этот конфигуратор. По мне должно быть какой-то вызов функции или просто присвоение настроек ПИД в ОВ100 так сказать инициализация. А это окно конфигурирования что делает? Как оно будет пересекаться с настройками которые я сделаю во время исполнения программы?

3. Запутался я с выходом. Не могу понять как мне получить температуру воды, которая должна быть на выходе калорифера, если вход - это температура воздуха получаемая от обдува этого калорифера. В конфигураторе есть границы выхода в процентах, что мне с ними делать? Т.е. Process Value - температура воздуха, Output - температура воды. Видимо я смогу понять смысл этого выхода опять только опытным путем... а хотелось более менее закончить программу до выхода на стройплощадку.

P.S. пользую Pid_compact v1.2. Читая предыдущие посты о проблеме с перезапуском, думаю, что эта проблема уже решена в этой версии регулятора. Он вроде восстанавливает свое состояние после перезапуска контроллера без всяких дописываний в ОВ100. По крайней мере я так понял из хелпа.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт май 29, 2012 11:57 
Не в сети
Писатель со стажем

Зарегистрирован: Пт фев 05, 2010 9:26
Сообщения: 505
Откуда: Moscow
В мануале и встроенном хелпе есть такая схема PID_compact, которая приведена именно для 1200 контроллера.

Изображение

Согласно этой схемы на выход Output попадает "дельта U" c выхода PIDT1 - необходимое отклонение для управляющего воздействия. Чтобы мне получить управляющее воздействие, мне нужно сложить этот выход с текущим значением управляющего воздействия.

вопросы:
1. в каких пределах изменяется "дельта U" ?
2. как работает блок Limits. Там можно задать проценты, что это за проценты, от чего ? Мне нужно, чтобы Output изменялся от -5 до -1 и от 1 до 5. (Включена зона нечувствительности)
3. Если использовать выход Output_Per, то как сделать масштабирование блока CRP_OUT ?
4. Тут есть зона нечувствительности или мне ее самому писать?

Такое ощущение, что не хватает нескольких параметров...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт май 29, 2012 14:34 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7511
Откуда: Украина
Вот схема SFB 41/FB 41 "CONT_C":
Изображение

Чем-то она сильно напоминает то, что реализовано в PID_Compact. К тому же, на следующем рисунке PIDT1 разрисован подробно. У (S)FB41 нет ШИМ-выхода (он реализован отдельным FB), нет антинасыщения интегральной составляющей (во всяком случае - на схеме), зато есть мёртвая зона (или зона нечувствительности). Что такое Δu - я не знаю, почему с дельта, должно быть - u, но на подробном рисунке почему-то - y. Подождём следующей редакции мануала.

1. в каких пределах изменяется "дельта U" ?
См. второй блок Limit.

2. как работает блок Limits. Там можно задать проценты, что это за проценты, от чего ?
Limit - ограничитель. Первый (верхний) ограничивает задание, второй (нижний) - выход регулятора (управляющее воздействие). 0-100% - номинальные пределы. Надо сузить диапазон - пожалуйста.

Мне нужно, чтобы Output изменялся от -5 до -1 и от 1 до 5. (Включена зона нечувствительности) - зона нечувствительности, она на входе обычно применяется
4. Тут есть зона нечувствительности или мне ее самому писать?
Всё руками, как я понимаю.

3. Если использовать выход Output_Per, то как сделать масштабирование блока CRP_OUT ?
Наверное, автоматически. 0-100% должно соответствовать 0-27648.


P.S. Кстати, по многочисленным просьбам трудящихся в мануале осветили смысл коэффициентов ПИД-алгоритма управления:
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт май 29, 2012 17:27 
Не в сети
Писатель со стажем

Зарегистрирован: Пт фев 05, 2010 9:26
Сообщения: 505
Откуда: Moscow
Eugene1974 писал(а):

Limit - ограничитель. Первый (верхний) ограничивает задание, второй (нижний) - выход регулятора (управляющее воздействие). 0-100% - номинальные пределы. Надо сузить диапазон - пожалуйста.

С выхода PIDT1 должна выходить величина от -А до А. По крайней мере это видно из схемы этого блока и формулы. Т.е. это есть "дельта U". И тут все правильно. Эта "дельта U" должна складываться с текущим положением исполнительного механизма, в результате получается положение, которое нужно достичь но этого уже нет. И после этого уже только должен быть блок Limit, который ограничивает в абсолютных единицах выход, например частоту вращения двигателя от 30 до 50 Гц.
Аналогию помню для частотников Микромастер 4хх. У них тоже выходной сигнал ограничивается в процентах, но там проценты от максимальной частоты вращения. А тут от чего?

Просто я надеялся, что кто уже применил данный регулятор, смог бы объяснить смысл..

Цитата:
Наверное, автоматически. 0-100% должно соответствовать 0-27648.
Все бы хорошо было, пока не надо было бы получить сигнал 4-20мА


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 54 ]  На страницу Пред.  1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group