Você está na página 1de 56

Introduo ao Labview

Parte I
Prof. Dr.Valner J . Brusamarello DELET UFRGS
www.chasqueweb.ufrgs.br/~valner.brusamarello
Instrumentao Virtual
Integrao hardware / software
transparente e fcil.
Linguagem modular.
Programao grfica.
Integrao de diferentes
aplicaes em uma nica
linguagem.
Aplicaes diversas: J igas de
testes, automao de
processos, superviso de
sistemas, etc.
Atualmente o LABVIEW pode
rodar em diferentes plataformas:
multitarefas (ex.: windows),
plataforma de tempo real,
embedded systems (ex.:
FPGA,s).
The Virtual Instrumentation Approach
Instrumentao Virtual
Um instrumento virtual consiste de
computadores ou estaoes de trabalho
equipados com softwares de aplicaes
em,hardware como placas de aquisiao de
dados, almde drivers de comunicao,
os quais, juntos assumemas funoes de
instrumentos tradicionais.
A principal caracterstica dos instrumentos
virtuais reside na explorao profunda da
flexibilidade de software agregada a um
hardware fundamental.
Almdo esperado aumento de
desempenho com a introduo de tcnicas
flexveis e customizadas de
processamento, existe ainda a vantagem
da reduao de custos, uma vez que a
plataforma sempre a mesma.
Comentrio: A NI, almde criar uma
ferramenta poderosa que disseminou a
sua marca, incrementou de forma
impressionante o seu mercado de
hardware, liderando tentativas de
padronizaes nesse sentido.
The NI Approach Integrated Hardware Platforms
High-Speed
Digitizers
High-Resolution
DigitizersandDMMs
Multifunction
DataAcquisition
Dynamic
Signal Acquisition
Digital I/O Instrument
Control
Counter/
Timers
Machine
Vision
Motion
Control
DistributedI/Oand
EmbeddedControl
LaptopPC PDA DesktopPC PXIModularInstrumentation
Signal Conditioning
andSwitching
UnitUnderTest
Instrumentao Virtual
PXI PCI Extensions for Instrumentation
Sistemas modulares multi-funcionais
controlados pelo labview
O que o LabVIEW?
Ambiente de desenvolvimento de programas em
linguagem grfica (VI);
Os VIs (Virtual Instruments) so programas grficos:
cones so utilizados ao invs de linhas de cdigo.
Possibilitam controle de processos, fluxo, aquisio e
processamento de dados.
Principal caracterstica: facilidade de integrao.
O Labviewpossui uma variedade de funes, porm
voc pode adquirir mdulos especficos (por exemplo
de real time applications) .
Voc tambm pode construir bibliotecas de Vis.
Introduo: Inicializando o Labview
Inicialize o Labview
Podemos iniciar um novo
programa: Blank VI.
Ou podemos explorar a
extensa biblioteca de
exemplos.
Explore tambm o
poderoso Help do
Labview.
Finalmente, em caso de
dvidas, busque apoio na
Internet: temos vrias
opoes em web
resources.
Ambiente LabVIEW
Painel frontal Ambiente visual
Controles = Entradas Indicadores = Sadas
Cada VI possui
duas janelas:
Painel Frontal e
Diagrama de
blocos
Ambiente LabVIEW
Diagrama de Blocos Ambiente de Programao
Componentes do Painel frontal e blocos de funes so conectados com
wires, que mudam de acordo com o tipo de dados.
Painel Frontal Controls Palette
Controls Palette
Contm os controles e
indicadores
Acesso:
Boto Direito no Painel Frontal
Painel Frontal - Controles e
Indicadores
Barra de
Ferramentas
Legenda
do Grfico
Controle:
Parar
Grfico de
Formas de
Onda
cone
Ferramentas do
Grfico
Label do
Grfico de
Formas de
Onda
Barra de
Rolagem
Eixo X
Diagrama de Blocos Functions
Palette
Functions Palette
Contm as funes
Acesso:
Boto Direito (mouse) no Diagrama de Blocos
Diagrama de Blocos
Conexo
De Dados
Terminal de
Grfico de
Forma de
Onda
Estrutura de
LoopWhile
Funo de
Diviso
Terminal de um
Controle
Booleano
Constante
Numrica
Funo De Tempo
Barra de
Ferramentas
Criao de projeto
NewEmpty Project para criar um novo projeto
Criando um novo VI
My computerNewVI
Criando um SubVI
EditCreateSubVI
rea selecionada
SubVI criado
Um SubVI um VI que utilizado por outro VI.
utilizado para simplificar o programa
SubVIs
Modularidade
No LabVIEWcomponentes separados de um VI
so chamados subVIs.
Utilizados quando um determinado cdigo
precisa ser executado sistematicamente com
diferentes entradas.
Analogo s funoes do c.
Qualquer cgigo ou parte de cdigo LabVIEW
pode ser transformado emum SubVI e assim
ser chamado de programa.
Criando um subvi: implementar
esse exemplo.
SubVI
Um subVI corresponde a uma chamada de subrotina emuma
linguagemtexto
Os controles do subVI e os seu indicadores recebeme retornam
dados do VI de chamada.
Criando um SubVIs de partes de um VI
Converta a parte do VI emum subVI usando a ferramenta
Positioning para selecionar a parte do diagrama de blocos que voc
quer utilizar e seleciona EditCreate SubVI.
Um cone para o novo subVI substitui a parte selecionada. O
LabVIEWcria controles e indicadores para o novo subVI,
automaticamente configura o mesmo e liga o subVI s conexes
existentes.
Veja HelpSearch the LabVIEWHelp.
Em outras linguagens
subvi
Icon e connect panel
O Icon e Connector Pane permite definir os dados
transferidos para e do subVI e tambma sua aparncia
no cdigo LabVIEWprincipal.
Todo VI mostra um cone no canto superior direito das
janelas do front panel e do block diagram.
DEpois de construir um VI, construa o cone e o
connector pane assimvoc pode usar o VI como um
subVI.
O icon e o connector pane correspondemao prottipo
da funo emlinguagens texto. Existemmuitas opes
para o connector pane, mas alguns padres gerais so
especificados.
No canto superior direito do front panel voce tem acesso
ao connect panel e ao Icon editor. Explore-o!
Icon e connect panel
Crie um subVI de um novo VI adicione 2 entradas e e uma sada que a soma das entradas.
Abra um new VI (Ctrl+N).
Posicione a funao Add (Programming Numeric) no diagrama de blocos.
Crie controles e indicadores com um duplo clique e selecionando Create Control or Indictor. O diagrama de blocos e o Front Panel devem
parecer.
No Front Panel->boto direito no cone no canto superior direito e selecione Show Connector para revelar o Connector Pane.
Atribua terminais do cone aos dois controles e indicadores com boto esquerdo no cone terminal e e esnto clicando o indicador / controle
desejado
Exerccio explorar!!
Boto direito no Connector Panel e selecione Edit Icon. Isso vai carregar o Editor de cones.
Modifique os grficos para uma representao mais correta da funao do SubVI, nesse caso
adiao.
Salve o SubVI.
Exerccio criando um subvi
Criando uma Library
My ComputerNewLibrary
Adicionando um SubVI a uma Library
My ComputerLibraryNewVI
Barra de Ferramentas
Runbutton
ContinuousRunbutton
Abortbutton
Pause/Continue button
ExecutionHighlightingbutton
StepIntobutton
StepOver button
StepOut button
Warningindicator
Enterbutton
BrokenRunbutton
Fontring
Alignmentring
Distributionring
Resizering
Reorderring
ContextHelpButton
Botes adicionais da barra
do diagrama emblocos
HELP do LabVIEW
Para visualizar a janela de Context Help, selecione
HelpShow ContextHelp, ou pressione as teclas <Ctrl-H>, ou
ainda pressione o boto Show ContextHelpWindowna barra de
ferramentas
Mova o cursor ato objeto
para visualizar seu help
especfico
Simple/DetailedContext Help LockHelp More Help
LabVIEWHELP - Examples
HelpFind Examples
LabVIEW- Discussion Forums
http://www.ni.com/support/
Demonstrao 1: Criando um VI
Abra o Labviewe abra uma rea para um blank VI.
Separe o painel frontal do diagrama de blocos
No painel frontal, clique com o boto direito do
mouse e entre na paleta de ferramentas do tipo
graph. Escolha waveformgraph e arraste o cone
para a rea de trabalho.
Novamente clique com o boto direito e entre no
menu numeric. Escolha dois knobs e arraste-os
para a rea de trabalho.
Utilize a ferramenta para alinhar os knobs.
Demonstrao 1: Criando um VI
Demonstrao 1: Criando um VI
V para o diagrama de blocos e clique com o boto direito
do mouse para ter acesso s funoes.
Entre em express e escolha o bloco simulate signal.
Aceite os defaults dando um OK.
Na rea de trabalho, abrao bloco com o mouse.
Faa a conexo da sada desse bloco para o grfico.
Faa a conexo de um dos knobs ao pinoAmplitude.
Repita a operao para o pino Frequncia.
Antes de rodar, clique com o boto da direita no knob
ligado na frequncia e mude a escala para variar de 0 a
10000 em propriedades.
Rode! O que aconteceu?
Demonstrao 1: Criando um VI
Demonstrao 1: Criando um VI
Basicamente, mandamos o labviewrodar uma vez apenas!
O bloco de simulao, gera 1000 pontos e os mesmos so impressos
no grficos e fim!
Se quisermos que o programa rode indefinitivamente, devemos
adicionar um lao.
Se quisermos ter controle devemos colocar um controle um boto
stop.
Clique com o boto da direita do mouse. Entre em strutures e arraste o
lao while em volta do VI.
O pequeno ina esquerda indica o nmero de interaes. Voc pode
adicionar um indicador (clique com o boto direito do mouse no
terminal do i create indicator).
O sinal vermelho no canto direito indica a parada. Devemos adicionar
um boto de controle (clique com o boto direito do mouse no terminal
do dispositivo create control).
Rode novamente!
Ao tentar mudar a frequncia voc ver uma mensagem de erro.
Conserte o problema!
Labview
O LabVIEWsegue um modelode fluxodos dados pararodar osVIs.
Um ndo diagramade blocosexecutadoquandotodasas entradasesto
disponveis.
Quandoum nexecutado, o dado entodisponibilizadoparaas sadas
(indicadores). Essemodelopropagadoparaosnsseguintes.
Visual Basic, C++, J AVA, e a maioriadaslinguagensde programao
baseadasemtextotem o controledo fluxodeterminadopelaoerdemde
sequnciados elementosdo programa.
Considereum diagramade blocoscom doisnmerossendoadicionados. O
resultadoentomultiplicadopor 2.
Nessecaso, a execuodo programaocorredaesquerdaparadireita.
A funaode multiplicaospassaa ser vlidaapsa soma estar
concluda.
Quandodoisblocosde programaestoemparaleloe soindependentes, os
mesmossoexecutadose tem seusfluxosindependentes. Se o computador
tiver processadoresmltiplos, osdoispedaosde cdigopoderiamrodar
totalmenteindependentesum do outro.
Labview
Tcnicas de Debugging
Quandoo VI noestexecutvel umaseta
quebradamostardano botode Run.
Encontrando Erros: Para listar, clique naseta
quebrada. Para localizar o objetocom problemas,
clique namensagemde erro.
Execution Highlighting (pequena lmpada no
toolbar do painel): Anima o diagramae mostrao
fluxodos dados, permitindoa visualizaode
valoresintermedirios.
Probe: Usadaver valoresemarrays e clusters.
Clique noswires com a ferramentaProbe ou
clique com o botodireitodo mouse.
Retain Wire Values: Usadoemconjuntocom as
probes paraver osvaloresdaltimainteraodo
programa.
Breakpoint: Armapausasemdiferenteslocaisdo
diagrama. Clique noswires ouobjetoscom a
ferramentaBreakpoint.
Exemplo
Exemplo de construo de um
VI
No diagrama de blocos com o clicar com o boto direito e entrar no
menu express. Escolha o bloco Simulate Signal e arraste-o duas
vezes para a rea de trabalho.
Configure o bloco boto direito do mouse propriedades.
Express->Signal Analysis->Filter.
Configure o bloco para um passa baixas com freq. De corte de 100
Hz.
Express->Output->Write to Measurement File.
Com o boto direito->propriedades.
Express->Signal Manipulation->Merge (para unir dois sinais)
V ao painel de trabalho e escolha o grfico: Boto direito na rea
de trabalho->Graph->waveformgraph.
Clique com o boto direito na rea de trabalho e escolha em
Numeric->Vertical Point slide
Clique com o boto direito na rea de trabalho e escolha em
Numeric->Meter
No diagrama de blocos, insira um lao while: Programming-
>structures->while loop
Por fim,no diagrama de blocos clique com o botao direito no STOP e
adicione um controle (boto).
Veja que os controles colocados na rea de trabalho do front Panel
aparecem como cones no diagrama de blocos.
Painel de controle
Tipos de funes
Express VIs: VIs interativos
configurveis: borda azul
Standard VIs: VIs modulares
customizados
Funes: Operaes bsicas
Que tipos de funes so disponibilizadas?
Entrada e sada:
Simulao de sinais e dados
Aquisio e gerao de sinais com DAQs
Comunicao (serial (USB, TCP-IP), GPIB)
ActiveX para comunicao com outros programas
Anlise:
Processamento de sinais
Estatstica
Matemtica avanada e frmulas
Continuos time solver
Armazenamento:
I/O de arquivos
Observao: MUITAS FERRAMENTAS DO LABVIEW PODEM SER
ADQUIRIDAS NA FORMA DE PACOTES ESPECFICOS: Real Time,
Processamento de Imagens, FPGA, entre outros
http://www.ni.com/toolkits
Exerccio 1
Realizao de uma soma de dois
nmeros
Inserir os elementos no Block Diagram.
Selecionar os elementos:
(a) Na janela Functions selecionar Programming,
Numeric e Add
(b) Arrastar o VI Add para o espao de trabalho;
(c) Clicar 1X com o boto direito do mouse (sobre
o VI de interesse). Irabrir uma janela que permite
criar rtulos (labels), apresentar terminais, criar
dispositivos de entrada e sada (quando for o caso),
apresentar o correspondente help, entre outras
funes. O rtulo deste VI deve ser SOMADOR
(clicar sobre o rtulo default, apagando-o e
digitando SOMADOR).
Exerccio 2
Outras operaes e
controles
Desenvolver um
programa para somar,
subrair, dividir e
multiplicar dois nmeros
X e Y. Selecionar outros
dispositivos de sada
(usar agora o painel
frontal para seleo de
novos VIsde sada). Para
realizar as ligaes
utilizar o boto Connect
Wire do Tools Palette.
Exerccio 3:
Utilize as
tcnicas de
debugging para
encontrar os
erros no
programa ao
lado
Exerccio 4
Ok! Agora vamos
explorar alguns
recursos (que
depois sero
detalhados). Siga
as instrues:
Passo 1: Inicie o
Labview. Voc
ver esta tela:
Exerccio 4 (calma!... Estamos
recapitulando o que vimos...)
Passo 2: Selecione blank VI (VI
a sigla de VIRTUAL
NSTRUMENT). Fazendo isso voc
ter acesso a rea de trabalho, a
qual dividida em duas janelas: a
janela de visualizao do VI
Front Panel e a janela do
diagrama de blocos, onde os
programas so desenvolvidos.
Passo 3: No diagrama de blocos
com o menu de funes aberto
(Figura anterior), abra a funo
express Signal Analysis e
escolha Simulate signal.
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)
Arraste este componente
para a rea de trabalho e se
desejar voc pode modificar
as propriedades do mesmo
clicando com o boto direito.
O default uma onda
senoidal de 10 Hz.
Passo 4: V ao Front Panel
e no menu de controles,
selecione Modern e arraste
a ferramenta
Graph.Novamente com o
boto direito do mouse voc
pode modificar as
propriedades da ferramenta.
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)
Passo 5: Volte ao diagrama de
blocos e ligue a sada do bloco
simulador a entrada da
ferramenta de grficos. Mande
rodar e voc ver o sinal
simulado na ferramenta de
grfico.
Voc dever ver no grfico o
seguinte resultado:
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)

Que uma onda senoidal com 10Hz.


Passo 6: Agora vamos adicionar uma formula
matemtica para manipular o sinal de sada e
mostrar isso no grfico. No Diagrama de Bloco
abra a Paleta de Funes e selecione
Mathematics, Scripts e Formulas e v em
Frmula.
Insira a frmula no bloco de diagrama, e
aparecer a seguinte tela:

Onde possvel assim como se fosse uma


calculadora criar funes e execut-las. Iremos
multiplicar por 10 a nossa onda para termos
um incremento na amplitude da onda.
Em Label X1, iremos substituir X1por Sine
ou Senocomo desejar, qualquer valor
aceito.
Em seguida a tela da formula ira mostrar Sine
ou o valor digitado, agora nesta tela
colocaremos *10 ou seja, multiplicaremos o
valor por 10.
Note que h um quadro verde ao lado da tela,
caso ele esteja verde indica que a formula est
correta, em caso estar cinza, indica que a
formula escrita est incorreta.
Dever ficar assim:
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)
Aps de um clique em ok.
E retornaremos para o
bloco de diagrama, onde
deveremos ligar a formula
ao Simulador de Sinal.
Da seguinte maneira:
Ligamos o sinal de sada
ao Sine que a nossa
varivel de entrada na
frmula. Agora no Painel
Frontal, criamos um Grfico
(waveformgraph) para que
este mostre o sinal
multiplicado por 10.
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)

Onde desta forma o


resultado da frmula
mostrado graficamente.
O resultado dever ser
esse para um Sinal de
10Hz:
Dica: O grfico pode
mostrar ao mesmo tempo o
sinal advindo diretamente
do simulador de sinal
assim como o grfico pode
apresentar o sinal que
passou pela frmula
matemtica assim
possvel compar-los.
Onde temos este exemplo:
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)
Passo 7: Como inserir
um Loop (para o
sistema ficar rodando
continuamente)
V no bloco de
diagrama, no viewem
functions palette,
express, execution
control em while
loop, voc ter de
fazer um quadrado ao
redor de todos os
componentes que
sero includos no
loop.
Exerccio 4 (calma!... Estamos recapitulando o
que vimos... Adicionando novos componentes)
O resultado ser o seguinte:
No painel frontal ir surgir um
boto de stop, com o qual
pode-se parar o processo do
loop.
Pode-se tambm definir o
tempo do loop, adicionando
outra funo, que Time
Delay, que pode ser
adiocinado no mesmo menu
onde se encontra o Loop.
Automaticamente quando
inserimos o Time Delay, o
mesmo abre a janela de
configurao e pede o tempo
para o processo.

Aps adicionar o time delay,


rode o processo e verifique se
o tempo para o delay
suficiente para rodar o
processo de forma satisfatria.
Desafio
1) Faa um programa que concatena duas strings
2) Explore o desafio 1: entre com um nmero e um
string obtenha na sada uma nica string concatenada
com o nmero. (procure o bloco build text)
3) Faa um programa que simule uma entrada analgica
(simulando variaao de temperatura). Coloque um
controle que possibilite escolher temperatura em C, F e
K e mostre em um indicador (termmetro).
4) Com o programa feito em 3) faa um subvi e
implemente um sistema que emite um alarme assim que
uma temperatura sair de uma faixa de valor mnimo e
valor mximo. Utilize um loop while com uma
temporizaao de 1 s e salve os dados em um arquivo.

Você também pode gostar