Você está na página 1de 6

Sistema embarcado

Um sistema embarcado (ou sistema embutido) é um sistema microprocessado
no qual o computador é completamente encapsulado ou dedicado ao dispositivo ou
sistema que ele controla. Diferente de computadores de propósito geral, como o
computador pessoal, um sistema embarcado realiza um conjunto de tarefas
predefinidas, geralmente com requisitos específicos. Já que o sistema é dedicado a
tarefas específicas, através de engenharia pode-se otimizar o projeto reduzindo
tamanho, recursos computacionais e custo do produto.Sistemas como PDAs são
geralmente considerados sistemas embarcados pela natureza de seu hardware,
apesar de serem muito mais flexíveis em termos de software. Fisicamente, os
sistemas embarcados passam desde MP3 players à semáforos.
História
Nos primeiros anos dos computadores digitais na década de 1940, os computadores
eram por vezes dedicados a uma única tarefa. Eram, entretanto, muito grandes
para serem considerados embarcados. O conceito de controlador programável foi
desenvolvido algum tempo depois.
O primeiro sistema embarcado reconhecido foi o Apollo Guidance Computer,
desenvolvido por Charles Stark Draper no MIT. O computador de guia, que operava
em tempo real, era considerado o item mais arriscado do projeto Apollo. O uso de
circuitos integrados monolíticos para reduzir o tamanho e peso do equipamento
aumentou tal risco.
O primeiro sistema embarcado de produção em massa foi o computador guia do
míssil nuclear LGM-30 Míssil Minuteman, lançado em 1961. Ele possuía um disco
rígido para a memória principal. Quando a segunda versão do míssil entrou em
produção em 1966, o computador guia foi substituído por um novo, que constituiu o
primeiro uso em grande volume de circuitos integrados. A tecnologia desse projeto
reduziu o preço de circuitos integrados como o NAND de mil para três dólares
americanos cada, permitindo seu uso em sistemas comerciais.
Desde suas primeiras aplicações na década de 1960, os sistemas embarcados vêm
reduzindo seu preço. Também tem havido um aumento no poder de processamento
e funcionalidade. Em 1978 foi lançada pela National Engineering Manufacturers
Association a norma para microcontroladores programáveis.
Em meados da década de 1980, vários componentes externos foram integrados no
mesmo chip do processador, o que resultou em circuitos integrados chamados
microcontroladores e na difusão dos sistemas embarcados.
Com o custo de microcontroladores menor que um dólar americano, tornou-se
viável substituir componentes analógicos caros como potenciômetros e capacitores
por eletrônica digital controlada por pequenos microcontroladores. No final da
década de 1980, os sistemas embarcados já eram a norma ao invés da exceção em
dispositivos eletrônicos.
Sistemas embarcados são desenvolvidos para uma tarefa específica. Por questões
como segurança e usabilidade, alguns inclusive possuem restrições para
computação em tempo real. O software escrito para sistemas embarcados é muitas
vezes chamado firmware, e armazenado em uma memória ROM ou memória flash
ao invés de um disco rígido. Por vezes o sistema também é executado com recursos
computacionais limitados: sem teclado, sem tela e com pouca memória.
Sistemas embarcados podem possuir desde nenhuma interface do utilizador
(dedicados somente a uma tarefa) a uma interface de utilizador completa, similar à
dos sistemas operacionais desktop (em sistemas como PDAs). Sistemas mais
simples utilizam botões, LEDs ou telas bastante limitadas, geralmente mostrando
somente números ou uma fila pequena de caracteres.
Sistemas mais complexos utilizam uma tela gráfica completa, usando tecnologias
como ecrã táctil ou aquela em que o significado dos botões depende do contexto da
tela. Computadores de mão também oferecem joysticks para apontar. O surgimento

Isso contrasta com o mercado de computador pessoal. os sistemas embarcados são dispositivos "invisíveis". o software é geralmente desenvolvido e testado mais cuidadosamente de que em computadores pessoais. x86. como roteadores. do motor e do antibloqueio em automóveis: freios ABS e controle de tração. que pode executar os mais diversos programas e alternar entre eles. • Dispositivos de armazenamento (discos rígidos e disquetes). • Eletrodomésticos. Processadores embarcados podem ser separados em duas categorias: microprocessador e microcontrolador. • Controladores da tracção. • Tratores e implementos agrícolas. como sistemas de controle inercial.[1] Portanto. sem travamentos e panes. De modo geral. que reinicia o sistema a menos que o software notifique periodicamente um identificador. *******o contrário de um PC. tais como: • Interface serial . SH. • Telefones celulares e centrais telefônicas. eles se limitam a executar bem uma única tarefa. ainda que seja fornecida uma interface complexa e completa a ser acessada em outro computador. Coldfire/68k. . Isso evita o custo de uma tela sofisticada. PIC. controle de vôo e outros sistemas integrados nas aeronaves. e que possam por vezes recuperarem- se sozinhas após erros.(USB) • TCP/IP • Phase-locked loop • GPIO Sistemas embarcados geralmente residem em máquinas que. como sistemas de orientação de mísseis. hubs. desempenhando as mais diversas funções. Atmel AVR. A recuperação de erros pode ser atingida com técnicas como o watchdog timer. FR-V. Alguns exemplos de onde são usados sistemas embarcados • Aviônicos. MIPS. algum dispositivo de armazenamento. • Videogames. Os sistemas embarcados comunicam-se com o meio externo através de periféricos. Existem diferentes arquiteturas disponíveis tais como ARM.da World Wide Web forneceu aos desenvolvedores de sistemas embarcados a possibilidade de fornecer uma interface Web através de uma conexão por rede. M32R. que se fundem no nosso cotidiano. interfaces e assim por diante. aparelhos de TV. • PDAs. 8051. • Equipamentos de redes de computadores. de maneira contínua e. V850. switches e firewalls • Impressoras. roteadores usam tal habilidade. limitado a somente algumas arquiteturas. na maioria das vezes. máquinas de lavar. espera-se. Renesas H8. • Calculadoras. DVD players. Eles são formados por fundamentalmente os mesmos componentes de um PC: processador.(Por exemplo a RS 232) • Universal Serial Bus . PowerPC. como fornos microondas. memória. possam trabalhar continuamente por anos sem erros. A principal diferença é que. • Equipamentos médicos. ao contrário de um PC. de forma que muitas vezes sequer percebemos que eles estão lá. Z80 e Z8.

que incluía um processador 68000. Um Treo 650. Lembra do game boy? Ele era justamente baseado num Z80. Não seria possível incluir um Core Duo ou Athlon num controle remoto. Cerca de 75% de todos os processadores de 32 bits usados em sistemas embarcados são processadores ARM. mas um Z80 () cumpre bem a função. Usando um processador ARM e pelo menos 4 MB de memória. Normalmente. mas sim de versões "modernizadas" dele. por exemplo. mas em outros é necessário gravar um chip de EPROM ou memória flash com a ajuda do gravador apropriado e transferir o chip para o sistema embarcado para poder testar o software :). Para dispositivos que precisam de mais processamento. por exemplo. Adicionando um pouco mais de memória. o que abre grandes possibilidades em termos de softwares e ferramentas de desenvolvimento. É graças aos sistemas embarcados que o Z80 (em suas inúmeras variações) é até hoje o processador mais produzido. Além da família ARM e Z80. centrais telefônicas. fabricados em massa pelos mais diversos fabricantes. controlador de vídeo e outros componentes. sendo um o controlador principal. não diz muito sobre o tamanho ou a importância do sistema. Em alguns casos o SDK é distribuído gratuitamente. sistemas de automatização em geral.O fato de ser um sistema embarcado. o que encarece o projeto. video-games (como o GameBoy Advance) e assim por diante. mas em outras precisa ser comprado ou licenciado. que é baseado num Intel Xscale de 312 MHz. aqueles Mp3 players genéricos em formato de pendrive. chips RISC de 32 bits. pontos de acesso. PDAs. os chips ARM conservam um bom desempenho. Outro processador muito usado é o Motorola 68000. você roda as ferramentas de desenvolvimento num PC e transfere o software para o sistema que está desenvolvendo apenas nos estágios finais do desenvolvimento. documentação e ferramentas úteis. Embora possuam um design bastante simples. mas são produzidas usando tecnologia atual e operam a frequências mais altas. que conservam o mesmo design básico. Naturalmente. os chips ARM são baratos e possuem um baixo consumo elétrico. de 8 bits. Outro exemplo são os S1 Mp3 players. qualquer equipamento autônomo que não é um PC. o mesmo chip de 32 bits utilizado nos primeiros Macintoshs. tarefa que mesmo um Pentium II 266 tem dificuldades para realizar. ou controlar o tráfego aéreo. Ele utiliza apenas três chips. Por ser um processador muito simples. acaba caindo nesta categoria. consegue exibir vídeos em Divx com resolução de 320x240 sem falhas. acompanhado de um controlador de áudio externo e outros circuitos. Cada uma conta com um conjunto próprio de ferramentas de desenvolvimento (SDK). por isso são extremamente populares em celulares. Um bom exemplo de sistema embarcado é este MP4 player sobre o qual escrevi outro dia. tudo no mesmo wafer de silício. Um exemplo é o chip DragonBall usado nos primeiros Palms. existem inúmeras outras famílias de chips e controladores. Em alguns casos isso é feito através da porta USB (ou de uma porta serial). temos as diversas famílias de processadores ARM. produzidos por diversos fabricantes. Embora operem a frequências relativamente baixas se comparados aos processadores x86 (na maioria dos casos apenas 300. que incluem compiladores. até uma máquina com centenas de processadores. pode ser desde um furby. modems ADSL. se comparado ao processadores x86. debuggers. Basicamente. ele é incrivelmente barato e possui um baixíssimo consumo elétrico. outro um . é possível rodar o Windows Mobile ou o Symbian. seu sistema embarcado pode rodar Linux. não estamos falando de exatamente o mesmo chip introduzido em 1979. 400 ou 500 MHz). Mac ou outro tipo de computador pessoal. destinada a criar previsões sobre mercados de captais. que vão da Samsung à Intel.

Eles são também o caminho para projetos artesanais. permitindo o uso de sensores diversos. que monitoram temperatura. celulares e outros aparelhos que usamos no dia a dia sejam tão baratos em relação ao que custavam a alguns anos atrás. Mesmo um microcontrolador relativamente simples pode consumir vários milhões para ser desenvolvido. eles são chips compostos por um enorme número de chaves programáveis. como este que reproduz uma máquina de arcade antiga. de forma que os chips mais vendidos acabam tendo o custo inicial amortizado e passam a ser cada vez mais baratos. um chip de memória EPROM (ou memória flash) com o software. Muitos microcontroladores podem ser conectados a dispositivos analógicos. Ao invés de desenvolver e fabricar seus próprios chips. o custo cai proporcionalmente. Existem no mercado os mais diversos tipos de microcontroladores. que disponibiliza softwares. Como o nome sugere. Imagine o caso do ramo da automação industrial.chip de memória flash (usado para armazenamento) e o terceiro um sintonizador de rádio AM/FM. mas também outros circuitos de apoio. Um bom site dedicado ao assunto é o http://www.ch/. Isso permite a criação de dispositivos simples. que poderia muito bem ser retirado do projeto sem prejuízo para as demais funções do aparelho: Isto é possível por que o chip principal (um Sigmatel STMP3510) é um microcontrolador que desempenha sozinho todas as funções do aparelho. como o controlador de vídeo.fpga. de LCAs (logic-cell arrays). intensidade da luz. existe ainda a opção de usar chips programáveis. como ligar o ar condicionado. aceleração. layouts de placas e até mesmo projetos prontos. enquanto chips menores chegam a custar apenas alguns centavos. executando ações pré-definidas em caso de mudanças. A maior parte do custo de um processador ou chip qualquer está em seu desenvolvimento. MP3 players. incluindo controladores para as diversas funções disponíveis e até mesmo uma pequena quantidade de memória RAM: É este tipo de microcontrolador que permite que modems ADSL. de forma que você pode ter um sistema completo usando apenas um chip FPGA previamente programado. rodando Pac-Man ou Galaga: . que são fabricados em massa e vendidos a preços incrivelmente baixos. que podem ser configurados para simular o comportamento de qualquer outro circuito. Para aplicações onde um chip personalizado é essencial. mais raramente. Os modelos recentes incluem inclusive uma pequena quantidade de memória RAM e circuitos de apoio. Entretanto. umidade. Com menos chips. chamados de FPGAs (field-programmable gate arrays) ou. o STMP3510 custa apenas 6 dólares se comprado em quantidade. campos magnéticos e assim por diante. interface serial e assim por diante. Microcontroladores mais simples podem custar menos de 1 dólar. as empresas passaram a cada vez mais utilizar componentes disponíveis no mercado. Um único FPGA pode simular não apenas um processador simples. mas são uma opção em situações onde são necessários apenas algumas centenas de unidades de um design exclusivo. abrir ou fechar as persianas. Para você ter uma idéia. a placa de circuito com as trilhas e conectores e uma bateria ou outra fonte de energia. que são a nova onda entre quem gosta de eletrônica ou está cursando engenharia da computação. o custo de produção é relativamente baixo. por exemplo. cada um com um conjunto próprio de periféricos e funções. Os FPGAs são naturalmente muito mais caros que chips produzidos em série. ou mesmo disparar o air-bag do seu carro em caso de colisão.

No caso de dispositivos ligados a um PC. Nos primeiros Palms. que armazenava os softwares e chips adicionais de memória SRAM. sem medo de perder dados) e foi adicionado um chip de memória SRAM que serve como memória de trabalho :). é possível utilizar diretamente a energia fornecida pela porta USB. memória e o software adequado. Também é possível utilizar placas solares ou outras fontes alternativas de energia. que inclui uma grande quantidade de informações e alguns projetos de exemplo. A maioria dos circuitos trabalham com tensão de 5v ou 3. Os componentes necessários para construir os projetos podem ser comprados facilmente pela web. que serviam tanto como memória de trabalho. O uso de redes sem fio também abre algumas possibilidades interessantes na área publicitária. Um sistema embarcado. por exemplo. de forma que podem ser instalados num poste ou no topo de um prédio sem precisarem de qualquer cabeamento.com. seja incorporada ao próprio microcontrolador. Numa analogia com um PC. a instalação seria muito mais simples. tínhamos um chip de memória flash. que serve para armazenar arquivos. Eles são também uma das áreas mais promissoras dentro da área de tecnologia. contendo um transmissor wireless. usando fontes de alimentação ou os circuitos apropriados. seja na forma de um chip separado. permitindo a criação de sistemas embarcados capazes de operar de forma autônoma. do que o oposto. acompanhado por um regulador de tensão e um fusível é geralmente o suficiente para que ele possa ser ligado diretamente numa bateria de carro. a memória flash seria similar a um HD. mesmo aparelhos que tradicionalmente usavam memória SRAM (muito mais cara) como forma de armazenamento. Um resistor. A grande questão é que memória SRAM é muito mais cara que memória flash. Temos ainda a questão do fornecimento elétrico.fpga4fun. O problema é que a memória flash funciona apenas como espaço de armazenamento e não como memória de trabalho.3v. Diferente de . Enfim. quanto como espaço para armazenar dados e programas. passaram a utilizar memória flash. de forma que vale mais a pena utilizar uma pequena quantidade de SRAM e uma grande quantidade de memória flash. já que bastaria ligá-los na eletricidade. O que é um sistema embarcado Um sistema embarcado (ou sistema embutido) é um sistema microprocessado no qual o computador é completamente encapsulado ou dedicado ao dispositivo ou sistema que ele controla. já que um simples FPGA pode ser programado para desempenhar praticamente qualquer função.Outro bom site é o http://www. Se os anúncios pudessem ser atualizados remotamente. Imagine o caso de letreiros eletrônicos ou telões publicitários. Com a queda no preço. basta ter um cartão internacional ou uma conta no PayPal. poderia ser acessado remotamente e programado com os anúncios a exibir. embora os PCs normalmente roubem a cena. Um exemplo são os pontos de acesso repetidores usados por alguns provedores de acesso. que utilizam painéis solares e baterias. Uma questão interessante nos sistemas embarcados é a memória flash. mas que não elimina a necessidade de usar memória RAM. todos os programas e arquivos passaram a ser armazenados em memória flash (você pode remover a bateria. os sistemas embarcados são muito mais numerosos e são responsáveis por toda a estrutura que utilizamos no dia a dia. mas é possível usar praticamente qualquer bateria ou fonte de energia. A partir do Treo 650. como os palmtops e celulares. por exemplo. Isso significa que mesmo dispositivos com grandes quantidades de memória flash ainda precisam de uma cerca quantidade de memória RAM ou SRAM.

. Sistemas embarcados geralmente utilizam sistemas operacionais de tempo real especiais que além de consumirem muito menos memória e processamento.Smartphones e PDAs . Por vezes o sistema também é executado com recursos computacionais limitados: sem teclado.Sistemas de controle de acesso biométrico . SISTEMAS OPERACIONAIS Sistemas embarcados. estima-se que os processadores de computadores pessoais representam menos de XX% do mercado de processadores no mundo. como o computador pessoal. que geralmente contam com uma quantidade reduzida de recursos como memória. recursos computacionais e custo do produto. e armazenado em uma memória ROM ou memória flash ao invés de um disco rígido. Processadores utilizados em alguns sistemas embarcados podem ter preços menores que US$1.Impressoras . Sistemas como PDAs são geralmente considerados sistemas embarcados pela natureza de seu hardware. através de engenharia pode-se otimizar o projeto reduzindo tamanho. alguns inclusive possuem restrições para computação em tempo real. Por questões como segurança e usabilidade. Já que o sistema é dedicado a tarefas específicas. ou em um sistema de controle de uma aeronave em pleno vôo.computadores de propósito geral. micro-controladores. PowerPC. Fisicamente. geralmente com requisitos específicos.MP3 players .Equipamentos portáteis de medição . Imaginem se acontece uma famosa "tela azul" em um sistema médico que controla a vida de uma pessoa. micro-processadores. TMS320. Apesar de serem bem mais conhecidos pela população em geral. ARQUITETURAS DE PROCESSADORES Sistemas embarcados utilizam vários tipos de processadores: DSPs(digital signal processors - processadores digitais de sinais). sem tela e com pouca memória. que é basicamente dominado pelos processadores de arquitetura x86 da Intel/AMD. poder de processamento e outros requisitos como processamento em tempo real. Todos estes fatores também podem ser traduzidos em custo reduzido. sistemas embarcados utilizam amplamente as arquiteturas ARM. um sistema embarcado realiza um conjunto de tarefas predefinidas. Coldfire. O software escrito para sistemas embarcados é muitas vezes chamado firmware. são muito mais estáveis e confiáveis.Equipamentos de rede . Ao contrrário do mercado de computadores pessoais. PIC. 8051.Sistemas de monitoramento médico CARACTERÍSTICAS DE SISTEMAS EMBARCADOS Sistemas embarcados são desenvolvidos para uma tarefa específica. os sistemas embarcados passam desde MP3 players à semáforos. blackfin. EXEMPLOS DE SISTEMAS EMBARCADOS -Computadores de bordo automotivos . não são projetados para utilizar sistemas operacionais destinados aos computadores pessoais.Controle de temperatura de ar-condicionado . AVR. apesar de serem muito mais flexíveis em termos de software.