motores bipolares paso a paso (labview)


En esta entrada enseñare como controlar dos motores paso a paso bipolares con labview que se cruzan entre si por unas pequeñas ranuras que contienen en sus respectivos ejes.

Dentro de el contenido de programación en labview utilizare maquinas de estados guiadas por un contador, que al ser este incrementado se sitúe en dichos estados con su respectivo valor numérico y ejecute las funciones que contienen las secuencias de bit´s para mover estos motores, Además se podrá variar su velocidad de giro mediante un control .

La secuencia de bit´s para cada uno de los motores será de medio paso, a continuación su tabla.

Programación en labview:

Ahora explicare brevemente las funciones que controlan el primer y segundo motor en labview.

En primer lugar he introducido todo el contenido en un while loop para que se me vaya ejecutando constantemente.

Dentro de este while he colocado un case structure para controlar el inicio del resto del contenido con un control booleano el cual he llamado start. Luego coloco un for loop para hacer un contador de estados,  el cual su iteración irá conectada al inicio de un structure case para que al tener un valor numérico especifico dicho contador, se me establezca en el estado correspondiente al numero.

En este mismo case structure creo las secuencias de bit´s  de medio paso para los motores. Fuera del segundo case structure se encuentran dos build array el cual construyo una matriz de arrays booleano que son  las secuencias de bit´s ejecutadas en cada estado del case conectados a las entradas de estos build arrays, y sus salidas que irán a la función de Daq assistant, el cual creo una tarea en ambos con 4 canales de salidas digitales para cada uno , los cuales dichos canales serian las primeras 8  salidas digitales del puerto_0  en el  DAQ-6008 que he utilizado para este ejercicio, 4 para un motor y 4 para otro motor.

Por otra parte, en el for loop he puesto el valor en el terminal de conteo (N) a 35, esto se debe a que hay 34 estados para el control del giro  de los dos motores y  para llegar a una de las ranura en el disco del motor y se posicione en el lugar correcto he tenido que repetir el ciclo de la secuencia de medio paso dos veces para cada motor, es decir 17 estados para ambos motores.

estados:

Para el control de velocidad no es más que variar el tiempo ya sea con un control o una constante, pero es mas preciso con un control para que se pueda visualizar dichos valores del cambio de velocidad de los motores en el panel frontal.

PANEL FRONTAL:

En esta imagen del panel frontal se puede apreciar el panel del control de velocidad, los bit´s de control de ambos motores que no es mas que la secuencia de medio paso ocurrida en cada estado del programa , un botón de start el cual es el que se encarga de iniciar todo el proceso al presionar este cuando corremos el VI, además de un botón de stop que es el típico que contiene el while para parar el vi completo Y UN display para visualizar el estado en el cual se encuentra la secuencia de bit´s….

video:

DESCARGAR VI