Просмотр полной версии : примеры программ и полезности
Николаев Андрей
25.06.2007, 13:36
здесь будем размещать полезные утилиты и примеры.
просьба в теме не высказываться, чтобы удобнее было искать.
По всем вопросам, запросам и пожеланиям просьба обращаться к Николаеву Андрею: plc@owen.ru
Николаев Андрей
25.06.2007, 18:22
выкладываю утилиту чтения - записи файлов.
выкладываем как есть, ибо как продукт не планировалась - используется в целях дальнейших разработок.
Николаев Андрей
13.12.2007, 14:41
Ура, свершилось.
На сайте выложена Beta версия программки EasyWorkPLC и описание к ней: www.owen.ru/device/88206764
Программа позволяет редактировать значения параметров не используя CoDeSys.
Обсуждение программы - в отдельной теме.
Николаев Андрей
16.01.2008, 09:27
пример работы пид регулятора с автонастройкой для управления 3-х ходовым им (задвижка, клапан).
Используется аналоговыый вход контроллера (измеренное значение и время). И дискретные выходы контроллера ("больше" и "меньше").
Перед работой необходимо привязать переменные измеренного значения и управления ИМ к непосредственным фидическим входам\выходам контроллера в PLC Configuration.
Без контроллера проект работать не будет - так как библиотека PID_Function внутренняя (в самом контроллере).
Руководство написано для начинающих пользователей, чтобы облегчить первый опыт работы с ПЛК, МВА8, МВУ8 и МДВВ.
Подключение МВА8 МДВВ и МВУ8 к ПЛК по протоколу ОВЕН.zip (http://kipshop.ru/Documentation/PLC/help/podklyuchenie_mvx_k_plc_owen.zip)
528
Аналогичное руководство для связи по Modbus
Подключение МВА8 МДВВ и МВУ8 к ПЛК по протоколу ModBus.zip (http://kipshop.ru/Documentation/PLC/help/podklyuchenie_mvx_k_plc_modbus.zip)
529
Описана настройка связи с одним ПЛК
429
Подключение ИП320 в режиме Мастера
Подключение ИП320 к ПЛК (http://www.kipshop.ru/frm/info_input_PLC_IP320.rar)
Николаев Андрей
03.03.2008, 15:15
Для улучшения измерительных характеристик контроллеров ОВЕН ПЛК при работе с термосопротивлениями нами была сделана мтодика калибровки. В случае, если на Вашем контроллере показания плавают (при работе с термопреобразователями) рекомендуем провести калибровку. Программы для калибровки и описание методики проведения - во вложенном файле.
510
Николаев Андрей
04.04.2008, 17:42
Пример работы с сетевыми переменными
Николаев Андрей
16.04.2008, 10:36
Библиотека, в которой ФБ, позволяющий декодировать значение с 2-х дискретных датчиков, подключенных к одному аналоговому входу МВА8. Написан специалистом нашего диллера в Барнауле.
Николаев Андрей
16.04.2008, 10:54
Господа. Предлагаю присылать свои примеры библиотек и программ для обленгчения жизни Ваших коллег. Присланное будет размещено в разделе полезности с указанием автора.
Николаев Андрей
08.05.2008, 13:20
Пример соединения ПЛК и панели BrandChild от пользователя Партизан. Нами не проверялось.
Партизану спасибо.:)
Пример на языке ST для ПЛК100-24.K-L.
При замыкании первого входа замыкается первый выход.
При замыкании первого и второго входа замыкается второй выход.
Через 5 секунд после замыкания третьего входа замыкается третий выход.
Через 10 секунд после размыкания четвертого входа размыкается четвертый выход.
540
Простейший пример: график уставки по двум точкам. При желании по аналогии можете сделать столько точек, сколько вам нужно.
x1, y1 - координаты первой точки
x2, y2 - координаты второй точки
При выходе за пределы линейной зависимости выходная переменная принимает значение или y1, или y2.
551
В примере используются маски входов и выходов МДВВ. Это позволяет упростить программу и уменьшить информационный обмен между ПЛК и модулем.
Значение маски хранится в переменной типа word. Обращение в программе к конкретному входу или выходу осуществляется через указание соответствующего бита.
MDVV_inp.1 обращение ко второму входу МДВВ.
MDVV_out.0 обращение к первому выходу МДВВ.
552
Вот пример функционального блока и его использование в языке LD.
На вход подается сигнал от аппаратного счетчика (счетчик настраивается в plc configuration)
В параметре pulse указываете количество импульсов на один оборот.
Параметр m-mode, равный false, дает частоту в об/сек, при значении True в об/мин.
(таргет файл прилагается)
569
Реализация на ПЛК и САУ-М6 работы САУ-МП (16 алгоритм)
Автор - Александр М (КИП-Сервис)
603
__________________________________________________ ___________________________________________
Реализация на ПЛК модернизированного алгоритма
САУ-МП.14 алгоритма САУ-МП.11
Для втавки в проект необходимо импортировать функциональный блок, коментарии внутри блоков.
Автор - Виктор Алексеев
839
Данные алгоритмы не тестировались
МВА - 16 адрес, протокол modbus ASCII, RS485
ИП320 - 1 адрес (slave), Modbus RTU, RS232
ПЛК100-220.R-M прошивка 2-03 таргет 2-02-4
632
+ аналогичный пример для трм101
ТРМ101 - 2 адрес, протокол ОВЕН, RS485, скорость 115200
ПЛК100-24.К-L прошивка 2-07-2 таргет 2-05-7
ИП320 - мастер (ПЛК адрес 1), Modbus-RTU, RS232, скорость 115200
1236
ПЛК100-24.К-L прошивка 2-03 таргет 2-02-4
трм133 адрес 16, протокол ОВЕН, RS485
обратите внимание на дополнительные ФБ
633
Опрос входов и уставок ТРМ202, изменение уставки с ПЛК
ПЛК 100-24.К-L прошивка 2-3 таргет 2-02-4
668
Опрос значения, подсчитанного счетчиком СИ8 (параметр DCNT).
Для корректного отбражения полученного значения в проекте реализован ФБ пересчета. Этот же ФБ есть в архиве в виде импортируемого файла.
Аналогичным образом можно опросить значение расходомера на СИ8.
ПЛК 100-220.R-M прошивка 2-3 таргет 2-02-4
696
Автор - Сергей_К
Мастер
698
Слэйв
697
ПЛК100-24.к-L
Один из контроллеров – ведущий, другой – ведомый.
Одна из переменных пересылается из мастера в слэйв, другая запрашивается мастером из слэйва.
750
Пример формирования графика температуры отопления в зависимости от температуры наружнего воздуха с реализацией ночного режима работы.
Функциональный блок экспортирован, для вставки в проект необходимо сделать импорт.
Автор - Avit
760
ПЛК150-220.И-L прошивка 2-3 таргет 2-02-4
Подключение к выходу ПИД-регулятора дискретного выхода ПЛК и настройка ШИМ для данного выхода.
762
Пример пересчета в секунды времени, заданного на ИП320. Для примера, заданное время используется в ПЛК для таймера TP.
плк100-24.К-L прошивка 2-3 таргет 2-02-4
764
Пример отображения на ИП320 значений, измеренных на МВА.
Связь панели напрямую с модулем, минуя ПЛК.
772
ПЛК100-24.К-L прош 2-3 таргет 2-02-4
При замыкании первого входа контроллера программа записывает в выбранный интерфейс строку «check_com1»
Для смены интерфейса необходимо поменять значение параметра com_num, затем замкнуть второй вход ПЛК. Убедиться, что параметры port_handle и port_init приняли значение true.
Проверить работу можно, подключив ПЛК к компьютеру через сом порт или преобразователь интерфейсов и запустив hyper terminal
781
1) Эмуляция работы ТРМ1 (на ПЛК)
2) Опрос входа МВА (получение температуры)
3) Обработка в контроллере данных, полученных с МВА
4) Передача данных на панель для отображения температуры
5) Установка уставки, гистерезиса и режима работы с панели
6) Контроллер работает в качестве мастера
836
1) Эмуляция работы ТРМ1 (на ПЛК)
2) Опрос входа МВА (получение температуры)
3) Обработка в контроллере данных, полученных с МВА
4) Передача данных на панель для отображения температуры
5) Установка уставки, гистерезиса и режима работы с панели
6) Контроллер работает в качестве слэйва (подчиненного)
851
Действительно для ПЛК с прошивкой 2-05-7 и новее.
885
Вопросы по Web-серверу можно задать здесь:
http://www.owen.ru/forum/showthread.php?t=3129
894
Программа для отправки СМС, реализована проверка отсылки **** перепрошивка модема для разных режимов отправки СМС(PDU и текстовый), удаление СМС через некоторое время (если нужно что бы отправленные или полученные смс некоторое время хранились на симке) и т.д., + есть мелкие сопутствующие блоки: перевода русской смс в юникод и обратно, перевод числа из 10-ой в 16 - ую системы исчсилений(нужно писать длину СМС при отправке смс в режиме PDU).
Автор - mettled.
944
вопросы по примеру можно задать здесь: http://www.owen.ru/forum/showthread.php?t=99&page=2
3 программы, прибавляющие 1 в каждом цикле.
первая срабатывает 1 раз в секунду.
вторая выполняется так быстро, как это возможно.
третья срабатывает один раз при каждом замыкании 1 дискретного входа ПЛК.
973
Пример опроса модуля I7017 контроллером по протоколу DCON.
Краткое описание и таргет-файл в архиве.
1038
ПЛК100-24.К-L мастер
СМИ1 слэйв
1. передача целых значений через протокол ОВЕН.
2. передача вещественных (float) значений через протокол ОВЕН.
1157
Николаев Андрей
17.04.2009, 09:56
Пример отслеживания времени включения и времени выключения оборудования с подсчетом времени работы.
Для реализации включения\выключения используется генератор сигналов Blink.
Время наработки отслеживается со встроенных аппаратных часов реального времени, используя библиотеку SysLibTime
Николаев Андрей
21.04.2009, 10:59
пример использования библиотеки овен (без использования конфигурации плк).
опрашивается трм202.
описание работы прибора в проекте.
1) эмуляция работы трм1
2) опрос входа мва (получение температуры)
3) обработка в контроллере данных, полученных с мва и управление устройствами, подключенными на плк
4) передача данных на панель для отображения температуры
5) установка уставки, гистерезиса и режима работы с панели
6) панель подключается к порту Rs232 Debug в качестве мастера
7) модуль подключается по Rs485 к качестве подчиненного устройства
1214
Пример обмена ПЛК100-RL по протоколу ОВЕН с модулями МУ110, МВ110, МК:
1287
По протоколу ModBus RTU:
1288
Пример задания сетевых настроек модулей Мх110 (а также МВА, МВУ, МДВВ) из ПЛК100 без использования конфигуратора для модулей.
1290
краткие рекомендации по подключению устройств к мастеру при работе в сети Rs485.
начинающим читать обязательно!
1299
Пример использования модуля Archiever. При возникновении сигнала 1 в любой дискретной переменной производится соответствующая запись в файл архива.
1317
Пример организации архива с использованием библиотеки syslibfile. При достижении переменной y заданной уставки ПЛК пишет в файл ее значения в течении минуты с частотой несколько записей в секунду.
Имя файла формируется с помощью часов реального времени. На ПЛК сохраняется несколько файлов, которые автоматически удаляются при необходимости освобождения памяти.
1318
Пример работы с аппаратными часами реального времени с помощью библиотеки syslibtime. Получение данных о текущем времени и изменение времени из программы.
1320
Пример передачи вещественных чисел (с десятичной точкой) со знаком с панели СП270 на ПЛК154-У.L.
В примере рассмотрены два варианта
1) Передача с панели значения в формате INT
2) Передача с панели значения в формате FLOAT
Оба метода реализованы в виде функций.
1363
ПЛК63-L прошивка 1.94, таргет прилагается.
Простой пример работы с библиотеками отображения экранов.
Автор - lara197a
1513
пример программы для передачи времени и даты с панели оператора сп270 в программируемый логический контроллер плк150-у.м.
программа содержит функцию перевода двоично-десятичных чисел в десятичные числа.
для написания программы использовался контроллер с прошивкой 2.10.7.
1528
1) plc-csd-plc.rar
Пример связи двух ПЛК100 по средствам дозвона - CSD-соединение:
ПЛК1 работае в режиме "дозвона" через заданный период
ПЛК2 работает в режиме "ожидания вызова"
ПЛК1 опрашивает модуль аналогового ввода МВ110-224.2А, при превышении температурой заданного значения, происходит дозвон по команде на ПЛК2.
2) opros+error.rar (http://www.kipshop.ru/frm/opros_error.rar)
Пример связи ПЛК100 и ПК с установленным Modbus OPC/DDE сервером Lectus.
Реализовано два CSD-канала передачи данных: основной и аварийный. Основной - Периодический опрос удаленного объекта (ПЛК) диспетчерским пунктом(ПК). ПК- Master.
Аварийный-передача данных от ПЛК в ДП по аварии. ПЛК-Master. Подробное описание в архиве.
Кирилл Валюнин
18.02.2010, 11:19
Примеры работы модулей линейки Мх110 через CSD-соединение (дозвон в режиме передачи данных)
Модуль-ПМ01..............ПМ01-Lectus OPC
Общее описание в формате pdf http://www.kipshop.ru/Documentation/lectus/mv_lectus_gsm(csd).zip
И три примера соответственно для модулей:
МВ110-224.2А опрос значения входа модуля
МВ110-220.16Д опрос счетчика первого входа модуля
МУ110-220.8Р управление выходными элементами модуля
В архиве находятся настройки модуля и конфигурация Lectus OPC, настройки модемов указаны в pdf-файле.
1906
1907
1908
Ельцов Андрей
24.03.2010, 16:19
1. Передача данных из ОВЕН ПЛК в Lectus OPC по протоколу Modbus TCP (http://77.105.136.35/index.html/frm/1.bistriy_start_tcp.rar)
2. Передача данных из ОВЕН ПЛК в Lectus OPC через gsm-модем используя CSD-соединение. (http://77.105.136.35/index.html/frm/2.plc_lectus_gsm(csd).rar)
3. Передача архивов из ОВЕН ПЛК в Lectus OPC (http://77.105.136.35/index.html/frm/3.plc_arhiv_lectus.rar)
В данных архивах: Прошивки, таргеты ПЛК, инструкции по созданию и исходники Lectus и Codesys
Далее данные из Modbus OPC сервера Lectus (http://www.owen.ru/catalog/64467020) можно передавать в любую SCADA-систему.
Александр Приходько
24.03.2010, 18:12
Пример совместного использования в сети приборов овен.
в качестве мастера сети является программируемый контроллер плк100-р-l.
Данный прибор ведет опрос основных параметров с прибора трм212 и модуля мдвв.
Также в данном приборе реализована запись уставки и остановка\запуск для трм212
и управление выходами мдвв.
Приборы настроены и работают по протоколу овен
Скорость обмена: 115200
Адрес трм212: 16
Адрес мдвв: 32
Остальные параметры связи по умолчанию.
В проекте для плк реализована визуализация, через которую можно просматривать
полученные данные и ввод новых значений.
Также представлены конфигурации трм212 и мдвв.
Пример визуализации:
2107
Архив с проектом:
2108
Кирилл Валюнин
08.04.2010, 12:06
По просьбе пользователя Mangust пример:
Работа ПЛК110-60Р.L +МВ110-8ас (считывание данных с первого канала модуля)
В архиве:
Конфигурация модуля
Программа
Таргет 2.10
Николаев Андрей
11.04.2010, 23:20
В связи с частыми вопросами по работе с POU:
В создаваемом в CoDeSys проекте может быть несколько программных модулей, и каждый занимается своей отдельной работой, или работа POU связана.
В любом случае если речь не идет о многозадачности (в данном топике не идет) нобходимо чтобы в проекте был POU PLC_PRG. ОБЯЗАТЕЛЬНО!!!
Именно он вызывается системой исполнения, причем не явно (незаметно для пользователя - автоматически)
Остальные созданные Вами POU, если их необходимо выполнять нужно вызвать в основной программе - PLC_PRG. Без этого остальные POU не учитываются компилятором, и следовательно в дальнейшем просто не загружаются в ПЛК и не исполняются...
В приложении 2 файла: несколько подпрограмм, вызывающихся в основной программе. На языке ST и на языке CFC.
Данный пост не избавляет от необходимости прочитать в мануале по CoDeSys правила создания POU и вызова их, а только наталкивает на это... :)
Кирилл Валюнин
15.04.2010, 10:25
Пример совместного использования модулей МВ110-16Д,МВ110-2А,МУ110-8Р+Owen ModBus OPC+MasterScada 3.2
В архиве:
-конфигурации модулей
-конфигурация OPC-сервера
-проект-пример MasterScada
Чтение битовой маской входов МВ110-16Д, чтение значений с двух входов МВ110-2А, задание состояния выходных реле модуля МУ110-8Р битовой маской.
Александр Приходько
07.05.2010, 14:06
Довольно часто возникают вопросы при подключении к контроллерам нестандартного оборудования с интерфейсами RS-485 или RS-232. Это могут быть электросчетчики, расходомеры, модемы и различное оборудование с нестандартными (стандартные протоколы для наших ПЛК: OWEN, MODBUS, DCON) протоколами обмена.
В таких ситуациях необходимо использовать дополнительную библиотеку под названием SysLibCom.lib. Сама библиотека и краткое описание всегда есть на диске, который идет в комплекте с программируемым контроллером и на нашем сайте в разделе Среда программирования Codesys и другое программное обеспечение.
Данная библиотека позволяет работать с необходимым вам портом напрямую: открывать порт, закрывать и настраивать на необходимые параметры обмена. С помощью нее можно отсылать в порт заранее сформированную команду и получать ответ от устройства, который в дальнейшем обрабатывается контроллером.
В данном примере имеется начальная заготовка, которая позволяет настроить и открыть необходимый порт.
Чуть позже я выложу подробный пример как можно реализовать обмен информацией используя данную библиотекой. В частности будет пример формирования текстовых команд (что актуально для модемов, управляемых AT командами) и формирования произвольной команды в бинарном виде (Modbus подобные протоколы актуальны для большинства электросчетчиков).
2327
2326
Александр Приходько
28.05.2010, 17:15
Примеры реализации нестандартных протоколов обмена.
Пример 1:
Работа с битовыми запросами, пример реализации модбас подобного протокола на базе модуля МВА8.
Примеры визуализации:
2406
2407
Пример 2:
Работа с символьными запросами, пример работы с модемом ПМ01 посредством AT команд.
Примеры визуализации:
2408
2409
Архив с описанием и программами:
2415
Кирилл Валюнин
26.07.2010, 14:27
По просьбе пользователя Alex74
Небольшой пример
МВУ8+ПЛК100+СП270
МВУ8-rs485-ПЛК100 (ПЛК-мастер)
ПЛК100-rs232debug-СП270 (Панель-мастер)
Александр Приходько
14.09.2010, 12:45
Пример совместной работы овен плк и счетчика импульсов си30 по интерфейсу Rs485. Данный пример реализован с помощью библиотек:
ComService.lib
ModBus.lib
SysLibCom.lib
Пример визуализации:
2817
Необходимые библиотеки:
2816
Кирилл Валюнин
05.10.2010, 10:01
проекты для сп270:
Протокол обмена ModBus RTU
Адрес модуля 16
Скорость обмена 115200
сп270+мк110.8дн.4р
сп270+му110-8р
сп270+му110-8и
сп270+мв110-16д
Николаев Андрей
08.10.2010, 10:58
Пример опроса и записи переменных типа Real и типа Bool панелью СП270 (Master) и ПЛК63 (Slave).
Номера регистров указываются в заданном диапазоне. Прошивка ПЛК 2.11.
Александр Приходько
18.10.2010, 11:55
Немного выше в данной ветке форума были выложены примеры в которых реализовалась работа с портом на прямую. В связи с частыми вопросами было принято решение сделать более полный пример.
Данный пример реализован на базе библиотеки UNM. Для корректной работы библиотеки SysLibCom необходимо было увеличивать время цикла, плюс вручную открывать и настраивать порт. При использовании библиотеки UNM данные задачи выполнять нет необходимости.
В качестве примера были взяты устройства ПЛК154-U.M с прошивкой 2.10.9 и модуль аналогового ввода.
В примере полностью реализована функция 03 - Read Holding Register протокола Modbus. В примере предусмотрен контроль CRC и остальных нештатных ситуаций, таких как - отсутствие ответа, неполный ответ и ошибочный ответ. При помощи данной функции контроллер за один раз опрашивает все 48 регистров модуля МВА, после чего данный массив преобразует в удобный для восприятия вид.
В примере для удобства предусмотрена визуализация:
2944
Александр Приходько
08.11.2010, 11:19
пример работы частотного преобразователя овен пчв с программируемым логическим контроллером овен плк.
управление организовано через контрольное слово.
пример визуализации:
3011
Александр Приходько
08.11.2010, 14:26
По просьбе клиентов был сделан пример для обновленной линейки приборов ТРМ2хх, которые поддерживают протокол Modbus.
В примере ПЛК154 опрашивает значения температуры с модуля МВА8, Измеренные значения с ТРМ202 и производит запись уставок в ТРМ202.
Александр Приходько
10.11.2010, 17:13
По просьбе клиентов нами были произведены серии испытаний для определения максимальных частот, на которых работают контроллеры ОВЕН ПЛК.
В частности были проверены следующие модули:
ПЛК100:
Encoder 16 bit
Counter 16 bit
Triger
ПЛК110
Fast Z-Encoder+Counter
Fast Encoders
Fast Counters
В контроллерах была установлена прошивка 2.12.7:
http://www.owen.ru/catalog/55710393
Предварительные результаты во вложении:
3024
Испытания завершены. В архиве ниже выложены результаты испытаний.
Данная информация на текущий момент вносится в документацию.
3432
Николаев Андрей
17.12.2010, 19:05
Выкладывается пример создания пользовательской библиотеки - ПИ регулятор для управления задвижкой.
Написан CEkip. За что ему большое спасибо:cool: :cool: :cool:
Николаев Андрей
24.12.2010, 10:29
Выкладывается пример создания пользовательской библиотеки - ПИД регулятор для управления задвижкой.
Написан CEkip. За что ему большое спасибо :cool: :cool:
Николаев Андрей
24.01.2011, 15:40
ПЛК63. Настройка обмена.
Пример настройки OPC серверов Lectus и ОВЕН OPC ModBus для обмена с ПЛК63.
Александр Приходько
31.03.2011, 17:12
Пример передачи уставки таймера TON из панели оператора СП270 в ПЛК154-U-M.
Александр Приходько
31.03.2011, 17:37
Пример передачи уставки таймера TON из панели оператора СМИ1 в ПЛК100-R-L. Панель является слейвом в сети RS-485. ТАкже в сети используется модуль MK110-4ДН-4ТР.
Александр Приходько
31.03.2011, 17:46
Библиотека для работы с электросчетчиками Меркурий 230 ART.
Версия библиотеки 3.0
Скачать можно тут:
http://kipshop.ru/Primeri/DevicesOther/03_Mercury_230_ART.zip
ga-nozry
23.05.2013, 19:39
Выкладываю рабочий функциональный блок простого ПИД-регулятора для управления КЗР с датчиком положения.
В своё время намучился (CoDeSys не знал) с программной реализацией регулятора температуры, управляющего КЗР, но в итоге оказалось, что для CoDeSys существуют всякие полезные библиотеки, где по сути всё уже реализовано.
Блок используется в программах для ОВЕН ПЛК150/160 уже почти на сотне ЦТП в городе и управляет КЗРами, установленными на трубчатых и пластинчатых теплообменниках и поддерживающими необходимую температуру ГВС и отопления. Рабочий он в общем :)
Библиотеку из блока не делал, он экспортированный и код открыт. Поэтому сами решайте, какие переменные использовать как входные, какие как внутренние, что оставить константами, а что нет, и вообще, творите что хотите.
Подробное описание блока и процесс его подключения. (http://www.asutp-volgograd.com/1/post/2013/05/pid-regulator-codesys.html) (если ссылку удалите, то можете использовать информацию из поста).
Не знаю насколько актуален и полезен этот блок, но надеюсь кому-то поможет)
Выкладываю рабочий функциональный блок простого ПИД-регулятора для управления КЗР с датчиком положения.
В своё время намучился (CoDeSys не знал) с программной реализацией регулятора температуры, управляющего КЗР, но в итоге оказалось, что для CoDeSys существуют всякие полезные библиотеки, где по сути всё уже реализовано.
Блок используется в программах для ОВЕН ПЛК150/160 уже почти на сотне ЦТП в городе и управляет КЗРами, установленными на трубчатых и пластинчатых теплообменниках и поддерживающими необходимую температуру ГВС и отопления. Рабочий он в общем :)
Библиотеку из блока не делал, он экспортированный и код открыт. Поэтому сами решайте, какие переменные использовать как входные, какие как внутренние, что оставить константами, а что нет, и вообще, творите что хотите.
Подробное описание блока и процесс его подключения. (http://www.asutp-volgograd.com/1/post/2013/05/pid-regulator-codesys.html) (если ссылку удалите, то можете использовать информацию из поста).
Не знаю насколько актуален и полезен этот блок, но надеюсь кому-то поможет)
Спасибо за ФБ!
Попробую его переделать на вариант без датчика положения, благо для этого, как я понял, нужно заменить на VALVE_REG_NO_POS блок VALVE_REG.
ga-nozry
24.05.2013, 12:33
В принципе, для варианта без датчика можно заменить блок VALVE_REG на VALVE_REG_NO_POS, выставить параметры КЗР и ограничиться этим.
Так я вначале и сделал на объектах, где мы не использовали датчик, но позже мой коллега (он возится со слежением за работой ЦТП и настройкой коэффициентов по удалёнке, а я обычно в поле) столкнулся с какой-то проблемой и добавил в блок сброс интегральной составляющей при достижении и поддержании выходом ПИДа максимума или минимума в течение некоторого времени.
Сейчас, поработав с обоими вариантами (с датчиком и без), мы видим, что оба блока хорошо справляются с задачей регулирования температуры (а также давления и перепада, в некоторых местах). Причем где-то лучше один вариант, где-то другой. С датчиком обычно точность выше, но система становится менее надежна. Потому постепенно переходим на бездатчиковое управление.
Аргументы против использования датчика:
занимает вход МВА (бывает, что его-то и не хватает)
необходима юстировка этого входа
нужны провода, клеммники
бывают наводки (иногда жуткие просто) из-за обилия частотников на ЦТП
бывают проблемы с RS-485 и МВА отваливается (задействованные в управлении датчики вешаем на ПЛК)
не нужна высокая точность регулирования
За датчик:
точность регулирования всё же выше
удаленный контроль степени открытия клапана
больше инфы для выявления причин неполадок
Николаев Андрей
24.05.2013, 14:59
Может давайте заведем отдельную тему, где Вы сможете свои блоки выкладывать?
Здравствуйте! а кто-нибудь делал что-то подобное в кдс3? Нужен ПИД-регулятор для управления КЗР
Egerenok
06.04.2015, 23:57
Тестовый пример.Проверено.Работает.
Может кому пригодится.
Спасибо Пантелееву Дмитрию(компания ОВЕН).
ABZ-Энкодер
Позволяет обрабатывать сигналы энкодера, имеющего выходы А и В со смещением фазы,
а также дополнительный выход сигнала нулевой точки.
Возможности:
- вывод текущего положения относительно нулевой точки
- определение направления вращения/движения энкодера
- задаваемая длина шкалы
Требования:
- подключенная библиотека STANDARD.LIB
- наличие 3-х быстрых входов на ПЛК
В ПЛК110 быстрые входы (FDI0-FDI3) в конфигураторе ПЛК нужно перевести в режим "Fast discret inputs - direct control".
В ПЛК110 версии М02 с последними прошивками есть встроенный энкодер (настраивается в Конфигурации ПЛК). Однако, работает он неоднозначно - значение в 4 раза больше шкалы самого энкодера. Потому и появилась необходимость написать свой обработчик.
Проверено на ПЛК110.30 и ПЛК110.60 с энкодером E6B2-CWZ5B.
В проекте не установлен таргет. Подключите нужный Вам в Настройке целевой платформы.
UPD: Важное замечание! Для переменной POSITION используется тип WORD, поэтому ширина шкалы ограничена 65К. Если нужна бОльшая ширина шкалы, то используйте другой целочисленный тип (DWORD, DINT, UDINT и т.п.)
Комментарии приветствуются!
С уважением, CDS (Дмитрий).
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot