Tartalomjegyzék:

Sorozatvezérelt, változtatható sebességű motor: 6 lépés
Sorozatvezérelt, változtatható sebességű motor: 6 lépés

Videó: Sorozatvezérelt, változtatható sebességű motor: 6 lépés

Videó: Sorozatvezérelt, változtatható sebességű motor: 6 lépés
Videó: Tovább csiszolták a tökéletességét: BMW X5 30d 2024, Július
Anonim
Soros vezérlésű, változtatható sebességű motor
Soros vezérlésű, változtatható sebességű motor

Egy kis egyenáramú motor fordulatszámát csak a számítógép soros portjával, egyetlen MOSFET -el és néhány triviális szoftverrel szabályozhatja. (A MOSFET és a soros port alkotják a "fordulatszám -szabályozást"; továbbra is szüksége lesz egy motorra és egy megfelelő tápegységre az adott motorhoz; míg a soros port biztosítja a feszültséget a mosfet be- és kikapcsolásához, t adja meg a tipikus motorhoz szükséges áramot.)

Lépés: Nézze meg az áramkört

Nézd meg az áramkört
Nézd meg az áramkört

Impulzusszélesség-modulációt fogunk végezni egy általános N-csatorna teljesítményű MOSFET segítségével, amely a számítógép rs232-es portjáról az adatátviteli tűhöz van csatlakoztatva. Amikor a soros port üresjáratban van, a csap "1" állapotban lesz, ami mire rs232 -re fordítják, körülbelül -12V (az illesztőprogramoktól függően lehet, hogy közelebb van -9V -hoz vagy -5V -hoz), és a tranzisztor teljesen kikapcsolt állapotban lesz. Amikor "0" biteket továbbítunk a soros porton, az rs232 pin +12V -ra megy, ami elég ahhoz, hogy a legtöbb mosfet elég jól bekapcsolja.

Ha sok "0" bis -t küldünk egymás után, a motor majdnem teljesen be van kapcsolva, és a motor gyorsan fog működni. Ha többnyire "1" biteket továbbítunk, a motor lassabban fog működni.

2. lépés: Csatlakoztassa

Vezetékkel fel
Vezetékkel fel

Mivel csak egyetlen komponens és csak néhány csatlakozás van, csak "szabad formájú" vezetékeket adhat hozzá.

A MOSFET -ek statikusan érzékenyek, ezért legyen egy kicsit óvatos, de nagyon kevés kritikus.

3. lépés: Fájlok beállítása PWM értékekkel

Fájlok beállítása PWM értékekkel
Fájlok beállítása PWM értékekkel

Az egyik módja annak, hogy bármilyen motor írása nélkül vezérelje a motort, elő kell készítenie néhány fájlt, amelyek megfelelő bájtokat tartalmaznak (többé -kevésbé 0 bittel), és egyszerűen MÁSOLNI azokat a COM portra, ahová a motort csatlakoztatta. Több fájlt előkészítettem (az emacs használatával, de bármi is működik az Ön számára):

  • 0.pwm:: 5000 NULL karaktert tartalmaz (vezérlőgomb a legtöbb billentyűzeten) [br] Ez körülbelül olyan közel van a "teljes sebességhez", amennyire ezt a technikát elérjük.
  • 1. pwm:: 5000 Control-A karaktert tartalmaz (ascii 01) (egy "1" bit karakterenként)
  • 3. pwm:: 5000 Control-C karaktert tartalmaz (ascii 03) (két "1" bit per char)
  • 7. pwm:: 5000 Control-G karaktert tartalmaz (ascii 07) (három "1" bit / karakter)
  • 15. pwm:: 5000 Control-O karaktert tartalmaz (ascii 15) (négy "1" bit / karakter)
  • 31. pwm:: 5000 control-_ karaktert tartalmaz (ascii 31) (öt "1" bit / karakter)
  • 63.pwm:: tartalmaz 5000 "?" karakterek (ascii 63) (hat "1" bit karakterenként)
  • 127.pwm:: 5000 DEL karaktert tartalmaz (ascii 127) (hét "1" bit karakterenként)

(Most, hogy képeket rajzoltam, észre fogod venni, hogy a tényleges bitminták nem ideálisak. Mivel az rs232 soros először az LSB -t továbbítja, valóban nullák között szeretnénk eltolni az egyek helyett. Gyakorlat a diáknak!)

4. lépés: Játssz a DOS -szal: Állítsa be a COM -portot, és másolja a fájlokat

Játssz a DOS -szal: Állítsa be a COM -portot, és másolja a fájlokat
Játssz a DOS -szal: Állítsa be a COM -portot, és másolja a fájlokat

A 9600 bps gyakori bitsebesség. Szépen megegyezik "körülbelül" egy bájttal ezredmásodpercenként, tehát ebben az esetben 1000 Hz -es PWM frekvenciára illeszkedik, ami szerintem a kismotoroknál megfelelő. Kísérletezhet különböző bitsebességgel, hogy lássa, hogyan működnek a dolgok, ami ennek a módszernek az egyik előnye. Hozzon létre egy DOS (vagy "Parancssori") ablakot (feltételezve, hogy Windows operációs rendszert használ), és konfigurálja a: mode com1: 9600, n, 7, 1 "Ez azt mondja, hogy a comm port 9600 bps sebességgel fut, és 7 bitet küld minden karakterben (hogy megfeleljen a 7 különböző bithosszunknak.) Az" n "NEM paritás, így ezek lesznek az egyetlen adatbitek. Az "1" azt jelenti, hogy lesz egy "stop" bit, ami megakadályozza, hogy teljesen bekapcsoljuk a motort (na jó.) Így most bekapcsolhatja a motort parancsokkal mint: copy 0.pwm com1: Mivel 5000 karaktert küldünk körülbelül 1 ezredmásodpercenként, a motornak körülbelül 5 másodpercre be kell kapcsolnia a teljes sebességhez. Ha kevesebb, mint 5 másodpercet szeretne, készítsen rövidebb fájlt. Hasonlóképpen, a következőket teheti: copy 127.pwm com1: a motor a lehető legalacsonyabb fordulatszámon üzemel. A beállításokkal a motor egyáltalán nem forog a 31.pwm -nél lassabban, de YMMV (vékony k Volt egy 12 V -os motorom, amely 5 V -os elemeket használt.) A COPY parancs lehetővé teszi a fájlok egymásba fűzését, tehát ha azt szeretné, hogy a motor felgyorsuljon, majd ismét lelassuljon, akkor például a következőket teheti: 31.pwm+15 másolás. pwm+7.pwm+0.pwm+7.pwm+15.pwm+31.pwm com1:

5. lépés: A motor vezérlése egy programból

A motor vezérlése egy programból
A motor vezérlése egy programból

Ha programot ír, valószínűleg megnyithatja a COM1: fájlt, és egyszerűen úgy írhat rá, mintha bármilyen más fájl lenne. Nagyon hasznosnak tűnik, ha a motor bekapcsolási periódusait meghatározott számú karakter megadásával tudja időzíteni. Ne felejtse el, hogy a rendszer nagy valószínűséggel puffereli a soros portra küldött karaktereket, így az, hogy egy WRITE hívás visszatér, nem jelenti azt, hogy a motor befejezte, amit mondott. Mivel nem csinálunk semmi "divatosat" a com port jeleivel, nem kell vizsgálnia azokat a rejtélyes lehetőségeket, amelyeket ez támogathat. (bár ha kitalálod, hogyan kell elküldeni egy BREAK sorozatot a com portra, akkor ez egy folyamatos "0" állapot, és végig hajtja a motort; több mint folyamatos 0 karakter küldése.)

Ha a programozási nyelve nem teszi lehetővé a COM1 -re történő kimenetet, akkor továbbra is képes lehet a motor vezérlésére a DOS "hívásával" másolási parancsok végrehajtásához. (OK. Letöltöttem a Microsoft Visual Basic Express 2005 -öt (ez ingyenes), és sikerült egy vízszintes görgetősávot kötni a motor sebességéhez, amelyet a soros porton keresztül lehet szabályozni. Zip csatolva. Valószínűleg több van, mint amennyi szükséges a program másolásához a rendszeren, de nem tudtam rájönni, hogy pontosan melyik bitekre van szükség. A program egyszerre egyszerűsödik és nehezebben érthető (bocsánat) azáltal, hogy többszálú. Egy szál nem tesz mást, csak kimeneti a soros portra, és A fő szál olvassa a görgetősávot és frissíti a soros szál által használt információkat.)

6. lépés: kísérletezzen

Kísérlet!
Kísérlet!

Ha a dolgok alapvetően működnek, ez rettentően sok teret biztosít a kísérletezéshez.

  • Javítsd ki a bitmintáimat!
  • Sokat számít a bitráta?
  • Szabályoznia kell az "on" és "off" impulzusok szélességét, vagy egyszerűen elegendő az arányuk szabályozása?
  • Ha csak az arányt kell szabályoznia, fontolja meg a több karakteres sorozatokat magasabb bitsebességgel, hogy több sebességet kapjon. A 0 -as, majd a 127 -es kimenet körülbelül fele lenne.
  • Ennek működnie kell a zseblámpa -izzók tompításánál is.

Ajánlott: