¿Qué / quién determina qué microcontrolador utiliza una empresa para un producto?

Déjame explicarte con una historia.

Cuando estaba en mi última compañía de tecnología, muchos vendedores de microcontroladores venían a venderme sus microcontroladores. Fui el primer guardián de la puerta como Tecnólogo en la empresa, y mi recomendación iría a los equipos de Ingeniería, equipos de desarrollo de productos y más tarde Adquisiciones. Mi primera pregunta después de que el vendedor me ofreciera un chip (generalmente con un número por chip) sería: ¿Cuál es su apoyo y cuánto me costaría?

Para la mayoría de las empresas, especialmente aquellas que tienen un ciclo de productos repetitivo estricto, es muy difícil trasladar su base de código a un chip de otro proveedor, incluso si el costo es menor, el chip tiene mejores características o es más rápido. Tendrán que desarrollar una base de código y pasar por pruebas de confiabilidad y otras certificaciones (si es necesario) para un nuevo chip, y mucho menos un proveedor diferente. Además, pueden tener que contratar y capacitar a personas y fomentar la experiencia. Todo esto hace que elegir y cambiar de proveedor sea una decisión estratégica. Si el proveedor puede proporcionar asistencia para mitigar algunos de estos riesgos, eso es muy útil. Para pedidos grandes, también pueden estar dispuestos a ayudar con parte del trabajo de desarrollo, bajo el marco legal y de propiedad intelectual adecuado.

Los equipos de “Tecnología” (diferentes del equipo de Ingeniería o responsabilidad adicional en unos pocos seleccionados del equipo de Ingeniería) generalmente producen una proyección del panorama tecnológico y diseñan una estrategia tecnológica general. Pero una estrategia ideada se desarrolla en torno a todos los actores clave de la empresa, a saber, Tecnología (otros equipos), Desarrollo de productos, Ingeniería (Hardware, firmware, software), Compras e incluso Marketing. Después de eso, la última palabra es el CTO (a quien los equipos de tecnología generalmente informarían) o el CEO.

Para las nuevas líneas de productos que no pueden aprovechar los activos existentes de otros productos, o una nueva puesta en marcha, generalmente es solo cuestión de experiencia (o nivel de comodidad), características y costo y nivel de soporte. El costo es un factor más amplio que solo el costo por chip. Incluiría, el costo de las herramientas y los kits de evaluación, las herramientas de desarrollo y las licencias de software (recientemente elegí un proveedor con buen soporte de Linux, debido a las herramientas de desarrollo baratas y sin costos de licencia), los costos de herramientas durante la fabricación (por ejemplo, cosas de muy bajo nivel , el diseño basado en el paquete PDIP puede terminar costando mucho menos) y los costos de envío (es mejor si un componente está disponible localmente donde se realiza su ensamblaje, que el envío, puede depender del volumen).

En empresas más pequeñas y nuevas empresas, es “religión”, o impulso / familiaridad y un conjunto de conocimientos y firmware preexistentes que tienden a elegir directamente los microcontroladores. Los factores en las empresas más grandes han sido cubiertos por dos excelentes respuestas anteriores, que están mucho más impulsadas por la economía.

Su pregunta me recuerda un episodio de EEVblog donde Dave Jones sugiere que los ingenieros NO deben casarse con ninguna marca o familia en particular; en su lugar, deberían hacer su búsqueda paramétrica Digi-Key en todas las marcas y familias de microcontroladores, y luego reducir las opciones a una o unas pocas que se ajusten a las necesidades al menor precio. Majaderías.

En empresas más pequeñas, empresas de nueva creación, pequeñas consultorías y otras situaciones de ‘one man band’, a menudo, incluso generalmente, una persona dictará la marca del microcontrolador y la elección de la familia porque eso es con lo que ya están familiarizados, incluso si eso no es óptimo elección. A lo sumo, elegirán un miembro dentro de una familia y marca con la que estén familiarizados y que cumpla más con los requisitos.

Para algunas personas, estar casado con una marca e incluso una familia dentro de una marca de microcontroladores es una cuestión de “religión” – “Mi elección de microcontrolador es mejor que la suya debido a A, B y C (a veces con la implicación de que otras personas las opciones son inferiores, a lo que otra persona puede responder con un fervor casi idéntico debido a razones X, Y y Z). Afortunadamente, este tipo de pensamiento en blanco y negro se está desvaneciendo, pero todavía está ahí afuera.

En la superficie, tal deshierbe puede parecer irracional, ineficiente, no simpatizante de las necesidades del proyecto / producto, negligente de la economía (pagado por otra persona), etc. Pero aquí hay muchos matices. Cuando ha estado trabajando en este campo durante algún tiempo, tiende a desarrollar (a) una valiosa experiencia específica para una marca / familia, (b) un conjunto de controladores de dispositivos para periféricos y chips comunes que se sabe que funcionan perfectamente en un marca / familia específica, y (c) funciones / clases para tareas comunes, probadas y optimizadas para una marca / familia / arquitectura / tamaño de bits de datos en particular (8 bits, 16 bits, 32 bits, etc.).

Cada marca y familia de microcontroladores también necesita su propia cadena de herramientas: compilador, enlazador, depurador, sistema de fabricación, quizás un RTOS. Algunas cadenas de herramientas y RTOS son gratuitas, algunas son de bajo costo y otras tienen un precio exorbitante. Probablemente no tiene sentido gastar $ 1 000 o $ 10 000 en una cadena de herramientas para un microcontrolador nuevo con el que no está familiarizado cuando solo va a ganar 10 o 100 o incluso 1000 de algo, todo para ahorrar $ 1 o $ 2 por unidad hecha, por ejemplo, cuando considera el tiempo necesario para familiarizarse y ser competente en esa nueva cadena de herramientas.

Si usted es el tipo de ingeniero en electrónica / sistemas embebidos que trabaja en un proyecto tras otro, esta experiencia aumentada, biblioteca de controladores para un conjunto de chips de terceros con los que está familiarizado para realizar un montón de tareas comunes, y biblioteca de Las funciones para “hacer cosas” pueden marcar la diferencia entre tomar 3 semanas para desarrollar una solución o 3 meses porque hay que volver a desarrollar “la rueda”.

  1. ¿Alguien en desarrollo tiene las habilidades para usar las herramientas?
  2. ¿Qué tan eficiente es la reutilización del código de proyectos anteriores?
  3. ¿Qué bibliotecas están disponibles para hacer la vida más fácil?
  4. ¿Cuáles son las capacidades de IO? ¿Son suficientes?
  5. ¿Cuál es el costo por unidad?
  6. ¿Qué es el TCO?
  7. ¿Qué memoria se necesita para el proyecto?
  8. ¿Cuál es la escala de la capacidad de procesamiento estimada?
  9. ¿Cuál es el uso de energía?

En la mayoría de los casos, donde el microcontrolador es solo un IC de soporte, la preferencia del equipo es el factor más importante.