2015. február 21., szombat

CNC Motor meghajtó 1.

Hosszú idővel ezelőtt elkezdtem dolgozni a CNC maróm motorvezérlésén. Rengeteg kísérlet eredményeként gyakorlatilag használhatatlanná vált a szerkezet. Ma eredményként van egy halott 230W-os motorom és egy halott 600W-os kapcsolóüzemű tápegységem. A tápegység doboza darabokra szedve hever a műhelyben. Tehát a dolog nem áll jól.
Egy pár hónappal ezelőtt nekikezdtem egy projectnek, hogy újraélesszem a szerkezetet.
Most van a kezemben egy új 400W-os motor és egy új tápegység. Az egyetlen dolog ami hiányzik a vezérlőelektronika a kettő közée.
Amikor nekiálltam eszembe se jutott az eredeti elektronikát használni. Az egy használhatatlan szemét.
A kezdetek kezdetén megfogalmaztam néhány célt:
  1. A motor be és kikapcsolása szoftverből.
  2. Sebességszabályozás szoftverből (g kódokkal)
  3. Zárthurkú szabályozás megvalósítása oly módon, hogy a fordulatszám mérése kizárólag a motor áramának és feszültségének mérésével történjen. Nem akartam használni semmilyen optikai jeladót, hall elemet, vagy hasonlót.
  4. Legyen valami kijelző ami képes a fordulatszámot mutatni.
Sajnos ezt a projectet nem dokumentáltam eddig olyan mélyen mint a korábbiakat, de most írok róla néhány gondolatot miután elértem néhány mérföldkövet.
Tehát:
1. Mérföldkő - A motor fordulatszámmérése
Ha a motorral sorbakötök egy diódát az egy pillanatra le fog zárni minden egyes kommutátor szegmens váltásnál. Ez a motor mágneses terében bekövetkező hirtelen változás miatt történik. Amikor ez bekövetkezik a motor tekercse a tápforrásal szemben dolgozik, ezzel egy negatív impulzust hozva létre. (bocsi a megfogalmazásért. Az ide vonatkozó fizika oktatásom már régen volt). Ez az impulzus mérhető:


Rendben, tehát a fenti impulzus frekvenciáját mérni tudom, de nem akartam jelformázás nélkül egy mikrokontroller bemenetére vezetni.
Először is a jelet leválasztottam egy 1uF-os kondenzátorral, meghagyva csak a váltakozóáramú komponenst. Ezek után kiszűrtem a maximális frekvencia feletti komponenst.
Itt álljunk meg egy pillanatra. Mi is itt a maximális frekvencia? A motornak van kb. egy maximum 15000-es percenkénti fordulatszáma. Hogy legyen némi mozgásterem a maximális fordulatszámot 30000-re választottam meg. Ezt el kell osztanunk 60-al, hogy megkapjuk a másodpercenkénti fordulatszámot és meg kell szorozni 12-vel ami a kommutátor szegmenseinek száma. Ez 6kHz-et ad eredményül. Minden ami e fölött van, kiszűrhető. A mevalósított szűrőáramkör végési frekvenciája kb. 7.5kHz:


Ez a szűrés feltétlenül szükséges a kapcsolási zaj miatt ami a teljesítményszabályozóból jön (a rendszer továbbfejlesztése során próbálom ezt a zajt minnél inkább eltüntetni a forrásoldalon).
A szűrt jelet bevezettem egy MCP6002-as műveleti erősítőbe miután transzponáltam fél tápfeszültségre (ez esetünkben 2.5V). A műveleti erősítő Schmitt triggerként került felhasználásra. A komparátor hiszterézise kb. 35mV-ra lett beállítva. Ez elég nagy ahhoz, hogy a fennmaradó zajt kiszűrje, ugyanakkor elég kicsi ahhoz, hogy a valódi 200mV körüli jelet mindenképp megfogja. Végeredményként a műveleti erősítő kimenetén megjelenő stabil négyszögjel frekvenciája arányos a motor fordulatszámával.
2. Mérföldkő - MOSFET meghajtó (teljesítményszabályozó)
Szükségem volt egy MOSFET meghajtóra a motorhoz. Első ránézésre ez nagyon egyszerűnek tűnt, de végül is egy olyan egyenfeszültségű meghajtásra van szükségem ami a lehető legkissebb zajt produkálja a fenti áramkörnek és mindenképp tápoldali kapcsolónak kell lennie. A végülis elkészült áramkör jobban hasonlít egy "buck" kapcsolóüzemű tápegységre mint egy MOSFET kapcsolóra.
Egy P csatornás MOSFET-et választottam kapcsolóelemként. Azért esett a választásom egy P csatornás eszközre mert a szükséges maximális áram (kb. 8.5A) könnyen kezelhető egy relatíve olcsó MOSFET-el és így nincs szükség valami trükkös áramkörre, vagy specializált IC-re az N csatornás MOSFET meghajtására a tápoldalon.
Az áramkör működési elve:
Amikor a vezérlő PWM jel logikai 1 (5V) lesz a Q2-es tranzisztor elkezd vezetni és lehúzza a MOSFET gate-jét 10V-al a 48V-os tápfeszültség alá (ezt a feszültésget a D3 zener korlátozza) és a FET elkezd vezetni. Az 50mA ami itt maximálisan folyahat elég ahhoz hogy megfelelő sebességgel töltse fel a FET gate kapacitását. Ugyanezzel egyidőben a Q1 tranzisztor bázisát lehúzzuk ezzel a Q1 kikapcsolt állapotba kerül (a D2-es dióda azt a célt szolgálja, hogy megvédje a Q1 bázis-emmiter pn átmenetét, hogy az a megengedettnél nagyobb negatív feszültséget kapjon). Amikor a PWM jel logikai 0-ra vált (0V) a Q2 kikapcsol ezzel magasba ngedve a FET gate-jét, de a FET gate kapacitása miatt az nem kapcsolna ki elég gyorsan. Itt jön elő a Q2 szerepe. Amikor a Q1 megszűnik vezetni a Q2 bázisa az R1-D2-n keresztül felhúzásra kerül. Ettől a Q2 kinyit, rövidre zárva ezzel a FET gate kapacitását.
A MOSFET által generált nagyenergiájú négyszügjel-et bevezetjük az L4-C8-D4 "buck" hálózatba ami a PWM jel kitöltési tényezőjével arányos egyenfeszültéséget állít elő.

Még mindíg rengeteg munka maradt hátra, de itt van az első megvalósított működő model:

 
És íme a kapcsolási rajz:


Nincsenek megjegyzések:

Megjegyzés küldése

Megjegyzés: Megjegyzéseket csak a blog tagjai írhatnak a blogba.