.. note::
Hola, ¡bienvenido a la Comunidad de Entusiastas de Raspberry Pi, Arduino y ESP32 de SunFounder en Facebook! Profundiza tus conocimientos sobre Raspberry Pi, Arduino y ESP32 junto a otros entusiastas.
**¿Por qué unirse?**
- **Soporte experto**: Resuelve problemas postventa y desafíos técnicos con ayuda de nuestra comunidad y equipo.
- **Aprende y comparte**: Intercambia consejos y tutoriales para mejorar tus habilidades.
- **Avances exclusivos**: Accede anticipadamente a anuncios de nuevos productos y adelantos.
- **Descuentos especiales**: Disfruta de descuentos exclusivos en nuestros productos más recientes.
- **Promociones festivas y sorteos**: Participa en sorteos y promociones especiales de temporada.
👉 ¿Listo para explorar y crear con nosotros? Haz clic en [|link_sf_facebook|] y únete hoy mismo.
.. _ar_servo:
2.12 Servo
==========
Resumen
----------
En esta lección, aprenderás sobre el Servo. Un servo es un tipo de actuador
de posición (angular) ajustable y mantenible, o un actuador rotativo que
permite un control preciso de la posición angular. Actualmente, es ampliamente
utilizado en juguetes de control remoto de alta gama, como aviones, submarinos,
tele-robots, entre otros.
Componentes necesarios
------------------------
.. image:: img/list_2.12.png
* :ref:`cpn_mega2560`
* :ref:`cpn_wires`
* :ref:`cpn_servo`
Circuito Fritzing
----------------------
En este ejemplo, usamos el pin PWM 9 para controlar el Servo. Conecta el
cable naranja del servo al pin PWM 9, el cable rojo a 5V y el cable marrón a GND.
.. image:: img/image454.png
Diagrama esquemático
----------------------
.. image:: img/image455.png
Código
--------
.. note::
* Puedes abrir el archivo ``2.12_servo.ino`` en la ruta ``sunfounder_vincent_kit_for_arduino\code\2.12_servo`` directamente.
* O copiar este código en el IDE de Arduino.
.. raw:: html
Al finalizar la carga del código en la placa Mega2560, podrás ver el brazo del servo girando en el rango de 0° a 180°.
Análisis del código
----------------------
Usando la biblioteca Servo.h, puedes controlar fácilmente el servo.
.. code-block:: arduino
#include
**Funciones de la biblioteca:**
.. code-block:: arduino
Servo
Crear un objeto **Servo** para controlar un servo.
.. code-block:: arduino
uint8_t attach(int pin);
Convierte un pin en un controlador de servo. Llama a pinMode. Devuelve 0 en caso de fallo.
.. code-block:: arduino
void detach();
Libera un pin del control de servo.
.. code-block:: arduino
void write(int value);
Establece el ángulo del servo en grados, de 0 a 180.
.. code-block:: arduino
int read();
Devuelve el valor establecido con la última llamada a write().
.. code-block:: arduino
bool attached();
Devuelve 1 si el servo está actualmente conectado.
Imagen del fenómeno
----------------------
.. image:: img/image132.jpeg