¿Hay algún software/extensión de diseño de PCB que pueda realizar la colocación automática de componentes?

Hice muchos PCB caseros, pero tengo un gran problema relacionado con el diseño, solo soy un aficionado a la electrónica en la escuela, así que no tengo esa mente de ingeniero eléctrico para colocar los componentes en el lugar correcto, siempre coloco los componentes cerca uno del otro (en mi punto de vista, lo que a veces puede ser incorrecto) usan el enrutador automático y retroceden esperando que la computadora obtenga el mejor diseño de traza de cobre de PCB.

bueno, esto funciona en un circuito de parpadeo de - 5 componentes - 555, cuando comencé a hacer circuitos un poco complicados (más de 60 componentes) usando el enrutador automático, nunca completaba los rastros. Sé que probablemente si coloqué los componentes en el lugar ideal, el porcentaje podría llegar al 100%, pero no puedo hacerlo.

Todo lo que quiero es un circuito que funcione. No me importa la forma. ¿Hay algún software como EasyEDA o Eagle softcad o cualquier extensión que coloque dichos componentes en el lugar más cercano para hacer que el enrutamiento sea más fácil y mucho más rápido?

Como nota al margen usando mis herramientas, las especificaciones máximas absolutas para cualquier placa PCB que fabrique es PCB de un solo lado y 0,5 mm de ancho de trazo 0,5 mm de espacio libre, sé que si bajo estos números obtendré mejores resultados de enrutamiento y los obtengo, pero falla al hacer el PCB en sí mismo, es decir: transferencia de tóner, grabado... y sé que podría usar puentes, pero quiero una solución de software.

En resumen, quiero una extensión o software relacionado con el diseño de PCB que pueda colocar los componentes automáticamente en el lugar correcto para hacer que el enrutamiento sea más eficiente. ¡Conéctese a un nodo cercano!)

Creo que estás sobreestimando la ubicación de nuestros componentes.
Simplemente coloque y enrute a mano. El enrutamiento automático simplemente no vale la pena. La colocación automática es peor.
Hay bastantes opciones de diseño que probablemente no serán conocidas (por defecto) por cualquier programa que utilice. Por ejemplo, para obtener el mejor diseño de PCB, a veces cambio el orden de los pines del conector durante el diseño. Otro ejemplo: cuando hago una placa de circuito impreso que se apilará encima de una placa de circuito impreso SMPS, usted desea colocar cuidadosamente su circuito sensible: no directamente sobre los inductores o los nodos de conmutación.
Nunca he visto una función de colocación automática que valga la pena. Autorouting es más que suficiente. Utilice este último con moderación y el primero en absoluto.
1) Mantener los componentes relacionados eléctricamente agrupados juntos es algo bueno en el diseño de la placa, ¡así que no tenga miedo de eso! 2) El enrutamiento automático es difícil , por lo que generalmente es mejor aceptar el desafío que es enrutar tableros usted mismo. (También puede ser muy divertido :)
Los resultados del enrutamiento automático rara vez son lo suficientemente buenos como para usarlos y, a menudo, son terribles. Los resultados de la colocación automática nunca son buenos, ni siquiera vayas allí.

Respuestas (2)

Mucha gente ha fallado al escribir dicho software, porque es un tema complejo.

Por ejemplo, con partes (T)QFP y DIP, a menudo la mejor opción de enrutamiento es dibujar algunos trazos debajo del IC, lo que aumenta exponencialmente el espacio de búsqueda para un algoritmo de ubicación, porque permite sacar algunos pines en orden inverso como un autobús separado.

Hay demasiados grados de libertad aquí para buscar una solución óptima en un marco de tiempo razonable, que también es el problema que tiene el enrutador automático, por lo que simplemente se da por vencido en placas complejas.

La respuesta corta: AFAIK no hay un buen software de colocación automática... todavía. Simplemente porque es un problema enormemente complejo.

La respuesta un poco más larga: sus expectativas no están alineadas con el objetivo final de dicho software, por lo que, incluso si existiera, no estaría satisfecho con él. La clave aquí es que " Todo lo que quiero es un circuito que funcione. No me importa la forma ... hacer que el enrutamiento sea más fácil y mucho más rápido " solo funciona para la creación de prototipos o pequeños proyectos de pasatiempos. Resolver problemas complejos solo para acomodar estos requisitos limitados es económicamente inviable. En este documento antiguo que se encuentra en la web, la parte más interesante es una enorme lista de materiales de referencia, que ilustra cuántas personas trabajan en él y durante cuánto tiempo.

Finalmente, la respuesta muy larga es que "colocar los componentes automáticamente en el lugar correcto para que el enrutamiento sea más eficiente" no es el propósito del software de colocación automática. Al menos, no el único. Hay muchos criterios a tener en cuenta, por ejemplo:

  • tamaño de la placa limitado por el diseño del objetivo (por ejemplo, relojes inteligentes);
  • la forma de la placa y algunas ubicaciones de los componentes dictadas por los factores de forma (p. ej., placas base);
  • consideraciones de interferencia (por ejemplo, colocar condensadores de desacoplamiento o separar partes analógicas y digitales)
  • consideraciones de distribución térmica;
  • requisitos específicos de alta frecuencia (la coincidencia de seguimiento requiere espacio adicional);
  • Restricciones tridimensionales entre componentes dentro de la PCB y entre la PCB y las partes circundantes;
  • consideraciones de fabricación (p. ej., "sombreado" de componentes durante la soldadura por ola);

Lo anterior es solo una pequeña porción de lo que el software debe saber para hacer su trabajo. Las listas de restricciones de diseño en el software CAD existente ya superaron lo que el aficionado promedio está dispuesto a ajustar y, sin embargo, no se acercan ni siquiera a lo que es necesario para un diseño completamente automático.

Ahora, considere que dada la cuadrícula lo suficientemente pequeña y el tamaño suficiente de la placa, la cantidad de permutaciones de ubicación de componentes, incluso para proyectos pequeños (como SMPS), crece rápidamente más allá de las capacidades de "fuerza bruta" de las computadoras modernas. Lo mismo ocurre con la cantidad de formas en que se pueden enrutar las trazas para cada una de las ubicaciones anteriores. Multiplique los dos y mezcle opciones multicapa y VIA y obtendrá opciones casi infinitas.

Existía la esperanza de que algún método matemático pudiera producir una solución óptima. Por ejemplo, un enfoque algo ingenuo de minimizar la distancia combinada de ratsnest y el número de intersecciones de cables. Esto rápidamente resultó ser insuficiente. Eche un vistazo al enrutamiento del bus en cualquier placa base: si rompe esos trazos paralelos ordenados, verá un lío loco de cables de aire, en lo que respecta al algoritmo. Y, sin embargo, la ubicación "incorrecta" funciona al final.

Aquí es donde entran en escena los métodos heurísticos, como el algoritmo genético . Si bien no prometen una ubicación óptima, pueden reducir las opciones a algo lo suficientemente bueno para la solución final. De hecho, los fabricantes de chips ya utilizan estos para la colocación y enrutamiento de los circuitos integrados. Si lo piensa, no es muy diferente de colocar y enrutar la PCB. Desafortunadamente, esos gigantes invirtieron tanto dinero en el desarrollo de ese software que es poco probable que lo vea disponible para los aficionados en el corto plazo.