PID kerdesek

Moczik Gabor pm at progzmaster.hu
Thu Jan 18 20:31:26 CET 2007


Huszti Andras wrote:
>>A hiszterezis hogy lesz jo szerinted?
>>Szerintem instabilla teheti a hurkot.
> 
> En nagyon pici hiszterezist engedtem meg. 1-2-3 -al probalkoztam
> plusz-minuszban. Ugy talaltam, hogy segitett. Amikor az also bit neha
> ugrall, akkor nem akar folyton beaavatkozni hanem bekenhagyja. De igen
> mint irtad celszerubb egy RC-tag.

Ah, kozben rajottem, hogy megse, ez meg lassitja a hurkot, ha kicsi akkor 
meg nem eleg hatasos.

Lehet hogy nagyobb felbontasu A/D volna jobb, es akkor le lehet osztani az 
eredmenyt meg nehany bites hiszterezist beletenni.

> igy sem akart beallni. De ez mar valoszinuleg a szakasz (rc szervo
> motor) hibaja, hogy akkora a kotyanas meg mittomen micsoda, hogy nem
> kepes beallni olyan pontosan.

Kozben kicsereltem a mechanikat, mert kellett egy pozicio enkoder is, es 
volt keszen egy ilyen.

Ezen a motoron nem megy a back-emf meres, mert nem gerjed le az 
induktivitasa a ciklus ido alatt, viszont van rajta tachometer. Ez meg 
rohadtul felhullamos, lassu. Keptelen vagyok stabilla tenni a szabalyozast, 
ha oriasi RC-ket rakok a tacho jelre, alacsony frekin oszcillal.

Mit csinalok rosszul?

> Szerintem elso korben eleg ha PI-vel csinalod. A D-tag szeritem nagyon
> be tud kavarni. Vagy eloszor ha meg is idor a D-tagot akkor kapcsold ki.
> Vegulis a D-tag csak azert kell majd, hogy gyorsabb legyen a
> szabalyozasod.

Egyelore Kd=0, de nincs is kulonosebb hatasa, akarmire allitom is. Szerintem 
azert, mert tul gyors a mintavetel, es egyszeruen nincs olyan gyors 
valtozas, hogy tulzottan be tudna avatkozni.
A zajt azert jol erositi :-)

>>A gyakorlatban nem volna megfelelobb, ha csak addig ezgednem, ameg van hatasa?
>>Pl. a max output valamennyi, Ki es a Scaling factor valamennyi, akkor 
>>elvileg a max_sum=max_out*scaling_factor/Ki
> 
> Elmeletben mindig kell, hogy legyen hatasa. De mivel kulonbozo helyeken
> maximum es minimum hatarok keletkeznek ezert akarmit is csinalunk a
> rendszerunk korlatos lesz. Ha abbol indulunk ki, hogy a P-tag is
> korlatos (megfelelo nagy Ap eseten a kimenet maximalis lesz egeszen pici
> hibajelre is) akkor az I-tag is lehet korlatos. Ha azonban az I-tag
> kimenete tovabb novekedhetne mint a maximalis hatasos ertek akkor ha
> megszunik a hiba es netan negativ lesz, akkor az I-tag hatasa csak egy
> ido utan kezd csokkeni. Holott valojaban rogton csokken csak ez a hatas
> nem jut el azonnal a kimenetre is. Tehat valoban jobb az I-tagot
> korlatosra szabni! Ezen felbuzdulva en is atirom ilyenre a programom.
> Hogy oszinte legyek eddig nem gondoltam erre nagyon, mert nem allt elo
> ilyen problema.

Pontosan erre gondoltam en is, hogy ha tulterheles vagy valami miatt 
"felgyulemlik a hiba", akkor utana sokara ter eszhez a hurok.
Szerintem ezt is celszeru lehet a konfiguralhato parameterek koze felvenni...

>>Ezt ugy kepzelem megvalositani, hogy a fordulatszamot szabalyzo hurok 
>>alarendelt lesz a poziciot szabalyzo huroknak, vagyis a poizicio-PID 
>>kimenete lesz a fordulatszam-PID setpoint-ja.
> 
> nahat ide mar tenyleg kelleni fog a PID, ha pontos is legyen meg gyors
> is :)
> Robotikabol oktattak valami olyat, hogy motoszabalyozast ugy szoktak
> csinalni, hogy egyas utan rakjak a kulonbozo szabalyozokat. Emlekeim
> szerint mintha a legelso tag egy nyomatekszabalyozo lett volna. Ez elott
> volt a fordulatszam majd a pozicio.

Aha, akkor jo az elgondolas.
A hardveres nyomatek korlatozason is gondolkodtam, de igy sokkal jobb, igy 
legalabb a szabalyozas resze lesz.

Ha esetleg olyat kell csinalni, hogy ne legyenek hirtelen mozgasok, vagyis a 
setpoint valtoasa eseten a beallasi ido hosszabb legyen, akkor mit celszeru 
tenni?
Ha novelem az I faktort, az noveli a tullovest is. Kulon a setpoint hirtelen 
novekedeset kellene akadalyozni integralassal?

-- 
((( Móczik Gábor  )))--((( pm -> @ -> progzmaster -> . -> hu  )))
((( Skype: moczik )))--((( Website: http://www.progzmaster.hu )))



More information about the Elektro mailing list