Стабилизация оборотов двигателя с ОС по энкодеру

Промышленные Логические Контроллеры SIMATIC S7-200/300/400
Post Reply
mgax
Posts: 8
Joined: Sat May 14, 2011 12:39 pm

Стабилизация оборотов двигателя с ОС по энкодеру

Post by mgax » Fri May 03, 2019 1:02 pm

Добрый день! Подскажите, как правильно стабилизировать обороты двигателя с обратной связью по энкодеру на ПЛК (только сигнал А - 1024 имп/об) без ПИД?
ПЧ двигателя управляется по аналоговому сигналу с ПЛК Siemens S7-1215 (AO - 10 бит),
максимальная частота вращения двигателя 1500 об/мин.
Меня интересует сам алгоритм?
В прерывании, каждые 500 мс я фиксирую количество импульсов и перевожу это значение в об/мин,
но как мне, без ПИД регулятора, выполнить стабилизацию оборотов (точность +/- 3 об/мин).
Рассматриваю вариант, когда энкодер подключить к ПЧ нельзя (по любым причинам),
можно использовать только один сигнал А на ПЛК (сигналы энкодера B, R - не будут задействованы).
В идеале, выполнить стабилизацию максимально быстро.

Rex2701
Posts: 370
Joined: Wed Oct 13, 2010 8:44 am
Location: Russian Federation

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by Rex2701 » Fri May 03, 2019 1:58 pm

Ваше желание сродни желанию заняться *ом... стоя... в гамаке...
В данном случае совет специалиста (как *олога, так и автоматчика) будет один - не выдумывайте и делайте по-человечески.

CoMod
Site Admin
Posts: 3969
Joined: Thu Feb 16, 2006 3:25 pm
Location: Russia
Contact:

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by CoMod » Fri May 03, 2019 2:30 pm

Rex2701 wrote:
Fri May 03, 2019 1:58 pm
Ваше желание сродни желанию заняться *... стоя... в гамаке...
В данном случае совет специалиста (как *олога, так и автоматчика) будет один - не выдумывайте и делайте по-человечески.
просьба к "специалисту" указывать конкретный "человеческий" алгоритм,
а не выдумывать аллегории

к сожалению частотник под рукой сейчас не работает (требуется отремонтировать) и при +3°С думы в празднике о будущем урожае...

mgax
Posts: 8
Joined: Sat May 14, 2011 12:39 pm

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by mgax » Fri May 03, 2019 5:48 pm

Я так понял, только ПИД регулятор. Можно или даже нужно использовать ПИД,
но у меня не получается его настроить более-менее нормально,
в каком плане,
был проект, где нужно было синхронизировать два двигателя, точнее один являлся мастер приводом (n=const),
он задавал линейную скорость ленты, а второй был приемным устройством (n=var из-за изменения диаметра барабана), э
та лента наматывалась на катушку, стоял датчик натяжения ленты (выходной сигнал +-10В),
так вот если не было резкого изменения натяжения,
ПИД отрабатывал отлично,
но по тех.причинам (из-за механики) могли возникать рывки,
ПИД не успевал отработать корректно (либо лента рвалась, либо занчительно снижалось натяжение и срабатывал аварийный останов),
какие я только не пробовал выставлять коэффициенты по П и Д составляющей,
золотой середины так и не добился.
Что касается нечеткой логики теория вроде как ясна, но как это все описать математически,
да еще потом перенести в ПЛК, я в итоге не смог разобраться (нигде не нашел нормального примера).
А сейчас нужно более-менее стабильно поддерживать заданные обороты практически вне зависимости от нагрузки на валу (понятно, в разумных пределах),
особенно интересует при резком изменении нагрузки.

Dfcz
Posts: 875
Joined: Tue Dec 26, 2006 5:21 am
Location: Russia

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by Dfcz » Mon May 06, 2019 5:59 am

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

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

Dfcz
Posts: 875
Joined: Tue Dec 26, 2006 5:21 am
Location: Russia

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by Dfcz » Mon May 06, 2019 6:20 am

Что касается нечеткой логики теория вроде как ясна, но как это все описать математически,
Описать все нечеткой математикой и подсунуть ИИ. (полушутка)
В общем случае (и в вашем случае тоже) нечеткую логику нужно привести к четкой логике, потому что у вас нет ИИ и нет инструментов для работы в нечеткой математике. Например задать дополнительное постоянное внешнее достаточно большое (чтобы пренебречь нечеткой логикой) воздействие в одном направлении.

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

mgax
Posts: 8
Joined: Sat May 14, 2011 12:39 pm

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by mgax » Mon May 06, 2019 5:00 pm

В общем я понял, нужно нормально настроить ПИД и не изобретать велосипед! Всех благодарю за консультацию!

Dfcz
Posts: 875
Joined: Tue Dec 26, 2006 5:21 am
Location: Russia

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by Dfcz » Tue May 07, 2019 4:56 am

Вы быстро учитесь. Удачи.

IvanShi
Posts: 2
Joined: Mon Jun 17, 2019 9:48 am

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by IvanShi » Mon Jun 17, 2019 10:36 am

энкодер - это датчик угловых перемещений, для стабилизации скорости вращения он не очень подходит.
На больших оборотах за малый промежуток можно получить достаточно достоверную величину ошибки, а вот на малых оборотах нет.
На станках применяют тахогенератор качестве датчика обратной связи, и при этом имеют привод с достаточно большим диапазоном регулирования от 0-3000 об/мин,
но правда на двигателе постоянного тока.

Частотный преобразователь имеет еще вдобавок неравномерное управление,
на малых частотах (0-2 Hz) может вообще не крутится при скалярном режиме управления.
Поэтому для начало я бы советовал построить П-регулятор,
т.е. регулятор в котором выходной сигнал равен величине ошибки,
поэкспериментировать с временем для получения величины ошибки и коэффициентом П-регулятора.
Затем если его не хватит для вашего диапазона, то добавить интегральную составляющую ошибки к выходному сигналу.

Dfcz
Posts: 875
Joined: Tue Dec 26, 2006 5:21 am
Location: Russia

Re: Стабилизация оборотов двигателя с ОС по энкодеру

Post by Dfcz » Thu Jun 20, 2019 5:36 am

Читайте внимательнее: автор писал
так вот если не было резкого изменения натяжения, ... но по тех.причинам (из-за механики) могли возникать рывки,

Ваши советы слишком оторваны от конкретики.

Post Reply