Raksti > Arduino > Hello world, my name is Arduino

Hello world, my name is Arduino

21. maijs (2010) Pievienot komentāru

Līdz šim vienmēr esmu saskāries ar to, ka visu tehnoloģisko (un programmnodrošinājuma) jauninājumu padziļinātā apmācība sākas ar programmu "Hello World". Mana interese pēdējās dienās ir pārtapusi vēlmē šo programmu izveidot izmantojot Arduino iespējas. No Rūda par šo programmējamo mikrokontrolieri uzzināju pirms kāda laiciņa, tomēr tikai tagad beidzot izdevās atlicināt līdzekļus starta pakas iegādei.

Bet par visu pēc kārtas. Pirmkārt jau sāku ar to, ka palūkojos spogulī (un diplomā) un pāris reizes sev atkārtoju: "Ar elektrību, shēmām, rezistoriem un programmēšanu esmu uz jūs. Pamēģināt ko jaunu tomēr gribu." Nolēmu šeit veidot jaunu katergoriju, kurā centīšos regulāri apkopot gūtos iespaidus un zināšanas.

Šobrīd faktiski esmu ticis līdz pārsteidzīgajam pirmajam solim – tehnikas iegādei. Par piemēriem, idejām un komponentiem runāšu tad, kad saņemšu paciņu, tāpēc tagad tikai par to, kas ir kas.

Kas tas ir – Arduino?
Tātad, Arduino ir mikrokontrolieris uz vienas PCB kartes (single-board microcontroller). Dzīvē tas faktiski izskatās kā kaut kāda mikroshēma ar salodētiem kontaktiem, visādiem bundulīšiem un mikročipiem :) . Otrs Arduino sirds kambaris ir samērā vienkāršā atvērtā koda programmatūra.
Arduino mikrokontrolieris, ja tam pievieno papildu dzelžus (var pat nopirkt gatavus komplektus), mācēs saņemt datus no senosriem, varēs vadīt gaismas, motoriņus un pasniegt datus uz ekrāna vai datorā. Vienkārši runājot – var uztaisīt shēmu un programmu, kas var parādīt attālumu līdz objektam uz maza LCD displeja, aprēķināt alkohola daudzumu izelpā, likt motoriņam darboties (braukt uz priekšu, pagriezties) vai veikt darbību brīdī, ja telpā uztver kustību.
Tātad, darbojoties ar Arduino, ir divi posmi – elektriskās ķēdes/ shēmas fiziskā saslēgšana un programmēšana (esot balstīta uz C/C++ programmēšanas valodas bāzes).

Sākot rakņāties interneta dzīlēs par šo tēmu, atklāju, ka ir vēl vismaz pāris termini, kas jāielāgo.

Mikrokontrolieris ir un paliek Arduino pamats. Tas izskatās kā mazāka vai lielāka mikroshēma, kurai jau ir pievienoti dažādi elementi, ieskaitot smadzeni – mirkočipu. Tomēr šie mirkokontrolieri ir dažādi. Visbiežāk piesauktais (šobrīd) ir Duemilanove, kas esot piemērots vairumā gadījumu. Darbojas ar Atmega328 čipu, kurā ir 30K vieta skečiem (tā dēvē pašu radītās "programmas" kas kaut ko liek darīt), 2K RAM atmiņa un 1K EEPROM. Uz mikrokontroliera ir paredzētas vietas datu plūsmas saņemšanai un nosūtīšanai un, šķiet, tā ir viena no nozīmīgākajām lietām, ja ar Arduino aizraujas pamatīgi. Par dārgāku naudu ir nopērkams Arduino Mega, kura nosaukums skaidri pasaka – "esmu lielāks". Savukārt minimālisma cienītāji var izvēlēties Arduino Mini vai Arduino Nano. Mikrokontrolierim ir iespēja pieslēgties izmantojot USB kabeli.

Vairogi (shields)
– faktiski plates, kurām virsū var salikt detaļas pēc savas iegribas (viena no iespējām – pirkt proto vairogu, ko tādā gadījumā reizēm sauc par BBB – Bare Bones Board, un citas mikrokontroliera daļas, un likt virsū Atmega328 čipu un visu pārējo). Ar vairogiem saprot arī papildu plates, kuras jāpievieno Arduino pamatplatei, lai nodrošinātu datu plūsmu (piem., datu sūtīšanu/saņemšanu izmantojot tīklu vai wi-fi, vai lai saglabātu datus atmiņas kartē).
Attēlā (augstāk) – mikrokontrolieris un tam pievienots vairogs ar LCD displeju augšpusē.

Maketēšanas plate (breadboard) – plate, uz kuras bez īpašām mokām var saslēgt datu sūtīšanas/saņemšanas vadus un elektrības ķēdes. Ļoti izdevīgi izmatot gadījumos, ja ar lodāmuru gribas rīkoties tikai svētdienās vai arī tiek strādāts pie projektiem no sērijas "kas notiks, ja" vai "tagad pamēģināsim šitā". Turklāt, internetā var atrast dažādus maketēšanas plašu izklājumus, kas faktiski ir izdrukājamas lapas, kuras var uzlikt uz maketēšanas plates un kurās sazīmētas saslēgšanas shēmas.

LED gaismas (LEDs) – mazās lampiņas (spuldzītes), kuras parasti kalpo ilgi (ja nepabaro ar pālāk lielu elektrības daudzumu) un labi var noderēt, lai īstenojamajā projektā vizuāli parādītu notiekošo (piem., ja dati tiek ierakstīti, deg vai mirgo sarkana diode, ja deg zaļā diode, ierīce ir gatava nākamai darbībai). Protams, ir arī fancy projekti, kuros LED gaismas veido skaistu vizualizāciju vai pamatfunkciju (skat. te, te un te).

Motoriņi (DC Motor & Servo Motor & Stepper Motor) – pirmais minētais būs parasts elektro motoriņš (kā spēļu mašīnās), otrs – servomotoriņš (parasti ar vārpstu), trešais – līdzīgs iepriekšminētajiem. Atšķirība ir to iespējās, jaudas regulēšanā un elektrības patēriņā.

Potenciometrs (Potentiometer) – kā maza skaļuma grozīšanas podziņa, ar kuras palīdzību iespējams variēt pretestību, tādējādi, piem., regulējot LCD ekrāna kontrastu vai LED lapiņu mirgošanas biežumu.

LCD ekrāni – galvenais, kas jāzin – ir zīmju un grafiskie LCD displeji. Pirmos izmanto biežāk, bet tiem ir ierobežots attēlojamo simbolu skaits, savukārt otrā tipa displejiem esot sarežģītāka kodēšana un saslēgšana.

Sensori – to ir daudz un dažādi. Man viesbiežāk izdevās atrast temperatūras, mitruma, alkohola, kustības, attāluma mērīšanas (izmantojot IR vai virsskaņu), spiediena, trieciena, gaismas, vēja un metāla sensorus, kā arī akselerometrus, GPS moduļus (apjomīgākus sensorus šķiet sauc par moduļiem), žiroskopus un kompasus (nez vai no pēdējiem daži ir uzskatāmi par sensoriem, bet nu gribējās visus uzskaitīt vienuviet).

Tranzistori, rezistori, kondensatori un diodes – (šo tehniskās dabas cilvēki var lasīt ar smīnu vai izlaist) par šiem visiem dzirdējis biju, bet nekad nebiju iedziļinājies tajā, kas ir kas. Tranzistors noderēs strāvas vai sprieguma modulēšanai, ģenerēšani vai pastiprināšanai. Rezistors (tautā saukts par pretestību; atsevišķu rezistoru tipu sauc arī potenciometru) būs nepieciešams pretestības radīšanai elektriskajā ķēdē – t.i. nepieciešamības gadījumā izkliedē jaudu, lai elementam novadītu pareizo (samazināto) strāvas jaudu. Diodes ļauj regulēt strāvas plūsmas virzienu (salīdzinājumam – slūžas upē) un, ja saliek kopā vairākas, veidojas taisngriezis, kas pārveido maiņstrāvu līdzstrāvā. Kondensators paveic pretējo, spēj uzkrāt lādiņu un palielina spriegumu. (Paldies Jurim par intro crash course!)

Kontakti (shield stacking headers),savienotājvadi (jumper wire). Kontakti esot vajadzīgi gadījumos, ja mikrokontrolierim slēgsi klāt daudz vadus vai sensorus. Ar šiem kontaktiem var piepacelt pieslēguma vietu, tā lai vieglāk pieslēgt piem., citu vairogu. Savukārt savienotājvadi ir gandrīz vai vienkārši vadi – tie var būt ar spailēm galos, bez tām vai ar uzmavām (socket-socket).

Akrila pamatne (acrylic holder). Absolūta nepieciešamība, lai pasargātu izstrādājamo lolojumu no blakus faktoru iedarbības (statiskā strāva, putekļi, ūdens, biezpiens :) ). Faktiski, neliela paplāte ar gumijas tapiņām malās. Jā, pērkot kādu no komplektiem (kits), bieži līdzi šo pamatni iedos. Iedos arī kastīti visa komplekta parocīgai glabāšanai.

Par veikaliem, kur var iegādāties Arduino un ar to saistītās lietas – bik vēlāk, kad pats būšu saņēmis sūtījumu.

Padalies:
  • del.icio.us
  • Facebook
  • Twitter
  • StumbleUpon
  • Google Bookmarks
  • PDF
  • Add to favorites
Kategorijas: Arduino
  1. Pagaidām komentāru nav.
  1. Pagaidām atpakaļsaišu nav.