Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

20/02/2012 #1


Ayuda en Ensamblador para un Servomotor
Hola, primero que nada un saludo a todos los del foro y tambien gracias por todo lo que e aprendido aqui, en esta ocacion abro este nuevo hilo con la intencion de ver si pueden ayudarme a controlar un Servomotor, el servo funciona asi: 1ms 0º, 1.5ms 90º y 2ms 180º. he estado tratando de enviarle una señal para que se mueva pero no logro hacerlo, es la primera vez que trabajo con un servo y no estoy muy familiarizado con esto jeje...

He leido un poco acerca del tema y pues tengo la idea de como funciona, aqui pongo una parte del codigo donde segun yo, deberia funcionar el servo a 90º pero el problema es que nose como detenerlo, es decir, quiero que envie la señal durante un segundo y despues pare, o por .5 segundos, etc... segun sea la aplicacion del servo, tengo algunos conocimientos en ensamblador pero nose como hacer el equivalente al ciclo "for" para asi enviar la señal n numero de veces al servo, el pic que uso es el 16F84a y el servo es un Servomotor Tower Pro SG-90, aqui el codigo:

Principal
btfsc inter
call Semaforo
goto Principal

Semaforo

movlw b'00000010'
movwf PORTB
call Retardo_.5ms
call Retardo_1ms

movlw b'00000000'
movwf PORTB
call Retardo_18ms
call Retardo_.5ms

return
Espero me puedan ayudar, o si tienen alguna otra forma de hacer que funcione, estoy abierto a nuevas ideas jeje... solo no cambiar de lenguaje o de servo, ya que debo hacerlo con esto jeje, de antemano gracias
27/02/2012 #2


consulta: tu dices al principio que no te funciona, entonces para que quieres detenerlo si no te funciona ahun?
veo tu codigo y creo que estas tratando de simular una PWM, si es eso creo que necesitas solo un retardo por grado de movimiento, es decir, un retardo para el 1 o otro para el 0, ademas revisa la coneccion con el motor, debes utilizar un amplificador adecuado como el TIP122.
suerte en tu proyecto
27/02/2012 #3


esque ap principio le meti un .hex para un servo futaba, y solo hacia algunos ruiditos yse movia pero de forma irregular, entonces comence a fabricar mi propio condigo con señales adecuadas a mi tipo de servo pero como nose como detenerlo pues no quiero probarlo con el servo ya que soy algo novato aun y nose si le ara daño enviarle señales en un ciclo infinito como lo esta ahorita jeje...

y si, en efecto estoy tratando de hacer mi equivalente a PWM jeje... por ahora solo simulo en proteus pero debido a que nose detener el ciclo pues se queda trabado el servo(segun la simulacion), gracias por la respuesta y espero aya quedado mas claro mi problema por si alguien pudiera ayudarme salu2
13/05/2013 #4


Control de servomotor
estoy haciendo un programa en ensamblador para controlar dos posiciones de un servomotor
tower pro sg90 , segun es con pwm, pero habia escuchado que se podia con timer0 o retardos solo que no se como iria la estructura de cada metodo, ¿cual convendria mas?
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.