Arduino - Grundkursus

Frederiksens Arduino-grundkursus starter fra bunden med installation og afprøvning af Arduinos udviklingsmiljø på en PC.

Kurset gennemgår vigtige programstrukturer som betingelser og løkker og behandler en række af de færdige funktioner, som Arduino-miljøet stiller til rådighed. Undervejs læres en række simple men vigtige detaljer om den elektronik, som styres af programmet.

Rækkefølgen i grundkurset bør normalt overholdes. De efterfølgende projekter har ingen overordnet orden. I det omfang, de bygger videre på hinanden, vil det fremgå eksplicit.

I hver vejledning vises simple, fungerende eksempler, og der gennemgås grundlæggende principper. Eleverne udfordres til at udvide og kombinere værktøjer og programskitser til færdige programmer, som løser en given opgave.

Grundkursus modul 1: Installation og første test

På en PC installeres Arduinos udviklingsmiljø - det er her, programmerne skrives, oversættes og uploades til Arduino mikrocontrolleren.

Den allerførste test er en klassiker blandt Arduino-folket: Få den indbyggede lysdiode til at blinke med forskellige hastigheder.

Læring

  • Download, installation og start af udviklingsmiljøet på PC.
  • Gemme og hente programmer.
  • Basal programstruktur, setup() og loop(), pinMode(), digitalWrite(), delay().
  • Indbygget lyssdiode på ben 13.

Grundkursus modul 2: Blink med to lysdioder

Lysdioder giver simpel og ufarlig respons på styrespændinger fra mikrocontrolleren.

Læring

  • Konstanter. Variabler og udtryk.
  • Datatyperne byte og int. for-løkke.
  • Optælling: i++.
  • Opbygning af et breadboard.
  • Vend lysdioden rigtigt.
  • Brug af seriemodstand.

Grundkursus modul 3: Tænd med en kontakt

En kontakt kan "aflæses" af mikrocontrolleren - men virkelige kontakter opfører sig ikke så simpelt, som man kunne tro.

Problemet opdages og løses.

Læring

  • Globale variabler.
  • Datatypen bool.
  • Logiske udtryk, sammenligning == , ! (operatoren "ikke").
  • while-løkke.
  • Kontakter.
  • Indgange med pullup-modstande.
  • Kontaktprel.

Grundkursus modul 4: Arduino som lysdæmper

En Arduino har ingen analoge udgange (hvor en jævnspænding kan styres jævnt op og ned).

Til gengæld har den såkaldte PWM-udgange, hvor gennemsnits-spændingen kan styres.

Læring

  • analogWrite().
  • Sammensatte operatorer: += , -= .
  • Princippet bag PWM.

Grundkursus modul 5: Stopur med seriel kommunikation

Der opbygges et stopur med en Start- og en Stop-knap.

Resultatet udlæses på PC'en.

Læring

  • Datatyperne word og unsigned long.
  • millis().
  • Lokale variabler, nøgleordet static.
  • Heltalsdivision.
  • Funktioner med parametre.
  • Sammenligning: < . Serial.begin(), Serial.print(), Serial.println().
  • Serial kommunikation via USB.
  • Baudrate.

Grundkursus modul 6: Tone output

Arduino har en funktion, som kan få en udgang til at udsende et firkantsignal med en bestemt frekvens.

Vi laver en dørklokke, som kan spille en melodistump.

Læring

  • tone().
  • Blocking vs. non-blocking funktionskald.
  • Datastrukturen array.
  • sizeof().
  • Piezo-buzzer.

Grundkursus modul 7: Analoge sensorer

Vi måler spændingen på en analog indgang. Resultatet udlæses på PC'en.

Dernæst bygges en simpel lysmåler.

Læring

  • analogRead().
  • Datatypen float.
  • Skalering af måleværdier.
  • Funktion, som returnerer en værdi.
  • ADC opløsning.
  • Spændingsdeler.
  • LDR.

© Frederiksen Scientific A/S

Vejledningerne må frit anvendes til undervisningsformål på den adresse, hvortil det beskrevne apparatur er købt.