Thementage Roboter

Hybrid Learning Center (HyLeC)

gefördert durch: Stiftung Innovation in der Hochschullehre

🚀 by Decker

Los gehtÂŽs mit der Idee

Roboter im HyLeC – Von Art bis Zocken

Schließe Dich einem Team an:

Baue Deine eigene Smarte Alarmanlage

images/RespvsArd.png
Bild 1: Team
CC0

Lernziele

Studierende können


  • einen einfachen Mikrocontroller einsetzen, den Nutzen diskutieren und begrĂŒnden wofĂŒr und warum der Einsatz Sinn macht.
  • die Funktion von mehreren Sensoren und Aktoren beschreiben und diese gezielt ansteuern
  • eine einfache Schaltung mit mehreren Sensoren und Aktoren aufbauen und ansteuern
  • ein kleines Programm in C++ und / oder Python programmieren
  • mit Hilfe eines Mikrocontrollern und mehreren Sensoren eine smartes Devise aus dem Alltag herstellen

Lerninhalt/Handlung Idee „Die smarte Alarmanlage – Raspberry vs. Arduino“

  • Entwicklungs-Sets von Arduino
  • Entwicklungs-Koffer von Raspberry
  • Weitere Materialien und VorschlĂ€ge zum selbstĂ€ndigen Arbeiten
  • Beispiel: Rollladensteuerung

Nachmittag gemeinsames Arbeiten an Alarmanlage

AnkĂŒndigung

„Die smarte Alarmanlage – Raspberry vs. Arduino“
Thementag zum Ausprobieren, selber Bauen und Austauschen

Team Raspberry vs. Team Arduino

Vormittags ( einfach rein kommen, 9 - 12 Uhr) könnt Ihr Euch einen Überblick ĂŒber unsere Materialien im HyLeC zum Thema „Microcontroller“ verschaffen. Fokus liegt dabei auf dem Raspberry Pi und dem Arduino. Verschiedene Boards, Sensoren und Aktoren laden zum Kennenlernen, Ausprobieren und gemeinsamen Austauschen ein.

Am Nachmittag (feste Startzeit, 13 - 16 Uhr) wollen wir in 2 Teams eine kleine smarte Alarmanlage aufbauen und selber Programmieren. Als Funktion soll eine akustische und visuelle Benachrichtigung auf eine Bewegung erfolgen. Eure KreativitĂ€t ist gefragt! Dabei unterstĂŒtzen wir Euch natĂŒrlich je nach Vorwissen Schritt fĂŒr Schritt! Bei der Umsetzung treten Team Raspberry gegen Team Arduino an und wir schauen uns den Unterschied der Boards und der Programmiersprachen an. Vorkenntnisse sind nicht notwendig!

Folien

Ablauf

  • Vorstellung und Erwartungen
  • Besprechung der Lernziele
  • Theoretische Grundlagen
  • EinfĂŒhrung Raspberry
  • EinfĂŒhrung Arduino
  • Umsetzung einer Smarten Alarmanlage
  • Abschluss und Feedback

Vorstellungsrunde

  • Wer bist Du?
  • Was studierst Du?
  • Wie hast du von dem Thementag erfahren?
  • Was sind Deine Erfahrungen mit Mikrocontrollern?
  • Welche Erwartungen/WĂŒnsche hast Du zum heutigen Tag?

Nach diesem Tag kannst Du

  • 
einen einfachen Mikrocontroller einsetzen
  • 
eine einfache Schaltung mit mehreren Sensoren und Aktoren aufbauen und ansteuern
  • 
ein kleines Programm in C++ und / oder Python programmieren
  • 
mit Hilfe eines Mikrocontrollers und mehreren Sensoren ein smartes Device aus dem Alltag herstellen

Vom Mikroprozessor zum Mikrocontroller?

  • Mikroprozessor ist die Recheneinheit (CPU) integrierter Schaltkreis (IC) Meist von ARM limited
  • Peripherie macht den IC zum Mikrocontroller Halbleiterchips NXP, STM, Texas Instruments

Mikrocontroller: Kinderschuhe

  • micro:bit : BBC, einige IT-Firmen und die britische Regierung entwickelten eine kindgerechte Mikrocontroller-Plattform
  • Calliope Mini: vom deutschen Bundestag gefördert
  • Fokus auf Löten und Zusammenbau legt der B∙O∙B∙3.

Was sind Einplatinencomputer?

  • sĂ€mtliche zum Betrieb nötigen elektronischen Komponenten auf einer einzigen Leiterplatte zusammengefasst
  • Netzteil als einzige Komponente teilweise separat
  • Industrienutzung: Mess-, Steuer- und Regelungstechnik
  • Private Nutzung: Mediacenter, Heim-Server, als Schulrechner oder als ExperimentiergerĂ€t

Arduino - Vorteile

  • Anschluss analoger Sensoren, Motoren und weiterer Komponenten sehr einfach
  • schnell und kostengĂŒnstig erweiterbar durch diverse Shields 
  • sehr schnelle Inbetriebnahme
  • geringer Preis und kein Zubehör zum Start notwendig
  • Quelloffene Software und Hardware
  • plattformĂŒbergreifende Entwicklungsumgebung mit vielen Bibliotheken

Arduino - Nachteile

  • kein Multitasking und langsamer Prozessor
  • hohe Lernkurve, durch die Programmierung mit C/C++

Raspberry Pi - Vorteile

  • schneller und multitaskingfĂ€higer Prozessor
  • Ethernet, Wlan und Bluetooth bereits integriert
  • leichter Wechsel des Betriebssystems möglich
  • Viele Anschlussmöglichkeiten: Audio- und HDMI Ausgang, USB, Kamera
  • einfacher Einstieg durch vorinstallierte Lernsoftware
  • besonders fĂŒr Online- bzw. Netzwerk-Projekte geeignet

Raspberry Pi - Nachteile

  • zeitintensivere Inbetriebnahme durch die initiale Installation des Betriebssystems
  • weitere Komponenten benötigt: Netzteil, SD Karte, HDMI-Kabel, etc.
  • Nachinstallation weiterer Programme nötig fĂŒr viele Projekte
  • teurer im Vergleich zum Arduino

Programmierung von Mikrocontrollern 1

  • Mikrocontroller fĂŒhren wie „große“ Computer Programme aus
  • FĂŒr jeden Controller und Einsatzzweck wird ein spezifisches Programm benötigt (Egal ob „Hello World“ oder eine blinkende LED)
  • Interaktion wie Tasteneingaben, Auslesen von Sensoren und Kommunikation mit angeschlossenen GerĂ€ten

Programmierung von Mikrocontrollern 2

images/Syntax.jpg
alt text

C++ oder Phython? 1

images/image-1.png
alt text

C++ oder Phython? 2

images/image.png
alt text

Aufgabe - Smarte Alarmanlage

Wir wollen in 2 Teams eine kleine smarte Alarmanlage aufbauen und selber Programmieren. Als Funktion soll eine akustische und visuelle Benachrichtigung auf eine Bewegung erfolgen. Eure KreativitÀt ist gefragt! Bei der Umsetzung treten Team Raspberry gegen Team Arduino an.

Durch die BetĂ€tigung eines oder zweier Sensoren wird der Alarm ausgelöst. Dieser Äußert sich sowohl durch einen akustisches wie auch ein visuelle Signal. Der Alarm sollte mittels Taster ausgeschaltet werden können.

Sektoren

images/Sensoren.jpg
Bild: Sensoren
CC0

Aktoren

images/Aktoren.jpg
Bild: Aktoren
CC0

Raspberry Entwicklungskoffer JoyPi

images/JoyPi.png
Bild: JoyPi
CC0

Sensoren

Aktoren

Ultraschall 13
Vibrationsmodul 8
Bewegungsensor 12
Touchsensor 19

Piezzo 10
Display 4
Taster 23

Tipps zum Vorgehen

  • Plattform wĂ€hlen und Programmierumgebung schaffen
  • Auswahl der Sensoren und Aktoren
  • Technische Details der Plattform, Sensoren und Aktoren ermitteln
  • Planung - Logische / Elektrische Schaltung
  • Programmierbeispiele nutzen
  • Ausprobieren
  • Umsetzen

Abschluss und Feedback

Wie ist es Dir ergangen?

Protokoll vom 13.12.2023

So lief der Thementag ab

Vormittags

Erste Schritte zum Programmieren:
Blockly - Open Roberta: Mikro Controller mit Blockli programmieren (Verweis auf Microsoft, wo noch mehr Funktionen möglich sind)

  • Erste ProgrammerklĂ€rung: Puzzlefunktion, Reihenfolge von oben nach unten, verschiedene Elemente (Farblich unterscheidbar)
  • Einfache ErlĂ€uterung von Schleifen („Wenn – Dann“) – Programmierlogik
  • Erste Elemente werden zusammengesetzt. Bsp: Wenn (Kontrolle) Taste A (Sensoren) gedrĂŒckt, spiele ganzen Ton c (Aktion)
  • Start des Programms: Ton wird als Dauerton abgespielt. Lerneffekt: Wenn man den Befehl erteilt, muss man weiter denken – Stoppbefehl einbauen!
  • Interpreter erklĂ€ren. Compilieren von Programmen -> Programme laufen in einer bestimmten Reihenfolge ab und wenn z.B. Eine „Wenn“-Bedingung nicht besteht, lĂ€uft der Teil des Programms nicht ab und es ist Ende
  • Wenn die Bedingung lĂ€nger geprĂŒft werden soll, muss dafĂŒr eine Schleife eingebaut werden

Vormittags

  • Endlosschleife lĂ€uft ewig durch. Um das zu vermeiden, mĂŒssen Endbedingungen eingebaut werden („Wenn – Dann – Sonst“ oder andere Möglichkeiten)


-> Fazit: Man muss ĂŒberlegen, was man erreichen will und wie man das mit Programmieren erreicht.
Dabei gibt es kein richtig oder falsch, sondern verschiedene Wege, um das gleiche zu erreichen.
Einfache Grundprogramme können beliebig komplexer gemacht werden. Programmierschritte ausprobieren und wenn etwas nicht klappt wie geplant, dann kreativ weiter ĂŒberlegen, wie die Programmierung angepasst werden kann

  • Aufspielen des Programms auf den echten Micro Bit

Nachmittags

Raspberry vs. Arduino

  • Erfahrungen werden abgefragt -> Darauf weiter eingehen und anknĂŒpfen (ggf. Sachen einschieben bzw. rauskĂŒrzen)
  • Microcontroller: Warum??
  • Insgesamt wĂ€re es schön, direkt anwendungsbezogener zu schauen
  • Entsprechende Micro Controller liegen auch direkt am Tisch und werden gezeigt
  • Folienreihenfolge einhalten und nicht die Infos schon vorher geben
  • Pausen und Nachfragen/Diskussion
  • Lassen sich schon Miniaufgaben integrieren? (Thementag!?) Bspl: „Jeder bekommt in ner Stunde ne LED mal zum blinken“ -> (vor-)machen!
  • Noch ergĂ€nzen: Den Raspberry oder Arduino erklĂ€ren (Orientierung, Was ist was?, Roter Faden)

Aufgabe: Setzt Euch mit den Sachen auseinander um zum Ziel Alarmanlage zu kommen

  • Übersicht ĂŒber die Sensoren
  • Sensoren auspacken und thematisieren
  • Überlegen, was gebraucht werden kann, um zur Alarmanlage zu kommen und wofĂŒr
  • Blick in die Papierunterlage: Dort ist auch beschriftet, wie die Sensoren angeschlossen werden
  • Raspberry/Arduino: Was kommt wo hin?
  • Zeigen: Raspberry als Übungskoffer mit Sensoren und allem als Set

Ablauf Programmierung

  • Vor- und Nachteile Programmiersprachen als Handout
  • Aufgabe Alarmanlage: Gemeinsames Arbeiten am ersten Schritt (Buzzer und Bewegungssensor) -> Ausblick auf die weiteren Schritte, die analog funktionieren, Wenn–Dann–Schleifen etc. fĂŒhren zum Gesamtprogramm
  • AusgewĂ€hlt wurde der Arduino Koffer
  • Blick in die Anleitung (Lektion 2: Buzzer)
  • Wo kann ich meine Programmierung eingeben? -> Thonny
  • Buzzer Code rein und ausprobieren
  • NĂ€chster Schritt: Bewegung erkennen -> Lektion 8: Code rein und nachvollziehen
  • NĂ€chster Schritt: Buzzer mit Bewegungserkennung verknĂŒpfen und Befehl geben: Wenn Bewegung erkannt, dann buzzen

ErgÀnzung

  • Bei nicht erfahrenen Gruppen:
    Ein System vorgeben und daran arbeiten und ggf. je nach Tempo im Nachgang den Vergleich ziehen und Vor- und Nachteile thematisieren oder die Infos als Selbstlernmaterial geben
  • Bei erfahrenen und entsprechend großen Gruppen:
    Wettbewerb zwischen den beiden Systemen




images/by-sa.jpg

Thementage “Roboter” von HyLeC - TU Dortmund. Dieses Werk und dessen Inhalte sind – sofern nicht anders angegeben – lizenziert unter CC BY-SA 4.0. Ausgenommen aus der Lizenz sind die verwendeten Logos.

Der Lizenzvertrag ist hier abrufbar: https://creativecommons.org/licenses/by-sa/4.0/deed.de

Das Werk ist online verfĂŒgbar unter: https://hylec.tu-dortmund.de/

CC BY-SA 4.0