LabVIEW™-VIs

Das TwinCAT 3 Interface for LabVIEW™ bietet Bedienelemente und VIs für die Nutzung in LabVIEW™.

Die VIs befinden sich im Blockdiagramm in der functions palette: Functions > User Libraries > Beckhoff-LabVIEW-Interface.

LabVIEW™-VIs 1:

Der Hauptordner beinhaltet die Grund-VIs, die zum Aufbauen eines Programms zum Lesen über ADS, zum Schreiben über ADS, zum TypeResolving und zum Freigeben des ADS-Clients genutzt werden können. Zusätzlich beinhaltet der Hauptordner noch die Unterordner: Low-Level, With TypeResolving und Utilities.

Low-Level

Der Low-Level-Unterordner enthält Low-Level-VIs. Die Low-Level-VIs funktionieren nach dem gleichen Prinzip wie die Grund-VI. Die Low-Level-VIs bringen etwas mehr Programmierungsaufwand mit sich, sind jedoch, im Vergleich zu den Grund-VIs, performanter (im Sinne des Datendurchsatzes) und bieten mehr Freiheit in der Realisierung komplexer Programme. Lesen mit Polling Zyklus ist ein Beispiel, welches die Low-Level-VIs für schnelles Lesen über ADS nutzt. Schreiben mit Polling Zyklus ist ein ähnliches Beispiel. Nicht nur das Lesen und Schreiben können in dieser Art und Weise beschleunigt werden, sondern auch das TypeResolving, siehe bspw. Continous Read.

Die Tabelle beschreibt die Unterordner und deren Inhalt und Funktion:

Unterordner

VIs

Funktion

Init

Base Init

Initialisiert den ADS-Client.

Get List of ReadWrite Symbols

Erstellt eine Liste von ADS-Lese- und Schreibe-Symbolen.

Get List of Registered Targets

Erstellt eine Liste von eingetragenen ADS-Zielsystemen.

Read

Init Reader

Initialisiert den ADS-Reader.

Send Reader-Request

Sendet eine Anfrage an den ADS-Server.

Register Notification

Meldet die Notification am ADS-Server an.

TryReadData

Überprüft die Antwort vom Server und liest den Datenstrom.

Release Reader

Gibt den Reader aus dem Speicher frei.

Write

Init Writer

Initialisiert den ADS-Writer.

Send Writer-Request

Sendet eine Anfrage an den ADS-Server.

CheckWriteStatus

Überprüft für die Antwort vom ADS-Server, ob das Datenpaket empfangen wurde.

Release Writer

Gibt den Writer aus dem Speicher frei.

SumUp

Init SumUp

Initialisiert den ADS-SumUp.

Add SubCommand

Fügt dem SumUp ein neues Kommando hinzu.

Put Data

Fügt dem initialisierten Kommando neue Daten hinzu, die nach TwinCAT geschrieben werden sollen.

Get Data

Ruft von einem SumUp-Kommando Daten ab, die aus TwinCAT gelesen wurden.

Enable Autosend

Ermöglicht das automatische Senden der SumUp-Kommandos.

Send SumpUp

Sendet alle SumUp-Kommandos an die TwinCAT Runtime.

Rleease SumUp

Gibt das SumUp-Handle im Speicher frei.

TypeResolver

Init Type

Initialisiert den TypeResolver.

Resolve From TC Type

Konvertiert den TwinCAT 3-Datentyp in einen LabVIEW™-Datentyp Variant.

Resolve To TC Type

Konvertiert den LabVIEW™-Datentyp Variant in einen TwinCAT 3-Datentyp.

Release Type

Gibt den TypeResolver aus dem Speicher frei.

LabVIEW™-VIs 2:

With TypeResolving

Der With TypeResolving-Unterordner enthält zwei VIs für das Lesen und Schreiben über ADS mit integriertem TypeResolver Block.

LabVIEW™-VIs 3:

Utilities

Der Utilities-Unterordner enthält zusätzliche VIs für folgende Zwecke:

Unterordner

VIs

Funktion

Notification

ADS To LabVIEW Timestamp

Konvertiert ADS-Zeitstempel in LabVIEW™-Zeitstempel.

Notification Data To Variant Array

Baut ein Array von LabVIEW™Variant aus dem Notification Datenstrom.

Stop Notification

Stoppt die ADS-Notifications.

Start Notification

Startet die ADS-Notifications.

Unregister Notification

Meldet die Notification am Server ab.

LVBuffer

Init LVBuffer Handle

Initialisiert ein Handle zum Lesen einer ADS-Notification unter Verwendung des LabVIEW™-seitigen Datenpuffers.

Read From LVBuffer

Lesen von Daten aus dem Datenpuffer

LVBuffer Status

Auslesen der Anzahl der Samples im Datenpuffer

Release LVBuffer Handle

Freigabe des Handles auf den Datenpuffer

Routes

Get Routes

Liest alle Zielsysteme aus, die mit dem lokalen TwinCAT-System verbunden sind.

Get Route Info

Gibt zu einem Zielsystem alle Subsysteme und Ports an.

CoE

Read CoE List

Liest ein CoE-Verzeichnis einer Klemme aus und listet die verfügbaren CoE-Objekte auf.

Read CoE Description

Ruft die Beschreibung eines CoE-Objekts auf und gibt die Unterelemente an.

Read CoE Entry

Liest einen Eintrag eines CoE-Verzeichnisses aus und gibt die Eigenschaften aus.

Read CoE Value

Liest den Wert eines CoE-Eintrags aus.

Write CoE Value

Schreibt den Wert eines CoE-Eintrags.

Project Automation

Init Project

Initialisiert ein TwinCAT-3-Engineering-Projekt. Es wird entweder ein vorhandenes Projekt geöffnet oder ein neues erstellt.

Create Task

Erstellen eine Task in einem TwinCAT-3-Projekt oder verändern der Task Parameter.

Scan IO

Prüft auf dem Zielsystem vorhandene Ein- und Ausgänge und fügt diese dem Projektbaum hinzu.

Create PLC

Erstellen einer SPS innerhalb eines TwinCAT-3-Projekts.

Activate Solution

Aktivieren eines TwinCAT-3-Projekts.

Release Project

Gibt das Handle auf das TwinCAT-3-Projekt frei.

Heartbeat

Init Heartbeat

Erstellt eine Heartbeat-Instanz mit einem Handle.

Run Heartbeat

Startet die Verbindungsüberwachung.

Stop Heartbeat

Stoppt die Verbindungsüberwachung.

Release Heartbeat

Gibt das Handle auf die Heartbeat-Instanz aus dem Speicher frei.

Get RTD Estimate

Gibt die aktuelle Schätzung des Roundtrip-Delays an.

 

Heartbeat

Führt das Initialisieren, Starten und Stoppen der Verbindungsüberwachung in einem VI aus.

 

Generate Type

Generiert aus der TypeInfo des TypeResolvers eine entsprechende Konstante oder ein Control mit den LabVIEW™ Datentypen zu einem Symbol.

 

Check License

Überprüft den Lizenzzustand auf einem vorgegebenen Zielsystem.

Set Device State,
Get Device State

Liest oder ändert den Zustand eines ADS-Device.

Get Version Info

Gibt Informationen bezüglich der Produktversion.

LabVIEW™-VIs 4:

Bedienelemente

Die Bedienelementen befinden sich im Frontpanel in der controls palette unter: User Controls > Beckhoff-LabVIEW-Interface.

LabVIEW™-VIs 5:

Der Unterordner „Notification“ enthält Bedienelemente, die beim Initialisieren des LabVIEW™-Ereignis für ADS-Notifications benötigt werden.

Des Weiteren beinhaltet der Unterordner „TypeGenerator“ TypeGenerator-Klassen-Objekte, um TwinCAT-Typen in LabVIEW™-Typen zu konvertieren (siehe dazu LabVIEW™ Typ Generieren).

Folgende Tabelle beschreibt die Funktion der Bedienelemente:

Unterordner

Controls

Funktion

Notification

Single User-Event Data

Bedienelement für das Initialisieren eines LabVIEW™-Events für Single ADS-Notifications.

Buffered User-Event Data

Bedienelement für das Initialisieren eines LabVIEW™-Events für Buffered ADS-Notifications.

TypeGenerator

CBase

Klassen-Objekt; Basis Klasse des TypeGenerator

CBool

Klassen-Objekt; Boolesche Klasse des TypeGenerator.

CNumeric

Klassen-Objekt; Numerische Klasse des TypeGenerator.

CString

Klassen-Objekt; LabVIEW™ Zeichenkette Klasse des TypeGenerator.

CArray

Klassen-Objekt; Array Klasse des TypeGenerator.

CTimestamp

Klassen-Objekt; LabVIEW™ Zeitstempel Klasse des TypeGenerator.

CCluster

Klassen-Objekt; LabVIEW™ Cluster Klasse des TypeGenerator.