PID kerdesek
Huszti Andras
kyrk at villamvadasz.hu
Tue Jan 16 19:47:22 CET 2007
Hali!
> integr = integr + error - integrator[idx_old];
En ugy tapasztaltam, hogy a fenti megoldas nem teljesen tokeletes.
Kenytelen voltam beletenni egy also es felso hatarerteket, hogy ne
tudjon tulcsordulni a szamlalom. Igy mielott hozzadom az uj erteket
elvegzek egy vizsgalatot, hogy nem tortenik-e tulcsordulas. Ha nem akkor
mehet a hozzadas, ha igen akkor nem adom hozza. Elso 2-3 nekifutas soran
enelkul is hibatlanul mukodott de aztan elkezdett fureszfogakat
generalni.
> A P tag hibatlanul mukodik :-)
Ez a legkonnyebb resze szerencsere :)
> A kerdes:
> Van ugye a 3 fele komponens, es annak a szorzo faktorjai, Kp, Ki, Kd.
> Emellett meg feletetelezem, hogy kellene tudni allitani az integralashoz
> hasznalt FIFO meretet is (I_LEN), mert nyilvan nem mindegy, hogy mekkora
> idore integralok. Tovabba szerintem a derivalo tagnal is allithatonak
A beallithato maximalis integralasi ido fugg a I_LEN-tol es a hasznalt
valtozok bithosszatol. Esetleg fugghet is az integralasi erositesi
tenyezotol, ha ugy oldod meg, hogy elobb szorzol es utana adod a
fifohoz.
Minel hosszabb a fifo annal nagyobb az integralasi ido. De ha csupa nagy
ertekkel toltod meg akkor hamar eleri a maxot a szamlalod. Ha ezutan is
hozzadsz akkor tulcsordul (he nem irsz bele korlatot). Tehat esszeruen
ugy kell valasztani a fifo hosszat es a valtozok tipusait, hogy
beleferjen az integralasi idod! Vagy forditva is lehet :)
> Egyebkent lehetne valahogy integralni nagymeretu FIFO nelkul?
> (keves a RAM...)
Szerintem nem. Azt hiszem az a trukk van amit te is hasznalsz, hogy az
uj es a legregebbi erteket veszed csak.
En ugy tudom integratorbol ket felet is lehet kesziteni. Felejtoset es
nem felejtoset. Az utobbi az ami x-tol y ideig integral. Az elobbi ami
pedig 0-tol y ideig integral. Ehhez nem kell fifo, eleg csak
hozzaadogatni egy regiszterhez. Integralasi erositesi tenyezo pedig
allithato igy is.
More information about the Elektro
mailing list