Saltar a contenido

Aplicación del Pensamiento Funcional en el Diseño de Circuitos

Diseñar un proyecto desde una perspectiva de construcción de un sistema, en lugar de simplemente dibujar un circuito o idear un plan.

Antecedentes

En el diseño de programas, nos enfrentamos a una variedad de datos y situaciones complejas. Si los descuidamos, a medida que avanza el desarrollo, la entropía del código aumentará drásticamente. Las funciones y las bibliotecas son herramientas diseñadas para abordar este tipo de problemas. Al encapsular el código capa por capa, obtenemos un sistema organizado desde una perspectiva global, sin tener que preocuparnos por detalles que no nos interesan.

Análogamente, en el diseño de circuitos de hardware, los elementos de construcción de nivel inferior son los componentes discretos, y los módulos que realizan funciones específicas son el equivalente al encapsulamiento de funciones. En un nivel global, podemos llamar a varios módulos para construir una solución de circuito. La idea de encapsulamiento y reutilización nos permite diseñar circuitos de manera más sistemática y de arriba hacia abajo, similar a la construcción de un reino.

Nota: El término "encapsulación" en el primer párrafo es un término de programación de computadoras, mientras que en el resto del texto se refiere a un término de circuitos electrónicos.

Nivel de Componentes

A nivel de componentes, se debe procurar uniformizar las especificaciones de cada elemento (componente). Mi solución personal es utilizar símbolos de componentes y encapsulados de PCB que se encuentren en mi propia biblioteca de diagramas y encapsulados, que he organizado personalmente.

Algunos podrían preguntar por qué es necesario realizar un trabajo repetitivo cuando la mayoría de los símbolos de componentes y encapsulados se pueden encontrar fácilmente en línea, e incluso algunas personas han organizado bibliotecas con más del 90% de los componentes. Como dice el refrán, la base determina la superestructura. Por ejemplo, qué aspecto debe tener el símbolo de un chip para facilitar el enrutamiento, qué tipo de encapsulado de inductor es más fácil de conseguir, si el encapsulado de un MOSFET permite perforaciones para la disipación de calor, entre otros. Incluso las normas establecidas por expertos no necesariamente se adaptarán completamente a sus necesidades. Establecer sus propias normas y construir sobre terreno propio es la opción más sensata.

Nivel de Módulos de Funcionalidad

A partir de los componentes discretos de nivel inferior, podemos construir varios módulos de funcionalidad. Estos módulos de funcionalidad están diseñados para facilitar el desarrollo rápido. Por ejemplo, en muchos proyectos, suelo utilizar circuitos reguladores de voltaje. Puedo seleccionar soluciones sobresalientes, seguir el manual de datos, encapsularlos en módulos con interfaces de función (puertos de entrada/salida) y etiquetar sus atributos (corriente de regulación, eficiencia, etc.). Cuando los necesito, no es necesario preocuparse por la implementación interna de los módulos de funcionalidad. Es como construir con bloques de construcción, apilando los módulos de proyecto desde la parte superior.

Altium Designer nos brinda la capacidad de fragmentar y encapsular. Podemos encapsular los módulos de funcionalidad con los que interactuamos diariamente para facilitar su uso futuro.

Nivel de Proyecto

Cuando llegamos al nivel de diseño del proyecto, la mentalidad modular es claramente evidente. Mediante el diseño jerárquico de diagramas de principio en Altium Designer, podemos centrarnos en las interfaces de cada módulo y operar directamente a través de ellas para lograr la funcionalidad general del circuito. En este modo de diseño, la interconexión entre los módulos no es muy alta, lo que nos permite reemplazar fácilmente los módulos que implementan una determinada funcionalidad en cualquier momento. También podemos reutilizar los módulos mediante la funcionalidad de múltiples canales. La organización clara del proyecto es muy beneficiosa para el diseño modular de la disposición del PCB y la reutilización de múltiples canales en el futuro, lo que facilita la depuración y las actualizaciones posteriores.

Referencias y Agradecimientos

Este post está traducido usando ChatGPT, por favor feedback si hay alguna omisión.