La mayoría de nuestros diseños de PCB suelen consistir en una única PCB en nuestros proyectos de Altium Designer (es el caso del archivo .PrjPcb). De vez en cuando, contamos con algún diseño de varios PCB con diferentes opciones de relleno. Y es cierto que rara vez ocurre que nos encontremos con un proyecto que requiera varias PCB con varias opciones de relleno. Cuando esto ocurre, muchos de nosotros tendemos a quedarnos atascados. En muchas ocasiones he visto a diseñadores duplicar (es decir, copiar y pegar) un proyecto y luego añadir pequeñas variaciones al esquema y/o a la PCB. Y, por lo general, esta práctica resultaría aceptable.Salvo en aquellas ocasiones en que se necesita volver atrás y actualizar el diseño. ¿Cómo podemos gestionar el cambio exacto en ambos proyectos? ¿Cómo garantizar que esos cambios sean idénticos? ¿Cuántas veces se repetirá este escenario (por ejemplo, en las fases de Rev A, B, C, etc.)? En este artículo examinaremos un enfoque para gestionar el diseño de varios PCB dentro de un único proyecto (multiple PCB in one project). Esto garantiza una fuente de información única. Además, examinaremos el ejemplo que utiliza la placa de mi último artículo, Pandemic Prototyping: Building Electronics from your Living Room.
Nuestro objetivo consiste en contar con una fuente única de información para todos los esquemáticos y, al mismo tiempo, tener la posibilidad de realizar variantes del PCB. En este ejemplo, he creado un único esquemático con dos PCB:
Como se puede ver, también hay variantes en la parte superior. He creado dos variantes para mi controlador Kiln: una para la Raspberry Pi (tamaño estándar) y la otra para la Raspberry Pi Zero. He empezado enrutando el diseño del hat de la Raspberry Pi Zero, ya que el tamaño estándar es básicamente una versión ampliada de la Zero. Después de completar el enrutamiento, he copiado y pegado todo el diseño de la PCB en mi PCB de tamaño estándar (PiHat - Full.PcbDoc). Ha sido necesario hacer algunos retoques menores (recortes, vaciados de polígonos, contornos de la placa, etc.), pero los componentes y el enrutado siguieron siendo los mismos.
En mi esquemático, he incluido todos los componentes que existen en ambos diseños (estén rellenos o no):
Como he visto que tenía un montón de espacio extra en el hat de la Raspberry Pi de tamaño estándar, he decidido incorporar mi convertidor de CA a CC en la placa. Pero aquí surgía un problema. Y es que este componente agregado también se importaría al esquemático del hat mi placa Pi más pequeña. Pero como esto no me interesaba, lo he excluido intencionalmente para que no se incluyera en mi PcbDoc:
Y como los componentes no están en el diseño, no generarán ningún error de DRC "no enrutado". Necesitaremos también añadir las opciones DNI ( no instalar, por sus siglas en inglés “Do not Install”) en nuestras variantes de la siguiente manera:
A fin de evitar confusiones, he eliminado por completo el conector de alimentación de CC para la versión de tamaño completo (ya que se utiliza una entrada de CA) y viceversa con la versión Pi Zero.
Una vez que hemos diseñado nuestro esquema, enrutado nuestras tarjetas y configurado las opciones de relleno, necesitamos configurar nuestros archivos de Output Job. Estos archivos de trabajo de salida, o archivos de Output Job, son los encargados de generar los paquetes de fabricación y montaje necesarios para construir cada placa con sus respectivas opciones de relleno. Este es un paso crucial que a menudo se pasa por alto y puede provocarnos un esfuerzo innecesario al generar un paquete para el proveedor.
En este ejemplo, tenemos un archivo de trabajo de salida separado para cada PCB. Con el fin de simplificar, tenemos un único archivo de trabajo de salida para la fabricación y el montaje (que generalmente se divide en dos archivos de extensión .outjob separados en los proyectos de ejemplo de Altium Designer). Y como se puede ver en las Figuras 6 y 7, los archivos .outjob son idénticos excepto por la selección de las variantes y la del PcbDoc. Para las opciones de relleno múltiple, utilizamos las opciones de variantes situadas en la parte superior de la ventana. Generamos un paquete únicamente para la PCB en la que estamos interesados, para rellenar sólo las PCB especificadas. Por ejemplo, para la variante "Pi" (que es para rellenar un hat de Raspberry Pi de tamaño estándar), queremos seleccionar el archivo PCB "PiHat - Full" (es decir, de tamaño completo). No estamos interesados en generar ningún paquete de fabricación y montaje para el hat de la Raspberry Pi Zero. Lo mismo ocurre con el hat de la Raspberry Pi más reducido (Zero). Generamos los archivos necesarios para fabricar y ensamblar sólo la placa que nos interesa.
Por último, para permitir cierta reutilización, utilizamos las cadenas especiales (Special Strings) en el área de configuración de la estructura de carpetas (Folder Structure Settings) de la siguiente manera:
Esto nos permite tener subcarpetas creadas automáticamente en función del nombre de la variante. Y si el nombre de la variante cambia, también lo hacen las carpetas.
Hay más formas de condensar todavía más estos archivos de trabajo de salida, a través de scripts u otros medios, pero eso excede el propósito de este artículo, que es el de mostrar cómo se puede hacer y proporcionar al lector un ejemplo de una de las muchas formas de configurarlo.
En este artículo se han analizado los retos a los que se enfrentan los diseñadores a la hora de gestionar varias placas de circuito impreso a partir de una única fuente de información. En lugar de crear y gestionar múltiples copias de un proyecto, mantenemos un único proyecto de PCB mientras diseñamos para múltiples PCB mediante las configuraciones de los trabajos de salida. Estas configuraciones nos permiten mantener múltiples archivos PcbDoc dentro del proyecto y generar paquetes para esas placas de manera específica. Mediante esta técnica, los diseñadores consiguen ahorrar tiempo y dinero al actualizar un único proyecto, que se despliega en varios PCB.
¿Quiere saber cómo puede ayudarle Altium en su próximo diseño de múltiples PCB? Hable con un experto de Altium y descubra cómo tomar decisiones de diseño con soltura y confianza.