Čeprav je bil razvojni sistem MikroPin-a na začetku najprej zamišljen kot poceni učilo, ga lahko uporabimo tudi kot preprost krmilnik. V tem nadaljevanju si bomo malo bolj natančno ogledali, kako lahko s pomočjo MikroPin-a krmilimo delovanje enosmernih (DC) in servo motorjev.
DC motorji
Slika 24 prikazuje poenostavljeno shemo MikroPin-a, na kateri vidimo vezje gonilnika za DC motorje, IC2. To vezje je v različici MikroPin+ že vgrajeno, pri različici MikroPin pa je potrebno dodati še IC2, C2, konektorje M+, M- in M0 M1.
Slika 25 prikazuje dva osnovna načina povezovanja DC motorjev: med enim izhodnim priključkom in negativnim polom napajanja (motor A) ter med enim izhodnim priključkom in pozitivnim polom napajanja (motor B). Tako priključena motorja lahko poženemo, ustavimo in jim nastavljamo hitrost vrtenja. Slika 26 prikazuje motor C, ki je povezan med dvema izhodnima priključkoma vezja gonilnika (H most). Pri tako povezanem motorju lahko spreminjamo tudi smer vrtenja.
Za pogon DC motorjev so običajno potrebni višji tokovi, kot jih lahko zagotavlja USB vodilo osebnega računalnika. Zato smo za napajanje enosmernih (DC) motorjev pri MikroPin-u uporabili posebni napajalni vir, UMOT. To je lahko baterija, akumulator ali mrežni adapter, ki daje na izhodu primerno napetost. Napetost napajalnega vira izberemo glede na karakteristike uporabljenih motorjev, vendar moramo pri tem upoštevati, da morata ostati napetost in tok motorja znotraj omejitev, ki jih integrirano vezje L272M še prenese (4-28V, 1A).
Gonilnik motorja L272M ima vgrajena dva močna operacijska ojačevalnika, ki imata + vhoda priključena na priključke mikrokontrolerja. Oba – vhoda sta priključena na anodo LED diode D8, na kateri je napetost okrog +1,5 V. Zaradi tega bo L272M preslikal logično stanje priključkov na katere sta priključena njegova + vhoda („0“ = 0 V, „1“ = 5 V) v napetost na izhodnem priključku (0 V ali +UMOT). Izhodna priključka sta označena skladno s krmilnima priključkoma: PD0 vpliva na stanje izhodnega priključka M0, PD1 na priključek M1.
Start/stop
Motor, ki je priključen tako, kot je priključen motor A, vklopimo s postavljanjem krmilnega priključka v stanje „1“ in izklopimo s postavljanjem krmilnega priključka v stanje „0“. Čeprav gre pri tem za zelo preproste postopke priporočam, da se ustrezni ukazi napišejo v obliki podprogramov:
Motor_a_start:
Portd.0 = 1
Return
Motor_a_stop:
Portd.0 = 0
Return
Motor, ki je priključen tako, kot je priključen motor B, vklopimo s postavljanjem krmilnega priključka v stanje „0“ in izklopimo s postavljanjem krmilnega priključka v stanje „1“. Ustrezna podprograma sta videti takole:
Motor_b_start:
Portd.1 = 0
Return
Motor_b_stop:
Portd.1 = 1
Return
Sedaj lahko v programu oba motorja krmilimo na bolj pregleden način:
Do
Gosub Motor_a_start ‘vklopi motor A
Wait 3 ‘naj se nekaj časa vrti
Gosub Motor_a_stop ‘ustavi motor A
Wait 1
Gosub Motor_b_start ‘vklopi motor B
Wait 3 ‘naj se nekaj časa vrti
Gosub Motor_b_stop ‘ustavi motor B
Wait 1
Loop
MikroPin, razvojni sistem za 13 € (5)