Ostane le še izdelava krmilnega vmesnika za robotove motorje in druge pogone. Pomembno in skoraj neizogibno je, da imamo z računalnikom možnost nastavljanja hitrosti vrtenja elektromotorjev. To lahko izvedemo na več načinov. Manj izkušenemu (domačemu) elektrotehniku se bo morda prva utrnila zamisel, da bi digitalno-analogni pretvornik povezal z ojačevalnikom in tako krmilil vsakega od motorjev. Vendar to ni potrebno. Mikrokrmilniki imajo že vgrajeno funkcijsko enoto, ki omogoča krmiljenje koračnih in enosmernih električnih motorjev s pomočjo nastavljive impulzno-širinske modulacije. Dovolj je, da osebni računalnik poda 16-bitno vrednost in motor se že zavrti z želeno hitrostjo. Za vse ostalo poskrbi funkcijska nota mikrokrmilnika. Edini pogoj za njeno delovanje je izvedba ustreznih nastavitev pred začetkom delovanja. Slednje lahko izvedemo s programom iz PC-ja, z neposredno nastavitvijo registrov mikrokrmilnika ali pa kodo »zapečemo« v vgrajeno programsko opremo. Oboje je razmeroma enostavno.

Preostane le še vmesnik za krmiljenje elektromotorjev. V našem primeru smo izbrali enostavnejše enosmerne motorje, ki jih lahko krmilimo z enim impulzno-širinsko moduliranim signalom. Potrebujemo le ustrezen tranzistorski ojačevalnik, katerega bistveni del so štirje močnostni tranzistorji, ki omogočajo vrtenje motorja naprej ali nazaj z različnimi hitrostmi. Primer takega vezja za krmiljenje dveh motorjev najdemo na spletni strani tinyurl.com/n87m6lt.

Opozorimo, da za opisano zvezno krmiljenje motorjev relejske tehnike ne moremo uporabiti, saj značilni industrijski releji zdržijo (le) okoli milijon preklopov ter so obenem še zelo glasni in razmeroma počasni.

Digitalna tipala

Čeprav so analogna tipala na videz preprostejša za uporabo, saj ne zahtevajo izvedbe zahtevnega protokola za prenos podatkov, so pogosto manj natančna in zahtevajo veliko dela z umerjanjem. Eno od zelo zanimivih digitalnih tipal je Advance Deviceovo 16-bitno temperaturno tipalo ADT7410, ki lahko meri sobno ali zunanjo temperaturo na okoli 0,03 °C natančno. Ni ga treba umerjati v ledeni vodi. Iz njega preprosto preberemo temperaturo prek enobitnega vodila I2C, na katerega se lahko z mikrokrmilnikom povežemo tudi brez posebne funkcijske enote, saj ADT7410 deluje pri poljubni frekvenci vodila I2C, manjši ali enaki od 400 kHz.

Za priklop tipala na razdalji do 15 metrov od mikrokrmilnika potrebujemo le 4-žični kabel. Od kakovosti kabla je odvisno, s kakšno frekvenco bomo lahko prenašali podatke. Vendar to pri merjenju temperature niti ni tako pomembno, saj so spremembe sorazmerno počasne. Primera implementacije za mikrokrmilnika PIC32MX250F128B in PIC18F26J50 sta na voljo na spletnih straneh tinyurl.com/p896d4j in tinyurl.com/ns4lvds.

Kako začeti?

Preden se lotimo izdelave lastnega tiskanega vezja, potrebujemo še ustrezen programator za mikrokrmilnik. Bolj zahtevni se bodo odločili za nakup komercialnega programatorja, ki je programator in razhroščevalnik, denimo Microchipovega PICkit 3. Splača se odločiti za različico brez glave za programiranje mikrokrmilnikov, saj je precej cenejša. Na spletnih straneh tinyurl.com/nmczl9b in tinyurl.com/o7s6wro sta načrta za izdelavo programirnih glav za mikrokrmilnike PIC32MX2xxFxxxB in PIC18F2xJ50. Kot vidimo, sta zelo enostavni in ju lahko implementiramo tudi na ploščici za izdelavo prototipov (angl.: protoboard).

Lahko se odločimo tudi za izdelavo lastnega programatorja za mikrokrmilnike. Več informacij je na spletni strani tinyurl.com/oc5zmfk. Velja poudariti, da je programator za mikrokrmilnike PIC18F2xJ50 sorazmerno enostaven in lahko z lastno implementacijo prihranimo 20 ali 30 evrov, medtem ko je programator za mikrokrmilnike PIC32MX2xxFxxxB zapleten in se bolj izplača nakup PICkita 3.

Na osnovi industrijsko predprogramiranega mikrokrmilnika MCP2200 lahko izdelamo programator, ki zna sprogramirati mikrokrmilnika PIC18F24J50 in PIC18F26J50 prek USB. Pri tem za izdelavo programatorja ne potrebujemo drugega programatorja, kar je bistvena prednost. Načrt in navodila za izdelavo (s fotografijami) najdemo na spletni strani tinyurl.com/qzj9wjp.

Se izplača?

Mikrokrmilniki so med ključnimi elektronski elementi za avtomatizacijo doma. Gotovih rešitev je na trgu še nekaj, hkrati pa so glede na ceno vgrajenih elektronskih, elektromehanskih in mehanskih elementov zaradi majhnih serij pogosto nerazumno drage. Pogosto želijo proizvajalci tudi z nestandardnimi konektorji kupca prisiliti k nakupu vseh komponent pri njem. Če se gradnje komponent za avtomatizacijo doma lotimo sami, je navadno izvedba projekta nekajkrat cenejša. Hkrati lahko z lastno izdelavo komponente bolj prilagodimo svojim potrebam. Kljub temu odgovor na vprašanje, ali se izplača, ni trivialen. Izplača se predvsem tistim, ki so vešči programiranja strojne opreme in poznajo osnove elektrotehnike.

Moj mikro, januar – februar 2014 | dr. Simon Vavpotič |