CINEL - FORMAÇÃO EM LABVIEW

UNIDADE 7 - ESTRUTURAS DE DECISÃO

Ponto 2 - Estrutura CASE

ponto anterior  ponto seguinte
2 de 8


 

Estruturas Case

Uma estrutura Case tem dois ou mais subdiagramas, ou cases. Apenas um subdiagrama é visível de cada vez e a estrutura executa apenas um case de cada vez. Um valor da entrada determina qual o subdiagrama a executar. A estrutura Case é similar case statements ou declarações if...then...else em linguagens de programação baseadas em texto.

O case selector identifier do topo da estrutura Case contém o case selector identifier no centro, e incrementa e decrementa botões de em cada lado. Utilize os botões decrement e increment para scroll através dos cases disponíveis.

Ligue um valor da entrada, ou o selector, ao seletor terminal para determinar que Case está a executar. Deve ligar um inteiro, um valor booleano, uma string, ou um valor tipo enumerated ao terminal do selector. Pode posicionar o terminal do selector em qualquer lugar no limite esquerdo da estrutura Case. Se ligar um Boolean ao terminal do selector, a estrutura tem um True case e False case. Se ligar um inteiro, uma string, ou o valor tipo enumerated ao terminal do selector, a estrutura pode ter até 2(31) - 1. cases.

Pode especificar um exemplo por defeito para a estrutura Case. Deve especificar um exemplo por defeito para segurar valores fora do intervalo ou para especificar listas cada valor possível de entrada. Por exemplo, se especificar casos para 1, 2, e 3 mas tiver uma entrada de 4, a estrutura Case executa o case default.

Clique do lado direito limite da estrutura Case para adicionar, duplicar, remover, ou rearranjar cases e para seleccionar case por defeito.

Seleccionar um Case

O diagrama de blocos da Figura 1 é um exemplo do VI Thermometer que utiliza uma estrutura Case em vez da função Select. Mostra com o principal case True na estrutura Case.

Figura 1

Para seleccionar um case, digite o valor no identificador do selector do caso ou use a ferramenta Labeling para editar os valores, no diagrama de bloco da Figura 2.

Figura 2

Uma vez que seleccionou um outro case, esse case parece como o principal, como mostrado no diagrama de bloco da Figura 3.

Figura 3.

Se inserir um valor do selector que não seja do mesmo tipo que o objecto ligado ao terminal do selector, o valor parece vermelho para indicar que deve eliminar ou editar o valor antes que a estrutura possa executá-lo, e o VI não será executado.
Também, por causa possível erro round-off herdado do ponto de flutuação, não pode utilizar valores numéricos ponto de flutuação como valores do selector do case. Se ligar um valor floating-point ao case, o LabVIEW arredonda o valor ao inteiro não primo o mais próximo. Se digitar um valor floating-point no selector do case, o valor parece vermelho para indicar que deve eliminar ou editar o valor antes que a estrutura possa ser executada.

Túneis de entrada e saída

Pode criar túneis múltiplos da entrada e de saída para uma estrutura Case. As entradas estão disponíveis para todos os subdiagramas, mas os subdiagramas não necessitam de utilizar cada entrada. Quando cria uma uma saída de túnel (Figura 3) em um case, os túneis correspondentes aparecem na mesma posição no limite em todos os outros cases.
Se ao pelo menos uma saída do túnel não for definida, todos as saídas do túnel da estrutura aparecem como os quadrados brancos. Ligue ao túnel da saída para cada case não ligado, clicando o túnel de cada vez. Pode definir uma origem dos dados de diferente para o mesmo túnel de saída em cada case, mas os tipos de dados devem ser compatíveis. Também pode ligar constantes ou controlos para desligar cases, clicando do lado direito o túnel e seleccionando Create>>Constant or Create>>Control do menu de atalho.

Nota: Pode clicar do lado direito o túnel de saída e seleccionar Use Default If Unwired do menu de atalho para utilizar o valor por defeito para o tipo de dados do túnel para todos os túneis não ligados.

Exemplos

Nos seguintes exemplos, os valores numéricos passam através dos túneis à estrutura Case e são ou adicionados ou subtraídos, dependendo do valor ligado ao terminal do selector.

Exemplo 1: Boolean Case Structure
O exemplo da Figura 4 é uma estrutura a Boolean Case. Os cases são mostrados com excesso para simplificar a ilustração.

Figura 4

Se o controlo Boolean ligado ao terminal do selector for True, o VI adiciona os valores numéricos. Se não, o VI subtrae os valores numéricos.

 

Exemplo 2: Integer Case Structure
O exemplo da Figura 5 é uma estrutura Case inteiro.

Figura 5

O Integer é um controlo do anel de texto localizado na palete Controls>>Text Controls que associa valores numéricos com os itens do texto. Se o controlo do anel de texto ligado ao terminal do selector for 0 (add), o VI adiciona os valores numéricos. Se o valor for 1 (subtract), o VI subtrai os valores numéricos. Se o controlo do anel de texto for outro valor para além do 0 (add) ou 1 (subtract), o VI adiciona os valores numéricos, porque aquele é o case default.

 

Exemplo 3: String Case Structure
O exemplo da Figura 6 é uma estrutura Case de string.

Figura 6

Se a String for add, o VI adiciona os valores numéricos. Se a corda for subtract, o VI subtrai os valores numéricos

 

Exemplo 4: Enumerated Case Structure

Exemplo da Figura 7 é uma estrutura Case numerada.

Figura 7

Um controlo numerado dá aos utilizadores uma lista dos itens para seleccionar. O tipo de dados de um controlo numerado inclui a informação sobre os valores numéricos da Figura 7 etiquetas de string no controlo.
Quando ligar um controlo numerado ao terminal do selector de uma estrutura Case, o selector case indica uma case para cada item no controlo numerado. A estrutura Case executa o subdiagrama apropriado ao case do subdiagrama baseada no item actual no controlo numerado. No diagrama de bloco (Figura 7), se Enum for add, o VI adiciona os valores numéricos. Se Enum for subtract, o VI subtrai os valores numéricos.



Exemplo 5: Error Case Structure
O exemplo da Figura 8 é um cluster de erro de uma estrutura Case.

Figura 8

Quando ligar um cluster de erro ao terminal do selector de estrutura Case, a etiqueta do selector case indica dois cases, Error e No Error, e o limite da estrutura Case altera-se para a cor vermelha se for Error e para verde se for No Error. A estrutura Case executa o apropriado subdiagrama de case baseado no estado de erro.
Quando um cluster de erro está ligado ao terminal da selecção, a estrutura Case reconhece apenas o status Boolean do clust






 

ponto anterior    ponto 2 de 8    ponto seguinte