Sei sulla pagina 1di 5

Artigo Projeto Final

Interface de Controle com LabVIEW e Arduino


Alexsandro Socorro, Anderson Flix, Anderson Mestre, Jeferson Galdino, Linneker Michalski e
Marco Antonio
Fundao Universidade Federal de Rondnia, Ncleo de Tecnologia, Departamento de Engenharia Eltrica DEE
Bacharelado em Engenharia Eltrica 6 Perodo Disciplina de Teoria de Comunicaes

Resumo O presente trabalho tem por objetivo o


desenvolvimento
de
um
prottipo
de
monitoramento atravs da interface grfica do
Arduino e o seu controle atravs do LabVIEW,
com o uso da ferramenta de comunicao serial
Visa, onde possvel realizar essa interao com o
envio e recepo dos sinais. Tal objetivo vem da
necessidade de se monitorar dados, automatizar
processos e dispositivos, controla-los remotamente.
A metodologia utilizada para a elaborao deste
projeto incluiu uma pesquisa sobre o Arduino, o
LabVIEW, VISA (Virtual Instrument Software
Architecture) para compreender o funcionamento
e usabilidade de cada componente e aplica-los de
maneira mais otimizada. A partir deste ponto,
empregar os materiais na construo do prottipo e
verificar a estruturao da lgica de programao,
a fim aplicar essa interface em monitoramento e
controle.
Index Terms Arduino, LabVIEW, Controle.

I.

Introduo

Nos tempos atuais o conhecimento tcnico se


tornou bastante requisitado em funo do imenso
nmero de mquinas e equipamento cada vez
mais diversos e complexos. Os produtos atuais
esto se modificando e automatizando.
Permitindo observar a interao de componentes
como Arduino e LabVIEW, onde pode ser
aplicado na interface de comunicao,
monitoramento e controle de processos e/ou
dispositivos, como: velocmetros, luminosidade,
tanques reservatrios de gua, caldeiras,
automao industrial e residencial, entre outras
aplicaes.
Em relao s ferramentas utilizadas na
concepo do projeto, so apresentadas a seguir
as caractersticas e funcionalidades:
Arduino
O Arduino uma ferramenta para fazer sentir
que o computador est mais ligado ao mundo

fsico do que ao computacional (desktop). uma


plataforma de computao livre (open-source)
baseada em uma placa de microcontrolador
simples, e um ambiente de desenvolvimento para
escrever o software para a placa. [1] Ou seja,
uma plataforma de prototipagem eletrnica de
hardware (componente) e software (sistema) que
est aberto a contribuio da sociedade.
O conceito Arduino surgiu na Itlia em 2005
com o objetivo de criar um dispositivo para
controlar projetos e prottipos construdos de
uma forma menos dispendiosa do que outros
sistemas disponveis no mercado. [2]
O Arduino uma plataforma de computao
fsica (so sistemas digitais ligados a sensores e
atuadores, que permitem construir sistemas que
percebam a realidade e respondem com aes
fsicas), baseada em uma simples placa de
Entrada/Sada microcontrolada e desenvolvida
sobre uma biblioteca que simplifica a escrita da
programao em C/C++. O Arduino pode ser
usado para desenvolver artefatos interativos
autnomos ou conectados ao computador ou a
outro sistema em que possa interagir (LabVIEW,
Adobe Flash, Processing, Max/MSP, Pure Data
ou SuperCollider). [2]
Um microcontrolador (tambm denominado
MCU) um computador em um chip, que
contm processador, memria e perifricos de
entrada/sada. um microprocessador que pode
ser programado para funes especficas, em
contraste com outros microprocessadores de
propsito gerais (como os utilizados nos PCs).
Eles so embarcados no interior de algum outro
dispositivo, para que possam controlar suas
funes ou aes. [2] Dessa forma logicamente
programvel (criao de programas), utilizando
uma linguagem prpria baseada em C/C++, que,
quando implementada faz com que o hardware
execute certas aes. Dessa forma se faz a
configurao das etapas de processamento.
O Arduino um kit de desenvolvimento capaz de
interpretar variveis no ambiente e transformlas em sinal eltrico correspondente, atravs de
sensores ligados aos seus terminais de entrada, e

atuar no controle ou acionamento de algum outro


elemento eletroeletrnico conectado ao terminal
de sada. [1] Ou seja, uma ferramenta de
controle de entrada e sada de dados, que pode
ser acionada por um sensor (por exemplo, um
resistor dependente da luz - LDR) e que, logo
aps passar por uma etapa de processamento, o
microcontrolador, poder acionar um atuador
(um motor, por exemplo). Como se pode
perceber funciona como um computador, onde os
sensores de entrada como, por exemplo, o mouse
e o teclado, e os de sada como a impressora e as
caixas de som, funciona de maneira semelhante
no Arduino s que ele faz interface com circuitos
eltricos,
podendo
receber
ou
enviar
informaes/tenses neles.
O grande diferencial desta ferramenta que ela
multiplataforma e tambm desenvolvida e
aperfeioada por uma comunidade que divulga
os seus projetos e seus cdigos de aplicao,
onde qualquer pessoa com conhecimento de
programao pode modific-lo e ampli-lo de
acordo com a necessidade, visando sempre a
aperfeioamento dos produtos criados atravs do
Arduino e criando aplicaes mais complexas.
Verificando a versatilidade para desenvolver
objetos interativos, tendo como entradas uma
variedade de sensores ou interruptores, e o
controle de uma variedade de sadas fsicas.
Sendo assim, pode ser perfeitamente utilizado
para implementar uma ferramenta de interface de
controle e monitoramento.
Foi desenvolvido utilizando uma placa Arduino
UNO Rev. 3.
Figura 1 - Arduino UNO Ver3 original

desenvolver qualquer aplicao de medio ou


controle em muito menos tempo. [3]
Ambiente grfico de desenvolvimento
de sistemas LabVIEW
Da concepo de uma ideia comercializao de
um produto, a abordagem exclusiva da NI de
desenvolvimento baseado em plataforma para
aplicaes em engenharia e cincias tem
incentivado o progresso em uma ampla variedade
de setores da indstria. O pilar central dessa
abordagem o LabVIEW, um ambiente de
desenvolvimento criado especificamente para
acelerar a produtividade de engenheiros e
cientistas. Com sua sintaxe de programao
grfica, que torna simples visualizar, criar e
codificar sistemas de engenharia, o ambiente
LabVIEW o que melhor ajuda os engenheiros a
traduzir suas ideias em realidade, reduzir os
tempos dos testes e oferecer informaes com
base nos dados coletados. Da construo de
mquinas inteligentes garantia da qualidade dos
dispositivos conectados, o LabVIEW tem sido h
dcadas a soluo preferida para a criao,
implementao e teste da Internet das Coisas. [4]
LabVIEW
O LabVIEW (Laboratory Virtual Instrument
Engineering Workbench) uma linguagem de
programao grfica originria da National
Instruments. Surgiu em 1986 para o Macintosh e
atualmente existem tambm ambientes de
desenvolvimento integrados para os Sistemas
Operacionais Windows, Linux e Solaris. [5]
Os principais campos de aplicao do LabVIEW
a realizao de medies e a automao. A
programao feita de acordo com o modelo de
fluxo de dados, o que oferece a esta linguagem
vantagens para a aquisio de dados e para a sua
manipulao.
Os programas em LabVIEW so chamados de
instrumentos virtuais ou, simplesmente, IVs. So
compostos pelo painel frontal, que contm a
interface, e pelo diagrama de blocos, que contm
o cdigo grfico do programa. O programa
processado por um compilador, deste modo a sua
performance comparvel exibida pelas
linguagens de programao de alto nvel. A
linguagem grfica do LabVIEW chamada de
"G". [6]

Fonte: www.arduino.cc (2015)

LabVIEW (NI-NATIONAL
INSTRUMENTS)

O software de projeto grfico de sistemas NI


LabVIEW a base da plataforma da National
Instruments. Com o LabVIEW, se tem um
conjunto abrangente de ferramentas que permite

Os blocos de funes so designados por


instrumentos virtuais. Isto assim, pois em
princpio cada programa (Sub-IV) pode ser usado
como subprograma por qualquer outro ou pode,
simplesmente, ser executado isoladamente.
Devido utilizao do modelo do fluxo de
dados, as chamadas recursivas no so possveis,

entretanto, pode-se conseguir esse efeito atravs


da aplicao de algum esforo extra.
A programao dos IVs ocorrem com linhas
(arames) de ligao e definem deste modo, o
fluxo de dados. Cada IV pode possuir entradas
e/ou sadas. A execuo de um IV comea
quando todas as entradas esto disponveis; os
resultados do processamento so ento colocados
nas sadas assim que a execuo do subprograma
(Sub-IV) tenha terminado. Desta maneira, a
ordem pela qual as tarefas so executadas
definida em funo dos dados, sem uma ordem
pr-definida (por exemplo, "da esquerda para a
direita").
Uma importante consequncia destas regras a
facilidade com que podem ser criados processos
paralelos no LabVIEW. Os sub-IVs sem
interdependncia dos respectivos dados so
processados em paralelo.
Os sub-IVs que no possuem entradas so
executados no incio do programa. Se o sub-IV
no possuir sadas, os dados resultantes so
ignorados ou, ento, usados pelo exterior, ou
seja, so escritos para o disco rgido ou para a
rede, ou at mesmo enviado para impresso. Da
mesma forma, um sub-IV sem entradas pode
receber dados provenientes de aparelhos
perifricos ou pode gerar os seus prprios dados
(um exemplo um gerador de nmeros
aleatrios). Os sub-IVs podem estar interligados,
com uma certa complexidade. Muitas das
funes prprias do LabVIEW so, por sua vez,
IVs normais, que podem ser modificados pelo
programador (o que no se recomenda). Os IVs
se baseiam em uma srie de funes bsicas
(primitivas) que no podem ser modificadas pelo
programador (ao invs dos IVs).
Muitas IVs e primitivas em LabVIEW so
polimorfos, ou seja, a sua funcionalidade adaptase ao tipos de dado que recebem. Por exemplo, a
funo Build-Array pode ser usada para a criao
de qualquer varivel, ou seja, de strings, de
inteiros e tambm de arrays e de clusters.
Tambm possvel ao programador construir os
seus prprios IVs polimorfos. No fundo,
consistem de uma coleo de vrios IVs com
diferentes tipos de dados, entradas e sadas.

boa interface grfica, onde a programao ocorre


sem a necessidade de escrever qualquer linha de
cdigo. A apresentao grfica dos processos
aumenta a facilidade de leitura e de utilizao.
Uma grande vantagem em relao s linguagens
baseadas em texto a facilidade com que se
criam componentes que se executem aes
paralelamente. [7]
Em projetos de grande dimenso muito
importante planejar a sua estrutura desde o
incio, como acontece nas outras linguagens de
programao, para facilitar a montagem e
interpretao do projeto executado.
NI -VISA
O Virtual Instrument Software Architecture
(VISA) um padro para a configurao,
programao e soluo de problemas de sistemas
de instrumentao que compreendem interfaces
de GPIB, VXI, PXI, Serial, Ethernet, e/ou USB.
O VISA fornece a interface de programao
entre hardware (componentes) e os ambientes de
desenvolvimento como o LabVIEW, o Lab
Windows / CVI e Measurement Studio para o
Microsoft Visual Studio. O NI-VISA a
implementao da National Instruments da
entrada e sada padro (VISA I/O standard).
O NI-VISA inclui bibliotecas de software,
servios interativos, como NI I/O Trace
(rastreamento) e o VISA Interactive Control
(controle
interativo),
e
programas
de
configurao por meio da automao e medio
(Measurement & Automation Explorer) para
todas as necessidades de desenvolvimento.
O NI-VISA padro em toda a linha de produtos
da National Instruments, facilitando a
interoperabilidade, assim como desenvolvimento
de softwares (programas) que no vo se tornar
obsoletos com a evoluo dos componentes
(hardwares) da interface de instrumentao. [8]
Figura 2: Fluxograma de aplicao do VISA

Os dados podem ser ligados ao Painel frontal


atravs de manipuladores. Por exemplo, a
insero de nmeros pode ser dependente de um
manpulo e uma varivel de sada booleana pode
ser realizada por um LED colocado no painel.
O painel frontal do LabVIEW um meio
confortvel para construir programas com uma

Fonte: www.ni.com/visa/ (2015)

II.

Compreendendo o funcionamento do cdigo de


controle, por meio do seguinte fluxograma:

Objetivos

O objetivo deste projeto a construo de um


prottipo de interface de comunicao,
monitoramento e controle de processos e/ou
dispositivos. Assim como, compreender as
ferramentas utilizadas na implementao do
projeto, buscando analisar o uso da interface
como instrumento de automao; aprimorando
habilidades de instrumentao eletrnica e o
reconhecimento de caractersticas especificas dos
componentes utlizados; alm de projetar a lgica
de controle da interface de comunicao
Arduino-LabVIEW atravs da ferramenta VISA.
III.

Materiais e Mtodos

Relao de materiais utilizados:


Quantidade
2
1
1
3
1
1

Material
Leds
Potencimetro
Boto (Tipo: Apertar)
Resistores 330
Arduino
LabVIEW (com
ferramenta VISA)

(Tabela 1) Relao dos materiais

Compreendendo os estgios de funcionamento e


o mtodo de execuo:

Controle (LabVIEW)

Inicia na comunicao serial da ferramenta VISA


com o Arduino, atravs do sinal de entrada (E/S)
e do nmero de vezes que um sinal em um canal
de comunicao muda seu estado (baud rate),
analisando os comandos inseridos; executando
assim as ferramentas essenciais do VISA (Write:
manda um sinal pro Arduino; e Read: l o sinal
que vem do Arduino); tambm utiliza-se
conversores de Strings (sequencia de caracteres),
que converte a String para nmeros; utilizando
posteriormente conversores de nmeros para
Strings; insere sinais de comparao para entrada
de bits, onde qualquer sinal maior que zero ser
lido; aplicando um Delay (tempo de resposta
entre as duas interfaces) para ter uma diferena
de tempo entre as comunicaes LabVIEWArduino;
passando
finalmente
para
a
concatenao (junta todos os sinais de entrada
em um s sinal de sada); executando assim a
funo desejada.

Esse fluxo de funes descreve uma relao bem


simplificada que demonstra com clareza a
execuo do dispositivo.
Em relao aos aspectos de montagem:

Montagem

Primeiramente foi simulada a montagem do


circuito no programa Fritzing, o qual se obteve o
esquema de montagem e o esquemtico.
Figura 3 - Esquema de montagem no Fritzing do Circuito

Fonte: Autor (2015)

Posteriormente, ajustou-se as caractersticas de


controle do dispositivo com a linguagem de
programao grfica LabVIEW, resultando no
esquema de blocos do Anexo 1.
O que resulta no seguinte painel frontal, onde
mostra o layout do projeto, para ajustes e
instrumentao.
Figura 4 Painel frontal

V.

Concluso

Foi observado que dispositivo funcionou


conforme previsto onde a comunicao serial da
ferramenta VISA foi aplicada na interface de
controle LabVIEW que interagiu com o Arduino,
resultando em um painel de controle para
dispositivos de monitoramento e controle de
processos e/ou dispositivos, podendo ser
aplicado para diversos fins, como: velocmetros,
controle de intensidade luminosidade, nvel de
tanques reservatrios de gua, velocidade de
aquecimento de caldeiras, automao industrial e
residencial, entre outras aplicaes. Verificando
assim a aplicabilidade do projeto e o seu uso para
mensurar com eficcia o desempenho de
dispositivos e/ou processos, buscando assim
otimiza-los.

VI.

Referncias Bibliogrficas

[1] Arduino Home Page. Disponvel em:


<http://www.arduino.cc>
Fonte: Autor (2015)

IV.

Discusso e Resultados

[2] Guimares, Pereira da Fonseca Erika /


Beppu, Mathyan Motta Apostila Arduino
Universidade Federal Fluminense, 2010.
[3] Uma plataforma, infinitas possibilidades.
National Instruments. Disponvel em:
<http://www.ni.com/labview/why/pt/>

O dispositivo funciona com a comunicao serial


da ferramenta VISA aplicada na interface
controlada pelo LabVIEW com o Arduino,
resultando em um painel de controle para
dispositivos de monitoramento e controle de
processos e/ou dispositivos, como: velocmetros,
luminosidade, tanques reservatrios de gua,
caldeiras, automao industrial e residencial,
entre outras aplicaes.

[4] Pgina Oficial do LabVIEW da National


Instruments - Disponvel em:
<http://www.ni.com/labview/pt/>

Mostrando a interao entre diversos tipos de


sinais, PWM, digital e analgico.

[6] Ajuda do LabVIEW Disponvel em :


<http://zone.ni.com/reference/enXX/help/371361B-01/>

Entendendo o funcionamento do controle do


LabVIEW, atravs da montagem do circuito e
respectiva estruturao da programao de
blocos desejada.
Realizou-se testes de funcionamento para
visualizao dos resultados, visando entender a
interao entre os tipos de sinais e a interface
grfica, assim como utilizar o painel de controle
do dispositivo (frontal) para realizar o
monitoramento e controle do dispositivo a ele
associado, automatizando esse processo a fim de
aperfeioar a leitura e anlise de dados.

[5] O que LabVIEW? Disponvel em:


<http://www.ni.com/labview/why/pt/>

[7] Curso de LabVIEW (NI). Disponvel em:


<http://cnx.org/contents/549b1c9b-5dcc4909-bdeb-91565036f41f@4.6/LabVIEWGraphical-Programming->
[8] Whats Is VISA. Disponvel em :
<https://www.ni.com/visa/>

Potrebbero piacerti anche