ViewDuino – Uma interface gráfica para dados do Arduino + Bluetooth

06/09/2017 18:05

Três anos após a liberação do primeiro ViewDuino, estou liberando uma atualização. Nessa atualização, eu corrigi alguns problemas com os OS mais recentes e adicionei uma nova funcionalidade.
Agora é possível conectar o ViewDuino a um Arduino VIA BLUETOOTH.
O ViewDuino é uma interface gráfica, elaborada em python, que recebe os dados vindos pela comunicação serial do arduino e permite, de forma simplificada, criar gráficos e histogramas.

Captura de tela de 2015-08-17 10:44:28

 

Ainda está faltando a documentação de como utilizá-lo, mas como há alguns colegas da comunidade Arduino pedindo o código, eu estou liberando uma versão provisória.

Windows, MacOS ou Linux?

Como o programa foi desenvolvido em python, ele pode rodar em qualquer Sistema Operacional que possua os pacotes devidamente instalados. Os pré-requisitos para rodar o programa são:

  1. Python 2.7
  2. PsUtil
  3. Python-Guidata
  4. Python-GuiQwt
  5. Python-Numpy
  6. Python-Qt4
  7. Python-Serial
  8. Python-Bluez

São esses 6 pacotes (+python 2.7) que você precisa instalar para rodar o programa. Tanto no Windows como no MacOS é necessário que você instale o pacote QT para o seu Sistema. Como eu não tenho nenhum dos dois sistemas, eu não consigo testar o pacote. Tenho a esperança de um dia ter alguém disposto para fazer um pacote de instalação para todos os sistemas.

Código Fonte

Linux

  • Pacote com instalador – Descompacte o arquivo, abra um terminal e vá até a pasta onde você descompactou o arquivo. Depois dê o comando: sudo python install.py
  • Primeiro o programa vai fazer uma checagem de dependência de programas (vai verificar se você tem todos os programas necessários para rodar o viewduino), se alguma dependência não for satisfeita ele vai indicar qual é e como resolver. Resolva as dependências e repita o procedimento.
  • Pronto! O programa vai aparecer no menu de programas dentro de Educativos, Eletrônica ou Ciência.
  • Você agora pode deletar os arquivos descompactados.

Windows

Os passos são muitos mas não são muito complexos. Aqui vai um procedimento que eu testei aqui num laptop com windows 7 de 64 bits. Acredito que deve funcionar para qualquer outro windows.

  1. Baixar e instalar o python 2.7. (Preste atenção se você tem um sistema 32 ou 64 bits, você vai precisar manter o mesmo sistema para todos os arquivos futuros)
  2. Instalar o PIP:
    • Baixe o arquivo get-pip.py e salve na pasta C:\Python27
    • Abra o command do DOS e navegue até a pasta  C:\Python27
    • Dê o comando >python get-pip.py
  3. Baixar (pacotes que tenham o código cp27 no nome e o formato whl), salvar os pacotes na pasta C:\Python27 e  instalar (dê o comando > python -m pip install pacote.whl)os pacotes na seguinte ordem:
  4. Pronto. Baixe o Código Fonte código fonte, descompacte-o e dê dois cliques do arquivo viewduino.pyw (apenas viewduino se você esconde o formato dos arquivos).

Pronto!

Utilização

A utilização é simples:

  1. Programar a comunicação serial no Arduino. O Arduino deve enviar os dados separados por “;”. Não há necessidade de enviar o instante. O ViewDuino atribui a primeira coluna ao instante que recebeu os dados. Se você precisar de mais precisão, pode enviar o instante do evento no Arduino, fica a seu critério.
  2. Abrir o ViewDuino e se conectar ao Arduino: Arquivo > Connectar
  3. Selecione a porta serial e o Baud Rate. Repare que só alguns bauds estão disponíveis.
  4. Inicie a coleta de dados: Arquivo > Iniciar você verá na janela inferior que o programa vai começar a receber os dados.
  5. Antes de fazer um gráfico você precisa de uma tabela. Para isso Ferramentas > Tabela . Note que você pode fazer algumas operações com essa tabela como Adicionar Coluna, Remover, Fazer operação entre colunas etc.
  6. No menu Ferramentas você vai encontrar algumas coisas interessantes como Gráficos, Histogramas, Ajustes de Curvas (melhor reta) e Mostradores (faz o papel de um Display Digital).

Você também pode baixar um PDF com um manual mais completo.

Se você tiver sugestões, comentários ou contribuições você pode mandar um e-mail para: girardi1309@gmail.com