- Komponente, potrebne za kapo Raspberry Pi Motor Driver
- L293D IC voznik motorja
- Shema vezja za kapo Raspberry Pi Motor Driver HAT
- Izdelava PCB za kapo Raspberry Pi Motor Driver
- Naročanje PCB pri PCBWay
- Sestavljanje
- Nastavitev Raspberry Pi
- Pojasnilo kode gonilnika motorja Raspberry Pi
- Testiranje kape motornega gonilnika Raspberry Pi
Raspberry Pi HAT je dodatna plošča za Raspberry Pi z enakimi dimenzijami kot Pi. Lahko se neposredno namesti na vrh Raspberry Pi in ne zahteva nadaljnjih povezav. Na trgu je na voljo veliko klobukov Raspberry Pi. V tej vadnici bomo izdelali kapo Raspberry Pi Motor Driver HAT za pogon enosmernih in koračnih motorjev. Ta kapa za motorni voznik je sestavljena iz IC gonilnika motorja L293D, 16 * 2 modula LCD zaslona, štirih tipk in dodatnih zatičev za modul SIM800 z regulatorjem 3.3V. Ta Raspberry Pi HAT vam bo prišel prav pri izdelavi robotskega projekta.
Tu smo uporabili PCBWay za zagotavljanje plošč PCB za ta projekt. V naslednjih odsekih članka smo zajeli celoten postopek za načrtovanje, naročanje in sestavljanje plošč PCB za Raspberry pi Motor Driver HAT. V prejšnjih projektih smo vgradili tudi Raspberry Pi Hat za LCD 16x2 in Raspberry Pi LoRa KAPO.
Komponente, potrebne za kapo Raspberry Pi Motor Driver
- Raspberry Pi
- L293D IC
- 4 × gumbi
- SMD upori (1 × 10K, 12 × 1K)
- 1 × 10K potenciometer
- 4 × SMD LED
- LM317 Regulator napetosti
- 2 × vijačne sponke
- 16 * 2 LCD modul
L293D IC voznik motorja
L293D je priljubljena 16-pinska motorna gonilna enota. Kot že ime pove, se uporablja za nadzor unipolarnih, bipolarnih koračnih motorjev, enosmernih motorjev ali celo servo motorjev. En sam L293D IC lahko poganja dva enosmerna motorja hkrati. Hitrost in smer teh dveh motorjev je mogoče nadzirati neodvisno. Ta IC ima dva zatiča za vhodno moč, tj. „Vcc1“ in „Vcc2“. Vcc1 se uporablja za napajanje notranjega logičnega vezja, ki bi moralo biti 5V, in Vcc2 pin je za napajanje motorjev, ki so lahko 4,5V do 36V.
L293D Specifikacije:
- Napetost motorja Vcc2 (Vs): 4,5V do 36V
- Največji največji tok motorja: 1,2A
- Največji stalni tok motorja: 600mA
- Napajalna napetost do Vcc1 (VSS): 4,5V do 7V
- Čas prehoda: 300ns (pri 5V in 24V)
- Na voljo je samodejni termični izklop
Shema vezja za kapo Raspberry Pi Motor Driver HAT
Popoln shematski diagram za gonilnik motorja L293D z Raspberry Pi je prikazan na spodnji sliki. Shema je bila narisana z uporabo EasyEDA.
Ta klobuk je sestavljen iz IC gonilnika L293D, 16 * 2 modula LCD zaslona in štirih tipk. Za modul SIM800 smo priskrbeli tudi nožice z regulatorjem 3,3 V, zasnovan z variabilnim regulatorjem LM317 za prihodnje projekte. Kapa Raspberry Pi Motor Driver bo neposredno sedela na vrhu Raspberry Pi, kar olajša nadzor nad roboti z uporabo Raspberry Pi.
Izdelava PCB za kapo Raspberry Pi Motor Driver
Ko je shema narejena, lahko nadaljujemo s postavitvijo tiskanega vezja. PCB lahko oblikujete s katero koli programsko opremo PCB po vaši izbiri. Za izdelavo PCB-ja za ta projekt smo uporabili EasyEDA. Lahko si ogledate katero koli plast (zgoraj, spodaj, zgornjo sliko, spodnjo sliko itd.) PCB-ja tako, da v oknu »Plasti« izberete sloj. Poleg tega je na voljo tudi 3D-model PCB-ja, kako bi izgledal po izdelavi. Spodaj so prikazani 3D-modeli zgornje in spodnje plasti PCB-ja Pi Motor Driver HAT.
Postavitev tiskanega vezja za zgornje vezje je na voljo tudi za prenos kot Gerber s spodnje povezave:
- Datoteka Gerber za kapo Raspberry Pi Motor Driver
Naročanje PCB pri PCBWay
Po dokončnem oblikovanju lahko nadaljujete z naročanjem PCB:
1. korak: Pojdite na https://www.pcbway.com/, prijavite se, če ste prvič. Nato na zavihku Prototype PCB vnesite dimenzije PCB, število slojev in število PCB, ki ga potrebujete.
2. korak: Nadaljujte s klikom na gumb »Citiraj zdaj«. Preusmerjeni boste na stran, kjer boste nastavili nekaj dodatnih parametrov, kot so vrsta plošče, sloji, material za tiskano vezje, debelina in drugo. Večina jih je privzeto izbranih, če pa se odločite za katere koli posebne parametre, jih lahko izberete tukaj.
3. korak: Zadnji korak je nalaganje datoteke Gerber in nadaljevanje plačila. Da bi zagotovil nemoten postopek, PCBWAY pred nadaljevanjem plačila preveri, ali je vaša datoteka Gerber veljavna. Tako ste lahko prepričani, da je vaš PCB prijazen do izdelave in vas bo sprejel kot predan.
Sestavljanje
Po nekaj dneh smo dobili PCB v ličnem paketu in kakovost PCB je bila kot vedno dobra. Zgornja in spodnja plast plošče sta prikazani spodaj:
Po prepričanju, da so sledi in odtisi pravilni. Nadaljeval sem s sestavljanjem tiskanega vezja. Slika tukaj prikazuje, kako izgleda popolnoma spajkana deska.
Nastavitev Raspberry Pi
Pred programiranjem Raspberry Pi moramo namestiti potrebne knjižnice. Za to najprej posodobite OS Raspberry Pi z uporabo spodnjih ukazov:
Posodobitev Sudo apt-get Nadgradnja Sudo apt-get
Zdaj namestite knjižnico Adafruit_CharLCD za modul LCD. Ta knjižnica je namenjena ploščam LCD Adafruit, deluje pa tudi z LCD ploščami drugih znamk.
sudo pip3 namestite Adafruit-CharLCD
Pojasnilo kode gonilnika motorja Raspberry Pi
Tukaj v tem projektu programiramo Raspberry Pi, da v dveh sekundah istočasno poganja dva enosmerna motorja v smeri naprej, nazaj, levo in desno. Smer motorjev bo prikazana na LCD-prikazovalniku. Popolna koda je podana na koncu dokumenta. Tukaj razlagamo nekatere pomembne dele kode.
Kot običajno zaženite kodo z uvozom vseh zahtevanih knjižnic. Modul RPi.GPIO se uporablja za dostop do zatičev GPIO s pomočjo Pythona. Modul čas se uporablja za začasno ustavite program za vnaprej določen čas.
uvoz RPi.GPIO kot GPIO čas uvoza uvoz plošča uvoz Adafruit_CharLCD kot LCD
Po tem dodelite zatiče GPIO za IC in LCD zaslon gonilnika motorja L293D.
lcd_rs = 0 lcd_en = 5 lcd_d4 = 6 Motor1A = 4 Motor1B = 17 Motor1E = 12
Zdaj nastavite 6 zatičev motorja kot izhodne zatiče. Naslednji štirje so izhodni zatiči, od katerih se prva dva uporabljata za krmiljenje desnega motorja, naslednja dva pa za levi motor. Naslednja dva zatiča sta Omogoči zatiči za desni in levi motor.
GPIO.setup (Motor1A, GPIO.OUT) GPIO.setup (Motor1B, GPIO.OUT) GPIO.setup (Motor1E, GPIO.OUT) GPIO.setup (Motor2A, GPIO.OUT) GPIO.setup (Motor2B, GPIO.OUT) GPIO.setup (Motor2E, GPIO.OUT)
V notranjosti zanke v dveh sekundnih presledkih hkrati premaknite dva enosmerna motorja v smeri naprej, nazaj, levo in desno.
GPIO.output (Motor1A, 0) GPIO.output (Motor1B, 0) GPIO.output (Motor2A, 1) GPIO.output (Motor2B, 0) lcd.message ('Left') print ("Left") sleep (2) #Forward GPIO.output (Motor1A, 1) GPIO.output (Motor1B, 0) GPIO.output (Motor2A, 1) GPIO.output (Motor2B, 0) lcd.message ('Forward') print ("Forward") …… ………………………………
Testiranje kape motornega gonilnika Raspberry Pi
Ko končate s sestavljanjem tiskanega vezja, namestite gonilnik motorja HAT na Raspberry Pi in zaženite kodo. Če gre vse v redu, se enosmerni motorji, priključeni na Raspberry Pi, vsaki dve sekundi premikajo v levo, naprej, desno in vzvratno smer, smer motorja pa bo prikazana na LCD zaslonu.
Tako lahko ustvarite svojo lastno kapo L293D Raspberry Pi Motor Driver. Celotna koda in delovni videoposnetek projekta sta podana spodaj. Upam, da vam je bil projekt všeč in se vam je zdelo zanimivo zgraditi svojega. Če imate kakršna koli vprašanja, jih pustite v spodnjem oddelku za komentarje.