Fórum témák

» Több friss téma
Fórum » DC motor/lámpa PWM szabályzása
 
Témaindító: redcar, idő: Márc 3, 2006
Témakörök:
Lapozás: OK   100 / 153
(#) ferci válasza solan98 hozzászólására (») Márc 6, 2015 /
 
Szia!
Nem adtad meg a címet, hová küldjük..

Azért, mert nincs sárga topik-fejléc, bevezető, még ideírhatnád, mégis miféle motor... volt, amper, watt, DC-nél hol indul meg kb. terheléssel, meg ilyenek.
(#) Peter65 válasza ktamas66 hozzászólására (») Márc 6, 2015 /
 
Ha jól értem, megnövelted a tárcsa felbontását, a gyakoribb mérés érdekében. Ez mindenképpen jó.
A számítási eljárásod továbra is alapvetően integráló. Ez sose lesz jó. Ha el akarsz térni attól, amit korábban felirtam (PI szabályozás), akkor próbáld ki először a sima arányosat: pwm= hiba*Kp Itt az előző pwm értéket sohasem használjuk fel. Ha sikrül Kp értékét 100 körülire felvinni, akkor kb. 1%_os hibával fog menni a motor. De már 16 vagy 32 (elég csak siftelni) Kp értéknél is nagyjából követni fogja az alapjelet, és a lengési problémáid szerintem meg fognak szünni. Persze a PI lenne az igazi.
(#) Peter65 válasza ktamas66 hozzászólására (») Márc 7, 2015 /
 
Tegnap esete nem tudtam megnézni az Excel táblázatot, csak ma reggel. Ez egy szimulációs kísérlet volna, ami nekem szándékában nagyon tetszik. Sajnos van egy nagy gyengesége, a motor modellezése, illetve nem modellezése. A fordulatszám nálad a kimenő feszültséggel egyenesen arányos. Ez azért nagyon durva megközelítés. Legalább egy ellenállással illene figyelembe venni a motor impedanciáit. A korrektebb lenne, ha a motor RLC körös helyettesítő képét használnád (R armatúra köri ohmos impedancia (0,1-1 ohm), L armatúra köri induktivitás (1-100mH), C belső feszültség, a motor mechanikai időállandóját is magában foglalva (1000-100000uF), a beírt értékek az olyan kis motorokra tett becsléseim, mint ami neked is van). Tudom, hogy ekkor már a kialakuló áramokkal is számolni kell, azaz jóval bonyolultabb az algoritmus, de megérné. A fordulatszám a belső feszültséggel arányos, azt kellene a táblázat D oszlopába visszaírnod.
A számolásod azt tükrözi amit írtál, és jól mutatja a hibákat. Az arányos tag kb. úgy néz ki ahogy kell, a hibát előjelesen mutatja, ahogy a sebesség beáll, egyre kisebb értékű. Az integráló tag és a többi számolása viszont nem jó.
A táblázat második részét kijavítottam olyanra, amit múltkor írtam. A paraméterek némi módosítgatása után láthatod milyen felfutást produkál. Azonban ez továbbra is önámítás, mivel a motor valós modellezése nélkül pusztán azt tükrözi, hogy ilyen mintavételezési gyakorisággal milyen gyorsan tud beállni a szabályzó.
(#) ktamas66 válasza Peter65 hozzászólására (») Márc 7, 2015 /
 
Lehet én kavarodtam bele, de a PID a beavatkozás mértékét adja meg, nem a PWM értéket. Valami hasonlóra gondoltam. mint az AN899-ben.
Az excelbe betettem egy arányszámot, ami szimulálhatja a motor gyorsulását. Az jól látszik, hogy az egész nagyban függ a motortól.

Utólag olvasom a hozzászólásod , még emésztem. Pár hete rágom csak ezt a témát, nem érzem teljesen életcélnak a motorok modellezését, inkább arra gondoltam csináljunk egy egyszerű, könnyen módosítható programot, ahol néhány paraméter beállításával megszülethet egy megoldás.
A hozzászólás módosítva: Márc 7, 2015
(#) noris válasza proli007 hozzászólására (») Márc 7, 2015 /
 
Üdv!

Nagyon szépen köszönöm amegoldásokat!
Abban a tévhitben éltem, hogy egy 555-el és egy rc taggal megoldható.
Valószínűleg pic, vagy avr-es megoldás lesz.
Így a direktbe kapcsolás is könnyen megoldható.
Köszönöm a munkátokat!
Norbert
(#) Peter65 válasza ktamas66 hozzászólására (») Márc 7, 2015 /
 
A Microchip blokkvázlatát átfutva már értem, hogy miért számoltál úgy ahogy. Szerintem nem jó az az algoritmus. A BLDC motorokhoz is a kefés motoroknál bevált szabályozási köröket kell használni. A linken találhatsz egy irodalmat, amiben a 10. oldalon a szervó motorokról van szó. Ott is ugyan az a szabályozási struktúra van felvázolva.
Bővebben: Link
Nem muszáj a motort lemodellezni, de ha megteszed, akkor sokkal egyszerűbben próbálkozhatsz a különféle algoritmusokkal.
Nem szeretném elvenni a kedved, de szerintem nincs igazán járható út az alárendelt áramszabályozós fordulatszám szabályozáson kívül. Viszonylag egyszerű (áram szab. + a ford. szab. 2 + 2 paraméter), stabil, a leggyorsabbra optimalizálható. A szabályzó gyártók úgy igyekszenek felhasználó baráttá tenni, hogy a készülékeknek van önoptimalizációs funkciója, azaz beállítja saját magát. Akkor már a felhasználót nem is annyira érdekli, mi is történik a szabályzóban, melyik paraméter mire való.
(#) ktamas66 válasza Peter65 hozzászólására (») Márc 8, 2015 /
 
Most már legalább értem amit az AN-ekben irogatnat . Az egyikben találtam:
Idézet:
„The motor responds to a PWM output stage by time averaging the duty cycle of the output. Most motors react slowly, having an electrical time constant of 0.5 ms or more and a mechanical time constant of 20.0 ms or more. A 15 kHz PWM output is effectively equivalent to that of a linear amplifier.”

Nem tudom ez ebben a mérettartományban mennyire általános, de ez alapján átírtam a programot. Most kb. 2ms-onként számítgat, és úgy is mér. Az algoritmust is kinéztem onnan, szerintem megfelelő lesz.
(#) Peter65 válasza ktamas66 hozzászólására (») Márc 8, 2015 /
 
A dc motorok leírásakor kettő időállandót emelhetünk ki: a villamos időállandót és az elektomechanikai időállandót. Az áramszabályzó kör felirásakor a villamos időállandója lesz a fontos, a fordulatszámszabályzókör szempontjából az elektromechanikus időállandó. Ezekhez képest kell olyan gyakran lefutni a szabályzó köröknek, hogy úgy viselkedjenek, mint egy lineáris szabályzó. Ez célszerűen egy nagyságrenddel nagyobb lefuttatási frekvenciát jelent.
A Microchip doksijában kb. ugyanaz van, mint ami korábban írtam. A dc motor rlc modeljében az rl időállandó a villamos időállandót. Azokból az értékekből visszaszámolva, 0,1...100ms tartományt adtam meg. Ez alapján az áramszabályzó kör algoritmusát több 10kHz-es frekvenciával illene lefuttatni. Erre írtam, hogy ennek belepakolása egy 8 bites PIC-be kérdéses lehet. Illetve ez azt is jelenti, -amit a doksi is ír- hogy ilyen nagyságrendű PWM jel már gyakorlatilag lineáris beavatkozás lesz.
Az elektromechanikai időállandó egy nagyságrenddel nagyobb szokott lenni (rlc modelben a C tag határozza meg elsősorban). Ezért a fordulatszámszabályzókör lefuttatása elegendő kHz-es nagyságrendben. Ha most csak 2ms-ekenként futja az erőforrásokból (500Hz), az sem lesz tragédia, így is 50-szer gyorsabb lesz, mint a 100msec, ahol kezdted.
Fontos, hogy ezzel egyidejűleg a fordulatszám mérésének sávszélessége is emelkedjen, ahogy írtad is.
(#) sonajkniz hozzászólása Márc 20, 2015 /
 
Sziasztok!
Egy kis segítsségre lenne szükségem PWM szabályzó építéséhez!
Nem a PWM rész okoz gondot, hanem a teljesítmény.
A motor 36V 3KW
Milyen fetekkel, hogyan lehet ekkora teljesítményt kezelni?
Forgásirányváltás nem kell, csak hajtás.
(#) kadarist válasza sonajkniz hozzászólására (») Márc 20, 2015 /
 
Szia!
Ez egy egyenáramú kefés motor?
(#) sonajkniz válasza kadarist hozzászólására (») Márc 20, 2015 /
 
Igen. Az adattábláján az áll, 36V 86A
(#) kadarist válasza sonajkniz hozzászólására (») Márc 20, 2015 /
 
Van itt egy jó kis végfok. A FET-ek számának növelésével a maximális teljesítményt tovább fokozhatod.
(#) sonajkniz válasza kadarist hozzászólására (») Márc 21, 2015 /
 
Köszönöm!
(#) k3gy3tl3n hozzászólása Márc 21, 2015 /
 
Sziasztok, 3 motor vezérléséhez kell pwm-et használnom egy atmega48 uc-n. 2db egyforma DC motor, ezek mehetnének egy timerről csak a kitöltési tényzőt kell változtatnom, ha eltérő sebességen akarom járatni őket és egy servo. Ha jól sejtem 2 timer fog kelleni hozzá, egy a dcmotoroknak és egy a servonak. A 6 PWM láb közül 2 már ki lett lőve, más használja, de nem PWM megy rajtuk, szóval timer még nem lett elfüstölve. Ami maradt: PB1(OC1A) PD6(OC0A) PD5(OC0B) PD3(OC2B). Ezek közül melyik hármat érdemes választanom? Melyikek mennek egy timerről?
(#) sonajkniz hozzászólása Márc 21, 2015 /
 
Sziasztok!
Meg tudná valaki mondani, hogy miben külömbözik felhasználhatóság terén a POWER MOSFET driver
és a MOSFET driver ha mindkettő max. 18V-ot és 1,5A-t tud? Azt adatlapból tudom, hogy az egyiknek fetes, a másiknak tranzisztoros a kimenete, csak azt nem tudom, hogy ez egy POWERFET-et mennyiben befolyásol.
(#) pucuka válasza sonajkniz hozzászólására (») Márc 21, 2015 /
 
Az előállítási technológiában különböznek. A közönséges MOSFET -ben csak egy tranzisztor van, míg a POWERMOSFET -ben sok kicsi párhuzamosan, persze egy lapkán kivitelezve. Gyakorlatilag egy integrált áramkör. Ettől sokkal strapabíróbb, de drágább is.
(#) sonajkniz válasza pucuka hozzászólására (») Márc 21, 2015 /
 
Értem, és köszönöm.
Most már csak az a kérdésem, hogy meg lehet hajtani egy IRFP064NPBF powerfet-et MC33151PG fetdriver-el, vagy feltétlenül kell hozzá ICL7667CPAZ powerfet driver? Mert a kettő között csaknem 500 Ft az árdifi, és kell belőle 5 db.
(#) AxaGame válasza k3gy3tl3n hozzászólására (») Márc 23, 2015 /
 
Szia!
A nevekből látszódik, hogy melyik pwm jel melyik timerhez tartozik. Tehát a 3. karakteren lévő sorszám.
Azt nem tudom megmondani, hogy melyiket érdemes választanod. A legnagyobb különbség az időzítések finomságában. A Timer0 a legegyszerűbb, 8 bites és szegényesebb előosztóval bír.
A Timer1 1 bites, bár Timer0-hoz hasonló előosztóval bír. Viszont kvázi 1:65535-ös arányú pwm jelet is ki bírsz csiholni így.
A Timer2 szintén 8 bites, de kicsit több fél előosztója van, így abban válogathatsz.
Szóval át kell rágnod, hogy milyen frekivel akarod meghajtani a motorokat, milyen arányokat akarsz beállítani. Aztán pedig valamit ki kell választanod.
Egyébként szerintem az Atmel leírás teljesen egyértelműen fogalmaz, javaslom, tanulmányozd azt előbb még.
Én modell hajóban egyébként Timer0-t használom a motor vezérléséhez kb. 4kHz-es pwm frekivel, még Timer1 a távirányító jelének pontos mérését szolgálja.
Üdv!
(#) AxaGame válasza sonajkniz hozzászólására (») Márc 23, 2015 /
 
Szia!
Ha a tápfesz megfelelő, akkor bármelyik meghajtó megbirkózik az nFET-tel.
Üdv!
(#) sonajkniz válasza AxaGame hozzászólására (») Márc 23, 2015 /
 
Köszönöm!
(#) k3gy3tl3n válasza AxaGame hozzászólására (») Márc 23, 2015 /
 
Szia, köszönöm a segítséget. Végül a Timer0-t választottam PD5 és PD6 lábakon. Most 4kHz-es pwm frekivel próbáltam, de hangja van a motoroknak (sípol) ezért leveszem a prescalert, így 32kHz-en elvileg már nem lesz hangja. Hadd kérdezzem meg, milyen motort tettél a hajóba? Én egy RS555 12V-os 6000RPM mocit néztem ki, ezt elvileg áttétel nélkül direktbe köthetem a tönkcsőre. Egy ILYEN gondolom kevés lenne.
A hozzászólás módosítva: Márc 23, 2015
(#) AxaGame válasza k3gy3tl3n hozzászólására (») Márc 23, 2015 /
 
A pwm frekvencia növelésével figyelj majd a meghajtó IC hőmérsékletére a tesztek során. De szerintem nem lesz vele probléma.
Hogy milyen motort raktam a hajókba? Nagyon sok típus volt már. Volt olyasmi is, amit használni szeretnél, de volt nagyobb teljesítményű is. Az egyik legnagyobb teljesítmény valami kínai motor vette fel, ami 50-es fsr csavarral 30A-t kapott ki a 12V-os akkuból. Ez túltett a robbe 700-as motoron. De nekem a hajók méretéből és felhasználásából adódóan jobban tetszettek a bontókból beszerezhető autó vízhűtők ventilátor motorok (pl. Audi vagy VW). Ezek ténylegesen alacsony fordulatúak és nagy nyomatékkal bíróak.
Azt nem tudom, hogy milyen hajót akarsz ezzel a motorral meghajtani és milyen csavart, de én nagyobbat keresnék. (Legalább ami bírja az 5-6A-t)
Ha erről akarsz esetleg beszélni, akkor az rcmodell fórumon keresd meg Blaskó Jánost és őt faggasd ki. Vagy ott is megtalálsz engem. Itt most ne untassuk a többieket az alkalmas motorokkal. Inkább maradjunk az izgalmasabb meghajtásoknál, szabályozásoknál.
(#) Pubszon hozzászólása Márc 28, 2015 /
 
Üdv.
PWM vezérléshez szeretnék MOSFET-et használni.
Hogy nagyobb fogyasztót tudjak vele vezérelni mint amennyit a MOSFET biztonságosan tud akkor csak többet kell párhuzamosan kötni?
Köszi.
(#) Melphi válasza Pubszon hozzászólására (») Márc 28, 2015 / 1
 
Igen elméletileg ennyi elég, de ha van áramfigyelés akkor a teljesítmény ellenállást is át kell számolni.
(#) k3gy3tl3n hozzászólása Ápr 9, 2015 /
 
Sziasztok, adott a képen látható relés kapcsolás (móricka rajz), a kérdés hogy ezen hogyan kell a diódákat a motorra kötni? Amíg egy irányban forgott csak a motor addig a motorral párhuzamosan a negatív lábtól a pozitív felé mutató dióda kellett. Most hogy 2 irányba is foroghat hova kellenek a diódák?

relé.png
    
(#) k3gy3tl3n válasza k3gy3tl3n hozzászólására (») Ápr 9, 2015 /
 
Esetleg így jólehet?

relé.png
    
(#) ktamas66 válasza k3gy3tl3n hozzászólására (») Ápr 9, 2015 / 1
 
Csak egy FET kell. A motor a morze középsőre megy, az alsó-felső a táp és drain, a másik oldalon fordítva. A dióda mindig a +12V és a drain között van.
A hozzászólás módosítva: Ápr 9, 2015
(#) k3gy3tl3n válasza ktamas66 hozzászólására (») Ápr 9, 2015 /
 
Ezt még emésztenem kell hogyan lehet egy FET-tel megoldani. A kapcsolás amugy egy H-híd féleség akar lenni N-channel low side FET-ekkel viszont a high side P-channel FET-ek helyett egy relé kapcsolgatja a tápot (és persze vele együtt a földet az átlós N FET-re). Így 1db pwm jellel állíthatom a sebességet mindkét forgásirányban mert egyszerre csak egyik FET fog földet kapni.
(#) k3gy3tl3n válasza k3gy3tl3n hozzászólására (») Ápr 9, 2015 /
 
Már értem amit írtál, késő van... Jó ötlet köszi!
(#) Sebi válasza k3gy3tl3n hozzászólására (») Ápr 10, 2015 /
 
Én így szoktam megoldani. A FET mellé nem kell külön dióda, a legtöbb típusban belül van.
A hozzászólás módosítva: Ápr 10, 2015

relé.png
    
Következő: »»   100 / 153
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem