.. note:: Ciao, benvenuto nella Community di appassionati di SunFounder Raspberry Pi, Arduino e ESP32 su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino e ESP32 insieme ad altri appassionati. **Perché unirti?** - **Supporto esperto**: Risolvi problemi post-vendita e affronta sfide tecniche con l'aiuto della nostra community e del nostro team. - **Impara e condividi**: Scambia consigli e tutorial per migliorare le tue competenze. - **Anteprime esclusive**: Ottieni accesso anticipato agli annunci di nuovi prodotti e anteprime. - **Sconti speciali**: Approfitta di sconti esclusivi sui nostri prodotti più recenti. - **Promozioni festive e giveaway**: Partecipa a promozioni festive e concorsi a premi. 👉 Pronto a esplorare e creare con noi? Clicca su [|link_sf_facebook|] e unisciti oggi stesso! .. _ar_servo: 3.7 - Servo Oscillante ======================== In questo kit, oltre al LED e al cicalino passivo, c'è anche un dispositivo controllato da segnale PWM: il Servo. Il Servo è un dispositivo di servocomando di posizione (angolo), adatto a quei sistemi di controllo che richiedono variazioni angolari costanti e possono essere mantenute. È ampiamente utilizzato nei giocattoli radiocomandati di fascia alta, come aerei, modelli di sottomarini e robot radiocomandati. Ora, prova a far oscillare il servo! * :ref:`cpn_servo` **Componenti Necessari** In questo progetto, abbiamo bisogno dei seguenti componenti. È sicuramente conveniente acquistare un kit completo, ecco il link: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - Nome - ELEMENTI IN QUESTO KIT - LINK PER L'ACQUISTO * - Kepler Kit - 450+ - |link_kepler_kit| Puoi anche acquistarli separatamente dai link qui sotto. .. list-table:: :widths: 5 20 5 20 :header-rows: 1 * - SN - INTRODUZIONE COMPONENTE - QUANTITÀ - LINK PER L'ACQUISTO * - 1 - :ref:`cpn_pico_w` - 1 - |link_picow_buy| * - 2 - Cavo Micro USB - 1 - * - 3 - :ref:`cpn_breadboard` - 1 - |link_breadboard_buy| * - 4 - :ref:`cpn_wire` - Diversi - |link_wires_buy| * - 5 - :ref:`cpn_servo` - 1 - |link_servo_buy| **Schema** |sch_servo| **Cablaggio** |wiring_servo| * Il filo arancione è il segnale e va collegato a GP15. * Il filo rosso è VCC e va collegato a VBUS (5V). * Il filo marrone è GND e va collegato a GND. **Codice** .. note:: * Puoi aprire il file ``3.7_swinging_servo.ino`` nel percorso ``kepler-kit-main/arduino/3.7_swinging_servo``. * Oppure copia questo codice nell'**Arduino IDE**. * Non dimenticare di selezionare la scheda (Raspberry Pi Pico) e la porta corretta prima di cliccare sul pulsante **Upload**. .. raw:: html Quando il programma è in esecuzione, possiamo vedere il braccio del servo oscillare avanti e indietro da 0° a 180°. **Come funziona?** Richiamando 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); Trasforma un pin in un driver per servo. Richiama pinMode. Restituisce 0 in caso di errore. .. code-block:: arduino void detach(); Rilascia 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.