Добрый день. Начал пробовать писать программу на ST. При эмуляции возникает какой-то не понятный глюк. Сначала in = 0 out =0;
затем in =1 out=1. Все как бы хорошо но потом при in =1 out продолжает быть равным 1!!
Как это возможно?
Вложение 45263
Вид для печати
Добрый день. Начал пробовать писать программу на ST. При эмуляции возникает какой-то не понятный глюк. Сначала in = 0 out =0;
затем in =1 out=1. Все как бы хорошо но потом при in =1 out продолжает быть равным 1!!
Как это возможно?
Вложение 45263
Всё, понял)))КуДеСис коварный))Вложение 45264
specialist kipia
Вариант 1
Вариант 2Код:IF in
THEN out:=TRUE;
ELSE out:=FALSE;
END_IF;
Код:out:=in
Добрый день.
Подскажите, пожалуйста, как можно перехватить/считать ошибку сети (RS485, Modbus RETU) ПЛК160 и подключенных модулей типа МУ110 и МВ110?
Хотелось бы иметь возможность отслеживать, что какой-то модуль отвалился и сигнализировать об этом.
Видел упоминания о библиотеке PLC160.lib, поставляемой на диске с контроллером. Однако у меня на диске от контроллера такого не нашлось.
Буду признателен за совет.
Через стандартный конфигураторВложение 45268
Добрый день.
Ответы есть в руководстве по программированию, страница 163.
https://owen.ru/uploads/24/rp_plk110.160.pdf
Не сразу понял, что надо оба состояния описывать))) Спасибо всем за помощь)
Доброго времени суток. Есть такой вопрос: имеется ПР200-220-24, имеется Owen Logic. Реализовывал ил кто-либо в этой среде ПИД-регулятор с заданием стартовой точки, или имел кто-то опыт в прикручивании этой самой стартовой точки к имеющемуся регулятору в библиотеке?
Вы думаете все поняли, что есть стартовая точка?
уточняю по стартовой точке - нужно, чтобы регулятор начинал расчет не с нулевым значением накопленной интегральной составляющей, а со значением, которое может быть получено при работе регулятора
Непонятно каким боком тута Ложик. Например КДС.Util.PID для такой задачи имеет ручной режим :
переключение в ручн, установка ручного выхода (вызов), переключение в авто (вызов). Вызовы можно в одном цикле.
Есть еще способы.
В КДС.Util.PID значение интегр.суммы определяется не только соббсно суммой но и механизмом "безударного" перехода (который заодно решает мифическую проблему "бесконечного" роста). Думаю в Ложик.ПИДе тоже должно быть подобное (см. доки), иначе этот пид нужен был бы только коням. Сферическим.
Помогите пожалуйста!
У меня ПЛК100 ОВЕН.
Хочу увидеть хоть один отправленный с него сокет по UDP соединению.
Все примеры которые мне скидывали не работают.
SysSockInetAddr по всей видимости вообще не работает. Значит записываю IP в виде 16#, SysSockHtons не понятно работает или нет, я пробовал и через него и на прямую приписывать порт структуре SOCKADDRESS.
Потом возвращаем дескриптор сокета с помощью SysSockCreate, и заносим в буфер данные и пытаемся отправить их с помощью SysSockSendTo.
Результат - ТИШИНА(
хоть и не udp но пример рабочий, если сервер еще доступен https://owen.ru/forum/showthread.php...l=1#post126715
Спасибо, посмотрю. Если вдруг появится какой нибудь пример UDP соединения, я буду благодарен, если вы его покажите.
Добрый день, есть небольшая проблема, может кто сталкивался. При использовании библиотеки SyslibCallback возникает следующее предупреждение " Предупреждение 2501: A callback function is not allowed to contain local variables".
В принципе на работу не влияет, но как-то нервирует. Если есть советы то заранее спасибо.
Спасибо. Сам разобрался.
Добрый день!
Есть ПЛК150-220-А0-М и модуль по RS485 МУ110-224.16к, возможно ли с его помошью управлять пневмораспределителем Festo?
Проблема в том что я новичок в этом деле.
Грубо говоря - есть 6 распределителей , они должны срабатывать по порядку с некоторой паузой срабатывания перед каждой операцией...
Собрал на LD схему - вроде компилируется и работает в эмуляции, при переносе на живой плк: срабатывают выходы на самом ПЛК , но вот как использовать МУ110-224.16к я не разберусь. Вроде по RS485 он подцепился и обмен идет
я посмотрел видеоуроки по подключению модулей и тп. , но там везде модули конфигурируются с типом WORD, а LD только BOOL понимает и я пока не понимаю как с этим работать..
Мне бы примерчик как это где нибудь реализовано - я бы разобрался.
Примерчик:
Вложение 45366
И имейте ввду, что желательно использовать промежуточные реле для пневмораспределетителей. А так же обязательно защиту от противоЭДС катушек. Как минимум диод параллельно катушке. Идеально - разъем с индикацией и встроенной защитой.
Здравствуйте!
Начал знакомиться со средой CoDeSys 2.3 и библиотеками. Часть из них стандарта и делает тоже самое, что и в других средах разработки, даже названия одни и те же, но есть ряд интересных, например: DECODE_FLOAT. Я видел, что на форуме задавали вопросы по работе данной функции, но я никак не могу найти ее в хелпе или иную документацию. Где всё это искать? Где можно прочитать про неё? Есть ли вообще какой-то хелп, где подробное описание всех возможных функций?
Разьем на пневмораспределителях с защитой вроде бы.
Попробовал по вашей подсказке - ошибки пропали, но МУ всё равно не срабатывает - не загорается индикатор на том выходе который хочу использовать. Убрал всё до мниимума , оставил только выходы.
Может я конфигурирую что то - не так ?
Вложение 45372
Вложение 45373
Вложение 45374
Добрый день!
РТС термистор, с проводом 2 м ДРТС014-1000_ОМ.50/2 можно использовать для ТРМ200-Н (двухканальный измеритель с универсальным входом и RS-485)?
Не хватает картинки с настройками Register output
Вложение 45376
Какой адрес? какая команда(функция) используется?
ЗЫ.
По умолчанию команда- 0х06, а для модуля нужна команда 0х10!
Alex_A
Он и не будет срабатывать в данной программе. Потому что переменная Word_to_MU110 объявлена дважды - в ПЛЦ_ПРГ и в конфигурации ПЛК. В ПЛЦ_ПРГ лишнее. То, что объявлено в конфигурации, имеет статус глобальной переменной.Цитата:
МУ всё равно не срабатывает
Сделал всё по советам , моудль вроде запустился. Спасибо
Еще вопрос - за что отвечает параметр Register adress в Register output module?
В вопросе находится ответ - параметр Register adress отвечает за адрес регистра МУ, в который Вы хотите писать биты (для МУ110 это 50 - адрес битовой маски)
Вложение 45392
В слейве (в МУ110) есть карта распределения регистров, каждый регистр имеет уникальный адрес
Вложение 45393
Странно? Почему этот вопрос возник в конце, а не в начале?
Какой адрес Вы там написали для МУ, если не знаете зачем этот параметр?
Добрый день.
Вопрос по счетчику CTU из стандартной библиотеки кодесис.
Вход PV, который задает границу отсчета заявлен с типом данных WORD, т.е. ожидается, что он может принимать значения до 65535 включительно.
Однако по факту принимает не более 32767, при больших значениях просто включает выход Q.
Ошибка в счетчике, или в моих представлениях?Вложение 45409
Можете написать свой ФБ вместо этого. И там уже хоть DWORD организовать.
Я люблю изобретать велосипеды.
Добрый день!
Подскажите, как реализовать на ST следующее:
Если input1 = true и затем input2 вдруг становиться true (т.е. input 1 и input2 = true) тогда X = 1
Если input2 = true и затем input1 вдруг становиться true (т.е. input 1 и input2 = true) тогда X = 0
Добрый вечер!! Подскажите - системные таски в Кодесис, в режиме эмуляции не работают что ли?