Тема: CANNY7: Пример ПИД-регулятора

Пример ПИД регулятора на базе контроллера CANNY7.

http://forum.canny.ru/files/pid_cfd_prev.png

В качестве исходных данных для работы примера заданы Уставка (целевое значение регулируемого параметра), период дискретизации, задающий частоту обновления данных датчика и, соответственно, расчетных параметров системы, а также коэффициенты Пропорциональной, Интегральной и Дифференциальной составляющих функции регулятора.
Коэффициенты Пропорциональной и дифференциальной составляющих приняты повышающими (больше 1), коэффициент интегральной составляющей - понижающий (меньше 1).

Диаграмма примера имеет модели устройства управления и объекта регулирования, что позволяет пронаблюдать работу ПИД регулятора в симуляторе интегрированной системы управления CannyLab.

В примере принята дискретная модель устройства управления, т.е. оно может быть либо только включено, либо выключено, что наиболее близко к работе электрического реле.
При включенном устройстве управления состояние модели объекта регулирования, с каждым тактом времени, увеличивается на определенную константную величину, стремясь достигнуть целевого значения регулируемого параметра, моделируя процесс, схожий с нагреванием воды в бойлере.
При выключенном устройстве управления состояние модели объекта регулирования, с каждым тактом времени, уменьшается на определенную константную величину, моделируя воздействие внешней среды, т.е. процесс схожий с остыванием воды в бойлере.

Исходный файл диаграммы и график процесса:

Вложений в сообщении

Иконка вложения PID_ctrl.cfd 9.65 кб, скачивался 66 раз, последний раз 2016-05-31 

pid_working.png, 34.38 кб, 720 x 481
pid_working.png 34.38 кб, скачивался 79 раз, последний раз 2016-05-31 

Re: CANNY7: Пример ПИД-регулятора

Пример системы управления нагревателем воды (бойлером) на базе контроллера CANNY7 с использованием доработанной диаграммы ПИД регулятора.

В процессе работы системы информация о текущей температуре передается в CAN для возможности мониторинга и анализа. По результатам работы нагревателя построен график изменения температуры воды с течением времени.
http://forum.canny.ru/misc.php?action=pun_attachment&item=415&download=0

Вложений в сообщении

Иконка вложения PID_ctrl_boiler_1a.cfd 16.69 кб, скачивался 18 раз, последний раз 2017-03-07 

pid_boiler.gif, 255.41 кб, 737 x 320
pid_boiler.gif 255.41 кб, скачивался 15 раз, последний раз 2017-03-07 

Иконка вложения pid_boiler_work.png 106.31 кб, скачивался 9 раз, последний раз 2017-03-07 

3

Re: CANNY7: Пример ПИД-регулятора

Здравствуйте.
Очень хочу разобраться в этой схеме для реализации "вживую".
Уставка, если я верно понял, это желаемое значение (температуры, влажности, и т.д) так?  На диаграмме задано константой, но в реалиях можно задавать, к примеру, потенциометром с соотв. схемой. Так?

Re: CANNY7: Пример ПИД-регулятора

Да, уставка это целевое значение, которое контролируется системой и к достижению которого система стремится.
В примере это константа. Изменять ее значение в процессе работы устройства можно используя тактовые кнопки (увеличение/уменьшение значения уставки при нажатии кнопки), пульты ИК, цифровые протоколы передачи данных (CAN, UART,...) и т.п. Обычный потенциометр для этих целей не подойдет, т.к. у контроллеров CANNY 7 нет АЦП.
Если требуется однократная установка уставки, то ее можно задавать через параметры пользователя при загрузке ПО через SFX-файл.
В принципе, диаграмма, с минимальными доработками, может быть успешно перенесена на другие типы контроллеров CANNY - основной алгоритм от этого не изменится.