Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
Novembro, 2013
LabVIEW/Arduino
SUMRIO
INTRODUO..............................................................................................................4
LABVIEW......................................................................................................................5
2.1
2.2
2.2.1
2.2.2
2.2.3
Paletas......................................................................................................................9
2.2.3.1
Paleta Tools...........................................................................................................9
2.2.3.2
2.2.3.2.1
Paleta Controls................................................................................................11
2.2.3.2.2
Paleta Functions..............................................................................................11
2.3
SALVANDO VIs........................................................................................................12
2.4
CRIANDO UM VI.....................................................................................................12
2.4.1
2.4.1.1
2.4.2
Painel Frontal........................................................................................................12
Configurando Controle e Indicadores.................................................................13
Diagrama de Bloco.................................................................................................13
2.4.2.1
Ns......................................................................................................................14
2.4.2.2
Terminais.............................................................................................................14
2.4.2.3
Ligaes..............................................................................................................14
2.4.3
Fluxo de Dados.......................................................................................................14
2.4.4
Exemplo I...............................................................................................................15
2.4.5
Criando Um SubVI...............................................................................................17
2.5
LOOPS E DIAGRAMAS...........................................................................................19
2.5.1
While Loops...........................................................................................................19
1 INTRODUO
O uso de softwares para simulao e manipulao de dados tm sido uma
alternativa de aprendizado muito difundida entre estudantes e professores
principalmente de cursos na rea das Engenharias. Em vrias instituies de ensino
o discente no tem acesso a laboratrios equipados para oferecer a integrao entre
teoria e prtica que seriam ideais para fixao do conhecimento, fato que salienta a
importncia da insero de novos mtodos de ensino por parte das escolas, como o
uso das ferramentas digitais.
Dentre as inmeras que encontramos, algumas se destacam pela sua
performance, pelo seu ambiente, inovao tecnolgica introduzida e as vezes por
todos e mais alguns aspectos. Como exemplo temos o LabVIEW, usado para
simulaes, aquisies de dados e criao de modelos na rea de controle.
Apresentando muitos fatores positivos, como uma ambientao rpida e ampla
gama de aplicaes o programa auxilia com eficincia o usurio que pretende
entender como processos funcionam, desde sua modelagem at o funcionamento.
Seu grande diferencial est no modo de construo dos modelos, que feito se
separando a interface e a programao dos blocos. A ferramenta de interface do LabVIEW
mostra as variveis envoltas e permite a alterao de parmetros do modelo, sendo muito
interativa. No painel em que so inseridos os blocos de programao, o usurio encontra uma
grande variedade de representaes de instrumentos e tm inmeras combinaes disponveis
para conseguir criar o sistema desejado.
2 LABVIEW
O LabVIEW uma ferramenta grfica de programao, usada na rea de
controle e simulaes de processos, anlise de dados e comportamentos de
sistemas. Sua forma de programao difere das demais, pois feita com diagrama
de blocos em vez de uso de linhas de programa, possibilitando assim maior
interao com o usurio j que sua modelagem permite utilizar componentes que
simularo seu funcionamento original, fazendo com que seja possvel a visualizao
em tempo real do comportamento do sistema. Os blocos de funes so chamados
de instrumentos virtuais (VI), que so organizados de maneira hierrquica, sendo
assim possibilitam que aps serem esquematizados, cada VI pode ser usado como
subprograma por qualquer outro VI ou pode, simplesmente, ser executado
isoladamente. Este aspecto dos instrumentos virtuais criados no programa facilita
tambm a montagem de processos paralelos no modelo.
Outra caracterstica importante do software sua comunicao com
equipamentos e hardwares usuais em processos industriais, permitindo a
transmisso de dados via RS-232 ou RS-485, via internet utilizando a ferramenta
LabVIEW Web Server ou at mesmo fazendo a transmisso dos parmetros do
modelo diretamente para um microcontrolador, como um Arduino ou placa similar
que desempenhar a funo de atuador.
2.1
Ctrl + N.
Clique no campo File
pressione Ctrl + O.
Clique no campo File
2.2
Quando se cria um novo instrumento virtual, uma janela de painel frontal sem ttulo
aparece. A outra janela contm o diagrama de bloco.
Painel Frontal
Diagrama de Blocos
Clique no boto Highlight Execution para ver o fluxo de dados atravs do diagrama
de bloco. Clique no boto novamente para desabilitar essa funo.
Clique no boto Step Into para executar (passo a passo) um loop, um sub VI, e assim
por diante. A execuo passo a passo sobre um VI permite percorrer o VI de n n.
Clique no boto Step Over para entrar (diretamente) em um loop, um sub VI, e assim
por diante. Ao passar diretamente pelo n, executa-se o n sem o esquema de passo nico.
Clique no boto Step Out para sair de um loop, um sub VI, e assim por diante. Ao sair
de um n conclui-se a execuo passo a passo atravs do n e vai para o prximo n.
O boto Warning aparece quando h um problema potencial com o diagrama de
bloco, mas ele no faz com que o VI pare sua execuo. Pode se habilitar o boto Warning
selecionando Tools
2.2.3
Paletas
O LabVIEW possui paletas grficas flutuantes para ajudar na criao e execuo dos
VIs. O LabVIEW 2013 possui trs paletas que so Controls (painel frontal), Functions
(diagrama de blocos) e Tools que pode ser posicionada tanto no painel frontal quanto no
diagrama de blocos, tambm possvel posicionar as paletas em qualquer lugar da tela.
10
11
2.2.3.2.1
Paleta Controls
2.2.3.2.2
Paleta Functions
Utilize a paleta Functions para montar o diagrama de bloco. A paleta Functions est
disponvel somente no diagrama de bloco. Clique com o boto direito do mouse em uma rea
aberta do diagrama de blocos para exibir a paleta Functions. Fixe a paleta Functions,
clicando no pino, localizado no canto superior esquerdo da paleta.
12
2.4
CRIANDO UM VI
Os VIs possuem trs componentes principais: o painel frontal, o diagrama de blocos e
13
2.4.2.1 Ns
Ns so objetos do diagrama de bloco que possuem entradas e/ou sadas e executam
operaes quando o VI executado. Eles so semelhantes a declaraes, operadores, funes
e sub-rotinas em linguagens de programao baseadas em texto. Os tipos de ns incluem
funes, subVIs e estruturas.
2.4.2.2 Terminais
Terminais so portas de entrada e sada que trocam informaes entre o painel frontal
e o diagrama de bloco. Os terminais so semelhantes a parmetros e constantes em linguagens
de programao baseadas em texto.
14
2.4.2.3 Ligaes
Ligaes so semelhantes a variveis em linguagens de programao baseadas em
texto, elas transferem dados entre objetos do diagrama de bloco. Cada ligao tem uma nica
fonte de dados que pode ser ligada a vrios VIs e funes que fazem a leitura dos dados. As
ligaes so de cores, estilos e espessuras diferentes, dependendo de seus tipos de dados.
Exemplo I
Criar um VI que converta a temperatura que est na escala Celsius para a escala
Fahrenheit.
1. Na janela principal do LabVIEW, Clique no campo File
New VI para criar um novo VI.
2. Selecione Window Tile Left and Right para exibir o painel frontal e o diagrama de
bloco lado a lado.
3. No painel frontal selecione o indicador Thermometer e Numeric Control na paleta
Controls
Boolean. Mova o indicador para o painel frontal e clique para posicionar os indicadores e
controles, um de cada vez.
15
16
17
Create
SubVI.
Observao: No possvel converter uma seo com mais de 28 entradas e sadas, pois esse
o nmero mximo disponvel em um painel de conectores.
18
2.5
LOOPS E DIAGRAMAS
Estruturas so representaes grficas dos loops e das declaraes condicionais de
19
Terminal condicional
Exemplo II
Criar um VI para visualizar um sinal e mostrar em um grfico at que a condio de
parada seja estabelecida.
1. Na janela principal do LabVIEW, Clique no campo File
New VI para criar um novo VI.
2. Selecione Window Tile Left and Right para exibir o painel frontal e o diagrama de
bloco lado a lado.
3. No painel frontal selecione o diagrama Waveform Chart na paleta Controls
Graph, tambm selecione o boto Stop Button na paleta Controls Boolean. Mova o
indicador para o painel frontal e clique para posicionar o diagrama e o controle, um de
cada vez.
20
Functions
paleta Functions
posicionar as funes, uma de cada vez. As funes devero ser posicionadas e interligadas
dentro da funo While Loop como mostrado abaixo. Utilize a ferramenta Wiring para
interligar os blocos.
5. Para visualizar o sinal execute o VI e para parar a execuo clique em STOP. O loop da
funo While Loop ser executado a cada 500 milissegundos.
21
a ser repetido por um determinado nmero de vezes. Para adicionar objetos no For Loop,
selecione o objeto, arraste-o e solte dentro da estrutura. A estrutura For Loop executada at
que seu terminal de entrada receba o valor de iteraes. A contagem de iteraes sempre
iniciada em zero e aps a primeira iterao o terminal retorna para zero.
Terminal de iteraes
Exemplo III
Executar um VI por um determinado nmero de vezes.
1. Na janela principal do LabVIEW, Clique no campo File
New VI para criar um novo VI.
2. Selecione Window Tile Left and Right para exibir o painel frontal e o diagrama de
bloco lado a lado.
3. No painel frontal selecione os indicadores Tank e Numeric Indicator e o controle
Numeric Control na paleta Controls
Numeric.
22
paleta Functions
posicionar as funes, uma de cada vez. As funes devero ser posicionadas e interligadas
dentro da funo For Loop como mostrado abaixo. Utilize a ferramenta Wiring para
interligar os blocos.
5. Execute o VI para compreender a funo For Loop. A funo For Loop executar o nmero
de iteraes atribudo no painel frontal. O loop da funo For Loop ser executado a cada
500 milissegundos.
23
2.6
ESTRUTURAS CASE
A estrutura Case possui dois ou mais subdiagramas ou condies Os subdiagramas
podem ser vistos somente um de cada vez e as condies so executadas pela estrutura uma
de cada vez. A estrutura analisa um valor de entrada e determina qual subdiagrama deve ser
executado. possvel fazer uma comparao da estrutura Case com as declaraes
condicionais if...then...else em linguagens de programao baseadas em texto.
Identificador do seletor de condies
Terminal do seletor
Exemplo IV
Estrutura Case Booleana
Executar um VI com a estrutura Case Booleana, para que quando a entrada for TRUE
ocorra a soma de dois nmeros e quando a entrada for FALSE ocorra a subtrao de dois
nmeros.
1. Na janela principal do LabVIEW, Clique no campo File
24
2. Selecione Window
Boolean.
25
5. Quando a entrada for TRUE ocorrera a soma e quando a entrada for FALSE ocorrera uma
subtrao.
Numeric.
26
5. Quando a entrada for 0 ou menor ocorrera uma subtrao e quando a entrada for 1 ou
maior ocorrera uma adio.
27
28
5. Quando a entrada for subtract ocorrera uma subtrao e quando a entrada for add ocorrera
uma adio. Para qualquer string diferente de add e subtract, a estrutura ter como padro a
string subtract.
2.7
ESTRUTURA SEQUENCE
A estrutura Sequence contm um ou mais subdiagramas, ou quadros, que so em
Exemplo V
Efetuar a operao matemtica que engloba a estrutura sequence.
29
Numeric.
o indicador para o diagrama de blocos e clique para posicionar as funes, uma de cada
vez. As funes devero ser posicionadas e interligadas dentro das funes Stacked
Sequence Structure como mostrado abaixo. Com o boto direito clique em uma das
estruturas Sequence e selecione Add Frame Before, depois com o boto direito selecione
Add Frame After e Add frame Before na outra estrutura Sequence. Utilize a ferramenta
Wiring para interligar os blocos.
30
5. O VI executara a primeira estrutura e em seguida outra, depois que ocorrer isto ocorrera a
adio dos dados. Utilize a ferramenta highlight execution para melhor visualizao dos
dados.
2.8
ESTRUTURA DE FRMULA
O frmula Node um n baseado em texto e utilizado para executar operaes
Exemplo VI
Analisar o comportamento de uma funo, quando esta executada no frmula Node.
1. Na janela principal do LabVIEW, Clique no campo File
New VI para criar um novo VI.
2. Selecione Window Tile Left and Right para exibir o painel frontal e o diagrama de
bloco lado a lado.
3. No painel frontal selecione o diagrama Waveform Chart na paleta Controls Graph.
31
Structures,
para o diagrama de blocos e clique para posicionar as funes, uma de cada vez. As
funes devero ser posicionadas e interligadas como mostrado abaixo. Utilize a
ferramenta Wiring para interligar os blocos.
32
IDE Arduino;
LabVIEW 2013;
Acesso internet.
33
34
4. Abrira uma janela indicando que o pacote foi instalado com sucesso clique em Finish;
35
Para fazer o download do modelo so necessrios alguns passos iniciais como ter a IDE
do Arduino verso 1.0.5 baixada no computador e realizar a instalao do driver da porta de
comunicao. Os passos sero descritos logo abaixo:
V ao Gerenciador de Dispositivos;
Painel de Controle Hardware e Sons Gerenciador de Dispositivos;
36
37
38
3.3
ARDUINO
ATmega168 ou ATmega328
5 Volts
7 12 Volts
6 20 Volts
14 pinos (6 PWM)
8 pinos
40 mA
16 KB (Atmega168) ou
32 KB (Atmega328)
1 KB (Atmega168) ou 2 KB (Atmega328)
512 bytes (Atmega168) ou
1 KB (Atmega328)
16 MHz
45 mm
39
Largura
Peso
18 mm
5 gramas
ATmega168 ou ATmega328
5 Volts
7 12 Volts
6 20 Volts
14 pinos (6 PWM)
8 pinos
40 mA
50 mA
32 KB (Atmega328)
2 KB (Atmega328)
1 KB (Atmega328)
16 MHz
68.6 mm
53.4 mm
25 gramas
40
ATmega 2560
5 Volts
7 12 Volts
6 20 Volts
54 pinos (15 PWM)
16 pinos
40 mA
50 mA
256 KB
8 KB
4 KB
16 MHz
102 mm
53 mm
32 gramas
41
AT91SAM3X8E
3.3 Volts
7 12 Volts
6 16 Volts
54 pinos (12 PWM)
12 pinos
130 mA
800 mA
800 mA
512 KB
96 KB
84 MHz
101.52 mm
53.3 mm
36 gramas
42
3.4
2. Selecione File
43
Descrio
Objeto de inicializao da comunicao serial e entrada
de dados entre o Arduino e o LabVIEW.
Objeto de comunicao serial e sada de dados entre o
Arduino e o Simulink.
44
Objeto do buzzer.
Biblioteca Sensors.
Biblioteca Utility
45
Biblioteca Examples
Painel de Controle
Diagrama de Blocos
Descrio
Terminal de seleo do pino
analgico.
Terminal de seleo do pino
digital.
Exemplo I
Executar um VI que leia a entrada digital e indique atravs de um LED no painel de
controle.
Arduino.
46
5. A comunicao entre Arduino e Labview iniciada pelo objeto Init, este bloco
parametrizado com a taxa de transferncia de dados, modelo do Arduino e o tipo de
comunicao. A funo While Loop executa o tempo todo a varredura dos sinais
verificando as mudanas de estado, quando ocorrer a mudana de estado na entrada digital
a funo Case Structure vai processar o valor e definir se o LED acendera ou apagara.
47
Exemplo II
Executar um VI que acione uma sada digital, dado um comando Booleano no painel
frontal. Indique a sada digital atravs de um LED.
Arduino.
48
5. A comunicao entre Arduino e Labview iniciada pelo objeto Init, este bloco
parametrizado com a taxa de transferncia de dados, modelo do Arduino e o tipo de
comunicao, tambm faz parte da parametrizao o objeto Pin Mode. A funo While
Loop executa o tempo todo a varredura dos sinais verificando as mudanas de estado,
49
quando ocorrer a mudana de estado no Push Button a funo Case Structure vai processar
o valor e definir se o LED acendera ou apagara.
Exemplo III
Executar um VI que leia a entrada digital, indique no painel de controle e acione uma
sada digital. Indique a sada digital atravs de um LED.
Boolean, tambm selecione os controles Digital Pin duas vezes, Board Type
Arduino.
50
5. A comunicao entre Arduino e Labview iniciada pelo objeto Init, este bloco
parametrizado com a taxa de transferncia de dados, modelo do Arduino e o tipo de
comunicao. A funo While Loop executa o tempo todo a varredura dos sinais
verificando as mudanas de estado, quando ocorrer a mudana de estado na entrada digital
a funo Case Structure vai processar o valor e definir se o LED acendera ou apagara.
51
Exemplo IV
Executar um VI que leia a entrada analgica do Arduino e indique no painel de
controle a tenso.
Numeric e Stop
Arduino.
52
5. A comunicao entre Arduino e Labview iniciada pelo objeto Init, este bloco
parametrizado com a taxa de transferncia de dados, modelo do Arduino e o tipo de
comunicao. A funo While Loop executa o tempo todo a varredura do sinal verificando
a entrada analgica. Conforme o potencimetro gira a tenso, que varia de 0 volts 5 volts
mostrada no indicador Gauge.
53