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

Temas similares

30/10/2007 #1


control de motor a pasos mediante un programa en Visual C++
hola alguien podria decirme o como hacer un codigo para controlar el giro de un motor a pasos biopolar mediante un programa hecho en Visual C++ lo ke pasa es ke ya tengo el ciruito armado pero en programacion nomas no se me da x eso kisiera ver si alguin me podria ayudar se los agradeceria. lo ke pasa es ke ya buske en el foro y no encontre algo relacionado on lo ke busco
de antemno gracias
31/10/2007 #2

Avatar de EinSoldiatGott

Re: control de motor a pasos mediante un programa en Visual
Hola, en el mensaje privado que me envió no me había dicho que es un motor a pasos, imaginé que era uno de directa.

Con un bipolar va a ocupar unas cuantas cosas más de material, y el relay no le va a servir.

En este link http://www.todorobot.com.ar/informac...r-tutorial.htm

Explican como hacerlo.
Bipolar: Estos tiene generalmente cuatro cables de salida (ver figura 1). Necesitan ciertos trucos para ser controlados, debido a que requieren del cambio de dirección del flujo de corriente a través de las bobinas en la secuencia apropiada para realizar un movimiento. En figura 3 podemos apreciar un ejemplo de control de estos motores mediante el uso de un puente en H (H-Bridge). Como se aprecia, será necesario un H-Bridge por cada bobina del motor, es decir que para controlar un motor Paso a Paso de 4 cables (dos bobinas), necesitaremos usar dos H-Bridges iguales al de la figura 3 . El circuito de la figura 3 es a modo ilustrativo y no corresponde con exactitud a un H-Bridge. En general es recomendable el uso de H-Bridge integrados como son los casos del L293 (ver figura 3 bis).





Existen tres secuencias posibles para este tipo de motores, las cuales se detallan a continuación. Todas las secuencias comienzan nuevamente por el paso 1 una vez alcanzado el paso final (4 u 8). Para revertir el sentido de giro, simplemente se deben ejecutar las secuencias en modo inverso.



Secuencia Normal: Esta es la secuencia más usada y la que generalmente recomienda el fabricante. Con esta secuencia el motor avanza un paso por vez y debido a que siempre hay al menos dos bobinas activadas, se obtiene un alto torque de paso y de retención.
I. 1100
II. 0110
III. 0011
IV. 1001
En esa misma página explican como identificar los cables.

La secuencia más simple es:

CICLO sentido1
{

0001
0010
0100
1000
}

CICLO SENTIDO 2
{

1000
0100
0010
0001
}


en código para C sería

Código:
if(sentido==0)
				{
				if(bit==16)
					bit=1;
				outportb(para,bit);
				delay(velocidad);
				bit=bit*2;
				}
			else
				{
				if(bit==16)
					bit=8;
				if(bit==1/2)
					bit=8;
				outportb(para,bit);
				delay(velocidad);
				bit=bit/2;
				}
Lo más complicado de su trabajo es el circuito y no tanto la programación.

Adjunto le dejo uno que yo hice para controlar un motor, puede variar la velocidad, sentido de giro y arranque y paro.

Saludos
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 - 2014, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.