Upload
lamdiep
View
224
Download
0
Embed Size (px)
Citation preview
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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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