5. Sõrmede liigutamine
| Website: | Bios4You |
| Kurs: | (4) Robootika biotehnoloogias |
| Buch: | 5. Sõrmede liigutamine |
| Gedruckt von: | Guest user |
| Datum: | Donnerstag, 13. August 2026, 04:19 |
Ülevaade
Nagu varem näidatud, on üks lihtsamaid viise bioonilise käe liigutuste teostamiseks kasutada servomootoreid, mis tõmbavad nööre (“kõõluseid”), mis on ühendatud sõrme kõige kaugema liikuvama osaga (vt joonis 35).
Joonis 35. Bioonilise käe sõrme liigutamine
Mootoreid saab juhtida suhteliselt autonoomse elektroonikaseadmega – krediitkaardi suuruse üheplaadilise arvutiga (SBC). Selliseid seadmeid on turul palju, kuid soovitatav on kasutada Arduino UNO mikrokontrollerit (vt joonis 36), sest:
- See on avatud lähtekoodiga, suhteliselt odav ja äärmiselt populaarne elektroonika- ja väikse automaatikaentusiastide seas;
- See on kaasatud ka Tinker CAD-i kui üks simuleeritud virtuaalseadmetest – veebipõhisel tasuta platvormil disaini õppimiseks. See on eriti kasulik, kuna 3D-modelleerimist, skeemide ja tarkvara disaini saab teha samas keskkonnas. Lisaks aitab riistvara ja tarkvara virtuaalne disain, modelleerimine ja testimine vältida seadmete kahjustamist (seega ka kulutusi), kuna virtuaalsed riistvaraelemente ei lähe valesti ühendamisel ega kasutamisel katki. Mõned soovitatavad ennetavad ettevalmistusetapid enne disaini päris riistvaral kasutuselevõttu tuuakse allpool välja.

Joonis 36. Arduino UNO mikrokontroller (reaalne vaade – vasakul, virtualiseeritud TinkerCAD-is – paremal)
Arduino UNO mikrokontroller
Arduino UNO mikrokontrolleril (edaspidi nimetatud kui “UNO”) on piiratud arvutusressursid võrreldes lauaarvutite, sülearvutite, tahvelarvutite või isegi mobiiltelefonidega, kuid see sobib meie ülesandeks täielikult – juhitava liikumise rakendamiseks:
- UNO saab ühendada Windowsi arvutiga USB-kaabli kaudu, et varustada seadet toitega ja laadida tarkvaraprogramm;
- Tarkvara arendatakse tavaliselt piiratud C programmeerimiskeele versioonis spetsiaalses Arduino tarkvaraarenduskeskkonnas nimega SKETCH. Tasub mainida, et tarkvara saab kujundada ja testida ka Tinker CAD-is, seejärel eksportida failina, mida SKETCH loeb, kompileerida ja laadida UNO seadmesse.
- UNO koos laaditud programmiga saab töötada ilma arvutita ja juhtida ühendatud seadmeid, kui see on iseseisvalt toidetud (soovitatav on 7–12 V alalisvoolutoide või 9V patarei).
Joonis 37. Arduino UNO mikrokontroller ja SKETCH programmide arenduskeskkond. Märgata võib, et UNO täidab ainult kahte protseduuri, mis tuleb kujundada: setup() – SBC initsialiseerimine; ja loop() – kordub seni, kuni toide on ühendatud.
Joonis 38. „Circuits“ sektsioon (vasak veerg) Tinker CAD-is
Arduino UNO Tinker CAD-is
Elektroonika ja tarkvara disaini modelleerimine toimub Tinker CADi “Circuitide” sektsiooni (joon. 38) kaudu (varem võidi kasutada “3D disaini” sektsiooni sõrmede osade modelleerimiseks). Tinker CADis on olemas põhjalik näidiste ja disainide raamatukogu õppimiseks.
Tinker Cadi graafiline arenduskeskkond koosneb kahest osast: vasakul on virtuaalne elektroonika ning paremal elektroonikaelementide kogud või programmeerimisredaktor (nagu näha joonisel 39). Viimast saab kasutada kahes alternatiivses režiimis:
- C programmi redaktor, nagu SKETCH-is – C programmi faili saab eksportida ja laadida päris UNO-le;
- Graafiline programmeerimiskeskkond “CodeBlocks”, mis on väga sarnane SCRATCH-ile2. CodeBlocks programm konverteeritakse automaatselt C programmiks (vastupidises suunas see ei kehti, seega tuleb olla ettevaatlik, et oma tööd mitte kaotada).
Virtuaalses eksperimendis kasutatakse bionilise käe sõrmede liigutamiseks 5 servo-mootorit, nagu on skeemilisel kujutatud joonisel 39 ja joonisel 40. Mootoreid juhib ja käitab UNO ning liikumise algatamiseks kasutatakse 10 nuppu (5 sõrme x 2 suunda = 2 rida nuppe).

Joonis 40. Virtuaalne eksperiment – 5 servo-mootori (sõrme) liigutamine UNO-ga. Lisaks kasutatakse multimeetreid, et kontrollida voolu nuppude ja servo-mootori kaudu, vältimaks võimalikku ülekoormust
Servo-mootor on digitaalne seade, mis pöörab võlli etteantud asendisse (tavaliselt 0 kuni 180 kraadi). Mootorid (juhtpinnid) tuleb ühendada UNO PWM (Pulse-Width Modulation – pöördenurga määramise viis) märgitud digitaalväljunditega. Kokku on UNO-s 6 sellist (PWM) digitaalväljundit.
Üks nuppude komplekt (nt “Up”) ühendatakse UNO analoogsisenditega, teine komplekt (nt “Down”) UNO digitaalsete sisenditega. Tuleb märkida, et nupu ühendamine analoogsisendiga ja väärtuse lugemine nõuab veidi rohkem pingutust kui digitaalsega.
2 Graafiline programmeerimiskeskkond, mille on loonud MIT.EDU ning mida kasutatakse laialdaselt programmeerimise õpetamiseks koolides https://scratch.mit.edu/
Programmi arendamine
Tinker CAD graafiline programmeerimiskeskkond (GPE) on piiratud ainult loop() funktsiooni arendamisega, setup() käivitatakse vaikimisi. Seda väikest piirangut saab ületada, jätkates arendust ainult C keeles (ilma CodeBlocksita), mis võib olla suuremate praktiliste rakenduste puhul aktsepteeritav. GPE sisaldab 6 tüüpi “CodeBlocks” operatsioone, mis on kodeeritud erinevate värvidega (Joonis 41a): muutujad, juhtimine, väljund, sisend, matemaatika (sisaldab tingimuse täitmise arvutamist, nn Boole'i tehteid, mida kasutatakse juhtlausetes), märgendid (kommentaarid). Erinevat tüüpi lauseid kombineeritakse omavahel vastavalt nende kujule.
|
Servo-mootorite (“sõrmede”) liigutamise programm koosneb ühest väiksemast ja kahest suuremast osast (Joonis 41b), mis on eraldatud hallide kommentaaridega:
|
Joonis 41. Osa servo-mootorite käivitamise graafilisest programmist |
Jätkates edasi
On olemas mõned ettevaatusabinõud, mida tuleks arvestada, kui proovida kokku panna tõelist töötavat riistvaramudelit:
- Servo mootorid on erineva võimsusega ja võivad vajada erinevaid toiteallika skeeme, kuna UNO plaat ei pruugi pakkuda piisavalt voolu, eriti kui seda toidetakse USB-ühenduse kaudu.
- Tegelikus elus võib olla kasulik kasutada iga sõrme otsas jõuandurit ning kasutada seda liikumise peatamiseks. Selliseid andureid saab lugeda analoogsisendite kaudu, seega on nuppude jaoks vajalik erinev seadistus (ümberpaigutamine ja lisakomponendid).
Et alustada iseseisvalt…
On olemas kujundus, millega soovitatakse alustada (Tinker CAD-is), mis on esitatud joonisel 42:
- Lihtsalt võta virtuaalne UNO ja virtuaalne servomootor.
- Ühenda toiteallikas ja maandus UNO plaadilt vastavatele servomootori klemmidele ning UNO PWM-väljund servomootori “Signaali” klemmile. Loo programm, mis pöörab servomootorit mingisse asendisse ja tagasi.
Joonis 42. Esimese simulatsiooni soovituslik skeem
Soovitatav lugemine
AR-põhised liikumissimulatsioonid
Enne koodi üleslaadimist füüsilistesse mikrokontrolleritesse saavad õpilased kasutada liitreaalsust (AR), et simuleerida sõrmede liikumist virtuaalselt. See tagab, et programmeeritud liigutused on täpsed, ning vähendab mehhaaniliste vigade või komponentide kahjustamise riski reaalses testimises.
