PDA

Просмотр полной версии : Запуск проекта вручную.



Владимир86
11.04.2015, 19:43
Добрый день. Подскажите как сделать ручной запуск программы PID регулятора.При подаче питания программа начинает работать автоматом , хотелось-бы после установки уставки запускать нагрев. Может через BUTTon как нибудь реализовать,буду благодарен.

petera
11.04.2015, 22:47
Добрый день. Подскажите как сделать ручной запуск программы PID регулятора.При подаче питания программа начинает работать автоматом , хотелось-бы после установки уставки запускать нагрев. Может через BUTTon как нибудь реализовать,буду благодарен.
Самый простой способ -использовать ФБ PID_FUNCTION с дополнительным входом "EN"(добавить EN к ФБ можно через выпадающее меню)
17666

И через BUTTON или любой свободный вход ПЛК запускать и останавливать работу PID
Каждое очередное нажатие кнопки будет включать/выключать PID

жекон
11.04.2015, 22:47
Можно типа такого сгородить если конечно не нужна уставка 0 17667

Валенок
12.04.2015, 02:12
.. ручной запуск программы PID регулятора.....после установки уставки запускать нагрев. .
А какая разница - до или после ? И что в промежутке между вкл и пуском пида ?

Владимир86
13.04.2015, 17:34
Добрый вечер. Применил в проекте вход " EN/ENO" проект стартует,нагрев идет но остановить процесс не получается .Программа останавливается но выхода контроллера продолжают пульсировать. Может на выходе PID другой блок.(элемент) применить с функцией reset?

Валенок...... А какая разница - до или после ? И что в промежутке между вкл и пуском пида ? До поломки контроллера били функции " Настройка (уставка. таймер) Пуск.Стоп. Хотелось бы восстановить стенд , чтоб рабочим привычнее было. В программировании не силен CodeSYs читаю , многое не понятно но мозги есть .Контроллер от ОВЕН один на базе попался вот и стараюсь вникнуть

PS.Может есть какой элемент на шесть выходов или REAL_TO_WORD лепить .Контроллер PLC 100KL+ МВ 110-224.2А +DOP DELTA .Спасибо!

petera
14.04.2015, 12:33
Добрый вечер. Применил в проекте вход " EN/ENO" проект стартует,нагрев идет но остановить процесс не получается .Программа останавливается но выхода контроллера продолжают пульсировать. Может на выходе PID другой блок.(элемент) применить с функцией reset?

Валенок...... А какая разница - до или после ? И что в промежутке между вкл и пуском пида ? До поломки контроллера били функции " Настройка (уставка. таймер) Пуск.Стоп. Хотелось бы восстановить стенд , чтоб рабочим привычнее было. В программировании не силен CodeSYs читаю , многое не понятно но мозги есть .Контроллер от ОВЕН один на базе попался вот и стараюсь вникнуть

PS.Может есть какой элемент на шесть выходов или REAL_TO_WORD лепить .Контроллер PLC 100KL+ МВ 110-224.2А +DOP DELTA .Спасибо!
А про выходы ПЛК раньше речи не было:rolleyes:
Добавить SEL
17709

ЗЫ. "Может есть какой элемент на шесть выходов или REAL_TO_WORD лепить"
А что вместо четырех REAL_TO_WORD
17710
нельзя было обойтись одним?
17711

Владимир86
15.04.2015, 18:58
Добрый вечер petera. С элементом SEL все работает (вкл. выкл) и выхода сделал через один real-word .Проект уже как-бы готов но есть некоторые недоработки (температура отображается без десятичных ) не получается переназначить переменные real_to_word с плавающей запятой . В ПЛК-100 k modbus slave через FLOAT тоже не катит . На скрине красным цветом область как ее на ST написать .постоянно кака нибудь да ошибка при компиляции выскакивает.

petera
15.04.2015, 19:36
Добрый вечер petera. С элементом SEL все работает (вкл. выкл) и выхода сделал через один real-word .Проект уже как-бы готов но есть некоторые недоработки (температура отображается без десятичных ) не получается переназначить переменные real_to_word с плавающей запятой . В ПЛК-100 k modbus slave через FLOAT тоже не катит . На скрине красным цветом область как ее на ST написать .постоянно кака нибудь да ошибка при компиляции выскакивает.
Самый простой способ. Сначала Real нужно умножить на 10 или 100, а затем выполнять REAL_TO_INT и будет одна или две цифры после точки
17736
Красивый способ. Добавить в проект такую функцию

FUNCTION PV_to_Panel : INT
VAR_INPUT
PV_Real: REAL; (*Значение на входе *)
Nz_ai: WORD; (*положение точки*)
END_VAR
VAR
END_VAR

PV_to_Panel:=REAL_TO_WORD(PV_Real*EXPT(10,Nz_ai));
Получится так
17737
Что значит
В ПЛК-100 k modbus slave через FLOAT тоже не катит
Какая панель используется?

ЗЫ. Так какого Вы в модуль Float засунули переменную tem_p, если она INT, а не REAL? Там должна быть t1_val.
17738

жекон
15.04.2015, 19:41
Да а что с float-ом не получилось?

Владимир86
15.04.2015, 21:52
Самый простой способ. Сначала Real нужно умножить на 10 или 100, а затем выполнять REAL_TO_INT и будет одна или две цифры после точки
17736
Красивый способ. Добавить в проект такую функцию

FUNCTION PV_to_Panel : INT
VAR_INPUT
PV_Real: REAL; (*Значение на входе *)
Nz_ai: WORD; (*положение точки*)
END_VAR
VAR
END_VAR

PV_to_Panel:=REAL_TO_WORD(PV_Real*EXPT(10,Nz_ai));
Получится так
17737
Что значит
Какая панель используется?

ЗЫ. Так какого Вы в модуль Float засунули переменную tem_p, если она INT, а не REAL? Там должна быть t1_val.
17738

Спасибо что подсказали. не внимательно смотрел Float действительно REAL уже исправил real to real и десятичные появились в показаниях. Панель DELTA DOP -B07S 415 / Теперь у меня другой вопрос по таймеру , можно ли в таймере установить время отключения больше чем 60 минут . Все что прочитал это миллисекунды нужно часы ,какой элемент использовать?

Владимир86
15.04.2015, 21:59
P/S Еще вопрос ... панель + контроллер rs 232 связь есть но сигнальный светодиод (СВЯЗЬ) не горит .что бы это значило? В проекте COM port не прописаны да Читал но не понял как реализовать если не затруднит подскажите.С уважением Владимир .

petera
16.04.2015, 05:50
P/S Еще вопрос ... панель + контроллер rs 232 связь есть но сигнальный светодиод (СВЯЗЬ) не горит .что бы это значило? В проекте COM port не прописаны да Читал но не понял как реализовать если не затруднит подскажите.С уважением Владимир .
Светодиод СВЯЗЬ - это состояние связи с кодесисом.

Теперь у меня другой вопрос по таймеру , можно ли в таймере установить время отключения больше чем 60 минут . Все что прочитал это миллисекунды нужно часы ,какой элемент использовать?
Ну и задавайте нужное количество часов.
А может Вам еще и дни нужны, тогда так Т#35d23h45m21s15ms (35 дней 23 часа 45 минут 21 секунда и 15 миллисекунд):rolleyes:
Максимальное значение для типа TIME : 49d17h2m47s295ms (4194967295 ms).

Владимир86
16.04.2015, 19:38
Светодиод СВЯЗЬ - это состояние связи с кодесисом.

Ну и задавайте нужное количество часов.
А может Вам еще и дни нужны, тогда так Т#35d23h45m21s15ms (35 дней 23 часа 45 минут 21 секунда и 15 миллисекунд):rolleyes:
Максимальное значение для типа TIME : 49d17h2m47s295ms (4194967295 ms).

Добрый вечер. Спасибо за подсказку по таймеру.Теперь могу управлять с панели уставкой . таймером..и температура с десятыми.Сейчас доработаю визуализацию на панели и буду ставить на стенд. Спасибо форуму : узнал много интересного. пригодится в будущем и всем кто откликнулся .;)