Autor Tema: Controlar Motores paso a paso con Potenciometros  (Leído 11017 veces)

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

Desconectado sirias52

  • PIC10
  • *
  • Mensajes: 40
Controlar Motores paso a paso con Potenciometros
« en: 13 de Mayo de 2010, 20:14:31 »
Hola a la comunidad Todopic, la verdad es que necesitaba un poco de consejo con el proyecto que estoy realizando. Mi proyecto consiste en controlar la dirección y velocidad de un motor PAP unipolar únicamente con un potenciometro utilizando un pic16f84a (es el pic que domino más :). La idea de la lógica de programación en asm que tengo es el siguiente:



Uploaded with ImageShack.us


una vez que yo posicione el potenciometro en 5k el motor estará detenido si yo vario el potenciometro a un valor de 4k (por ejemplo es algo teorico) el motor girará ala izquierda y si el valor disminuye a un valor menor de 4k el motor seguira girando a la izquierda y cambiará su velocidad.

Lo que tengo pensado es que cuando el potenciometro este en 5k el capacitar se cargará en un tiempo t el cual será comparado con un valor de referencia el cual dirá que con ese tiempo de carga el motor estará detenido. cuando el pot varie de omeaje a 4k el capacitor tendrá otro tiempo de para cargarse totalmente el cual se comparar y dira que ahora gire a la izquierda con una velocidad y cuando disminuya aun mas el valor de pot cambiara su velocidad e ira un poco mas rapido.

estoy complicandome o estoy haciendolo bien?, creo que me estoy complicando, pero su consoje me ayudará a saberlo :)

Gracias amigos y saludos desde Nicaragua



Desconectado ferna85

  • PIC10
  • *
  • Mensajes: 32
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #1 en: 13 de Mayo de 2010, 20:41:32 »
Hola, el proyecto me parece bueno. Pero creo que será más sensillo saltar a algún micro que posea conversor AD integrado. Con esto conectas el pote directo al PIc y haces todo por soft, esto te simplificará mucho el proyecto.
PD: Seria bueno comentes la aplicacion del proy, ya que así te podremos dar mas y mejores ideas. Por ej es posible utilizar un motor de CC?, si es asi se puede hacer con elect discreta

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #2 en: 13 de Mayo de 2010, 20:55:53 »
Hola, creo que te estas complicando un pococ las cosas, podrias usar el convertido analogico-digital del pic para conectar tu potenciometro, y desde el programa incluso podrias hacer girar el motro en ambos sentidos dependiendo de la posicion de tu potenciometro.

si tienes alguna duda de como hacerlo pregunta y te ayudaremos
"Nada es imposible, no si puedes imaginarlo"

Desconectado sirias52

  • PIC10
  • *
  • Mensajes: 40
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #3 en: 15 de Mayo de 2010, 12:04:36 »
Hola amigos, gracias por leer el tema. Mi proyecto es un brazo robótico y pretendo controlarlo con un joystick basado potenciometros. La palanca principal del joystick controlará la cadera y el codo del brazo robótico. A principio quería seleccionar la velocidad con un switch (les adjunto el codigo y la simulación), pero no me resulta debido al joystick que tengo y quiero usar :), asi que según sus recomendaciones me agrada la idea de utilizar el conversor analogo digital, aunque sinceramente estoy algo desorientado, pero me pondré a investigar.

Código: [Seleccionar]
list p=16F84A
include<P16F84A.inc>


bsf STATUS,RP0
clrf PORTB
movlw b'00001111'
movwf PORTA
bcf STATUS,RP0

seleccion_velocidad

btfss PORTA,2
goto velocidad_1
goto velocidad_2


velocidad_2

btfss PORTA,0
goto principal_1
goto giro_horario

principal_1

btfss PORTA,1
goto detenido
goto giro_antihorario

giro_horario

movlw b'00000011'
movwf PORTB
call Retardo_200ms
movlw b'00000110'
movwf PORTB
call Retardo_200ms
movlw b'00001100'
movwf PORTB
call Retardo_200ms
movlw b'00001001'
movwf PORTB
call Retardo_200ms
goto velocidad_2

giro_antihorario

movlw b'00001001'
movwf PORTB
call Retardo_200ms
movlw b'00001100'
movwf PORTB
call Retardo_200ms
movlw b'00000110'
movwf PORTB
call Retardo_200ms
movlw b'00000011'
movwf PORTB
call Retardo_200ms
goto velocidad_2

detenido

movlw b'00000000'
movwf PORTB
goto seleccion_velocidad

velocidad_1

btfss PORTA,0
goto principal_2
goto giro_horario2

principal_2

btfss PORTA,1
goto detenido2
goto giro_antihorario2

giro_horario2

movlw b'00000011'
movwf PORTB
call Retardo_50ms
movlw b'00000110'
movwf PORTB
call Retardo_50ms
movlw b'00001100'
movwf PORTB
call Retardo_50ms
movlw b'00001001'
movwf PORTB
call Retardo_50ms
goto velocidad_1

giro_antihorario2

movlw b'00001001'
movwf PORTB
call Retardo_50ms
movlw b'00001100'
movwf PORTB
call Retardo_50ms
movlw b'00000110'
movwf PORTB
call Retardo_50ms
movlw b'00000011'
movwf PORTB
call Retardo_50ms
goto velocidad_1

detenido2

movlw b'00000000'
movwf PORTB
goto seleccion_velocidad

include<Ret.inc>
end

basicamente de eso se trata, seguire detallando mas sobre el proyecto.

Gracias amigos.
« Última modificación: 15 de Mayo de 2010, 12:52:28 por un Moderador, Razón: Corrección de código »

Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #4 en: 20 de Mayo de 2010, 11:57:59 »
como tu dices el 16F84 lo dominas bien, has pensado saltar al 16F628 que ese ya tiene mejor prestacion e incluye conversor A/D.
La parte fisica es compatible y la de firmware con muy poco la puedes modificar, creo que es solo cambiar el encavezado.

Sigue este link: http://robots-argentina.com.ar/Cerebro_PIC628vs84.htm

Saludos
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado sirias52

  • PIC10
  • *
  • Mensajes: 40
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #5 en: 05 de Junio de 2010, 14:12:19 »
Bueno he estado leyendo por internet de como controlar la dirección y velocidad de un motor PAP con un potenciometro, pero se me complica un poco comprender como voy hacerlo sino encuentro un ejemplo aunque sea sencillo de algo similar a lo que busco.

Si alguien me puede dar un empujón se lo agradeceria mucho.

Gracias

Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #6 en: 05 de Junio de 2010, 18:17:41 »
yo te decia del 16F628 porque tiene conversores A/D, con eso directamente conectas el potenciometro como un divisor de tension.
Luego programas a que de 2,5V sea punto medio o de velocidad nula, luego de 2,5V a 5V que valla aumentando hacia un sentido y luego de 2,5 a 0V hacia el otro.
Luego la parte de potencia del motor la puedes hacer con un L293 o un L298, son integrados especificos para manejar motores de DC, PAP o en configuraciones variadas de puente H.

http://www.clubse.com.ar/DIEGO/NOTAS/3notas/nota11.htm

ahi creo que tiene data para hacer algo, incluso usando el 16F84.
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado chinoox

  • PIC10
  • *
  • Mensajes: 3
Re: Controlar Motores paso a paso con Potenciometros
« Respuesta #7 en: 15 de Junio de 2010, 15:45:22 »
en mi blog explico como hacer un variador de velocidad con un potenciometro
http://chinoox.blogspot.com/2010/06/velocidad-variable-de-un-motor-paso.html   :-/


 

anything