Computador de placa única: um cérebro para protótipos do dia a dia
Um computador de placa única é um computador completo com dispositivos lógicos, de memória e de E / S , projetado para conter todos os componentes em uma placa de circuito impresso. Ao contrário de microcontroladores simples como Arduino ou Raspberry Pi Pico , os SBCs têm os recursos para executar um sistema operacional (SO) completo , como Linux ou Windows 10 IoT Core.
O primeiro terá que ser programado por um computador externo e executará um conjunto relativamente limitado de instruções (na verdade, o ambiente de desenvolvimento do Arduino ou Arduino IDE é simplesmente um conjunto de funções C / C ++ que são compiladas e atualizadas em uma placa ) Por outro lado, os SBCs podem ser usados com qualquer sistema operacional e linguagem de programação que melhor se adapte ao projeto que temos em mente.
O maior player mundial de SBCs é, sem dúvida, a fundação Raspberry Pi ( RPi ) , com a linha de produtos homônima. Existem também outras empresas famosas no setor de semicondutores, como Asus, Nvidia e Intel, mas o mercado é realmente muito grande e existem muitos SBCs. Para se ter uma ideia, basta dar uma olhada nas listas de compatibilidade dos sistemas operacionais projetados para eles.
As características dos computadores de placa única
Comparados com um computador pessoal tradicional, os computadores de placa única têm dimensões muito pequenas , aproximadamente as de um cartão de crédito, com a espessura dada pelas portas de entrada / saída, como USB ou LAN. Não possuem caixa para proteção dos circuitos, que podem ficar expostos ou, dependendo da aplicação, protegidos por caixa adquirida separadamente ou criada por você, talvez impressa em 3D. O consumo é muito baixo, geralmente abaixo de 10W, na verdade os SBCs visam muito à eficiência, usando cada Watt com sabedoria e limitando qualquer componente desnecessário.
O desempenho em termos de cálculo varia muito conforme o modelo e consequentemente o preço varia. Os mais simples pretendem ter preços muito baixos (6 € no caso do primeiro RPi Zero) e ainda ser capazes de executar um sistema operativo e aplicações menos dispendiosas. Os mais potentes são comparáveis aos smartphones de baixo custo , como o RPi 4 com raras exceções que chegam aos níveis dos PCs tradicionais que, compartilhando a maioria dos componentes com eles, custam várias centenas de euros.
Alguns modelos diferem porque o foco principal não está no poder de computação de uso geral , mas na execução eficiente de uma carga de trabalho específica. É o caso do Google Coral Development Board, uma SBC voltada para aplicações na área de Inteligência Artificial. Poucos SBCs têm memória de armazenamento embutida , geralmente eMMCs; na maioria dos casos, ele precisará ser adicionado por meio dos slots de expansão disponíveis (MicroSD, USB, SATA, etc).
Portas e GPIOs
Além da alimentação comum e portas de E / S, como USB, HDMI, LAN, pode haver outras portas de expansão proprietárias ou universais, dedicadas a componentes específicos, como câmeras e monitores. Além disso, todo computador de placa única que se preze tem conectores GPIO , ou saídas de entrada de propósito geral, que podem ser programadas para interagir com o mundo exterior, conduzir motores, relés ou adquirir informações de sensores. O uso que pode ser feito destes conectores é o mais variado e depende muito da nossa aplicação específica.
Sistemas operacionais
Vemos o mesmo para o SO ( Sistema Operacional ) disponível, existem dezenas ou centenas deles projetados mais ou menos para uma aplicação específica. Ao escolher o sistema operacional, deve-se prestar atenção especial à compatibilidade com o SBC. Em particular, a arquitetura do processador (ARM de 32 ou 64 bits ou x86 de 32 ou 64 bits) e os requisitos mínimos em termos de espaço de armazenamento e RAM devem ser respeitados. É sempre preferível escolher um sistema operacional que seja explicitamente compatível com o SBC, ou vice-versa, escolher um que seja explicitamente compatível com o sistema operacional que você deseja usar.
A maior parte do sistema operacional é baseada no Debian , uma versão muito leve e flexível do Linux , adequada tanto para iniciantes quanto para aqueles que querem aprender o básico da programação, e para servidores que precisam gerenciar cargas pesadas e milhares de conexões ao mesmo tempo .
Normalmente, esses sistemas operacionais não têm uma IU básica instalada , isso para reduzir o peso e os recursos necessários para executá-los, mas também porque um caso de uso comum para SBCs é o uso sem cabeça , ou seja, não conectado a um monitor. Por exemplo, pense em usá-lo como um servidor doméstico ou NAS (Network Attached Storage). Se você deseja usar um ambiente de desktop, ele deve ser instalado separadamente ou você pode optar por um sistema operacional que o tenha instalado por padrão.
Embora sejam principalmente baseados em Debian, eles são muito diferentes uns dos outros, aqui estão alguns exemplos:
- Raspberry Pi OS : anteriormente chamado de Raspbian, é o sistema operacional mais popular e oficialmente suportado pela Raspberry Pi Foundation. Excelente como uma base geral se você tiver um de seus SBCs, menos usado por usuários mais avançados se eles tiverem um caso de uso específico em mente para seu SBC;
- DietPi: um sistema operacional reduzido ao osso. Seu ponto forte é a lista de programas que podem ser instalados de forma guiada: com apenas o comando dietpi-software você pode instalar programas que de outra forma exigiriam muitos mais comandos, ou mesmo se aventurar a modificar os arquivos de configuração;
- OSMC (Open Source Media Center) e OpenELEC são criados para hospedar o Kodi OS, um programa (e não um OS) otimizado para reproduzir mídia local e streaming, com uma interface específica projetada para ser controlada com um controle remoto em telas grandes;
- RetroPie é um SO dedicado ao retrogaming , ou seja, a emulação de consoles de jogos como Nintendo 64, Game Boy, Playstation e muitos outros que se tornaram clássicos do passado.
Exceções notáveis para sistemas operacionais SBC baseados em Debian são:
- RISC OS , um sistema operacional projetado para processadores ARM pelos criadores do próprio ARM;
- Windows IoT Core , um sistema operacional criado pela Microsoft para Raspberry Pi projetado como uma plataforma de desenvolvimento para programadores focados na criação de protótipos de IoT;
- Ubuntu Linux, famoso na área de PCs, sua versão Server também está disponível para plataformas ARM, portanto compatível com a maioria dos SBCs.
A lista ainda é longa e dá espaço para sistemas operacionais dedicados à segurança, automação residencial, armazenamento de rede e nuvem, e assim por diante. Se você está pensando em um aplicativo específico, provavelmente existe um sistema operacional para SBC criado especificamente para ele.
Computador de placa única: destinatários e aplicativos criativos
Os SBCs são destinados a especialistas e iniciantes que desejam se desafiar ou aprender mais sobre programação. Ter uma máquina dedicada já é uma vantagem em relação ao PC. Se algo der errado, podemos atualizar o sistema operacional e voltar ao ponto de partida sem muitas preocupações. Mas ter um computador pequeno e de baixo consumo também leva a aplicações criativas interessantes.
Do servidor doméstico à câmera de lapso de tempo, do mini PC para jogos (com um SBC capaz como o LattePanda) ao controlador de irrigação para o nosso jardim. Os SBCs são ferramentas muito versáteis e as aplicações possíveis são verdadeiramente infinitas e limitadas apenas pela nossa imaginação!
Artigo por Francesco Porcelli
O artigo O computador de placa única: Um cérebro para protótipos do dia-a-dia foi publicado em Tech CuE | Engenharia de close-up .