Informatiktreffpunkt S I (13.02.2012)

Folgende Themen werden beim Informatiktreffpunkt Sek. I am 13.02.2012 behandelt:


Mikrocontroller programmieren

Neue Rahmenbedingungen

Im neuen Bildungsplan Stadtteilschule (Jahrgangsstufen 5 bis 11) Naturwissenschaften und Technik ist als Mindestanforderungen für den mittleren Schulabschluss (S. 55) festgeschrieben, dass wir uns mit unseren SuS mit Mikrocontrollern beschäftigen dürfen (http://www.hamburg.de/contentblob/2372516/data/lernbereich-nwt-sts.pdf und allgemein http://li.hamburg.de/bildungsplaene/).

Erfahrungen und vorhandenes Material

Seit 2007 konnten in einigen Hamburger Schulen schon Erfahrungen mit PICAXE-Mikrocontrollern (http://www.picaxe-shop.de/ und http://www.picaxe.com/) gesammelt werden. Hierzu gibt es schon einige Ausarbeitungen und Links zu Unterrichtsmaterial:

Leider wird die interessante Funktionalität neuerer PICAXE-Chips nicht mehr durch die grafische Flussdiagrammsoftware unterstützt sondern auf eine kostenpflichtige Alternative verwiesen (siehe http://www.picaxe.com/Software). Damit ist m.E. der Charme der Lösung geschwunden, eine Sache zu betreiben, die Schüler mit sehr geringem Aufwand auch zu Hause durchführen könnten. Andererseits lassen sich die PICAXE-Chips auch weiterhin mit einem einfachen Basic programmieren, so dass mit wenigen Bauteilen extrem preisgünstige individuelle Lösungen möglich sind.

Alternative - Arduino

In den letzten Monaten hat sich viel im Bereich der Arduinoboards getan, die mit Atmel-Mikrocontrollern arbeiten. Waren sie bisher nur mit einer einfachen C-Variante textuell zu programmieren (http://arduino.cc/en/Guide/Windows#toc5), so gibt es jetzt einige Möglichkeiten mit Vor- und Nachteilen, die Arduinos visuell zu programmieren:

  • S4A - http://seaside.citilab.eu/scratch/arduino - Hier muss ein Programm auf das Arduinoboard geladen werden, so dass es als Interface zur analogen Welt für den PC dienen kann. Bei dieser Lösung muss der Arduino immer mit dem PC per Kabel verbunden sein, eigenständige Programme, die ohne PC-Verbindung arbeiten, sind nicht möglich. Andererseits kann man aber die grafischen Ausgabemöglichkeiten von Scratch nutzen, die Messwerte grafisch zu visualisieren.
  • Modkit - http://www.modk.it/ - Diese Lösung soll auch autark arbeiten. Sie ist aber seit langer Zeit im Alphastadium und letztendlich kostenpflichtig. Folglich scheidet sie für mich aus.
  • Minibloq - http://blog.minibloq.org/ - Diese Lösung konnte ich im Gegensatz zur vorherigen erfolgreich ausprobieren. Es glänzt mit einer Dokumentation und hat ein Bild der Hardware, den grafischen und den erzeugten C-Code in einem Fenster. Nachteilig ist, dass die grafischen Symbole nicht selbstredend sind und das Programm recht groß ist und unter OSX und Linux nur in einer Windowsemulation läuft, was suboptimal ist.
  • ArduBlock - http://blog.ardublock.com/ - Diese neue Alternative klinkt sich in die Original-Arduino-Software ein und erstellt aus den Blockprogrammen C-Code (siehe Bilder im Anhang) und lädt diesen gleich auf den Arduino. M. E. ist diese Software so einfach in der Bedienung, dass auch jüngere bzw. auch informatisch nicht so sehr vorinformierte SchülerInnen damit umgehen können sollten. Auch die Programminstallation ist sehr einfach. Leider ist bisher keine Druckmöglichkeit für die grafischen Programme vorgesehen, da muss man mit Bildschirmhardcopys arbeiten.

Hardware

Für die PICAXE-Lösungen empfehlen wir Tutorialboards AXE050 (http://www.picaxe-shop.de/epages/63174191.sf/de_DE/?ObjectPath=/Shops/63174191/Products/AXE050U) zu rund 25 €. Onbord sind zwei Taster, ein Lichtsensor und eine 7-Segmentanzeige. Ein Piezolautsprecher oder ein Temperatursensor kann mit wenig Aufwand angeschlossen werden. Dies ist die robuste Fertiglösung, die aber auch erweiterbar ist. Für den Betrieb wird eine Stromversorgung mit drei Mignonzellen benötigt. Strom wird sehr wenig gezogen, so dass meine Batteriepacks von 2008 noch jetzt (2012) funktionsfähig sind.

Die neue Alternative sind die Arduinoboards, die in der Grundversion keine robuste Fertiglösung sind sondern eine extrem variable Sache. Die Arduino-Uno-Boards haben genormte Buchsenleisten, so dass sie entweder mit käuflich erwerbbaren oder selbst gemachten Aufsteckplatinen (sogenannte Shields) erweitert werden können. Der Normalfall ist aber, dass man mit sogenannten Steckboards (Breadboards) eine zusätzliche Schaltung nach Anleitungen mal eben schnell aufbaut. Hierzu gibt es auch freie Software, mit denen man diese Schaltungen visualisieren kann.

Hinsichtlich der Ausstattung mit Arduinoboards plus Zubehör kann man unterschiedliche Wege gehen. Man nimmt z.B.

Es gibt natürlich noch andere Bezugsquellen für Arduinosachen (z.B. Segor - http://www.segor.de/), doch im Dezember 2011 waren die Angebote von Watterott für mich passender.

Software

Folgende Softwareinstallationen sehe ich für die Arduinolösung als sinnvoll an:

Unterricht

Die Frage ist nur, welche der obigen Lösungen im Unterrichtsbetrieb mit unseren SchülerInnen die sinnvollste Lösung ist. Dies gilt es in der kommenden Zeit auszuprobieren. Mit fertig aufgebauten PICAXE-Steckboards, die die gleiche Funktionalität wie die AXE050-Lösung haben, habe ich schon mehrere Durchgänge im WP-Informatikunterricht in Jg.10 erfolgreich arbeiten können. Die Arduinolösungen werden in den kommenden Monaten gecheckt. Parallel werden Hinweise und Erläuterungen für den NWT-Unterricht in Jg. 10 erstellt.

In anderen Bundesländern arbeitet man übrigens auch am Thema Mikrocontroller:

Weitere Infos zur Sache befinden sich in meinem CommSy-Kurs zur Informatik in der S I unter

Alternative Roboterplattformen

Schulen, die schon mal Sondermittel beantragt haben, müssen andere Wege gehen, um Roboter im Informatikunterricht einsetzen zu können. Prinzipiell bieten sich zwei verschiedene Wege an:

Roboter für den Selbstbau mit und ohne Lötarbeiten

(Zusammenbau tlws. mehr als tricky und aufwändig, Programminstallationen und Programmierung nicht unbedingt Selbstgänger, außer bei den PICAXEs)

Bezugsquellen für Roboter ohne Lötarbeiten

(tlws. mit mechanischen Zusammenbau)

Übersee Canada bzw. Amerika

Deutschland

Infos zum Aufbau, Nutzung und Programmierung

Fazit

Für den Schulbetrieb scheint der 4WD-MiniQ-Roboter die sinnvollste Investition zu sein, weil er fertig aufgebaut ist und sehr robust wirkt. Der 2WD ist wohl billiger und ermöglicht eine Erweiterung mit Funkadaptern, er muss aber zur Programmierung eine Zusatzplatine aufgesteckt bekommen, was einen schulischen Dauerbetrieb wohl nicht lange überleben wird.

Der Rover hat den im Gegensatz zu den obigen Geräten den Vorteil, dass er sehr leicht erweiterbar ist. Die Platine hat das Layout eines Arduino Duemilanove, folglich kann er mit Arduino-Shields (Aufsteckplatinen) problemlos erweitert werden. Sinnvolle Features wie Sensoren für einen Linienfolger oder eine Abstandserkennung fehlen jedoch und müssten aufwändig nachgerüstet werden und außerdem ist das Gerät recht langsam im Gegensatz zu den obigen Geräten. Die letztgenannten Faktoren sprechen als gegen den Einsatz des Rovers.

Die Programmierung geschieht mit üblicher Arduinosoftware. Samplecodes sind unter den obigen Adressen zu finden. Die Standardaufgaben in der Sek. I zu bearbeiten, die man sonst mit LEGO-NXT-Robotern macht, ist mit den MiniQ-Robotern problemlos möglich.

Webseitenerstellung für Smartphones

Immer mehr werden Smartphones zur Internetnutzung eingesetzt. Gute Geräte haben eine Bildschirmauflösung von 480 x 800 Pixeln, einfachere Geräte nur eine geringere Auflösung. Interseiten sind aber bisher mindestens für eine Auflösung von 1280 x 800 Pixeln (für Laptops) ausgelegt, für Monitore an Stand-PCs i.d.R. für eine Auflösung von 1280 x 1024 Pixeln.

Die Lösung scheint bisher zu sein, entweder auf die kleineren Smartphoneformate angepasste Webseiten parallel bereitzustellen (1) oder den eigenen Service mit einer Smartphone-App (2) bereitzustellen. Die erste Lösung wird gerne von Zeitungen genutzt, der zweite Weg von Banken und Zeitschriften. Die folgenden Links bringen weitere Infos zur Sache:

Für meinen Informatikunterricht habe ich geplant, mobile Webseiten untersuchen und mit herkömmlichen vergleichen zu lassen. Das soll ein Angebot für die fitteren SchülerInnen werden. Wie weit auch die Programmierung von Smartphome-Apps in der Schule möglich wird, wird die Zukunft zeigen. Google hatte mal eine Möglichkeit zur visuellen Entwicklung von Apps online bereitgestellt, so dass man sich Apps aus einzelnen Bausteinen zusammenklicken konnte. Leider ist dieser Service z.Zt. eingestellt worden, er soll aber wieder aktiviert werden.

QR-Codes

QR-Codes sind eine bequeme Lösung für Nutzer von sogenannten Smartphones. Mit der Kamera des Handys können sie aufgenommen werden und die dazugehörige Software wandelt den Code in eine bestimmte Information um. So kann mit der richtigen Software z.B. ein Link eingelesen werden, die Webadresse muss man nicht mehr abtippen. Dies ist wohl die häufigste Verwendung der Codes. Zeitschriftenverlage benutzen sie gerne, teilweise sind sie sogar in der Werbung vertreten (z.B. Medion-Reklame). Wie so etwas geht, ist auf der folgenden Seite nett illustriert:

http://qrcode.wilkohartz.de/

Was sind QR-Codes eigentlich (englisch für „Quick Response“ gleich „schnelle Antwort“)? Sie sind zweidimensionale Strichcodes, die die japanische Firma Denso Wave 1994 für die Automobilindustrie entwickelte. Diese brauchte eine Möglichkeit, immer mehr Informationen auf kleineren Flächen unterbringen, wobei geringe Anforderungen an Lesegeräte gestellt werden durften. Und sie sollten auch dann funktionieren, wenn sie teilweise verschmutzt oder beschädigt sind.

QR-Codes verschlüsseln Informationen in einem Muster aus hellen und dunklen Punkten. die maximal eine halbe DIN-A4-Seite Text umfassen können. Eine bestimmte Abfolge von Punkten erzeugen einen definierten Wert, der einem Buchstaben oder einer Zahl entspricht. Weiteres Hintergrundwissen findet man hier:

QR-Codes kann man leicht selbst lesen und online erstellen:

Leider werden gibt es auch "böse" QR-Codes. In der Matrix kann auch JavaScript verschlüsselt werden und das Mobiltelefon dazu gebracht werden, den umgewandelten Code nach dem Scannen sofiort auszuführen. So kann im Extremfall das Gerät gekapert werden, um z.B. auf Phishingseiten gelenkt zu werden, um sensible Daten zu erschleichen.

Zuletzt bearbeitet am 12.02.2012 21:50 Uhr