Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 9 von 9

Thema: Fragen zu ACCON AGLink

  1. #1
    Registriert seit
    21.10.2010
    Beiträge
    158
    Danke
    21
    Erhielt 29 Danke für 17 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!
    Bin gerade dabei die AGLink Library zu testen und ich bin beeindruckt wie bequem sich alles verwenden lässt.

    Hab da aber vorläufig noch ein paar Fragen.

    Bei dieser Library kann man zwischen PG, OP und Sonstiger Kommunikation wählen. Sonstige Kommunikation kann man ja bei LibNoDave und IPS7Lnk von Träger nicht auswählen. Gibt es da geschwindigkeitstechnische Unterschiede, oder warum wählt man eine bestimmte Kommunikationsart aus, also nach welchen Kriterien?

    Wieviele Strukturen kann man den Funktionen ReadMix, .. übergeben. Da gibt es doch bestimmt eine Grenze, oder?

    Welchen Vorteil bringt OptReadMix mit sich? Kann ich mir da wirklich einen Geschwindigkeitsvorteil erwarten, und wenn ja ab welcher Menge von Daten.
    Sollte man grundsätzlich OptReadMix verwenden oder ist es bei wenigen Werten dann langsamer?

    Vielen Dank im Voraus für jede nützliche Information!

    Gruß funkey
    Zitieren Zitieren Fragen zu ACCON AGLink  

  2. #2
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.758
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Du kannst auch zwischen PG und OP bei libnodave nicht wählen (ich hab das in meine abgeänderte Version eingebaut!). Auf der S7 kann man aber Verbindungen für PG und OP reservieren, und jenachdem als was du dich nun mit der SPS Verbinden willst, und es ist keine Verbindung mehr verfügbar, dann lässt sich dich nicht verbinden, Kommunikationsmäßig ist das gleich!

    Zu den read funktion kann Ich dir leider nichts sagen, da Ich AGLink noch nicht, ausser zu testzwecken, verwendet habe!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  3. #3
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.235
    Danke
    641
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Die Einstellung PG, OP, und Sonstige wird benötigt, dass man eine andere Resource auf der SPS wählen kann wenn eine komplett belegt ist. Es gibt z.B. einen S7-Nachbau, der nur eine PG- und eine OP-Verbindung zulässt. Da ist es schon praktisch, wenn man die freie Wahl hat (ohne im Programm etwas ändern zumüssen). In der Geschwindigkeit habe ich bis jetzt keine Unterschiede festestellen können.

    Es gibt keine Grenzen bei der Anzahl der Strukturen (ok, den Hauptspeicher). ACCON-AGLink handelt dies alles nacheinander ab und packt soviel Strukturen wie möglich in eine Anfrage.

    Die optimierten Funktionen lohnen sich speziell, wenn es viele einzelne Operanden sind, die dicht beieinander liegen. Wenn zum Beispiel die acht Bits eines Bytes in acht separaten Strukturen hinterlegt sind, dann wird für die Anfrage daraus intern eine einzige generiert. Wenn je Struktur Werte aus unterschiedlichen Bereichen lesen soll, dann bringt die Optimierung nichts. Wichtig dabei ist, dass man sich nicht darum kümmern muss, was die SPS wirklich kann, dies erledigt ACCON-AGLink einfach im Hintergrund. Und die erzielbaren Geschwindigkeitsvorteile sind schon beachtlich.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  4. #4
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.758
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von Rainer Hönle Beitrag anzeigen
    Die Einstellung PG, OP, und Sonstige wird benötigt, dass man eine andere Resource auf der SPS wählen kann wenn eine komplett belegt ist. Es gibt z.B. einen S7-Nachbau, der nur eine PG- und eine OP-Verbindung zulässt. Da ist es schon praktisch, wenn man die freie Wahl hat (ohne im Programm etwas ändern zumüssen).
    Daher hab Ich es in meiner angepassten Version von libnodave so geändert das man dies beidem Erzeugen einer neuen Connection mit angeben kann. (Ich habe aber die Syntax vom normalen daveNewConnection nicht geändert, sondern eine neue Funktion (daveNewExtenedConnection) eingebaut. Mit dieser werden z.B. auch Routing Verbindungen aufgebaut.

    Zitat Zitat von Rainer Hönle Beitrag anzeigen
    Die optimierten Funktionen lohnen sich speziell, wenn es viele einzelne Operanden sind, die dicht beieinander liegen. Wenn zum Beispiel die acht Bits eines Bytes in acht separaten Strukturen hinterlegt sind, dann wird für die Anfrage daraus intern eine einzige generiert. Wenn je Struktur Werte aus unterschiedlichen Bereichen lesen soll, dann bringt die Optimierung nichts. Wichtig dabei ist, dass man sich nicht darum kümmern muss, was die SPS wirklich kann, dies erledigt ACCON-AGLink einfach im Hintergrund. Und die erzielbaren Geschwindigkeitsvorteile sind schon beachtlich.
    Zur Optimierung:
    Seh Ich das richtig das es sich bis zu 4 Bytes zwischen 2 Variablen lohnt, trotzdem diese 4 Bytes mit zu lesen, da im Antworttelegramm, 4 Bytes an Header dazukommen würden! (So hatte Ich zumindest mal vor das optimieren in meiner Connection Library zu machen, und natürlich die Tags vorher sortieren!)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  5. #5
    Registriert seit
    21.10.2010
    Beiträge
    158
    Danke
    21
    Erhielt 29 Danke für 17 Beiträge

    Standard

    Vielen Dank für die hilfreichen Antworten.
    Ich konnte das optimierte Auslesen jetzt erfolgreich testen (das Umsetzen der Funktionen nach AutoIt war gar nicht so einfach) und bin wirklich erstaunt über den Geschwindigkeitsvorteil.
    Habe testhalber ca. 100 verschiedene Werte aus 4 SPSen (S7-300) ausgelesen. Das normale Lesen dauerte ~1000ms während das optimierte Auslesen nur ~300ms dauerte. Ich finde das beeindruckend wie gut diese Optimierung umgesetzt wurde.

    Jetzt noch ein paar weitere Fragen:
    Was stelle ich bei dem TimeOut beim Lesen am besten ein ich habe da jetzt immer 1000ms übergeben, was bewirkt dieser. In der XML-Datei steht ja auch ein TimeOut drinnen, wofür ist der? Außerdem wird der TimeOut vom Konfigurationstool nur für die erste AG-Nummer angepasst, habe die anderen direkt mit dem Editor geändert.

    Wenn ich es nun noch schaffe die Daten asynchron zu lesen, dann dürfte der ganze Lesezyklus nur so lange dauern wie es dauert, die Daten von der langsamsten SPS (oder SPS mit den meisten auszulesenden Daten) zu holen, oder? Das wäre dann ja nochmal ein großer Geschwindigkeitssprung.

    Ich werde mich wohl langsam mehr mit C(++) beschäftigen müssen um solche coolen Dinge in LibNoDave einbauen zu können. Ich weiß, Jochen hat da ja seine Connection Library, aber .NET kann ich mit AutoIt leider nicht nutzen.

  6. #6
    Registriert seit
    28.10.2005
    Ort
    Ottweiler, Saar
    Beiträge
    940
    Danke
    259
    Erhielt 124 Danke für 109 Beiträge

    Standard

    Zitat Zitat von funkey Beitrag anzeigen

    Wenn ich es nun noch schaffe die Daten asynchron zu lesen, dann dürfte der ganze Lesezyklus nur so lange dauern wie es dauert, die Daten von der langsamsten SPS (oder SPS mit den meisten auszulesenden Daten) zu holen, oder? Das wäre dann ja nochmal ein großer Geschwindigkeitssprung.
    Leider musst Du die Zeiten aber dann doch noch addieren.
    Das ist ja die Crux bei dem seriellen Zeug. Selbst Ethernet ist auch nur
    ein serielles Bussystem. Auch da kommt alles schön eins nach dem anderen.

    Aber ausprobieren kannste ja mal, und hier berichten.

  7. #7
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.235
    Danke
    641
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Zitat Zitat von funkey Beitrag anzeigen
    Jetzt noch ein paar weitere Fragen:
    Was stelle ich bei dem TimeOut beim Lesen am besten ein ich habe da jetzt immer 1000ms übergeben, was bewirkt dieser. In der XML-Datei steht ja auch ein TimeOut drinnen, wofür ist der? Außerdem wird der TimeOut vom Konfigurationstool nur für die erste AG-Nummer angepasst, habe die anderen direkt mit dem Editor geändert.
    Mit dem Tiemoutwert kann einzelnen Funktionen direkt ein entsprechender Wert zuegordnet werden. Wird Hier 1 angegeben, wird der Standardtimeoutwert aus der Konfiguration synchron verwendet. Wird hier 0 angegeben, wir der Standardtimeoutwert aus der Konfiguration asynchron verwendet.

    Wenn ich es nun noch schaffe die Daten asynchron zu lesen, dann dürfte der ganze Lesezyklus nur so lange dauern wie es dauert, die Daten von der langsamsten SPS (oder SPS mit den meisten auszulesenden Daten) zu holen, oder? Das wäre dann ja nochmal ein großer Geschwindigkeitssprung.
    Im Prinzip richtig, da sämtliche SPSen dann parallel abgefragt werden.

    Ich werde mich wohl langsam mehr mit C(++) beschäftigen müssen um solche coolen Dinge in LibNoDave einbauen zu können. Ich weiß, Jochen hat da ja seine Connection Library, aber .NET kann ich mit AutoIt leider nicht nutzen.
    Zwischen libnodave und ACCON-AGLink gibt es konzeptionelle Unterschiede. Deshalb viel Spaß beim einbauen.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  8. Folgender Benutzer sagt Danke zu Rainer Hönle für den nützlichen Beitrag:

    funkey (14.03.2011)

  9. #8
    Registriert seit
    21.10.2010
    Beiträge
    158
    Danke
    21
    Erhielt 29 Danke für 17 Beiträge

    Standard

    Zitat Zitat von Rainer Hönle Beitrag anzeigen
    Zwischen libnodave und ACCON-AGLink gibt es konzeptionelle Unterschiede. Deshalb viel Spaß beim einbauen.
    Ich weiß, dass sich die beiden Libraries ziemlich unterscheiden, doch ich meinte hauptsächlich, dass in LibNoDave wichtige und vor allen bequeme Funktionen wie zum Beispiel AGL_Text2DataRW fehlen.

    Was mir bei AGLink noch fehlt ist, das man Zeiten und Zähler nach einem ReadMix noch separat umwandeln muss. Den anderen Werten kann man ja die passende Struktur variabel mitgeben, damit gleich das Ergebnis stimmt (z.B. DWORD und FLOAT).


    Mit welchem Compiler kann man LibNoDave eigentlich ohne langes Nachdenken kompilieren, wenn man recht wenig Ahnung von der Materie hat?
    Ich habe bei mir Code::Blocks und Dev-C++ installiert.

  10. #9
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.758
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von funkey Beitrag anzeigen
    Was mir bei AGLink noch fehlt ist, das man Zeiten und Zähler nach einem ReadMix noch separat umwandeln muss. Den anderen Werten kann man ja die passende Struktur variabel mitgeben, damit gleich das Ergebnis stimmt (z.B. DWORD und FLOAT).
    Das hab Ich bei mir in die ConnectionLibrary eingebaut, d.h. jeder S7 Datentyp wird automatisch in einen .Net Datentyp umgewandelt. (z.B. Dword in Unit16, Time_Of_Day in DateTime, etc) und umgekehrt.
    Wie soll das AG Link aber bei Zeiten machen (ist ja keine reine .NET Lib), da gibt es ja von C keinen definierten Typ dafür (oder täusch Ich mich?)


    Zitat Zitat von funkey Beitrag anzeigen
    Mit welchem Compiler kann man LibNoDave eigentlich ohne langes Nachdenken kompilieren, wenn man recht wenig Ahnung von der Materie hat?
    Ich habe bei mir Code::Blocks und Dev-C++ installiert.
    Also Ich compiliere immer mit dem Microsoft Compiler, ist bei mir bei VS2010 dabei, aber galub der istauch im WindowsSDK enthalten! Anderen hab Ich noch nicht probiert (ok, GCC unter Linux)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

Ähnliche Themen

  1. Libnodave vs. ACCON-AGLink
    Von ToBo im Forum HMI
    Antworten: 16
    Letzter Beitrag: 18.08.2009, 09:06
  2. Accon AGLink 4 und .net?
    Von mpexx im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 25.06.2008, 12:08
  3. ACCON-AGLink + VB6 -> Zugriff auf Bits?
    Von MSP im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 15.09.2005, 09:31
  4. Abkürzung AG bei ACCON-AGLink
    Von Anonymous im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 02.05.2005, 10:19
  5. ACCON AGLink
    Von steinthomas im Forum PC- und Netzwerktechnik
    Antworten: 1
    Letzter Beitrag: 11.10.2004, 16:42

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •