A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

AC250_01/2013 Cristiane Martins AQUISIÇÃO DE DADOS / LABVIEW BÁSICO Semana 5.

Apresentações semelhantes


Apresentação em tema: "AC250_01/2013 Cristiane Martins AQUISIÇÃO DE DADOS / LABVIEW BÁSICO Semana 5."— Transcrição da apresentação:

1 AC250_01/2013 Cristiane Martins AQUISIÇÃO DE DADOS / LABVIEW BÁSICO Semana 5

2 AC250_01/2013 Cristiane Martins Introdução ao LabView Semana 4 – Revisão – Assunto a tratar - For Loop, While Loop e Shift Registers

3 AC250_01/2013 Cristiane Martins Introdução ao LabView REVISÃO – 10 MINUTOS

4 AC250_01/2013 Cristiane Martins LabVIEW Básico Três passos: 1. Familiarizar-se com o ambiente. 2. Familiarizar-se com as funções LabVIEW. 3. Aprender como desenvolver uma aplicação.

5 AC250_01/2013 Cristiane Martins 1. Ambiente LabVIEW Painel Frontal x Diagrama de Blocos Ambos lado a lado. Repare que Painel Frontal possui fundo cinza enquanto Diagrama de Blocos branco. Para que a tela apareça neste formato clique em Windows>>Tile Left and Right ou simplesmente Ctrl + T

6 AC250_01/2013 Cristiane Martins 1.1 – PAINEL FRONTAL Paleta de Controle (controls palette) selecione: Windows>>Show Controls Palette A paleta de controle consiste de ferramentas como indicadores e controles e é utilizada para editar o painel frontal.

7 AC250_01/2013 Cristiane Martins O painel frontal é o rosto do programa Contém indicadores (saídas) como por exemplo indicadores numéricos, gráficos e LEDs Contém também controles (entradas) como por exemplo botões, interruptores e controles numéricos Os controles e indicadores do painel frontal têm uma representação no diagrama de blocos que permite a sua ligação ao programa No entanto, só podem ser apagados no painel frontal DICA: Por “default”, o painel frontal tem um fundo cinzento 1.1 PAINEL FRONTAL

8 AC250_01/2013 Cristiane Martins 1.2 – DIAGRAMA DE BLOCOS Paleta de Funções selecione: Windows>>Show Functions Palette A paleta de funções consiste de ferramentas como indicadores e controles e é utilizada para editar o diagrama de blocos.

9 AC250_01/2013 Cristiane Martins 1.2 Diagrama de Blocos É no diagrama de blocos (Block Diagram) que a programação dos VIs é feita Todos os objetos presentes no painel frontal (Front Panel) estão representados no diagrama de blocos Os diferentes objetos (controles, indicadores, funções e VIs) são ligados por fios que geram o fluxo de dados e controlam a ordem de execução do programa Cada fio só pode ter uma origem (source) mas podem ter diversos destinos (sinks) DICA: Por ‘’default’’, o fundo do diagrama de blocos é branco DICA: Para encontrar um objeto no painel frontal (diagrama de blocos), fazer duplo clique sobre a sua representação no diagrama de blocos (painel frontal)

10 AC250_01/2013 Cristiane Martins Diagrama de Blocos (Fios) Os fios finos representam variáveis escalares, enquanto que arrays de uma dimensão são representados por linhas grossas e arrays de duas dimensões por linhas paralelas Waveforms são trilhos marrons

11 AC250_01/2013 Cristiane Martins 1.6 Paleta de ferramentas (tools palette) _ interage tanto no Painel Frontal quanto no Diagrama de Blocos selecione: Windows>>Show Tools Palette Utilizada para editar as VIs. Pressionando a tecla altera-se as ferramentas comumente mais utilizadas na janela ativa. Os ícones que compõe esta paleta :

12 AC250_01/2013 Cristiane Martins 2. Técnicas Neste tópico revisaremos algumas técnicas

13 AC250_01/2013 Cristiane Martins 2.1 Conectando objetos (somente no diagrama de blocos) Para conectar um terminal a outro selecione o ''conecta objetos'', clique uma vez sobre a saída do primeiro objeto, mova o mouse até a entrada do segundo objeto e clique novamente. A definição para quem é o primeiro e quem é o segundo objeto independe para o funcionamento. Quando o ''conecta objetos'' está sobre um terminal, a área do terminal pisca indicando que o clique liga o fio no terminal. Um exemplo de ligação é mostrado na Figura

14 AC250_01/2013 Cristiane Martins Selecionando e apagando fios Para selecionar um fio escolha a ferramenta ''posiciona objetos'' clique sobre o fio e. 2.2 Fio tracejado Um fio tracejado representa uma ligação incompatível. Você pode ter um fio tracejado por uma série de razões, como conectar dois controles, ou uma fonte com saída de dados incompatíveis (por exemplo, gerar dados numéricos e utilizar indicadores booleanos). Para removê-los escolha edit>>remove bad wires ou simplesmente CTRL + B. Não confunda fio tracejado com pontuado. O pontuado representa um dado tipo booleano. Abaixo um exemplo de fio tracejado (indica erro) ao lado de uma ligação pontuada.

15 AC250_01/2013 Cristiane Martins 2.3 Criar constantes e Indicadores Para objetos atuando como entradas ou saídas no diagrama de blocos, o LabVIEW possui uma forma de se criar uma constante ou indicador sem a necessidade de utilizar a paleta de funções. Posiciona-se o mouse sobre o terminal que se deseja criar uma constante ou indicador, clica-se, com o botão direito do mouse, sobre este terminal e seleciona create>>control ou create>>constant ou ainda create>>indicator.

16 AC250_01/2013 Cristiane Martins 2.4 Context Help (ajuda resumida) O Context Help é uma janela, que se pode abrir no LabVIEW, que fornece um pequeno resumo sobre qualquer objeto do programa. Pode-se abrir o Context Help selecionado Help>>Show Context Help ou através Ctrl+H e posionando o mouse sobre o objeto.

17 AC250_01/2013 Cristiane Martins 2.7 Técnicas para encontrar erros (debbugging) 2.7.1 Utilização do ''Probe data'‘ Uma forma de encontrar erros é lendo os sinais em toda a VI. Para ler um sinal em um ponto específico pode-se utilizar uma ponta de prova. "Probe data'‘ que está disponível na paleta de ferramentas. Basta selecioná-lo e clicar sobre o ponto do fio que se quer conhecer o valor 2.7.2 Utilização do ''Highlight Execution'‘ Esta ferramenta permite a visualização do fluxo do sinal no diagrama de blocos.

18 AC250_01/2013 Cristiane Martins Vamos construir uma VI com um While Loop e um chart para aquisição e visualização de dados em tempo real. Para tal geraremos dados randômicos e os apresentaremos sobre um chart. Um botão (knob control) sobre o painel frontal ajustará a taxa de loop entre 0 e 2 segundos e uma chave parará a VI. Vamos seguir os dados com o ‘’Probe’’.

19 AC250_01/2013 Cristiane Martins 2.5 Executar uma VI 1. Deixar o painel frontal ativo clicando sobre a janela ou escolhendo windows>>show front painel. 2. Execute uma VI clicando ''run button'' na barra de ferramentas do painel frontal. 3. Caso deseje executar repetidamente, clique sobre o ''continuous run button''.

20 AC250_01/2013 Cristiane Martins 2.6 Atente para as CORES BLUE número inteiro / ORANGE número com ponto flutuante Green representa lógica booleana Purple representa string 2.7 Indicadores/Controles Somente podem ser deletados no Painel Frontal 2.8 Atente para ESPESSURA Indicadores têm bordas finas. Controles têm bordas grossas.

21 AC250_01/2013 Cristiane Martins Breve Revisão – construa a VI abaixo

22 AC250_01/2013 Cristiane Martins Symbols

23 AC250_01/2013 Cristiane Martins

24 AC250_01/2013 Cristiane Martins

25 AC250_01/2013 Cristiane Martins Follow to Help>>Find Examples>>Switch>> Mechanical Action of Booleans

26 AC250_01/2013 Cristiane Martins

27 AC250_01/2013 Cristiane Martins In LV, "latch" means the buttons holds its value until the terminal is read in the block diagram, at which time the button returns to its default state. The "switch" buttons are the ones where the button will hold its value until the user goes and hits the button again to release it back A latch is mechanical type of a hardware that is used to join two or more objects, it is a special type of a fastener that can join surfaces together and allowing them eventually open only a little bit.

28 AC250_01/2013 Cristiane Martins Aula 3 - Sub VI Esta lição mostrou como criar um ícone e terminal de ligações de tal forma que se possa utilizar uma VI como SubVI em outra VI. Uma SubVI é análoga a uma subrotina em uma linguagem de programação baseada em texto. Utilizar SubVI simplifica o diagrama de blocos e ajuda a gerenciar modificações nas VIs.

29 AC250_01/2013 Cristiane Martins Ícon e 1.Cada VI é representada por um ícone que aparece no canto superior direito do Painel Frontal e Diagrama de Blocos. 2.Por ''default'‘ este ícone indica o número de novas VI você abriu desde que iniciou o LabVIEW. Abra uma nova VI e observe o número indicado.

30 AC250_01/2013 Cristiane Martins 3. Com o mouse sobre o ícone clique com a direita. Selecione Edit Icon. Você poderá substituir o ícone “default” pelo seu através de Icon Editor. Clique com a direita sobre o ícone e selecione Edit Icon ou simplesmente sobre o ícone duplo clique com a direita.

31 AC250_01/2013 Cristiane Martins Para utilizar uma VI como subVI você deverá construir uma caixinha de terminais (terminal de ligações). O terminal de ligações é uma série de terminais que definem entradas e saídas da VI. Você deverá associar aos terminais do conector controles e indicadores presentes no Painel Frontal. A seguir os passos para construção de um terminal de ligações.

32 AC250_01/2013 Cristiane Martins Sem conectores não é possível entrar e sair de dados através da VI O item Show Connector mostrará o símbolo de entradas e saídas.

33 AC250_01/2013 Cristiane Martins Existe a liberdade para mudança de padrões de representação. Você poderá ainda variar o arranjo espacial do padrão escolhido através de Flip Horizontal, Flip Vertical ou Rotate 90 .

34 AC250_01/2013 Cristiane Martins Para identificar qual controle ou indicador está associado ao determinado terminal, clique no terminal. O controle ou indicador associado mostrará uma borda de seleção.

35 AC250_01/2013 Cristiane Martins Resumo Uma VI no interior de outra VI é denominado SubVI. Para utilizar uma VI como SubVI, você deverá necessariamente construir um ícone e terminal de ligações. Utilize Icon Editor para criar seu próprio ícone. O terminal de ligações é um conjunto de terminais que correspondem a controles e indicadores no Painel Frontal da VI. Defina a conexão por associar controle ou indicadores do Painel Frontal a conectores da caixa de terminais.

36 AC250_01/2013 Cristiane Martins Após construir VI e criar ícone e terminal de ligações, você poderá utilizá-la como subVI. Será mostrado: - Adicionar uma SubVI no Diagrama de Blocos de outra VI. -Abrir uma subVI a partir de uma VI. -Especificar quais conexões são exigidas, recomendadas ou opcionais.

37 AC250_01/2013 Cristiane Martins Para inserir uma subVI no Diagrama de Blocos de uma VI, clique Select a VI na paleta Functions.

38 AC250_01/2013 Cristiane Martins Duplo click na VI que você quer utilizar como subVI.

39 AC250_01/2013 Cristiane Martins O ícone da VI aparecerá. Posicione no Diagrama de Blocos.

40 AC250_01/2013 Cristiane Martins Você pode abrir e editar uma subVI. Qualquer modificação que fizer afetará somente a VI em andamento até que você salve a subVI. Quando salvar as variações afetarão todas as VIs que utilizam esta subVI, não somente a atual.

41 AC250_01/2013 Cristiane Martins New VI Library

42 AC250_01/2013 Cristiane Martins Salve as >>New VI Library

43 AC250_01/2013 Cristiane Martins Nomeie a Library e clique VI library

44 AC250_01/2013 Cristiane Martins Para adicionar qualquer VI Save as>>path

45 AC250_01/2013 Cristiane Martins

46 AC250_01/2013 Cristiane Martins Adding VIs and Controls to the User Library and the Instrument Library The simplest method for adding VIs and controls to the Controls and Functions palettes is to save them in the labview\user.lib directory. Find the directory on your machine (your path may differ) When you restart LabVIEW, the Functions>>Express User Libraries and Controls>>Express User Controls palettes contain subpalettes for each directory, VI library (.llb), or menu (.mnu) file in the labview\user.lib directory, and icons for each file in the labview\user.lib directory. After you add files to or remove files from specific directories, LabVIEW automatically updates the palettes when you restart LabVIEW. "C:\Program Files\National Instruments\LabVIEW 7.1 \user.lib"

47 AC250_01/2013 Cristiane Martins Formula Node Ciclo For, For Loop Ciclo While, While Loop Shift Registers

48 AC250_01/2013 Cristiane Martins

49 AC250_01/2013 Cristiane Martins

50 AC250_01/2013 Cristiane Martins contém o número atualizado de iterações finalizadas, 0 na 1a, 1 na 2a e etc..

51 AC250_01/2013 Cristiane Martins Ciclo For Executa o subdiagrama n vezes, até que o valor se iguale ao valor do terminal contador; O terminal contador pode ser explicitamente ajustado ou através auto-indexing; O terminal do contador está localizado internamente tal que pode ser acessado no interior do loop;

52 AC250_01/2013 Cristiane Martins Formula Node para cálculo de duas equações e o resultado no gráfico. Functions>>Structures>> Formula Node Functions>>Structures>> Loop For Functions>>Array>>Build Array Controls>> Graph>> Waveform Graph Y1 = x 3 – x 2 + 5 Y2 = mx + b

53 AC250_01/2013 Cristiane Martins Plote a equação y = f(x)^3 + f(x), onde f(x) = tanh(x) + cos(x).

54 AC250_01/2013 Cristiane Martins

55 AC250_01/2013 Cristiane Martins

56 AC250_01/2013 Cristiane Martins psuedo code for i = 0 to 199 x = i /15 a = tanh(x) + cos(x) y = a^3 + a array [i] = y next i Graph (array)

57 AC250_01/2013 Cristiane Martins

58 AC250_01/2013 Cristiane Martins Ciclo While LabVIEW checa o terminal de condição ao final de cada iteração.  se o valor é TRUE ocorre outra iteração (Continue if True) ou pára caso esteja em (Stop if True) Execução do subdiagrama (loop) depende do terminal de condição. Desta forma, o loop será executado no mínimo uma vez;

59 AC250_01/2013 Cristiane Martins Functions>>Structures>> While Loop Functions>>Structures>> Case Functions>>Time&Dialog>>One Button Dialog

60 AC250_01/2013 Cristiane Martins

61 AC250_01/2013 Cristiane Martins Caso vc coloque o terminal de controle da Booleana fora do Loop um Loop infinito será criado. Se valor do Control for ‘True’ na partida, mesmo que vc varie para FALSE no Painel Frontal não parará a execução do Loop, isto ocorre porque este valor não é propagado até que o Loop pare e a VI seja reiniciada. Solução: Para abortar a VI utilize o STOP

62 AC250_01/2013 Cristiane Martins For Loop e While Loop podem indexar e criar arrays em suas fronteiras automaticamente. Esta capacidade é chamada “auto-indexing”.

63 AC250_01/2013 Cristiane Martins auto – indexing Para habilitar ou não o auto-indexing no túnel do Loop, você deverá pop up no túnel e escolher Enable Indexing ou Desable Indexing.

64 AC250_01/2013 Cristiane Martins Control>>Graph>> XY Graph Functions>>Structures>> For Loop Functions>>Numeric>> Random Number (0-1) Functions >> Time & Dialog >> Wait (ms) Functions >> Cluster >> Bundle

65 AC250_01/2013 Cristiane Martins Control>>Graph>> XY Graph Functions>>Structures>> For Loop Functions>>Numeric>> Random Number (0-1) Functions >> Time & Dialog >> Wait (ms) Functions >> Cluster >> Bundle

66 AC250_01/2013 Cristiane Martins

67 AC250_01/2013 Cristiane Martins Shift Register Click com direita do mouse na borda da estrutura

68 AC250_01/2013 Cristiane Martins Média aleatória – Shift Register

69 AC250_01/2013 Cristiane Martins

70 AC250_01/2013 Cristiane Martins Shift Registers estão disponíveis em For Loop e While Loop, são variáveis locais que transferem valores do final de uma iteração para o começo de outra.

71 AC250_01/2013 Cristiane Martins Shift Register - exemplo Functions>>Structures>> While Loop Functions>>Numeric>> Random Number Functions>>Array>>Build Array Functions>>Numeric>> Multiply Functions>>Mathematics>> Probability and Statistics >> Mean.VI

72 AC250_01/2013 Cristiane Martins Shift Register – ex. (cont)

73 AC250_01/2013 Cristiane Martins Para inicializar o shift register, conecte um valor fora do loop no terminal a esquerda. Caso vc não inicialize o registrador, o loop usará como valor inicial o último valor inserido no registrador quando o loop executou pela última vez, ou o default para este tipo de dado se o loop ainda não foi executado nenhuma vez. Solução: Sempre inicialize o Shift Register para assegurar comportamento consistente.

74 AC250_01/2013 Cristiane Martins Construa uma VI com um While Loop que compare dois números e mostre o valor de máximo até que o valor seja igual a 100.


Carregar ppt "AC250_01/2013 Cristiane Martins AQUISIÇÃO DE DADOS / LABVIEW BÁSICO Semana 5."

Apresentações semelhantes


Anúncios Google