roboforum.ru

Технический форум по робототехнике.


ПИД регулятор - PID алгоритм, энкодер и другая ОС

Обсуждаем рождающиеся мысли и результаты экспериментов.

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение RoboTok » 30 янв 2009, 22:24

Интересно, а кто из посетителей форума делал ПИД ?
Аватара пользователя
RoboTok
 
Сообщения: 1060
Зарегистрирован: 04 фев 2008, 13:18
Откуда: Москва
прог. языки: PHP

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение frig » 30 янв 2009, 22:32

Александр точно делал и у RiO на трейсере трудится пид. и я подумываю. :D
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение avr123.nm.ru » 30 янв 2009, 22:32

RoboTok писал(а):Была на форуме тема с идеей реализации обратной связи подключив 2 вывода от двигателя к АЦП МК.
Но сказали, что выбросы от двигателя не дадут работать нормально.

резисторы и конденсаторы спасают обычно.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение RoboTok » 30 янв 2009, 23:00

Значит я не первый буду :ROFL:

Я наконец сделал энкодеры и настроил ПИД.

Добавлено спустя 1 минуту 13 секунд:
Завтра доделаю программу управления с джойстика и выложу ролик, как я тележкой одним рычажком джойстика управляю.
Аватара пользователя
RoboTok
 
Сообщения: 1060
Зарегистрирован: 04 фев 2008, 13:18
Откуда: Москва
прог. языки: PHP

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение Виталий » 31 янв 2009, 15:01

RoboTok писал(а):Интересно, а кто из посетителей форума делал ПИД ?

http://www.youtube.com/watch?v=7qulIGaBEU8
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение Ruslan » 31 янв 2009, 22:06

frig писал(а): у RiO на трейсере трудится пид.

Подтверждаю. Код содрал отсюда:http://www.pololu.com/docs/0J21/7.c, сейчас подбираю параметры для повышения скорости движения.
Аватара пользователя
Ruslan
 
Сообщения: 603
Зарегистрирован: 03 июн 2007, 22:32
Откуда: Москва
ФИО: Руслан

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение RoboTok » 31 янв 2009, 22:56

Я так понимаю у вас ОС по позиции, а не как я сделал по скорости движения...
Аватара пользователя
RoboTok
 
Сообщения: 1060
Зарегистрирован: 04 фев 2008, 13:18
Откуда: Москва
прог. языки: PHP

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение Ruslan » 31 янв 2009, 23:40

Ну да. Мне нужно стабилизировать положение робота относительно линии, а тебе - скорость вращения колеса. Принципы ПИД те же.
Аватара пользователя
Ruslan
 
Сообщения: 603
Зарегистрирован: 03 июн 2007, 22:32
Откуда: Москва
ФИО: Руслан

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение Duhas » 01 фев 2009, 18:52

положение регулировать можно одновременно регулируя скорость... для мелких движков это мало заметно, нор на более мощный можно существенно повысить динамику процессов..
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение RoboTok » 02 фев 2009, 12:08

С роликом пока пришлось отложить.
Что то глюки вылезают раз за разом.

А так мне идея ПИД понравилась и не так сложно, просто энкодер нужен нормальный для стабилизации по скорости.
Сейчас сделал 60 тиков на оборот, уже достаточно, но всё таки минимум тиков на оборот выше.
Хоть энкодер у меня квадратурный и по идее должен выдать 240 тиков, но время между тиками не стабильно.

Вот интересно, у пропорциональной части ПИДа начальная ошибка довольно большая, если например надо увеличить скорость с 0 до 100.
И чтобы начальные значения прибавки к ШИМ не выходили за рамки +5 нужно ставить коэффициент.
Я поставил 0.15.
Но когда ошибка уменьшается со 100 до 1 прибавка пропорциональной части ПИДа всего 0.15 и обнуляется вообще без использования плавающей точки.
Выходит, что регулятор только на П вообще не сможет выйти на установленную величину.

Как с этим быть ?
Аватара пользователя
RoboTok
 
Сообщения: 1060
Зарегистрирован: 04 фев 2008, 13:18
Откуда: Москва
прог. языки: PHP

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение avr123.nm.ru » 02 фев 2009, 12:35

"И" - обеспечивает точность.

http://pidcontrol.narod.ru/ PID ПИД регулирование для начинающих - краткое толкование.

Изображение
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение Duhas » 02 фев 2009, 17:05

И не обеспечивает точность ни разу...
И позволяет форсировать переходный процесс...
а вот совокупность И и Д дает и динамику и точность..
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение RoboTok » 02 фев 2009, 19:24

Короче для управления скоростью ПИД не шибко подходит...

Вот например:
запуск регулятора ПИД каждые 100мс или обсчёт если обновился датчик скорости

Если поставить высокий к. П, то слишком быстрый старт.
Если зарезать сильно П, тогда приходится поднять Интеграл и стабилизации нету.

А для плавного старта и нету в ПИД регуляторе функции...
Аватара пользователя
RoboTok
 
Сообщения: 1060
Зарегистрирован: 04 фев 2008, 13:18
Откуда: Москва
прог. языки: PHP

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение avr123.nm.ru » 02 фев 2009, 19:32

RoboTok писал(а):Короче для управления скоростью ПИД не шибко подходит...

Мозговитам людям он вообще противопоказан !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: ПИД регулятор - PID алгоритм, энкодер и другая ОС

Сообщение =DeaD= » 02 фев 2009, 19:33

RoboTok писал(а):Короче для управления скоростью ПИД не шибко подходит...
А для плавного старта и нету в ПИД регуляторе функции...

А ты не меняй резко команду и всё :) передавай в пид команду', и пресэмплинг:

если команда-команда'>епсилон, тогда команда'=команда'+епсилон
иначеесли команда-команда'<-епсилон, тогда команда'=команда'-епсилон
иначе команда'=команда
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Пред.След.

Вернуться в Идеи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9