0 Compartilhamentos 1189 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.

Carregando...

Você pode se interessar

As melhores extensões gratuitas para Visual Studio 2022
Artigos
110 visualizações
Artigos
110 visualizações

As melhores extensões gratuitas para Visual Studio 2022

Carlos L. A. da Silva - 20 de janeiro de 2022

Comece o ano com a melhor ferramenta para complementar seu trabalho!

Conhecendo Svelte
Artigos
294 visualizações
Artigos
294 visualizações

Conhecendo Svelte

Carlos L. A. da Silva - 6 de janeiro de 2022

Svelte, React ou Vue? O especialista Josh Collinsworth disserta sobre a solução em seus mínimos detalhes.

Petrobras abre concurso com 757 vagas de nível superior
Artigos
350 visualizações
Artigos
350 visualizações

Petrobras abre concurso com 757 vagas de nível superior

Redação - 30 de dezembro de 2021

Há vagas para cientistas de dados, engenheiros e analistas de sistemas entre outras carreiras. As inscrições permanecerão abertas até o dia 05 de janeiro de 2022.

One Response

Deixe um Comentário

Your email address will not be published.

Mais publicações

A história da imagem mais antiga da internet
Artigos
382 visualizações
382 visualizações

A história da imagem mais antiga da internet

Carlos L. A. da Silva - 28 de dezembro de 2021
Coreia do Sul no mapa dos jogos
Artigos
380 visualizações
380 visualizações

Coreia do Sul no mapa dos jogos

Carlos L. A. da Silva - 22 de dezembro de 2021
Rust é o futuro da infraestrutura JavaScript
Artigos
682 visualizações
682 visualizações

Rust é o futuro da infraestrutura JavaScript

Carlos L. A. da Silva - 6 de dezembro de 2021
Influenciadores digitais que não existem
Artigos
662 visualizações
662 visualizações

Influenciadores digitais que não existem

Carlos L. A. da Silva - 2 de dezembro de 2021