En robotica se emplea mucho el control de motores DC para hacer la inversion de giro, como sabemos un motor de corriente continua tiene 2 polos: positivo y negativo, para hacer la inversion del motor solo tenemos que invertir la polaridad de la fuente y conectar al motor DC.
Inversion de giro para motor DC con el pic16f84a con puente H
Este programa controla un motor DC mediante un swicth en el puertob (Rb0) y utilizando Rb1 y Rb2 del puertob como salida para enviar los pulsos que invertiran el giro del motor DC, en el circuito deberan conectar ademas el cristal de 4 mhz y su respectiva alimentacion de 5Vdc.
Q1,Q2,Q3,Q4=BC548 para motores pequeños y TIP41 para motores grandes.
R1,R2,R3,R4= 300 ohmios.
;Programa para inversion de giro de motor DC
list p=16f84a ; declaramos el pic que usaremos
; Declaracion de registros a usar
puertob equ 0x06
trisb equ 0x86
status equ 0x03
; Configuracion de puertos
org 0x00
bsf status,5 ; nos vamos al banco 1 de la memoria del pic
movlw b'0000001' ; guardamos en el registro W a Rb0 como entrada
movwf trisb ; y Rb1 a Rb7 como salidasy mandamos lo de W a trisb
bcf status,5 ; regresamos al banco 0 de la memoria del pic
; Programa principal
inicio btfsc puertob,0 ; testeamos Rbo (pin6) si esta en 0 o 1
goto izquierda ; vamos a la etiqueta izquierda
goto derecha ; vamos a la etiqueta derecha
izquierda bsf puertob,1 ; encendemos pin Rb1
bcf puertob,2 ; y apagamos Rb2 para giro a la izquierda
goto inicio ; regresamos a inicio a ver si cambio el swicth
derecha bcf puertob,1 ; apagamos pin Rb1
bsf puertob,2 ; y encendemos Rb2 para invertir giro de motor
goto inicio ; regresamos a inicio a ver si cambio el swicth
end ; y terminamos
Un proyecto mas interesante aplicando el control de un motor DC , ascensor de 4 niveles, para que lo bajen.
http://www.proyectoselectronicoos.blogspot.com/
Inversion de giro para motor DC con el pic16f84a con puente H
Este programa controla un motor DC mediante un swicth en el puertob (Rb0) y utilizando Rb1 y Rb2 del puertob como salida para enviar los pulsos que invertiran el giro del motor DC, en el circuito deberan conectar ademas el cristal de 4 mhz y su respectiva alimentacion de 5Vdc.
Q1,Q2,Q3,Q4=BC548 para motores pequeños y TIP41 para motores grandes.
R1,R2,R3,R4= 300 ohmios.
;Programa para inversion de giro de motor DC
list p=16f84a ; declaramos el pic que usaremos
; Declaracion de registros a usar
puertob equ 0x06
trisb equ 0x86
status equ 0x03
; Configuracion de puertos
org 0x00
bsf status,5 ; nos vamos al banco 1 de la memoria del pic
movlw b'0000001' ; guardamos en el registro W a Rb0 como entrada
movwf trisb ; y Rb1 a Rb7 como salidasy mandamos lo de W a trisb
bcf status,5 ; regresamos al banco 0 de la memoria del pic
; Programa principal
inicio btfsc puertob,0 ; testeamos Rbo (pin6) si esta en 0 o 1
goto izquierda ; vamos a la etiqueta izquierda
goto derecha ; vamos a la etiqueta derecha
izquierda bsf puertob,1 ; encendemos pin Rb1
bcf puertob,2 ; y apagamos Rb2 para giro a la izquierda
goto inicio ; regresamos a inicio a ver si cambio el swicth
derecha bcf puertob,1 ; apagamos pin Rb1
bsf puertob,2 ; y encendemos Rb2 para invertir giro de motor
goto inicio ; regresamos a inicio a ver si cambio el swicth
end ; y terminamos
Un proyecto mas interesante aplicando el control de un motor DC , ascensor de 4 niveles, para que lo bajen.
http://www.proyectoselectronicoos.blogspot.com/