Upload
marilia-soares-darcie-leao
View
90
Download
3
Embed Size (px)
Citation preview
i
FACULDADE PIO DCIMO
COORDENAO DO CURSO DE GRADUAO EM
ENGENHARIA ELTRICA
MONOGRAFIA
Integrando o LabVIEW na Engenharia
Ronaldo Andrusyszyn Celino
Aracaju - Sergipe - Brasil
Junho de 2009
ii
Ronaldo Andrusyszyn Celino
Integrando o LabVIEW na Engenharia
Monografia apresentada ao Curso de Graduao em
Engenharia Eltrica da Faculdade Pio Dcimo, em
cumprimento s exigncias e requisitos para
avaliao final da disciplina Projeto em Engenharia
Eltrica.
rea de Concentrao: Software de Automao
Elenilton Teodoro Domingues, Prof. Dsc.
Orientador
Aracaju - Sergipe - Brasil
Junho de 2009
2009, Celino, R.A.
iii
Integrando o LabVIEW na Engenharia
Ronaldo Andrusyszyn Celino
Monografia aprovada em 19 de Junho de 2009
________________________________________
Prof. Dsc. Elenilton Teodoro Domingues
Presidente da Banca Examinadora
________________________________________
Prof. Msc. Ivanildo de Souza Maciel Jnior
Membro da Banca Examinadora
________________________________________
Prof. Msc. Jos Valter Alves Santos
Membro da Banca Examinadora
Aracaju - Sergipe - Brasil
Junho de 2009
iv
DEDICATRIA
Dedico este trabalho s pessoas que,
direta ou indiretamente, contribuiram para
a sua realizao, principalmente, a minha
esposa e ao meu filho Lucas que,
certamente, foram os que mais sentiram
com a minha ausncia e, muitas vezes com
os meus excessos. Uma dedicatria especial
para a minha me Cristina que, em todos os
momentos bons e ruins, da minha formao,
sempre esteve ao meu lado, em todos os
sentidos, quer apoiando, auxiliando ou
socorrendo...
v
AGRADECIMENTOS
Ao final da minha graduao em Engenharia Eltrica, conquistada com muito
sacrifcio e perseverana, os meus sinceros agradecimentos:
Primeiramente a Deus que sempre esteve ao meu lado, orientando-me na busca do
caminho correto da boa freqncia, pela oportunidade e pelo privilgio no compartilhamento
da experincia acadmica. Por ter me capacitado e derramado toda sorte de beno, para
chegar ao final do curso de graduao, com este projeto conclusivo.
Aos meus pais Celino e Cristina, a quem devo a minha educao e formao, que
ensinaram a mim o caminho do bem, da moral e que, certamente, contriburam para realizao
deste sonho.
minha esposa Michelle, companheira e amiga, pela pacincia e compreenso nos
momentos difceis que vivemos, deixando de lado, quase sempre, as diverses e passeios.
Ao meu filho Lucas, fonte principal da inspirao e do entusiasmo, da minha
caminhada universitria e, tambm, da concluso deste trabalho.
Aos meus irmos, parentes e amigos, com os quais sempre posso contar.
Ao meu supervisor do estgio Jefferson Andrade e ao Professor Adriano
compreendendo minha ausncia na TV Aperip para concluir este trabalho.
faculdade Pio Dcimo, que juntamente com os seus mestres, tem proporcionado a
todos os seus alunos, a determinao pela busca contnua do conhecimento renovado.
Ao professor orientador Elenilton Teodoro Domingues por suas seguras e atenciosas
orientaes sobre este trabalho, levando-me a acreditar sempre.
Agradecer, antecipadamente, aos membros da banca examinadora, por suas
participaes e honrosas contribuies.
Enfim, este trabalho no poderia ser produzido sem ajuda de muitas pessoas.
Muito Obrigado!
vi
EPGRAFE
No confunda derrotas com fracasso nem vitrias com
sucesso. Na vida de um campeo sempre haver algumas
derrotas, assim como na vida de um perdedor sempre
haver vitrias. A diferena que, enquanto os campees
crescem nas derrotas, os perdedores se acomodam nas
vitrias.
Roberto Shinyashiki
vii
SUMRIO
DEDICATRIA .................................................................................................................... iv
AGRADECIMENTOS............................................................................................................ v
SUMRIO ............................................................................................................................ vii
LISTA DE FIGURAS .......................................................................................................... xiv
LISTA DE TABELAS ........................................................................................................ xxiii
RESUMO ........................................................................................................................... xxiv
ABSTRACT ........................................................................................................................ xxv
CAPTULO 1 ....................................................................................................................... 26
I N T R O D U O A O L A B V I E W 8 . 6 ............................................................. 26
CAPTULO 2 ....................................................................................................................... 28
O B J E T I V O S E N O V I D A D E S ......................................................................... 28
2.1 Objetivos .................................................................................................................... 28
2.2 Novidades do LabVIEW 8.6 ....................................................................................... 28
CAPTULO 3 ....................................................................................................................... 32
U T I L I Z A N D O A J U D A N O L A B V I E W ..................................................... 32
3.1 Janela Context Help.................................................................................................... 32
3.2 Ajuda do LabVIEW HELP...................................................................................... 33
3.3 Encontre Exemplos Find Examples ......................................................................... 36
CAPTULO 4 ....................................................................................................................... 37
I N I C I A N D O O L A B V I E W ................................................................................ 37
4.1 Criando ou Abrindo um Projeto .................................................................................. 38
4.1.1 Criando novos projetos ............................................................................................... 38
4.1.2 Criando um VI a partir de um modelo ........................................................................ 39
4.1.3 Abrindo um VI existente ............................................................................................ 39
4.2 Salvando um VI ......................................................................................................... 40
4.3 Janela Project Explorer ............................................................................................... 42
CAPTULO 5 ....................................................................................................................... 44
I N S T R U M E N T O S V I R T U A I S ......................................................................... 44
viii
5.1 Painel Frontal ............................................................................................................. 44
5.2 Diagrama de Bloco ..................................................................................................... 46
5.2.1 Ns ............................................................................................................................ 47
5.2.2 Terminais ................................................................................................................... 47
5.2.3 Ligaes ..................................................................................................................... 48
5.2.3.1 Ligando objetos automaticamente ........................................................................ 49
5.2.3.2 Ligando objetos manualmente ............................................................................. 49
5.2.3.3 Selecionando e excluindo ligaes ....................................................................... 50
5.2.3.4 Extenso da ligao ............................................................................................. 51
5.2.3.5 Ligaes interrompidas ....................................................................................... 51
5.2.4 Tipo de Dados do Controle e Indicador ...................................................................... 52
CAPTULO 6 ....................................................................................................................... 55
B A R R A D E M E N U E D E F E R R A M E N T A S ........................................... 55
6.1 Barra de menu ............................................................................................................ 55
6.1.1 Menu File ................................................................................................................... 55
6.1.2 Menu Edit .................................................................................................................. 58
6.1.3 Menu View ................................................................................................................ 60
6.1.4 Menu Project .............................................................................................................. 62
6.1.5 Menu Operate ............................................................................................................. 63
6.1.6 Menu Tools ................................................................................................................ 64
6.1.7 Menu Window............................................................................................................ 66
6.1.8 Menu Help ................................................................................................................. 67
6.2 Barra de ferramenta do painel frontal.......................................................................... 69
6.3 Barra de ferramenta do diagrama de bloco .................................................................. 73
CAPTULO 7 ....................................................................................................................... 76
C R I A N D O U M S U B V I ......................................................................................... 76
7.1 Painel de cones e Conectores..................................................................................... 76
7.1.1 Criando um cone ....................................................................................................... 76
7.1.2 Configurando o painel de conectores .......................................................................... 79
7.1.3 Selecionando e modificando terminais ........................................................................ 81
7.1.4 Atribuindo terminais a controles e indicadores ........................................................... 81
ix
7.2 Criando um subVI a partir de sees de um VI ........................................................... 82
CAPTULO 8 ....................................................................................................................... 84
T I P O S D E P A L E T A S ........................................................................................... 84
8.1 Paleta Tools................................................................................................................ 84
8.2 Paleta Controls ........................................................................................................... 86
8.3 Paleta Functions ......................................................................................................... 87
CAPTULO 9 ....................................................................................................................... 89
G R F I C O S ................................................................................................................... 89
9.1 Waveform Graph ........................................................................................................ 94
9.2 XY Graph................................................................................................................... 96
CAPTULO 10 ..................................................................................................................... 97
E S T R U T U R A S ............................................................................................................ 97
10.1 For Loop .................................................................................................................... 97
10.2 While Loop .............................................................................................................. 100
10.3 Case Structure .......................................................................................................... 103
10.3.1 Tneis de entrada e sada .......................................................................................... 104
10.3.2 Estrutura Case Booleana ........................................................................................... 105
10.3.3 Estrutura Case utilizando nmeros inteiros ............................................................... 105
10.3.4 Estrutura Case de string ............................................................................................ 106
10.3.5 Selecionando uma condio...................................................................................... 106
10.4 MathScript Node ...................................................................................................... 107
10.5 Stacked Sequence Structure ...................................................................................... 108
10.5.1 Seqncias locais ..................................................................................................... 109
10.6 Formula Node .......................................................................................................... 111
CAPTULO 11 ................................................................................................................... 113
A R R A Y .......................................................................................................................... 113
11.1 Array Size ................................................................................................................ 115
11.2 Index Array .............................................................................................................. 116
11.3 Initialize Array ......................................................................................................... 116
11.4 Build Array .............................................................................................................. 117
11.5 Array Subset............................................................................................................. 118
x
11.6 Array Max & Min .................................................................................................... 119
11.7 Transpose 2D Array ................................................................................................. 120
CAPTULO 12 ................................................................................................................... 122
C L U S T E R .................................................................................................................... 122
12.1 Unbundle By Name .................................................................................................. 122
12.2 Bundle By Name ...................................................................................................... 123
12.3 Unbundle.................................................................................................................. 124
12.4 Bundle ...................................................................................................................... 125
12.5 Build Cluster Array .................................................................................................. 126
CAPTULO 13 ................................................................................................................... 127
N U M R I C O ............................................................................................................... 127
13.1 Add .......................................................................................................................... 127
13.2 Subtract .................................................................................................................... 129
13.3 Multiply ................................................................................................................... 130
13.4 Divide ...................................................................................................................... 131
13.5 Increment ................................................................................................................. 132
13.6 Decrement ................................................................................................................ 132
13.7 Add Array Elements ................................................................................................. 133
13.8 Multiply Array Elements .......................................................................................... 133
13.9 Compound Arithmetic .............................................................................................. 134
13.10 Square Root.............................................................................................................. 135
13.11 Square ...................................................................................................................... 136
13.12 Random Number ...................................................................................................... 136
13.13 Math & Scientific Constants ..................................................................................... 137
CAPTULO 14 ................................................................................................................... 138
B O O L E A N O .............................................................................................................. 138
14.1 And .......................................................................................................................... 138
14.2 Or ............................................................................................................................. 139
14.3 Exclusive Or............................................................................................................. 140
14.4 Not ........................................................................................................................... 141
14.5 Verificando resultado com a ferramenta Probe ......................................................... 142
xi
CAPTULO 15 ................................................................................................................... 144
C O M P A R A O ....................................................................................................... 144
15.1 Equal? ...................................................................................................................... 144
15.2 Greater? ................................................................................................................... 145
15.3 Greater Or Equal?..................................................................................................... 145
15.4 Less Than 0? ............................................................................................................ 146
15.5 Less Or Equal To 0? ................................................................................................. 146
15.6 Select ....................................................................................................................... 147
15.7 Max & Min .............................................................................................................. 148
CAPTULO 16 ................................................................................................................... 149
T E M P O ......................................................................................................................... 149
16.1 Tick Count ............................................................................................................... 149
16.2 Wait ......................................................................................................................... 150
16.3 Get Date/Time In Seconds ........................................................................................ 150
CAPTULO 17 ................................................................................................................... 152
D I L O G O & I N T E R F A C E ............................................................................. 152
17.1 One Button Dialog ................................................................................................... 152
17.2 Two Button Dialog ................................................................................................... 153
CAPTULO 18 ................................................................................................................... 155
S T R I N G S ..................................................................................................................... 155
18.1 Criando controles e indicadores de string .................................................................. 155
18.2 String Length ........................................................................................................... 157
18.3 Concatenate Strings .................................................................................................. 157
18.4 String Subset ............................................................................................................ 158
18.5 Additional String Functions ...................................................................................... 159
18.6 Replace Substring ..................................................................................................... 159
18.7 Search and Replace String ........................................................................................ 160
18.8 Match Pattern ........................................................................................................... 161
18.9 Format Date/Time String .......................................................................................... 162
18.10 String/Number Conversion ....................................................................................... 163
18.11 Scan From String...................................................................................................... 163
xii
18.12 Format Into String .................................................................................................... 164
18.13 Array To Spreadsheet String ..................................................................................... 165
18.14 String/Array/Path Conversion ................................................................................... 165
18.15 To Upper Case ......................................................................................................... 166
18.16 To Lower Case ......................................................................................................... 167
18.17 Constants.................................................................................................................. 167
CAPTULO 19 ................................................................................................................... 169
F I L E I / O .................................................................................................................... 169
19.1 Conceitos bsicos de File I/O ................................................................................... 169
19.2 Abrir e Salvar arquivos em diretrio ......................................................................... 170
19.3 Tipos de arquivos ..................................................................................................... 170
19.4 Open/Create/Replace File ......................................................................................... 171
19.5 Close File ................................................................................................................. 172
19.6 Write to Text File ..................................................................................................... 172
19.7 Read from Text File ................................................................................................. 174
19.8 Write To Spreadsheet File.vi .................................................................................... 175
CAPTULO 20 ................................................................................................................... 179
A Q U I S I O D E D A D O S ................................................................................ 179
20.1 Componentes do sistema DAQ ................................................................................. 179
20.1.1 Usando o bloco de terminais e Cabo ......................................................................... 180
20.2 Entrada analgica ..................................................................................................... 181
20.2.1 Modo........................................................................................................................ 181
20.2.2 Resoluo ................................................................................................................. 181
20.2.3 Faixa do dispositivo ................................................................................................. 182
20.2.4 Ganho ...................................................................................................................... 183
20.2.5 Taxa de amostragem ................................................................................................. 184
20.2.6 Filtrando e calculando a mdia ................................................................................. 185
20.3 Configurao de hardware DAQ ............................................................................... 186
CAPTULO 21 ................................................................................................................... 189
C O N T R O L E D E I N S T R U M E N T O ............................................................. 189
21.1 Comunicao e configurao GPIB .......................................................................... 189
xiii
21.2 Visa .......................................................................................................................... 192
21.2.1 Terminologia de programao da VISA .................................................................... 194
21.3 Comunicao de porta serial ..................................................................................... 195
21.3.1 Qual a velocidade que eu posso transmitir? .............................................................. 197
21.3.2 Viso geral do hardware ........................................................................................... 198
21.3.2.1 RS-232 .............................................................................................................. 198
21.3.2.2 RS-449, RS-422, RS-423 ................................................................................... 198
21.3.2.3 RS-485 .............................................................................................................. 199
21.3.3 Cabeamento RS-232 ................................................................................................. 199
21.4 Comunicao usando outras interfaces ..................................................................... 201
CAPTULO 22 ................................................................................................................... 202
E S T U D O D E C A S O ............................................................................................. 202
C O N C L U S E S ......................................................................................................... 205
R E F E R N C I A S B I B L I O G R F I C A S ......................................................... 207
xiv
LISTA DE FIGURAS
Figura 1.1 - Exemplo de programao atravs de linhas de comando 27
Figura 1.2 - Exemplo de programao grfica feito no LabVIEW 27
Figura 3.1 - Exemplo da Janela Context Help 32
Figura 3.2 - Caminho para iniciar a Ajuda do LabVIEW 34
Figura 3.3 - Janela Ajuda do LabVIEW 35
Figura 3.4 - Janela NI Example Finder 36
Figura 4.1 Janela Getting Started 38
Figura 4.2 Janela New utilizada para criar novos arquivos 39
Figura 4.3 - Caixa de dialogo carregando um VI 40
Figura 4.4 Janela Save utilizada para salvar um VI 41
Figura 4.5 Janela Save As utilizada para salvar um documento j salvo 42
Figura 4.6 - Janela Project Explorer 43
Figura 5.1 - Janela Painel Frontal com Controles 45
Figura 5.2 Janela Painel Frontal com Indicadores 45
Figura 5.3 Janela Diagrama de bloco com terminais de controle 46
Figura 5.4 Janela Diagrama de bloco com terminais indicadores 47
Figura 5.5 Atalho para exibir os terminais e funo Add exibindo seus terminais 48
Figura 5.6 Configuraes de ligao automtica 49
Figura 5.7 Exibindo como fazer ligao de um terminal e uma funo 50
Figura 5.8 Exibindo como selecionar as ligaes 50
Figura 5.9 Exibindo a extenso de uma nova localizao 51
Figura 5.10 Objeto ligado nos dois lados da estrutura 51
Figura 5.11 Objeto com uma extremidade ligada 52
Figura 5.12 Vi com ligao correta, mas com uma ligao solta 52
Figura 5.13 Objeto com mesma ligao na entrada e na sada 52
Figura 5.14 Refnums de controle e indicao ligados 52
Figura 6.1 Barra de menu 55
Figura 6.2 Menu File 56
xv
Figura 6.3 Menu Edit 58
Figura 6.4 Menu View 60
Figura 6.5 Menu Project 62
Figura 6.6 Menu Operate 63
Figura 6.7 Menu Tools 65
Figura 6.8 Menu Window 67
Figura 6.9 Menu Help 68
Figura 6.10 Barra de ferramenta do painel frontal 69
Figura 6.11 Opes do Alinhamento de objetos 71
Figura 6.12 Opes de Distribuio dos objetos 71
Figura 6.13 Opes de Redimensionamento dos obejtos 72
Figura 6.14 Barra de ferramenta do diagrama de bloco 73
Figura 7.1 Janela Icon Editor 77
Figura 7.2 Exibindo caminho Show Connector 80
Figura 7.3 VI exibindo a paleta de conectores 80
Figura 7.4 Propriedades do Connector 81
Figura 7.5 Terminais configurado de acordo com as entradas e sadas 82
Figura 7.6 Criao de um subVI a partir de uma seo 83
Figura 8.1 Paleta de ferramentas 84
Figura 8.2 Paleta Controls 87
Figura 8.3 Paleta Functions 88
Figura 9.1 Vrios tipos de grficos 89
Figura 9.2 Grfico com todos componentes visveis 90
Figura 9.3 Menu de Ferramenta Zoom 91
Figura 9.4 Propriedades do grfico 92
Figura 9.5 Janela das propriedades do grfico 93
Figura 9.6 Este VI gera uma funo seno 94
Figura 9.7 Grfico gerado pela funo seno 94
Figura 9.8 Este VI gera duas funes seno defasadas de 90 graus 95
Figura 9.9 Grfico gerado pelas duas funes seno defasadas 95
Figura 9.10 Este VI utiliza o grfico XY 96
xvi
Figura 10.1 Tipos de funes de Estruturas 97
Figura 10.2 For Loop em vrias representaes 98
Figura 10.3 Estrutura de um For Loop 98
Figura 10.4 VI exibindo 100 nmeros aleatrios 99
Figura 10.5 Caminho para exibir o terminal condicional 100
Figura 10.6 Terminal condicional STOP 100
Figura 10.7 While Loop em vrias representaes 101
Figura 10.8 Estrutura While Loop 101
Figura 10.9 Caminho para alternar entre Continue e Stop if True 102
Figura 10.10 Este VI mostra a comparao entre um nmero aleatrio e uma constante 103
Figura 10.11 Estrutura Case 104
Figura 10.12 Estrutura Case Booleana 105
Figura 10.13 Estrutura Case utilizando nmeros inteiros 106
Figura 10.14 Estrutura Case utilizando string 106
Figura 10.15 Estrutura N MathScript 107
Figura 10.16 Diagrama de bloco mostrando o exemplo Seno 108
Figura 10.17 Painel frontal mostrando o exemplo seno 108
Figura 10.18 Estrutura Sequence 109
Figura 10.19 Este VI mostra uma seqncia de 3 quadros 110
Figura 10.20 Este VI mostra um erro que pode acontecer na estrutura sequence 111
Figura 10.21 Estrutura Formula Node 111
Figura 10.22 Este VI mostra o somatrio tanh e cos de x 112
Figura 10.23 Grfico gerado pelo somatrio tanh e cos de x 112
Figura 11.1 Exemplo de matriz para aplicar no LabVIEW 114
Figura 11.2 Funes Array 115
Figura 11.3 Ligao da funo Array Size 115
Figura 11.4 Este VI mostra a quantidade de elementos na funo Build Array 115
Figura 11.5 Ligao da funo Index Array 116
Figura 11.6 Este VI mostra o elemento em uma determinada linha e coluna 116
Figura 11.7 Ligao da funo Initialize Array 117
Figura 11.8 Este VI duplica o elemento em n-arranjos 117
xvii
Figura 11.9 Ligao da funo Build Array 117
Figura 11.10 Este VI adiciona vrios elementos em uma array n-dimensional 117
Figura 11.11 Este VI adiciona valores boleanos em uma array n-dimensional 118
Figura 11.12 Este VI mostra um array de um array 118
Figura 11.13 Ligao da funo Array Subset 119
Figura 11.14 Este VI mostra um exemplo da funo Array Subset 119
Figura 11.15 Ligao da funo Array Max & Min 119
Figura 11.16 Este VI mostra o valor mximo e mnimo dos elementos no array 120
Figura 11.17 Montagem do VI com a funo Array Max & Min no painel frontal 120
Figura 11.18 Ligao da funo Transpose 2D Array 120
Figura 11.19 Este VI mostra a transposta de uma matriz 121
Figura 12.1 Ligao da funo Unbundle By Name 123
Figura 12.2 Este VI mostra como obter dados de um cluster 123
Figura 12.3 Ligao da funo Bundle by Name 124
Figura 12.4 Este VI mostra como acessar dados de um cluster 124
Figura 12.5 Ligao da funo Unbundle 124
Figura 12.6 Este VI mostra como dividir um cluster 125
Figura 12.7 Ligao da funo Bundle 125
Figura 12.8 Este VI mostra como montar um cluster 125
Figura 12.9 Ligao da funo Build Cluster Array 126
Figura 12.10 Este VI mostra como criar um cluster de array 126
Figura 12.11 Resultado de um cluster de array no painel frontal 126
Figura 13.1 Funes Numeric 127
Figura 13.2 Ligao da funo Add 128
Figura 13.3 Este mostra o somatrio de uma constante com uma entrada qualquer 128
Figura 13.4 Este VI mostra o somatrio de dois arrays 128
Figura 13.5 Este VI mostra o somatrio de um array com uma entrada qualquer 128
Figura 13.6 Este VI mostra o somatrio de duas entradas qualquer 129
Figura 13.7 Ligao da funo Subtract 129
Figura 13.8 Este VI mostra a subtrao de uma constante com uma entrada qualquer 129
Figura 13.9 Este VI mostra a subtrao de dois arrays 130
xviii
Figura 13.10 Ligao da funo Multiply 130
Figura 13.11 Este VI mostra uma multiplicao entre array e um nmero qualquer 130
Figura 13.12 Este VI mostra uma multiplicao entre dois nmeros qualquer 131
Figura 13.13 Ligao da funo Divide 131
Figura 13.14 Este VI mostra uma diviso entre constante e um nmero qualquer 131
Figura 13.15 Este VI mostra uma diviso entre um array e um nmero qualquer 131
Figura 13.16 Ligao da funo Increment 132
Figura 13.17 Este VI mostra o incremento na entrada e no resultado 132
Figura 13.18 Ligao da funo Decrement 132
Figura 13.19 Este VI mostra o decremento na entrada e no resultado 132
Figura 13.20 Ligao da funo Add Array Elements 133
Figura 13.21 Este VI mostra a soma dos elementos de um array 133
Figura 13.22 Ligao da funo Multiply Array Elements 133
Figura 13.23 Este VI mostra a multiplicao dos elementos de um array 134
Figura 13.24 Ligao da funo Compound Arithmetic 134
Figura 13.25 Este VI mostra o somatrio entre dois nmeros qualquer 134
Figura 13.26 Este VI mostra a operao AND entre nmeros 135
Figura 13.27 Este VI mostra a operao OU entre entradas booleanas 135
Figura 13.28 Ligao da funo Square Root 135
Figura 13.29 Este VI mostra a raiz quadrada nos elementos de um array 135
Figura 13.30 Ligao da funo Square 136
Figura 13.31 Este VI mostra o quadrado nos elementos de um array 136
Figura 13.32 Ligao da funo Random Number 136
Figura 13.33 Este VI mostra trs exemplos de nmeros randmicos 137
Figura 13.34 Funes Math & Scientific Constants 137
Figura 14.1 Funes Boolean 138
Figura 14.2 Ligao da funo And 138
Figura 14.3 Este VI mostra a operao AND entre duas entradas booleanas 139
Figura 14.4 Ligao da funo Or 139
Figura 14.5 Este VI mostra a operao OR entre duas entradas booleanas 140
Figura 14.6 Ligao da funo Exclusive Or 140
xix
Figura 14.7 Este VI mostra a operao Exclusive Or entre duas entradas booleanas 141
Figura 14.8 Ligao da funo Not 141
Figura 14.9 Este VI mostra a negao das duas entradas possveis 141
Figura 14.10 Este VI mostra a negao da operao And 142
Figura 14.11 Este VI mostra o resultado em cada ponto da operao Not 142
Figura 14.12 Este VI mostra o resultado em cada ponto da operao And 143
Figura 14.13 Este VI mostra o resultado em cada ponto da operao Or 143
Figura 15.1 Funes Comparison 144
Figura 15.2 Ligao da funo Equal? 145
Figura 15.3 Este VI mostra uma comparao de igualdade entre duas entradas 145
Figura 15.4 Ligao da funo Greater? 145
Figura 15.5 Este VI mostra uma comparao maior que entre duas entradas 145
Figura 15.6 Ligao da funo Greater Or Equal? 146
Figura 15.7 Este VI mostra uma comparao maior ou igual entre duas entradas 146
Figura 15.8 Ligao da funo Less Than 0? 146
Figura 15.9 Este VI mostra uma comparao menor que zero entre uma entrada 146
Figura 15.10 Ligao da funo Less Or Equal To 0? 147
Figura 15.11 Este VI mostra uma comparao menor ou igual a zero entre uma entrada 147
Figura 15.12 Ligao da funo Select 147
Figura 15.13 Este VI mostra uma seleo entre TRUE e FALSE 147
Figura 15.14 Ligao da funo Max & Min 148
Figura 15.15 Este VI mostra o valor mximo e mnimo entre duas entradas 148
Figura 16.1 Ligao da funo Timing 149
Figura 16.2 Ligao da funo Tick Count 149
Figura 16.3 Este VI mostra o tempo de execuo 150
Figura 16.4 Ligao da funo Wait 150
Figura 16.5 Este VI atribui um tempo para atrasar a execuo 150
Figura 16.6 Ligao da funo Get Date/Time In Seconds 150
Figura 16.7 Este VI mostra a data e hora atual do computador 151
Figura 17.1 Funes Dialog & User Interface 152
Figura 17.2 Ligao da funo One Button Dialog 153
xx
Figura 17.3 Este VI mostra uma mensagem 153
Figura 17.4 Ligao da funo Two Button Dialog 153
Figura 17.5 Este VI mostra uma mensagem com valor booleano 154
Figura 17.6 Este VI mostra uma mensagem com opes de cores 154
Figura 18.1 Tipos de exibio de uma String 156
Figura 18.2 Funes String 157
Figura 18.3 Ligao da funo String Length 157
Figura 18.4 Este VI mostra o nmero de caracteres na frase Engenharia Eltrica 157
Figura 18.5 Redimensione a funo para aumentar o nmero de entradas 158
Figura 18.6 Ligao da funo Concatenate Strings 158
Figura 18.7 Este VI concatena vrias Strings de Entrada em uma nica sada 158
Figura 18.8 Ligao da funo String Subset 159
Figura 18.9 Este VI mostra como a funo String Subset utilizada 159
Figura 18.10 Funes Additional String Functions 159
Figura 18.11 Ligao da funo Replace Substring 160
Figura 18.12 Este VI mostra como inserir uma substring atravs do offset 160
Figura 18.13 Ligao da funo Search and Replace String 160
Figura 18.14 Este VI procura uma substring e substitui por outra substring 161
Figura 18.15 Ligao da funo Match Pattern 161
Figura 18.16 Este VI procura uma expresso regular no incio e separa a String 162
Figura 18.17 Ligao da funo Format Date/Time String 162
Figura 18.18 Este VI mostra um exemplo utilizando os cdigos para data e hora 162
Figura 18.19 Este VI mostra o mesmo exemplo anterior, sendo de forma completa 163
Figura 18.20 Funes String/Number Conversion 163
Figura 18.21 Ligao da funo Scan From String 163
Figura 18.22 Ligao da funo Format Into String 164
Figura 18.23 Ligao da funo Array To SpreadSheet String 165
Figura 18.24 Este VI mostra uma converso de um array em seqncia de String 165
Figura 18.25 Funes String/Array/Path Conversion 166
Figura 18.26 Este VI mostra as funes Path To String e Path to Array of Strings 166
Figura 18.27 Ligao da funo To Upper Case 166
xxi
Figura 18.28 Este VI mostra um exemplo da funo To Upper Case 166
Figura 18.29 Ligao da funo To Lower Case 167
Figura 18.30 Este VI mostra um exemplo da funo To Lower Case 167
Figura 18.31 Este VI mostra um exemplo utilizando vrias constantes 168
Figura 19.1 Estrutura bsica para utilizar a funo File I/O 169
Figura 19.2 Funes File I/O 171
Figura 19.3 Ligao da funo Open/Create/Replace File 172
Figura 19.4 Ligao da funo Close File 172
Figura 19.5 Ligao da funo Write to Text File 172
Figura 19.6 Este VI mostra a funo Write to Text File no Painel Frontal 173
Figura 19.7 Este VI mostra a funo Write to Text File no Diagrama de Bloco 173
Figura 19.8 Resultado da funo Write to Text File no Bloco de notas 173
Figura 19.9 Ligao da funo Read from Text File 174
Figura 19.10 Este VI mostra a funo Read to Text File no Painel Frontal 174
Figura 19.11 Este VI mostra a funo Read to Text File no Diagrama de Bloco 174
Figura 19.12 Texto da funo Read to Text File no Bloco de notas 175
Figura 19.13 Ligao da funo White To Spreadsheet File.vi 175
Figura 19.14 Este VI mostra a funo White To Spreadsheet File.vi no Painel Frontal 176
Figura 19.15 Este VI mostra a funo White To Spreadsheet File.vi no Diagrama de Bloco
176
Figura 19.16 Resultado em Tabela da funo White To Spreadsheet File.vi 178
Figura 20.1 Sistema DAQ 180
Figura 20.2 Sinal digital de uma onda senoidal de 5 kHz, obtida com um ADC de 3-bits 182
Figura 20.3 ADC de 3bits de 0 a 10V na esquerda e -10 a 10V na direita 183
Figura 20.4 Diferena entre um ganho de 5V e um de 10V 184
Figura 20.5 Diferena entre dois tipos de taxa de amostragem 185
Figura 20.6 Configurao detalhada do DAQ Device 187
Figura 20.7 - Janela principal do Measurement & Automation Explorer 188
Figura 21.1 Arquitetura de software em ambiente Windows 192
Figura 21.2 Arquitetura de uma ligao serial 195
Figura 21.3 Esquema de codificao 196
xxii
Figura 21.4 Conector DB tipo D de 9 pinos 199
Figura 21.5 Conector DB tipo D de 25 pinos 200
xxiii
LISTA DE TABELAS
Tabela 1 Tipos de ligaes no diagrama de bloco 48
Tabela 2 Smbolos dos terminais de controle e indicador 53
Tabela 3 Sintaxe apropriada para o descritor de instrumento 195
Tabela 4 Configurao num conector DB de 9 pinos 200
Tabela 5 Configurao num conector DB de 25 pinos 201
xxiv
RESUMO
Com os contnuos avanos do ensino, proporcionados pelo uso crescente de tecnologia,
os instrumentos de trabalho dos professores no podem mais ser apenas o quadro e o pincel.
Como o computador um recurso acessvel maioria das escolas, vivel e propcio
desenvolver programas variados e aplic-los para o melhor aprendizado do aluno. Dando
nfase a este trabalho, foi utilizado o ambiente de programao LabVIEW para demonstrar a
aplicao na engenharia eltrica.
LabVIEW (Laboratory Virtual Instruments Engineering Workbench) uma linguagem
de programao desenvolvida pela National Instruments. O LabVIEW diferente das usuais
linguagens de programao em um aspecto importante. Ao invs de utilizar linhas de cdigo,
ele utiliza uma linguagem grfica conhecida como linguagem G que composta de muitos
nodos conectados. O LabVIEW tem um compilador grfico aperfeioado para maximizar o
desempenho do sistema, simplificando o desenvolvimento do programa, e tambm diz
imediatamente ao usurio quando um erro foi cometido. usado como um substituto para as
linguagens baseadas em linhas de cdigo, permitindo ao usurio observar o que o programa
est fazendo literalmente, deste modo, voc pode inserir um pedao de cdigo esquecido, e
pode estudar como os dados esto viajando.
Outro ponto importante que o LabVIEW 8.6.1 inclui mais de 1.200 funes
otimizadas para anlises avanadas que oferecem processamento matemtico.
Para atender as necessidades de desempenho e eficincia de aplicaes como controle
de sistemas robticas, teste de dispositivos wireless, os usurios do LabVIEW tem a facilidade
de, rapidamente, incorporar aos seus projetos as mais novas tecnologias, tais como
processadores multicore (dotados de mltiplos ncleos), tecnologia FPGA (Field-
Programmable Gate Arrays - Matrizes de Portas Lgicas Programveis), comunicao
wireless (sem fio) e dispositivos com acesso a WEB (HTML, JavaScript, Flash).
Foi desenvolvido um programa computacional que permite ao usurio calcular o
consumo de energia eltrica de qualquer equipamento, num determinado tempo e perodo.
Palavras-chaves: Automao, Controle, Software, LabVIEW.
xxv
ABSTRACT
With the continuous progress of education, provided by the increasing use of
technology, the work instruments of teachers can no longer be just the table and brush. As the
computer is a resource available to most of the schools, is feasible and conducive to develop
various programs and apply them to the best of student learning. Giving emphasis to this
work, we used the LabVIEW programming environment to demonstrate the application in
electrical engineering.
LabVIEW (Laboratory Virtual Instruments Engineering Workbench) is a programming
language developed by National Instruments. The LabVIEW is different from the usual
programming languages in one important aspect. Instead of using lines of code, it uses a
language known as graphic language G which is composed of many nodes connected. The
LabVIEW compiler has improved graphics to maximize the performance of the system,
simplifying the development of the program, and immediately tells the user when an error was
detected. It is used as a substitute for language based in lines of code, allowing the user to see
what the program is doing literally, thus you can insert a forgotten piece of code, and can
study how the data are "traveling."
Another important point is that the LabVIEW 8.6.1 includes more than 1,200
optimized functions for advanced analysis providing mathematical processing.
To attend the needs of performance and efficiency of applications such as control of
robotic systems, testing wireless devices, LabVIEW users have the facility of, quickly,
incorporate their projects to the newest technologies such as multicore processors (with
multiple cores ), FPGA technology (Field-Programmable Gate Arrays), wireless
communication (wireless) and devices with web access (HTML, JavaScript, Flash).
A computer program was developed which allows the user to calculate the energy
consumption of any electrical equipment in a certain time period.
Key words: Automation, Control, Software, LabVIEW.
26
CAPTULO 1
IN TRODU O AO LA BV IE W 8 .6
LabVIEW uma linguagem de programao grfica que utiliza cones, em vez de
linhas de texto, para criar aplicaes. Em contraste s linguagens de programao baseadas em
texto, em que instrues determinam a execuo do programa, o LabVIEW utiliza
programao baseada em fluxo de dados, onde o fluxo dos dados determina a execuo.
No LabVIEW, voc constri uma interface de usurio, utilizando um conjunto de
ferramentas e objetos. A interface de usurio conhecida como painel frontal. Ento, voc
adiciona o cdigo utilizando representaes grficas de funes para controlar os objetos do
painel frontal. O diagrama de bloco contm esse cdigo. Sob certos aspectos, o diagrama de
bloco assemelha-se a um fluxograma.
O LabVIEW est totalmente integrado para comunicao com diversos hardwares,
como GPIB, VXI, PXI, RS-232, RS-485 e dispositivos DAQ plug-in. O LabVIEW tambm
possui recursos internos para conectar sua aplicao internet, utilizando o LabVIEW WEB
SERVER e aplicativos como ActiveX e Redes TCP/IP.
Utilizando o LabVIEW, voc pode criar aplicaes de teste e medio, aquisio de
dados, controle de instrumento, registro de dados, anlise de medio e gerao de relatrio.
Tambm pode criar executveis e bibliotecas compartilhadas, como dlls, j que o LabVIEW
um compilador real de 32 bits.
27
Figura 1.1 - Exemplo de programao atravs de linhas de comando
Figura 1.2 - Exemplo de programao grfica feito no LabVIEW
28
CAPTULO 2
O BJ ETIVOS E N OV IDA DE S
2.1 Objetivos
Compreender os componentes de um Instrumento Virtual;
Introduzir funes comuns ao Labview;
Criar e salvar VIs, de forma a ser utilizados como subVIs;
Trabalhar com matrizes e estruturas;
Utilizar diversas tcnicas de depurao;
Utilizar o LabVIEW MathScript;
Um estudo de caso.
2.2 Novidades do LabVIEW 8.6
Para tirar partido destas tecnologias, os engenheiros so forados atualmente a
trabalhar com mltiplas ferramentas que no so projetadas para a programao paralela.
Usando a ltima verso do LabVIEW, os engenheiros tm agora uma plataforma nica para
aumentar a produo de sistemas de teste e controle com processadores multicore, reduzindo
tempo de desenvolvimento de aplicaes de prototipagem embebida e controle avanado
baseado em FPGA de alta performance, para criar mais facilmente sistemas de medio
distribudos para aquisio de dados remotamente.
Para ir ao encontro do desempenho e da eficincia das tecnologias de ponta, tais como
o controle de sistemas robticos, testar dispositivos wireless e projetar veculos hbridos, os
utilizadores devem ter a habilidade de incorporar rapidamente as ltimas tecnologias tais
como, processadores multicore, FPGAs e comunicaes wireless. disse o Dr. James
Truchard, presidente, CEO e co-fundador da National Instruments. O LabVIEW oferece o
29
caminho mais curto para aplicar estas tecnologias usando a programao paralela enquanto
fornece aos utilizadores a flexibilidade para definir as suas solues com otimizaes
especificas para aplicao.
1. Alcance a supercomputao com processadores Multicore
A oportunidade para um salto na performance de sistemas de teste e medida aumentam
enquanto os sistemas standard ganham mais ncleos de processamento. Expandindo-se numa
tecnologia multithreading interna plataforma do LabVIEW, o LabVIEW 8.6 oferece o
desempenho da super-computao atravs das caractersticas multicore otimizadas que podem
ajudar os engenheiros a processar maiores quantidades de dados para ir de encontro a desafios
de aplicaes de controle avanado e a aumentar a produo de sistemas de teste.
Para aumentar o desempenho, o LabVIEW 8.6 inclui mais de 1.200 funes avanadas
de anlise otimizadas para mais rpido de sinais e matemtico em sistemas multicore para
aplicaes de controle e teste. As aplicaes de viso podem beneficiar de sistemas multicore
ao usar inovadoras funes de processamento de imagem includas no NI Vision Development
Module para LabVIEW 8.6 que distribui automaticamente sries de dados atravs de mltiplos
ncleos. Usando novas caractersticas multicore, os engenheiros de teste podem desenvolver
aplicaes para testar dispositivos wireless at quatro vezes mais rpido com a ultima verso
do NI Modulation Toolkit para LabVIEW e os engenheiros de controle de sistemas podem
executar modelos de simulao paralelamente at cinco vezes mais rpido com o LabVIEW
8.6 Control Design and Simulation Module. Adicionalmente, os engenheiros podem agora
melhorar e identificar seces paralelas do cdigo usando uma caracterstica nova que
reorganiza diagramas de LabVIEW.
2. Adicione a tecnologia FPGA a uma aplicao No necessita de experincia em
design digital
Com o paradigma intuitivo do fluxo de dados do LabVIEW, os engenheiros podem
usar o mdulo de LabVIEW FPGA e o hardware baseado em FPGA tal como NI CompactRIO
para personalizar sistemas de controle e medida, para aumentar o desempenho em aplicaes
tais como a validao de semicondutor e o controle avanado de mquinas. O LabVIEW 8.6
30
continua a fazer as FPGAs mais acessveis aos peritos sem experincia em linguagem de
descrio de hardware de baixo nvel ou desenho ao nvel da placa.
O LabVIEW 8.6 reduz o tempo de desenvolvimento baseado em FPGA com
caractersticas novas que os engenheiros podem usar para programar CompactRIO - PACs (
Programmable Automation Controllers) diretamente sem ter que programar separadamente a
FPGA. Alm disso as novas caractersticas de simulao reduzem o nmero de compilaes
morosas validando uma aplicao de FPGA no desktop. O LabVIEW 8.6 oferece ainda novas
caractersticas de integrao e desenvolvimento atravs de IP que incluem o Fast Fourier
Transform (FFT) IP core para descarregar funes de anlise espectral com performances
acrescidas em aplicaes tais como a monitorizao de condio da mquina e o teste de RF.
Os engenheiros facilmente podem importar IPs de terceiros ou j existentes para o LabVIEW
FPGA usando o novo n do component-level IP (CLIP).
3. Adquira e analise dados de sistemas remotos com tecnologia wireless
H medida que a tecnologia wireless avana, os engenheiros tm a oportunidade de
fazer medies em locais isolados. Usando a tecnologia wireless com o LabVIEW 8.6, os
engenheiros podem estender aplicaes a novas reas de aquisio de dados, tais como a
monitorizao ambiental e estrutural. A flexibilidade da programao grfica do LabVIEW e a
simultaneidade da infra-estrutura das redes Wi-Fi facilitam incorporar a conectividade
wireless na medio em novos ou existentes sistemas de controle baseados em PC.
Suportando os ltimos dispositivos de aquisio de dados wireless e drivers de 22
sensores sem fio de terceiros, o LabVIEW 8.6 simplifica a programao de sistemas de
medio distribudos, numa nica plataforma de software. Os engenheiros podem agora
configurar aplicaes para aquisio de dados facilmente para usarem hardware de aquisio
de dados NI Wi-Fi (DAQ) sem fazer alteraes do cdigo no LabVIEW 8.6. As novas
ferramentas 3-D de visualizao no LabVIEW 8.6 ajudam os engenheiros a integrar medies
remotas com modelos de design para acelerar a validao do projeto.
31
4. Interaja com as aplicaes de LabVIEW usando todos os dispositivos com acesso
a Web
Uma vez que a constante conectividade entre pessoas e sistemas se torna mais
predominante, tem-se vindo a usar a WEB para interagir com sistemas a partir de qualquer
localizao com uma variedade de dispositivos. Com o LabVIEW 8.6, os engenheiros podem
agora converter aplicaes de LabVIEW em servios web no desktop e em hardware em
tempo real que podem acender a partir de qualquer dispositivo com acesso Internet tal como
Smart Phones e Laptop. Com esta caracterstica, os engenheiros podem desenvolver interfaces
de utilizador remotos para as suas aplicaes de LabVIEW usando tecnologias WEB standard
tais como o HTML, o Javascript e o Flash.
32
CAPTULO 3
U TIL IZA ND O A JUDA N O
L A BV IEW
Utilize a janela Context Help, seo Ajuda do LabVIEW e Encontre Exemplos para
ajud-lo a montar e editar VIs. Consulte a Ajuda do LabVIEW para obter mais informaes.
3.1 Janela Context Help
Para exibir a janela Context Help, selecione Help Show Context Help ou pressione as
teclas .
Quando voc move o cursor sobre objetos do painel frontal e do diagrama de bloco, a
janela Context Help exibe o cone para subVIs, funes, constantes, controles e indicadores,
com as conexes de cada terminal. Quando voc move o cursor sobre opes da caixa de
dilogo, a janela Context Help exibe descries dessas opes. Na janela, conexes
obrigatrias esto em negrito, conexes recomendadas em texto normal e conexes opcionais
esto obscurecidas ou no aparecem.
Figura 3.1 - Exemplo da Janela Context Help
33
Clique no boto Hide Optional Terminals and Full Path, localizado no canto inferior
esquerdo da janela Context Help, para exibir terminais opcionais de um conector e para exibir
o caminho completo para um VI.
Clique no boto Lock para bloquear o contedo atual da janela Context Help.
Quando o contedo est bloqueado, o movimento do cursor sobre um outro objeto no altera o
contedo da janela. Para desbloquear a janela, clique no boto novamente. Pode utilizar o
atalho no teclado pressionando .
Clique no boto Detailed Help para exibir o tpico correspondente da Ajuda do
LabVIEW, que descreve o objeto em detalhes.
3.2 Ajuda do LabVIEW HELP
Voc pode acessar a Ajuda do LabVIEW, clicando no boto Detailed Help da janela
Context Help, selecionando Help Search the LabVIEW Help ou pressionando as teclas
.
34
Figura 3.2 - Caminho para iniciar a Ajuda do LabVIEW
A Ajuda do LabVIEW contm descries detalhadas da maioria das paletas, menus,
ferramentas, VIs e funes. A Ajuda do LabVIEW tambm inclui instrues passo a passo
sobre a utilizao de recursos do LabVIEW e links para o LabVIEW Curso, exemplo de VIs,
verses PDF de todos os manuais, recursos do suporte tcnico no site da National Instruments
na Web e ao frum NI Developer Zone.
35
Figura 3.3 - Janela Ajuda do LabVIEW
Para navegar por este documento, use o contedo, ndice e pesquisar nas guias ao lado
esquerdo desta janela ou utilize os botes localizados acima das guias:
Ocultar oculta o painel de navegao da visualizao.
Localizar localiza o tpico exibido atualmente na guia contedo.
Voltar mostra o contedo visto anteriormente.
Avanar mostra o tpico quando voc apertou o boto voltar.
Opes apresenta uma lista de comandos e a opo de imprimir.
36
3.3 Encontre Exemplos Find Examples
Utilize o Find Examples para navegar ou pesquisar exemplos instalado em seu
computador ou pelo site ni.com na NI Developer Zone. Estes exemplos demonstram como
feito a utilizao do LabVIEW para executar uma ampla variedade de ensaios, medio e
controle. Para acessar a janela NI Example Finder, selecione Help Find Examples. Voc
encontra VIs e funes especficas para diversas utilidades.
Figura 3.4 - Janela NI Example Finder
37
CAPTULO 4
IN IC IA N DO O LABV IEW
Quando voc inicia o LabVIEW, a janela Getting Started aparece. Utilize esta janela
para criar novos VIs e Projetos, escolha entre os mais recentes arquivos abertos, encontrar
exemplos e pesquisar na Ajuda do LabVIEW. Voc tambm pode acessar informaes para
ajud-lo e aprender com ajuda de vrios manuais especficos e manuais no site da ni.com.
A janela do Getting Started fecha quando voc criar um novo arquivo VI ou abre
algum existente. Voc tambm pode visualizar a janela, selecionando View Getting Started
Window.
38
Figura 4.1 Janela Getting Started
4.1 Criando ou Abrindo um Projeto
Voc pode comear no LabVIEW, iniciando a partir de um projeto e VI em branco ou
abrir um projeto j existente e alter-lo.
4.1.1 Criando novos projetos Para abrir um novo projeto na janela "Getting Started", selecione na janela principal
New Empty Project. Uma nova janela aberta, e voc pode adicionar e salvar novos
arquivos VI e projetos.
39
4.1.2 Criando um VI a partir de um modelo
Para abrir um VI a partir de um modelo j existente, selecione na janela principal New
VI from Template.
Figura 4.2 Janela New utilizada para criar novos arquivos
4.1.3 Abrindo um VI existente
Na janela Getting Started, Selecione em Open Browse e navegue at encontrar o
VI existente. Se voc j utilizou este VI ele vai mostrar na lista acima da opo Browse, como
mostra na figura 4.1.
Ao abrir um VI existente, uma caixa de dilogo semelhante aparece. LabVIEW tentar
localizar os subVI do VI em todos os diretrios especificados. Voc pode cancelar o
carregamento, a qualquer momento, clicando no boto parar "Stop" e editar o caminho de
pesquisa VI, selecionando Tools Options, na categoria Paths.
40
Figura 4.3 - Caixa de dialogo carregando um VI
4.2 Salvando um VI
Para salvar um documento VI, selecione File Save ou pressione as teclas .
41
Figura 4.4 Janela Save utilizada para salvar um VI
Mas, se voc j salvou seu documento VI, selecione File Save As para acessar a
caixa de dilogo Salvar como. A partir da caixa de dilogo Salvar como, voc pode criar uma
cpia do VI, apagar o original substituindo com um novo nome e renomear o arquivo salvo no
disco.
42
Figura 4.5 Janela Save As utilizada para salvar um documento j salvo
4.3 Janela Project Explorer
Utilize o Project Explorer para agrupar, construir e implantar arquivos VI. Quando
voc salva um projeto, o LabVIEW cria um arquivo com extenso (.lvproj), que inclui todas as
referncias, informaes de configuraes de todos os arquivos do projeto.
Voc deve usar um projeto para construir aplicaes e compartilhar bibliotecas e
utilizar projeto para trabalhar com o real-time (RT), field-programmable gate array (FPGA) ou
personal digital assistant (PDA).
Selecione File New Project na janela Project Explorer ou New Empty Project na
janela Getting Started para iniciar um novo projeto.
A janela Project Explorer inclui duas guias, as guias Items e Files. A guia Item exibe
os arquivos que esto no projeto e a guia Files corresponde aos arquivos gravados no disco.
Voc pode organizar arquivos e pastas nas guias Items e Files.
43
Figura 4.6 - Janela Project Explorer
Crie, Salve, Adicione, Exclua e Organize projetos ou arquivos VI pela janela Project
Explorer. Clicando com o boto direito do mouse em cima da raiz principal Project ou em
Meu computador, voc faz quase todos os comandos listado acima.
Para salvar um projeto, existe quatro opes: Selecionando File Save Project,
Selecionado Project Save Project, Clicando com o boto direito em cima do projeto ou
arquivo VI e escolhendo Save ou clicando no boto Save Project na Barra de ferramenta do
Project Explorer.
44
CAPTULO 5
IN S TRU ME N TO S V IRTUA I S
Os programas em LabVIEW so chamados de instrumentos virtuais (VI - Virtual
Instruments), por que sua aparncia e operao imitam instrumentos fsicos, tais como
osciloscpios e multmetros. O LabVIEW contm um conjunto completo de ferramentas para
a aquisio, anlise, visualizao e armazenamento de dados, bem como ferramentas para
ajud-lo a solucionar problemas de cdigo que voc escrever.
Os VIs contm trs componentes principais: o painel frontal, o diagrama de bloco e o
painel de cones e conectores.
O painel frontal a interface com o usurio.
Diagrama de bloco - Contm o cdigo fonte grfico que define o funcionamento do
VI.
cone e Conector - Identificam o VI de modo que voc possa usar o VI em um
outro VI. Um VI dentro de um outro VI chamado de subVI. Um subVI
corresponde a uma sub-rotina em linguagens de programao baseadas em texto.
5.1 Painel Frontal
Voc monta o painel frontal com controles e indicadores, que so os terminais
interativos de entrada e sada do vi, respectivamente. Controles so botes, botes de presso,
dials e outros dispositivos de entrada. Indicadores so grficos, leds e outros displays. Os
controles simulam dispositivos de entrada de instrumentos e fornecem dados para o diagrama
de bloco do vi. Os indicadores simulam dispositivos de sada de instrumentos e exibem os
dados que o diagrama de bloco adquire ou gera.
45
Figura 5.1 - Janela Painel Frontal com Controles
Figura 5.2 Janela Painel Frontal com Indicadores
46
5.2 Diagrama de Bloco
Aps a montagem do painel frontal, utilizando representaes grficas de funes,
voc constri o cdigo para controlar os objetos do painel frontal.
Os objeto do painel frontal aparece como terminal, no diagrama de bloco. Voc no
pode excluir um terminal do diagrama de bloco. O terminal desaparece somente aps a
excluso de seu objeto correspondente do painel frontal. Os objetos do diagrama de bloco
incluem terminais, subVIs, funes, constantes, estruturas e ligaes, que transferem dados
entre outros objetos do diagrama de bloco.
Figura 5.3 Janela Diagrama de bloco com terminais de controle
47
Figura 5.4 Janela Diagrama de bloco com terminais indicadores
5.2.1 Ns
Ns so objetos do diagrama de bloco que possuem entradas e/ou sadas e executam
operaes quando o VI executado. Eles so semelhantes a declaraes, operadores, funes e
sub rotinas em linguagens de programao baseadas em texto. Os tipos de ns incluem
funes, subVIs e estruturas. Funes so elementos de execuo internos, comparveis a um
operador, uma funo ou uma declarao. SubVIs so VIs utilizados no diagrama de bloco de
um outro VI, comparveis a sub-rotinas. Estruturas so elementos de controle de processo,
como estruturas Case (condicionais) e Sequence (seqenciais), For Loops ou While Loops.
5.2.2 Terminais
Terminais so portas de entrada e sada que trocam informaes entre o painel frontal e
o diagrama de bloco. Os terminais so semelhantes a parmetros e constantes em linguagens
de programao baseadas em texto. Os tipos de terminais incluem terminais de controle ou
indicador e terminais de ns. Os terminais de controle e indicador pertencem a controles e
indicadores do painel frontal. Os dados inseridos nos controles do painel frontal so inseridos
no diagrama de bloco atravs dos terminais de controle. Quando as funes Add e Subtract
completam seus clculos internos, elas produzem novos valores de dados. O fluxo de dados
48
para os terminais de indicador, em que eles saem do diagrama de bloco, so inseridos
novamente no painel frontal e aparecem nos indicadores do painel frontal.
Os painis de conectores das funes Add e Subtract, tm trs ns de terminal. Para
exibir o painel de conectores, clique com o boto direito no n da funo e selecione Visible
Items Terminals no menu de atalho.
Figura 5.5 Atalho para exibir os terminais e funo Add
exibindo seus terminais
5.2.3 Ligaes
Voc transfere dados entre objetos do diagrama de bloco atravs de ligaes. Eles so
semelhantes a variveis em linguagens de programao baseadas em texto. Cada ligao tem
uma nica fonte de dados, mas voc pode lig-la a vrios VIs e funes que fazem a leitura
dos dados. As ligaes so de cores, estilos e espessuras diferentes, dependendo de seus tipos
de dados. A tabela a seguir apresenta os tipos mais comuns de ligaes.
Tabela 1 Tipos de ligaes no diagrama de bloco
49
5.2.3.1 Ligando objetos automaticamente
O LabVIEW liga automaticamente objetos, conforme voc os posiciona no diagrama
de bloco. Voc tambm pode ligar automaticamente objetos que j esto no diagrama de
bloco. O LabVIEW conecta os terminais de melhor compatibilidade e deixa desconectados os
terminais que no so compatveis.
medida que voc move um objeto selecionado prximo a outros objetos do diagrama
de bloco, o LabVIEW instala ligaes temporrias a fim de exibir conexes vlidas. Quando
voc solta o boto do mouse para posicionar o objeto no diagrama de bloco, o LabVIEW
conecta as ligaes automaticamente.
Alterne a ligao automtica, pressionando a barra de espao, enquanto voc move um
objeto utilizando a ferramenta Position/Size/Select. Voc pode ajustar as configuraes de
ligao automtica, selecionando Tools Options e Block Diagram no menu superior.
Figura 5.6 Configuraes de ligao automtica
5.2.3.2 Ligando objetos manualmente
Para ligar de um terminal a outro, utilize a ferramenta Connect Wire para clicar no
primeiro terminal, mova a ferramenta para o segundo terminal e clique nele. possvel iniciar
a ligao em qualquer terminal.
Quando voc move a ferramenta Connect Wire sobre um terminal, a rea do terminal
pisca, indicando que se clicar ir conectar a ligao a esse terminal e uma pequena dica
aparece, com o nome do terminal.
Voc pode fazer curvas em uma ligao, clicando para fix-la e movendo o cursor em
uma direo perpendicular. Pressione a barra de espao para alternar a direo da ligao.
50
A seta no final do cone do mouse mostra onde clicar e o nmero na seta indica
quantas vezes necessrio clicar.
Figura 5.7 Exibindo como fazer ligao de um terminal e uma funo
5.2.3.3 Selecionando e excluindo ligaes
Um segmento de ligao um nico trecho de ligao horizontal ou vertical. Uma
curva em uma ligao a juno de dois segmentos. O ponto em que trs ou quatro segmentos
de ligao se unem uma juno. Uma ramificao de ligao conter todos os segmentos de
ligao, de juno a juno, de terminal a juno ou de terminal a terminal, se no houver
junes entre os terminais. Para selecionar um segmento de ligao, utilize a ferramenta
Position/Size/Select para clicar na ligao. Clique duas vezes para selecionar uma ramificao
e clique trs vezes para selecionar a ligao inteira.
Figura 5.8 Exibindo como selecionar as ligaes
1. Segmento
2. Juno
3. Curva
4. Ramificao
51
5. Seleciona um segmento
6. Seleciona uma ramificao
7. Seleciona uma ligao inteira
5.2.3.4 Extenso da ligao
Voc pode mover um ou mais objetos ligados, utilizando a ferramenta
Position/Size/Select, para arrastar os objetos selecionados para uma nova localizao.
Figura 5.9 Exibindo a extenso de uma nova localizao
5.2.3.5 Ligaes interrompidas
Uma ligao interrompida aparece como uma linha preta tracejada. Ligaes
interrompidas ocorrem por vrios motivos.
Mova a ferramenta Connect Wire sobre uma ligao interrompida para visualizar a
pequena dica que descreve o porqu que a ligao foi interrompida. Clique trs vezes na
ligao com a ferramenta Position/Size/Select e pressione a tecla para remover uma
ligao interrompida. Voc pode remover todas as ligaes interrompidas, selecionando Edit
Remove Broken Wires ou utilizando o atalho .
Figura 5.10 Objeto ligado nos dois lados da estrutura
52
Figura 5.11 Objeto com uma extremidade ligada
Figura 5.12 VI com ligao correta, mas com uma ligao solta
Figura 5.13 Objeto com mesma ligao na entrada e na sada
Figura 5.14 Refnums de controle e indicao ligados
5.2.4 Tipo de Dados do Controle e Indicador
A tabela mostra os smbolos para os tipos diferentes de terminais do controle e do
indicador. A cor e o smbolo de cada terminal indicam o tipo de dados do controle ou do
indicador. Os terminais do controle tm uma borda mais espessa do que terminais do
indicador.
53
Controle Indicador Tipo de Dado
Nmero com ponto-flutuante de simples preciso
Nmero com ponto-flutuante de dupla preciso
Nmero com ponto-flutuante de preciso extendida
Nmero com ponto-flutuante de simples preciso complexa
Nmero com ponto-flutuante de dupla preciso complexa
Nmero com ponto-flutuante de preciso extendida
complexa
Nmero com ponto fixo
Nmero inteiro codificado de 8-bit
Nmero inteiro codificado de 16-bit
Nmero inteiro codificado de 32-bit
Nmero inteiro codificado de 64-bit
Nmero inteiro no codificado de 8-bit
Nmero inteiro no codificado de 16-bit
Nmero inteiro no codificado de 32-bit
Nmero inteiro no codificado de 64-bit
Tempo Absoluto com alta preciso
Tipo Enumerado (Conjunto ordenado de identificadores)
Booleano (Valores Lgicos - Verdadeiro ou Falso)
String (Cadeia de Caracteres)
Array - semelhante a uma matriz. Todos os elementos
devem ter o mesmo tipo de dados.
Nmero complexo para matriz
Nmero real para matriz
Cluster - Inclui diversos tipos de dados. Marrom: Elementos
do mesmo tipo. Rosa: Elementos de diferentes tipos.
Amarelo escuro: Error. Vermelho: VI Report Generation
Path (Localizao de um arquivo ou diretrio)
Dynamic (Fornecem informaes sobre um sinal, como:
54
nome, data e hora que foram adquiridos
Waveform - Representa forma de ondas
Waveform Digital
Sinal Digital
Refnum - Nmero de referncia
Variant - Inclui o controle ou o nome do indicador, a
informao do tipo de dados, e os dados prprios.
I/O name - DAQ channel names, VISA resource names, IVI
logical names permite configurar os VIs para comunicao
com um instrumento ou um dispositivo de aquisio de
dados.
Picture - Visualiza figuras que podem conter linhas,
crculos, textos e outros tipos de formas grficas.
Tabela 2 Smbolos dos terminais de controle e indicador
55
CAPTULO 6
BARRA DE ME NU E DE
F ERRA ME NTA S
Use a barra de menu e barra de ferramentas para explorar e modificar objetos no painel
frontal e diagrama de bloco.
6.1 Barra de menu
Figura 6.1 Barra de menu
A barra de menu na parte superior da janela VI contm elementos comuns a outras
aplicaes, tais como: Abrir, Fechar, Salvar, Copiar, Colar e outros itens especficos do
LabVIEW. Alguns itens do menu tambm lista os atalhos do teclado.
6.1.1 Menu File
O menu Arquivo (File) usado para operaes bsicas, como abrir, fechar, salvar e
imprimir arquivos.
56
Figura 6.2 Menu File
New VI Cria um novo VI em branco. Poder usar como atalho.
New... Abre uma caixa de dialogo para que voc possa criar um novo arquivo VI a
partir de um modelo.
Open... Abre uma caixa de dialogo para que voc possa navegar e abrir um arquivo.
Poder usar como atalho.
Close Fecha o arquivo atual. Uma caixa de dialogo confirmao aparece para que
voc possa salvar todas as alteraes no salvas. Poder usar como atalho.
Close All Fecha todos os VIs aberto. Uma caixa de dialogo confirmao aparece para
que voc possa salvar todas as alteraes no salvas.
Save Salva o arquivo atual. Se o arquivo estiver sendo salvo pela primeira vez, uma
caixa de dialogo aparece pedindo o nome do arquivo e determinada localizao.
Poder usar como atalho.
Save As... Permite salvar o arquivo com outro nome, e faz uma copia do arquivo em
outra localizao.
57
Save All Salva todos os arquivos abertos, incluindo projetos, VIs e SubVIs. Poder
usar como atalho.
Save for Previous Version... Salva para uma verso do LabVIEW anterior atual.
Revert... Desfaz qualquer alterao desde a ultima vez que voc salvou o arquivo.
New Project Cria um novo projeto.
Open Project... Exibe uma caixa de dialogo para que voc possa navegar e abrir um
novo projeto.
Save Project Salva o projeto atual. Se o projeto estiver sendo salvo pela primeira vez,
uma caixa de dialogo aparece pedindo o nome do arquivo e determinada localizao.
Close Project Fecha o projeto atual e todos os arquivos que fazem parte do projeto.
Uma caixa de dialogo confirmao aparece para que voc possa salvar todas as
alteraes no salvas.
Page Setup... Exibe uma caixa de dialogo para que voc possa configurar a pgina e
as opes de impresso.
Print... Exibe uma caixa de dialogo Imprimir para que voc possa imprimir o arquivo
VI ou gerar um arquivo HTML, RTF ou texto do arquivo VI.
Print Window... Exibe uma caixa de dialogo para que voc possa imprimir a janela
atual. Poder usar como atalho.
VI Properties Exibe uma caixa de dialogo para que voc possa visualizar ou
modificar as propriedades do VI. Permite criar uma senha para o arquivo, modificar a
descrio do arquivo, verificar o numero de revises no arquivo e verificar o uso da
memria do arquivo. Poder usar como atalho.
Recent Projects Abre o projeto mais recente. (.lvproj)
Recent Files Abre o arquivo VI mais recente.
Exit Fecha o programa LabVIEW. Exibe uma caixa de dialogo para salvar qualquer
alterao no salva. Poder usar como atalho.
58
6.1.2 Menu Edit
O menu Editar (Edit) usado principalmente para modificar arquivos ou componentes.
Figura 6.3 Menu Edit
Undo Window Mode Desfaz a ltima ao realizada. Poder usar como
atalho.
Redo Refaz a ltima ao realizada. Poder usar como atalho.
Cut Recorta o objeto selecionado e coloca na rea de transferncia. Poder usar
como atalho.
59
Copy Copia o objeto selecionado e coloca na rea de transferncia. Poder usar
como atalho.
Paste Cola uma cpia dos objetos selecionados da rea de transferncia para a janela
ativa. Poder usar como atalho.
Remove From Project Remove o objeto selecionado sem salvar na rea de
transferncia.
Select All Seleciona todos os objetos no painel frontal ou diagrama de bloco. Poder
usar como atalho.
Make Current Values Default Armazena os valores atuais e constantes de controle
como padro.
Reinitialize Values to Default Reinicializa todos os valores atuais de controles e
constantes para o seu padro.
Customize Control Modifica o controle dos objetos selecionados no painel frontal e
salva o resultado em arquivo de extenso *.ctl.
Import Picture to Clipboard... Importa uma imagem ou grfico para a rea de
transferncia a ser utilizado num VI.
Set Tabbing Order... Define a ordem dos objetos no painel frontal quando for utilizar
a tecla .
Remove Broken Wires Remove todos os fios quebrados no VI atual. Poder usar
como atalho.
Clean Up Diagram Reorganiza todos os fios e objetos afim de gerar um layout mais
limpo. Poder usar como atalho.
Remove Breakpoints from Hierarchy Remove todos os pontos de interrupo a partir
de um VI hierarquia.
Create SubVI Cria um novo SubVI a partir dos objetos selecionados.
Enable Diagram Grid Alignment Permite o alinhamento dos objetos no painel frontal
ou diagrama de bloco. Quando o alinhamento est ativado, este item do menu muda
para Disable Panel Grid Alignment. Poder usar como atalho.
Align Items Alinha todos os objetos selecionados no painel frontal ou diagrama de
bloco. Poder usar como atalho.
60
Distribute Items Distribui uniformemente todos os objetos selecionados no painel
frontal ou diagrama de bloco. Poder usar como atalho.
VI Revision History... Exibe uma janela que voc pode visualizar a histria e
evoluo do VI atual. Poder usar como atalho.
Run-Time Menu... Exibe uma caixa de dialogo Menu Editor, sendo que voc pode
usar para criar ou editar barra de menu em arquivos.
Find and Replace... Exibe uma caixa de dialogo, no qual voc pode usar para
localizar e substituir objetos ou textos. Poder usar como atalho.
Show Search Results Mostra os resultados da pesquisa e pode ser usado para exibir
todas as instncias de objetos ou textos. Poder usar como atalho.
6.1.3 Menu View
O menu Visualizar (View) usado para mostra o janela de erros, a janela Getting
Started, a janela de navegao, exibir as paletas de ferramenta, de controle e funo.
Figura 6.4 Menu View
61
Controls Palette Exibe a paleta de Controle. Este item habilitado somente no painel
frontal.
Functions Palette Exibe a paleta de Funes. Este item habilitado somente no
diagrama de bloco.
Tools Palette Exibe a paleta de ferramentas.
Quick Drop Exibe uma caixa de dialogo para que voc possa procurar todos os
controles no painel frontal e todas as funes no diagrama de bloco. Poder usar como atalho.
Breakpoint Manager - Exibe uma janela que voc pode usar para ativar, desativar e
limpar todos os pontos na VI hierarquia.
Error List - Exibe uma janela que lista todos os erros no VI atual. Poder usar
como atalho.
Load and Save Warning List Carrega e Salva a lista de aviso.
VI Hierarchy Exibe uma janela que voc pode utilizar para visualizar as subVIs e
para pesquisar VI Hierarquia.
LabVIEW Class Hierarchy Exibe uma janela que voc pode visualizar as classes de
Hierarquia.
Browse Relationships Contm itens para visualizao de VI atuais e suas hierarquias.
Exibe uma lista de todos os VIs que chamam o VI atual como subVI. Exibe uma lista
de todos os subVIs no VI atual. Exibe uma lista de todos os subVIs fechados no VI
atual.
Class Browser Pode ser usado para selecionar objetos disponveis nas bibliotecas e
ver classes, propriedades e mtodos dentro de objetos selecionados. Poder usar como atalho.
ActiveX Property Browser Exibe uma janela onde voc pode visualizar e definir
todas as propriedades associadas a um controle ActiveX ou um documento ActiveX.
Getting Started Window... Exibe a janela Inicial do LabVIEW, Getting Started.
Navigation Window Exibe a janela de Navegao no painel frontal ou no diagrama
de bloco. Poder usar como atalho.
Toolbars Permite mostrar ou ocultar a barra de ferramentas. Esta opo somente est
habilitada na janela Project Explorer.
62
6.1.4 Menu Project
O menu Projeto (Project) usado para operaes bsicas, como abrir, fechar e salvar
projetos. O menu Projeto s estar ativo somente quando um projeto carregado.
Figura 6.5 Menu Project
New Project Cria um novo projeto.
Open Project... Exibe uma caixa de dilogo que voc pode usar para navegar e abrir
um arquivo de projeto.
Save Project Salva o projeto atual. Se o projeto estiver sendo salvo pela primeira vez,
uma caixa de dilogo aparece pedindo o nome do projeto e determinada localizao.
Close Project Fecha o projeto atual. Uma caixa de dialogo confirmao aparece para
que voc possa salvar todas as alteraes no salvas.
Add To Project Oferece opes para os itens que voc pode adicionar a um projeto.
Acrescentar um novo VI em branco, exibe uma nova caixa de dilogo, exibe os novos
arquivos a serem adicionados ao projeto.
Build Completa a construo de especificaes que voc selecionar.
Run Executa a construo completa da especificao que voc selecionar.
Filter View Permite mostrar ou ocultar as dependncias na janela Project Explorer.
63
Show Item Paths Exibe os caminhos na janela Project Explorer.
File Information Exibe uma caixa de dialogo contendo to