Braitenberg Vehikel: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Martin.teufel (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
Zeile 2: Zeile 2:


[[Datei:Braitenberg1.jpg|right|300px|border|Ein Braitenberg Vehikel mit dem BBC micro:bit]]
[[Datei:Braitenberg1.jpg|right|300px|border|Ein Braitenberg Vehikel mit dem BBC micro:bit]]
:Jakob staunt über einen Käfer, der vor seiner Taschenlampe wegläuft „Boah! Wer sagt, dass Insekten dumm sind! Das ist ja gar nicht so leicht mit den Augen und Fühlern Dinge wahrzunehmen und dann überlegen, wohin man läuft! Einen Roboter so zu programmieren, stelle ich mir mega-schwierig vor!“
:Jakob staunt über einen Käfer, der vor dem Licht seiner Taschenlampe wegläuft. „Boah! Wer sagt, dass Insekten dumm sind! Das ist ja gar nicht so leicht, mit den Augen und Fühlern Dinge wahrzunehmen und dann überlegen, wohin man läuft! Einen Roboter so zu programmieren, stelle ich mir mega-schwierig vor!“
:: Lea: „ez …“
:: Lea: „ez …“


== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung==
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung==
Diese „künstlichen Wesen“ wurden vom Südtiroler Valentin Braitenberg erdacht und zeigen, dass schon einfache Mechanismen recht komplexe Verhaltensmuster erzeugen können. Er konzipierte insgesamt 14 Fahrzeugtypen deren Verhalten bewusst teilweise mit tierischen Verhaltensmustern verglichen wurden. Je nachdem wie Sensoren mit zwei Motoren verschaltet werden, ergeben sich Verhaltensmuster wie z.B. die Flucht vor Geräuschen oder Licht, oder ein aggressives darauf zusteuern.
Diese „künstlichen Wesen“ wurden vom Südtiroler Valentin Braitenberg erdacht und zeigen, dass schon einfache Mechanismen recht komplexe Verhaltensmuster erzeugen können. Er konzipierte insgesamt 14 Fahrzeugtypen, deren Verhalten bewusst teilweise mit tierischen Verhaltensmustern verglichen wurde. Je nachdem, wie die Sensoren mit zwei Motoren verschaltet werden, ergeben sich bestimmte Verhaltensmuster, z.B. ein Fluchtverhalten oder umgekehrt ein Angriffsverhalten bei Geräuschen oder Licht.


Der BBC micro:bit soll auf einem Fahrzeug mit 2 unabhängigen Rädern angebracht werden und mit 2 Sensoren für zB Licht ausgestattet werden („LDR“ – Light Dependent Resistor“). Dafür gibt es entweder fertige Bausätze, wie zB von [https://kitronik.co.uk/products/5638-line-following-buggy-for-the-bbc-microbit-v20 Kitronik] und Sensoren wie zB von [https://www.az-delivery.de/products/licht-sensor-modul AZ-Delivery].
Der BBC micro:bit soll auf einem Fahrzeug mit 2 unabhängigen Rädern angebracht werden und mit 2 Sensoren für z.B. Licht ausgestattet werden („LDR“ – Light Dependent Resistor“). Dafür gibt es entweder fertige Bausätze, wie z.B. von [https://kitronik.co.uk/products/5638-line-following-buggy-for-the-bbc-microbit-v20 Kitronik] und Sensoren wie zB von [https://www.az-delivery.de/products/licht-sensor-modul AZ-Delivery].




Zeile 16: Zeile 16:
[[Datei:Braitenberg3.jpg|right|300px|border|Braitenberg Vehikel von oben]]
[[Datei:Braitenberg3.jpg|right|300px|border|Braitenberg Vehikel von oben]]
* BBC micro:bit
* BBC micro:bit
* 1 Fahrzeug für den BBC micro:bit mit 2 Motoren, zB von [https://kitronik.co.uk/products/5638-line-following-buggy-for-the-bbc-microbit-v20 Kitronik]
* 1 Fahrzeug für den BBC micro:bit mit 2 Motoren, z.B. von [https://kitronik.co.uk/products/5638-line-following-buggy-for-the-bbc-microbit-v20 Kitronik]
* 2 lichtabhängige Widerstände (LDR) und 2 passende Widerstände (je nach Modell des LDR) oder fertige Module wie zB von [https://www.az-delivery.de/products/licht-sensor-modul AZ-Delivery]
* 2 lichtabhängige Widerstände (LDR) und 2 passende Widerstände (je nach Modell des LDR) oder fertige Module wie z.B. von [https://www.az-delivery.de/products/licht-sensor-modul AZ-Delivery]




== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==


* etwa 2 Schulstunden (eine Stunde für das Entwickeln des allgemeinen Codes und eine Stunde für Experimente mit verschiedenen Verhaltensmustern)
* ca. 2 Schulstunden (eine Stunde für das Entwickeln des allgemeinen Codes und eine Stunde für Experimente mit verschiedenen Verhaltensmustern)


== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
== [[Datei:Icon_puzzle3.png|20px|Icon]] Schwierigkeitsgrad ==
Zeile 30: Zeile 30:


Du lernst
Du lernst
* vernetztes und fachübergreifendes Denken
* vernetzt und fachübergreifend zu denken
* das Formulieren und Kodieren von einfachen Abläufen in formalen Algorithmen
* das Formulieren und das Kodieren von einfachen Abläufen in formalen Algorithmen
* Verständnis für einfache Mess- und Steueraufgaben
* dein Verständnis für einfache Mess- und Steueraufgaben
* dass scheinbares komplexes Verhalten schon durch einfache Strukturen und Regeln erzeugt werden können
* dass scheinbar komplexes Verhalten schon durch einfache Strukturen und Regeln erzeugt werden kann


== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
INF, BU, PH
Informatik, Biologie, Physik


== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellung ==
== [[Datei:Icon_hilfe.png|20px|Icon]] Tipps und Hilfestellung ==
* Die grundlegende Idee hinter diesen „Vehikeln“ ist, dass man 2 Motoren fast direkt mit den Werten von 2 Sensoren ansteuert – in der Elektronik würde man sagen „verdrahtet“.
* Die grundlegende Idee hinter diesen „Vehikeln“ ist, dass man 2 Motoren fast direkt mit den Werten von 2 Sensoren ansteuert – in der Elektronik würde man sagen „verdrahtet“.
** Verbinde ich zB einen Lichtsensor auf der linken Seite eines Vehikels mit dem linken Motor, dann wir der Motor schneller drehen umso größer der Sensorwert, also umso heller es links ist. Das Vehikel dreht sich somit vom Licht weg.
** Verbinde ich z.B. einen Lichtsensor auf der linken Seite eines Vehikels mit dem linken Motor, dann wird der Motor schneller drehen umso größer der Sensorwert, also umso heller es links ist. Das Vehikel dreht sich somit vom Licht weg.
** Würde ich den gleichen linken Sensor hingegen mit dem rechten Motor verdrahten, so würde er sich zum Licht hindrehen.
** Würde ich den gleichen linken Sensor hingegen mit dem rechten Motor verdrahten, so würde er sich zum Licht hindrehen.
** Macht man das mit 2 Sensoren links und rechts und mit 2 Motoren gleichzeitig, ergeben sich je nach Verbindungsmuster zwischen den Sensoren und Motoren verschiedene „Verhalten“.
** Macht man das mit 2 Sensoren links und rechts und mit 2 Motoren gleichzeitig, ergibt sich je nach Verbindungsmuster zwischen den Sensoren und Motoren ein unterschiedliches „Verhalten“.
** Bringt man noch etwas Mathematik mit ins Spiel, sodass man die Werte vorher noch nach bestimmten Mustern umrechnet, lassen sich recht komplexe Verhaltensmuster erzeugen, wie man sie von einfachen Tierarten kennt.
** Bringt man noch etwas Mathematik mit ins Spiel, sodass man die Werte vorher noch nach bestimmten Mustern umrechnet, lassen sich recht komplexe Verhaltensmuster erzeugen, wie man sie von einfachen Tierarten kennt.
* Die Lichtsensoren sollten am besten nicht beide gerade nach vorne schauen. Wie bei den meisten Insekten ist es besser, diese nach außen zeigen zu lassen. Befestige sie gut, aber so, dass man sie später auch wieder leicht entfernen kann, zB mit einem Stück Klebestreifen.
* Die Lichtsensoren sollten am besten nicht beide gerade nach vorne schauen. Wie bei den meisten Insekten ist es besser, diese nach außen zeigen zu lassen. Befestige sie gut, aber so, dass man sie später auch wieder leicht entfernen kann, z.B. mit einem Stück Klebestreifen.
* Je nach Modell des LDR muss du diese noch mit dem BBC micro:bit korrekt verbinden. Die meisten Sensoren benötigen eine Spannungsversorgung (3V und GND) und haben einen Ausgang für den Messwert, den du mit einem passenden Eingang des BBC micro:bit verbinden musst (hier haben wir P1 und P2 verwendet).
* Je nach Modell des LDR muss du diese noch mit dem BBC micro:bit korrekt verbinden. Die meisten Sensoren benötigen eine Spannungsversorgung (3V und GND) und haben einen Ausgang für den Messwert, den du mit einem passenden Eingang des BBC micro:bit verbinden musst (hier haben wir P1 und P2 verwendet).
* Du musst darauf achten, dass die Motorgeschwindigkeit in einem für die jeweilige Motoren erlaubten Bereich bleibt. Du musst also bevor du die Sensorwerte an die Motoren schickst, diese noch eventuell „zurechtstutzen“.
* Du musst darauf achten, dass die Motorgeschwindigkeit in einem für die jeweiligen Motoren erlaubten Bereich bleibt. Du musst also, bevor du die Sensorwerte an die Motoren schickst, diese noch eventuell „zurechtstutzen“.
* Je nachdem wo du bei deinem Gefährt vorne und hinten definierst, musst du auch noch die Drehrichtung der Motoren festlegen und damit sie wie gewünscht vor- und nicht rückwärts fahren (einfach ausprobieren!).
* Je nachdem wo du bei deinem Gefährt vorne und hinten definierst, musst du auch noch die Drehrichtung der Motoren festlegen, damit sie, wie gewünscht, vor- und nicht rückwärtsfahren (einfach ausprobieren!).
* Damit der Roboter nicht sofort los düst, solltest du am besten noch so etwas wie eine Start- und Stoppfunktion mit den Tasten des BBC micro:bits einbauen, wie zB bei A fährt er los und bei B bleibt er wieder stehen. Das kann man elegant über eine Variable lösen, die man beim Drücken von A auf einen bestimmten Wert setzt und bei B auf einen anderen, und dann dauerhaft nur dann die Motoren auf eine gewünschte Geschwindigkeit setzt, wenn die Variable den richtigen Wert hat und sonst die Motoren ausschaltet.
* Damit der Roboter nicht sofort los düst, solltest du am besten noch so etwas wie eine Start- und Stoppfunktion mit den Tasten des BBC micro:bit einbauen, z.B. bei A fährt er los und bei B bleibt er wieder stehen. Das kann man elegant über eine Variable lösen, die man beim Drücken von A auf einen bestimmten Wert setzt und bei B auf einen anderen, und dann dauerhaft nur dann die Motoren auf eine gewünschte Geschwindigkeit setzt, wenn die Variable den richtigen Wert hat und sonst die Motoren ausschaltet.




Zeile 63: Zeile 63:
== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==
== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==


* Recherchiere im Internet nach den „Braitenberg Vehikel“ und schaue dir genau an, welche unterschiedlichen Verhaltensmuster diese zeigen. Weiter oben haben wir ja schon den "Lichtflüchter" und den "Lichtfolger" erwähnt, aber es gibt noch einige andere.
* Recherchiere im Internet nach den „Braitenberg Vehikeln“ und schaue dir genau an, welche unterschiedlichen Verhaltensmuster diese zeigen. Weiter oben haben wir ja schon den "Lichtflüchter" und den "Lichtfolger" erwähnt, aber es gibt noch einige andere.
* Versuche einige dieser unterschiedlichen Kreaturen nachzubauen, indem du die eingelesenen Messwerte der Sensoren auf unterschiedliche Art und Weise in Kommandos für die beiden Motoren umrechnest!
* Versuche einige dieser unterschiedlichen Kreaturen nachzubauen, indem du die eingelesenen Messwerte der Sensoren auf unterschiedliche Art und Weise in Kommandos für die beiden Motoren umrechnest!
* Statt Licht könnte das Insekt auch auf andere Umweltreize reagieren, zB Schall. Oder was wäre noch möglich?
* Statt Licht könnte das Insekt auch auf andere Umweltreize reagieren, z.B. Schall. Oder was wäre noch möglich?

Aktuelle Version vom 30. März 2022, 07:02 Uhr

Icon Wie intelligent müssen Insekten sein?

Ein Braitenberg Vehikel mit dem BBC micro:bit
Ein Braitenberg Vehikel mit dem BBC micro:bit
Jakob staunt über einen Käfer, der vor dem Licht seiner Taschenlampe wegläuft. „Boah! Wer sagt, dass Insekten dumm sind! Das ist ja gar nicht so leicht, mit den Augen und Fühlern Dinge wahrzunehmen und dann überlegen, wohin man läuft! Einen Roboter so zu programmieren, stelle ich mir mega-schwierig vor!“
Lea: „ez …“

Icon Aufgabenstellung

Diese „künstlichen Wesen“ wurden vom Südtiroler Valentin Braitenberg erdacht und zeigen, dass schon einfache Mechanismen recht komplexe Verhaltensmuster erzeugen können. Er konzipierte insgesamt 14 Fahrzeugtypen, deren Verhalten bewusst teilweise mit tierischen Verhaltensmustern verglichen wurde. Je nachdem, wie die Sensoren mit zwei Motoren verschaltet werden, ergeben sich bestimmte Verhaltensmuster, z.B. ein Fluchtverhalten oder umgekehrt ein Angriffsverhalten bei Geräuschen oder Licht.

Der BBC micro:bit soll auf einem Fahrzeug mit 2 unabhängigen Rädern angebracht werden und mit 2 Sensoren für z.B. Licht ausgestattet werden („LDR“ – Light Dependent Resistor“). Dafür gibt es entweder fertige Bausätze, wie z.B. von Kitronik und Sensoren wie zB von AZ-Delivery.


Icon Materialien

Braitenberg Vehikel von vorne
Braitenberg Vehikel von vorne
Braitenberg Vehikel von oben
Braitenberg Vehikel von oben
  • BBC micro:bit
  • 1 Fahrzeug für den BBC micro:bit mit 2 Motoren, z.B. von Kitronik
  • 2 lichtabhängige Widerstände (LDR) und 2 passende Widerstände (je nach Modell des LDR) oder fertige Module wie z.B. von AZ-Delivery


Icon Zeitaufwand

  • ca. 2 Schulstunden (eine Stunde für das Entwickeln des allgemeinen Codes und eine Stunde für Experimente mit verschiedenen Verhaltensmustern)

Icon Schwierigkeitsgrad

borderlessborderlessborderless

Icon Kompetenzen

Du lernst

  • vernetzt und fachübergreifend zu denken
  • das Formulieren und das Kodieren von einfachen Abläufen in formalen Algorithmen
  • dein Verständnis für einfache Mess- und Steueraufgaben
  • dass scheinbar komplexes Verhalten schon durch einfache Strukturen und Regeln erzeugt werden kann

Icon Unterrichtsfächer

Informatik, Biologie, Physik

Icon Tipps und Hilfestellung

  • Die grundlegende Idee hinter diesen „Vehikeln“ ist, dass man 2 Motoren fast direkt mit den Werten von 2 Sensoren ansteuert – in der Elektronik würde man sagen „verdrahtet“.
    • Verbinde ich z.B. einen Lichtsensor auf der linken Seite eines Vehikels mit dem linken Motor, dann wird der Motor schneller drehen umso größer der Sensorwert, also umso heller es links ist. Das Vehikel dreht sich somit vom Licht weg.
    • Würde ich den gleichen linken Sensor hingegen mit dem rechten Motor verdrahten, so würde er sich zum Licht hindrehen.
    • Macht man das mit 2 Sensoren links und rechts und mit 2 Motoren gleichzeitig, ergibt sich je nach Verbindungsmuster zwischen den Sensoren und Motoren ein unterschiedliches „Verhalten“.
    • Bringt man noch etwas Mathematik mit ins Spiel, sodass man die Werte vorher noch nach bestimmten Mustern umrechnet, lassen sich recht komplexe Verhaltensmuster erzeugen, wie man sie von einfachen Tierarten kennt.
  • Die Lichtsensoren sollten am besten nicht beide gerade nach vorne schauen. Wie bei den meisten Insekten ist es besser, diese nach außen zeigen zu lassen. Befestige sie gut, aber so, dass man sie später auch wieder leicht entfernen kann, z.B. mit einem Stück Klebestreifen.
  • Je nach Modell des LDR muss du diese noch mit dem BBC micro:bit korrekt verbinden. Die meisten Sensoren benötigen eine Spannungsversorgung (3V und GND) und haben einen Ausgang für den Messwert, den du mit einem passenden Eingang des BBC micro:bit verbinden musst (hier haben wir P1 und P2 verwendet).
  • Du musst darauf achten, dass die Motorgeschwindigkeit in einem für die jeweiligen Motoren erlaubten Bereich bleibt. Du musst also, bevor du die Sensorwerte an die Motoren schickst, diese noch eventuell „zurechtstutzen“.
  • Je nachdem wo du bei deinem Gefährt vorne und hinten definierst, musst du auch noch die Drehrichtung der Motoren festlegen, damit sie, wie gewünscht, vor- und nicht rückwärtsfahren (einfach ausprobieren!).
  • Damit der Roboter nicht sofort los düst, solltest du am besten noch so etwas wie eine Start- und Stoppfunktion mit den Tasten des BBC micro:bit einbauen, z.B. bei A fährt er los und bei B bleibt er wieder stehen. Das kann man elegant über eine Variable lösen, die man beim Drücken von A auf einen bestimmten Wert setzt und bei B auf einen anderen, und dann dauerhaft nur dann die Motoren auf eine gewünschte Geschwindigkeit setzt, wenn die Variable den richtigen Wert hat und sonst die Motoren ausschaltet.


Weitere Infos, Hinweise und auch eine mögliche, komplette Lösung findest du auf der Lösungsseite zu diesem Beispiel.

Icon Präsentation und Reflexion

  1. Stelle dein Ergebnis vor! Was kann dein Projekt?
  2. Was hat dir bei der Entwicklung deines Produkts gefallen?
  3. Welche Schwierigkeiten hast du gehabt? Wie konntest du sie lösen?
  4. Erläutere, wie dein Programm aussieht!
  5. Welches Verhalten erzeugt dein spezielles „Insekt“ und was hast du dafür gemacht?

Icon Weiterentwicklung

  • Recherchiere im Internet nach den „Braitenberg Vehikeln“ und schaue dir genau an, welche unterschiedlichen Verhaltensmuster diese zeigen. Weiter oben haben wir ja schon den "Lichtflüchter" und den "Lichtfolger" erwähnt, aber es gibt noch einige andere.
  • Versuche einige dieser unterschiedlichen Kreaturen nachzubauen, indem du die eingelesenen Messwerte der Sensoren auf unterschiedliche Art und Weise in Kommandos für die beiden Motoren umrechnest!
  • Statt Licht könnte das Insekt auch auf andere Umweltreize reagieren, z.B. Schall. Oder was wäre noch möglich?