– 1 –
E i n f a c h e A u t o m a t e n m i tL e g o M i n d s t o r m s p r a k t i s c h u m s e t z e n
Mag. DI Bernhard Löwenstein
Institut zur Förderung des IT-Nachwuchseshttp://www.facebook.com/[email protected]
Mag. DI Dr. Monika Di Angelo
Technische Universität Wienhttp://[email protected]
– 2 –
Agenda• Motivation• UML-Zustandsdiagramm• leJOS NXT• Behavior Programming• StateMachine-Framework• DEMO: Alarmanlage• IFIT als Brückenbauer• Diskussion
– 3 –
Motivation• Darstellung von Abläufen in graphischer Form heute in vielen
Disziplinen erforderlich (z.B. Prozessabläufe in Industrie und Wirtschaft)
• SchülerInnen erleben Modellierung oftmals als etwas Abstraktes• Einsatz von Lego Mindstorms NXT macht SchülerInnen zumeist Spaß• Idee: Automat mittels UML-Zustandsdiagramm modellieren und mittels
Lego Mindstorms NXT praktisch umsetzen
– 4 –
UML-Zustandsdiagramm• Diagrammart der Modellierungssprache UML
o gibt alle relevanten Zustände wieder, die System zur Laufzeit annehmen kanno gibt wieder, welche Ereignisse zu Zustandsübergängen führen
• eignet sich bestens um Funktionsweise einfacher Automaten darzustellen
• Syntax aufgrund ihrer Beschränktheit einfach zu verstehen
– 5 –
leJOS NXJ• Java API zur Programmierung von Lego Mindstorms NXT• Plug-In ermöglicht nahtlose Integration in Eclipse• kostenlos erhältlich und nutzbar
– 6 –
Behavior Programming• Bestandteil von leJOS NXJ• ermöglicht einfache Umsetzung von Verhaltensmustern• Aufbau
o Klasse Arbitrator kontrolliert zyklisch, welches Verhaltensmuster zu aktivieren isto Interface Behavior mit Methoden action(), suppress() und takeControl() dient zur
Definition von Verhaltensmustern• Problem: keine Berücksichtigung des Vorzustands bei
Zustandsübergangen
– 7 –
StateMachine-Framework• basiert auf Behavior Programming von leJOS NXJ• Vorteil: Berücksichtigung des Vorzustands bei Zustandsübergangen
einfach möglich bestens zur Umsetzung von UML-Zustandsdiagrammen geeignet
• kostenlos erhältlich und nutzbar• Aufbau
o Klasse StateMachine mit Klasse Arbitrator vergleichbaro abstrakte Klasse State mit Methoden activateState() und doAction() mit Interface
Behavior vergleichbar
DEMO: Alarmanlage (1)
DEMO: Alarmanlage (2)
– 10 –
IFIT als Brückenbauer• Institut zur Förderung des IT-Nachwuchses (IFIT)
o gemeinnütziger Vereino entstand im Dunstkreis der Technischen Universität Wieno finanziert sich fast ausschließlich über Privatspenden und Firmensponsoring
• Durchführung von Roboter-Workshops für Kinder und Jugendlicheo Wochenend- und Ferienkurseo gemeinsame Projekte mit interessierten Schulen
• Interesse? Bitte um Kontaktaufnahme!o persönlich bei eDidaktik 2012o http://www.facebook.com/ifit.orgo [email protected]
– 11 –
Diskussion• Erfahrung mit Lego Mindstorms NXT in Schule?• Erfahrung mit leJOS NXT in Schule?• Erfahrung mit Modellierung in Schule?