Beispiel06: UI-C#-ADS Client lädt die Symbolik vom Modul hoch

Dieser Artikel beschreibt die Implementierung eines ADS Client um

Download

Hier erhalten Sie den Quellcode für dieses Client-Beispiel.

Dieser Code erfordert .NET Framework 3.5 oder höher!
1. Entpacken Sie die heruntergeladene ZIP-Datei.
2. Öffnen Sie die enthaltene sln-Datei mit Visual Studio.
3. Erstellen Sie das Beispiel auf Ihrer lokalen Maschine (auf das Projekt rechtsklicken und „Build“ klicken).
4. Starten Sie das Programm mit einem Rechtsklick auf Projekt, Debug->Start new instance.

Das Client-Beispiel sollte mit Beispiel 03 „C++ als ADS Server“ verwendet werden.

Öffnen Sie Beispiel 03 bevor Sie mit diesem Client-seitigen Beispiel beginnen!

Beschreibung

Anhand dieses Beispiels werden die Möglichkeiten der ADS beschrieben.

Die Einzelheiten der Implementierung werden in Form1.cs, das im Download enthalten ist, beschrieben. Die Verbindung über ADS mit dem Zielsystem wird in der Methode btnLoad_Click, die beim Klicken auf die Load Symbols Schaltfläche aufgerufen wird, hergestellt. Von dort aus können Sie die verschiedenen Funktionen der GUI erkunden.

Hintergrundinformation:

Diesem ADS Client ist es Einerlei, ob der ADS Server auf TwinCAT 2 oder auf TwinCAT 3 basiert. Auch spielt es keine Rolle, ob der Server ein C++ Modul, ein SPS-Modul oder eine IO Task ohne jede Logik ist.

Die ADS Client UI

Nach dem Starten des Beispiels wird die Benutzerschnittstelle (UI) eingeblendet.

Beispiel06: UI-C#-ADS Client lädt die Symbolik vom Modul hoch 1:

Kommunikationspartner auswählen

Geben Sie nach dem Starten des Client die beiden ADS-Parameter ein, um Ihren ADS-Kommunikationspartner zu bestimmen.

Beispiel06: UI-C#-ADS Client lädt die Symbolik vom Modul hoch 2:

Nicht den ADS Server Port mit dem regulären ADS Port verwechseln.

Verwechseln Sie nicht den ADS Server Port (der ausdrücklich in Beispiel 03 implementiert wurde, um Ihren eigenen Message-Handler bereitzustellen) mit dem regulären ADS Port zwecks Zugriff auf Symbole (es gibt nichts zu tun, wird automatisch zur Verfügung gestellt):

Wir benötigen den regulären ADS Port, um auf Symbole zugreifen zu können. Sie können den AdsPort bei der IO Task Ihrer Instanz oder bei der Modulinstanz selber herausfinden (weil das Modul im Kontext der IO Task ausgeführt wird).

Navigieren Sie zur IO Task Task1 und achten auf den Wert von Port: 350.
Beispiel06: UI-C#-ADS Client lädt die Symbolik vom Modul hoch 3:

Weil die C++ Modulinstanz im Kontext von Task1 ausgeführt wird, ist der ADS Port auch gleich 350.
Beispiel06: UI-C#-ADS Client lädt die Symbolik vom Modul hoch 4:

Aktivierte Symbole für Zugriff über ADS verfügbar

Es besteht die Möglichkeit einzelne Symbole oder gar vollständige Datenbereiche für den Zugriff über ADS bereitzustellen oder eben nicht bereitzustellen.
Navigieren Sie zur der Registerkarte Data Area Ihrer Instanz und aktivieren/deaktivieren Sie die Spalte C/S.

In diesem Beispiel sind alle Symbole gekennzeichnet und demzufolge für den ADS-Zugriff verfügbar.

Nach den Änderungen klicken Sie auf Konfiguration aktivieren.

Beispiel06: UI-C#-ADS Client lädt die Symbolik vom Modul hoch 5:

Symbole laden

Nach der Einrichtung der NetID und des ADS Port klicken Sie auf die Schaltfläche Load Symbols, um eine Verbindung mit dem Zielsystem herzustellen und die Symbole zu laden.

Daraufhin sind alle verfügbaren Symbole zu sehen. Anschließend können Sie: