Von VBA zu Arduino

Momentan unterrichte ich an unserer Schule alle IT-Azubis des ersten Ausbildungsjahrs (ca. 120) in Lernfeld 6 (Entwickeln und Bereitstellen von Anwendungssystemen).

Bis zuletzt wurde die Programmiersprache VBA zum Einstieg in die Programmierung verwendet, da sich mit Hilfe von Excel schnell graphische Oberflächen und kleine Programme schreiben lassen. Ich habe das Glück alle Azubis des 1.LJ zu unterrichten, sodass ich nahezu ohne Abstimmung entscheiden kann, wie ich kommende Arduino-Programmierung in den Unterricht integriere.

Status quo

Der Unterricht sah bis zuletzt so aus, dass die Einstiegsthemen wie Variablen, Zuweisungen, If-Bedingungen, Schleifen und Arrays vorgestellt und mit Hilfe von kleinen Aufgaben angewandt wurden. Daraufhin wurden die unterschiedlichen Lösungen der Azubis zusammen besprochen und bewertet. Zu den besagten Thema wurde eine Arbeit  im ersten Halbjahr geschrieben und am Ende des Ausbildungsjahrs fand ein Projekt mit freiwählbarem Thema wie z.B. Colaautomat o.ä. statt, welches ich mit Hilfe eines Rubrics (Bewertungsmatrix) zusammen mit den Azubis bewertete.

VBA- nichts Halbes, nichts Ganzes.

Zwar lässt sich die Programmiersprache VBA sehr schnell lernen, man bemerkt aber schnell ihre Limitierung. Exemplarisch möchte ich ein Programmierbeispiel vorstellen, bei dem sich bereits erfahrene Azubis die Zähne ausgebissen haben. Ich gab dieser Gruppe die Aufgabe eine Funktion zu schreiben, die überprüft, ob eine eingegebenen IBAN Nummer gültig ist. In Programmiersprachen wie Java ist das kein Problem. Man behilft sich mit z.B. String-compares und der Modulo-Funktion.
Aber mit VBA ist das Typecasting ein Problem, ganz zu schweigen von der einstelligen Modulo-Operation und dem Datentyp Variant. Es ist machbar, aber mit großem Umstand.

Zukünftige Vorgehensweise

Da bereits die ersten zwei Unterrichtsblöcke stattgefunden haben, halte ich dieses Schuljahr an VBA fest, bis wir die Themen Schleifen und Softwarequalität behandelt haben.

Danach findet ein Einstieg in die Programmierung mit Arduino statt. Darauf aufbauend sollen die Azubis nun eigene Hardware- und Software-Projekte konzipieren.
Falls es Gruppen gibt, die keine eigenen Projektideen haben, können sie sich an den Themen der vergangenen Jahre (VBA-Projekte) orientieren:  Busticketsystem, Parkscheinautomat, Alarmanlage mit mehreren Sensoren (leicht), Geldautomat.. Nun sollen die Azubis diese auch tatsächlich in Hardware abbilden.

Ein weitere Vorteil: Die Themen aus Lernfeld 4 (Einfache IT-Systeme) wie Reihenschaltung aus der Elektrotechnik oder Gatter aus der Digitaltechnik werden ebenfalls benötigt.

Hardwarebeschaffung und Kosten

Das Thema Hardwarekosten ist immer ein Thema für sich, da diese übernommen werden müssen und es unter Umständen ein halbes Jahr dauert, bis die Kostenvoranschläge genehmigt werden. Weiterhin können Teile verloren oder kaputt gehen.
Aus diesen Gründen bitte ich die Azubis mehrere Wochen vorher darum (aufgrund der Versanddauer von 3 Wochen aus China), sich zu zweit ein Arduino-Einstiegsset zu kaufen (Preise und Links siehe Kaufhinweise). Ein Einstiegsset lässt sich bereits ab 20€ inkl. Porto kaufen. Ein Preis, den in meinen Augen jeder Azubi verschmerzen kann. Ich denke, dass auch Firmen bereit sind, den Azubis diese Sets zu sponsern.
Ein weiterer Vorteil des Ganzen: Die Azubis können ihre Werke nach Ende des Projekts mit nach Hause nehmen und andere Projekte damit realisieren und indirekt sich verbessern.

Links

Eine detaillierte Seite zum Einstieg in das Thema Arduino

Arduino-Programmierhandbuch der Netzmafia

Sehr umfangreiche Arduino Dokumentation eines IT-Lehrer (NL)

Zu guter Letzt die Kaufhinweise für meine Azubis

KAUFHINWEISE FÜR ARDUINO-PROJEKTE

  • Sie sollten mindestens den Arduino Uno kaufen. Ein Arduino Mega bietet mehr Pins (Input/Output) und mehr Speicher => mehr Speicher für größere Programme. Gerade bei umfangreicheren Projekten wäre diese Variante vorzuziehen. Arduino Nanos sind zu limitiert und umständlich in der Beschreibung des Mikrocontrollers (nicht Kernaufgabe dieses Unterrichts).
  • Achten Sie darauf, dass Sie die Hardware spätestens zum nächsten Block erreicht, sonst müssen Sie an einem VBA-Projekt zu arbeiten.
  • Empfehlenswert sind je nach Projekt folgende zusätzliche Teile: Breadboards mit Steckkabeln, LEDs, LCD (z.B. HD44780), 4×4 Keypad Matrix, 7-Segment Anzeigen, Buttons, Fingerabdruckscanner, 8×8 LED-Matrix, Zusatzsteckboards (sog. Shields, die für Bluetooth oder WLAN o.ä. sorgen), Helligkeitssensoren, Abstandssensoren, …
  • Arduino ist OpenSource, daher kann man für recht wenig Geld bereits umfängliche Clone-Starterkits kaufen, wie z.B. hier: hier aus Deutschland oder (bzw. Arduino Mega hier), hier aus China (bzw. Arduino Mega hier)
  • Noch günstiger gibt es Hardware bei aliexpress.com, hier kann man sich auch seine eigenen Kits zusammenstellen.
    ACHTUNG: Mitunter dauert die Lieferzeit bis zu 5 Wochen und teilweise kann es vorkommen, dass die Teile nicht ankommen. Einen Käuferschutz gibt es in der Regel dennoch.
  • Möglicherweise kann Sie ihr Betrieb finanziell unterstützen.
  • Hier gibt es eine gute Einleitung zum Umgang mit den Geräten: http://funduino.de/index.php/2-hardware-und-software/#hardware

Hardwaretipp für den private Bastelaktionen

Bei Aliexpress kann man einen Arduino-Klon bestellen, auf dem der beliebte ESP8266 Wlanchip verbaut ist. Er kostet dort weniger als 7€ inkl. Porto.

 

Bildquelle: http://techno-apk.blogspot.de/2014/02/menggunakan-lcd-16-x-2-di-arduino-uno.html

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.