escola politécnica universidade de são paulo
DESCRIPTION
Escola Politécnica Universidade de São Paulo. PSI -2222 – Práticas de Eletricidade e Eletrônica 2 Agosto / 2008. Instrumentação Virtual. João Kogler ……….. PSI / EPUSP. Agenda. O que é a Instrumentação Virtual Como surgiu a Instrumentação Virtual - PowerPoint PPT PresentationTRANSCRIPT
-
Escola PolitcnicaUniversidade de So PauloPSI -2222 Prticas de Eletricidade e Eletrnica 2 Agosto / 2008
-
Instrumentao Virtual
Joo Kogler ..PSI / EPUSP
-
AgendaO que a Instrumentao Virtual Como surgiu a Instrumentao VirtualO LabVIEW e a Instrumentao VirtualComo se usa o LabVIEW
-
Instrumentao Instrumento de medioGrandeza FsicaMedida(valor numrico)InstrumentodeMedio
-
Instrumentao Instrumento de medioCalor, Aquecimento,Energia TrmicaTemperaturaTermmetroExemplo
-
Instrumentao Instrumento de medioCalor, Aquecimento,Energia TrmicaTemperaturaTermmetroExemploConverteaquecimentoem dilatao
-
Instrumentos de Medio EletrnicosBaseiam-se na medida e transformao de grandezas eltricas Tenses, CorrentesValem-se de sensores Transformam uma grandeza no-eltrica em eltricaexemplotermoparCondicionamento /amplificadordisplay
-
Instrumentos de Medio Analgicos x DigitaisanalgicotermoparCondicionamento /amplificadordisplaydigitaltermoparCondicionamento /amplificadordisplayConversor A/Ddisplay numrico
-
Instrumentos de MedioFornecem medidas de variveis e parmetros fsicosSensores:TermoparesExtensmetros (strain gages), sensores de pressoAcelermetros, Velocmetros, Sensores de DeslocamentoSensores fluidodinmicosClulas de carga, TorqumetrosSensores qumicos e biolgicosSensores pticosSensores eletrodinmicos
-
Instrumentao Instrumento de atuaoGrandeza FsicaDado de controle(valor numrico)InstrumentodeAtuao
-
Instrumentao Instrumento de atuaoEnergia EltricaMovimentoMotor+DriverExemplo
-
Instrumentos de AtuaoExercem controle sobre variveis e parmetros fsicosEfetores ou atuadores:Aquecedores, resfriadoresMotoresDosadoresRobs, posicionadoresCpsulas eletrodinmicas, atuadores eletrodinmicosAtuadores pneumticos e hidrulicosMicro-atuadores
-
Instrumentao via computador digital
-
Instrumentao via computador digitalinstrumentosexperimentoBarramento de comunicao
-
Comunicao entre computador e instrumentoInstrumentosOsciloscpioFrequencmetroMultmetroComputadorBarramento GPIBGeneral PurposeInterfaceBus
-
Interface grfica de controle dos instrumentosInstrumentosOsciloscpioFrequencmetroMultmetroComputadorBarramento GPIB
-
Instrumento Virtual Tipo 1Eletrnica de instrumentaoInterface grfica de controlePrograma implementando os algoritmos de comunicao e anlise
-
Instrumentao VirtualTipo 1 - Computador comunicando com instrumentos remotos e acrescentando novas funcionalidades ao sistema de instrumentao
Tipo 2 - Computador com hardware de aquisio de sinais realizando o papel de um instrumento
-
Instrumentos Equipamentos de MedioExemplo: Osciloscpio
-
Instrumentos Equipamentos de Medio
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador Vertical
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.Varredura / Excitao do TRC
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.Varredura / Excitao do TRCPainel FrontalInterface de Operaosinal
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.Varredura / Excitao do TRCPainel FrontalInterface de Operaosinal
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.Varredura / Excitao do TRCPainel FrontalInterface de Operaosinal
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.Varredura / Excitao do TRCPainel FrontalInterface de Operaosinal
-
Instrumentos Equipamentos de MedioAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.Varredura / Excitao do TRCPainel FrontalInterface de Operaosinal
-
Instrumentos Equipamentos de MedioVarredura / Excitao do TRCPainel FrontalInterface de OperaosinalAmplificador / Atenuador VerticalOscilador / Base de Tempo Horiz.
-
Instrumentos Equipamentos de MedioVarredura / Excitao do TRCPainel FrontalInterface de OperaosinalOscilador / Base de Tempo Horiz.
-
Instrumentos Equipamentos de MedioVarredura / Excitao do TRCPainel FrontalInterface de OperaosinalOscilador / Base de Tempo Horiz.
-
Instrumentos Equipamentos de MedioVarredura / Excitao do TRCPainel FrontalInterface de OperaosinalOscilador / Base de Tempo Horiz.Painel Frontal
-
Instrumentos Equipamentos de MedioVarredura / Excitao do TRCsinalOscilador / Base de Tempo Horiz.Painel Frontal
-
Instrumentao Virtual Tipo 2O computador implementa o instrumento
-
Instrumentao Virtual Tipo 2
-
Instrumentao Virtual Tipo 2Condicionamento do Sinal
-
Instrumentao Virtual Tipo 2Sensores
-
Aquisio do SinalamostragemdigitalizaoProcessamento do Sinalfiltragem digitalinterpolaoestimaoAmostrasValores numricos na memriasinal
-
Exemplo Medio e Anlise
-
Exemplo Medio e Anliseextensmetros(strain gages)
-
Exemplo: Teste
-
Exemplo Teste
-
Exemplo Teste
-
Instrumentao e ControleInstrumento de medio SensorMonitora uma varivelInstrumento de atuao EfetorControla uma varivelgTveatuaofmedioTd
-
Exemplo - Simulao e Prototipao
-
Exemplo Simulao e Prototipao
-
Laboratory Virtual Instrument Engineering Workbench
-
Painel Frontal
-
Diagrama de Blocosconectores
-
Ambiente de DesenvolvimentoLinguagem grfica de programaoMaior eficincia Mais rpido de se desenvolverMelhor reteno da estruturaMelhor viso de conjuntoViso clara das dependncias entre processos e dadosOrientao ao fluxo de dados fica explcitaIndependncia entre threads fica explcitaSeparao da GUI (Interface Grfica de Usurio) e dos algoritmos
-
Separao entre a GUI e o algoritmo
-
Interfaces Grficas de Usurio - Automao
-
Linguagem de Programao Grfica G
Exemplo:Construir um programa queCrie um vetor com 100 elementosPreenchido com dados aleatriosAcha o maior valor contido nesse vetor
-
O programa escrito em G ( LabVIEW )
- #include #include main( ){ double num[100], max; int i; // Preenche vetor com nmeros aleatrios printf("O vetor de numeros aleatorios:\n\n"); for(i=0; i
- #include #include main( ){ double num[100], max; int i; // Preenche vetor com nmeros aleatrios printf("O vetor de numeros aleatorios:\n\n"); for(i=0; i
-
Evoluo da Abstrao de SoftwareAbstraoComplexidade do SistemaCdigo de MquinaLinguagem AssemblyCC++C#Plataforma para Projeto de Sistemas
-
As Linguagens de Programao so usadas h mais de 50 anosFORTRAN (1954)BASIC (1963)Pascal (1968)Smalltalk (1970)C (1971)
E o LabVIEW?
-
Criador do LabVIEWJeff Kodosky
-
LabVIEW
-
Parte prtica Exerccios com LabVIEWJoo Kogler2008
-
Exemplo simples:Criar as variveis de entrada A e B e a de sada C posiocionando controles e indicador numricos no painel frontalNo diagrama de blocos aparecem os respectivos conectoresRealizar a adio A + B produzindo sada em C
-
Continuao:Substituir a varivel B no diagrama de blocos por uma funo de biblioteca que gera nmeros aleatrios uniformemente distribudos no intervalo [0,1]
-
Continuao:Para repetir o clculo constantemente, colocar o lao de while no diagrama de blocos.Note que o boto de execuo mudou para uma flecha quebrada, indicando erros. Clicando-se nele, abre um pop-up com a indicao dos errosNo caso o erro a falta da condio de parada do while
-
Continuao:Erro resolvido, colocando-se o boto de stopAcrescentada a funo Wait que permite a diminuio da velocidade do lao, introduzindo um tempo de espera (no caso especificado como 500 ms)
-
Continuao:Acrescentada sada grfica em tempo de execuo
-
Continuao:Como ilustrao, a condio de parada do loop que era stop if true foi trocada para continue if trueNeste caso o lao while executa apenas uma iterao
-
Continuao:Filtragem de mdia mvel:Supondo que o resultado da adio seja um sinal ruidoso, realizar sua filtragem fazendo-se a mdia aritmtica dos valores de sada, em tempo de execuo
-
Continuao:Exibio dos valores no filtrados (pontos vermelhos) e filtrados (curva verde) em um nico grfico
-
Continuao:Idem, porm substituindo os blocos por texto, a ttulo de ilustrao de outra opo de programao
-
Continuao
-
Continuao:Criao de sub-vi todo o trecho do programa foi substitudo por um sub-vi criado a partir desse trecho (selecionado com o mouse)
-
Continuao:Clculo do histograma usando um sub-vi da biblioteca de funes matemticas do LabVIEW no caso um Express VIO display do histograma feito atravs de outro tipo de grfico (waveform graph)ArrayArray
-
Continuao:Clculo do valor mdio do array de sada atravs de um lao ForWhileFor
-
Novo exemplo:Etapa 1 da criao de um jogo tipo Mine Sweeper modificadoExemplos de arrays booleanos (array de controles chaves - e array de indicadores LEDs )
-
Continuao:Regras do Jogo 2 arrays de LEDs um deles implementado como controle (apostas) e o outro como indicador (resultados)As jogadas so feitas no array Apostas O diagrama mostra a inicializao desses arraysO array resultados inicializado com as posies das minas (no mostrado para o jogador)
-
Continuao:No caso anterior o valor 0.5 indicava o ponto mdio do intervalo de valores aleatriosNeste caso o valor 0.5 foi substotuido por um controle que permite escolher o grau de dificuldade do jogo (de 0 a 10)
-
Mquina de estados do jogoCorresponde ao mecanismo de transio de estados que segue as seguintes regras do jogo:O jogo comea no estado de novo jogo (NOVO)Em NOVO o jogador pode escolher o nivel de dificuldadeEscolhido o nivel de dificuldade, ele aperta o boto NOVOAo apertar o boto 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 no, continua em JOGA, permitindo nova jogadaSe sim, encerra o jogo, mostrando o contedo do array resultados e vai para um novo estado, chamado PERDEUSe o jogador escolher NOVO, retorna ao estado NOVO, do incio;A outra opo o jogador escolher PARA, que vai para o estado PARA e termina a sesso de jogos.
-
Diagrama de estados1243JOGAPERDEUPARANOVO
-
Exemplo de mquina de estados:Cada estado corresponde a um botoPressionando-se o boto, ela vai para aquele estadoNeste exemplo, a mquina muda de estado ao pressionar o boto, mas volta ao estado inicial (default)
-
Continuao:Neste exemplo, foi inserido o mecanismo para fazer a transio de estados somente se ocorrer mudana
-
Continuao:Voltando ao jogo como fica com a mquina de estados