Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
Warum beitreten?
Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [here] und treten Sie heute bei!
2. Lassen Sie PiCar-X sich bewegen
Dies ist das erste Projekt, testen wir die grundlegende Bewegung des Picar-X.
Code ausführen
cd ~/picar-x/example
sudo python3 2.move.py
Nachdem der Code ausgeführt wurde, wird PiCar-X vorwärts fahren, in einer S-Form abbiegen, anhalten und den Kopf schütteln.
Code
Bemerkung
Sie können den untenstehenden Code modifizieren/zurücksetzen/kopieren/ausführen/stoppen. Bevor Sie das tun, müssen Sie jedoch zum Quellcodepfad wie picar-x/example gehen. Nachdem Sie den Code modifiziert haben, können Sie ihn direkt ausführen, um den Effekt zu sehen.
from picarx import Picarx
import time
if __name__ == "__main__":
try:
px = Picarx()
px.forward(30)
time.sleep(0.5)
for angle in range(0,35):
px.set_dir_servo_angle(angle)
time.sleep(0.01)
for angle in range(35,-35,-1):
px.set_dir_servo_angle(angle)
time.sleep(0.01)
for angle in range(-35,0):
px.set_dir_servo_angle(angle)
time.sleep(0.01)
px.forward(0)
time.sleep(1)
for angle in range(0,35):
px.set_camera_servo1_angle(angle)
time.sleep(0.01)
for angle in range(35,-35,-1):
px.set_camera_servo1_angle(angle)
time.sleep(0.01)
for angle in range(-35,0):
px.set_camera_servo1_angle(angle)
time.sleep(0.01)
for angle in range(0,35):
px.set_camera_servo2_angle(angle)
time.sleep(0.01)
for angle in range(35,-35,-1):
px.set_camera_servo2_angle(angle)
time.sleep(0.01)
for angle in range(-35,0):
px.set_camera_servo2_angle(angle)
time.sleep(0.01)
finally:
px.forward(0)
Wie funktioniert des?
Die grundlegende Funktionalität von PiCar-X ist im Modul picarx enthalten,
welches zur Steuerung von Lenkservos und Rädern verwendet werden kann,
und lässt das PiCar-X vorwärtsfahren, in einer S-Form abbiegen oder den Kopf schütteln.
Nun werden die Bibliotheken importiert, die die grundlegende Funktionalität von PiCar-X unterstützen. Diese Zeilen erscheinen in allen Beispielen, die die Bewegung von PiCar-X involvieren.
from picarx import Picarx
import time
Die folgende Funktion mit der for-Schleife wird dann verwendet, um PiCar-X
vorwärts zu bewegen, die Richtung zu ändern und die Schwenk-/Neigeplattform der Kamera zu bewegen.
px.forward(speed)
px.set_dir_servo_angle(angle)
px.set_camera_servo1_angle(angle)
px.set_camera_servo2_angle(angle)
forward(): Befiehlt dem PiCar-X, mit einer bestimmtenspeedvorwärtszufahren.set_dir_servo_angle: Dreht den Lenkservo in einen bestimmtenangle.set_cam_pan_angle: Dreht den Pan-Servo in einen bestimmtenangle.set_cam_tilt_angle: Dreht den Neige-Servo in einen bestimmtenangle.