Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Universidade de São Paulo
Escola Politécnica Universidade de São Paulo PSI – Práticas de Eletricidade e Eletrônica 2 Agosto / 2008
2
Instrumentação Virtual
João Kogler ………..PSI / EPUSP
3
Agenda O que é a Instrumentação Virtual
Como surgiu a Instrumentação Virtual O LabVIEW e a Instrumentação Virtual Como se usa o LabVIEW
4
Instrumentação Instrumento de medição
Medida (valor numérico) Grandeza Física Instrumento de Medição
5
Instrumentação Instrumento de medição
Exemplo Calor, Aquecimento, Energia Térmica Temperatura Termômetro
6
Instrumentação Instrumento de medição
Exemplo Calor, Aquecimento, Energia Térmica Termômetro Temperatura Converte aquecimento em dilatação Transdução
7
Instrumentos de Medição Eletrônicos
Baseiam-se na medida e transformação de grandezas elétricas Tensões, Correntes Valem-se de sensores Transformam uma grandeza não-elétrica em elétrica Condicionamento /amplificador exemplo display termopar
8
Instrumentos de Medição Analógicos x Digitais
Condicionamento /amplificador analógico display termopar display Condicionamento /amplificador digital Conversor A/D display numérico termopar
9
Instrumentos de Medição
Fornecem medidas de variáveis e parâmetros físicos Sensores: Termopares Extensômetros (strain gages), sensores de pressão Acelerômetros, Velocímetros, Sensores de Deslocamento Sensores fluidodinâmicos Células de carga, Torquímetros Sensores químicos e biológicos Sensores ópticos Sensores eletrodinâmicos
10
Instrumentação Instrumento de atuação
Grandeza Física Dado de controle (valor numérico) Instrumento de Atuação
11
Instrumentação Instrumento de atuação
Exemplo Energia Elétrica Motor + Driver Movimento
12
Instrumentos de Atuação
Exercem controle sobre variáveis e parâmetros físicos Efetores ou atuadores: Aquecedores, resfriadores Motores Dosadores Robôs, posicionadores Cápsulas eletrodinâmicas, atuadores eletrodinâmicos Atuadores pneumáticos e hidráulicos Micro-atuadores
13
Instrumentação via computador digital
instrumentos experimento
14
Instrumentação via computador digital
instrumentos Barramento de comunicação computador experimento
15
Comunicação entre computador e instrumento
General Purpose Interface Bus Computador Barramento GPIB Osciloscópio Instrumentos Frequencímetro Multímetro
16
Interface gráfica de controle dos instrumentos
Computador Barramento GPIB Osciloscópio Instrumentos Frequencímetro Multímetro
17
Instrumento Virtual – Tipo 1
Eletrônica de instrumentação Interface gráfica de controle Programa implementando os algoritmos de comunicação e análise
19
Instrumentação Virtual
Tipo 1 - Computador comunicando com instrumentos remotos e acrescentando novas funcionalidades ao sistema de instrumentação Tipo 2 - Computador com hardware de aquisição de sinais realizando o papel de um instrumento
20
Instrumentos Equipamentos de Medição
Exemplo: Osciloscópio
21
Instrumentos Equipamentos de Medição
22
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical
23
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz.
24
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Varredura / Excitação do TRC
25
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Varredura / Excitação do TRC Painel Frontal Interface de Operação sinal
26
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Varredura / Excitação do TRC Painel Frontal Interface de Operação sinal
27
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Varredura / Excitação do TRC Painel Frontal Interface de Operação sinal
28
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Varredura / Excitação do TRC Painel Frontal Interface de Operação sinal
29
Instrumentos Equipamentos de Medição
Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Varredura / Excitação do TRC Painel Frontal Interface de Operação sinal
30
Instrumentos Equipamentos de Medição
Varredura / Excitação do TRC Amplificador / Atenuador Vertical Oscilador / Base de Tempo Horiz. Painel Frontal Interface de Operação sinal
31
Instrumentos Equipamentos de Medição
Varredura / Excitação do TRC Oscilador / Base de Tempo Horiz. Painel Frontal Amplificador / Atenuador Vertical Interface de Operação sinal
32
Instrumentos Equipamentos de Medição
Varredura / Excitação do TRC Oscilador / Base de Tempo Horiz. Painel Frontal Amplificador / Atenuador Vertical Interface de Operação sinal
33
Instrumentos Equipamentos de Medição
Varredura / Excitação do TRC Painel Frontal Oscilador / Base de Tempo Horiz. Painel Frontal Amplificador / Atenuador Vertical Interface de Operação sinal
34
Instrumentos Equipamentos de Medição
Interface de Operação = Interface Gráfica de Usuário ( GUI ) Varredura / Excitação do TRC Painel Frontal Oscilador / Base de Tempo Horiz. Amplificador / Atenuador Vertical Interface de Operação sinal
35
Instrumentação Virtual – Tipo 2
O computador implementa o instrumento
36
Instrumentação Virtual – Tipo 2
37
Instrumentação Virtual – Tipo 2
Condicionamento do Sinal
38
Instrumentação Virtual – Tipo 2
Sensores
39
Valores numéricos na memória Processamento do Sinal
Aquisição do Sinal amostragem Amostras digitalização sinal Valores numéricos na memória Processamento do Sinal filtragem digital estimação interpolação
40
Exemplo – Medição e Análise
41
Exemplo – Medição e Análise
extensömetros (strain gages)
42
Exemplo: Teste
43
Exemplo – Teste
44
Exemplo – Teste
45
Instrumentação e Controle
Instrumento de medição Sensor Monitora uma variável Instrumento de atuação Efetor Controla uma variável atuação v g f e T Td medição
46
Exemplo - Simulação e Prototipação
47
Exemplo – Simulação e Prototipação
48
Laboratory Virtual Instrument Engineering Workbench
50
Painel Frontal controles indicadores
51
Diagrama de Blocos Estruturas de controle conectores
52
Ambiente de Desenvolvimento
Linguagem gráfica de programação Maior eficiência Mais rápido de se desenvolver Melhor retenção da estrutura Melhor visão de conjunto Visão clara das dependências entre processos e dados Orientação ao fluxo de dados fica explícita Independência entre threads fica explícita Separação da GUI (Interface Gráfica de Usuário) e dos algoritmos
53
Separação entre a GUI e o algoritmo
54
Interfaces Gráficas de Usuário - Automação
55
Linguagem de Programação Gráfica – G Exemplo:
Construir um programa que Crie um vetor com 100 elementos Preenchido com dados aleatórios Acha o maior valor contido nesse vetor
56
O programa escrito em G ( LabVIEW )
57
O mesmo programa em linguagem C
#include <stdio.h> #include <math.h> main( ) { double num[100], max; int i; // Preenche vetor com números aleatórios printf("O vetor de numeros aleatorios:\n\n"); for(i=0; i<100, i++){ num[i]=(double) rand( ) ; printf("%f\n", num[i]); } // Acha o valor máximo contido no vetor max=0; if(num[i] > max) max = num[i]; printf("\nValor Maximo: %f\n", max); O mesmo programa em linguagem C
58
#include <stdio.h>
#include <math.h> main( ) { double num[100], max; int i; // Preenche vetor com números aleatórios printf("O vetor de numeros aleatorios:\n\n"); for(i=0; i<100, i++){ num[i]=(double) rand( ) ; printf("%f\n", num[i]); } // Acha o valor máximo contido no vetor max=0; if(num[i] > max) max = num[i]; printf("\nValor Maximo: %f\n", max);
59
Evolução da Abstração de Software
Plataforma para Projeto de Sistemas C# C++ C Abstração Linguagem Assembly Código de Máquina Complexidade do Sistema
60
As Linguagens de Programação são usadas há mais de 50 anos
FORTRAN (1954) BASIC (1963) Pascal (1968) Smalltalk (1970) C (1971) E o LabVIEW?
61
Criador do LabVIEW Jeff Kodosky
62
LabVIEW
63
Parte prática – Exercícios com LabVIEW
João Kogler 2008
64
Exemplo simples: Criar as variáveis de entrada A e B e a de saída C posiocionando controles e indicador numéricos no painel frontal No diagrama de blocos aparecem os respectivos conectores Realizar a adição A + B produzindo saída em C
65
Continuação: Substituir a variável B no diagrama de blocos por uma função de biblioteca que gera números aleatórios uniformemente distribuídos no intervalo [0,1]
66
Continuação: Para repetir o cálculo constantemente, colocar o laço de while no diagrama de blocos. Note que o botão de execução mudou para uma flecha quebrada, indicando erros. Clicando-se nele, abre um pop-up com a indicação dos erros No caso o erro é a falta da condição de parada do while
67
Continuação: Erro resolvido, colocando-se o botão de stop Acrescentada a função Wait que permite a diminuição da velocidade do laço, introduzindo um tempo de espera (no caso especificado como 500 ms)
68
Continuação: Acrescentada saída gráfica em tempo de execução
69
Continuação: Como ilustração, a condição de parada do loop que era stop if true foi trocada para continue if true Neste caso o laço while executa apenas uma iteração
70
Continuação: Filtragem de média móvel: Supondo que o resultado da adição seja um sinal ruidoso, realizar sua filtragem fazendo-se a média aritmética dos valores de saída, em tempo de execução
71
Continuação: Exibição dos valores não filtrados (pontos vermelhos) e filtrados (curva verde) em um único gráfico
72
Continuação: Idem, porém substituindo os blocos por texto, a título de ilustração de outra opção de programação
73
Continuação
74
Continuação: Criação de sub-vi todo o trecho do programa foi substituído por um sub-vi criado a partir desse trecho (selecionado com o mouse)
75
Array Array Continuação:
Cálculo do histograma usando um sub-vi da biblioteca de funções matemáticas do LabVIEW – no caso um Express VI O display do histograma é feito através de outro tipo de gráfico (waveform graph)
76
While For Continuação: Cálculo do valor médio do array de saída através de um laço For
77
Novo exemplo: Etapa 1 da criação de um jogo tipo Mine Sweeper modificado Exemplos de arrays booleanos (array de controles –chaves e array de indicadores – LEDs )
78
Continuação: Regras do Jogo 2 arrays de LEDs – um deles é implementado como controle (apostas) e o outro como indicador (resultados) As jogadas são feitas no array Apostas O diagrama mostra a inicialização desses arrays O array resultados é inicializado com as posições das minas (não é mostrado para o jogador)
79
Continuação: No caso anterior o valor 0.5 indicava o ponto médio do intervalo de valores aleatórios Neste caso o valor 0.5 foi substotuido por um controle que permite escolher o grau de dificuldade do jogo (de 0 a 10)
80
Máquina de estados do jogo
Corresponde ao mecanismo de transição de estados que segue as seguintes regras do jogo: O jogo começa no estado de novo jogo (NOVO) Em NOVO o jogador pode escolher o nivel de dificuldade Escolhido o nivel de dificuldade, ele aperta o botão NOVO Ao apertar o botão JOGA, entra no estado em que se faz as jogadas. O jogador entra com uma jogada clicando em um nos LEDs do array APOSTAS. O computador testa se o LED escolhido corresponde a um LED contendo mina, no array RESULTADOS: Se não, continua em JOGA, permitindo nova jogada Se sim, encerra o jogo, mostrando o conteúdo do array resultados e vai para um novo estado, chamado PERDEU Se o jogador escolher NOVO, retorna ao estado NOVO, do início; A outra opção é o jogador escolher PARA, que vai para o estado PARA e termina a sessão de jogos.
81
Diagrama de estados JOGA 1 2 PERDEU PARA 3 4 NOVO
82
Exemplo de máquina de estados:
Cada estado corresponde a um botão Pressionando-se o botão, ela vai para aquele estado Neste exemplo, a máquina muda de estado ao pressionar o botão, mas volta ao estado inicial (default)
83
Continuação: Neste exemplo, foi inserido o mecanismo para fazer a transição de estados somente se ocorrer mudança
84
Continuação: Voltando ao jogo – como fica com a máquina de estados
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.