Está en la página 1de 2

Fundación Universitaria Los Libertadores

Robótica - Control de servomotores


Jackson Yesid Diaz Braiyan Alexander Hurtado
jydiazh@libertadores.edu.co bahurtadob@libertadores.edu.co
20 de abril 2019

Resumen
El control de servomotores es de gran importancia en la robótica para el manejo de articulaciones y el correcto posicio-
namiento de objetos, en este informe se muestra una manera de diseñar este control usando arduino y sin usar librerias sino
apenas con el conocimiento básico de como funcionan los servomotores.
1. Introducción 2.2. Servomotores
Un servomotor (también llamado servo) es un dispositivo
Para el diseño de un robot q se pueda mover es seguro que similar a un motor de corriente continua que tiene la capaci-
necesita de motores y si el robót debe manipular exactamente dad de ubicarse en cualquier posición dentro de su rango de
objetos lo mejor será usar motores paso a paso o servomoto- operación, y mantenerse estable en dicha posición.[1]
res, ya que estos dos tipos son básicos pero con buen control Está conformado por un motor y un circuito de control. Tam-
de pocición, los servos se controlan a partı́r de pulsos gene- bién potencia proporcional para cargas mecánicas. Un servo,
ralmente los de referencia sg90 trabajan a 50hz, al enviar un por consiguiente, tiene un consumo de energı́a reducido. [2]
pulso de un milisegundo de ancho el servo tomará la pocisión La corriente que requiere depende del tamaño del servo. Nor-
cero y con un pulso de dos milisegundos de ancho este toma malmente el fabricante indica cuál es la corriente que con-
la pocisión de 180 grados esto puede variar dependiendo del sume. La corriente depende principalmente del par, y puede
servo que se use. exceder un amperio si el servo está enclavado.
Los servomotores hacen uso de la modulación por ancho de
pulsos (PWM) para controlar la dirección o posición de los
motores de corriente continua. La mayorı́a trabaja en la fre-
cuencia de los 50 hertz, ası́ las señales PWM tendrán un pe-
2. Marco Teórico riodo de veinte milisegundos. La electrónica dentro del ser-
vomotor responderá al ancho de la señal modulada. Si los
circuitos dentro del servomotor reciben una señal de entre 1
2.1. Motor DC a 1,4 milisegundos, éste se moverá en sentido horario; entre
1,6 a 2 milisegundos moverá el servomotor en sentido antiho-
El motor de corriente continua, denominado también motor rario; 1,5 milisegundos representa un estado neutro para los
de corriente directa, motor CC o motor DC (por las inicia- servomotores estándares. [1][2]
les en inglés direct current), es una máquina que convierte
energı́a eléctrica en mecánica, provocando un movimiento ro-
tatorio, gracias a la acción de un campo magnético. [1]
Un motor de corriente continua se compone principalmente
de dos partes. El estátor da soporte mecánico al aparato y
contiene los polos de la máquina, que pueden ser o bien de-
vanados de hilo de cobre sobre un núcleo de hierro, o imanes
permanentes. El rotor es generalmente de forma cilı́ndrica,
también devanado y con núcleo, alimentado con corriente di-
recta a través de delgas, que están en contacto alternante con
escobillas fijas (también llamadas carbones).[1] Figura 1: Control de servomotores
El principal inconveniente de estas máquinas es el manteni-
miento, muy costoso y laborioso, debido principalmente al
desgaste que sufren las escobillas al entrar en contacto con
las delgas.[2]
2.3. Arduino
Algunas aplicaciones especiales de estos motores son los mo-
tores lineales, cuando ejercen tracción sobre un riel, servomo- Arduino es una compañı́a de fuente abierta y hardware
tores y motores paso a paso. Además existen motores de CC abierto ası́ como un proyecto y comunidad internacional que
sin escobillas (brushless en inglés) utilizados en el aeromode- diseña y manufactura placas de desarrollo de hardware para
lismo por su bajo par motor y su gran velocidad. [2] construir dispositivos digitales y dispositivos interactivos que

1
puedan detectar y controlar objetos del mundo real. Arduino auxiliar bolleana b.
se enfoca en acercar y facilitar el uso de la electrónica y pro- Acontinuación se muestra la función setup en la cual confi-
gramación de sistemas embebidos en proyectos multidiscipli- guramos los pines de los motores como salidas, en la función
narios. Los productos que vende la compañı́a son distribuidos mover ejecuta el movimiento de cada motor al pasar como
como Hardware y Software Libre, bajo la Licencia Pública parametros el motor mt y los grados que se quiere mover,
General Reducida de GNU o la Licencia Pública General de esta función crea una variable de tipo entero la cual será una
GNU, permitiendo la manufactura de las placas Arduino y regla de tres, Caracteriztica del motor :
distribución del software por cualquier individuo. Las placas Frecuencia de trabajo : 50Hz
Arduino están disponibles comercialmente en forma de placas Ancho de pueso para 180 grados : 2550 µs
ensambladas o también en forma de kits hazlo tu mismo.
2550µs → 180◦

3. Diseño t → GRAD
Esto se lee si 2550µs equivale a 180◦ entonces nuestra variable
3.1. Codigo GRAD a cuento tiempo equivale :
GRAD ∗ 2550
t=
180
t = GRAD ∗ 14,22
De esta manera se calcula cuanto debe ser el tiempo que debe
durar prendido y como la frecuencia es de 50Hz ya sabemos
cuanto debe estar apagado para que se pocisione en GRAD,
posteriormene creamos la función secuencia la cual tiene un
ciclo f or de cero a cincuenta para que la secuencia espere un
momento una vez que se posicione (no es conveniente usar
delay por que este interfiere con la función mover) dentro de
este se llama la función mover pasandole los tres motores y
un angulo a que se inicia en cero despues usamos la variable
auxiliar b para que a vaya aumentando de a 30 y si llega a
180 la variable auxiliar b se vuelve falsa haciendo que ahora
a vaya disminuyendo de a 30. Esto genera que el motor tome
una secuencia de cero a 180 de a 30 y se devuelva, finalmente
en la función loop se llama la función secuencia

4. Conclusiones
Se lográ buscar y entender que son los motores eléctricos
y como funcionan, se estudió el servomotor, sus caracteristi-
cas y su mecánica para ser controlados, se describio que es
arduino y para que sirve.
Sabilendo esto se logra hacer un diseño de codigo para un
microcontrolador que sea capaz de mover los servos a las po-
siciones deseadas de acuerdo a la lógica explicada paso a paso
en el diseño.

5. Bibliografı́a
[1] Mecatrónica y Robótica - 1ra edicion - Ramos Juan
Manuel, Vargas Jose Hemilio, Gorrostieta Hurtado , 2014
[2]Introducción a la robótica inteligente - Pedro Jose Sanz
Figura 2: Codigo para controlar servomotores [3]Arduino libro de proyectos - Jose M. Ruiz

3.2. Explicación
El codigo inicia creando tres variables de tipo entero con el
nombre de cada motor y asignandoles los pines del arduino,
se crea una variable entera a y se iguala a cero, y una variable

También podría gustarte