Nota
Ciao, benvenuto nella community di SunFounder Raspberry Pi & Arduino & ESP32 su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirsi?
Supporto Esperti: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara & Condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime Esclusive: Ottieni accesso anticipato a nuovi annunci di prodotti e anteprime.
Sconti Speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni Festive e Giveaway: Partecipa a concorsi e promozioni durante le festività.
👉 Pronto per esplorare e creare con noi? Clicca [here] e unisciti oggi stesso!
1. Muovere PiCar-X
Questo è il primo progetto: testiamo il movimento base del PiCar-X.
Esegui il Codice
cd ~/picar-x/example
sudo python3 1.move.py
Dopo aver eseguito il codice, PiCar-X si muoverà in avanti, girerà in una forma a S, si fermerà e scuoterà la testa.
Codice
Nota
Puoi Modificare/Resettare/Copiare/Eseguire/Interrompere il codice qui sotto. Prima di farlo, devi andare nel percorso del codice sorgente come picar-x/example
. Dopo aver modificato il codice, puoi eseguirlo direttamente per vedere l’effetto.
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)
Come funziona?
Le funzionalità di base del PiCar-X sono nel modulo picarx
,
che può essere usato per controllare il servocomando dello sterzo e le ruote,
facendo muovere il PiCar-X in avanti, girare a forma di S o scuotere la testa.
Ora, le librerie che supportano le funzionalità di base di PiCar-X vengono importate. Queste righe appariranno in tutti gli esempi che riguardano il movimento di PiCar-X.
from picarx import Picarx
import time
La funzione seguente con il ciclo for
viene utilizzata per far muovere PiCar-X
in avanti, cambiare direzione e muovere la telecamera con il pan/tilt.
px.forward(speed)
px.set_dir_servo_angle(angle)
px.set_camera_servo1_angle(angle)
px.set_camera_servo2_angle(angle)
forward()
: Ordina a PiCar-X di avanzare a una determinatavelocità
.set_dir_servo_angle
: Ruota il servocomando dello sterzo a un angolo specificoangolo
.set_cam_pan_angle
: Ruota il servocomando del Pan a un angolo specificoangolo
.set_cam_tilt_angle
: Ruota il servocomando del Tilt a un angolo specificoangolo
.