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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 22

Thema: libnodave und PDU-Größe

  1. #11
    Registriert seit
    27.11.2005
    Ort
    im Osten
    Beiträge
    1.183
    Danke
    141
    Erhielt 271 Danke für 248 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Question_mark Beitrag anzeigen
    Ich glaube aber, der Vergleich LibNoDave und OPC-Server hinkt doch sehr stark. Das sind m.E. zwei unterschiedliche Kommunikationswege und kann man nicht direkt vergleichen



    Zitat Zitat von Question_mark Beitrag anzeigen
    ......obwohl ich den Vergleich selbst angezettelt habe
    böser Q_M

  2. #12
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Wie kommen denn die 32 Byte Headerdaten zustande?

    Ich rechne für eine Read-Anfrage:
    - PDU-Header: 10 (bzw. 12 Byte, struct PDUHeader)
    - Parameter, einmalig für einen Request 2 Byte
    - pro Request 12 Byte (das Array pa[] in daveAddToReadRequest)

    Also ich komme da auf 24 Byte, das gibt mir auch das Testprogramm testISO_TCP mit --debug=1024 aus.

  3. #13
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Frage

    Hallo,

    Zitat Zitat von Thomas_v2.1
    Wie kommen denn die 32 Byte Headerdaten zustande?
    Die hat der Mabi mal hier reingeworfen. Vielleicht gibt er ja seine Quelle über die 32 Byte hier preis. Letztendlich als Anwender sollte Dir das mit MaxPDULength oder HeaderBytes völlig egal sein, benutze einen OPC-Server z.B. von Siemens, Softing oder Deltalogic. Oder alternativ den AGLink von Deltalogic, auch eine sehr gute und zuverlässige Lösung, besonders empfehlenswert wegen dem guten Support. Den habe ich zwar noch nicht sehr oft in Anspruch genommen, aber die Reaktionszeit und Kompetenz hat mich überzeugt.
    Ok, ich kenne alle Levels des OSI Modells eigentlich ganz gut, bis runter zum Level1, aber im täglichen Alltag und zur Steigerung der Produktivität/Effektivität im beruflichen Bereich sollte man schon irgendwo ab Level4 aufsetzen und die unteren Levels den Herstellern professioneller Programmierwerkzeuge überlassen. Spart Zeit/Geld und Stress, die kann man ja dafür verwenden, die Levels 1-4 mal zu erkunden und zu erforschen.
    Ich erwarte ganz einfach von einem Protokolltreiber, dass er mir die angeforderten Daten unabhängig von deren Grösse, Datenbereichen, CPU-Typ, MaxPDULength oder sonstwas liefert und will meine Energie nicht damit verschwenden, irgendwo uneffektiv im Low-Level Bereich rumzupopeln.
    Also, was soll das ? Entweder ich kaufe ein Tool im Größenbereich von ca. 500,- Euro und habe die fertigen, erprobten Routinen drin. Oder bastele ein halbes Jahr (oder auch ggf. länger) an einer kostenlosen () Lösung rum.
    Ich muss allerdings zugeben, dass ich im Alltag gerne aus Gründen der Effizienz diese fertigen Lösungen einsetze, aber manchmal mir gerne auch einen Level2 Treiber programmiere, aber nur um das ganze, was sich unter den professionellen Lösungen verbirgt, bis in das letzte Detail zu verstehen.
    Denn nur daraus kann Kompetenz für einen Fachbereich entstehen.

    Gruß

    Question_mark
    Geändert von Question_mark (17.07.2008 um 23:29 Uhr)
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Level ??  

  4. #14
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Dass ein Protokolltreiber das intern Abwickeln sollte sehe ich auch so. Aber dafür ist libnodave ja denk ich mal auch nicht da. Ich habs zwar nicht getestet, aber theroretisch kann ich es ja auch benutzen um von einem AVR 8-Bit µC mit einer SPS zu kommunizieren.

    Dann habe ich im letzten Jahr eine größere Anlage mit mehreren S7400 in Betrieb genommen. Das PLS wurde von einer anderen Firma projektiert, und ich habe dann quasi das PLS mit in Betrieb genommen.
    Bei diesem PLS ist es im Jahre 2008 immer noch so, dass ich die Variablen in Blöcken anlegen muss. Also wie in libnodave die Telegramme von Hand zusammenstellen. Ich konnte das auch nicht glauben, und habe mich ehrlich gesagt mit dem Hersteller etwas angelegt ob das heutzutage noch sein muss (ich musste einige Variablen verschieben, bzw. Datentypen geändert was dann im PLS ein Riesenaufwand war). Na wie dem auch sei.
    Aber um zu sehen wie viel Aufwand denn in sowas drinsteckt habe ich mir auf Basis von libnodave sowas mal selber programmiert. Bei dem kann ich alle Variablen S7-like anlegen, und mein Treiber baut die Telegramme zusammen. Ist zwar sicher nicht bullet-proof, aber das sind insgesamt in C++ keine 1000 Zeilen Code.

  5. #15
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Reden

    Hallo,

    Zitat Zitat von Thomas_v2.1
    Ist zwar sicher nicht bullet-proof, aber das sind insgesamt in C++ keine 1000 Zeilen Code.
    Aber immerhin noch 800 Zeilen zuviel ...
    Und wenn es nicht bullet-proof ist (schöner Ausdruck, gefällt mir r), dann ab in die Mülltonne. Wenn meine Software nicht bullet-proof ist, stellt mir leider der Kunde die Schaltschränke mit dem Gabelstapler vor das Werkstor mit der dezenten Aufforderung zur baldmöglichsten Abholung.

    Zitat Zitat von Thomas_v2.1
    Bei diesem PLS ist es im Jahre 2008 immer noch so, dass ich die Variablen in Blöcken anlegen muss.
    Was heisst "in Blöcken anlegen muss" ? Etwa, dass Datenbereiche konsekutiv hintereinander liegen müssen ? Ist nicht wirklich störend, beschleunigt nur die Datentransferrate. Eigentlich normal, wer sich nicht daran hält bekommt den schwarzen Peter...Ok, wenn man sich nicht daran hält, funktioniert es trotzdem, wenn auch etwas langsamer ... Aber wer merkt das schon.

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Bullet-Proof, das ist echt gut ..  

  6. #16
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Zitat Zitat von Question_mark Beitrag anzeigen
    Wenn meine Software nicht bullet-proof ist, stellt mir leider der Kunde die Schaltschränke mit dem Gabelstapler vor das Werkstor mit der dezenten Aufforderung zur baldmöglichsten Abholung.
    Das war quasi ein Freizeit-Projekt. Hat auch einige Monate gedauert.
    In meiner Anfangszeit war ich auch öfters der Meinung dass man einiges genausogut selber programmieren könnte. Für den professionellen Einsatz ist es aber wirklich in 95% der Fälle günstiger sich etwas fertiges zu kaufen (wenn es denn was gibt).

    Zitat Zitat von Question_mark Beitrag anzeigen
    Was heisst "in Blöcken anlegen muss" ? Etwa, dass Datenbereiche konsekutiv hintereinander liegen müssen ? Ist nicht wirklich störend, beschleunigt nur die Datentransferrate. Eigentlich normal, wer sich nicht daran hält bekommt den schwarzen Peter...Ok, wenn man sich nicht daran hält, funktioniert es trotzdem, wenn auch etwas langsamer ... Aber wer merkt das schon.
    Genau so. Es funktionierte quasi genau wie bei nodave. Ich gebe die Anfangsadresse des Blocks an, und dann jeweils den Offsets der einzelnen Variablen dazu. Ich finde zumindest dass so etwas heutzutage der Treiber erledigen muss, genau wie das Optimieren der Blöcke worum es hier ja ebenfalls geht.
    Es durften in den Blöcken auch nur immer die gleichen Datentypen liegen, Real Adressen immer auf einem Vielfachen von 4 etc worin ich auch keinen Grund sehe. Das bestehende System zu erweitern oder was zu ändern ist dabei ein Riesenaufwand der mMn nicht sein müsste.

  7. #17
    Registriert seit
    22.02.2007
    Ort
    Sponheim
    Beiträge
    190
    Danke
    3
    Erhielt 10 Danke für 9 Beiträge

    Standard

    Zitat Zitat von Question_mark Beitrag anzeigen
    Hallo,


    Ja, ich weiss. Hab es leider versäumt, darauf hinzuweisen. Mich ärgert eigentlich nur, dass manche Fragesteller sich mit der S7 Kommunikation beschäftigen wollen und nur leider nicht die Energie aufbringen, die wirklich ausführlichen Handbücher von Siemens zur Datenkommunikation durchzulesen. Oder wenigstens die Suchfunktion im Forum zu benutzen, denn das ist hier alles schon ausführlich und im Detail durchgekaut worden.

    Hast du vielleicht einen Link für die Kommunikationshandbücher?

    [OT] Bist du nicht auch in der Delphi-Praxis unterwegs? [/OT]
    Wie kann es sein, dass am Ende des Geldes noch Monat übrig ist?
    Wenn das die Lösung ist, dann hätte ich gerne mein Problem zurück!
    engbarth.es

  8. #18
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Blinzeln

    Hallo,

    Zitat Zitat von Thomas_v2.1
    Real Adressen immer auf einem Vielfachen von 4 etc worin ich auch keinen Grund sehe. Das bestehende System zu erweitern oder was zu ändern ist dabei ein Riesenaufwand der mMn nicht sein müsste.
    Da gebe ich Dir mal ein 100% ACK ...
    Da hast Du leider das falsche PLS-System erwischt, einfach Pech gehabt ...

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Griff in das Klo ...  

  9. #19
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Reden

    Hallo,

    Zitat Zitat von marcengbarth
    [OT] Bist du nicht auch in der Delphi-Praxis unterwegs? [/OT]
    Eigentlich nein, ich lese zwar gerne und regelmässig mit in der Delphipraxis, aber für ernsthafte Antworten habe ich eigentlich keine Zeit, leider ...
    Der Tag hat eben nur 24 Stunden, und einige dieser Stunden habe ich vorrangig für meine Freizeit reserviert, und das bleibt auch so.

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Dafür habe ich leider keine Zeit ...  

  10. #20
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Blinzeln


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    Zitat Zitat von Thomas_V2.1
    Ich gebe die Anfangsadresse des Blocks an, und dann jeweils den Offsets der einzelnen Variablen dazu. Ich finde zumindest dass so etwas heutzutage der Treiber erledigen muss, genau wie das Optimieren der Blöcke worum es hier ja ebenfalls geht.
    Es durften in den Blöcken auch nur immer die gleichen Datentypen liegen, Real Adressen immer auf einem Vielfachen von 4 etc worin ich auch keinen Grund sehe. Das bestehende System zu erweitern oder was zu ändern ist dabei ein Riesenaufwand der mMn nicht sein müsste.
    Also bei Deinem Eröffnungsfred habe ich zuerst wirklich nicht verstanden, worauf das hinauslaufen soll. Aber Du hast das ja jetzt nachgereicht, habe Dein Problem nun hoffentlich verstanden. Ich denke mal, der Hersteller deiner Visu hat mal irgendwann vor Urzeiten einen recht uneffektiven Kommunikationstreiber selbst entwickelt und du musst Dich nun mit den Mängeln abfinden. Eine Weiterentwicklung (oder gar Neuentwicklung) eines besc...enen Treibers kostet Geld und wird vom Hersteller daher nicht unterstützt. Die Forderungen an einen Treiber hast Du ja gem. obigen Zitat schon erläutert und da gebe ich Dir absolut Recht...
    Mein Tip dazu, schmeiss so eine Visu raus, reduziert den Stressfaktor für die Instandhaltung ungemein...

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Wech mit de Driss ...  

Ähnliche Themen

  1. Größe der MMC bestimmen
    Von MeisterLampe81 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 09.01.2010, 15:14
  2. DB-Länge und Größe in SCL
    Von Pikador im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 09.03.2008, 15:31
  3. Größe UDT in SCL
    Von Larry Laffer im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 17.12.2007, 20:25
  4. [Frage] - Mit LibNoDave DB Größe ermitteln?
    Von marcengbarth im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 31.08.2007, 13:52
  5. Größe von Datenwörten
    Von neueruser im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 07.03.2007, 06:41

Lesezeichen

Berechtigungen

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