Nota
Ciao, benvenuto nella community di appassionati di SunFounder Raspberry Pi & Arduino & ESP32 su Facebook! Esplora più a fondo Raspberry Pi, Arduino ed ESP32 con altri appassionati.
Perché unirsi a noi?
Supporto esperto: Risolvi problemi post-vendita e sfide tecniche grazie al supporto della nostra community e del nostro team.
Impara e condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni l’accesso anticipato a nuovi annunci di prodotto e anteprime.
Sconti speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni festive e omaggi: Partecipa a giveaway e promozioni durante le festività.
👉 Pronto a esplorare e creare con noi? Clicca [Qui] e unisciti oggi stesso!
2.12 Servo
Panoramica
In questa lezione imparerai a conoscere il Servo. Il Servo è un tipo di attuatore che permette di regolare e mantenere la posizione angolare o un attuatore rotativo che consente un controllo preciso della posizione angolare. Attualmente, è ampiamente utilizzato in giocattoli telecomandati di fascia alta, come aeroplani, sottomarini, telerobot e così via.
Componenti necessari
Circuito Fritzing
In questo esempio, utilizziamo il pin PWM 9 per controllare il Servo, collegando il cavo arancione del servo al pin PWM 9, il cavo rosso al 5V e il cavo marrone al GND.
Schema elettrico
Codice
Nota
Puoi aprire direttamente il file
2.12_servo.inonella cartellasunfounder_vincent_kit_for_arduino\code\2.12_servo.Oppure copia questo codice nell’IDE di Arduino.
Dopo aver caricato il codice sulla scheda Mega2560, vedrai il braccio del servo ruotare nell’intervallo 0°~180°.
Analisi del codice
Utilizzando la libreria Servo.h, puoi controllare facilmente il servo.
#include <Servo.h>
Funzioni della libreria:
Servo
Crea un oggetto Servo per controllare un servo.
uint8_t attach(int pin);
Assegna un pin come driver del servo. Chiama pinMode. Restituisce 0 in caso di errore.
void detach();
Libera un pin dal controllo del servo.
void write(int value);
Imposta l’angolo del servo in gradi, da 0 a 180.
int read();
Restituisce il valore impostato con l’ultima chiamata a write().
bool attached();
Restituisce 1 se il servo è attualmente collegato.
Immagine del risultato