hello_mbot_linesensor
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
hello_mbot_linesensor [2025/02/03 15:14] – torsten.roehl | hello_mbot_linesensor [2025/02/19 12:32] (aktuell) – [Testen des Programms] torsten.roehl | ||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
//Dieses **Arduino-Programm** liest die Werte der Linienverfolgungssensoren am Port 2 des mBot aus und gibt den aktuellen Status über die serielle Schnittstelle aus. Es erkennt, ob sich die Sensoren auf einer schwarzen Linie (**IN**) oder außerhalb (**OUT**) befinden und aktualisiert die Werte alle 200 ms.// | //Dieses **Arduino-Programm** liest die Werte der Linienverfolgungssensoren am Port 2 des mBot aus und gibt den aktuellen Status über die serielle Schnittstelle aus. Es erkennt, ob sich die Sensoren auf einer schwarzen Linie (**IN**) oder außerhalb (**OUT**) befinden und aktualisiert die Werte alle 200 ms.// | ||
+ | |||
+ | |||
+ | <WRAP center round tip 80%> | ||
+ | Der Liniensensor hat (<color # | ||
+ | </ | ||
+ | |||
+ | ==== Quellcode (engl. Sourcecode) ==== | ||
<Code c linenums:1 | Listing 1: | <Code c linenums:1 | Listing 1: | ||
#include < | #include < | ||
+ | |||
MeLineFollower lineFinder(PORT_2); | MeLineFollower lineFinder(PORT_2); | ||
+ | |||
void setup() { | void setup() { | ||
Serial.begin(9600); | Serial.begin(9600); | ||
} | } | ||
void loop() { | void loop() { | ||
- | int sensorState = lineFinder.readSensors(); | + | int sensorState = lineFinder.readSensors(); |
- | switch(sensorState) { | + | |
- | case S1_IN_S2_IN: | + | |
- | case S1_IN_S2_OUT: | + | |
- | case S1_OUT_S2_IN: | + | |
- | case S1_OUT_S2_OUT: | + | |
- | default: break; | + | |
- | } | + | |
- | delay(200); | + | |
+ | | ||
+ | | ||
+ | } | ||
+ | delay(200); | ||
} | } | ||
</ | </ | ||
+ | |||
+ | ==== Testen des Programms ==== | ||
+ | - **Programm hochladen**: | ||
+ | - **Serial Monitor öffnen**: In der Arduino-IDE den **Serial Monitor** (Baudrate 9600) starten. | ||
+ | - **Testen**: | ||
+ | * Den mBot auf eine schwarze Linie stellen und die Ausgabe im Serial Monitor beobachten. | ||
+ | * Den mBot langsam über eine schwarze Linie auf weißem Untergrund bewegen und prüfen, ob sich die Statusmeldungen entsprechend ändern: | ||
+ | - **S1_IN_S2_IN** → Beide Sensoren auf Schwarz | ||
+ | - **S1_IN_S2_OUT** → Linker Sensor auf Schwarz, rechter auf Weiß | ||
+ | - **S1_OUT_S2_IN** → Rechter Sensor auf Schwarz, linker auf Weiß | ||
+ | - **S1_OUT_S2_OUT** → Beide Sensoren auf Weiß (beide LEDs <color # | ||
hello_mbot_linesensor.1738595672.txt.gz · Zuletzt geändert: 2025/02/03 15:14 von torsten.roehl