Skip to content Skip to navigation

Connexions

You are here: Home » Content » Blokk diagram

Navigation

Content Actions

  • Download module PDF
  • Add to ...
    Add the module to:
    • My Favorites
    • A lens
    • An external social bookmarking service
    • My Favorites (What is 'My Favorites'?)
      'My Favorites' is a special kind of lens which you can use to bookmark modules and collections directly in Connexions. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need a Connexions account to use 'My Favorites'.
    • A lens (What is a lens?)

      Definition of a lens

      Lenses

      A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

      What is in a lens?

      Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

      Who can create a lens?

      Any individual Connexions member, a community, or a respected organization.

    • External bookmarks
  • E-mail the authors

Recently Viewed

This feature requires Javascript to be enabled.

Blokk diagram

Module by: National Instruments, Imre Disznós Based on: Block Diagram by National Instruments

Summary: Ebben a fejezetben a blokk diagrammal ismerkedünk meg.

Figyelem:

Ez a dokumentum a LabVIEW grafikus programozási kurzus (LabVIEW graphical programming course) anyagának magyar fordítása. A dokumentum fordítói változat, jelen állapotában tartalmi, stilisztikai és nyelvtani hibáktól még nem mentes. (A fordító)

Miután elkészítettük az előlapot, a függvények grafikus reprezentációit felhasználva elkészíthetjük a kódot, amivel az előlapi objektumokat vezéreljük. A blokk diagram tartalmazza ezt a grafikus forráskódot. Az előlapi objektumok terminálokként jelennek meg az előlapon. A blokk diagram objektumok terminálokat, subVI-okat, fügvényeket, konstansokat, struktúrákat és vezetékeket tartalmaz. Ez utóbbiak az adatokat mozgatják a blokk diagram objektumok között.

Az 1. ábrán lévő VI-on számos blokk diagram objektum csomópontja, terminálja és vezetéke látható.

Ábra 1: 1. Csomópontok, 2. Indikátor terminálok, 3. Vezetékek, 4. Kontrol terminálok
Ábra 1 (nodterm.png)

Funkciók Paletta

A Functions (Funkciók) paletta csak a blokk diagramról érhető el. Ez a paletta a blokk diagram elkészítéséhez használható függvényeket és VI-okat tartalmazza. A Functions (Funkciók) paletta megjelenítéséhez válasszuk a Window>>Show Functions Palette (Ablak>>Függvények paletta megjelenítése) menüpontot, vagy kattintsunk a jobb egérgombbal a blokk diagram munkaterületén. A Functions (Funkciók) palettát a bal felső sarkában lévő rajzszögre történő kattintással tudjuk rögzíteni. Alapértelmezésben a Functions (Funkciók) paletta az Express nézettel indul.

Express VI-ok, VI-ok és Függvények

A LabVIEW az Express VI-ok, VI-ok és függvények blokk diagramon történő megkülönböztetésére színes ikonokat használ. Alapértelmezésben az Express VI-ok kék mezővel körülvett kiterjeszthető ikonokként jelennek meg a blokk diagramon. A VI-ok ikonjainak fehér, a függvények ikonjainak pedig halvány sárga háttere van.

Alapértelmezésben a VI-ok és függvények ikonjai – az Express VI-okkal ellentétben – nem kiterjeszthető ikonokkal jelennek meg.

Express VI-ok

Az Express VI-okat általános mérési feladatokra használhatjuk. Az Express VI-ok olyan csomópontok, amelyek minimális huzalozást igényelnek, mert dialógus ablakokkal konfigurálhatóak. Egy Express VI konfigurációját elmenthetjük subVI-ként. A subVI-ok Express VI-okból történő elkészítéséről bővebb információ a LabVIEW felhasználói kézikönyv Blokk Diagram készítése című fejezetében található.

VI-ok

Amikor egy VI-t helyezünk a Blokk Diagramra, azt a LabVIEW egy subVI-nak tekinti. Amikor duplán kattintunk egy subVI-ra, egy dialógus ablak helyett az ahhoz tartozó előlap és blokk diagram ablak jelenik meg. Az előlap kontrolokat és indikátorokat tartalmaz. A blokk diagram vezetékeket, előlapi ikonokat, függvényeket, lehetőség szerint subVI-okat és más LabVIEW objektumokat tartalmaz.

Az előlap és a blokk diagram jobb felső sarkában a VI ikonja jelenik meg. Ez az ikon jelenik meg, amikor a VI-t a blokk diagramra helyezzük.

Létrehozhatunk egy VI-t, hogy azt subVI-ként használhassuk. A VI-ok létrehozásáról és subVI-ként történő konfigurálásáról bővebb információ Modulárs Programozás című fejezetében található.

Függvények

A függvények a LabVIEW alapvető végrehajtási egységei. A függvényeknek nincs előlapja vagy blokk diagramja, viszont van csatlakozó panelja. Egy függvényre történő dupla kattintással csak az adott függvényt választhatjuk ki.

Csomópontok

A csomópontok a blokk diagramon lévő objektumok, amelyek rendelkeznek inputtal és/vagy outputtal, és egy VI futása alatt műveleteket végez. Ezek hasonlóak a szöveg alapú programozási nyelvekben lévő utasításokkal, operátorokkal, függvényekkel és szubrutinokkal. A csomópontok lehetnek függvények, subVI-ok vagy struktúrák. A struktúrák folyamatvezérlő elemek. Ilyenek például a Case struktúrák, For Loops (For hurkok), vagy a While Loops (While hurkok). Az 1. ábrán látható Add (Összeadás) és Subtract (Kivonás) függvények függvény csomópontok.

Kiterjeszthető csomópontok és ikonok összevetése

A VI-okat és az Express VI-okat ikonként vagy kiterjeszthető ikonként jeleníthetjük meg. A kiterjeszthető csomópontok színes mezővel körülvett ikonnal jelennek meg. Ez a subVI-oknál sárga, az Expressz VI-oknál pedig kék színű. Ikonokat használva – ilyen például a Basic Function Generator (Alapvető függvénygenerátor) VI ikonja – helyet spórolhatunk meg a blokk diagramon. Kiterjeszthető csomópontokat használva – ilyen például a Basic Function Generator (Alapvető függvénygenerátor) VI kiterjeszthető csomópontja – könnyebbé tehetjük a huzalozást, és segítjük a blokk diagram dokumentálását. Alapértelmezésben a subVI-ok ikonokként, az Express VI-ok pedig kiterjeszthető csomópontokként jelennek meg a blokk diagramon.

Egy subVI vagy egy Express VI kiterjeszthető csomópontként történő megjelenítéséhez kattintsunk jobb egérgombbal az adott subVI-ra vagy Express VI-ra, és tüntessük el a kijelölést a View As Icon (Ikonnézet) menüpont elől.

Átméretezhetjük a kiterjeszthető csomópontot, hogy könnyen elvégezhessük a huzalozását, azonban ekkor nagyobb helyet foglal el a blokk diagramon. Végezzük el a következő lépéseket a blokk diagramon egy csomópont átméretezéséhez.

  1. A Positioning (Pozícionáló)eszközt mozgassuk a csomópont fölé. Az átméretezés kezelő megjelenik a csomópont tetején és alján.
  2. Mozgassuk a kurzort egy újraméretezés kezelő fölé, hogy a kurzor átméretező kurzorrá változzon.
  3. Az átméretező kurzort a csomópont határainak átméretezésére használhatjuk, hogy a kiegészítő terminálok is megjelenjenek.
  4. Engedjük fel az egérgombot.

Egy átméretező művelet visszavonásához vonszoljuk a csomópont határát túl a blokk diagram ablakon, mielőtt felengednénk az egérgombot.

A 2. ábrán látható Basic Function Generator (Alapvető függvénygenerátor) VI egy átméretezett kiterjeszthető csomópont.

Ábra 2
Ábra 2 (funcgenexpnode2.png)

Megjegyzés:

Ha egy subVI vagy egy Express VI kiterjeszthető csomópontként jelenik meg, akkor az adott csomópontnak nem jeleníthetjük meg a termináljait, és nem engedélyezhetünk rá adatbázis hozzáférést.

Terminálok

iconterminal.png cdbl.png Az előlapi objektumok terminálokként jelennek meg a blokk diagramon. A terminálok a kontrol vagy indikátor adattípusokat reprezentálják. Az előlapi kontrolokat és indikátorokat beállíthatjuk úgy, hogy ikon vagy adattípus terminálként jelenjenek meg a blokk diagramon. Alapértelmezésben az előlapi objektumok ikon terminálként jelennek meg. Például a bal oldalt látható forgatógomb ikon terminál egy előlapi forgatógombot reprezentál. A terminál alján a DBL a dupla pontosságú lebegőpontos numerikus adattípust reprezentálja. A blokk diagramon egy terminál adattípusként történő megjelenítéséhez kattintsunk jobb egérgombbal a terminálon, és tüntessük el a View As Icon (Ikonnézet) menüpont elől a kijelölést. A bal oldalt látható DBL adattípus terminál egy dupla pontosságú lebegőpontos kontrolt vagy indikátort reprezentál.

addsubterm.png A terminálok bemeneti és kimeneti csatlakozópontok, amelyek információt cserélnek az előlap és a blokk diagram között. A terminálok hasonlóak a paraméterekhez és konstansokhoz a szöveg alapú nyelvekben. A terminálok típusai közé tartoznak a kontrol vagy indikátor és a csomóponti terminálok. A kontrol és indikátor terminálok az előlapi kontrolokhoz és indikátorokhoz tartoznak. Az előlapi kontrolokba bevitt adatok (az 1. ábrán a a és b b) a kontrol terminálokon keresztül a blokk diagramba kerülnek. Ezután az adatok bekerülnek az Add (Összeadás) és a Subtract (Kivonás) függvényekbe. Amikor az Add (Összeadás) és a Subtract (Kivonás) függvények teljesen befejezték a belső számításaikat új adatokat állítanak elő. Az adat az indikátor terminálokhoz áramlik, ahol kilépnek a blokk diagramból, és újra belépve az előlapra megjelennek az előlapi indikátorokban (az 1. ábrán a+b a b és a-b a b ). Az 1. ábrán látható terminálok négy előlapi kontrolhoz és indikátorhoz tartoznak. A 4. oldalon látható Add (Összeadás) és Subtract (Kivonás) függvények csatlakozó paneljainak három csomóponti termináljuk van. A blokk diagramon a függvények termináljainak megjelenítéséhez kattintsunk jobb egérgombbal a függvény csomóponton, és válasszuk ki a Visible Items>>Terminals (Látható elemek>>Terminálok) menüpontot a gyorsmenüből.

Vezetékek

A blokk diagram objektumok között az adatok vezetékeken keresztül haladnak. A vezetékek a szöveg alapú nyelvek változóihoz hasonlatosak. Az 1. ábrán a vezetékek kapcsolják össze a kontrol és indikátor terminálokat az Add (Összeadás) és a Subtract (Kivonás) függvényekkel. Minden egyes vezetéknek van egy adatforrása, de több VI-ba és függvénybe is beköthetőek, amelyek az adott adatot olvassák. A vezetékek az adattípustól függően különböző színűek, alakúak és vastagságúak. Egy hibás vezetéket fekete szaggatott vonal jelöl a közepén egy piros X-szel. A 4. oldalon látható táblázat a leggyakoribb vezeték típusokat szemlélteti.

Vezeték típusa Skalár 1D tömb 2D tömb Szín
Numerikus wirenum.png wireintnum.png wirenumary.png wireintary.png wirenumary2.png wireintary2.png Narancssárga (lebegőpontos), Kék (egész)
Logikai wirebool.png wireboolary.png wireboolary2.png Zöld
Karakterlánc wirestrg.png wirestrgary.png wirestrgary2.png Rózsaszín

A LabVIEW-ban a vezetékek több terminál összekapcsolására használhatók azért, hogy adatokat adjunk át egy VI-nak. A vezetékeket olyan inputokkal és outputokkal kell összekapcsolni, amelyek a rajtuk átmenő adatokkal kompatibilisek. Például nem huzalozhatunk össze egy tömb kimenettel egy numerikus bemenetet. Ráadásul a vezetékeket helyes irányban kell bekötni. A vezetékeket csak egyetlen inputból és legalább egy outputba szabad kötni. Például két indikátort nem huzalozhatunk össze. A vezetékek kompatibilitását meghatározó komponensek az indikátorok és/vagy kontrolok illetve a terminálok adattípusát tartalmazzák.

Adattípusok

Az adattípusok azt jelzik, hogy milyen objektumokat, inputokat és outputokat tudunk összehuzalozni. Például egy kapcsolónak zöld szegélye van, így az összehuzalozható egy Express VI bármely zöld címkés inputjával. Egy forgatógombnak narancssárga szegélye van, így az összehuzalozható egy bármely narancssárga címkés inputtal. Azonban egy narancssárga forgatógombot nem huzalozhatunk össze egy zöld címkés inputtal. Vegyük észre, hogy a vezetékek ugyanolyan színűek, mint a terminál.

dynamicdt.png A dinamikus adattípusok egy Express VI által generált vagy gyűjtött adatokat tárolnak. A dinamikus adattípus a bal oldalt látható sötétkék terminálként jelenik meg. A legtöbb Express VI kap és/vagy visszatér egy dinamikus adattípussal. Dinamikus adattípust bármely indikátorba vagy inputba huzalozhatunk, amelyik elfogad egy numerikus, hullámforma, vagy logikai adatot. Abba az indikátorba huzalozzuk a dinamikus adattípust, amelyik a legmegfelelőbben jeleníti meg az adatot. Ezek az indikátorok lehetnek grafikonok, diagramok, vagy numerikus indikátorok.

A LabVIEW-ban a többi VI és függvény nagy része nem fogadja el a dinamikus adattípust. Ahhoz hogy egy beépített VI-t vagy függvényt dinamikus adattípusokban lévő adatok elemzésére vagy feldolgozására használjunk, konvertálnunk kell a dinamikus adattípust.

cddt.png A bal oldalt látható Convert from Dynamic Data (Konvertálás dinamikus adatról) Express VI a dinamikus adattípus numerikus, logikai, hullámforma és tömb adattípussá történő konvertálására használható. Ilyenformán más VI-okban és függvényekben is felhasználhatjuk azt. Amikor a Convert from Dynamic Data (Konvertálás dinamikus adatról) Express VI-t a blokk diagramra helyezzük, megjelenik annak dialógus ablaka. A dialógus ablak megjeleníti azokat a beállítási lehetőségeket, amelyekkel megadhatjuk, hogy milyen formátumú adattal térjen vissza a Configure Convert from Dynamic Data (Konvertálás dinamikus adatról konfigurálása) dialog box appears. The Convert from Dynamic Data (Konvertálás dinamikus adatról).

Amikor a Convert from Dynamic Data (Konvertálás dinamikus adatról) Express VI-t a blokk diagramra helyezzük, megjelenik annak dialógus ablaka. A dialógus ablak megjeleníti azokat a beállítási lehetőségeket, amelyekkel megadhatjuk, hogy milyen formátumú adattal térjen vissza a Convert from Dynamic Data (Konvertálás dinamikus adatról) Express VI. Amikor a dinamikus adattípust egy tömb indikátorba huzalozunk, a LabVIEW automatikusan a blokk diagramra helyezi a Configure Convert from Dynamic Data (Konvertálás dinamikus adatról konfigurálása) Express VI-t. Duplán rákattintva megnyithatjuk a dialógus ablakát, ahol beállíthatjuk, hogyan jelenjenek meg az adatok a tömbben.

A Convert to Dynamic Data (Dinamikus adatra konvertáló) Express VI a numerikus, logikai, hullámforma és tömb adattípusok dinamikus adattípussá történő konvertálására használható. Így a Express VI-okban használhatjuk azokat. Amikor a Convert to Dynamic Data (Dinamikus adatra konvertáló) Express VI a blokk diagramra helyezzük, megjelenik annak dialógus ablaka. Ez a dialógus ablak annak az adattípusnak a kiválasztására szolgál, amit dinamikus adattípusra szeretnénk konvertálni.

Automatikusan huzalozható objektumok

A LabVIEW automatikusan huzalozza az objektumokat, amint lehelyezzük őket a blokk diagramra. Mi is tudjuk automatikusan huzalozni az objektumokat már a blokk diagramon. A LabVIEW csak azokat a terminálokat kapcsolja össze, amelyek a legjobban illeszkednek.

Amikor egy kiválasztott objektumot mozgatunk egy másik közelében, a LabVIEW megrajzol egy ideiglenes vezetéket, amely az érvényes kapcsolatot mutatja. Amikor felengedjük az egérgombot, hogy a blokk diagramra helyezzük az egeret, a LabVIEW automatikusan csatlakoztatja a vezetékeket.

A szóközbillentyű lenyomásával ki-bekapcsolhatjuk az automatikus huzalozást, mialatt a Positioning (Pozícionáló) eszközzel mozgatjuk az objektumot. A Tools>>Options (Eszközök>>Beállítások)menüpontra kattintva és a felső legördülő menüből a Block Diagram-ot (Blokk diagramot) kiválasztva az automatikus huzalozás beállításait módosíthatjuk.

Manuálisan huzalozható objektumok

Amikor a Wiring (Huzalozó) eszközt egy terminál fölé visszük, egy lebegő felirat jelenik meg a terminál nevével. Ráadásul a Context Help (Környezetfüggő súgó) ablakban és az ikonon is villog a terminál, hogy meggyőződhessünk arról, hogy a helyes terminálba huzalozunk.

Comments, questions, feedback, criticisms?

Send feedback