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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: ADS Verbindung extrem langsam

  1. #1
    Registriert seit
    18.02.2013
    Beiträge
    23
    Danke
    1
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    folgendes Problem: Ich greife mit einer selbst geschriebenen vb.net Anwendung auf einen BC9100 mit SPS-Runtime zu. Ich benutzte dazu TwinCat.ADS. Die Route habe ich mit TcAmsRemoteMgr.exe hinzugefügt. TwinCat ist auf dem Rechner nicht installiert, nur die notwendigen Dlls. Die Verbindung funktioniert, ich kann Daten lesen und schreiben. Allerdings extrem langsam. Ich kann den Timeout auf Minimum 55ms heruntersetzen, aber das ist immer noch zu langsam. Ich habe es mit Schleifen und Timern versucht: Nichts zu machen. Auf dem PC läuft übrigens Windows 7 x64.
    Hat irgendwer ähnliche Erfahrungen gemacht? Gibt es einen Weg die Verbindung zu beschleunigen? Ich bin für jeden Hinweis dankbar...
    Zitieren Zitieren ADS Verbindung extrem langsam  

  2. #2
    Registriert seit
    19.07.2008
    Ort
    Aachen
    Beiträge
    270
    Danke
    2
    Erhielt 21 Danke für 20 Beiträge

    Standard

    Mit dem Timeout hat das nix zu tun. Ich würde vermuten, dass es wohl eher an deinem Programm oder am BC liegt (der ist ja nun nicht soo flott). Was sagt das Infosys dazu und wie stark ist der BC ausgelastet?
    Und: Was tust du in deinem Programm? Ich finde, dass klingt danach, als hättest du irgendwas programmiert, was halt einfach nicht schneller geht...
    "Always code as if the guy, who ends up maintaining your code, is a violent psychopath who knows, where you live."
    -------------------------------------------------------------------------------------------------------------------------------------------------------
    Youtube-Channel

  3. #3
    CaptainKirk ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    18.02.2013
    Beiträge
    23
    Danke
    1
    Erhielt 3 Danke für 3 Beiträge

    Standard

    @Majestic_1987
    danke für deine Antwort.
    Ich glaube nicht das es am BC liegt. TwinCat fragt die Variablen ja auch blitzschnell ab, und das über WLAN. Und die Auslastung ist nicht der Rede wert (mittlere Zykluszeit mit 1888μs gemessen), auf dem BC wird lediglich ein Analogwert umgerechnet den ich dann über ADS auslese.

  4. #4
    Registriert seit
    19.07.2008
    Ort
    Aachen
    Beiträge
    270
    Danke
    2
    Erhielt 21 Danke für 20 Beiträge

    Standard

    Dann poste doch mal den relevanten VB-Code, vermutlich liegt dort der Hase im Pfeffer...
    "Always code as if the guy, who ends up maintaining your code, is a violent psychopath who knows, where you live."
    -------------------------------------------------------------------------------------------------------------------------------------------------------
    Youtube-Channel

  5. #5
    Registriert seit
    24.02.2009
    Beiträge
    1.242
    Danke
    23
    Erhielt 276 Danke für 235 Beiträge

    Standard

    Jo der Code und ein paar zusätzliche Infos wären hilfreich (wieviele Variablen liest du, was heißt "zu langsam" etc.) Ansonsten können wir hier nur fröhlich im Nebel herumstochern.

  6. #6
    Registriert seit
    28.05.2010
    Ort
    OWL
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo CaptainKirk,

    also wir hatten in einem unserer Projekte versucht, Daten zwischen einem CX1010 und einem Win7 x64 Rechner via ADS auszutauschen. An sich lief das Ganze.....wenn man genug Zeit gehabt hätte. Das Problem bei uns war, dass die Datenübertragung zwischen 5 und 300 ms gedauert hatte, obwohl nur verhältnismäßig wenige Bytes ausgetauscht werden mussten. Nach (wirklich) monatelangem hin- und hertesten haben wir uns gegen die ADS-Kommunikation und für eine ETherCAT-PCI-Karte entschieden -> im Vergleich zur ursprünglichen Variante ein Traum. Wir konnten die ADS-Kommunikation nur begrenzt beschleunigen, die großen Latenzen blieben aber.

    Also wie gesagt, an sich läuft es und eignet sich meiner Meinung nach gut für Visualisierungen, aber wir mussten uns aufgrund der großen Probleme mit der Echtzeitfähigkeit für eine andere Variante entscheiden.

  7. #7
    Registriert seit
    24.02.2009
    Beiträge
    1.242
    Danke
    23
    Erhielt 276 Danke für 235 Beiträge

    Standard

    Wir nutzen fast ausschließlich das Summenkommando. Mein Kollege hat einen Kommunikationshandler geschrieben der aus einer vorgegebenen Variablenliste den Abfragestream generiert und den Antwortstream automatisch zerlegt und als Einzelwerte ausgibt. Damit können wir große Datenmengen in rel. kurzer Zeit aus der SPS holen (unser Stresstest waren über 1000 Variablen unterschiedlichster Typen im 100ms Intervall). In der Theorie sollte das noch schneller gehen, aber für uns reicht das allemal.

    Warum das Summenkommando? Weil für jede Abfrage oder setzen eines Werte über ADS eine neue Verbindung aufgebaut wird, mit entsprechendem Overhead. Das dauert laut Beckhoff 2ms je Einzelvariable. 100 Abfragen --> 200ms usw usf. Für das Summenkommando wird nur eine Verbindung aufgebaut und dann alle Abfragen als ein kompletter Stream gesendet und die Antwort kommt als Stream zurück. (100 Abfragen --> 2ms, 400 Abfragen --> 2 ms).

    Für Anwendungen die harte Echtzeit und dazu noch sehr kurze Update-Zeiten benötigen halte ich ADS aber auch nicht geeignet. Für HMI Anwendungen bei denen große Datenmengen gelesen und geschrieben werden müssen und man gerne mal 50ms Zeit hat, ist ADS eigentlich perfekt.

  8. #8
    CaptainKirk ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    18.02.2013
    Beiträge
    23
    Danke
    1
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Danke erstmal für die vielen Antworten. Das mit dem Summenkommando werde ich mir mal ansehen. Allerdings lese ich nur ein paar Bytes, keine großen Datenmengen.
    Den Code kann ich euch auch gerne zeigen, ist kein Geheimnis. (Bevor mir aber irgendjemand vorwirft ich hätte was total dummes im Code gemacht: Sowohl TwinCat als auch .Net sind für mich neu )

    Jo der Code und ein paar zusätzliche Infos wären hilfreich (wieviele Variablen liest du, was heißt "zu langsam" etc.) Ansonsten können wir hier nur fröhlich im Nebel herumstochern.
    Ich lese 6 Bytes. Zu langsam heißt ca 100 bis 1000ms Verzögerung beim abfragen.
    Angehängte Dateien Angehängte Dateien

  9. #9
    CaptainKirk ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    18.02.2013
    Beiträge
    23
    Danke
    1
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Also, ich habe mittlerweile herausgefunden woran es liegt. Alleine mit den ADS-Dlls scheint es nicht getan zu sein. TwinCAT muss auf dem System installiert sein, zumindest die TC ADS Communication Lib. Warum genau das so sein muss weiß ich nicht.

  10. #10
    Registriert seit
    19.07.2008
    Ort
    Aachen
    Beiträge
    270
    Danke
    2
    Erhielt 21 Danke für 20 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    DAS steht aber auch in der Dokumentation Das muss so sein, weil nur dann das ganze Mailbox- und Router-Gedöns auf dem PC ist.
    "Always code as if the guy, who ends up maintaining your code, is a violent psychopath who knows, where you live."
    -------------------------------------------------------------------------------------------------------------------------------------------------------
    Youtube-Channel

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 07.09.2011, 17:45
  2. ADS sehr langsam
    Von mikep im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 29.07.2010, 07:01
  3. Step 5 startet langsam Bedienung langsam
    Von mitchih im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 04.01.2010, 10:26
  4. wincc flexible extrem langsam
    Von mertens2 im Forum HMI
    Antworten: 1
    Letzter Beitrag: 09.10.2009, 20:05
  5. OPC Server Simatic - S7 Verbindung langsam!
    Von MartinP im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 10.11.2007, 21:40

Lesezeichen

Berechtigungen

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