62 lines
2.2 KiB
C++
62 lines
2.2 KiB
C++
#include <CodeRacer.h>
|
|
|
|
#include <ESP32Servo.h>
|
|
#include "esp32-hal-ledc.h"
|
|
|
|
//----- Werte für den Ultraschallsensor -----
|
|
#define US_STOP_ABSTAND_CM 15 // Wenn der gemessene Abstand kleiner ist, hält der CodeRacer an
|
|
|
|
//----- Variablen, die wir brauchen um uns Werte zu merken ----
|
|
long abstand_vorn_cm, abstand_links_cm, abstand_rechts_cm;
|
|
|
|
CodeRacer coderacer;
|
|
// Das kann der coderacer:
|
|
// coderacer.start_stop() Abfragen ob der Racer fahren soll oder nicht ... wenn er fahren soll kommt der Wert 'true' zurück, wenn er stopppen soll der Wert 'false'
|
|
// coderacer.servo_schwenk() Abstandssensor hin und her verstellen
|
|
// coderacer.abstand_messen(); Abstand messen - es kommt ein Wert in cm zurück
|
|
// coderacer.servo_mitte(); nach vorn "schauen"
|
|
// coderacer.servo_rechts(); nach rechts "schauen"
|
|
// coderacer.servo_links(); nach links "schauen"
|
|
// coderacer.links(); nach links drehen
|
|
// coderacer.rechts(); nach rechts drehen
|
|
// coderacer.vorwaerts(); Vorwaerts fahren
|
|
// coderacer.anhalten(); Racer anhalten
|
|
|
|
//---- Hier startet der Code zum Einstellen aller wichtigen Dinge. Setup() wird einmal ausgeführt. ----
|
|
void setup() {
|
|
// Monitor
|
|
Serial.begin(115200); // Serial Monitor aktivieren. Mit dem Monitor kann man sich Werte und Meldungen anzeigen lassen.
|
|
|
|
// CodeRacer initialisieren
|
|
coderacer.begin();
|
|
|
|
// nach links und rechts schauen ... :-)
|
|
coderacer.servo_links();
|
|
delay(10);
|
|
coderacer.servo_rechts();
|
|
delay(10);
|
|
coderacer.servo_mitte();
|
|
|
|
}
|
|
|
|
//---- Hier startet unsere endlose Schleife - die immer wieder von vorn angefangen wird, wenn wir am Ende angekommen sind. Da ist unser "Fahr"Code drin, der den CodeRacer steuert
|
|
void loop() {
|
|
|
|
// Abstand messen -> dort wo der coderacer gerade "hinschaut". Der gemessene Abstand ist in abstand_vorn_cm gespeichert
|
|
abstand_vorn_cm = coderacer.abstand_messen();
|
|
|
|
// Abfragen ob der Racer fahren soll oder nicht ...
|
|
if(true == coderacer.start_stop()){
|
|
|
|
// Abstandssensor verstellen ...
|
|
coderacer.servo_schwenk();
|
|
|
|
// hier kommt Euer Code zu steuern des coderacers hinein ...
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|