Skip to main content
Esta página é apresentada utilizando tradução automática. Prefere ver em inglês?

Software incorporado

O software incorporado é uma aplicação ou firmware especializado que é executado num cluster de processamento incorporado num SoC ou IC. Quase qualquer produto eletrónico pode conter um ou vários processadores incorporados, comuns nos automóveis de hoje, fatorial de automação de piso, aviónica, dispositivos médicos e muito mais.

Quais são os diferentes tipos de software incorporado?

As aplicações de software incorporadas são programação especializada em dispositivos não-PC — seja como parte de um microchip ou como parte de outra aplicação que fica em cima do chip — para controlar funções específicas do dispositivo. Ao contrário das aplicações para PC, que podem ser instaladas em vários sistemas de computador e modificadas para fornecer diferentes níveis de funcionalidade, o software incorporado tem requisitos e capacidades de hardware fixos. É criado exclusivamente para o dispositivo específico em que é executado, com restrições de processamento e memória ligadas diretamente às suas especificações. No contexto desta discussão, o software incorporado inclui aplicações, firmware, middleware e sistemas operativos que são executados num único microprocessador ou cluster de microprocessadores “incorporados” numa lógica adicional.

Produtos relacionados: Capital Embedded AR Classic | Capital Embedded Integrator AR Classic | Capital Embedded Virtualizer AR Classic

A professional working on a computer with a graph, another person standing nearby observing the screen.

Características e características dos sistemas embarcados

Mesmo que existam muitos tipos de sistemas incorporados, todos partilham as mesmas características benéficas e características de design.

Todos os sistemas embarcados são específicos da tarefa

Executam a mesma função pré-programada ao longo da sua vida útil e não podem ser alterados.

Todos os sistemas embarcados são de alta eficiência

Os requisitos de recursos do software incorporado nunca devem exceder a capacidade do hardware em que está instalado, e as especificações do hardware nunca devem exceder os requisitos mínimos do software incorporado.

Projetado para estabilidade

Todos os sistemas embarcados são concebidos para serem altamente fiáveis e estáveis. Devem executar a sua tarefa com tempos de resposta consistentes e funcionar durante toda a vida útil do dispositivo que os abriga.

Que tipos de software incorporado a Siemens oferece?

A Siemens oferece ambos software incorporado automotivo e engenharia de software incorporada soluções. A Siemens interrompeu a oferta de software incorporado autónomo para SoCs com a descontinuação em novembro de 2023 dos produtos Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux e Sourcery CodeBench (incluindo complementos associados). Os contratos de suporte existentes para estes produtos ainda estão a ser honrados, contacte a Siemens Centro de Suporte para mais informações.

Quais são os diferentes tipos de software incorporado e as suas finalidades?

  • Sistema operativo — Um sistema operativo (SO), no seu sentido mais geral, é um software que permite a um utilizador executar outras aplicações num dispositivo de computação. O sistema operativo gere os recursos de hardware de um processador, incluindo dispositivos de entrada como teclado e rato, dispositivos de saída como monitores ou impressoras, ligações de rede e dispositivos de armazenamento como discos rígidos e memória. O SO também fornece serviços para facilitar a execução e gestão eficientes e alocações de memória para programas de aplicações de software.
  • Firmware — Firmware é um tipo de software que é escrito diretamente para uma peça de hardware. Funciona sem passar por APIs, sistema operativo ou controladores de dispositivo — fornecendo as instruções e orientações necessárias para comunicar com outros dispositivos ou executar tarefas e funções básicas conforme pretendido.
  • Middleware — Middleware é uma camada de software situada entre aplicações e sistemas operativos. O middleware é frequentemente utilizado em sistemas distribuídos onde simplifica o desenvolvimento de software fornecendo o seguinte:

    • Esconder os meandros das aplicações distribuídas
    • Mascarar a heterogeneidade de hardware, sistemas operativos e protocolos
    • Fornecer interfaces uniformes e de alto nível utilizadas para tornar aplicações interoperáveis, reutilizáveis e portáteis.
    • Fornecer um conjunto de serviços comuns que minimiza a duplicação de esforços e melhora a colaboração entre aplicações
  • Aplicação — O utilizador final desenvolve a aplicação de software final que é executada no sistema operativo, utiliza ou interage com o middleware e o firmware, e é o foco principal da função de destino dos sistemas embarcados. Cada aplicação final é única, enquanto os sistemas operativos e o firmware podem ser idênticos de dispositivo para dispositivo.

Software incorporado vs sistemas embarcados

Os componentes de hardware num dispositivo que executa software incorporado são chamados de “sistema incorporado”. Alguns exemplos de componentes de hardware utilizados em sistemas embarcados são circuitos de fonte de alimentação, unidades de processamento central, dispositivos de memória flash, temporizadores e portas de comunicação serial. Durante as primeiras fases de design de um dispositivo, o hardware que irá compor o sistema incorporado — e a sua configuração dentro do dispositivo — é decidido. Depois, o software incorporado é desenvolvido a partir do zero para ser executado exclusivamente nesse hardware nessa configuração precisa. Isto torna o design de software incorporado num campo especializado que requer um conhecimento profundo das capacidades de hardware e programação de computadores.

Exemplos de funções baseadas em software incorporadas

Quase todos os dispositivos com placas de circuito e chips de computador têm esses componentes organizados num sistema de software incorporado. Como resultado, os sistemas de software incorporados são onipresentes na vida quotidiana e encontram-se em toda a tecnologia de consumo, industrial, automóvel, aeroespacial, médica, comercial, telecomunicações e militar.

Exemplos comuns de funcionalidades baseadas em software incorporadas incluem:

  • Sistemas de processamento de imagem encontrados em equipamento de imagiologia médica
  • Sistemas de controlo fly-by-wire encontrados em aeronaves
  • Sistemas de deteção de movimento em câmaras de segurança
  • Sistemas de controlo de tráfego encontrados nos semáforos
  • Sistemas de temporização e automação encontrados em dispositivos domésticos inteligentes

Quais são os diferentes tipos de sistemas embarcados?

Quando baseado no desempenho e requisitos funcionais, existem cinco classes principais de sistemas embarcados:

  • Os sistemas incorporados em tempo real completam tarefas de forma determinística e repetível, o que é afetado pela arquitectura e programação subjacentes dos sistemas operativos, bem como pelo desempenho dos threads, ramificação e interrupção da latência. Os sistemas incorporados de uso geral não contêm um requisito em tempo real e podem gerir interrupções ou ramificação sem depender de um tempo de conclusão. Os monitores gráficos e a gestão de teclado e rato são bons exemplos de sistemas gerais.
  • Os sistemas incorporados autónomos podem concluir tarefas sem um sistema anfitrião ou recursos de processamento externos. Podem produzir ou receber dados de dispositivos ligados mas não dependem deles para concluir a sua tarefa.
  • Os sistemas embarcados autónomos podem concluir a sua tarefa sem um sistema anfitrião ou recursos de processamento externos. Podem produzir ou receber dados de dispositivos ligados mas não dependem deles para concluir a sua tarefa.
  • Os sistemas incorporados em rede dependem de uma rede ligada para executar tarefas atribuídas.
  • Com base na complexidade da arquitetura de hardware do sistema, existem três tipos principais de sistemas incorporados: Os sistemas incorporados em rede dependem de uma rede conectada para executar tarefas atribuídas.

Como os mercados finais afetam os sistemas embarcados

Os requisitos e componentes do sistema incorporado serão diferentes de acordo com as exigências do mercado-alvo. Alguns exemplos incluem:

  • Consumidor — Em aplicações como bens de consumo, tais como lavadoras, dispositivos vestíveis e telemóveis, os sistemas incorporados enfatizam o tamanho reduzido do
  • Sistema no chip, baixo consumo de energia ou funcionamento com bateria e interfaces gráficas. Nestas aplicações, os sistemas operativos configuráveis e a capacidade de desligar “domínios” não operacionais do design são valorizados.
  • Redes — Aplicações que permitem conectividade, comunicação, operações e gestão de uma rede empresarial. Fornece o caminho de comunicação e os serviços entre utilizadores, processos, aplicações, serviços e redes externa/internet. As aplicações de rede incorporadas concentram-se na velocidade de resposta, processamento de pacotes e caminhos de hardware periférico.
  • Industrial — Para aplicações como gestão de chão de fábrica, motores e moinhos de vento, a ênfase tende a proteger a conectividade na nuvem e a operação determinística “em tempo real” e pode concentrar-se fortemente no middleware.
  • Médico, Automotivo e Aeroespacial — Estas indústrias precisam de sistemas críticos de segurança mistos, onde partes do projeto são isoladas umas das outras para garantir que apenas os dados necessários entrem ou saiam do sistema (segurança), garantindo que não haja danos ao utilizador final (segurança). Exemplos são sistemas de condução autónoma em automóveis e dispositivos médicos. Estes sistemas incorporados podem apresentar uma mistura de sistemas operativos de código aberto (Linux) e sistemas operativos determinísticos em tempo real (RTOS) e utilizar fortemente middleware comprovado.

Porque é que o software incorporado automóvel é diferente?

Na electrónica automóvel, ocorrem interações complexas em tempo real através de vários sistemas incorporados em que cada controlo funciona como travagem, direção, suspensão, grupo propulsor, etc. A caixa física que contém cada sistema incorporado é referida como uma unidade de controlo electrónico (ECU). Cada ECU e o seu software incorporado fazem parte de uma arquitetura elétrica complexa conhecida como sistema distribuído.

Ao comunicarem entre si, as ECUs que compõem o sistema distribuído de um veículo podem executar uma variedade de funções, tais como travagem automática de emergência, controlo de cruzeiro adaptativo, controlo de estabilidade, faróis adaptativos e muito mais. Uma única função pode necessitar de interações entre 20 ou mais aplicações de software incorporadas espalhadas por numerosas ECUs ligadas por vários protocolos de rede. Algoritmos de controlo complexos implementados com o software incorporado garantem o tempo adequado das funções, entradas e saídas necessárias e segurança dos dados.

Exemplos comuns de funcionalidades baseadas em aplicações de software automóvel incluem:

  • Características ADAS (Advanced Driver Assist Systems) como controlo de cruzeiro adaptativo, travagem automática de emergência, assistência de manutenção de faixa, assistência de tráfego, avisos de saída de faixa
  • Gestão da bateria
  • Compensação de torque
  • Controlo da taxa de injecção de combustível

Pilha de software ECU

A Unidade de Controlo Eletrónico ou ECU é composta por uma unidade de computação principal com hardware de nível de chip e uma pilha de software incorporado. No entanto, há uma tendência crescente entre os fabricantes de automóveis de conceber ECUs com circuitos integrados complexos que contêm múltiplos núcleos de computação num único chip — o que é referido como um Sistema em um Chip (SoC). Estes SoCs podem alojar uma infinidade de abstrações de ECU para consolidar o hardware. A pilha de software para uma ECU inclui tipicamente uma gama de soluções, desde firmware de baixo nível a aplicações de software incorporadas de alto nível.

Pilha de ECU

Descrição

Aplicação de software incorporada

Algoritmos de controlo, processamento, serviços

Quadro de aplicação

Estruturas de Security e proteção

Ambiente operacional

AUTOSAR classic, AUTOSAR Adaptive, Canais de entradas/Saídas

Virtualizações incorporadas

SO em tempo real, abstrações ECU

Firmware

Carregadores de arranque, armazenamento seguro, segure threading

Hardware

Dispositivos à base de silício, microcontroladores, placas de uma ou várias camadas

Recursos relacionados com software incorporado

Saber mais

Software incorporado e design de rede

Descubra como pode desenvolver de forma rápida e eficiente software inovador e seguro para fornecer funcionalidades vitais do produto.