Хм... Хоть и не понял, но принимаю. Не понял вот что: где именно занимаються єти самьіе 2 POU? В компилированной программе, я думаю, код покладут 1 раз, а под каждую реализацию ФБ вьіделят просто кусок памяти. Не?
Вид для печати
Хм... Хоть и не понял, но принимаю. Не понял вот что: где именно занимаються єти самьіе 2 POU? В компилированной программе, я думаю, код покладут 1 раз, а под каждую реализацию ФБ вьіделят просто кусок памяти. Не?
Так что, функции - фтопку? Тока для возвращаемьіх значений?
Грубо, компилятор внутри создаёт таблицу всех блоков кода.
Из ФБ получается 2 внутренних блока кода (уже в скомпилированном виде): http://forum.codesys.com/viewtopic.php?t=53#p122
Возможно, им так было проще сделать, и решили, что "256 ФБ хватит каждому".
Цитата:
Сообщение от CoDeSys 2.3 Manual
Интересная дискуссия автора с самим собой...
Ну ладно, так я напрасно ввязался в количество POU. Допустим, в 256 укладусь.
Все же, есть ли хоть что-нибудь еще, что сделает мою жизнь хуже при тотальном переходе на ФБ?
Вот я так понимаю: и там, и там есть скомпилированньій код. Локальная память на ФБ отводится не так, как на функцию (потому его удобнее отлаживать? Не?). Вот одно отличие.
Далее. Если я говорю о переходе от функции у ФБ, то значит, что я не предполагал порождать множество єкземпляров. Значит, тут разница между ФБ и функцией тоже исчезает.
И... всьо. Моих познаний больше не хватает.
Да, чтобьі не вставать дваждьі. А что за фигня бьівает, что при отладке вдруг я не могу поставить точку останова в ФБ? Причем я не вижу закономерности. То вдруг позволяет, то нет. При єтом я, конечно, открьіваю єкземплярьі... Я не разбирался специально, но раз уж тут тема ФБ, дай, думаю, спрошу.
vladimirisitnikov был прав, только что проверил, получится создать только 236 ФБ при одной бибке standart и без исключения неиспользуемого
Народ, подскажите пожалуйста, где можно скачать библиотеку ПЛК_ПЧВ.lib, используемую автором в этом ролике https://www.youtube.com/watch?v=X8no0PFBhy8 (6:08)?
Держи библиотеку http://www.owen.ru/forum/attachment....id=24839&stc=1
Спасибо большое!
Здравствуйте, помогите разобраться; есть три ТРМ 201 подключенные к ПЛК 160 по RS 485 протокол Modbus RTU
Настройки RS 485 :Вложение 24916
Адреса в ТРМах 1,2,3 и соответственно такие же в universal modbus device.
При подключении такая картина Вложение 24917
опрашивается только один прибор.
Я так понял сюда надо значение вводитьВложение 24918
http://www.owen.ru/forum/showthread.php?t=13584
Есть пример подключения ТРМ202. Все по аналогии.
Спасибо,сейчас попробую. Еще хотел узнать, я в ТРМах поменял адреса которые были по умолчанию и поставил 1,2,3. Это не могло повлиять на связь с ними ?
всем привет , написал программу на языке Ld :
PROGRAM PLC_PRG
VAR
TP1: TON;
TP2: TON;
RS: RS;
T1: BOOL;
END_VAR
VAR_INPUT
PUSK: BOOL;
END_VAR
VAR_OUTPUT
STOP:BOOL;
ZASL: BOOL;
END_VAR
проблема в том что не получается написать на языке st ,можете помочь ?
задача : Зерно через заслонку 1 норией 2 подается на метательный транспортер 3.
Товарищи подскажите такую вещь. Подходит ли СМИ-2 светодиодный индикатор для отображения напряжения снимаемое с потенц. 0-10В. (тип представления- REAL) ПУТЬ: потенц- далее в плк на вход в проект где преобразуется в INT с помощью real_to_int - и на сми думаю она то что надо? есть ли у кого примеры по этой теме--проблемка такая как увидеть преобразования переменной на выходе
Здравствуйте, есть вопрос по аналоговым выходам (контроллер ПЛК160). В настройках конфигурации указано 4-20мА программно подаю на выход 11мА собираю цепь по типу <У> и <А> выдает 15 мА, а если собираю схему по типу <И> ток 6.3 мА напряжение=24 В, сопротивление 100 Ом. Подскажите пожалуйста что может быть не так.
Вложение 24946 Вложение 24947
Весьма своеобразное обращение с контроллером. Как это "собираю цепь по типу <У> и <А> .... собираю схему по типу <И>"
Если ПЛК имеет в марктровке букву "И", то какого лешего схема по типу "<У> и <А>".
А если ПЛК - "У" или "А" тогда зачем ему схема по тпу "И" ?
Если ПЛК - "А", то как он сможет работать в режиме выхода 4-20 мА?
Блин, какие миллиамперы! Вы так сожжете выход ПЛК! Ведь он предназначен для вывода напряжения 0-10В, а не тока. Выход по напряжению не допускает низкоомную нагрузку, сопротивление нагрузки должно быть десятки кОм, но не как не 100 Ом.
Зы. Хотя я наверно не прав. У меня в "бумажном" руководстве написано
И - ток 4-20
А - напряжение 0 -10
У - универсальный
А на сайте А и У - наоборот!
добрый вечер товарищи... У кого есть опыт использования панели индикации овен (сми) для отображения числа . тип int. на входе плк ТИП REAL на выходе плк INT/ конечно использую табличную ф-ю REAL_TO_INT но хотелось на выходе просмотреть ... что можно подцепить в эмуляторе на выходе этой функции... так чтобы задал значение на входе ... а на выходе появилась цифирь... А потом можно смело к плк подключить сми
Заказали ПЛК 110-60. Изучил язык CFC по ознакомительному видеокурсу Кирилла Гайнутдинова.
Но вот застрял на алгоритме создания и сохранения функционального блока: нигде не нашёл - ни в документации, которую можно скачать с сайта, ни в Сети - понятного для чайника объяснения.
Пожалуйста, приведите любой простейший пример создания функционального блока (или дайте ссылку) на CFC.
Что конкретно Вы хотите сделать?
Хочу оформить фрагмент программы, к которому буду неоднократно обращаться, в виде функционального блока.
На PLC_PRG щелкнуть правой кнопкой мыши - добавить объект - выбрать "функциональный блок" и присвоить ему имя. Далее работаешь как с обычной программой, только создаешь входные и выходные переменные(при объявлении указать var_input или var_output соответственно). а вот как дать ссылку я не знаю, могу в личку сбросить пример.
Вложение 25043Вложение 25044Вложение 25045Вложение 25046 а дальше в программе вставляешь элемент и называешь его именем функционально блока))
Попробовал по вашей подсказке создать простейший (потолочный) функциональный блок. При компиляции программа не заругалась, но когда в режиме эмуляции запустил на выполнение (нажал F5), то получил такое сообщение (см. вложения). Почему?
покажите проект, по фото ничего не понятно
Изменил название. Сообщение об ошибке тоже изменилось, теперь оно такое: "Проект должен быть корректен для подключения".
Предположил, что это от того, что создавал функциональный блок сам по себе, без открытого рабочего проекта.
Тогда создал простейший проект и уже в нём - функциональный блок. Но теперь в режиме эмуляции невозможно изменять значения входных переменных блока.
Кто-бы написал пошаговую инструкцию для чайника... как создавать, как сохранять, в какую библиотеку...
Проект выложите что сделали.
Выкладываю. Вопросы такие:
1. Для функционального блока создаётся новое окно, в котором невозможно отлаживать ФБ в режиме эмуляции. Как же его отлаживать?
2. В пределах проекта, в котором ФБ создан, этот ФБ можно вызывать. А куда и как этот ФБ следует сохранить, чтобы его можно было вызывать в любых проектах?
2. Проект-->Экспорт... Выбрать нужный(нужные) ФБ и нажать ОК. В том проекте, где понадобятся эти ФБ Проект-->Импорт...
1.
Как-то так
https://www.youtube.com/watch?v=5Di6a9zOKwc
Разобрался. Всем спасибо, и особенно - petera
Необходимо выдать на один из выходов ПЛК110.32-M ределенное число прямоугольных (бинарных) импульсов с периодом 150 мкс. Я попыталась реализовать при помощи таймера, но из-за использования переменной типа TIME получается период 2 мс (задает интервал длительности импульса и паузы). Можно ли использовать дробное число? Или другой тип?
Я нашла упоминания про блок ШИМ, но не знаю, где его найти и как использовать. Это ведь программный элемент?
Если у вас контроллер из нового семейства (М02), то пожалуй стоит проштудировать вот эту ветку:
http://www.owen.ru/forum/showthread.php?t=22169
Если контроллер старый, то не уверен, что это получится вообще, и уж точно не получится из основного цикла ПЛК.
Всем здравствуйте! Начинаю осваивать ПЛК Овен. Сейчас в работе ПЛК110-32РМ.
Подключил ПЛК(master) с панелью оператора СП307(slave) по RS-485, протокол MODBUS rtu. Оператор выбирает какой механизм включить на дисплее, ПЛК переодически считывает из панели биты состояния, вкл/откл выходы. Все хорошо, все работает.
Нужно из панели периодически считывать текущее время(PSW[300]-[306] ), вдруг оператор его изменил, и устанавливать это время в ПЛК, для корректного формирования своих лог файлов (какой механизм сколько работал и когда).
Сталкнулся со следующей проблемой:
В конфигураторе ПЛК добавляю Universal ModBus Device, добавляю в него 7 регистров, устанавливаю команду читать и период опроса 10сек (10000 мс).
Полусаю: считывает 1 регистр, проходит 10 сек, считывает другой регистр (не обязательно по порядку), прроходит 10 сек, и т.д....
КАК СДЕЛАТЬ ЧТО БЫ ПЛК СЧИТЫВАЛ ВСЕ 7 РЕГИСТРОВ ЗА 1 ЦИКЛ???
Т.Е. прочитал 7 регистров, прошло 10 сек, проситал опять все 7 регистров и т.д.
период опроса менял, таймаут тоже, без результатно....
Вложение 25142
Пробовал настроить Universal ModBus Device by command - все тоже самое. 1 команда - 1 регистр, 1 команда - другой регистр (не обязательно по порядку).
Подскажите в чем дело? Или так и должно быть?