7. Folge Deiner Hand¶
Betrachten Sie dieses Auto als Ihr Haustier hier. Wenn Sie ihm zuwinken, kommt es zu Ihnen gelaufen.
Benötigte Komponenten
Für dieses Projekt benötigen wir die folgenden Komponenten.
Es ist definitiv praktisch, ein komplettes Set zu kaufen, hier ist der Link:
Name |
ARTIKEL IM SET |
LINK |
---|---|---|
3-in-1 Starter Kit |
380+ |
Sie können diese auch einzeln über die untenstehenden Links kaufen.
KOMPONENTENBESCHREIBUNG |
KAUF-LINK |
---|---|
- |
|
- |
|
Verkabelung
Schließen Sie das Ultraschallmodul und die beiden IR-Hinderniserkennungs-Module gleichzeitig an.
Verbinden Sie das Ultraschallmodul wie folgt mit dem R3-Board.
Ultraschallmodul |
R3 Board |
---|---|
Vcc |
5V |
Trig |
3 |
Echo |
4 |
Gnd |
GND |
Die Verkabelung der beiden IR-Hinderniserkennungs-Module zum R3-Board ist wie folgt:
Linkes IR-Modul |
R3 Board |
---|---|
OUT |
8 |
GND |
GND |
VCC |
5V |
Rechtes IR-Modul |
R3 Board |
---|---|
OUT |
7 |
GND |
GND |
VCC |
5V |
Code
Bemerkung
Öffnen Sie die Datei
7.follow_your_hand.ino
im Pfad3in1-kit\car_project\7.follow_your_hand
.Oder kopieren Sie diesen Code in die Arduino IDE.
Oder laden Sie den Code über den Arduino Web Editor hoch.
Stellen Sie das Auto auf den Boden, nachdem der Code erfolgreich hochgeladen wurde. Halten Sie Ihre Hand in einem Abstand von 5*10cm vor das Auto, und es wird Ihrer Hand folgen. Wenn Sie Ihre Hand nah an das IR-Hindernismodul auf beiden Seiten halten, wird es auch in die entsprechende Richtung drehen.
Wie funktioniert es?
Dieses Projekt ist eine Kombination aus den vorherigen zwei Projekten 6. Spielen mit dem Ultraschallmodul und 5. Mit dem Hindernisvermeidungs-Modul spielen, jedoch mit einem anderen implementierten Effekt. Bei den vorherigen 2 Projekten wurde ein Hindernis rückwärts erkannt, während hier erkannt wird, dass Ihre Hand der Vorwärts- oder Drehrichtung folgt. Der Ablauf dieses Projekts ist wie folgt:
Lesen Sie die vom Ultraschallmodul erfasste Entfernung und den Wert beider Infrarotmodule.
Wenn die Entfernung 5~10cm beträgt, lassen Sie das Auto mit Ihrer Hand fahren.
Wenn das linke IR-Modul Ihre Hand erkennt, nach links abbiegen.
Wenn das rechte IR-Modul Ihre Hand erkennt, nach rechts abbiegen.
Wenn weder das Infrarotmodul noch das Ultraschallmodul Ihre Hand erkennen, lassen Sie das Auto anhalten.
void loop() {
float distance = readSensorData();
int left = digitalRead(leftIR); // 0: Obstructed 1: Empty
int right = digitalRead(rightIR);
int speed = 150;
if (distance>5 && distance<10){
moveForward(speed);
}
if(!left&&right){
turnLeft(speed);
}else if(left&&!right){
turnRight(speed);
}else{
stopMove();
}
}