.. note:: 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 [|link_sf_facebook|] e unisciti oggi stesso! .. _ar_servo: 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 ----------------------- .. image:: img/list_2.12.png * :ref:`cpn_mega2560` * :ref:`cpn_wires` * :ref:`cpn_servo` 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. .. image:: img/image454.png Schema elettrico ------------------- .. image:: img/image455.png Codice --------- .. note:: * Puoi aprire direttamente il file ``2.12_servo.ino`` nella cartella ``sunfounder_vincent_kit_for_arduino\code\2.12_servo``. * Oppure copia questo codice nell'IDE di Arduino. .. raw:: html 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. .. code-block:: arduino #include **Funzioni della libreria:** .. code-block:: arduino Servo Crea un oggetto **Servo** per controllare un servo. .. code-block:: arduino uint8_t attach(int pin); Assegna un pin come driver del servo. Chiama pinMode. Restituisce 0 in caso di errore. .. code-block:: arduino void detach(); Libera un pin dal controllo del servo. .. code-block:: arduino void write(int value); Imposta l'angolo del servo in gradi, da 0 a 180. .. code-block:: arduino int read(); Restituisce il valore impostato con l'ultima chiamata a write(). .. code-block:: arduino bool attached(); Restituisce 1 se il servo è attualmente collegato. Immagine del risultato -------------------------- .. image:: img/image132.jpeg