Autor Tema: SERVO MOTORES  (Leído 1886 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Lager.

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 477
SERVO MOTORES
« en: 07 de Diciembre de 2004, 21:50:00 »
Que onda panas, aqui les pongo un ejemplo muy sencillo del uso de servos con proton:
---------------------------------------------------------------------------------------------------------
   DEVICE 16F628A      
   xtal 20            
   DIM Posicion as WORD                   " variable para posicion
   SYMBOL Pin = PORTA.3                        " pin que maneja servo
   CMCON = 7                             " deshabilitamos comparadores
   Posicion = 1500                      " posicion inicial(centrado)
   TRISA = %00000111                   " porta.0-2 entradas,porta.3 entrada
    PORTA = 0                              " limpiamos porta
---------------------------------------------------------------------------------------------------------  
inicio:    
   IF PORTA.0 = 0 Then IF Posicion < 3000 Then Posicion = Posicion + 1    "incremento --->
   IF PORTA.1 = 0 Then Posicion = 1500             " lo regresa al centro
    IF PORTA.2 = 0 Then IF Posicion > 0 Then Posicion = Posicion - 1    " incremento <---
    SERVO Pin , Posicion
    DELAYMS 5                      " esperamos(depende del motor..DS)
    GOTO inicio
---------------------------------------------------------------------------------------------------------

El ancho del pulso determina la posicion del servo, claro que esto depende del modelo a trabajar , aunque la mayoria de ellos con un pulso de 1.5ms  se centra(Revizar DS del modelo a trabajar).
el comando SERVO de proton, genera un pulso de 1us en el puerto y pin determinados. Este comando es independiente del oscilador usado por el micro, lo cual asegura que siempre produsca el pulso cada 1us.
Espero sea de ayuda para proyecto complejos

Salu2 panas

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
RE: SERVO MOTORES
« Respuesta #1 en: 09 de Diciembre de 2004, 19:23:00 »
aya muy bien señor pana siga poniendo esos ejemplos que me dan ganas de comprar unos cuantos servitos DivertidoDivertidoDivertidoDivertido

Desconectado Lager.

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 477
RE: SERVO MOTORES
« Respuesta #2 en: 10 de Diciembre de 2004, 11:21:00 »
Que onda electronando,
Es solo un ejemplo base para montar un proyecto con verdadero uso. El comando es muy efectivo y demuestra la facilidad de manejo  y de adaptacion a un programa complejo.

Salu2 pana

Desconectado sebastianvera

  • PIC10
  • *
  • Mensajes: 37
RE: SERVO MOTORES
« Respuesta #3 en: 31 de Agosto de 2005, 13:12:00 »
bueno, para no iniciar otro post, pongo mis dudas aca

hice un controlador de 4 servos con un 16f628a y un cristal de 20 Mhz esta seteado el timer2 para 50hz (20 ms) cada vez que se cumple este tiempo pongo las cuatro salidas en alto x 1 ms y el otro ms varia de acuerdo a la posición deseada, con esto consigo controlar 45 grados de angulo, que es con lo q trabajo, todo muy lindo, todo muy hermoso hasta que trato de controlar con la misma placa un motor 12V DC, lo que me resulta en ruidos q descontrolan los servos, lo extraño de todo esto es que tengo todas las patas del pic como salidas, aterradas y sigue en la misma. los 5vdc de alimentacion del pic entran limpitos, tengo que aislar las salidas de los servos con un optoisolador? el cristal esta aterrado. y ya tome todas las medidas que encontre en el foro con respecto a ruidos, alguien tuvo alguna experiencia de este tipo?

Desconectado sebastianvera

  • PIC10
  • *
  • Mensajes: 37
RE: SERVO MOTORES
« Respuesta #4 en: 01 de Septiembre de 2005, 09:32:00 »
agrego x si a alguien le interesa

el motor dc es un motor de 12V con caja reductora, de 15 rotaciones por minuto. Si al motor lo hago trabajar con 5V o 6V anda todo maravilloso, inclusive con la misma fuente con q alimento al pic y a los servos.