LabVIEW NXG 5.0 - Bases et schéma fonctionnel

Il s'agit du premier article d'une courte série sur le langage de programmation graphique G, utilisé par LabVIEW. Cette langue n'est pas encore très populaire - selon l'indice TIOBE de mai 2020, LabVIEW se situe à la quarantième place exactement entre Julia et Haskell. L'édition communautaire LabVIEW permet d'élargir considérablement l'audience des utilisateurs (auparavant, il était possible d'utiliser uniquement la version d'essai, et après 45 jours pour apprendre «de près»).


Eh bien, comme l'ont dit les grands Kernigan et Ritchie, "la seule façon d'apprendre un nouveau langage de programmation est de commencer à le programmer". Voilà ce que nous allons faire.


Dans une première partie, nous analyserons les principaux éléments de l'environnement de développement, et dessinerons sur le schéma bloc notre premier "Hello, World!"



L'article du didacticiel est destiné à ceux qui voient LabVIEW pour la première fois. Sous la coupe, cinquante photos d'environ sept mégaoctets.


introduction


Il est supposé que vous avez déjà terminé l' installation et l'activation de 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!". :



Un projet a été créé pour nous, par défaut tout est enregistré dans "Mes documents" - le dossier "Projets LabVIEW" y sera créé.


Les personnes curieuses peuvent regarder à l'intérieur du fichier - il y a du XML simple où vous pouvez voir notre diagramme.


Tranche XML avec graphique
    <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 , , . , , , , .


C'est tout pour aujourd'hui. Nous avons examiné le diagramme, créé un programme simple, appris les raccourcis clavier Ctrl + R, Ctrl + H, Ctrl + Espace et nous nous sommes familiarisés avec l'environnement de développement.


Dans la leçon suivante, nous touchons le panneau avant et faisons quelque chose d'un peu plus utile - Les bases de l'utilisation du panneau avant - Commandes et indicateurs


All Articles