( из школьной программы )
Дано:
1. тип контроллера
2. чем управлять
3. что надо от этого :)
1. Ответ будет - ссылка на форум по теме.
2. Ссылка на готовое похожее решение.
3. Или различный флейм не по теме! :)
Выберите правильные пункты.
Вид для печати
Привет всем!
ПЛК160 аналоговые входы
переменные Real автоматом назначены
Подаю на АЦП +5.15в, получаю значение 1030.
Читаю мануал - нет про это удвоение.
Делаю ADC8/2/1000 - получаю то что надо.
В ПЛК160 вообще намудрили с АЦП,
пишут, что только напряжение меряет.
И ещё
AI read time (10ms) - не совсем понятно что считает беспрерывно.
Добрый день, расскажите про энерго не зависимые переменные в Кодесис 2,3.
Для моего устройства необходимо хранить некоторые значения,
такие как время задержки и частота Частотного преобразователя.
Сейчас эти значения меняю вручную, во время отладки, переменные обьявлены внутри VAR RETAIN END_VAR,
в будущем планирую использовать ип120 или ип320 для изменения их значений.
Проблема в том что при запуске программы с ПК через меню "Онлайн" программа работает корректно,
но при запуске при помощи переключателя на панели ПЛК, программа ведет себя не адекватно.
Но если эти переменные объявить внутри VAR END_VAR все работает корректно.
Всё зависит от программы, как у вас не известно. Можно и не объявлять RETAIN переменные, а просто добавить их в конфигурацию слейва,
там все переменные по умолчанию глобальные и RETAIN.
Если ПЛК мастер, можно сделать начальную инициализацию.
А вообще надо выкладывать проект или хотя бы скрины.
скорее всего - поэтому всё неправильно и работает
которые вы получаете по модбас вероятноЦитата:
такие как время задержки и частота Частотного преобразователя.
а переменные "внутри" конфигурации уже являются RETAIN, поэтому всё зависит от того, как вы их "вручную" меняете и что с ними дальше делаете.
Если у вас нет железа, то правильнее не делать какую-то псевдоимитацию обмена внутри плк, а нормально делать внешней программой обмен по сети.
Будем дальше гадать или скрины выложите? Вложение 66870
И после применения изменений, надо перезагрузить ПЛК по питанию.
Вы не правильно поняли. Ни какой имитации нет. Сейчас значение переменных меняю в режиме "Онлайн" из Кодесис. Проблема в том что программа по разному ведет себя при запуске с ПК и самостоятельном запуске. Если эти переменные
Pallet_run_length:WORD:= 2360; (*Длина пробега поддона*)
Braking_distance:WORD:=150; (*Расстояние торможения*)
Network_delay_time: TIME := T#250ms; (*время на задержку сети 485*)
High_frequencyPCH3:WORD := 650; (*высокая скорость линии*)
low_frequencyPCH3:WORD := 200; (*низкая скорость линии*)
strike_holding_time: TIME := T#150ms; (*время удержания удара*)
объявить как локальные VAR то все работает нормально. Если их объявить как RETAIN программа перестает верно считать
Run_time_at_high_speed := REAL_TO_TIME ((Pallet_run_length - Braking_distance) / (High_frequencyPCH3 * 5.42814737) * 10000) - Network_delay_time;
(Это мое предположение), из за чего таймер High_speed_timer_TP : TP; (*таймер высокой скорости*) не останавливается.
При этом если этот же код запустить с ПК, он нормально работает.