Controllino juhtkonsool, nanoTronicu teegiga
Selleks, et õppeprotsessis näha erinevate ATmega mikrokontrollerite funktsionaalsusi ja laiendada arusaama nende kasutusvõimalustest tööstuses, on nanoTronicu teeki võimalik kasutada ka Controllino Mega tööstuskontrolleriga. Sama teegi kasutamine Arduino IDE keskkonnas (ingl. Integrated Development Environment) muudab skriptid paremini ristkasutatavaks mitmel riistvaraplatvormil.
Laadi alla ja paigalda enda Arduino kataloogi nanoTronicu teek, selle siseselt on kompilatsiooni tasandil automaatselt äratuntav, et kui valid Arduino IDE programmis kompileerimiseks "Tools" ="Board" => "Arduino AVR Boards" => "Arduino Mega or Mega 2560", siis määrab teek ise ära, milliseid porte kasutada ja sul ei ole vaja enam nende üksiti defineerimisele aega kulutada, vaid saad kohe otse programmiloogika juurde asuda. | ||
Esimene toimiv rakendus võib olla riistvara ja teegi toimivuse kontrolliks "File" => "Examples" => "nanoTronic068" => "30_toggle_button_loop.ino" mis tuvastab kõigi sisendite tõusuääre (ingl. Raising Edge") ja lülitab muutre¾iimis sellele sisendile vastava numbriga väljundi. Selle loogika osa on
for (int a = 1; a < 10; a++){ if (r[a]){ o[a] = !o[a]; print("Sisend ", a, " tuvastatud"); } } Kui teed lülitusi, siis on sisendite - väljundite asukohad kohakuti (nanoTronicule sarnase grupeeringuga) | ||
Pordid on juba defineeritud Teegi tasandil on määratud mõned enamkasutatavad protsessorid, mis on õppeprotsessis olulisemad ja nende puhul on defineeritud pordid, mis on riistvaraliselt nuppude, LED tulede või muude väljundite jaoks ühendatud või reserveeritud. Kui teistel kontrolleritel oli juba varasemast nupud või signaallambid juhtmestatud, siis on täiesti õigustatud, et ka Controllino kasutab samasugust lahendust - nii jääb õpilastel rohkem aega programmeerimise, eriti just loogika osaga süvitsi tegelemiseks ja selles vallas parema meisterlikkuse saavutamiseks.
Protsessori tuvastamine ja portide defineerimine on teegi tasandil lahendatud järgnevalt #if defined(__AVR_ATmega2560__) int ip[10] ={0, A8,A9,A10,A11, A1,A2,A3,A4,A5}; // input pins Kus sisendid on ühendatud analoogportidesse, millele vastavad ka Controllino korpusel olevad signaaltuled, väljundid on digitaalpordid, mis võimaldavad sujuva jätkuna rakendada ka edasiarendatud impulsilaiusmodulatsiooni lahendusi (ingl. PWM - Pulse Width Modulation), kõnekeeles ka väljundite PWM-juhtimist.
Mille järgi on sisendid ja väljundid grupeeritud Sisendid on rühmitatud järgnevalt i1 - i4 nupud ja i5 - i9 on muud sisendid, näiteks sensorid või turvalüliti. Väljunditest on sarnaselt alguses o1 - o4 signaaltuled ja o5 - o9 on muud väljundid.
Nupud ja LED-id on alguses seepärast, et mistahes keerukamates programmides algavad loogikajärjestused enamasti kasutajapoolsest interaktsioonist, tüüpiliselt nupuvajutusest.
Teine aspekt on, et nupuvajutuste tuvastamine ja nende põhjal nii viivituste, korduste, tõusuäärte kui ka muutre¾iimide loogika tutvustamine on ka õppeprogrammis esmaselt omandatavad elemendid, siis on täiesti arusaadav nende käsitlemine ka muutujate nimetamisel esimestena.
|
Mis on Controllino juhtkonsooli sees Väljastpoolt vaadates on Controllino sisendnuppude ja LED-tulede konsool sarnase rühmitusega nagu nanoTronicu trükiplaadi esikülje alumine serv, millel on esmalt reas neli signaallampi ja nendega kohakuti paigutatult neli nuppu. Teegi tasandil on defineeritud muutujad, mida on ka näidisprogrammides kasutatud, väljundid o1, o2, o3, o4 ning nende all i1, i2, i3, i4 sisendid.
Hoolimata sellest, et komponendid, nagu nupud, LED tuled ja takistid on mõnevõrra suuremad, on nende ühenduse skeem üsna sarnane, vedrunuppudele tuleb ühele klemmile + toide ja teise klemmi küljes on signaaljuhe, mis siirdub mikrokontrolleri sisendporti, signaali võimaliku müravähenduse tarbeks on vooluringi lisatud mõistlikult üledimensioneeritud takistid, mis on ühendatud GND klemmile. Huvitav on teada, et Controllino jaoks on takistid küll sama 4300 Ω takistusega nagu nanoTronicu omad, kuid kuna neid nuppe läbiv 24V pinge on märksa kõrgem, siis on kõigiti põhjendatud ka nende takistite 2W võimsus.
Võrreldes tavapärase Arduino sisemiste takistitega lisavad need kindlust, et müra on tasandatud ka tööstuslikus keskkonnas, kus on potentsiaalselt rohkem elektromagneetilisi häireid. Nii püsib signaal mistahes rakenduste loomisel juba riistvara tasandil puhtana, enne kui nendega hakatakse programmides loogilisi operatsioone tegema. |
Ülevaatlikustamiseks, Controllino Mega ATmega2560 andmeleht, portide kaart ja kasutusjuhend |
Monteeri lihtsalt ja kiiresti
Riistvara montaa¾ on jaotatud etappideks ja toetatud õppevideodega. Vaata lähemalt.
Tarkvaratugi
Loe riistvaralist portide lugemist ja muutujate defineerimist toetava tarkvarateegi kohta






