tutorial sobre lógica de programação com o labview sobre lógica de programação com o labview...

17
UNIVERSIDADE SÃO JUDAS TADEU FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA DISCIPLINA LÓGICA DE PROGRAMAÇÃO Tutorial sobre Lógica de Programação com o LabVIEW Número 1 ANDRÉA ZOTOVICI CARLOS EDUARDO DANTAS DE MENEZES SÃO PAULO 2010

Upload: lamdiep

Post on 24-Jun-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

UNIVERSIDADE SÃO JUDAS TADEU

FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA

DISCIPLINA LÓGICA DE PROGRAMAÇÃO

Tutorial sobre Lógica de Programação com o LabVIEW

Número 1

ANDRÉA ZOTOVICI

CARLOS EDUARDO DANTAS DE MENEZES

SÃO PAULO

2010

Page 2: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 2

Objetivos

Este material foi escrito com o objetivo de orientar o uso da ferramenta LabVIEW no

processo de aprendizagem de lógica de programação.

Num primeiro momento, o aluno aprenderá a modelar sequencias de comandos, usando

entradas e saídas de dados, bem como as funções pré-definidas no LabVIEW.

Em seguida, modelará tanto estruturas de decisão quanto de repetição; por fim, o aluno será

apresentado a vetores ou arrays de uma dimensão.

Em todas as situações examinaremos a correspondência da representação em fluxogramas

com a representação gráfica do LabVIEW.

Orientações práticas

Este material fará referências a exercícios presentes no livro eletrônico “Curso Básico de

Lógica de Programação”, de Paulo Sérgio de Moraes (Unicamp - Centro de Computação – DSC).

Este pode ser baixado pela internet e também está disponível num CD distribuído pelos professores

da disciplina LOGPROG; é, portanto, importante a impressão tanto do livro eletrônico quanto deste

material para o acompanhamento das aulas de laboratório.

Construindo nosso primeiro algoritmo

Nosso primeiro desafio é entender a representação de algoritmos na forma de fluxogramas.

Leia o capítulo 3 do livro eletrônico “Curso Básico de Lógica de Programação”. A seguinte tabela

resume a simbologia básica (página 12):

Símbolo Função

TERMINAL

Indica o INÍCIO ou FIM de um

processamento

Exemplo: Início do algoritmo

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 3: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 3

Símbolo Função

PROCESSAMENTO

Processamento em geral

Exemplo: Cálculo de dois números

ENTRADA DE DADO MANUAL

Indica entrada de dados através do

Teclado

Exemplo: Digite a nota da prova 1

EXIBIR

Mostra informações ou resultados

Exemplo: Mostre o resultado do

cálculo

Agora construiremos nosso primeiro algoritmo, que acha a soma de dois números:

Figura 1 Primeiro fluxograma

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 4: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 4

Para resolver esta expressão, precisamos de:

a) Componentes para interação com o usuário

• Selecione, na janela de diálogo Controls - opção Modern (Figura 2), o botão Numeric.

Figura 2 Janela de Diálogo Controls

A janela de diálogo será atualizada, ficando com a aparência ilustrada pela Figura 3.

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 5: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 5

Figura 3 Janela de Controles Numéricos

• Para construir a interface do usuário, selecione dois controles numéricos, um para cada

operando (X e Y); e um indicador numérico, para o resultado. Selecione um componente,

clique no controle numérico e posicione o mouse sobre a janela Front Panel. Sobre a janela

Front Panel, é exibido o contorno do componente, como ilustra a Figura 4, para que

tenhamos noção da sua posição. Logo que a posição do componente for selecionada, basta

clicar o botão esquerdo do mouse.

Figura 4 Posicionando componente

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Contorno do

controle numérico

controles numéricos

(entradas de dados)

indicadores numéricos (saídas de dados)

Page 6: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 6

• Ao posicionarmos os controles na janela Front Panel, a legenda do campo fica com o fundo

preto, o que indica que pode ser alterada. Assim, altere a legenda de cada controle e

indicador para o mesmo texto da Figura 5.

Figura 5 Interface do usuário completa

DICA: Para deixar as duas janelas – painel frontal e diagrama de blocos – lado-a-lado, o que

facilita o trabalho, tecle <CTRL>+ t.

b) Função de Programação Numérica

• Para incluir a função soma, posicione o ponteiro do mouse na janela Block Diagram e clique

o botão direito do mouse. Isso abrirá a janela de diálogo Functions, ilustrada pela Figura 6.

Figura 6 Janela de Funções

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 7: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 7

• Na opção Programming, selecione o botão Numeric. Na janela de funções numéricas,

selecione a função soma (add), como ilustra a Figura 7.

Figura 7 Funções numéricas

• Posicione a função entre os controles (entradas) e o indicador (saída), como ilustra a Figura

8.

Figura 8 Inclusão da função numérica no diagrama de blocos

• Quando se posiciona o mouse sobre o símbolo da função soma (Figura 9), à direita são

mostrados pontos vermelhos para ligar aos controles que fornecem os valores x e y,

respectivamente, à função. À esquerda é mostrado o ponto vermelho do resultado, que deve

ser ligado ao indicador de resultado. Ligue o primeiro número que será digitado à entrada X,

o segundo à entrada Y e o resultado ao indicador.

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 8: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 8

Figura 9 Ligação de um controle (Entrada X) com função de soma

DICA: Se for realizada alguma associação inválida, como por exemplo, ligar um resultado a uma

entrada, essa associação é indicada como na Figura 10. Para remover as associações inválidas,

pressione as teclas <CTRL>+ b.

Figura 10 Associação inválida

• Após ligar os controles às entradas do somador e a sua saída ao indicador, seu primeiro

algoritmo está pronto. Ele pode ser executado de duas formas:

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Entrada de

um valor X

Entrada de

um valor Y

Resultado de

X+Y

Resultado para o

indicador

Associação

inválida

Page 9: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 9

1 a . Forma: Informe1, na janela Front Panel, o primeiro e o segundo número e, em seguida,

clique em executar ou RUN, representado pelo símbolo . O LabView executará o modelo e

voltará para o modo de edição.

2 a . Forma: Clique em executar continuamente ou RUN CONTINUOUSLY, representado

pelo símbolo , e altere os valores quantas vezes quiser. Neste modo de execução, quando digitar

um valor em algum controle, pressione enter para atualizar o cálculo. Para finalizar clique em

abortar ou ABORT EXECUTION, o botão vermelho.

Figura 11 Execução de um algoritmo em labVIEW

• Agora salve seu exercício (Menu FILE, opção SAVE AS).

Exercícios

1) Resolva os 3 exercícios da página 14 de livro eletrônico “Curso Básico de Lógica de

Programação”, contudo, não faça apenas os fluxogramas, mas implemente-os em LabVIEW.

2) Aplique os passos acima para os exercícios seguintes (faça também os fluxogramas):

a) x – y

b) x * y

c) x / y

d) x2 + y

1 Digite o número ou clique nas setas ao lado do controle (para aumentar ou diminuir o valor).

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Executa

Executa

Continuamente

Aborta

Pausa

Page 10: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 10

Para resolver este último exercício (2d), como ilustra a Figura 12, adicione:

• dois controles, um para X e outro para Y;

• função numérica Square, para a potenciação de X;

• função numérica Add, para somar o resultado da potenciação com Y;

• um indicador para mostrar o resultado.

Figura 12 Diagrama de blocos do exercício 1.5

e) x + y2

f) x mod y (Usar a função numérica Quotient & Remainder: ). Pergunta: o que faz esta

operação chamada mod (também conhecida como módulo ou resto da divisão inteira)?

3) Criar fluxogramas e algoritmos em labVIEW para os problemas:

a) Considere que o valor dos dois menores lados (a, b) de um triângulo retângulo são conhecidos e

deseja-se calcular o maior lado (c), a hipotenusa.

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Função para

potenciação

Função para

soma

Controles

Indicador

Page 11: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 11

b) Calcular o valor da coordenada X, no plano de eixos cartesianos, de um ponto (P), a partir da sua

distância (d) até a origem do sistema de coordenadas e do ângulo da reta OP em relação ao eixo X,

como mostra a Figura 13.

Figura 13 Cálculo da coordenada x para o ponto P

DICA: Para utilizar funções trigonométricas, selecione Functions – Mathematics – Elementary &

Special Functions – Trigonometric. Na função cos(x), x deve estar em radianos, portanto

multiplique o ângulo em graus que for digitado pela constante 0,0174. Tente explicar de onde veio

esta constante.

c) Conversão de quilômetro(km) para milha terrestre(mi). Uma milha equivale a 1609m, ou seja,

1,609 km.

d) Conversão de pé (ft) para metro (m), sendo que 1 ft = 0,3048 m

e) Conversão de polegada (in) para metro (m), sendo que 1 in = 0,0254 m

f) Calcule o rendimento de uma aplicação financeira, a partir da entrada do valor da aplicação e do

seu rendimento (em %).

g) Calcule a conversão de ângulos em graus para radianos (use a regra de três abaixo):

180º π

Ângulo em graus Ângulo em Radianos

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 12: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 12

4) Resolver os exercícios a seguir, usando tipos variados de componentes para entrada

e saída. Preste atenção no tipo de dado que cada componente utiliza, conforme os comentários

abaixo:

Na Figura 14, podemos observar alguns tipos de dados:

• -Número real (DBL), por exemplo, 2.35487, 3.14159, etc.

• -Valor booleano (TF – True or False), por exemplo, verdadeiro ou falso.

• -Cadeia de caracteres (abc), por exemplo, “LOGPROG”, “PALMEIRAS”, etc.

• -Número inteiro (I32 – 32 bits de capacidade), por exemplo, 7, -15, 472, etc.

Figura 14: Componentes e o tipo de dado correspondente

a) Faça um VI que possua um Vertical Toggle Switch e um LED. O Vertical Toggle representa uma

chave que liga e desliga um LED. Quando o estiver para baixo, a luz do LED estará apagada; e

quando o estiver para cima, a luz do LED estará acesa:

Para resolver este exercício:

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 13: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 13

• Selecione Controls – Boolean – Vertical Toggl.. para o interruptor, e Round LED.

Figura 15: Componentes para Interface do Usuário com Tipo Booleano

• Posicione os componentes no Painel Frontal. Una a saída do Vertical Toggle com a entrada

do Round LED. E em seguida execute. Mude a posição da chave para ver o LED ligar e

desligar.

b) Conversão de temperatura em graus Celsius (C) para Kelvin (K). Dica : K = C + 273,15

Para resolver este exercício:

• Selecione na janela de diálogo Controls, as opções Classic-Classic Numeric, os

componentes Numeric Control e Thermometer (Figura 16). Numeric Control é um controle,

isto é, possibilita a entrada de dados. Thermometer é um indicador, isto é, possibilita a saída

de dados. Adicione um componente Numeric Control com a constante 273,15. Para definir

um Numeric Control como constante, selecione o componente na janela Diagrama de

Blocos, clique o botão direito do mouse, selecione a opção Change Constant e digite 273,15,

como é ilustrado na Figura 17.

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 14: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 14

Figura 16: Controle numérico e indicador tipo termômetro

Figura 17: Alterando um controle para constante

• Selecione, na janela de Funções, as opções Mathematics – Numeric – Add (Figura 18).

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 15: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 15

Figura 18: Operação de adição

• Posicione na janela de Diagrama de Blocos e ligue à função os controles de entrada e o

indicador de saída, como ilustra a Figura 19.

Figura 19: Diagrama de Blocos do algoritmo para converter graus Celsius em Kelvin

c) Conversão de temperatura em Fahrenheit (F) para Celsius (C). Dica : C = (F – 32)/1,8

d) Conversão de temperatura em Kelvin (K) para Celsius ( C). Dica : C = K – 273,15

e) Conversão de temperatura em Celsius ( C) para Fahrenheit (F). Dica : F = C x 1,8 +32

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 16: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 16

5) Ao resolver o exercício a seguir, repare como é implementado facilmente no LabView. O

LabView pode tratar facilmente estruturas de dados mais complexas, como amostras de voz; o

microfone captura o som e o LabVIEW digitaliza-o. O alto-falante reproduz o sinal e o

Waveform Chart funciona como um osciloscópio, mostrando a forma de onda do sinal

amostrado.

a) Componente da interface do usuário: Classic – Classic Graph – WaveformChart.

b) Funções:

Entrada: Programming – Graphics & Sound – Sound – Input - Aquire

Saída: Programming – Graphics & Sound – Sound – Output – Play Waveform

Figura 20: Captura de Voz

Detalhe: Um microfone e fone de ouvido/caixa de som poderá ser providenciado pelo professor,

visto que estes acessórios não ficam normalmente à disposição de todos.

6) Resolva cada item do exercício 2 utilizando o bloco Expression Node. Esta representa uma

maneira alternativa de resolver alguns exercícios, utilizando um bloco para escrever uma

expressão completa. A Figura 21 ilustra um exercício com o bloco Expression Node (nó para

expressões), o qual permite usarmos funções matemáticas nos processamentos realizados.

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes

Page 17: Tutorial sobre Lógica de Programação com o LabVIEW sobre Lógica de Programação com o LabVIEW – Número 1 2 Objetivos Este material foi escrito com o objetivo de orientar o

Tutorial sobre Lógica de Programação com o LabVIEW – Número 1 17

Figura 21: Expressões

Autores: Andréa Zotovici e Carlos Eduardo Dantas de Menezes