Está en la página 1de 6

MICROCONTROLADORES ARDUINO Ing Felix Castillo Muñoz

LABORATORIO N° 2
EL SERVO MOTOR
1.OBJETIVO.- Entre los objetivos del laboratorio están:
 Estudiar el servomotor (SG90 ó LSG 90)
 Aplicar el Microcontrolador Arduino Uno en el control de servomotores
 Utilizar la librería servo.h del Entorno IDE de ARDUINO para el control de servomotores
2.TEORIA.-
Un servomotor es un actuador que tiene la capacidad de ubicarse en una posición estable dentro de un
rango determinado de operación. Los servomotores son utilizados normalmente para tareas de ubicación
de posición como ser: abrir o cerrar cerraduras, control de seguimiento de paneles solares, control de brazos
robóticos, etc. Normalmente el eje del servomotor gira hasta 180°, aunque hoy en día es posible encontrar
servos que giren 360°, hacia la derecha e izquierda. Como se ve en la figura 1.1

Figura 1 Giro del servo motor

Para la adquisición de un servomotor, se debe tener en claro los requerimientos a necesitar de este, por
lo tanto, las características que se debe tener en cuenta a la hora de su compra deben ser acorde a las
especificaciones otorgadas en la hoja del fabricante, las cuales son:
 Peso del servomotor
 Dimensiones
 Torque
 Velocidad de operación
 Voltaje de operación Un servomotor consta de las siguientes partes:
 Motor DC
 Sistema de engranajes
 Potenciómetro
 Circuito de control Como se ve en la figura 2, un servomotor consta de partes electrónica, mecánicas y
eléctricas.
Lo que significa que un servomotor constituye un sistema completo.

1
MICROCONTROLADORES ARDUINO Ing Felix Castillo Muñoz

Figura 2 Partes de un servomotor

Funcionamiento: En general los servomotores tienen tres cables, los cuales son:
 Voltaje de alimentación VCC
 Tierra común GND
 Señal de control
Normalmente los colores de los cables dispuestos por los fabricantes, son los siguientes: Figura 3:

Figura 3 Código de colores del servomotor

Colores convencionales de cables de servomotores La señal necesaria para controlar un servomotor


debe ser del tipo PWM (Pulse Width Modulation) que significa modulación por ancho de pulso. En el
diagrama de bloques de la figura 4 se puede ver la representación de un servomotor.

Figura 4: Representación de un servomotor en diagrama de bloques.

2
MICROCONTROLADORES ARDUINO Ing Felix Castillo Muñoz

Figura 5 Frecuencia de la señal de control y el duty cycle

La señal PWM será la encargada de controlar la posición del eje del servomotor, por lo tanto, se debe
establecer la frecuencia de la señal y además el ciclo de trabajo (duty cycle), como se ve en la figura 5.

Figura 5: El Duty cycle es quien va a establecer la posición del servomotor como se ve la figura 6:

Figura 6: Posición del eje del servomotor según ancho de pulso

Manejo del actuador SERVO MOTOR programación. Se debe establecer las respectivas conexiones de
alimentación del servomotor, para la señal de control se debe tener en cuenta que esta debe estar
conectada a un pin que sea capaz de ofrecer una señal PWM. En el Arduino Uno, el pin 2 ofrecen una
salida PWM, por lo que se debe conectar el pin de señal de control en uno de estos.

En este caso se utilizará el servomotor SG90. De su hoja de datos tenemos las siguientes
características:

3
MICROCONTROLADORES ARDUINO Ing Felix Castillo Muñoz

Figura 7 Hoja de datos del servomotor SG90


Se requiere conocer el valor del Duty cycle debido a que es un parámetro de necesario para poner
en marcha el servomotor, se lo debe calcular como se ve en la figura 8.

Figura 8 Calculo del Duty Cycle de una señal PWM

Calculando el Duty Cycle para los valores de ancho de pulso de la figura 6:


𝑇𝑜𝑛
𝐷𝑢𝑡𝑦 𝐶𝑦𝑐𝑙𝑒 = ∗ 100 =
𝑇𝑜𝑛 + 𝑇𝑜𝑓𝑓
Para 0.5ms (0°):
𝑻𝒐𝒏 0.5
𝑫𝒖𝒕𝒚 𝑪𝒚𝒄𝒍𝒆 = 𝑻𝒐𝒏+𝑻𝒐𝒇𝒇
∗ 𝟏𝟎𝟎 = 0.5+(20−0.5)
∗ 100= 2.5
𝐷𝑢𝑡𝑦 𝐶𝑦𝑐𝑙𝑒 = 2.5

Para 1.5ms (90°):


𝑻𝒐𝒏
𝑫𝒖𝒕𝒚 𝑪𝒚𝒄𝒍𝒆 = ∗ 𝟏𝟎𝟎
𝑻𝒐𝒏 + 𝑻𝒐𝒇𝒇
𝟏𝟓 𝐷𝑢𝑡𝑦 𝐶𝑦𝑐𝑙𝑒 = 7.5
= ∗ 𝟏𝟎𝟎 =
𝟏. 𝟓 + (𝟐𝟎 − 𝟏. 𝟓)

Para 2.4ms (180°):

𝑻𝒐𝒏
𝑫𝒖𝒕𝒚 𝑪𝒚𝒄𝒍𝒆 = ∗ 𝟏𝟎𝟎
𝑻𝒐𝒏 + 𝑻𝒐𝒇𝒇
𝟐. 𝟒
= ∗ 𝟏𝟎𝟎
𝟐. 𝟒 + (𝟐𝟎 − 𝟐. 𝟒)
= 𝟏𝟐

𝐷𝑢𝑡𝑦 𝐶𝑦𝑐𝑙𝑒 = 12

4
MICROCONTROLADORES ARDUINO Ing Felix Castillo M.

3. MATERIALES.-

1. Una placa de Microcontrolador ARDUINO UNO

2. Un cable USB para conectar la PC con la Placa Arduino

3. Un protoboard

4. Un servomotor SG90

5. Un potenciómetro de 10 K

6. Cables de conexión y herramientas

4. LABORATORIO.-

L1. Armar el circuito de la figura 1, la señal de control del servomotor se conecta al PIN 2 de la
salida DIGITAL, De la placa del Arduino, conectar la tierra GND y 5V al protoboard y de este al
servomotor ( GND y Vcc=5V) además de los extremos del potenciómetro, el punto medio del
potenciómetro se conecta a la entrada A0 del puerto de entrada ANALOG IN del
microcontrolador Arduino.

L2. Cargar el siguiente Programa en el editor de programas de Arduino para probar el


funcionamiento del servomotor: La librería que controla el servomotor ya viene incluida en el IDE
de Arduino. Este es un archivo texto. Y se renombra la librería servo.h como SERVO1, puede
ser cualquier nombre. Se recomienda poner un nombre al archivo editado, por defecto le pondrá
sketch.

5
MICROCONTROLADORES ARDUINO Ing Felix Castillo M.

#include <Servo.h>
Servo Servo1;
int PINSERVO = 2;
int PULSOMIN = 700;
int PULSOMAX = 2350;
void setup() {
// introducir el código y correr una vez:
Servo1.attach (PINSERVO,PULSOMIN,PULSOMAX);
}

void loop() {
// introducir el código y hacer correr :

Servo1.write(0);
delay (2000);
Servo1.write(180);
delay (2000);
}
L.3. Cambiar en el programa de L2 con los siguientes valores y observar
PULSOMIN= 900;
PULSOMAX=2100;
Luego cambie a:
PULSOMIN= 800;
PULSOMAX=2200;
Luego cambie a:
PULSOMIN= 700;
PULSOMAX=2350;

L.4.Cargar el siguiente programa y el servomotor se controlará moviendo el potenciómetro de 0°


a 180°

#include <Servo.h>
Servo Servo1;
int PINSERVO = 2;
int PULSOMIN = 700;
int PULSOMAX = 2350;
int VALORPOT;
int ANGULO;
int POT=0;

void setup() {
// introducir el Código y hacer correr:
Servo1.attach (PINSERVO,PULSOMIN,PULSOMAX);
}
void loop() {
// introducir el código principal y hacer correr:
VALORPOT = analogRead(POT);
ANGULO = map(VALORPOT,0,1023,0,180);

Servo1.write(ANGULO);
delay (20);
}

5.INFORME.-Presentar un informe donde se incluya, conclusiones, observaciones y


sugerencias. Investigar como se convierte en un servomotor que gire 360°, y que servomotores
giran hasta 360° de ángulo de giro.

También podría gustarte