O Conceito

Sistemas embarcados estão relacionados ao uso de hardware (eletrônica) e software (instruções) incorporados em um dispositivo com um objetivo pré-definido. A diferença entre um sistema embarcado e um computador de propósito geral está justamente na objetividade. Computadores como PCs, notebooks e afins são máquinas multiobjetivo, ou seja, foram criadas e dimensionadas para atuar num domínio de funções muito grande. Já os sistemas embarcados ou SEs possuem dimensionamento de recursos direcionado a um domínio de objetivos bem menor, ou mesmo singular.

Destrinchando um projeto de SE, normalmente encontramos um subdivisão clara, que corresponde à unidade de processamento, memória e periféricos. Como visto no exemplo da Ilustração 1.

Ilustração 1: Exemplo de modelo de subdivisão de um sistema embarcado

A unidade de processamento executa as instruções (software/firmware) responsáveis por realizar cálculos, tomar decisões e tratar eventos (como aquele do botão do elevador). Possui normalmente a arquitetura elementar clássica de um processador de computador convencional, como a unidade lógica/Aritmética (ULA), unidade de controle (UC), registradores, etc.

A memória armazena dados e instruções relacionados às operações da unidade de processamento. As instruções e dados podem dividir a mesma memória, como nos PCs (arquitetura Von Neumann) ou separados em memórias distintas (arquitetura Harvard), sendo a segunda a mais comum em SEs.

Os periféricos são as interfaces da unidade de processamento com o mundo externo, trazendo ou enviando informações para ele. Um exemplo de um periférico seria um conversor analógico/digital acoplado a um sensor térmico que converte a temperatura de um ambiente em números binários para que a unidade de processamento consiga interpretar e processar a informação.

O objetivo de um sistema embarcado é o de controlar processos, em outras palavras, atuar sobre um problema. Um processo pode ir de um simples acender e apagar de lâmpadas automatizado, até gerenciamento autônomo de um avião (piloto automático). Isso é feito por intermédio dos periféricos, que são escalados e dimensionados com base no problema alvo. Observe a Ilustração 2.

?

Ilustração 2: Periféricos atuadores e sensores

Duas categorias de periféricos se destacam em um SE, os sensores e os atuadores.

Sensores são responsáveis em adquirir informação do processo a ser controlado. Essas informações são primordiais para a unidade de processamento, pois com base nelas decisões podem ser tomadas. Bons sensores devem fornecer informação confiável e não promover alterações no processo alvo. Isso significa que um sensor não pode mudar os valores da grandeza física do qual é responsável por medir, como por exemplo diminuir a velocidade de um motor em monitoramento. Isso na prática pode difícil de conseguir dependendo da tecnologia do sensor (contato mecânico por exemplo). Exemplos desses tipos de periféricos são sensores de temperatura (termistores), pressão (piezos), contato (chaves mecânicas), toque (touchscreen), distância (sonar/infravermelho), movimento (acelerômetros), óticos (câmeras), etc. Esses são periféricos que enviam informação do processo para o SE.

Atuadores proporcionam ao SE a habilidade de intervir no meio onde atua. Como o próprio nome diz, são dispositivos que realizam ações que interferem no processo em controle, como motores, ventiladores, luzes, aquecedores, resfriadores, chaveadores, etc. Esses são periféricos que enviam informação do SE para o processo.

Normalmente a unidade de processamento toma a decisão de acionar os atuadores com base nas informações recebidas dos sensores, isso é conhecido como sistema em malha fechada ou sistema realimentado. Outra forma também usada para acionar os atuadores é com base no tempo, em um sistema conhecido como malha aberta, onde não há informações advindas do processo (não há sensores nele). Vou tentar exemplificar esse conceito com um pequeno projeto didático.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X