Está en la página 1de 6

 

Objetivo.
Controlar el sentido de giro de un motor en CD utilizando un PIC y
dispositivos de acoplamiento entre éste y el motor. Además,
utilizar la computadora como interfaz con el usuario para ofrecerle
un menú de control del motor.

Introdu cción .
Una de las aplicaciones prácticas de los micro-controladores es el
control de un motor de CD. En la industria y en la robótica se hace
uso de este tipo de motores, donde es necesario configurar al motor
para que gire en un sentido o en otro. Para ello se hace uso de un
Puente H. El puente HL293B es un circuito que simplifica el
control de un motor en CD. No tan sólo ayuda en lo relacionado en
cuanto al giro del motor o paro del mismo, sino también aporta en
cada uno de sus cuatro canales una corriente de 1 A.

Puen te HL293B.
El puente HL293B contiene cuatro drivers push-pull capaces de
entregar corrientes de salida de 1 A por canal. Cada canal es
controlado por una entrada lógica compatible TTL, y cada par de
drivers (un puente completo) está equipada con una entrada des-
 
 
 
  1  
 
 
 
 

habilitadora, la cual apaga los cuatro transistores. Una entrada de


alimentación separada es provista para la lógica por lo que puede
aportar un voltaje más bajo para reducir la disipación. La figura 1
muestra la disposición de los pines del circuito.

Figura 1.

En la figura 2 se muestra el diagrama de conexión del puente


HL293B con un motor para control del mismo en los dos sentidos.
Además la tabla indica los valores lógicos para cada una de las
entradas. Notar que Vss se refiere a la fuente de alimentación del
circuito y Vs de refiere a la fuente de alimentación del motor.

Dr.  Oscar  L  Pérez  Castañeda   Electrónica   IT  Tehuacán  


 

Figura 2.

En la figura 3, se muestra la mitad de un puente HL293B y su


conexión.

Figura 3.

 
 
 
  3  
 
 
 
 

Es importante notar que en la figura 3 no se han agregado los


diodos de protección, para simplificar la figura.

De acuerdo a las figuras 2 y 3 se puede obtener la tabla 1 de lógica


para el funcionamiento del puente HL293B.

Vinh A B Acción del


motor.

H L H Gira a la derecha.

H H L Gira a la izquierda.

H L L Paro rápido.

H H H Paro rápido.

L * * Giro libre.
Tabla 1 de lógica.

Ejercicio.
Programar un PIC para que controle el sentido de giro de un motor
de CD, utilizando el puente HL293B. Se debe presentar un menú
al usuario a través de la computadora. La programación debe
realizarse en C del CCS. Simular la comunicación serial,
implementar tal comunicación y probar su correcto
funcionamiento.

Progr ama.

#include <16F877A.H>

#fuses XT,NOWDT // Indica la utiliación de oscilador externo y


#use delay(clock = 4000000) // Fija la freceuncia del oscilador

Dr.  Oscar  L  Pérez  Castañeda   Electrónica   IT  Tehuacán  


 

#use rs232(baud = 9600, bits = 8, parity = N, stop = 1, xmit = pin_C6, rcv = pin_C7)

# byte tris_a = 0x85 //Variable tris_a en la localidad 85h de la RAM.


# byte puerto_a = 05 //Dirección del puerto A

void main() {

set_tris_a(0x00); //Se configuran A0, A1 y A2 como salidas.

char comando;
//

printf("Control de motor. \n \r");


printf("IT Tehuacán \n ");
printf("ELECTRONICA \n");
printf("\r");

do {

printf("MENU: \n");
printf("\r");
printf("Giro a la derecha ======> [a]\n");
printf("\r");
printf("Giro a la izquierda ======> [b]\n");
printf("\r");
printf("Parar motor ======> [c]\n");
printf("\r");
printf("Giro libre ======> [d]\n");
printf("\r");
printf("Salir ======> [s]\n");
printf("\n\r");
while(!(comando = getc()));
switch (comando) {
case 'a':

 
 
 
  5  
 
 
 
 

output_A(0x05);
break;
case 'b':
output_A(0x06);
break;
case 'c':
output_A(0x04);
break;
case 'd':
output_A(0x00);
break;
case 's':
printf("Bye, Au-revoir, Hasta luego. \n \r");
break;
default:
printf("Comando no existente . \n \r");
printf("\n\r");
}
} while(comando != ('s' || 'S'));
}

Simulac ión del circuito.

Dr.  Oscar  L  Pérez  Castañeda   Electrónica   IT  Tehuacán  

También podría gustarte