çizgi izleyen robotta pid kullanımı

Başlatan bbs2006, 12 Mart 2013, 23:05:58

bbs2006

merhaba
çizgi izleyen robotta pid nasıl kullanabilirim. pid de hata yı bulduk ancak. bir önceki hata durumunu nasıl elde edebilriz. ayrıca integral ve türev işlemini naasıl gerçekleştirbiliri.z ccs c kullanıyorum. örnek basit bir yazılım  varabilriseniz sevinirim.

z

Şimdiki hata biraz sonra bir önceki hata olacaktır.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Pir-O

İki çeşit kontrol var birincisi zamana bağlı ikincisi ise ayrık PID. Örnek PID kodları olarak aratırsan bulabilirsin.

http://en.wikipedia.org/wiki/PID_controller

previous_error = 0
integral = 0 
start:
  error = setpoint - measured_value
  integral = integral + error*dt
  derivative = (error - previous_error)/dt
  output = Kp*error + Ki*integral + Kd*derivative
  previous_error = error
  wait(dt)
  goto start

bbs2006

  integral = integral + error*dt
  derivative = (error - previous_error)/dt
  output = Kp*error + Ki*integral + Kd*derivative
  previous_error = error
  wait(dt)

merhaba bu kısmını açıklayabilirmisiniz.

ayhan_eee

Neresini anlamadınız?burada sistemden istenen referans değere göre elde edilen fark(hata) hesaplanıp PID katsayılarına göre değerler alarak çıkış ayarlanır

bbs2006

ben hatayı hesaplattırdık. integral = integral + error*dt
                                         derivative = (error - previous_error)/dt
buna ait ccs c kodunda örnek bir kodlama yazabilirmisini.z

0nur

Merhaba,

PID kontrolu üzerine şuana kadar bir çalışmam olmadı fakat sadece oransal kontrolu ( PWM yöntemi ile ) anlattığım ve robotlarda uyguladığım linklere aşağıdan ulaşabilirsiniz.

http://www.electrobotic.org/orantisal-proportional-kontrol-pid/
Robotik Elektronik ve PIC Programlama Eğitimleri ;www.electrobotic.org/robotik-elektronik-ve-pic-programlama-egitimleri-2/