Los pines PIC cambian de estado cuando el motor de CC está conectado

4

Soy nuevo en la programación de PIC, y tengo problemas para obtener el control de un motor de CC. Es un PIC18F25K22 y un controlador TI L293D. La alimentación es suministrada por un regulador lineal de 5V conectado a una fuente de alimentación de escritorio. He configurado el PWM correctamente y se acciona cuando me conecto directamente a la tierra y los rieles de alimentación, sin embargo, tengo un comportamiento extraño cuando conecto los pines del PIC a los pines de control de la L293D. Un diagrama de circuito se muestra a continuación.

Cuando está desconectado, el pin RC1 está bajo y el pin RC3 está alto (0.0V y 5.0V respectivamente). Cuando está conectado, RC1 sube a aproximadamente 0.25V y RC3 cae significativamente a 0.42V, como dice mi multímetro. El L293D tiene diodos internos, y he puesto los condensadores en ambos lados del motor a tierra. Los pines del L293D consumen un máximo de la mitad de la corriente que puede suministrar un pin PIC. Soy nuevo tanto para los PIC como para los motores, por lo que podría ser cualquiera de los dos.

Actualizar

Conecté las entradas y las habilitaciones de la otra mitad de la L293D a tierra, y usé tierra y energía para controlar y habilitar a la mitad que estoy usando. Esto produjo resultados esperados. Dejando el pin 1,2EN conectado a 5V, conecté los pines PIC nuevamente. Esta vez, el motor gira, pero con lentitud. Grabé los siguientes voltajes

1Y = 1.03V 2Y = 0.34V 1A = 0.84V (pin PIC, ajuste alto) 2A = 0.0V (pin PIC, ajuste bajo)

Esto se está construyendo en una placa de pruebas actualmente.

    
pregunta Trenton Holmes

1 respuesta

2

Mi conjetura (en realidad no hay suficiente información para más que una conjetura) es que el riel de suministro de 5V se colapsa cuando el motor se enciende (el motor puede estar parado, demasiado poderoso para su suministro, etc.). Para solucionar este problema aún más, analice el problema:

Primero, desconecte el PIC y el motor y solo concéntrese en el chip del controlador. Asegúrese de que TODAS las entradas estén definidas (alto o bajo), incluso las entradas que no esté usando. Asegúrate de que cualquier salida que no estés usando esté flotando. Ahora, con 5 V en el Vcc del controlador, tome el pin EN alto, alterne una entrada A, y verifique que la salida Y adecuada vaya alta y baja después de la entrada A. Haga eso para ambas entradas A. Si no funciona, registre los voltajes en TODOS los pines (suministro, entrada, salida, incluso GND en caso de que haya cableado incorrectamente algo) del controlador e informe aquí.

Después de que funcione, conecte el motor, vuelva a alternar las entradas A y verifique que las salidas Y cambien como antes y que el motor gire como se espera. Si no es así, registre los voltajes en TODOS los pines del controlador (especialmente los pines Vcc) e informe aquí.

A continuación, conecte el PIC y repita el procedimiento anterior con el PIC que mueve los pines.

Si lo haces metódicamente, encontrarás el problema.

    
respondido por el Fred Hamilton

Lea otras preguntas en las etiquetas