You are on page 1of 9

INSTITUTO

TECNOLOGICO DE TOLUCA
INGENIERA ELECTRNICA

Motor a Pasos

REPORTE PPRCTICA

PRESENTA:
LUIS VIDAL ALVA DE LA CRUZ
RACIEL ANGELES SALAZAR
FRANCISCO RIVERA ALBA

METEPEC, ESTADO DE MXICO, 18 DE SEPTIEMBRE DEL 2016

INTRODUCCION
En esta prctica se controlar un motor paso a paso mediante el
microcontrolador pic18f4550 con base al funcionamiento del motor a pasos que
tiene un estator con cuatro polos. Cada uno de ellos esta enrollado a un
devanado de campo y las bobinas en pares opuestos de polos estn en serie. A
travs de interruptores una fuente de cd proporciona la corriente a los
devanados. El rotor es un imn permanente, por lo que, al conectar una
corriente a uno de los pares de los polos de estator, el rotor se desplaza hasta
alinearse con l. As al conmutar las corrientes a travs de los devanados, el
rotor gira a pasos de 45.
Dentro del el movimiento de motor este estar accionado por los pulsos que
reciba, en este caso se utiliza el microcontrolador para poder enviar pulsos y
determinar el desplazamiento del motor.
Un motor paso a paso es un dispositivo el cual produce una rotacin en ngulos
iguales, denominados pasos, por cada impulso digital que llega a su entrada.

En todo proceso de programacin se requiere realizar constantemente


operaciones, asignacin de valores a registros y extraer valores
existentes en otros registros, para transferirlos y/o procesarlos con otros
datos a este proceso se le conoce como direccionamiento.
El microcontrolador sigue la lgica del programa almacenado en
memoria por consiguiente requiere memoria de programa, memoria de
datos y registros internos. La memoria del programa mantiene la
secuencia de instrucciones a ejecutar, la memoria de datos conocida
como RAM es la unidad de almacenamiento temporal.
El dispositivo dispone de un cierto nmero de bits para configurarse,
estos bits estn disponibles en la memoria EEPROM cuando este se
programa, pero no son accesibles durante el funcionamiento normal del
microcontrolador.
Los puertos de entrada/salida son los medios con los cuales el
microcontrolador tiene la capacidad de realizar interfaces con el entorno
estos se pueden conectar desde dispositivos simples como switches y
teclados.
Uno de los componentes fundamentales de la CPU es la unidad
aritmtica y lgica (ALU) y como su nombre lo indica realiza operaciones
aritmticas y lgicas previstas en el repertorio de instrucciones.
Los motores paso a paso requieren del cambio de direccin del flujo de
corriente a travs de sus bobinas en la secuencia apropiada. Dicha

corriente es muy elevada con respecto a lo que un microcontrolador


puede soportar. Dado lo anterior, es necesario utilizar un puente H por
cada bobina del motor. Un puente H es un dispositivo capaz de soportar
el flujo bidireccional de corriente invertida.

Materiales
-

Microcontrolador PIC 18F4550


Motor a pasos bipolar 5V
Mdulo L298, Puente H
Protoboard
Fuente de alimentacin
Software Proteus

Desarrollo
Utilizando la configuracin de paso simple y doble para nuestro motor con las
siguientes tablas:
Giro Paso Simple
1

0
1 Doble
0
Giro Paso

0
0
Tabla 1.
pasos

11
00

10
10

00
11

0
Configuracin de bits para motor a

Para poder hacer que el motor tuviese la suficiente corriente para moverse fue
necesario conectrsele un adaptador, en este caso utilizamos el mdulo de
puente H L298 que trabaja desde 5 a 12 V. El modulo se conecta a una fuente
aparte para alimentarse y no reclamarle ms corriente al circuito completo, el
motor se conecta a las salidas del mdulo, y el mdulo se conecta a las salidas
del microcontrolador.
Dentro de este mdulo L298 como s a mencionado es un puente H el cual nos
ayudara a invertir el giro. En la barra central se encuentra ubicado el motor y
en cada rama lateral ascendente o descendente se ubican los conmutadores
que, activados de manera apropiada, brindarn al sistema los movimientos
necesarios para que el motor utilizado pueda girar en un sentido u otro.
El modulo se muestra en la Figura.1

Programa
-

Figura.1 controlador L298

Se declara el microcontrolador que se va a utilizar y despus se


llaman sus libreras.

list p=18f4550
#include <p18f4550.inc>

Se hacen las configuraciones de las instrucciones de propsito


especfico.

CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG
CONFIG

FOSC=INTOSCIO_EC
PWRT=ON
BOR=OFF
WDT=OFF
LVP=OFF
PBADEN=OFF
CP0=OFF
CP1=OFF
CP2=OFF
CP3=OFF
CPB=OFF
CPD=OFF
MCLRE=OFF

Inicio de programa, y configuraciones de puertos de salida y de


entrada; como el microcontrolador contiene diferentes funciones
en los puertos a utilizar se realizaran las configuraciones
necesarias como son deshabilitar los comparadores y tener solo
entradas digitales como se describe a continuacin:

EQU

20H

;Variables para los retardos.

EQU

21H

VALOR EQU
VALOR2

22H
EQU

;Variables para repeticin de


23H
;ciclo de giro simple del motor

Se declara el origen y El Puerto D como salida

ORG 00H
CLRF TRISD

Empieza el ciclo de giro de paso simple del motor y se cicla gracias


a un contador con el que igual puede salir del ciclo despus de
contar 4 veces

INICIO
CLRF VALOR2
;Ciclo de giro simple del motor,
MOVLW 08H ;cuatro combinacin es un paso y
MOVWF PORTD
;por ser 4 bits, para el paso simple
CALL RETARDO ;es un bit por paso, por lo que son
MOVLW 02H ;4 pasos, as que el ciclo debe
MOVWF PORTD
;repetirse varias veces para
CALL RETARDO
;concretar una vuelta.
MOVLW 04H
MOVWF PORTD
CALL RETARDO
MOVLW 01H
MOVWF PORTD
CALL RETARDO
INCF VALOR,1
;Incrementa la variable en 1 al terminar un ciclo
BTFSS VALOR,2
;Pregunta si la variable ah llegado a 4
GOTO INICIO
;Si no, repite el ciclo
GOTO RETR ;Si si, entonces pasa al cilco de retroceso

Despus de terminar el primer primer ciclo pasa a un segundo


ciclo que consiste en hacer girar el motor en sentido contrario
paso a paso, el ciclo se repite 8 veces

RETARDO
;Ciclo de Retroceso
CLRF
VALOR
;Limpia el contador del ciclo anterior
MOVLW 01H
;El mismo ciclo se repite pero del ultimo al
MOVWF PORTD
;primero
CALL RETARDO
MOVLW 04H
MOVWF PORTD
CALL RETARDO
MOVLW 02H
MOVWF PORTD
CALL RETARDO
MOVLW 08H
MOVWF PORTD
CALL RETARDO
INCF VALOR2,1; Terminando un ciclo incrementa una segunda
; variable en 1
BTFSS VALOR2,3; Pregunta si la segunda variable ah llegado a 8

GOTO RETR ;Si no, repite el ciclo


GOTO INICIO;Si si, se repite el programa desde INICIO

Ciclo de retardo anidado que cuenta 8 veces el ciclo de un


contador que cuenta 128 veces, es decir (8*128 = 1024 ciclos de
reloj)

RETARDO
;Retardos anidados
BCF
STATUS,3;Limpia el bit de desbordamiento
MOVLW
00H
;Pone en cerlos
MOVWF
X
;la variable X
CICLO
INCF X,1
;Incrementa en 1 la variable X
BTFSS X,6
;Pregunta si ah llegado a 128
GOTO CICLOX
;Si no, manda a otro conteo de variable
RETURN
;Si si, regresa a la linea de programa en donde estaba
CICLOX
BCF
STATUS,3;Limpia el bit de desbordamiento
MOVLW
00H
;Pone en ceros la
MOVWF
Y
;variable Y
CICLOY
INCF Y,1
;Incrementa en 1 la variable
BTFSS STATUS,3;Verifica si la variable lleg a 8
GOTO CICLOY
;Si no, Repite el ciclo Y
GOTO CICLO ;Regresa a Ciclo
END

;el programa termina cuando el ciclo Y se haya repetido 128 veces

Resultados

En las pruebas simuladas con el software PROTEUS 8.1 el cdigo de


programa funcion correctamente, aunque tuvimos dificultades con la
parte fsica en las combinaciones de funcionamiento del motor por
introducir incorrectamente la secuencia de pasos, pero nos dimos cuenta
por el comportamiento del motor y solo fue cuestin de reprogramar las
U1
2
3
4
5
6
7
14
13
33
34
35
36
37
38
39
40

18

RA0/AN0
RC0/T1OSO/T1CKI
RA1/AN1
RC1/T1OSI/CCP2/UOE
RA2/AN2/VREF-/CVREF
RC2/CCP1/P1A
RA3/AN3/VREF+
RC4/D-/VM
RA4/T0CKI/C1OUT/RCV
RC5/D+/VP
RA5/AN4/SS/LVDIN/C2OUT
RC6/TX/CK
RA6/OSC2/CLKO
RC7/RX/DT/SDO
OSC1/CLKI
RB0/AN12/INT0/FLT0/SDI/SDA
RB1/AN10/INT1/SCK/SCL
RB2/AN8/INT2/VMO
RB3/AN9/CCP2/VPO
RB4/AN11/KBI0/CSSPP
RB5/KBI1/PGM
RB6/KBI2/PGC
RB7/KBI3/PGD

RD0/SPP0
RD1/SPP1
RD2/SPP2
RD3/SPP3
RD4/SPP4
RD5/SPP5/P1B
RD6/SPP6/P1C
RD7/SPP7/P1D
RE0/AN5/CK1SPP
RE1/AN6/CK2SPP
RE2/AN7/OESPP
RE3/MCLR/VPP

VUSB

15
16
17
23
24
25
26
19
20
21
22
27
28
29
30
8
9
10
1

5
7
10
12
6
11
1
15

IN1
IN2
IN3
IN4
ENA
ENB

VCC

VS

SENSA
SENSB

U2
OUT1
OUT2
OUT3
OUT4

2
3
13

+88.8

14

GND
8

L298

PIC18F4550

salidas.
Figura 1. Conexin del C al mdulo L298 y de ste al motor
Resultados obtenidos en el laboratorio una vez realizada la simulacin se
realiz el circuito fsico utilizando una tablilla de pruebas como se
muestra en la Figura 2.

Figura 2. Motor y mdulo L298 conectados

Figura 3. Circuito ensamblado por completo

Comentarios
Para realizar esta prctica se necesitaron conceptos del funcionamiento
de los motores paso a paso ya que se tuvo que determinar el giro del
motor paso a paso. Esto se debe a que una vuelta completa consiste

en 4 combinaciones binarias, pero cada combinacin significa una


fraccin de giro por lo que era necesario repetir las combinaciones un
determinado nmero de veces dentro de una secuencia.
Para nuestro caso el problema fue hallar la combinacin correcta para
realizar la vuelta completa ya que la informacin investigada era
equivoca para nuestra aplicacin.

Referencias bibliogrficas
-

Microcontroladores Motorola-Freesclae: Programacin,


familias y sus distintas aplicaciones en la industria
Juan Carlos Vesga Ferreira
Primera Edicin
Alfaomega Grupo Editor, S.A. de C.V., Mxico
Freescale Semiconductor

Microcontroladores: Fundamentos y aplicaciones con PIC


Fernando E. Valds Prez, Ramon Palls Areny
Primera Edicin
Alfaomega Grupo Editor, S.A. de C.V., Mxico
Freescale Semiconductor

Vistronica.com/robotica/modulo-l298n.para-control-demotores-detail.com

You might also like