6. tēma (Arduino 1. nodarbība): Ievads mikrokontrolieros un elektronikas pamati

Tavs šīs stundas izaicinājums: Izprast maketo plates darbības principus, izveidot savu pirmo elektronisko slēgumu virtuālajā Tinkercad vidē un uzrakstīt C++ kodu, kas kontrolē LED diodes mirgošanu.

Datorika 7. klase (D.7.1.1., D.7.2.1., D.7.6.1.)

Teorija: Elektronikas un C++ valodas pamati

Laipni lūgti mehatronikas pasaulē! Arduino nav gatavs robots – tās ir robota "smadzenes" (mikrokontrolieris), kurām mums pašiem fiziski jāpievieno vadi, sensori un motori. Lai nesadedzinātu reālas detaļas, mēs vispirms trenēsimies virtuālā laboratorijā Tinkercad Circuits.

[Ievietot attēlu šeit: Ekrānuzņēmums no Tinkercad ar Arduino Uno, Maketo plati un paskaidrojošām bultiņām par to, kā savienoti Breadboard caurumi]

1. uzdevums: Virtuālās darba stacijas iekārtošana

Izveidojiet jaunu projektu Tinkercad un nodrošiniet strāvas padevi maketo platei.

Izpildes soļi:

  1. Ienāciet Tinkercad.com, izvēlieties sadaļu "Designs" -> "Create" -> "Circuit".
  2. Labās puses izvēlnē atrodiet un ievelciet darba laukumā "Arduino Uno R3" un "Breadboard Small".
  3. Ar peli novelciet vadu no Arduino "5V" (5 volti) pina uz Breadboard sarkano (+) līniju. Iekrāsojiet šo vadu sarkanu!
  4. Novelciet vadu no Arduino "GND" (Ground jeb mīnuss) pina uz Breadboard melno (-) līniju. Iekrāsojiet šo vadu melnu!

2. uzdevums: LED diodes un rezistora slēgums

Fiziski (virtuāli) saslēdziet komponentes, lai tās būtu gatavas saņemt signālu no Arduino 13. pina.

Izpildes soļi:

  1. Atrodiet "LED" un ievietojiet to maketo plates vidū tā, lai katra kāja būtu savā vertikālajā kolonnā.
  2. Atrodiet "Resistor", iestatiet tā pretestību uz 220 Ω (omi). Pievienojiet vienu rezistora galu pie LED Anoda (salietās kājas), bet otru galu pie Arduino 13. pina.
  3. Pievienojiet melnu vadu no LED Katoda (taisno kāju kolonna) uz maketo plates melno (-) līniju (GND).

3. uzdevums: Pirmās C++ programmas rakstīšana ("Blink")

Pārslēdzieties uz teksta koda vidi un uzrakstiet komandas, kas liks diodei mirgot ar 1 sekundes intervālu.

Izpildes soļi:

  1. Ekrāna augšējā labajā stūrī noklikšķiniet uz pogas "Code". Nolaižamajā izvēlnē nomainiet "Blocks" uz "Text" (apstipriniet brīdinājumu).
  2. void setup() ierakstiet: pinMode(13, OUTPUT); (Tas pasaka Arduino, ka 13. pins dos strāvu ārā).
  3. void loop() ierakstiet: digitalWrite(13, HIGH); (Ieslēdz strāvu) un nākamajā rindiņā delay(1000); (Pagaida 1000 milisekundes jeb 1 sekundi).
  4. Pievienojiet vēl divas rindiņas, lai izslēgtu diodi: digitalWrite(13, LOW); un delay(1000);. Nospiediet "Start Simulation"!

4. uzdevums (Zvaigznītes izaicinājums): Policijas bākugunis ar mainīgajiem (Variables)

Ātrākajām komandām – pievienojiet otru LED diodi (zilu) un izmantojiet "mainīgos", lai kontrolētu mirgošanas ātrumu.

Izpildes soļi:

  1. Pievienojiet maketo platei zilu LED diodi un rezistoru, savienojot to ar Arduino 12. pinu. Atcerieties par GND vadu!
  2. Koda pašā sākumā (virs void setup()) izveidojiet mainīgo laika kontrolei: int atrums = 200;
  3. Nomainiet void loop() kodā visus delay(1000); uz delay(atrums);.
  4. Izveidojiet kodu, kur pārmaiņus ieslēdzas un izslēdzas 13. pins, tad 12. pins. Mainot tikai vienu ciparu pašā augšā (mainīgo), jūs varēsiet paātrināt abas gaismas uzreiz!

Biežākās kļūdas (un kā tās labot):

Koda piemērs ("Blink" algoritms)


// C++ kods (divas slīpsvītras nozīmē komentāru, ko dators ignorē)

void setup() {
  // Šis kods izpildās vienreiz, konfigurējot portus
  pinMode(13, OUTPUT); 
}

void loop() {
  // Šis kods atkārtojas bezgalīgi
  digitalWrite(13, HIGH);  // Padod 5V strāvu uz 13. pinu (Ieslēdz LED)
  delay(1000);             // Gaida 1000 milisekundes (1 sekundi)
  digitalWrite(13, LOW);   // Atslēdz strāvu (Izslēdz LED)
  delay(1000);             // Gaida 1 sekundi
}
        
LED diode iedegsies uz vienu sekundi un izdzisīs uz vienu sekundi, un šis cikls turpināsies, kamēr vien darbosies simulācija (vai kamēr Arduino būs pieslēgts strāvai).
⬅ Iepriekšējā stunda Nākamā stunda ➡