Страница 4 из 4

Информация по блоку ПИД

Добавлено: 22.10.2017{, 15:03}
Fuksas
Здравствуйте.Хотел спросить для чего нужен вход SDV в блоке ПИД.

Информация по блоку ПИД

Добавлено: 22.10.2017{, 16:23}
Dev1
Fuksas писал(а):Здравствуйте.Хотел спросить для чего нужен вход SDV в блоке ПИД.
А я ток заметил что если задействовать En, то появится вход En и SDV, причем флоат  
Моя извращенная фантазия не смогла осилить назначение входа. Тут только Сергей поможет.

Информация по блоку ПИД

Добавлено: 22.10.2017{, 20:52}
Airis
SDV это величина аналогово значение на выходе "А", если на входе En = 0 (не разобрался - возможно En=1). В таком смысле что если есть вход En, то при True или False на выходе должно быть какое то значение, а не просто "висеть воздухе" или выводить рандомное значение.

Информация по блоку ПИД

Добавлено: 23.10.2017{, 10:29}
Sancho
av писал(а):По поводу входа SDV действительно нужно спросить у автора программы.
Airis
SDV это величина аналогово значение на выходе "А", если на входе En = 0 (не разобрался - возможно En=1). В таком смысле что если есть вход En, то при True или False на выходе должно быть какое то значение, а не просто "висеть воздухе" или выводить рандомное значение.
Это правильный ответ - это явно видно в коде IDE. 1=Пид, 0= SDV.

P.S. Обычно используется для ручного/автоматического управления (клапаном, нагревателем и т.п.).
На SDV подаём в ручном режиме, т.е. при En=0.
При этом ПИД пере-инициализируется при возврате 1.

Информация по блоку ПИД

Добавлено: 27.10.2017{, 15:26}
CraCk
Подскажите что за опция Время регулирования (мс.) Сколько ставить и как оно работает?
Еще, если я не использую вход En, а включаю целую плату с ПИД регулятором по условию. Что будет твориться на выходе регулятора регулятора?
Еще в блоке ПИД все входы и выходи в float. В каких случаях я получу на выходе float и  integer? Если например у меня  измеренная температура на входе float, а заданная в integer.

Информация по блоку ПИД

Добавлено: 27.10.2017{, 16:00}
Sancho
CraCk писал(а):Время регулирования (мс.)
Период времени между двумярасчётами ПИДа.
Тяжеловато в каждом цикле с флоатом, да и нет особой надобности...
CraCk писал(а):Еще, если я не использую вход En, а включаю целую плату с ПИД регулятором по условию. Что будет твориться на выходе регулятора регулятора?
При исключении какого либо вычисления перемен-ой(-ых) из цикла значения останутся последние присвоенные.
Например: на одной из плат(5) по условию вычислилось и присвоилось переменной АВ значение 3.14.
На  плате(7) значение  АВ использовалось для дальнейших расчётов и т.д.
При  откл в цикле платы (5) в плате (7) будет учитываться последнее значение АВ.
При откл платы с ПИД выход не будет изменятся, вычислений производится не будет.

Добавлено (27.10.2017, 16:00)
---------------------------------------------
CraCk писал(а):Еще в блоке ПИД все входы и выходи в float. В каких случаях я получу на выходе float и  integer? Если например у меня  измеренная температура на входе float, а заданная в integer.
Очень весёлый блок: в каком типе укажешь переменные - в таком и получишь. Хотя я лично разношерстные не проверял.

Информация по блоку ПИД

Добавлено: 27.10.2017{, 22:04}
CraCk
Sancho писал(а):Период времени между двумярасчётами ПИДа.
Тогда может когда используется вход en время расчета должно быть неактивным? Так как по высокому входу en начинает происходить расчет.

Информация по блоку ПИД

Добавлено: 27.10.2017{, 23:06}
pan
CraCk, нет. en должен быть 1 и выставлено время. так как в рассчетах используется и время и рассогласование за это время

Информация по блоку ПИД

Добавлено: 29.10.2017{, 22:53}
kon13
Знатоки, нужна помощь.

Как мне ПИД-регулятор Грачика заставить работать на охлаждение?

Открываю проект в FLP 2.5.1, в свойствах блока ПИД нет ни En, ни переключателя "прямое-обратное регулирование".

Сильно не ругайтесь, только начал осваивать

Информация по блоку ПИД

Добавлено: 30.10.2017{, 01:40}
Panagiotis
Доброе время суток. У меня что то ругается Ардуино IDE при компиляции. может кто помощь или разобраться это мой косяк? или программы? и как обойти этот барьер. Использую программу FLProg 2.5.4. Программку которую хочу построить для друга управление инкубатором температурой и наклоном лотка.

Информация по блоку ПИД

Добавлено: 30.10.2017{, 09:12}
Sancho
kon13 писал(а):Знатоки, нужна помощь.
Как мне ПИД-регулятор Грачика заставить работать на охлаждение?
Два варианта для любых аналоговых пид.
Второй вариант проще, но начинает всегда со 100%.

Добавлено (30.10.2017, 09:12)
---------------------------------------------
Panagiotis писал(а):У меня что то ругается Ардуино IDE при компиляции. может кто помощь или разобраться это мой косяк? или программы?
Дважды объявлена переменная: _tempVariable_int
Panagiotis писал(а):как обойти этот барьер
Удалить одну строку
int _tempVariable_int;
P.S. Убери настройки ПИДа внутрь блока.

Информация по блоку ПИД

Добавлено: 30.10.2017{, 20:56}
Panagiotis
Спасибо Sancho за ответ. Да так это сделал но не был уверен что это правильно и не скажется на работоспособность в целом.

Информация по блоку ПИД

Добавлено: 02.12.2017{, 21:39}
CraCk
Всем привет
По ПИД появилось несколько вопросов.

1. Я так понимаю в большинстве ПИД регуляторы имеют своего рода "обучение" в начале работы. То есть при запуске происходить несколько перерегулирований, после чего весь процесс нормализуется и работает правильно. Тот ПИД регулятор что используется в FLPROG тоже работает по такому принципу?

2. Если первый вопрос истина тогда второй вопрос. Что буде происходить если с блока ПИД регулятора с входа Еn снять высокий уровень, а потом снова подать высокий уровень, тогда "обучение" будет происходить сначала или система будет продолжать работать с учетом ошибок во время обучения?

3. В промышленных терморегуляторах, есть возможность включить опцию авто настройки ПИД. В FLPROG такое можно реализовать?

Информация по блоку ПИД

Добавлено: 03.12.2017{, 00:46}
Sancho
CraCk писал(а):По ПИД появилось несколько вопросов.
Моё видение ситуации:
1. АвтоНастройкаРегулятора присутствует в некоторых устройствах. не является правилом и признаком хорошего тона. Нет.
2. Каждый производитель запуск АНР реализует по своему.
3. Г..рой ещё тот.
Иногда руками устаёшь настраивать, а доверить железяке(чьему-то алгоритму) и уйти - ???
Пока сам не доведёшь до того, за что не стыдно - не говори "готово, до-свидания".
P.S. Хотя если речь идёт о простом процессе, например, инкубаторы и иже, то ничего против не имею.
С вент-установками на воде немного не так. Совсем не так. Особенно старт в мороз.

Информация по блоку ПИД

Добавлено: 03.12.2017{, 02:43}
CraCk
Sancho писал(а):Иногда руками устаёшь настраивать, а доверить железяке(чьему-то алгоритму) и уйти - ???
Это для того чтоб получить приблизительные значения, а уже от них руками править.

Информация по блоку ПИД

Добавлено: 03.12.2017{, 11:07}
Airis
В FLProg используется готовая библиотека PID_v1. Автоматическая настройка параметров PID есть в примерах к данной библиотеки (там используется еще одна библиотека PID_AutoTune_v0). Но это не реализована в FLProg, и сомневаюсь что в таком виде она будет реализована. Делать автоматическую настройку PID на двух библиотека - это слишком большая роскошь.

Информация по блоку ПИД

Добавлено: 03.12.2017{, 11:24}
Dev1
PID Autotune Library автоматические определяет константы для PIDLibrary
Airis писал(а):Делать автоматическую настройку PID на двух библиотека - это слишком большая роскошь.
Почему роскошь? Получили константы и поменяли библиотеку.

Информация по блоку ПИД

Добавлено: 03.12.2017{, 19:19}
Vako
Может кто знает подскажите пожалуйста
Планируется использование пид регулятора в инкубаторе
1. Если опрос термодатчика происходит каждые 3 секунды, то как я понял на вход Time так же нужно установить константу 3сек? Меньшее значение устанавливать не стоит поскольку нет новых данных. 
И кстати устанавливать значение надо в миллисекундах или микросекундах?

2.  задавать  коэффициенты в каких пределах? от 0 до 10 или от 0 до 100, или вообще до 1000?
У всех коэффициентов предел одинаков или разный? например Kp до 100, а Ki до 10
Что то по этому поводу ни где информации не нашел.

Информация по блоку ПИД

Добавлено: 03.12.2017{, 20:59}
CraCk
Vako писал(а):на вход Time так же нужно установить константу 3сек?
от 50 до 500 мск.
http://copterpilot.ru/articles/o-pid-regulyatorax/

Информация по блоку ПИД

Добавлено: 04.12.2017{, 00:05}
Vako
av писал(а):Не многовато для ПИД ? За 3 секунды нагреть можно не мало.
Это же не крематорий, а инкубатор ))) Мощность нагревателя устанавливается не абы какая, а необходимо подбирать таким образом, чтобы скорость нарастания температуры не была велика, иначе при стандартном (позиционном) режиме инкубации будет слишком большой разбег температур (еще учитывая инерционность нагревателей). Так что в правильном инкубаторе изменение температуры на 0,1 градуса (остывание, нагрев) будут происходить не быстрее чем через 5сек
CraCk писал(а):от 50 до 500 мск.http://copterpilot.ru/articles/o-pid-regulyatorax/
Спасибо за наглядную демонстрацию