Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistemas Embebidos
Los sistemas embebidos son dispositivos electrónicos que están diseñados para cumplir una
función específica, generalmente en un entorno controlado y con recursos limitados. Estos
sistemas se integran en otros dispositivos más grandes y complejos, y pueden encontrarse
en una amplia variedad de aplicaciones, desde electrodomésticos y dispositivos médicos
hasta sistemas de control de tráfico aéreo y vehículos autónomos. Son capaces de
interactuar con el mundo físico a través de sensores y actuadores, lo que les permite
recopilar información y tomar medidas en el entorno que los rodea. Esta capacidad los hace
una parte esencial de muchos sistemas de automatización y control.
Los sistemas embebidos suelen estar compuestos por una combinación de hardware y
software, diseñados para trabajar juntos de manera eficiente y efectiva. El hardware suele
ser una placa de circuito impreso que contiene un microcontrolador o microprocesador, así
como otros componentes electrónicos como sensores, actuadores, pantallas, memoria y
comunicaciones. El software se desarrolla específicamente para la función del dispositivo,
y se escribe en lenguajes de programación de bajo nivel, como C o ensamblador, para
maximizar el rendimiento y la eficiencia.
Estos sistemas son una parte fundamental de la tecnología moderna y se utilizan en una
amplia variedad de aplicaciones. Su capacidad para interactuar con el entorno físico, operar
con recursos limitados y cumplir una función específica los hace indispensables en muchas
áreas de la vida moderna.
SISTEMAS EMBEBIDOS.
- ¿Que son los sistemas embebidos?
Figura 1. 1
Algunas áreas de
Figuras 1.2
- ¿Cómo se elabora un sistema embebido?
Este mismo sistema se apoya de esquemáticos, los cuales son diagramas que
representan gráficamente el diseño de un sistema electrónico en términos de sus
componentes, conexiones y funciones. Estos esquemáticos son esenciales para entender
cómo está diseñado y cómo funciona un sistema embebido. (Figuras 1.3 y 1. 4)
Un ejemplo básico de cómo se puede elaborar un esquemático de un sistema
embebido es:
Identificar los componentes: En primer lugar, es necesario identificar los
componentes que forman parte del sistema embebido. Esto incluye procesadores, memoria,
sensores, actuadores, interfaces de comunicación, etc.
Conexiones: Una vez identificados los componentes, es necesario definir las
conexiones entre ellos. Esto puede incluir señales de alimentación, de control y de datos.
Organización: Es importante organizar los componentes y las conexiones de manera
clara y lógica. Esto puede implicar agrupar componentes relacionados o dividir el
esquemático en bloques funcionales.
Etiquetado: Es importante etiquetar cada componente y cada conexión para facilitar
la comprensión del esquemático. Esto incluye asignar nombres a los componentes y
señales, así como indicar los valores de los componentes.
Simbología: Utilice una simbología estándar para los componentes y las conexiones
en su esquemático. Esto ayudará a garantizar que otros puedan entender su diseño.
Herramientas de software: Utilice herramientas de software para elaborar su
esquemático. Existen numerosas herramientas de diseño de circuitos disponibles, como
Altium Designer, KiCad y Eagle.
Figura 1.4,
-Elaboración de los esquemáticos.
El diseño electrónico de sistemas se lleva a cabo mediante diagramas llamados
esquemas, que representan los componentes mediante símbolos y las interconexiones
mediante líneas para una mejor visualización. Estos esquemas se realizan utilizando
herramientas software CAD, como Orcad, Altium o VeriBest de Intergraph.
Para que los esquemas sean buenos, es necesario incluir información adicional que
permita comprender el funcionamiento del sistema. Es importante que las líneas que
representan buses o señales entre dos componentes contengan nombres representativos.
Todos los componentes que se utilizarán en la placa de circuito impreso deben tener su
representación en los esquemas mediante símbolos, normalmente rectangulares con sus
pines alrededor.
El diseñador de los esquemas debe consultar la documentación técnica o
especificaciones de los componentes utilizados para realizar las conexiones correctamente.
Se deben tener en cuenta aspectos como la temporización en las comunicaciones entre los
componentes y las cargas, especialmente en sistemas que operen a altas frecuencias (por
encima de 50 MHz). También es importante cuidar la adaptación entre componentes para
evitar reflexiones de ondas eléctricas en las interconexiones que puedan impedir la
transferencia de información legible.
La creación del layout de la PCB consiste en una representación exacta de las
huellas "footprint" de los componentes y las pistas que unen sus pines o terminales. La
huella de un componente son los puntos de cobre que necesita en la placa base para poder
ser soldado y fijado, mientras que las pistas son las líneas de cobre de cierta anchura que
permiten la propagación eléctrica de las señales entre los componentes. La placa está
formada por una lámina de fibra de vidrio o similar con varias capas de cobre (2 exteriores
y posibles internas, a modo de sándwich).
El layout también se realiza mediante una herramienta CAD, integrada con la de
creación de esquemas. Así, los esquemas dirigen la creación del layout, estableciendo las
uniones entre los componentes en forma de pistas que recorrerán el camino necesario para
unir dos puntos. Esto se hace evitando obstáculos, como otras pistas o componentes.
Es importante tener en cuenta la posibilidad de elegir encapsulados de diferentes
formas o tipos para un mismo componente y la compatibilidad electromagnética de la
placa, asegurándose de que las señales de alta frecuencia no interfieran con otras de la
misma placa ni con otras del exterior. La herramienta de auto-enrutado o autorouter puede
dibujar todas las pistas sin más que elegir el sitio donde irá cada componente, dependiendo
de la densidad de pistas que sean necesarias para la PCB.
-Estructura de un sistema embebido
Se componen de un procesador, memoria, una fuente de alimentación y puertos de
comunicación. Son estos puertos los que se comunican con otros sistemas integrados dentro
del dispositivo los datos comunicados son interpretados por un software altamente
específico para la función del sistema embebido y almacenados en la memoria.
Los sistemas embebidos consiguen muy a menudo no parecer un ordenador, sino
algo completamente distinto. Piensa por ejemplo en un sistema de control de acceso de una
empresa, el software que controla las máquinas de vending o los taxímetros. También los
relojes inteligentes o los mp3 son ejemplos con software embebido.
Un sistema embebido difiere de un sistema de procesamiento digital tradicional,
como una computadora de escritorio, en que el primero debe tratar con señales continuas en
el tiempo, está generalmente sujeto a restricciones de tiempo real, debe contener
mecanismos de tolerancia a fallas y su seguridad y desempeño deben estar garantizados.
Por ejemplo, el sistema embebido que controla las bolsas de aire de los automóviles cuenta
con unas milésimas de segundo para decidir la activación de las bolsas. El sistema debe
determinar si el automóvil ha experimentado una colisión y entonces activar las bolsas de
aire durante unos instantes precisos para absorber el golpe, pero al mismo tiempo evitar
asfixiar al pasajero. El sistema también debe evitar falsos disparos, ya que volver a instalar
el sistema de bolsas de aire es costoso. Las soluciones basadas en sistemas embebidos
logran este propósito de la seguridad de los pasajeros utilizando sistema de sensores un
sofisticado y algoritmos PDS embebidos. Así mismo, a fin de evitar los falsos positivos,
muchos autos utilizan sensores redundantes y mediante un sistema de "votaciones" en
firmware, se decide si activar el sistema de bolsas de aire o no.
Todas las restricciones a las que está sujeto un sistema embebido plantean retos
importantes, tanto en la investigación como en el desarrollo de tecnología. Los métodos
formales para el modelado y análisis de sistemas embebidos permiten agregar cierto rigor
matemático en la construcción de los sistemas, aunado a la posibilidad de realizar
simulaciones por computadora, lo que permite ajustar los modelos y abaratar los costos
totales de creación de los sistemas embebidos.
Por otro lado, las técnicas de control híbrido permiten tratar a los sistemas
embebidos como "plantas a controlar", donde se pueden utilizar técnicas lineales y
controlabilidad, no lineales observabilidad, para su estabilidad, tolerancia a fallas y
redundancia, ya sea en espacios de estado continuos, discretos híbridos. De manera similar
al caso de los sistemas de telecomunicación, las técnicas de procesamiento digital de
señales (PDS) han jugado un rol clave en el desarrollo y la aplicación práctica de los
sistemas embebidos. Técnicas modernas de PDS aunadas a eficientes implementaciones en
hardware están permitiendo cada vez mayores capacidades de procesamiento de
información en tiempo real, obtenida mediante sistemas de percepción local o remota
(sensores), con un alto grado de flexibilidad al poder modificar por software la operación
misma del PDS en el sistema embebido, dando lugar a las más diversas aplicaciones en
múltiples sectores industriales, comerciales y de salud.ii
En general es posible dividir el área de los sistemas embebidos en dos:
Hardware embebido: Los ingenieros de hardware embebido se encargan de los
diseños esquemáticos, el diseño de la placa base integrada y del PCB, de la electrónica de
potencia, etc. Necesitan experiencia con software como CAD o EDA.
Software embebido: El ingeniero de software en sistemas embebidos trabaja con los
cargadores de arranque y es responsable de programar los controladores de los dispositivos.
Para ello necesitan experiencia en programación de sistemas y microcontroladores.
- ¿Como se programa un sistema embebido?
El proceso de programación de un sistema embebido implica generalmente las
siguientes etapas:
1. Selección del lenguaje de programación adecuado: Esto depende de las
características del hardware del sistema embebido y de los requisitos específicos del
software que se está desarrollando.
2. Desarrollo del software: Esto puede incluir la implementación de algoritmos
y técnicas de programación específicas para el sistema embebido, la programación de
drivers de dispositivo, el desarrollo de firmware y la implementación de la lógica de
negocio del sistema.
3. Pruebas y depuración: Una vez que se ha desarrollado el software, se deben
realizar pruebas y depuración para asegurarse de que el software funciona correctamente y
cumple con los requisitos del sistema.
4. Integración de software y hardware: Finalmente, el software se integra con el
hardware del sistema embebido y se realizan pruebas adicionales para garantizar que el
sistema funcione correctamente.
Es importante tener en cuenta que la programación de sistemas embebidos puede ser
un proceso complejo y requiere una sólida comprensión de los lenguajes de programación
de bajo nivel, así como de los componentes de hardware del sistema embebido. Además, la
programación de sistemas embebidos a menudo se realiza en un entorno de desarrollo
especializado que puede requerir una curva de aprendizaje adicional.
Figura 1.5
Habilidades y conocimientos:
El desarrollador de software embebido necesita dominar el lenguaje de
programación C. Este lenguaje está considerado como uno de los lenguajes más eficientes e
independientemente del campo o empresa en la que se trabaje, es muy probable que se
trabaje con C y C++.
Además, el especialista en sistemas embebidos necesita entender el hardware y sus
componentes. El ingeniero de software embebido no solo tiene que testear código, es
posible que algo del hardware esté fallando. Para identificar y corregir potenciales
problemas, es necesario que se entienda el funcionamiento del hardware.
Normalmente, un sistema embebido es un sistema de computación en tiempo real y
las tareas de procesamiento también se realizan en tiempo real. Por eso, se necesitan
conocimientos de Sistemas operativos en tiempo real (RTOS).
Actualmente existe una gran demanda de expertos en software embebido por lo que
pueden esperar un buen salario.
Si miramos los salarios de los ingenieros de software embebido en los Estados
Unidos, vemos que de media ganan unos $83.000 dólares, pudiendo llegar hasta los
$123.000 dólares anuales. Incluso los perfiles junior empiezan con $68.000 dólares anuales
de media.
Como siempre, ten en cuenta que los salarios son promedio y que pueden variar en
función del país, de la experiencia concreta que tenga el candidato o de la empresa para la
que se vaya a trabajar.
Por ejemplo, mirando en otros países, vemos que en Alemania los salarios para
Embedded Software Developers que van entre los 45.000 € y los 78.000 €. En España, los
sueldos oscilan entre los 30.000 € y 45.000 €.
Figura 1.8
Se para el ejército
También los sistemas embebidos están relacionados con la región militar, así es, no solo se
ven en nuestra vida cotidiana.
Según un informe publicado por Research Dive, se prevé que el mercado global de
sistemas integrados militares genere ingresos de $3259,3 millones y aumente a una tasa
compuesta anual saludable del 7,9 % durante el marco de tiempo de análisis de 2022 a
2031.
Según nuestros analistas, con el aumento del gasto público en la modernización de equipos
militares y de defensa, se espera que el mercado de sistemas integrados militares
experimente un crecimiento exponencial durante el período de pronóstico. Además, se
predice que la creciente adopción de procesadores multinúcleo, sistemas de guerra
revolucionarios y tecnologías inalámbricas fomentará el crecimiento del mercado durante el
período de análisis. Además, se espera que el desarrollo de sistemas de guerra electrónica
con mayores capacidades genere amplias oportunidades de crecimiento durante el período
de tiempo previsto. Sin embargo, las preocupaciones legales y los problemas de seguridad
pueden impedir el crecimiento del mercado durante el período de tiempo estimado.
Según nuestros analistas, con el aumento del gasto público en la modernización de equipos
militares y de defensa, se espera que el mercado de sistemas integrados militares
experimente un crecimiento exponencial durante el período de pronóstico. Además, se
predice que la creciente adopción de procesadores multinúcleo, sistemas de guerra
revolucionarios y tecnologías inalámbricas fomentará el crecimiento del mercado durante el
período de análisis. Además, se espera que el desarrollo de sistemas de guerra electrónica
con mayores capacidades genere amplias oportunidades de crecimiento durante el período
de tiempo previsto. Sin embargo, las preocupaciones legales y los problemas de seguridad
pueden impedir el crecimiento del mercado durante el período de tiempo estimado.
Se espera que la región de América del Norte del mercado de sistemas integrados militares
tenga la mayor participación del mercado durante todo el período de pronóstico. Esto se
debe principalmente a las crecientes aplicaciones de tecnología de punta en esta región.
Además, se predice que el creciente avance en el sector militar y aeroespacial y el rápido
progreso en las tecnologías de comunicación de próxima generación impulsarán el
crecimiento regional del mercado durante el período estimado.