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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 20 von 20

Thema: ADS Auslastung

  1. #11
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    173
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hey,

    die NT_GetTime() hat einen Timeout (1861) verursacht! (wie oben beschrieben). Dann wurde ein ADS capture geloggt! mit den Ergebnissen wie oben erwähnt. wenn ich das Gleiche System "ohne" Hardware und "ohne" EMS system laufen lasse, verringert sich der ADS Traffic um ein 15-tel! und es gbit keine missing frames mehr!!!

    d.h. von 900 Frames /sec. auf 60Frames/s . d.h. bei 60Frames/S läuft nur der timer mit dem NT_GetTime()!! es liegt also nich an der NT_GetTime funktion !!!

    Meine Frage war wie man erkennen kann dass ADS Überlastet ist. Es gibt keinen Schwellwert etc. die das angeben!
    Mein Problem war dass eben der Timout da war.. durch rechereche und ADS Logger und Viewer..und analyse wurde eben
    der hohe traffic erkannt und die missing frames.. und das heist ja Überlast oder?

  2. #12
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    173
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    P.S: zu deiner zufriedenheit! Wenn ich statt 100ms den timer auf 1 sek stelle, dann hab ich 890 statt 900 frames^^

  3. #13
    Registriert seit
    10.08.2012
    Beiträge
    171
    Danke
    0
    Erhielt 51 Danke für 49 Beiträge

    Standard

    Hi Boris,
    die absolute Anzahl ist nicht relevant. Jeder Modul (=AMS-Adresse + Port) hat einen maximalen Eingangs- bzw. Ausgangs-Puffer. Wenn z.B. deine PLC (z.B. Port 801 für TC2) in einem Taskzyklus 80 ADS-Aufrufe absendet ist Schluss.

    Die Timeout Fehlernummer ist der Fallback wenn vom Partner innerhalb des (von dir gesetzten) Timeouts keine Antwort empfangen wurde. Das könnte auch vorkommen wenn die Kommunikation überlastet ist, aber im allgemeinen gibt es explizite Fehlerrückgaben (kannst ja mal nen Array von 100 NT_GetTime in einem Zyklus aufrufen -> dann siehst du es).

    In der Summe würde ich 900 Aufrufe / sec als nicht relevant halten, es kommt aber wie gesagt darauf an wie viele parallel an ein ADS-Device aktiv sind.
    Im Prinzip ist bei Beckhoff alle Kommunikation auf ADS-Basiert - es sei denn die Daten sind im zyklischen Prozessabbild.
    Vielleicht kannst du dein Log ja mal irgendwo hochladen. Ich würde es mir anschauen und dann meinen Senf dazu geben.

    Guga

  4. #14
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    173
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    hey Guga,

    mir scheint , Du kennst dich ein wenig aus Habe spasshalbe 10 sollcher NT_GetTime aufruffe im zyklus aufgerufen, dann habe ich schon 200 Frames per second.

    Ich habe mit dem ADS Viewer auch mal bissel rumgespielt, damit kann man zwar bissel filtern und so, aber man kann nich den traffic einzelner NetID zu NetID komunkation ermitteln etc.!? oder doch?

    Grüße Boris

  5. #15
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    173
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Noch was anderes,

    wenn der NT_GetTime() baustein nen Timout hat!? wie bekomm ich denn wieder zurückgesetzt? Allein Das START flag für einen zyklus auf false setzen hilft nix!
    Wenn ich den Call des baustein allerdings auskommentiere, einspiele, wieder einkommentiere und einspiele is der timeout weg!?! Bedeutet das, dass der Bausteine mehere Zyklen mit "START=False" aufgerufen werden muss, um ihn zurück zu setzen!?

    Grüßele

  6. #16
    Registriert seit
    11.07.2011
    Beiträge
    65
    Danke
    0
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Beckhoff erstellt ihre auf ADS basierten FBs jeweils so, dass ein Zyklus mit START:=FALSE reichen müsste, um die Funktion neu anzukicken.

  7. #17
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    173
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Beckhoff erstellt ihre auf ADS basierten FBs jeweils so, dass ein Zyklus mit START:=FALSE reichen müsste, um die Funktion neu anzukicken.
    das is leider nich der fall:;(

  8. #18
    Registriert seit
    11.07.2011
    Beiträge
    65
    Danke
    0
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Was sagt denn der Beckhoff Support dazu?

  9. #19
    Registriert seit
    10.08.2012
    Beiträge
    171
    Danke
    0
    Erhielt 51 Danke für 49 Beiträge

    Standard

    Hast du ADS-Bausteine eventuell remanent definiert? Vielleicht nicht direkt sondern den übergeordneten Baustein/Struktur...
    Das darf man absolut nicht - und könnte dann solche Effekte haben wie du sie beschreibst. Allerdings müsste der Fehler hier trotzdem für 1 Zyklus auf 0 zurückgesetzt werden (scope).

  10. #20
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    173
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    @Pippen: Habe Bekhoff vor 3 Tagen wg. dem Problem informiert.. die wollten zurückrufen.. und jetzt komm ich nimmer durch ..

    @Guga: Du meinst ob die NT_GetTime() instanz in me persistenn Bereich deklariert ist?

Ähnliche Themen

  1. ADS READ -> target port not found -> ADS Server not started
    Von onikos im Forum CODESYS und IEC61131
    Antworten: 10
    Letzter Beitrag: 28.04.2014, 13:14
  2. Antworten: 4
    Letzter Beitrag: 12.12.2011, 16:44
  3. C7-633 Auslastung
    Von rheumakay im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 13.10.2011, 14:31
  4. ADS: SDO lesen über ads ocx von Visualisierung
    Von traveler im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 10.01.2011, 11:00
  5. Per ADS einen Nicht-ADS-fähigen Server ansprechen!
    Von Superfly im Forum CODESYS und IEC61131
    Antworten: 16
    Letzter Beitrag: 14.05.2008, 17:10

Lesezeichen

Berechtigungen

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