You are on page 1of 4

Controlar un servomotor con un microcontrolador pic

Page 1 of 4

------ PAGINA PRINCIPAL -----

Controlar un servomotor de modelismo con un microcontrolador pic 16f628A mediante 2 pulsadores y indicador luminoso
Con este circuito podemos situar la posicion de un servomotor de los usados en modelismo en 256 posiciones diferentes, la cual se reflejara sobre 8 diodos LED. Manteniendo presionado el pulsador IZQ o DER variaremos la posicion sel servo en un sentido u otro, al mismo tiempo de que los led van indicando secuencias diferentes. Aproximadamente mediante la actuacion de estos 2 pulsadores tardara 50seg el servomotor en realizar todo el recorrido, pero si actuamos al mismo tiempo sobre el pulsador TURBO, se reducira este tiempo a solo 5seg. Tenemos la posibilidad de accionarlo mediante los microswitch, y llevar al servo a unas posiciones concretas sin necesidad de tener que verlo. Con los pulsadores IZQ y DER llevaremos el servo a la posicion deseada, en donde observaremos los LED que permanecen encendidos, colocando en la posicion de ON los microinterruptoes que coincidan con los LED encendidos, de modo que independientemente de donde se encuentre el servo, este regresara a esa posicion siempre que actuemos sobre el pulsador SELEC. Incluso podemos dejar continuamente presionado SELEC y mediante los microinterruptores controlar al servomotor.

http://www.microcontroladorespic.com/proyectos-con-microcontroladores-pic/servomoto... 17/05/2011

Controlar un servomotor con un microcontrolador pic

Page 2 of 4

Como podeis apreciar en el Esquema el microcontrolador funciona sin el tipico cristal de cuarzo de 4Mhz. Prestar atencion a los valores de las resistencias R1 a R16, ya que son valores criticos para que los microinterruptores polaricen adecuadamente las entradas del PIC. El que desee ampliar los conocimientos sobre servomotor acudir a la WIKIPEDIA. En la imagen se representan los tiempos del pulso generado e de la posicion que queramos adquirir. Estos tiempos de funcionamiento no son estandar para todas l de servomotores, de modo que segun el modelo que uti encontrreis con el problema que no alacanza la totalidad del de los 180 o bien que esteis sobrepasando el limite inferior o haciendo que el servomotor se vuelva muy inestable. Los tiempos utilizados para este circuito, NO corresponden con imagen, aunque os indirare mas adelante como modificarlos.

En la siguiente tabla se representan algunos fabricantes de servomotores y los tiempos que utilizan para posicionar al servo en una posicion determinada, asi como los colores de los cables empleados. Duracin pulso disposicin de cables

http://www.microcontroladorespic.com/proyectos-con-microcontroladores-pic/servomoto... 17/05/2011

Controlar un servomotor con un microcontrolador pic

Page 3 of 4

Fabricante Futaba Hitech Graupner/Jr Multiplex Robbe Simprop

min. 0.9 0.9 0.8 1.05 0.65 1.2

(ms) neutral. 1.5 1. 5 1.5 1.6 1.3 1.7

mx.. Hz 2.1 50 2. 1 50 2.2 50 2.15 40 1.95 50 2.2 50

+ batt - batt pwm. rojo negro blanco rojo negro amarillo rojo marrn naranja rojo negro amarillo rojo negro blanco rojo azul negro

En mi caso para los servomotores que yo disponia en ese momento utilice un tiempo minimo de 550ms, los cuales podeis modificar en ensamblador en la parte del programa: bucle_2 bsf call call call Salida ;pongo en alto la salida Retardo_300micros ;tiempo minimo de 550 us Retardo_200micros Retardo_50micros

Como el tiempo del pulso lo puedo seleccionar en 256 valores diferentes, he utilizado un multiplo de tiempo de 7useg. Por lo tanto 7us X 256 = 1792useg, los cuales sumados a los 550us minimos, nos dan un total de 2342useg o 2,34 mseg. Para variar el tiempo maximo solo teneis que variar el multiplo de 7us en la siguiente parte del programa ,quitando o aadiendo instrucciones NOP, las cuales afectan en el tiempo 1micro segundo: Tiempo nop nop nop nop ;nop ; 4us ; 5us ; 6us ; 7us ; 8us no utilizado
www.promessinc.com PCBMotor.com www.coindsa.com.

Servo Press Programmable Controlled Servo Press In-Process Assembly Monitoring

WWIII: Stepper vs PCB? Case Study Proves It : PCB Motor Has More Resolution and Torque!

Variadores de Velocidad (Drives) Distribuidor Marca ACTECH Para toda la Republica Mexicana

Podeis descargar el archivo generado por Proteus y el codigo Hex para su montaje o simulacion.

http://www.microcontroladorespic.com/proyectos-con-microcontroladores-pic/servomoto... 17/05/2011

Controlar un servomotor con un microcontrolador pic

Page 4 of 4

Para aquellos que sepan programar en Ensamblador tambien teneis el archivo ASM por si quereis realizar alguna modificacion. (si alguien desea que yo le cambie los tiempos y le mande el codigo HEX le constara 30)

Copyright 2009 (MicrocontroladoresPic)

http://www.microcontroladorespic.com/proyectos-con-microcontroladores-pic/servomoto... 17/05/2011

You might also like