¿Cómo atacas a una nueva tabla?

24

Obtienes tu PCB del fabricante. Es un nuevo diseño, por supuesto, ha incluido todas las partes principales, pero sabe que va a haber problemas. Hay demasiadas cosas que pueden causar problemas, por ejemplo:

  • Errores en el esquema
  • Errores en el diseño, no encontrados por ERC / DRC
  • Partes mal colocadas durante la soldadura
  • Pantalones cortos y similares durante la soldadura
  • cualquier combinación de lo anterior

Últimamente he tenido dos tableros relativamente complejos en los que básicamente tuve que desmontar todos los tableros después del ensamblaje para localizar el error. Encontré los errores, pero las tablas eran chatarra.

He intentado comenzar con el mínimo de piezas y las que no se pueden soldar a mano (estoy usando pasta, plantilla y tostadora). Por lo general, esta sería la MCU, el conector JTAG y algunos condensadores. Luego, gradualmente, estoy poblando otras áreas al mismo tiempo que verifico si hay problemas.

Este enfoque funciona, pero es realmente lento. También tengo que comentar / comentar cualquier código que asuma la presencia de algún hardware en particular.

¿Alguien tiene consejos o sugerencias sobre cómo abordar los PCB de nuevo diseño?

EDITAR: Estoy pensando principalmente en el tipo de problemas que causan la muerte de su placa, como los cortos ocultos de riel eléctrico, o cualquier cosa que bloquee la MCU.

    
pregunta morten

8 respuestas

10

Decidí que el hecho de prepararse con anticipación es una pérdida de tiempo, a menos que haya aspectos del rendimiento de una parte que necesite medir por sí mismo.

Incluso creo que construir la tabla en pedazos es una pérdida de tiempo. La depuración inicial del hardware solo toma uno o dos días. Cualquier problema sutil no se mostrará hasta la integración de software de todos modos. Prefiero depurar un circuito (el completo) que varias reducciones ad hoc del circuito.

¡Solo construye la cosa! Montar todo el tablero y encenderlo. Mira la tensión de alimentación. ¿Cuántos mA dibuja? ¿Qué parte se está quemando? ¿Qué parte es cálida? Luego, intente grabar el firmware en cualquier microcontrolador que esté en la placa. Entonces comience a escribir el firmware. Pon el reloj en marcha y alterna un pin. Obtener comunicación en serie (o lo que sea) arriba. Ahora escribe programas de prueba para cada periférico. Luego cree el dispositivo de prueba de producción y comience a escribir el firmware "real".

Editar:

Al encontrar rieles atascados

Si un riel de suministro está atascado a tierra (mide 0 ohmios con un ohmiómetro), enciéndalo en un banco de alimentación. Ajuste la tensión normalmente y el límite de corriente a unos pocos cientos de mA. Imprima el diseño de PCB en papel y encuentre un DMM que mida los microvoltios. Mida los microvoltios comenzando en los terminales de suministro y anote las caídas de voltaje en la impresión de la PCB. Al observar las diferencias de microvoltios, puede rastrear exactamente a dónde va la corriente sin despoblar o cortar la PCB. Esta técnica es mejor que usar un ohmiómetro porque puede bombear mucha corriente a través del circuito, más de lo que cualquier óhmetro normal suministrará.

Una técnica similar funciona para encontrar trazas en cortocircuito en un tablero que de otro modo estaría poblado. Ejecute el tablero y use un alcance para encontrar trazas "digitales" que se encuentren en un rango de voltaje intermedio.

    
respondido por el markrages
20

Lo hago rellenando el tablero con el mínimo inicial inicialmente, haciendo funcionar primero el suministro, luego la MCU, luego agregando los distintos subsistemas uno por uno y probándolos antes de continuar, escribiendo el software de prueba según sea necesario. No encuentro el proceso en absoluto lento.

He probado tableros de cualquier complejidad. Cuesta extra pero vale la pena.

    
respondido por el Leon Heller
11

Solo empoblo a circuitos muy pequeños. Luego sueldo los pequeños circuitos en proto-tableros. Si se trabaja con chips SMD, es útil obtener los adaptadores SMD- > Thru-hole.

Esto básicamente te da "bloques de construcción". Luego sueldo estos bloques de circuitos en un kit de desarrollo o en una PCB antigua con la MCU que estoy tratando de usar. Se ve atroz, con cuatro o cinco PCB pequeños diferentes que cuelgan de uno más grande, pero funciona.

Una vez que tengo los bloques de construcción trabajando en una placa de desarrollo, me muevo a una PCB. Si el esquema cambia en absoluto al crear el PCB, vuelvo, repito los bloques de construcción y los pruebo en la placa de desarrollo nuevamente.

En una nota al margen, en lugar de comentar el código, debe considerar el uso de las directivas #define y #ifdef preprocesador. Hace que sea mucho más fácil agregar y eliminar bloques funcionales de código en una MCU.

    
respondido por el ajs410
8

Con tableros de cualquier complejidad, es casi tan importante desarrollar un plan de prueba como desarrollar el tablero. Incluso al inicio del diseño del tablero, es una buena idea saber qué va a probar, aunque la implementación aún no existe; "Diseño para prueba" como dicen. Asegúrese de llevar las señales clave a los parches de prueba. Intente dividir el diseño para que los subsistemas individuales puedan activarse de forma independiente o lo más independientemente posible.

    
respondido por el JustJeff
7

Supongo que una pregunta clave es: ¿Cuál es la lista de verificación previa al vuelo antes de lanzar una placa a producción? Mi lista previa al vuelo es:

  1. Revisión de diseño esquemático
    1. Nombres de red y puertos fuera de la hoja
    2. pines de la fuente de alimentación conectados
  2. Esquema DRC
  3. Matorrales de huella
    1. Número de pieza completo del fabricante
    2. El número de pieza coincide con la huella en la PCB y el pinout en el esquema
    3. El número de pin de la huella está "en el lado derecho" y correcto
    4. Se revisaron las dimensiones de la huella para determinar el tamaño de los orificios, el espacio libre, las salidas, etc.
    5. Los conectores de acoplamiento están orientados correctamente; pines 1 a 1, 2 a 2, etc.
  4. Dimensiones y agujeros de PCB
  5. PCB DRC
  6. Los dibujos fabulosos tienen todas las capas y salidas de llamadas.

Esta comunidad de respuestas wiki'd.

    
respondido por el Toybuilder
4

En un diseño totalmente nuevo, generalmente utilizo un enfoque de dividir y conquistar.

Intento aislar los bloques arquitectónicos principales y enciendo cada sección de forma independiente mediante interruptores / suministros de CC / potenciómetros, etc. para simular las dependencias necesarias para que el circuito funcione.

Este enfoque generalmente no es difícil cuando se trata de fuentes de alimentación. La mayoría de los conversores solo necesitan entradas y quizás algunas señales lógicas para comenzar a alejarse (y con suerte no liberando el humo mágico de fracaso).

Los tableros que son segundos / terceros giros (limpiezas) generalmente no necesitan tal diligencia. Es posible que solo aísle las partes del circuito que se cambiaron, pruébelas de forma independiente y guarde las pruebas en el resto de los circuitos para el encendido total.

No olvides tu equipo de protección personal. Me siento muy incómodo al encender cualquier cosa con los componentes expuestos sin mis gafas de seguridad (y, a veces, tapones para los oídos ...)

    
respondido por el Adam Lawrence
4

Lo que dijeron los otros muchachos es válido, pero me gustaría agregar mi valor de 2 centavos.

Lo mejor que puedes hacer es no cometer errores en primer lugar. Parece tonto mencionar esto, pero muy a menudo esto se pasa por alto. Haga una revisión esquemática y de diseño de PCB. Haga que varias personas vean su diseño, incluso los ingenieros principiantes. Use las reglas de diseño en su software. Use cualquier recurso disponible para asegurarse de que su diseño sea bueno. Tenga buenas prácticas de ingeniería para mejorar sus probabilidades de contraer un error.

En los últimos 20 años, y habiendo diseñado docenas y docenas de PCB (algunas con 14 capas y 2,000 componentes) solo he tenido DOS pcb que no se podían utilizar en la primera ronda de prototipos. Por supuesto que he tenido errores, pero solo dos tablas fueron "de ladrillo".

En todos los casos, los prototipos se rellenaron completamente antes de que yo comience a depurarlos. Sacaría los rieles eléctricos para asegurarme de que no hubiera cortocircuitos. Luego haga una inspección visual utilizando un microscopio. Entonces enciéndelo. Después de eso, comenzaría una prueba metódica y una sesión de depuración, trabajando en pequeñas secciones del circuito a la vez hasta que todo esté probado y funcionando. En la mayoría de los casos, haría un par de cambios y entraría en la producción en volumen con la próxima revisión de la PCB.

Nada de esto hubiera sido posible sin grandes esfuerzos para reducir los errores por adelantado.

    
respondido por el user3624
3

Bueno, uno de los primeros pasos para evitar que aparezcan redes cortadas en primer lugar es hacer un buen uso de las comprobaciones de las reglas de diseño en el software de su placa. Ambos a nivel esquemático para asegurarse de que las redes no estén unidas involuntariamente cuando no deberían estar; y en el nivel de PCB para asegurarse de que haya suficiente espacio entre las redes.

Si hay elementos de diseño que no se han probado, en lugar de abordar un diseño completamente nuevo en una placa, intento crear tableros de prueba de prueba de prueba de rendimiento y de rendimiento en PCB baratos (como BareBonesPCB de Advanced Circuit) Servicio: dos capas, sin máscara de soldadura, alrededor de $ 80 por un turno de 24 horas).

Incluso cuando hago una tabla completa, en las tablas de la primera generación, me gusta colocar muchos encabezados de ruptura. En algunos casos, puede rellenar dos PCB idénticos, uno con la parte "estable", con los pines del encabezado saliendo hacia la parte superior; y otra con la parte de "prueba", con receptáculos de clavija de entrada inferior. Si todo funciona bien, puedes terminar de llenar ambos tableros. O bien, puede girar nuevas versiones del circuito de "prueba" que puede intercambiar en su lugar.

    
respondido por el Toybuilder

Lea otras preguntas en las etiquetas