Linux e IoT com a BeagleBone Green Wireless 4

O que era bom ficou ainda melhor. Não poderia pensar em outra frase para descrever a BeagleBone Green Wireless. Resumidamente, é uma versão aprimorada da BeagleBone Green, sendo uma opção de peso frente a BeagleBone Black.  Fruto da iniciativa da SeeedStudio com a comunidade BeagleBoard.org, é uma placa voltada para automação com a maestria da tradição pela Texas Instruments, por possuir o SoC AM335x, usado inclusive em equipamentos industriais. E para não perder a onda do momento, a BeagleBone Green Wireless foi projetada para automação na Internet das Coisas, possuindo conectividade WiFi e Bluetooth 4.0.

Beaglebone Green Wireless

A BeagleBone Green já era uma versão “enxugada” da BeagleBone Black, caracterizada por não ter saída microHDMI, e, correspondentemente, sem o chip de vídeo – Estratégia que ajudou na redução de custo da placa, tornando-a mais barata. Já a BeagleBone Green Wireless veio e deu uma “tunada” na coisa, colocando mais portas USB (um total de 4), e conectividade Wireless.

O que vem na caixa

A caixa da BeagleBone Green Wireless é simples. Bem colorida, ao estilo do SeeedStudio, e objetivamente informativa quanto à placa e suas características.

Caixa Beaglebone Green Wireless

Internamente, temos a BeagleBone Green Wireless protegida em um saco antiestático, as antenas para WiFi e Bluetooth, cabo microUSB e um Guia de Primeiros Passos (em inglês).

Componentes

Em vista à própria BeagleBone Green Wireless, percebe-se que é uma placa bonita, bem acabada. E o que salta aos olhos frente aos modelos anteriores, é a ausência do conector para rede Ethernet, e o módulo WLinkTM8, o item prateado que aparece na placa, que incorpora as funcionalidades para WiFi e Bluetooth.

As antenas externas para WiFi e Bluetooth são iguais pois ambas as tecnologias operam em 2.4 GHz. E percebam que há uma antena cerâmica no canto superior da placa, que serve tanto para WiFi como para Bluetooth. Ou seja, você já é capaz de usar os recursos Wireless da BeagleBone Green Wireless nativamente, não sendo obrigatório o uso das antenas externas. Mas então… Por que usar as antenas externas? Para melhorar o sinal!

O que temos sob o capô?

Beaglebone - Detalhes

O grande diferencial de toda a série BeagleBone é o AM335x, SoC caracterizado por um processador ARM Cortex-A8, configurado para operar a 1 GHz na placa. Pode soar pouca coisa quando somos bombardeados com notícias constantes de chips com 4, 8 ou mais núcleos, mas não é pouca coisa não. É suficiente. E adicionalmente ao processador principal, o SoC possui também 2 PRUs – Unidades Programáveis de Tempo Real – que são microcontroladores de 32 bits capazes de operar em paralelo com o processador principal, tornando a BeagleBone Green Wireless um sistema híbrido, uma equipe em um chip só.

Detalhe Processador

Não bastando essa equipe de peso, o AM335x possui conectividade CAN, muito usada em veículos e equipamentos industriais, entradas de sinais analógicos, e um bom punhado de Timers, sinais PWM, interfaces UART, SPI e I2C. Em termos numéricos, temos: 4 UARTS, 2 SPI, 2 I2C, 7 Entradas Analógicas, 8 Sinais PWM (nativos) e 1 Rede CAN (nativamente exposta). E para continuar a “ignorância”, a Beagle tem um total de 65 sinais digitais, que podem ser usados para acionar relés, transistores, fazer leitura de chaves, controlar dispositivos diversos.

Sem querer gerar discussão, já mostra um grande diferencial frente ao seu grande rival, que é a Raspberry Pi, que não possui sinais PWM nativos e nem entradas analógicas, e é mais limitada quanto às interfaces disponíveis para conexões SPI, I2C e UART.

A despeito de o AM335x possuir GPU PowerVR, não há saída de vídeo nativa na placa. Todavia, como a BeagleBone Green Wireless é projetada para controle e automação, uma interface gráfica não é o pilar da coisa toda, como em outros cenários de aplicação.

E sobre a memória? A placa vem com chip de 512 MB de memória RAM DDR3 e 4 GB de memória Flash eMMC (é como se fosse um cartão de memória já soldado na placa). Essas características são um diferencial notável, principalmente quando analisada com relação à Raspberry Pi, que não possui memória Flash embutida. O fato de você possuir uma memória desse tipo significa a possibilidade de não ter que usar cartão microSD, e assim, menos componentes e/ou partes móveis no seu sistema.

Portas USB

Ao contrário da BeagleBone Black e BeagleBone Green, que possuem apenas 1 porta USB Host, a BeagleBone Green Wireless possui um hub embutido e expõe 4 portas USB Host, permitindo conectar periféricos como pendrive, webcam, modem 3G, dentre outros.

Mantendo a tradição das Beagles, a BeagleBone Green Wireless incorpora a alimentação elétrica via conector microUSB, e usando de recursos do AM335x, que possui controlador USB-OTG (cliente e host), esse conector vem configurado por padrão para operar no modo cliente USB, elegantemente criando um “mini-Hub” com 3 conexões distintas em uma só:

  • Acesso ao Console Linux (COM em Windows, ou tty em Linux) – Permite acessar o console, e assim controlar a Beagle via USB, sem a necessidade de adaptadores USB-Serial externos.
  • Rede via USB – Por esse mesmo conector, é criada uma rede entre a Beagle e seu PC, permitindo acesso à placa pelo navegador e SSH, por exemplo.
  • Sistema de Arquivos – E também por esse mesmo conector, o sistema Linux da Beagle compartilha um diretório de arquivos, que pode ser acesso de um computador Linux/Windows, e também pelo Linux da própria Beagle, facilitando o compartilhamento de arquivos entre ambos.

Conectores Grove

Pelo fato de ter sido projetada com o dedo da SeeedStudio, não poderia faltar os clássicos conectores Grove, usados em seus produtos e até mesmo kits com sensores e componentes. A placa possui 2 conectores Grove: 1 para conexão com UART, e outro com I2C.

Resumo dos Itens

  • Processador AM335x 1GHz ARMR Cortex-A8
  • Memória RAM 512MB DDR3
  • Memória Flash 4GB eMMC
  • Suporte da CPU NEON & GPU PowerVR
  • microUSB Alimentação Elétrica e Comunicação
  • USB USB2.0 Host *4
  • Conectores Grove 2 (1 I2C e 1 UART)
  • GPIO 2 x 46 conectores
  • Ethernet Wi-Fi 802.11b/g/n 2.4GHz and Bluetooth 4.1 LE
  • Temperatura de Operação 0 ~ 75 ºC

Achou que eu esqueci da parte de WiFi e USB? Não esqueci não!

O que temos de diferente na Beaglebone Green Wireless?

O grande ponto diferente desta Beaglebone é a presença de um controlador para conexões Wireless WiFi e Bluetooth, e a presença de 4 Portas USB por meio de um hub embutido na placa tamém.

A parte de conexão Wireless é desempenhada pelo chip WLinkTM8, que usa exclusivamente a sinalização SPI1 e interface MMC2 (uma segunda interface para cartão) para controle dos recursos Bluetooth e WiFi.

Esse chip é capaz de conectar a redes WiFi 802.11 bandas B, G e N, que são as mais tradicionais. E do lado Bluetooth, é compatível com a versão 4.1 Low Energy – LE, podendo lidar com a transmissão de áudio via A2DP. Ou seja, a despeito de a placa não ter saída de áudio, você pode usar fones de ouvido ou sistemas de som Bluetooth com a placa!

Um ponto positivo é que o WLinkTM8 é certificado pela FCC, IC, ETSI/CE, e TELEC. Embora não seja certificado pela Anatel, a certificação por vários órgãos internacionais é um bom indicador para sua futura certificação pela Anatel em um eventual produto.

E diferentemente de outros módulos WiFi disponíveis no mercado, o WLinkTM8 opera tanto em modo AP como em modo Cliente, ou seja, é um módulo capaz de fazer a Beagle se passar por um ponto de acesso sem fio, onde os elementos de rede WiFi podem conectar à Beagle, como também opera no tradicional modo cliente, em que a Beagle se conecta a pontos de acesso existentes.

Já com relação às portas USB, temos 4 portas USB Host. A presença dessa quantidade de portas USB é boa e ruim. Boa porque você pode conectar vários elementos USB. “Ruim” porque cada elemento USB precisa de energia para funcionar, e para não ter dor de cabeça, é preciso usar uma boa fonte de alimentação.

Nas especificações da BeagleBone Green Wireless, recomenda-se 5V 1500 mA para alimentar a placa e eventualmente os dispositivos USBs conectados. E quando for alimentar a Beagle pela USB típica de um computador, que fornece seus 500 mA em média, não conecte dispositivos que puxem mais de 500 mA, ao total, nas portas USB.

Conexões da placa

Depois de ter falado da sua quantidade de interfaces e 65 sinais de entrada e saída, nada melhor que uma foto para dar um panorama geral da coisa toda, não? Assim, na Figura adiante está um esquemático dos conectores GPIO disponíveis na BeagleBone Green Wireless. Vejam que ela também não poupa sinais disponíveis para alimentação elétrica, tendo disponíveis sinais GND, 3V3 e 5V para alimentação de componentes diversos.

Pinos Beaglebone Green Wireless
Tabela de Sinais da BeagleBone Green Wireless.

E sem perder aquele lembrete básico: A BeagleBone Green Wireless opera a 3.3V! Cuidado para não conectar sinais de entrada/saída digitais que sejam maiores que 3.3V. E para os sinais analógicos o limite é menor ainda: 1.8V!

Linux e IoT

Uma coisa que você precisa saber: A Beaglebone Green Wireless é um computador. Seu pequeno tamanho engana, mas ela é capaz de rodar banco de dados, servidor Web, executar programas em Python e até processar imagens e vídeo. Tudo isso porque, sendo um computador, ela executa um Sistema Operacional.

De fábrica, ela vem com Debian Linux, já configurado com Cloud9 IDE, uma interface de desenvolvimento escrita em Node.js para criação de programas com BoneScript, uma biblioteca que facilita o acesso a recursos da BeagleBone via JavaScript com NodeJS.

O fato de executar Linux, com suporte constante e contínuo, permite a criação de programas em linguagem C, C++, Python, NodeJS, Lua, PHP, dentre outros.

Esse mesmo suporte da comunidade e o também apoio da própria fabricante do processador, Texas Instruments, tem permitido a compatibilidade da BeagleBone Green Wireless com os seguintes sistemas:

  • Debian
  • Android
  • Ubuntu

Interessante observar que o suporte à Android expõe a camada de drivers para controle dos periféricos, ou seja, é um “Android para automação”, em outras palavaras. Para os curiosos de plantão, vale a pena estudar o uso da Beagle com Android.

Por fim, considerando tudo que foi dito a respeito de interfaces e conectividade, podemos citar as seguintes aplicações para a BeagleBone Green Wireless:

  • Internet das Coisas – De praxe. Amplamente conectável, pode ser usada para transmitir, receber e agir por meio de dados na nuvem.
  • Casas Inteligentes – Domótica – A Beagle possui uma grande quantidade de conexões. Isso permite o controle de uma grande quantidade de elementos, tais como lâmpadas, persianas, ventiladores, sistemas de irrigação, dentre outros.
  • Automação Industrial e Veicular – O fato de possuir rede CAN possibilita à Beagle interagir com sistemas veiculares e industriais. Já pensou em uma leitora de rede veicular, com Log em Banco de Dados e conectada via WiFi?
  • Robótica – Não poderia faltar. A Beagle pode tranquilamente ser usada para controlar um robô, comandando a motorização dinamicamente pelos seus sinais PWM, ao mesmo tempo conectada em uma rede local ou via Bluetooth.
  • Interfaces Homem – Máquina – IHM – Com o uso de acessórios externos, pode se conectar a displays LCD gráficos e até mesmo touch, para controle de periféricos diversos.
  • Rede de Sensores – Tendo conexão WiFi simultaneamente em modos AP e Client, além da conexão Bluetooth, ela pode operar como uma central de sensores, comunicando com outros módulos WiFi e/ou Bluetooth, e enviando dados para a nuvem pela internet, por exemplo.

Você pode ler tudo e mais um pouco do que eu falei neste post na Wiki da placa, disponível neste link.

E para mais detalhes, tem o Manual de Referência do Sistema.

Gostou? Deixe seu comentário logo abaixo.

Faça seu comentário

Acesse sua conta e participe

4 Comentários

  1. Olá! Poderia me tirar uma dúvida?
    É possível realizar a instalação do Ubuntu 18.04 na BBG ?
    É possível também rodar alguma interface gráfica nela?

    Muito obrigado.

    1. Olá Vagner,

      Pelo que consegui encontrar é possível sim instalar o Ubuntu 18.04 na BBG, entretanto a porta HDMI deu lugar as duas portas Grove, tornando mais difícil o uso de uma interface gráfica.

      Abraços!
      Vinícius – Equipe MakerHero

  2. Ela é uma ótima placa, como posso ver ! Mas fiquei com uma dúvida, qual seria melhor, no contexto de Iot ? RaspBerry pi 3 ou BBG ?

    1. Prezado Matheus,
      Em termos de automação e controle, a BeagleBone Green Wireless é melhor!
      A Raspberry PI 3 é boa sim, mas é mais limitada quanto a recursos como PWM, ADC, UART, e quantidade de IOs.