LabVIEW NXG 5.0 - Básico e diagrama de blocos

Este é o primeiro artigo de uma série curta sobre a linguagem de programação gráfica G, usada pelo LabVIEW. Essa linguagem ainda não é muito popular - de acordo com o índice TIOBE de maio de 2020, o LabVIEW está no quadragésimo lugar exatamente entre Julia e Haskell. O LabVIEW Community Edition permite expandir significativamente a audiência de usuários (anteriormente era possível usar apenas a versão de teste e após 45 dias para aprender "de perto").


Bem, como disseram os excelentes Kernigan e Ritchie, "a única maneira de aprender uma nova linguagem de programação é começar a programar nela". É isso que faremos.


Na primeira parte, analisaremos os principais elementos do ambiente de desenvolvimento e desenharemos no diagrama de blocos nosso primeiro "Olá, mundo!"



O artigo do tutorial é destinado a quem vê o LabVIEW pela primeira vez. Sob o corte, cinquenta fotos, cerca de sete megabytes.


Introdução


Supõe-se que você já tenha concluído a instalação e ativação do LabVIEW NXG.


, " ". "" . C# ( , , ). , , LabVIEW "" . — LabVIEW .


, LabVIEW "", " " ("Virtual Instruments") VI. LabVIEW -, . # *.cs , LabVIEW VI ( LabVIEW 2020 *.vi, NXG — *.gvi). . — , , ( , ). , — , — (, ). , VI .


LabVIEW NXG :



, LabVIEW. , , "" LabVIEW, — NXG, NXG LabVIEW, NI , NXG .



, NXG :




, File->New VI...:



— . ( , , , ).


:



(Navigation Pane), — (VI), (Palette), — , (Configuration Pane), .


(VI). VI — - (Block Diagram) (Front Panel). — Panel Diagram (Icon — , ).


-


-. LabVIEW — , - ? - . Diagram . :



", !"- , - , - :


Console.WriteLine("Hello World!");

? — , . , . , , # WPF. *.cs , — *.xaml , LabVIEW *.gvi .


, NXG, , C#/WPF — , (, .net , WPF — API).


C# - :


const string message = "Hello, Habr!";
MessageBox.Show(message);

C#, — . , MessageBox — , Show ( ).


LabVIEW. .


DataTypes :



:



, ( , ).


-:



, "User Interface":



-:



, ( , "magenta") — . , — . , (message) - , — , "OK". — , — . () ( true).


, — , ( , ), ( , ):



- ( "", ):



( — — gif)


— , (Data Flow).


. . ("Wire") .


" ". , — , , .


, .



— . — .


( , , ):



? — — Run Execute this code:



:



"Ctrl+R" VI. , .


, , . LabVIEW , . , , , , :



" " , Run, "".


, , , :



:



.


.


: LabVIEW , Ctrl+C/Ctrl+V ( , Ctrl+C, , Ctrl+V), — , Ctrl ( ), . Shift , — . ( , — Ctrl):



:



, . . , :


            MessageBox.Show("");
            MessageBox.Show("Test");
            MessageBox.Show("Prüfung");

, ( , ""):



LabVIEW :



, ( ), , .


? , , .



" " ( ). , , , " ?"


: . , , , .


, .


LabVIEW


. , , , , , :



, 1dg, 2dg . — , "One Button Dialog" "Dialog" "1dg" "". , , , Enter.


— Ctrl+Space ( ). "Quick Drop" . , -, , .


, , — "Show in Palette"



, .


— , . , "Unplaced" ( ). "" LabVIEW ( Quick Drop ).



. "" ( Ctrl+Space, sc — ):



, , , :



"" :



: <Ctrl+>, "1dg", <>, , "Hello, Habr" <Ctrl+R>.


, :


, , , :



, " " — "" , .


, , , . , , — .


, — . LabVIEW , .


— , , :



( ), :


:


Dock to node — "" , . , Terminals->Dock constants, , , :



— ( "" — , ), . , ( ).


Show in Palette , .


Clean up wire "" "":



Create branch — . :



Delete Branch — . "Del", :



, — , — , . . — , , — .


Create wire comment — :



Insert Replace. , - , . — :



Properties — . ( — , ):



:


Constant configuration , — , .


Display Format -> Show escape sequences :



.


Visual style -> Show Label :



, //, — . , — , . , — :



, :



Layout -> Size to content , :



, .


, "" , :



, , , , ( , , :



( Shift), ( ).


, .


— :



Ctrl+H. ( , , ).


"Hello, Habr!". :



Um projeto foi criado para nós, por padrão, tudo é salvo em "Meus Documentos" - a pasta "LabVIEW Projects" será criada lá.


Pessoas curiosas podem olhar dentro do arquivo - existe um XML simples onde você pode ver nosso diagrama.


Fatia XML com gráfico
    <BlockDiagram Id="a44ad16c1aa64eb9940a6db1357f6f34">
        <OneButtonDialog Bounds="230 236 40 40" Id="abd1e9094fb74fe3ae59249f61acaa0b" />
        <Literal Bounds="100 236 100 15" DataType="String" Id="99b8849aac10420386a3c64b659755e8" 
                 Label="e03893aa5f6948b4b8f028ffff4aaa45" xmlns="http://www.ni.com/MocCommon">
            <p.Data>, !</p.Data>
            <StringBehavior TextDisplayMode="Default" />
        </Literal>
        <NodeLabel AttachedTo="99b8849aac10420386a3c64b659755e8" Bounds="100 234 30 15" 
                   Id="e03893aa5f6948b4b8f028ffff4aaa45" Visible="False" 
                   xmlns="http://www.ni.com/PlatformFramework">
            <p.Text>message</p.Text>
        </NodeLabel>
        <Wire Id="4e45a6a724704c38b808a29f3417ce9b" 
              Joints="N(99b8849aac10420386a3c64b659755e8:Out)|(200,237) 
                      N(abd1e9094fb74fe3ae59249f61acaa0b:message)|(230,237)" 
              xmlns="http://www.ni.com/PlatformFramework" />
    </BlockDiagram>

"" LabVIEW , , . , , , , .


Isso é tudo por hoje. Examinamos o diagrama de blocos, fizemos um programa simples, aprendemos os atalhos de teclado Ctrl + R, Ctrl + H, Ctrl + Space e nos acostumamos ao ambiente de desenvolvimento.


Na próxima lição, tocaremos no painel frontal e faremos algo um pouco mais útil - Noções básicas de trabalho com o painel frontal - Controles e indicadores


All Articles