Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о программировании

Вопросы о программировании Вопросы, касающиеся программирования на FBD

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2015, 11:47   #1
RedPosse
Новичок
 
Регистрация: Apr 2015
Сообщения: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Автоматизация участка водоподготовки

Добрый день!

Имеется необходимость автоматизации участка водоподготовки, задача довольно простая, думаю, что ее уже неоднократно решали. Что бы не изобретать весь велосипед прошу ткнуть носом в типовое решение =)

И так, имеем:
- два трубопровода с пресной водой
- вода в оба трубопровода подается двумя центробежными насосами с разной производительностью (4 м.куб./час и 20 м.куб/час.)
- на обоих трубопроводах стоят одинаковые водяные счетчики, формирующие дискретный импульс на каждые 5 литров воды прошедшие через счетчик.
- в трубопроводе А, на котором установлен насос производительностью 4 м.куб./час. нет возможности регулировки производительности насоса.
- в трубопроводе B, с насосом производительностью 20 м.куб./час. имеется возможность регулировки подачи воды посредством векторного частотного преобразователя
- необходимо поддерживать соотношение объемной доли жидкости проходящей через трубопроводы в пропорции 1:3 (А:B).
- для решения задачи планируется применить контроллер Pixel25
- частотный преобразователь имеет возможность подключения по RS-485 (Modbus) и аналоговый вход 0-10V.

Необходимо на основании дискретных импульсов с счетчиков управлять частотным преобразователем на трубопроводе B, для поддержания заданной пропорции жидкости проходящей через трубопроводы.

Заранее благодарю!
RedPosse вне форума   Ответить с цитированием
Старый 10.04.2015, 13:16   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от RedPosse Посмотреть сообщение

- два трубопровода с пресной водой
- на обоих трубопроводах стоят одинаковые водяные счетчики, формирующие дискретный импульс на каждые 5 литров воды прошедшие через счетчик.
- в трубопроводе B, с насосом производительностью 20 м.куб./час. имеется возможность регулировки подачи воды посредством векторного частотного преобразователя
- необходимо поддерживать соотношение объемной доли жидкости проходящей через трубопроводы в пропорции 1:3 (А:B).
- частотный преобразователь имеет возможность подключения по RS-485 (Modbus) и аналоговый вход 0-10V.
Не буду за вас пересчитывать величины для понимания рамок применимости, но:

Посчитать расход.

Умножить на 3.

Задать регулятору.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 10.04.2015, 18:28   #3
RedPosse
Новичок
 
Регистрация: Apr 2015
Сообщения: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Спасибо! Но кажется, что решение должно быть чуть сложнее...
Просто выставить пропорцию 1:3 можно было бы и резистором на частотнике без ПЛК, посчитав расход по счетчикам.

ИМХО, в данном случае нужно сравнение на каком-то отрезке времени, причем, как я полагаю, не просто сравнение количества импульсов 1(*3) к 3, а, например - 1000(*3) к 3000 - для большей точности. И уже эту разницу как-то обрабатывать и подавать на ПИД-регулятор... А на каком количестве импульсов проводить сравнение или за какой промежуток времени сравнивать - для меня это и есть изобретение велосипеда. Задача типовая для водоподготовки, вдруг у кого-то уже было решение, не хотелось бы импирически искать наиболее точный алгоритм.
RedPosse вне форума   Ответить с цитированием
Старый 10.04.2015, 19:28   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от RedPosse Посмотреть сообщение
Спасибо! Но кажется, что решение должно быть чуть сложнее...
Когда кажется - креститься нужно (с)



Цитата:
Сообщение от RedPosse Посмотреть сообщение
ИМХО, в данном случае нужно сравнение на каком-то отрезке времени, причем, как я полагаю, не просто сравнение количества импульсов 1(*3) к 3, а, например - 1000(*3) к 3000 - для большей точности.
Именно поэтому я дал ссылку на счётчики.



Цитата:
Сообщение от RedPosse Посмотреть сообщение
И уже эту разницу как-то обрабатывать и подавать на ПИД-регулятор...
Именно поэтому я дал ссылку на математику.



Цитата:
Сообщение от RedPosse Посмотреть сообщение
А на каком количестве импульсов проводить сравнение или за какой промежуток времени сравнивать - для меня это и есть изобретение велосипеда. Задача типовая для водоподготовки, вдруг у кого-то уже было решение, не хотелось бы импирически искать наиболее точный алгоритм.
Побойтесь бога. Это либо эмпирически, либо математически. Никто лучше вас не знает, какой промежуток времени вас устроит и допустим для вас и каково требование к рассогласованию именно у вас.

А уж исходя из этих требований и подбирается алгоритм.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.04.2015, 07:09   #5
tvf
Senior Member
 
Регистрация: Dec 2011
Сообщения: 752
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от RedPosse Посмотреть сообщение
Но кажется, что решение должно быть чуть сложнее...
Все действительно много сложнее. Приведенных вами данных недостаточно для корректного решения. Как минимум должны быть данные о скважности импульсов с датчика расхода и данные о точности поддержания расхода. Причем точность поддержания расхода следует разделятся на мгновенную и среднею. Что мы имеем на данный момент:
Насос 1: 4 м3/ч или 4000 л/ч или 800 имп/ч или 0,22(2) имп/с (Гц) или период 4,5 с или 0,022(2) имп/тик или 45 тик/период.
Насос 2: 20 м3/ч или 20000 л/ч или 4000 имп/ч или 1,11(1) имп/с (Гц) или период 0,9 с. или 0,11(1) имп/тик или 9 тик/период.
А дальше начинаются танцы с бубнами:
1. Если переводить импульсы в аналоговое значение, то период измерения для насоса 1 составит 450 с с точностью 1%. Далее надо усреднить измерения хотя бы по 3-5 измерениям, в итоге имеем 22,5 - 37,5 мин для получения 1 корректного значения. Если такие времена не пугают, то далее как советовал Arsie.
2. Если обрабатывать импульсы счетным входом, то Пиксель 25 их не имеет. Они есть у MR120, но время счета в документации не описано, но предположительно = 1 с и толку от него не будет. Счетные входы есть у МС, они работают как в режиме измерения частоты (период 1 с) так и в режиме счета импульсов. Режим измерения частоты нам не применим, остается только счетчик импульсов, но и там мы будем иметь те же времена, что и в п.1.
3. Измерять не частоту импульсов, а период. При жестко заданном соотношении 1/3 даст чуть лучшие результаты, но кардинально ни чего не изменит.

Любой из вариантов позволит регулировать только среднее соотношение расходов, причем среднее относится к временам 1 час и более.

Гораздо лучших результатов и гораздо меньшими усилиями можно добиться применив аналоговые расходомеры. В этом случае все действительно будет и проще и точнее.


__________________
Нет абсолютно бездарных людей. Каждый бездарен в своей области.
tvf вне форума   Ответить с цитированием
Старый 13.04.2015, 00:14   #6
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от tvf Посмотреть сообщение
Все действительно много сложнее. ....

... дальше начинаются танцы с бубнами:
1. Если переводить импульсы в аналоговое значение...
2. Если обрабатывать импульсы счетным входом...
3. Измерять не частоту импульсов, а период...

Любой из вариантов позволит регулировать только среднее соотношение расходов, причем среднее относится к временам 1 час и более.
А если бубен выбросить?
Пункты 1 и 3 не имеют смысла - зачем собственно высчитывать совершенно не нужные нам средние величины да ещё с заданной точностью.
Вариант в пунктике 2 интереснее, но это лучше для MC.

Цитата:
Сообщение от RedPosse Посмотреть сообщение
Спасибо! Но кажется, что решение должно быть чуть сложнее...

ИМХО, в данном случае нужно сравнение на каком-то отрезке времени, причем, как я полагаю, не просто сравнение количества импульсов 1(*3) к 3, а, например - 1000(*3) к 3000 - для большей точности. И уже эту разницу как-то обрабатывать и подавать на ПИД-регулятор...
А почему собственно не количества? Только надо ли их много и зачем нам вообще время?
А если примерно так reg.png - ловим импульсы (а это ведь обьем) по фронтам от ведущего (нерегулируемого) и ведомого (с частотником), далее домножив на коэффициент пропорциональности вычитаем второе из первого с накоплением. Получаем величину пропорциональную ошибке ведомого.
Можно её даже немного пофильтровать.
А дальше кидаем её на вход уставки PID регулятора, сигнал датчика задаем нулевой. Выход регулятора на частотник любым удобным способом. Коэффициенты P I D по вкусу.

Вроде как должно работать...


Цитата:
Гораздо лучших результатов и гораздо меньшими усилиями можно добиться применив аналоговые расходомеры. В этом случае все действительно будет и проще и точнее.
Да, в случае токовых выходов все намного проще - для нормального частотника и контроллер совсем не потребуется....

Последний раз редактировалось ATS, 13.04.2015 в 00:25
ATS вне форума   Ответить с цитированием
Старый 13.04.2015, 04:53   #7
tvf
Senior Member
 
Регистрация: Dec 2011
Сообщения: 752
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от ATS Посмотреть сообщение
А если бубен выбросить?
Без бубна, к сожалению никуда.

Варианты 2 и 3 в принципе абсолютно одинаковы по логике. Вариант 2 применим когда период импульсов много меньше периода измерения. Вариант 3 применим когда период импульсов много больше тика контроллера. Под "много" подразумевается 100 и более раз. Что бы получить точность лучше 1%. В данном случае ни то ни другое.

Предложенное вами решение относится к варианту 1. Но решение имеет ряд ограничений:
1. Скважность импульсов. Данных по этому параметру нет. При длительности импульса меньше тика контроллера будут пропуски импульсов со всеми вытекающими последствиями.
2. Время фильтрации. От этого напрямую зависит величина пульсаций на выходе фильтра. На пульсации накладываем ПИ регулятор, что бы он не улетал в насыщение при очередной пульсации. И имеем или пульсирующий расход или очень большое время выхода на режим. Или и то и другое в разных пропорциях. При наличии пульсаций как оценивать точность регулирования? В любом случае получится поддерживать только среднее соотношение расходов.


__________________
Нет абсолютно бездарных людей. Каждый бездарен в своей области.
tvf вне форума   Ответить с цитированием
Старый 15.04.2015, 22:34   #8
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от tvf Посмотреть сообщение
Без бубна, к сожалению никуда.
Да вот тоже вот стучал в бубен и руки не доходили посмотреть...
Цитата:
Варианты 2 и 3 в принципе абсолютно одинаковы по логике. Вариант 2 применим когда период импульсов много меньше периода измерения. Вариант 3 применим когда период импульсов много больше тика контроллера. Под "много" подразумевается 100 и более раз. Что бы получить точность лучше 1%. В данном случае ни то ни другое.
У Вас все варианты одинаковы по логике. И вся логика сводится к вычислению совершенно ненужной величины среднего расхода с точностью до 1%. Хотя это и мало влияет на точность регулирования...
Цитата:
Предложенное вами решение относится к варианту 1. Но решение имеет ряд ограничений:
1. Скважность импульсов. Данных по этому параметру нет. При длительности импульса меньше тика контроллера будут пропуски импульсов со всеми вытекающими последствиями.
Никакого отношения к варианту 1 оно не имеет....

Разность количества импульсов как раз и есть ошибка расходов в трубопроводах на данный момент времени, а задача регулятора свести её к нулю.
Скважность действительно может быть разной, поэтому я указывал что вариант со счетными входами предпочтительнее.
Но для указанных расходов и веса импульса время замкнутого состояния будет более 100 миллисекунд (правда для известных мне типов расходомеров) Кстати у механических не припомню такого веса импульса.
Цитата:
2. Время фильтрации. От этого напрямую зависит величина пульсаций на выходе фильтра. На пульсации накладываем ПИ регулятор, что бы он не улетал в насыщение при очередной пульсации. И имеем или пульсирующий расход или очень большое время выхода на режим. Или и то и другое в разных пропорциях. При наличии пульсаций как оценивать точность регулирования? В любом случае получится поддерживать только среднее соотношение расходов.
Открою большую тайну - расход (особенно после насосов) величина вообще страшно пульсирующая, а иногда даже знакопеременная.
А по поводу фильтрации - опорные импульсы идут с нерегулируемого насоса, период Вы сами подсчитывали 4-5 секунд. Так что время фильтрации вполне вычисляемое.

Однако же обычная ФАПЧ (PLL) получается...

P.S. Топикстартер попал... Интересно зачем в водоподготовке две пресных воды смешивать?
ATS вне форума   Ответить с цитированием
Старый 16.04.2015, 04:46   #9
tvf
Senior Member
 
Регистрация: Dec 2011
Сообщения: 752
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от ATS Посмотреть сообщение
Однако же обычная ФАПЧ (PLL) получается...
Дело за малым. Сделать программную эмуляцию процесса. Проблему со скважностью это не решит, но временные и регулировочные характеристики поможет оценить.


__________________
Нет абсолютно бездарных людей. Каждый бездарен в своей области.
tvf вне форума   Ответить с цитированием
Старый 20.04.2015, 04:45   #10
tvf
Senior Member
 
Регистрация: Dec 2011
Сообщения: 752
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от ATS Посмотреть сообщение
А если примерно так Вложение 2539 - ловим импульсы (а это ведь обьем) по фронтам от ведущего (нерегулируемого) и ведомого (с частотником), далее домножив на коэффициент пропорциональности вычитаем второе из первого с накоплением. Получаем величину пропорциональную ошибке ведомого.
Можно её даже немного пофильтровать.
Попробовал погонять ваш "датчик цели". В общем то работает. Но выходной сигнал не пропорционально ошибке ведомого по расходу, а пропорционально интегралу ошибке ведомого по расходу, ну или пропорционально ошибке ведомого по объему. Средний расход поддерживается хорошо (с момента начала регулирования), с мгновенным сложнее, Небольшое "плаванье" соотношений расходов остается + болтанка при старте регулирования. Если есть буферная емкость после смешения, то решение работоспособное. Если работа "на трубу", то зависит от технологии.


__________________
Нет абсолютно бездарных людей. Каждый бездарен в своей области.
tvf вне форума   Ответить с цитированием
Старый 20.04.2015, 16:19   #11
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Сообщение от tvf Посмотреть сообщение
В общем то работает. Но выходной сигнал не пропорционально ошибке ведомого по расходу, а пропорционально интегралу ошибке ведомого по расходу, ну или пропорционально ошибке ведомого по объему.
Да это логично - ловим именно разницу по объему на данный момент (выше я неправильно выразился). Значит именно пропорционально ошибке по объему.
Цитата:
Средний расход поддерживается хорошо (с момента начала регулирования), с мгновенным сложнее, Небольшое "плаванье" соотношений расходов остается + болтанка при старте регулирования.
Так поддерживать и будем средний и плавания полностью не избежать. Для улучшения можно только уменьшать дискретизацию по массе применяя расходомеры с меньшим весом импульса.
Но сложнее отловить импульсы без использования счетных входов.

Цитата:
Если есть буферная емкость после смешения, то решение работоспособное. Если работа "на трубу", то зависит от технологии.
Это лучше спросить у пропавшего автора топика.

А все известные мне схемы водоподготовки работают на емкость.
ATS вне форума   Ответить с цитированием
Старый 22.04.2015, 10:11   #12
RedPosse
Новичок
 
Регистрация: Apr 2015
Сообщения: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Автоматизация участка водоподготовки

Цитата:
Это лучше спросить у пропавшего автора топика.
Все верно, работа на ёмкость.

Алгоритм понятен, всем спасибо!
RedPosse вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 01:54.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024