U ovom uputstvu povezat ćemo istosmjerni motor s Arduino UNO i kontrolirati njegovu brzinu pomoću koncepta PWM (Pulse Width Modulation). Ova je značajka omogućena u UNO-u za dobivanje promjenjivog napona u odnosu na konstantni napon. Ovdje je objašnjena metoda PWM-a; razmotrite jednostavan sklop kao što je prikazano na slici.

Ako se na slici pritisne tipka, tada će se motor početi okretati i on će se kretati dok se tipka ne pritisne. To pritiskanje je kontinuirano i prikazano je u prvom valu slike. Ako se u slučaju slučaja pritisne tipka za 8 ms i otvori se za 2 ms tijekom ciklusa od 10 ms, u tom slučaju motor neće osjetiti potpuni napon akumulatora od 9 V jer se tipka pritiska samo za 8 ms, tako da je efektivni napon na priključku preko motor će biti oko 7V. Zbog ovog smanjenog efektivnog napona motor će se okretati, ali smanjenom brzinom. Sada je prosječno uključivanje tijekom razdoblja od 10 ms = vrijeme UKLJUČENJA / (vrijeme UKLJUČIVANJA + vrijeme ISKLJUČENJA), to se naziva radni ciklus i iznosi 80% (8 / (8 + 2)).
U drugom i trećem slučaju tipka se pritiska još manje vremena u odnosu na prvi slučaj. Zbog toga se efektivni efektivni napon na stezaljkama motora još dodatno smanjuje. Zbog ovog smanjenog napona brzina motora čak se dodatno smanjuje. Ovo smanjenje brzine s neprekidnim radnim ciklusom događa se sve do trenutka u kojem napon na priključku motora neće biti dovoljan za okretanje motora.
Prema ovome možemo zaključiti da se PWM može koristiti za promjenu brzine motora.
Prije nego što krenemo dalje, moramo razgovarati o H-MOSTU. Sada ovaj sklop ima uglavnom dvije funkcije, prva je pogon istosmjernog motora iz upravljačkih signala male snage, a druga je promjena smjera vrtnje istosmjernog motora.

Slika 1

Slika 2

Svi znamo da za jednosmjerni motor, da bismo promijenili smjer vrtnje, moramo promijeniti polaritete napona napajanja motora. Dakle, za promjenu polariteta koristimo H-most. Sada na gornjoj slici1 imamo četvero prekidača. Kao što je prikazano na slici 2, za okretanje motora A1 i A2 su zatvoreni. Zbog toga struja teče kroz motor s desna na lijevo, kao što je prikazano u drugom dijelu slike3. Za sada uzmite u obzir da se motor okreće u smjeru kazaljke na satu. Ako su prekidači A1 i A2 otvoreni, B1 i B2 su zatvoreni. Struja kroz motor teče slijeva udesno kako je prikazano u 1. st dio slike3. Ovaj smjer protoka struje je suprotan prvom, tako da na terminalima motora vidimo potencijal suprotan prvom, pa se motor okreće u smjeru suprotnom od sata. Tako djeluje H-MOST. Međutim, motore male snage može pokretati H-BRIDGE IC L293D.
L293D je H-BRIDGE IC dizajniran za pogon istosmjernih motora male snage i prikazan je na slici. Ovaj se IC sastoji od dva h-mosta i tako može pokretati dva istosmjerna motora. Tako se ovaj IC može koristiti za pogon robotinih motora od signala mikrokontrolera.

Sada, kao što je već spomenuto, ovaj IC ima mogućnost promjene smjera rotacije istosmjernog motora. To se postiže upravljanjem razinama napona na INPUT1 i INPUT2.
|
Omogući prikvačivanje |
Ulazni pin 1 |
Ulazni pin 2 |
Smjer motora |
|
Visoko |
Niska |
Visoko |
Skrenuti desno |
|
Visoko |
Visoko |
Niska |
Skrenite lijevo |
|
Visoko |
Niska |
Niska |
Stop |
|
Visoko |
Visoko |
Visoko |
Stop |
Dakle, kao što je prikazano na gornjoj slici, za okretanje u smjeru kazaljke na satu 2A treba biti visoka, a 1A niska. Slično tome, u smjeru suprotnom od kazaljke na satu 1A treba biti visok, a 2A nizak.

Kao što je prikazano na slici, Arduino UNO ima 6PWM kanala, tako da možemo dobiti PWM (promjenjivi napon) na bilo kojem od ovih šest pinova. U ovom uputstvu koristit ćemo PIN3 kao PWM izlaz.
Hardver: ARDUINO UNO, napajanje (5v), kondenzator 100uF, LED, tipke (dva komada), otpornik 10KΩ (dva komada).
Softver: arduino IDE (Arduino svake noći).
Kružni dijagram

Krug je spojen u pločicu prema gornjem dijagramu sklopa. Ipak treba obratiti pažnju tijekom spajanja LED stezaljki. Iako gumbi u ovom slučaju pokazuju odskočni efekt, to ne uzrokuje značajne pogreške pa se ovaj put ne trebamo brinuti.
PWM iz UNO-a je jednostavan, u uobičajenim prilikama postavljanje ATMEGA kontrolera za PWM signal nije lako, moramo definirati mnoge registre i postavke za točan signal, međutim u ARDUINO-u ne moramo imati posla sa svim tim stvarima.
Prema zadanim postavkama sve datoteke i registri zaglavlja unaprijed su definirani ARDUINO IDE-om, jednostavno ih trebamo pozvati i to je to, imat ćemo PWM izlaz na odgovarajućem pinu.
Da bismo dobili PWM izlaz na odgovarajućem pinu, moramo poraditi na tri stvari,
|
Prvo moramo odabrati izlazni pin PWM-a od šest pinova, nakon toga taj pin moramo postaviti kao izlazni.
Dalje moramo omogućiti PWM značajku UNO-a pozivanjem funkcije "analogWrite (pin, vrijednost)". Ovdje 'pin' predstavlja broj pin-a za koji nam je potreban PWM izlaz i stavljamo ga kao '3'. Dakle, na PIN3 dobivamo PWM izlaz.
Vrijednost je uključeni radni ciklus, između 0 (uvijek isključeno) i 255 (uvijek uključeno). Taj ćemo broj povećavati i smanjivati pritiskom na gumb.
UNO ima maksimalnu razlučivost "8", ne može se ići dalje pa vrijednosti od 0-255. Međutim, razlučivost PWM-a možete smanjiti upotrebom naredbe "analogWriteResolution ()", unošenjem vrijednosti od 4-8 u zagrade možemo promijeniti njegovu vrijednost s četverobitnog PWM na osmobitni PWM.
Prekidač je za promjenu smjera vrtnje istosmjernog motora.
