Leerlijn Sensors programmeren op de Arduino

By 16 januari 2020 januari 22nd, 2020 blog, lessenserie

Het aansturen en regelen van apparatuur door middel van microcontrollers is niet meer weeg te denken. Onze studenten zullen in hun latere werk omgeving veelvuldig te maken krijgen met installaties met één of meer microcontrollers.

Beknopte beschrijving-

Studenten maken in deze serie van lessen en labs kennis met het programmeren van microcontrollers. Hiermee vormen we de koppeling tussen de applicatieontwikkeling (programmeren) en de aansturing van apparatuur (electrotechniek). De kennis en ervaring uit deze serie dient als voorkennis voor een beroepsoriëntatie, of als basis voor een verdere studiekeuze.

Studenten maken kennis met programmeervaardigheden en programmeren een eenvoudige toepassing met de Arduino. Studenten leren eenvoudige schakelingen te bouwen, en sluiten deze aan op de microprocessor. Na deze serie kunnen de deelnemers zelf een programmeerbaar prototype ontwerpen en bouwen.

De opgedane vaardigheden worden vervolgens toegepast in een specifieke toepassing, in een volgend blok:  https://junioriot.nl/leerlijn-arduino-gps-tracker-op-ttn/

Doelgroep-

De serie lessen en labs is ontworpen als blok van circa 3 maanden voor MBO studenten. Door tijdens de uitvoering te variëren in diepgang is de serie geschikt voor een breed publiek.

Voorkennis-

Geen voorkennis benodigd.

Lesduur-

Een blok van circa 3 maanden, wekelijks één les van 90-120 minuten aangevuld met lab van 90-120 minuten.

Leerinhoud, kerndoelen-

  • technologievaardigheden aan kunnen leren
  • initiatief nemen, zelfregulatie, samenwerken
  • ICT vaardigheden, bedienen en toepassen van computerapparatuur

Sluit aan op-

  • Cisco NetAcad, IoT Fundamentals: Connecting Things

Technologievaardigheden,

  • Electronica:
    • herkent en realiseert eenvoudige circuits
    • solderen, stroomkring, circuits bouwen en ontwerpen
    • eenvoudige schema’s van electronica kunnen lezen
    • meet- en test apparatuur hanteren
  • Microcontrollers:
    • onderdelen herkennen rond de microcontroller en functie benoemen
    • verschillende singleboard computers en single chip oplossingen herkennen
    • toepasbaarheid benoemen van verschillende soorten computers/chips voor programmeerbare schakelingen
    • het realiseren en herkennen van programmeerbare schakelingen
  • Programmeren: programma’s in C++ herkennen, en kunnen aanpassen
    • eenvoudige programma’s herkennen en interpreteren
    • zelf programmeren voor de microcontroller ten behoeve van de aansturing van apparatuur of componenten
    • schema’s van programmeerbare schakelingen herkennen (blokschema, ladder)
  • Sensoren en actuators: sensoren toepassen en uitlezen, data verwerking en data communicatie en/of aansturing van actuator
    • herkennen en benoemen van verschillende sensoren en actuators en beschrijven van de toepassing
    • volgens instructie bouwen en programmeren van een vereenvoudigde toepassing met sensoren en motor

Benodigde werkplek, gereedschappen, machines-

  • Laptop met Arduino IDE, drivers voor arduino Nano, USB aansluitsnoer voor arduino
  • Eenvoudige soldeerwerkplek; temperatuurgestuurde electronisch regelbare soldeerbout voor electronica 10-50 watt, matje, steun, spons; 0,5 mm soldeertin (loodhoudend)
  • Lesomgeving met scherm, verlengsnoeren, verdeelplankjes, werktafels voor eenvoudige lab omgeving. Indien heel veel wordt gesoldeerd (dat is niet het geval) dan ook puntafzuiging, anders voldoende ventilatie via raam. Evt koolfilterventilator.
  • Lipo batterij laders, lijmpistool, t-reps, tape

Materialen per deelnemer-

  • Trilrobot en licht circuit, per student: 3x CR2032 batterij, 3x batterijhouder, 10x LED, 1x RGB LED, 6x schakelaar, 1x trilmotor 3v, 1x mini pcb, single core snoertjes
  • Arduino programmeren, per student: 1x Arduino Nano 168, 3x LED, 1x RGB LED
  • Arduino Neopixel; per drie studenten: 1x Adduino Nano 168, 1x neopixel stick; headers, jumper wires, breadboard
  • Sensor stopwagen; per drie studenten: 1x Adduino Nano 168, 1x ultrasoon sensor, 1x motorcontroller board, 1x 3-6v motor met wielen, lipo batterij met T stekker, T stekker aansluitsnoertje, 9v batterij, 9v batterij aansluitkabel, jumper wires, snoertjes

Lesprogramma-

Elk blok kent 10 weken, waarvan één is gereserveerd als bufferweek.

  • Week 1. Introductie
    • Theorie. Doel is een interessante benadering geven aan de lesstof rond hardware en IOT. Onze aanpak is gericht op de LABs, en ondertussen groeien we in werknemervaardigheden.
    • Theorie NetAcad: 0. Welcome to IoT Fundamentals: Connecting Things
      Overview: this training teaches you on circuits and software. Labs: digital, on physical equipment, packet tracer (network simulation tool). Quiz and exams for the course are available in the Cisco Networking Academy. 
    • LAB – Bouw een trilrobot – elke deelnemer bouwt een item wat mee naar huis mag.
      • we leggen uit hoe je netjes en veilig met de soldeerbout omgaat
      • we leggen uit dat je nooit op een batterij mag solderen, en waarom (W&T)
      • je test de batterij met een led, en onderzoekt welke pootjes van de batterijhouder je gebruikt om de led aan te zetten
      • je bouwt met batterij, batterijhouder, trilmotor je eigen trilrobot – en voegt eventueel een schakelaar toe
      • battle?
    • Geen lab toets.
  • Week 2.
    • Theorie
      • toelichting wat is electronica, wat is een stroomkring
      • circuits en schrijfwijze
    • lesmateriaal NetAcad: 1. Things and Connections. –> deze gaat naar volgende blok.
    • Theorie NetAcad: 2.
    • LAB – RGB lichtorgel – elke deelnemer bouwt een item wat mee naar huis mag.
      • we tonen hoe een RGB led werkt door op een batterij te solderen, dit is de RGB piano (W&T)
      • met een RGB led, schakelaars, batterijhouder en batterij bouw je jouw eigen RGB lichtorgel
      • je mag een eigen oefening maken
      • Extra uitdaging: je bouwt samen of alleen naar eigen inzicht een circuit op een kleine printplaat
  • Week 3. Arduino Nano programmeren
    • Theorie –
      • toelichting wat is een microprocessor
      • verschil tussen de verschillende soorten single-board toepassingen; Arduino, ESP, Raspberry Pi, Microbit, NVidia,
      • vergelijking van deze single-board toepassingen met andere verschijn Overlap en verschijningsvormen; mobiele telefoon, laptop, PLC, mainframe, …?
      • tonen van verschillende voorbeelden, arduino, PC, PLC
    • Theorie – NetAcad
    • LAB – Blink Extreme – elke deelnemer bouwt een item wat mee naar huis mag.
      • we vertellen wat een Arduino Nano is en waar de verschillende onderdelen voor zijn (W&T)
      • we begeleiden je bij je eerste Blink programma en je ontdekt hoe de IDE werkt
      • je voegt extra leds toe en programmeert deze, je leert op de Arduino te solderen
      • Extra uitdaging: voeg een RGB led toe en programmeer hier ook een blink
      • Extra uitdaging: programmeer Paars op de RGB
    • Oefenen LAB toets: presenteer of vertel over je lab ervaring. Elevator pitch.
  • Week 4.
    • Theorie, libraries, programmeerstructuren, software lagen.
    • Extra LAB – NeoPixel
    • LAB toets: presenteer of vertel over je lab ervaring. Elevator pitch.
  • Week 5. Sensor/actuators op de Arduino
    • LAB 1 –  Sensor stopwagen op USB power – motorbesturing via BLINK.  één item per team van 3 deelnemers
    • Theorie NetAcad Sensors en actuators
    • Theorie:
      • digitaal uit versus analoog uit
        • Blink is digitaal aan/uit
        • wat kan nog meer? een PWM uitgang, wat is dat.
      • Batterij 9 volt, hoe maken we hier iets van voor de Arduino
        • on-board converter, 500 mA
        • converter boards 0,5 ampere, converter op de motor controller
        • motor controller
      • Batterij 9 volt, hoe maken we de spanning voor de motor voor snel/langzaam sturing –> pwm
  • Week 6.
    • LAB 2 – Sensor en motors, de Sensor stopwagen op batterij – ombouwen naar 9 volt batterij.  één item per team van 3 deelnemers
    • Theorie NetAcad Software is everything.
  • Week 7. LAB battle (teams) + LAB project presentatie / elevator pitches.
  • Week 8 Cisco Toetsing + zelfstandig vrij LAB project
  • Week 9 Cisco Toetsing herkansing + LAB project presentatie + elevator pitches.

opmerking, de bestaande oefening gaat uit van Lipo batterij, T-connectors, opladers zoals we in de Battlebots hebben gebruikt. Deze oplossing is relatief specifiek en duur, we doen het nu makkelijker. De 9 volts batterij is makkelijk te verkrijgen, en lekker licht. Deze verandering voegt een interessante uitdaging toe om de 3-6 volt motor aan te sturen vanuit een 9 volt spanningsbron.

      • we vertellen wat de afstandssensor doet (W&T)
      • soldeer de headers op de Arduino Nano (zoals voor het breadboard) en sluit de sensor aan volgens schema
      • met bijbehorend testprogramma meet je de afstand
      • sluit de motor en de motor controller aan volgens schema
      • met de blink laat je de motor draaien
      • we leggen uit hoe een IF statement in C++ wordt geprogrammeerd
      • je combineert beide programma’s zodat je machine rijdt en op 10cm vanaf de muur stopt
      • Battle, stort niet in het gat. Tafel staat op 10 cm vanaf de muur. Teams racen naar het gat, maar stoppen zo dicht mogelijk bij de muur.
    • Lesmateriaal – voorbereiding op IOT serie.
      • welke plekken in jouw wereld herken je sensors,
      • …data?
      • … communicatie?
      • … actuators of weergave in displays?
      • Hoe kies je (de kwaliteit van) de componenten waarmee je gaat bouwen
      • Tonen van verschillende sensors
      • Motor hard/zacht sturing afhankelijk van de afstand –> PID?