Skip to main content

Egyfázisú BLDC-motor vezérlése

Megjelent: 2016. szeptember 09.

eyecatcherAz egyfázisú, kefe nélküli (BLDC) motor a legegyszerűbb felépítésűek egyike, amelyet beépített, „önműködő” kommutáció híján csak elektronikus vezérléssel lehet forgásra bírni. Erre azonban – mint a cikkből is kiderül – már egy analóg perifériákkal gazdagon felszerelt, valós idejű vezérlésre is alkalmas, olcsó mikrokontroller is képes.

 

A kisteljesítményű villamosmotor-alkalmazásokban, ahol az ár fontosabb, mint a vezérlés egyszerűsége, valamint a nyomatékra vonatkozó követelmények is mérsékeltek, az egyfázisú, kefe nélküli, egyenáramú motor (BrushLess DC – BLDC) kiváló alternatívát kínál a háromfázisú motorok helyett. Ez a motor egyszerű felépítésű, egyszerűen gyártható, következésképpen olcsó. Ráadásul – mivel csupán egyetlen pozícióérzékelőre és néhány elektronikus kapcsolóra van szükség a motor tekercsén folyó áram vezérléséhez – az elektronika sem igényel költséges alkatrészeket. Emiatt a motor és a vezérlőelektronika egyaránt kedvező anyagi feltételekkel állítható elő.

eyecatcher

A költséghatékonyság fenntartásához tehát olcsó motorvezérlésre van szükség. A cikkben leírt meghajtóáramkörben két visszacsatoló hurok működik. Az első, a „belső hurok” felelős a kommutációért (a motoráramnak a forgó mágneses tér előállításához szükséges irányváltásaiért), a második, „külső hurok” pedig a sebességszabályozást végzi. A motor forgási sebességbeállításának referenciajele egy külső analóg feszültség, a hibaállapotok felismerése pedig a túláram és a túl magas hőmérséklet érzékelésén alapul.

1abra

 1. ábra Az egyfáziú BLDC-motorvezérlő tömbvázlata
 

Az 1. ábrán a Microchip PIC16F1613 típusú, 8 bites mikrovezér-lőjére alapozott egyfázisú motormeghajtó áramkör vázlata látható. A típusra a kis kivezetésszám és a csipre integrált perifériái miatt esett a választás. Ezekkel a perifériákkal vezérelhetők a meghajtó elektronikus kapcsolói, mérhető a motor forgási sebessége, előre jelezhető a forgórész pozíciója, valamint a hibadetektálás is megvalósítható. Az alkalmazás a következő perifériákat használja: komplementer hullámforma-generátor (Complementary Waveform Generator – CWG), jelidőzítés-mérő (Signal Measurement Timer – SMT), analóg-digitál átalakító (ADC), digitál-analóg átalakító (DAC), kódösszehasonlítással működő impulzusszélesség-modulátor (Capture Compare PWM – CCP), fix feszültségreferencia (Fixed Voltage Reference – FVR), időzítő, analóg komparátor és hőmérsékletmérő. A felsorolt perifériákat firmware-vezérlésű belső összeköttetések kapcsolják össze, amelynek következtében a feladat megoldásához kisebb kivezetésszámú mikrovezérlő (MCU) is elegendő.
A motor tekercselését árammal ellátó teljeshidas kapcsolóáramkört a CWG kimenete vezérli. A forgórész helyzetének meghatározásához egy Hall-érzékelőt használunk. A túláramvédelem a motor tekercselésén átfolyó árammal arányos feszültség figyelésével történik, amely az Rshunt érzékelő-ellenálláson keletkezik. A motor forgási sebességének referenciajeléül egy külső analóg feszültség szolgál. A 2. ábra a motormeghajtó áramkör vezérlési folyamatábráját mutatja. A névleges motorfeszültség ebben az alkalmazásban 5 V, a névleges fordulatszám pedig 2400 1/min. A motormeghajtó tápfeszültsége 9 V.

2abra

2. ábra A motorvezérlő szabályozórendszerének vázlata


A feszültségreferencia tetszőleges analóg jel lehet. A mikrokontroller ADC-modulja 10 bites felbontású és 8 csatornás, amely különféle analóg jelek kezelésére alkalmas. Ezeket a sebességreferencia előállítására, valamint a PWM-jel kitöltési tényezőjének kezdőérték-beállítására használjuk majd annak érdekében, hogy a motor sebességszabályozásának indulóértéke a sebességreferencia-jelforrásból érkező jel nagyságának feleljen meg. A kitöltési tényezőnek ezt a kezdeti értékét egy arányos-integráló (PI) szabályozóalgoritmus növeli vagy csökkenti szükség szerint, az újonnan kiszámított kitöltési tényező a CCP-be töltődik, amelynek PWM-kimenete adja a CWG kezdőértékét,a teljeshidas meghajtóáramkör alsóoldali kapcsolóinak – és ezen keresztül a motor fordulatszámának – vezérléséhez.

A belső hurok

A belső visszacsatoló hurok gondoskodik a kommutáció vezérléséről. A CWG-kimenet, amely az állórész gerjesztését vezérli, a Hall-szenzor kimenetének állapotától függ, amelyet egy komparátor hasonlít össze a fix feszültségreferencia (FVR) értékével. A komparátor hiszterézises üzemmódban működik annak érdekében, hogy ne legyen érzékeny a szenzorkimenet zajára.
A komparátor kimenete két állapotot vehet fel, ennek megfelelően egyik vagy másik irányban nyitja a teljes híd kapcsolóit ahhoz, hogy a forgórész az óramutató járásával megyegyző, vagy azzal ellentétes irányba forogjon. A teljeshidas kapcsoló bemeneteit a CWG-kimenet hajtja meg. Egy teljes elektromos ciklushoz egy előre- és egy visszafelé nyitott hídállapotot kell létrehozni. A motor egy teljes mechanikus körülfordulásához két ilyen elektromos ciklus szükséges.

A teljeshidas kapcsolóáramkör

A 3. ábrán látható teljeshidas kapcsolóáramkör lényegében két p-csatornás MOSFET-kapcsolótranzisztort alkalmazunk felsőoldali kapcsolóként, továbbá két n-csatornásat alsóoldali kapcsolóként. A p-csatornás tranzisztorok alkalmazásának fő előnye a kapumeghajtás egyszerűsége, ha azokat felsőoldali kapcsolóként használjuk, amely révén csökkennek a felsőoldali kapcsolók meghajtásának költségei.

3abra

3.ábra Egyfázisú BLDC-motormeghajtó kapcsolási rajza


Még ha a felső- és az alsóoldali kapcsolók állapotát egyszerre váltjuk is át, lesz egy rövid idő, amikor egyszerre vezetnek (egymásba vezetés). Ezt az állapotot el kell kerülni, különben olyan nagy áramlökések keletkeznek, amelyek károsíthatják a kapcsolómeghajtó alkatrészeit.
Az egymásba vezetés elkerüléséhez szükséges késleltetést a CWG számlálóregisztereinek felhasználásával is megvalósíthatjuk. Ennek segítségével egymást át nem fedő kapcsolóvezérlő jeleket lehet előállítani, amely megakadályozza az alsó- és felsőoldali kapcsolók egyidejű vezetését. Ideális esetben az n- és p-csatornás MOSFET-kapcsolóknak ugyanakkora RDSon bekapcsolási csatorna-ellenállással és QG-kaputöltéssel kellene rendelkezniük az optimális kapcsolási teljesítőképesség megvalósításához. Következésképpen hasznos lenne komplementer MOSFET-tranzisztorpárt választani, hogy ezek a paraméterek egyezzenek, a valóságban azonban ez lehetetlen a p- és n-csatornás tranzisztorok eltérő konstrukciója miatt. A p-csatornás tranzisztor csipmérete ugyanis két-háromszorosa az n-csatornásénak ahhoz, hogy azonos RDSon-értéket érjünk el. Ha viszont nagyobb a csipméret, az nagyobb QG kaputöltéssel is jár. Ezért amikor MOSFET-típust választunk, el kell döntenünk, hogy az RDSon és a QG közül melyiknek van nagyobb hatása a kapcsolás minőségére, és annak megfelelően kell típust választanunk.

Hibadetektálás

Ha a motor terhelése túllépi a maximális megengedett terhelőnyomatékot, az a motort állóra fékezi (az állapot közkeletű angol neve: stall), és ebben az állapotban a tekercselésen maximális áram folyik (amit csak az alsó- és felsőoldali tranzisztor RDSon csatornaellenállása és a tekercs egyenáramú ellenállása korlátoz – A szerk. megj.) Ezért a motor védelme érdekében hibadetektálást kell megvalósítanunk a túláram és az állóra fékeződés felismerése érdekében.
A túláram-érzékelés megvalósításához egy Rshunt ellenállást kell az áramkörbe építenünk. Ezen az ellenálláson eső feszültség arányos a motor tekercselésén folyó árammal. Az ellenállás feszültsége egyenesen arányos a motorárammal. Ezt a feszültséget a komparátor invertáló bemenetére vezetjük, amely összehasonlítja azt egy referenciafeszültséggel, amelyet úgy számítunk ki, hogy az Rshunt értékét megszorozzuk a motor állóra fékeződésekor megengedhető maximális árammal. A referenciafeszültség előállítására a fix feszültségreferencia-forrást használjuk, amely szükség szerint egy D/A-konverterrel csökkenthető. Ez teszi lehetővé, hogy nagyon kis referenciafeszültséget használhassunk. Ez azzal az előnnyel jár, hogy az árammérő-ellenállást is kis értéken lehet tartani, amely csökkenti a rajta hővé alakuló veszteségi teljesítményt. Ha az Rshunt ellenálláson eső feszültség meghaladja a referenciafeszültséget, a komparátor kimenete aktiválja a CWG automatikus kikapcsolási funkcióját, és a CWG-kimenet mindaddig inaktív állapotban marad, míg a hibaállapot fennáll. A túlmelegedést az eszköz beépített hőmérséklet-indikátora segítségével ismerhetjük fel, amely ‑40 és +85 ˚C között képes hőmérsékletet mérni. A hőmérsékletszenzor belső áramköre egy, a hőmérséklettől függően változó analóg feszültségjelet állít elő, amelyet az AD-átalakító segítségével digitalizálhatunk. Ha pontosabb hőmérsékletmérésre van szükségünk, egypontos kalibrációt is végrehajthatunk.

A külső hurok

A 2. ábrán láható külső hurok szabályozza a motor forgási sebességét az olyan változó körülmények között, mint a változó terhelés, a zavaró hatások és a hőmérséklet megváltozása. A motor forgási sebességét az SMT-egységgel mérjük. Ez egy óragenerátorral ellátott 24 bites számlálóból és kapuzó logikai áramkörből áll, és olyan különféle jellemzők mérésére konfigurálható, mint az impulzusszélesség, a frekvencia, a kitöltési tényező és két bemeneti jel azonos élei közötti időkülönbség. A motor forgássebességét az SMT- periódusidő és a kitöltési tényező mérésére alkalmas üzemmódját felhasználva mérhetjük. Ebben az üzemmódban akár a kitöltési tényezőt, akár az SMT bemenetére kapcsolt jel periódusidejét mérhetjük az SMT órajelének periódusidejéhez viszonyítva. Az SMT megszámlálja azokat az SMT-órajeleket, amelyek a motor egy körülfordulása alatt érkeznek, és az eredményt a periódusidő-regiszterben tárolja. Ennek a regiszternek a tartalmából tehát megállapítható a motor aktuális fordulatszáma. A sebességreferencia-adatot a valóságos forgási sebességet mutató adatból kivonva egy pozitív vagy negatív hibajelérték keletkezik attól függően, hogy a valódi forgási sebesség nagyobb-e vagy kisebb a beállított referenciaértéknél. Ezt a hibajelet átadjuk a PI-szabályozónak, amely egy firmware algoritmus, és egy, a sebességhibát kompenzáló értéket számít ki. Ezt a kompenzálóértéket adjuk hozzá előjelhelyesen a PWM indulóértékként beállított kitöltési tényezőjéhez, és ez lesz a következő szabályozási ciklus alapjele.

Összefoglalás

A költségérzékeny motorszabályozó-alkalmazásoknál egy hatékonyan és rugalmasan használható mikrovezérlő jelentősen befolyásolhatja a tervezés módját, eredményét és költségeit. Az eszköz hatékonyságát a vezérlési feladat optimális megvalósítására használható belső perifériákon, a mikrovezérlő kivezetésszámán és a tokméreten, valamint a memóriaigényen lehet lemérni. Ezenkívül a könnyű felhasználhatóság és a piacérett termék kialakításának időigénye is különösen fontos szempont, ha különféle tervezési alternatívák közül kell választani. Ez a cikk azt mutatta be, hogyan tud egy olcsó mikrovezérlő megfelelni ezeknek a követelményeknek, hogyan képes egy motort a kívánt sebességreferenciának megfelelően működtetni, hogyan tudja előrejelezni a forgórész pozícióját, megvalósítani egy szabályozóalgoritmust, a forgási sebesség mérését és a hibadetektálást.

Mike Gomez, Mark Pallones – Microchip Technology

www.microchip.com

Még több Microchip