Explicación y práctica del motor paso a paso.

Ir abajo

Explicación y práctica del motor paso a paso.

Mensaje por Admin el Sáb Ene 20, 2018 11:30 am

Les traigo la explicación de como utilizar un motor paso a paso.



Los motores paso a paso son los utilizados en las impresoras 3D, son la base de cualquier impresora, cuanto mayor sea su precisión (más pequeños serán los pasos), mejor será la calidad de la impresión.

La teoría se encuentra en los apuntes Matriz y motores.

Resumiendo, el motor paso a paso, tiene 4 bobinas, las cuales cuando se activan en orden, generan un campo magnético que atrae a un rotor interno y genera movimiento (4 pasos). Pero como se ven en los apuntes, si alternamos la activación de una bobina y la activación de 2, podemos conseguir pasos intermedios, y conseguir que una vuelta entera la de en 8 pasos y no 4, esto genera una mayor precisión en el motor.


Faltarían los 4 pasos restantes en la imagen.

El motor en realidad internamente, necesita dar 64 pasos para dar una vuelta (tiene una especie de reductora ya conectada), además tiene otra reductora 1/64 (reduce la velocidad del movimiento), por tanto necesitaría 64*64= 4.096 pasos para que nosotros viéramos en el eje cómo da una vuelta completa. Esto es en lo que el programa verán que repetimos los 8 pasos, 512 veces (8*512=4.096).

El esquema de conexión se encuentra en los apuntes. Hace falta conectar el chip ULN2003A que aparece en la imagen inicial.

Video: https://mega.nz/#!8u5HnKiL!sT0qUbH38JkyFvdvNpifOqNzp3k07KVRForPeh1n7bc

Admin
Admin

Mensajes : 30
Fecha de inscripción : 08/05/2017

Ver perfil de usuario http://stemonline.activo.mx

Volver arriba Ir abajo

Re: Explicación y práctica del motor paso a paso.

Mensaje por Admin el Miér Ene 24, 2018 2:59 pm

Buenas,

Juan Carlos me ha comentado que hay un error en el programa, y está en lo cierto.

Para repetir las vueltas 512 veces se utilizó una variable de tipo byte, pero este tipo de variable solo permite almacenar hasta 255, por tanto induce a error el programa. Es necesario utilizar una variable más grande, por ejemplo un int.

Admin
Admin

Mensajes : 30
Fecha de inscripción : 08/05/2017

Ver perfil de usuario http://stemonline.activo.mx

Volver arriba Ir abajo

Re: Explicación y práctica del motor paso a paso.

Mensaje por Admin el Miér Ene 24, 2018 3:07 pm

Además de eso:

en el giro a la izquierda hay un problema al utilizar el for:

for(byte i=7;i>=0;i--)

A la hora de utilizar la variable 'i' de forma decreciente (7,6,5,4,3,2,1,0), nosotros le estamos diciendo en el for, que lo repita mientras sea >=0, con esto se produce un problema de programación al usar una variable byte.

El for, primero realiza una acción, luego aumenta o disminuye la variable y por último compara, lo que ocurre es que cuando vale i=0, el for realiza la supuesta ultima repetición, PERO cuando acaba la acción, i-- , en teoría i=-1 y debería acabar el for, pero como i es un "byte" no puede almacenar números negativos, y en vez de valer i=-1, vale i=255 de nuevo. Como 255 es >0, vuelve a repetir el for, y se estará quedando medio atascado por ahí.

Prueben a poner un int i en todas las variables para prevenir errores.

Un saludo y disculpen los errores.

Admin
Admin

Mensajes : 30
Fecha de inscripción : 08/05/2017

Ver perfil de usuario http://stemonline.activo.mx

Volver arriba Ir abajo

Re: Explicación y práctica del motor paso a paso.

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.