motor de CC y foto colgada (no estable)

Estoy haciendo funcionar un motor de CC con un microprocesador de la familia PIC16. Lo conecto a mi pc, puedo enviar un comando para hacer funcionar el motor en cierta velocidad o parar.

Funciona para motor pequeño (3V, 100 mA). Pero en el momento en que uso un motor más grande (3V, 300 mA), solo puedo enviar 1 comando, por ejemplo, correr rápido. Después de eso, la imagen se negó a procesar el siguiente comando. Incluso cuando apagué el dispositivo y lo volví a encender, el motor seguía ejecutando el último comando. Parece un endurecimiento de la memoria o algo así.

No estoy seguro de lo que sucedió. ¿Podría ser una corriente de retroceso del motor la que causó la inestabilidad? Estoy usando TIP120 como controlador de motor. - He puesto capacitores, diodos alrededor del controlador del motor. Pero no ayudó.

¿Alguien me puede ayudar?

Aprecio tus pensamientos.

ingrese la descripción de la imagen aquí

Incluya un esquema o un boceto del circuito en cuestión para ayudarnos a comprender el problema.
Actualización: Traté de usar 2 fuentes de alimentación según la sugerencia de @leon. Funciona bien. Pero, ¿hay alguna manera de usar solo 1 fuente de alimentación? Tener 2 fuentes de alimentación no es eficiente en mi humilde opinión.
Una imagen no es lo mismo que un esquema, pero ya señala algunos problemas. El problema más obvio es que no hay límite de derivación en el PIC. Coloque una cerámica de 100 nF lo más cerca posible de los pines PIC Vdd y Vss. No estoy siguiendo lo que el diodo superior está tratando de hacer. Nuevamente MUESTRE UN ESQUEMA. Esto fue solicitado por una razón.

Respuestas (6)

Federico Russo lo dijo bien: "desacoplamiento, desacoplamiento, desacoplamiento". Los circuitos integrados como los microcontroladores requieren fuentes de alimentación uniformes, es decir, sin perturbaciones. Los pequeños picos negativos pueden causar un reinicio o hacer que su software se vuelva loco. Los picos positivos pueden hacer lo mismo e incluso dañar la pieza. Definitivamente quieres deshacerte de esas molestias. Hay dos formas de atacar el problema, y ​​la mejor manera es aplicar ambas.

Primero considere la causa de las perturbaciones. Esto suele ser difícil de averiguar, pero en nuestro caso definitivamente es el motor. Coloque condensadores entre la fuente de alimentación y tierra, cerca de los pines de conexión del motor. Tener un condensador electrolítico de 100 m F (el valor real depende de la corriente del motor, pero este es un buen comienzo), y coloque un 1 m F capacitor cerámico paralelo a él. Se necesita esto último porque el elco no es bueno en frecuencias altas, y ahí toma el relevo la cerámica.
Este es el primer paso. No solo es necesario para resolver nuestro problema, también reduce la EMI (interferencia electromagnética). Hay regulaciones sobre el nivel de EMI que puede crear.

Luego vamos al microcontrolador. La fuente de alimentación no estará necesariamente limpia todavía, puede haber otras fuentes de ruido. Aquí hacemos lo mismo: colocamos condensadores en los pines de alimentación, entre V D D y tierra, lo más cerca posible de los pines. El microcontrolador no usa alta corriente, por lo que no necesitaremos el 100 m F el co. Usualmente un 100 norte F la cerámica servirá. Para calmar sus nervios :-) puede agregar un 1 m F .
¿Qué otra cosa? Algunos otros pines también pueden ser sensibles al ruido. Mira el pin de reinicio. No es bueno asegurarse de que su fuente de alimentación esté limpia si el microcontrolador se reiniciaría debido a picos en el pin de reinicio. Entonces también una tapa entre reinicio y tierra, nuevamente lo más cerca posible del pin. 100 norte F está bien.

+1 por pensar en el pin de reinicio (aunque la mayoría de los circuitos de reinicio ya incluirán el capacitor)
Gracias @stevenh. Déjame digerirlo primero. Todavía soy nuevo.
Encontré el artículo de desacoplamiento cvel.clemson.edu/emc/tutorials/Decoupling/decoupling01.html
@mlam: con respecto al artículo. El 1 nF (0.001 m F) puede ser un poco demasiado pequeño. Para muy baja potencia, sugiero al menos 10 nF, de lo contrario, 100 nF

Las placas de prueba sin soldadura casi nunca son apropiadas para la electrónica de potencia de ningún tipo. (¡y especialmente no cambiar!)

En comparación con una placa de circuito impreso, tienen poca inductancia parásita, resistencia, capacitancia y susceptibilidad al ruido.

No espere que conduzcan más de 20-50 mA sin causar caídas de voltaje no deseadas en algún lugar de su circuito.

Si está desesperado por hacer que su circuito funcione, puede intentar colocar condensadores de derivación en la placa, pero de lo contrario no se molestaría en intentar diagnosticar el problema, y ​​en su lugar movería todos sus circuitos de alimentación de la placa sin soldadura a una PCB o al menos una placa vectorial.

también causan rutas de retorno a tierra ridículamente largas que pueden causar todo tipo de problemas. Esta es realmente la mejor respuesta, las otras son solo curitas para el problema subyacente.
Gracias @Jason. Tomare nota de sus sugerencias. La razón por la que estoy usando protoboard porque soy nuevo en esto.

El ruido pasa del circuito del motor al circuito PIC. La forma más probable de que el ruido llegue al PIC es a través de la fuente de alimentación, como señaló Leon. ¿De dónde proviene el suministro de PIC? No haga funcionar el motor y el PIC desde el mismo suministro regulado. Probablemente no necesite un suministro regulado para el motor. Como mínimo, filtre un poco el suministro al PIC. Lo mejor sería darle a la electrónica un regulador separado, preferiblemente con un diodo y una tapa de almacenamiento al frente. De esa manera, el suministro de PIC seguirá siendo estable, incluso si el suministro principal falla ocasionalmente a tierra durante períodos breves.

Sin embargo, hay más en la inmunidad al ruido que solo la fuente de alimentación. El mejor ataque contra el ruido es evitar hacerlo en primer lugar. ¿Tiene un amortiguador en el motor, o al menos una tapa pequeña? Usted no quiere mucho más que ejerza presión sobre el controlador del motor PWM, pero es útil un poco para limitar la pendiente de voltaje del retroceso inductivo y la conmutación.

¿El PIC tiene una buena tapa de derivación lo más cerca posible entre sus pines de alimentación y tierra? Ciertamente debería. ¿Qué mantiene alto el MCLR? En un entorno de alto ruido, MCLR no debe tener una impedancia demasiado alta, de lo contrario captará ruido y reiniciará aleatoriamente el procesador. ¿Este PIC tiene un pin PGM? Si es así, debe evitarse que capte ruido al igual que MCLR. También deshabilite la función PGM a menos que realmente la necesite. ¿Qué pasa con el retroceso inductivo del motor? ¿La corriente tiene un camino por recorrer sin crear picos de alto voltaje? Estos no solo podrían dañar el controlador del motor, sino también volver al PIC y causar un funcionamiento impredecible. ¿Qué pasa con el suelo? ¿Se mantiene la corriente del motor fuera de la tierra del PIC? Debería ser.

¿Cómo mantiene la corriente del motor fuera de la tierra del PIC? ¿Necesitas mantener los terrenos separados para eso? Cuando conduzco un motor de CC con un micro, conecto la fuente a tierra y coloco el motor entre V+ y el drenaje. Entonces, la tierra del FET debe estar conectada a la tierra del micro para poder conducir la puerta, ¿verdad?
Sí, en última instancia, deben estar conectados entre sí. Sin embargo, la corriente del motor será ruidosa y grande, por lo que no querrá que cruce el plano de tierra o la red de tierra cerca del PIC. El circuito PIC y el circuito de alimentación del motor deben tener cada uno sus propias redes de conexión a tierra unidas en un punto, probablemente en la fuente de alimentación principal.
Ah, ya veo lo que quieres decir. Ya hice esto un par de veces. Tnx y +1 por la respuesta :-)
Gracias por tu comentario @Olin. Esto es muy bueno, pero todavía soy nuevo. Así que necesito tiempo para asimilar sus sugerencias.
@Olin, ¿te refieres al regulador de voltaje 7805? Adjunto la foto de mi protoboard. No uso amortiguador. Le puse condensadores electrolíticos para ambas patas del motor. El tercer párrafo es un tema interesante. Pero como soy nuevo no se como hacerlo. ¿Tienes una muestra de cómo hacerlo? Todo el artículo o libro que leo, nunca cubre el tema del que hablaste. Me gusta sobre cómo cubrir el MCLR y PGM.
Traté de separar el poder. Funciona bien. Pero tener energía separada no suena eficiente. ¿Hay alguna manera de usar 1 fuente de alimentación e inmune al ruido?
Ahora que ha adjuntado una imagen, es evidente que no tiene un condensador de derivación en el microprocesador. Agregue uno antes de intentar cualquier otra cosa.
@mlam es preferible tener un solo plano de alimentación y tierra, sin embargo, debe asegurarse de que las corrientes altas no fluyan a través de sus componentes electrónicos sensibles. Las corrientes de alta frecuencia no siguen el camino de menor resistencia a tierra, sino el camino de menor inductancia, utilícelo a su favor. (probablemente es poco lo que puede hacer en este sentido en una placa de pruebas)

Use suministros separados para el PIC y el motor y conecte las dos tierras en un solo punto. El filtrado del suministro de PIC debería ayudar, con un supresor de voltaje transitorio, si aún tiene problemas.

Gracias por tu comentario @Leon. Todavía soy nuevo. Así que tengo que digerir tu sugerencia.
Hola @Leon, después separé el poder. Funciona bien. Pero tener energía separada no suena eficiente. ¿Hay alguna manera de usar 1 fuente de alimentación pero evitar el ruido? ¿Cómo se filtra el suministro de PIC?
@ usuario4185 (¿no tienes un nombre?): desacoplamiento, desacoplamiento, desacoplamiento. En la foto solo veo dos condensadores electrolíticos. Coloque cerámicas más pequeñas paralelas a ellas y colóquelas cerca de los pines del regulador de voltaje. Coloque condensadores en los pines de alimentación del microcontrolador, 1uF//100nF.
Gracias Federico. Soy nuevo. Escuché sobre el desacoplamiento, pero no sé cómo hacerlo. Lo buscaré en Google. pero si tienes un buen enlace/artículo al respecto, será genial.
Encontré un artículo sobre desacoplamiento, ¡gracias! cvel.clemson.edu/emc/tutorials/Decoupling/decoupling01.html

debe verificar h21e del transistor, debe usar par darlington o mosfet, ya que la carga del motor se traduce en carga en el pin pic. cuando la carga es pequeña, la imagen puede conducir el transistor, cuando la carga es más grande, el transistor bipolar requerirá una corriente = 300 mA / h21e para estar abierto.

TIP120: ¿Tensión de saturación del colector-emisor 4 V? su suministro es de 3 V :). Ponga mosfet en su lugar. Tu esquema está mal.