roboforum.ru

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

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

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

SMT » 08 фев 2009, 04:06

nest писал(а):SMT, можно попробовать увеличить ток через светодиод.попробовать поиграть с настройками фотоприёмника (включить доп. ОУ?).

пока не хочется, поскольку конструкция - стандартный Минибот, и этот мотор-редуктор-энкодер - намеренно бюджетное решение для "не специалистов".
nest писал(а):но лучше всё таки сменить тип энкодера.а у вас оно так открыто на свету крутится ? ... исключите подсветку окружающим светом.

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

avr123.nm.ru писал(а):Я обычно 10 кОм ставлю "под" мышиные фотоприемники при 5 вольтовом питании и сигнал с них на 74hс14 подаю для "оцифровки" в четкие "0" - "1".

Это Минибот, у которого действительно 10к резисторы установлены. Вот о формировании хорошего сигнала я тоже стал помышлять, тем более хочется, чтобы бал контрольный светодиод состояния датчика. nest также это советует.

RoboTok писал(а):Ещё я заметил, что вы поставили диск энкодера на вал колеса.
Самый простой вариант - это если у вас есть промежуточная шестерня, то поставить на неё диск энкодера.

Спасибо, последовалвашему совету, посмотрим, что получится :) Кстати, такое решение должно быть лучше от внешней засветки защищено.

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

bolt » 09 фев 2009, 15:10

энкодер из мышки, установленный на ось колеса, при быстром вращении пропускает много сигналов

Энкодеры принтеров защищены от засветки и работают четче. Они квадратурные с формирователем и защитой. Риски должны быть примерно такие, как на принтере.
Мышиные датчики таких защит не имеют и кол-во импульсов плавает, особенно при медленном вращении.

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

RoboTok » 15 фев 2009, 23:12

Ну опять у меня заморочка с ПИД-ом...

Хочу сделать зарядку на ПИД-е.

Вроде бы всё понятно, стабилизируем по напряжению.
НО, нельзя превышать допустимый ток и максимальную температуру.

Как бы мне ввести в формулу эти переменные?

А формула такая:
out = kp*error + ki*summaerror + kd*( error - lasterror ).

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

Duhas » 15 фев 2009, 23:13

Дивный бред (с)АВР
))) нафегетонада?!?!?!

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

RoboTok » 15 фев 2009, 23:15

А как бы ты сделал ?

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

nest » 15 фев 2009, 23:45

RoboTok писал(а):А как бы ты сделал ?

спец микрухой.

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

Duhas » 16 фев 2009, 01:44

ПИД - способ нормально управлять системой с большими постоянными времени... зачастую по крайней мере )

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

RoboTok » 16 фев 2009, 13:19

nest
Спец микрухой я и делаю, но для начала её надо прошить...

Duhas
То есть идей нет ?

ALL
Сделал по старинке на 6-и IF-ах :good:
Код: Выделить всёРазвернуть
while( 1 )
   {
   out = 0;
   //Уменьшение ШИМ
   if( adc_temp() > temp_max )//перегрев
      out --;
   else
      {
      if( adc_izarad( 0 ) > tok_max )//Превышен ток заряда
         out --;
      else
         {
         if( adc_vzarad( 1 ) > vol_max )//перенапряжение
            out --;
         else
            {
            //Увеличение ШИМ
            if( adc_vzarad( 1 ) < vol_max )//Повышаем напряжение заряда
               out ++;
            }
         }
      }

   PWM = PWMMR2 + out;
   if( PWM < 0x33 && PWM >= 0 )
      {
      PWMMR2 = PWM;
      PWMLER = 0x7F;
      }

   os_dly_wait( 1 );
   }

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

Duhas » 16 фев 2009, 14:03

только постоянную времени сделай поболее.. а то система инерционная же... у тя такая колебалка получиться... без задержек..

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

Виталий » 16 фев 2009, 14:04

ПИД - способ нормально управлять системой с большими постоянными времени.

Да, это так. Но это нормальный способ управлять системами и с малыми постоянными времени. :)

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

RoboTok » 16 фев 2009, 14:06

Duhas
Там внизу стоит функция задержки от 1 до 10 мс.

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

Duhas » 16 фев 2009, 14:07

не, ну большие относительно....

если инерционность системы мала настолько что она практически повторяет прямоугольный скачек на входе то тут и регулировать то особо уже нечего )

О, вспомнил, ПИД регуляторы призваны КОМПЕНСИРОВАТЬ постоянные времени звеньев системы ))

что такое 10мс для акума в плане охлаждения/нагрева? про 1 мс вапще молчу...

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

RoboTok » 16 фев 2009, 14:23

Температура на плате измеряет нагрев ключа и диода.
Если они нагрелись, то нужно скинуть мощность на ноль, что и сделает функция.

А у тока и напряжения, думаю хватит скорости изменится за 10 мс...

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

Duhas » 16 фев 2009, 14:28

ну проверишь - отпишись )

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

RoboTok » 16 фев 2009, 14:41

Сделаю делитель для звуковушки и гляну, как там дела ;)


cron
Rambler\'s Top100 Mail.ru counter