0 Compartilhamentos 297 Views 1 Comments

Raspberry Pi, construa aplicações para seu cotidiano

Os avanços tecnológicos habilitaram novas plataformas para desenvolvimento de produtos de software e hardware. Projetistas podem optar em desenvolver softwares para computadores de mesa (Desktop), celulares e Smartphones e equipamentos de monitoração (microcontroladores). É possível encontrar outras plataformas inferiores mas que também são consideradas pequenos computadores.

Ao desenvolver um software, necessitamos que ele seja portável para outras plataformas e rode nos mais diversos dispositivos independente de suas diferenças de hardware. Como exemplo as aplicações Android, existem centenas de celulares com utilizam o sistema operacional Android e todos eles podem possuir hardwares diferentes, no entanto, o desenvolvedor apenas especifica a partir de qual sistema operacional deve operar e se possui alguma restrição de periférico de hardware (bússola, GPS, etc). No caso de aplicações que rodam em sistemas operacionais diferentes, como exemplo Android e iOS, os códigos e as abstrações do hardware são diferentes, neste caso há necessidade de desenvolver para ambas plataformas e utilizar as linguagens especificas de cada uma. Quanto mais portável for seu código melhor.

Neste artigo, o foco principal é o Raspberry Pi, considerado o menor computador do mundo, possui o tamanho de um cartão de crédito, conexões USB para conectar o teclado e mouse utilizado em computadores de mesa, você pode conectá-lo a TVs com saída RCA ou HDMI. O melhor disso tudo é o baixo custo.

A fundação RASPBERRY PI FOUNDATION desenvolveu este computador com o intuito de capacitar pessoas de todas as idades a explorar a computação e aprender a programar em linguagens como Python e Scratch. Você pode fazer tudo que faria em seu computador de mesa, acessar a internet, abrir arquivos de texto e planilhas, tocar vídeos de alta definição e rodar alguns jogos.

As vantagens não param por ai, você pode interagir com o mundo externo utilizando chaves (Switch), realizar atuações emitindo sons ou luz (led), realizar monitoramento com câmeras RGB ou câmeras infravermelho.

O sistema operacional utilizado pelo Raspberry Pi é uma distribuição Linux baseado na versão Debian, muitas bibliotecas estão disponíveis o que aumenta seu poder de desenvolvimento. Ao desenvolver aplicações com a linguagem C/C++, ela é facilmente portável para qualquer distribuição Linux e com um pouco mais de esforço gera-se uma distribuição para plataforma Windows.

Os pinos disponíveis para programação contém entradas digitais e saídas digitais (GPIOs), este é o ponto fraco do Raspberry Pi pois em algumas aplicações são utilizados sensores analógicos. Para suprir esta necessidade são encontrados módulos que fornecem conversores AD que são facilmente conectados a seu hardware e habilitam o trabalho com sensores analógicos.

Para prover comunicação entre computadores é possível conectá-lo em rede utilizando o padrão Ethernet, ou através de um dongle Wi-fi ou realizar comunicação serial que utiliza a porta serial (UART).

Para programá-lo devemos optar por uma linguagem suportada, entre elas estão C/C++, Ruby, Perl, Python, Scratch, Java. Shell script, Lazarus e/ou Basic.

Agora que já conhecemos boa parte das características deste pequeno e poderoso computador, vamos deixar esta experiência um pouco mais excitante apresentando um código escrito em linguagem C que utiliza a biblioteca wiringPi.

O exemplo seguinte apresenta como configurar a porta GPIO 22 como saída e a porta GPIO 17 como entrada. É necessário um diodo emissor de luz, uma chave (Switch) e 2 resistores de 330 Ohms. A montagem é simples e deve seguir a figura 1.

raspberry-pi-montagem-de-led

O código gerado tem como objetivo monitorar a chave, o led deve alternar entre aceso e apagado em cada instante que a chave for pressionada. Segue abaixo o código gerado.

main.cpp

CMakeLists.txt

Para compilar o exemplo 1 você deve primeiro verificar as dependências de compilação declaradas no arquivo CMakeLists.txt, se concluído com sucesso realizar o processo de Linkage.

Para executar o exemplo 1 você precisa baixar e instalar a biblioteca wiringPi, é possível baixar e encontrar informações de instalação e configuração no site wiringPi, as aplicações geradas necessitam ser executadas como super-usuário (administrador).

Neste artigo foi apresentada uma solução simples, no entanto, com estes conceitos já é possível desenvolver aplicações mais avançadas. Entre as propostas que podem ser desenvolvidas estão ativação de luz em ambientes, ativação de bombas hidráulicas para irrigação, ativação de motores elétricos, monitoramento de presença em ambientes (sensores infravermelho digitais). Para construção de alguns destes projetos basta adicionar um relê de acordo com a tensão de trabalho do sistema.

É valido ressaltar que a capacidade do Raspberry Pi não está restrita apenas a este tipo de aplicação, ele conta com uma GPU poderosa, desta forma é possível processar imagens. Esta característica faz dele uma boa opção para aplicações que envolvam robótica e automação.

Ao considerar um sistema interativo é possível criar painéis montados com TVs para apresentar imagens de alta definição que demonstrem um produto ou apresente chamadas de promoções. Estas soluções podem ser encontradas em agências de comunicação e marketing de países europeus.

Para desenvolver algumas dessas aplicações você pode utilizar o banco de dados mySQL e suas bibliotecas de desenvolvimento, utilizar o framework QT para aplicações portáveis entre sistemas operacionais e apresentação de dados processados, é possível também utilizar outras bibliotecas e frameworks encontrados no ambiente Linux.

Você pode se interessar

Promoções de Jogos do Final de Semana (20/09)
Notícias
6 visualizações
Notícias
6 visualizações

Promoções de Jogos do Final de Semana (20/09)

Carlos L. A. da Silva - 21 de setembro de 2019

Confira as melhores ofertas de jogos de PC para o final de semana.

Como enlouquecer os rastreadores de internet
Dicas
9 visualizações
Dicas
9 visualizações

Como enlouquecer os rastreadores de internet

Carlos L. A. da Silva - 18 de setembro de 2019

Track This é um experimento criado pelo time do Firefox que vai alterar completamente o perfil que os anunciantes tem de você.

A história de Amazônia, o primeiro jogo brasileiro!
Artigos
9 visualizações
Artigos
9 visualizações

A história de Amazônia, o primeiro jogo brasileiro!

Carlos L. A. da Silva - 17 de setembro de 2019

Como um programador iniciante criou um adventure clássico que atravessou décadas.

Mais publicações

VIM (Amado ou Odiado?) // Dicionário do Programador
Vídeos
6 visualizações
6 visualizações

VIM (Amado ou Odiado?) // Dicionário do Programador

Thais Cardoso de Mello - 16 de setembro de 2019
Promoções de Jogos do Final de Semana (13/09)
Notícias
10 visualizações
10 visualizações

Promoções de Jogos do Final de Semana (13/09)

Carlos L. A. da Silva - 13 de setembro de 2019
Como usar os novos atributos de link do Google
Dicas
11 visualizações
11 visualizações

Como usar os novos atributos de link do Google

Carlos L. A. da Silva - 11 de setembro de 2019