AC723_08/2010 Cristiane Martins AC-723 – MÉTODOS EXPERIMENTAIS PARA TURBINA A GÁS – aulas...

Post on 21-Apr-2015

113 views 2 download

Transcript of AC723_08/2010 Cristiane Martins AC-723 – MÉTODOS EXPERIMENTAIS PARA TURBINA A GÁS – aulas...

AC723_08/2010Cristiane Martins

AC-723 – MÉTODOS EXPERIMENTAIS PARA

TURBINA A GÁS –aulas 13-15

Prof.(a) Cristiane MartinsInstituto Tecnológico de AeronáuticaDivisão de Eng. Aeronáutica / Dept. de Propulsão 08/2010

AC723_08/2010Cristiane Martins

Introdução ao LabView

Semana 4 –Revisão –

Assunto a tratar

- For Loop, While Loop e Shift Registers

AC723_08/2010Cristiane Martins

Introdução ao LabView

REVISÃO – 10 MINUTOS

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane Martins

1. Ambiente LabVIEWPainel 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

AC723_08/2010Cristiane Martins

1.1 – PAINEL FRONTALPaleta 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.

AC723_08/2010Cristiane 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 painelfrontal

DICA: Por “default”, o painel frontal tem um fundo cinzento

1.1 PAINEL FRONTAL

AC723_08/2010Cristiane Martins

1.2 – DIAGRAMA DE BLOCOSPaleta de Funçõesselecione: Windows>>Show Functions

Palette

A paleta de funções consiste de ferramentas como indicadores e controles e é utilizada para editar o diagrama de blocos.

AC723_08/2010Cristiane 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 é brancoDICA: Para encontrar um objeto no painel frontal (diagrama de blocos), fazer duplo clique sobre a sua representação no diagrama de blocos (painel frontal)

AC723_08/2010Cristiane 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 deduas dimensões por linhas paralelas

• Waveforms são trilhos marrons

AC723_08/2010Cristiane Martins

1.6 Paleta de ferramentas (tools palette) _ interage tanto no Painel Frontal quanto no Diagrama de Blocos

selecione: Windows>>Show Tools PaletteUtilizada para editar as VIs. Pressionando a tecla <Tab> altera-se as ferramentas comumente mais utilizadas na janela ativa. Os ícones que compõe esta paleta:

AC723_08/2010Cristiane Martins

2. Técnicas

Neste tópico revisaremos algumas técnicas

AC723_08/2010Cristiane 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

AC723_08/2010Cristiane Martins

Selecionando e apagando fiosPara selecionar um fio escolha a ferramenta ''posiciona objetos'' clique sobre o fio e <delete>.

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.

0,00

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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’’.

AC723_08/2010Cristiane 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''.

AC723_08/2010Cristiane Martins

2.6 Atente para as CORES

BLUE número inteiro / ORANGE número com ponto flutuanteGreen representa lógica booleanaPurple 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.

AC723_08/2010Cristiane Martins

Breve Revisão – construa a VI abaixo

AC723_08/2010Cristiane Martins

Follow to Help>>Find Examples>>Switch>> Mechanical Action of Booleans

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane Martins

Ícone

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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane Martins

Para inserir uma subVI no Diagrama de Blocos de uma VI, clique Select a VI na paleta Functions.

AC723_08/2010Cristiane Martins

Duplo click na VI que você quer utilizar como subVI.

AC723_08/2010Cristiane Martins

O ícone da VI aparecerá. Posicione no Diagrama de Blocos.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane Martins

New VI Library

AC723_08/2010Cristiane Martins

Salve as >>New VI Library

AC723_08/2010Cristiane Martins

Nomeie a Library e clique VI library

AC723_08/2010Cristiane Martins

Para adicionar qualquer VI Save as>>path

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane 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"

AC723_08/2010Cristiane Martins

Formula Node Ciclo For, For Loop Ciclo While, While Loop Shift Registers

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane Martins

contém o número atualizado de iterações finalizadas, 0 na 1a, 1 na 2a e etc..

AC723_08/2010Cristiane 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;

AC723_08/2010Cristiane Martins

Formula Node para cálculo de duas equações e o resultado no gráfico.

Functions>>Structures>> Formula NodeFunctions>>Structures>> Loop ForFunctions>>Array>>Build ArrayControls>> Graph>> Waveform Graph

Y1 = x3 – x2 + 5Y2 = mx + b

AC723_08/2010Cristiane Martins

Plote a equação y = f(x)^3 + f(x),

onde f(x) = tanh(x) + cos(x).

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane Martins

psuedo code

for i = 0 to 199x = i /15a = tanh(x) + cos(x)y = a^3 + aarray [i] = ynext iGraph (array)

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane 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;

AC723_08/2010Cristiane Martins

Functions>>Structures>> While LoopFunctions>>Structures>> Case Functions>>Time&Dialog>>One Button Dialog

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane 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

AC723_08/2010Cristiane Martins

For Loop e While Loop podem indexar e criar arrays em suas fronteiras automaticamente. Esta capacidade é chamada “auto-indexing”.

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane Martins

Control>>Graph>> XY GraphFunctions>>Structures>> For Loop Functions>>Numeric>> Random Number (0-1)Functions >> Time & Dialog >> Wait (ms)Functions >> Cluster >> Bundle

AC723_08/2010Cristiane Martins

Control>>Graph>> XY GraphFunctions>>Structures>> For Loop Functions>>Numeric>> Random Number (0-1)Functions >> Time & Dialog >> Wait (ms)Functions >> Cluster >> Bundle

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane Martins

Shift Register

Click com direita do mouse na borda da estrutura

AC723_08/2010Cristiane Martins

Média aleatória – Shift Register

AC723_08/2010Cristiane Martins

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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

AC723_08/2010Cristiane Martins

Shift Register – ex. (cont)

AC723_08/2010Cristiane 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.

AC723_08/2010Cristiane 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.