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

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

Thema: s7onlinx.dll tracer

  1. #1
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    im Anhang findet ihr ein kleines c/c++ artiges Projekt von mir
    mit dem man leicht die Kommunikation der s7onlinx.dll
    von/zu Applikationen mitloggen kann

    tracerdll.dll -> detours hooker
    tracerlib.lib -> kann die traces schreiben/lesen
    tracerview.exe -> kleines Anzeigeprogramm

    viel spass den interessierten

    LowLevelMahn
    Angehängte Dateien Angehängte Dateien
    Zitieren Zitieren s7onlinx.dll tracer  

  2. #2
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    welche Applikationen nutzen noch die s7onlinx.dll?

    also auf jeden Fall mal der NCDDE server des 840D HMI Advance
    und Prodave6 (denke ich)

    Sinn der Frage:

    ich würde gern die aktuelle und niederste gemeinsame kommunikationsschnitttstelle finden - bisher denke ich das die s7onlinx.dll am niedersten ist - danach kommt bei mir nur noch der Treiber für die CP5611 karte und der hat auch keine weiteren Abhängigkeiten

    was kann der normalsterbliche machen:
    einfach mit dem http://www.dependencywalker.com/
    schauen welche Dlls noch so verwendet werden

    danke

    btw: nutzt jemand den tracer schon? - oder bin ich hier im falschen Forum
    Geändert von LowLevelMahn (25.01.2008 um 08:41 Uhr)
    Zitieren Zitieren was noch interessant wäre...  

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

    Standard

    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    welche Applikationen nutzen noch die s7onlinx.dll?

    also auf jeden Fall mal der NCDDE server des 840D HMI Advance
    und Prodave6 (denke ich)

    Sinn der Frage:

    ich würde gern die aktuelle und niederste gemeinsame kommunikationsschnitttstelle finden - bisher denke ich das die s7onlinx.dll am niedersten ist - danach kommt bei mir nur noch der Treiber für die CP5611 karte und der hat auch keine weiteren Abhängigkeiten

    was kann der normalsterbliche machen:
    einfach mit dem http://www.dependencywalker.com/
    schauen welche Dlls noch so verwendet werden

    danke

    btw: nutzt jemand den tracer schon? - oder bin ich hier im falschen Forum
    Das Forum ist mit Sicherheit das richtige (es gibt kein Besseres in diesem Umfeld). Aber das Thema ist sehr speziell. Und ich hoffe dass ich jetzt nicht einigen auf die Füße trete, aber ich glaube, dass nur wenige wissen wofür das Ganze gut sein soll.
    Ich werde mit den Tracer auf jeden Fall bei Gelegenheit ansehen. Komme derzeit aber aus Mangel an Langeweile nicht dazu. Wenn neue Versionen verfügbar sein sollten, bitte auf jeden Fall einstellen.
    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
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    ihr DeltaLogic-Junges seit ja schon ziemlich gut mit "funktionierenden" Produkten versorgt

    benötigt ihr für die Kommunikation zum CP5611 auch die s7onlinx oder geht ihr da eigene Wege? Möglicherweise habt Ihr ja sogar einen Linux-Treiber für die CP5611?

    mein Langzeitziel ist ein Ersatz für die s7onlinx.dll zu schreiben
    und dann die CP5611 Treiber zu ersetzen - mir fehlt nur total die Produktübersicht - ich weiss nicht was die s7onlinx.dll alles kann und ob der CP5611-Treiber (S7opciax.sys) auch andere Karten anbindet

    ciao
    Geändert von LowLevelMahn (25.01.2008 um 09:22 Uhr)
    Zitieren Zitieren naja für dich wird er ja nicht so interessant sein...  

  5. #5
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Für die CP5611 verwenden wir die S7onlinx-Schnittstelle. Die Idee, einen eigenen Direktzugriff zu schreiben, haben wir nach Prüfung verworfen. Zuviele Hindernisse stehen das im Weg. Und die Gefahr, dass sich in der Hardware was ändert, Siemens zwar einen Treiber liefert, aber der eigene nicht mehr funktioniert. Ein weiteres großes Problem an der Geschichte ist, dass die CP5611 einen ASPC2 hat. Dieser muss direkt programmiert werden. Doku gibt es nur gegen sehr sehr viel Geld, Fazit es lohnt sich nicht. Wenn es schon eine Originalkarte sein muss, dann doch lieber die 5613 verwenden. Dort gibt es von Siemens ein SDK und Linux-Treiber etc. Eine weitere Alternative sind die Profibus-Karten anderer Hersteller. Als Beispiel ist hier Softing oder Hilscher angeführt. Dort sind Treiber für Linux ebenfalls verfügbar. Man kann sich somit voll und ganz um das überlagerte Protokoll kümmern und muss sich nicht mit der Hardware rumärgern.
    Wofür soll die alternative S7onlinx.dll gut sein? Was ist der Zweck (außer Lernen)?
    Rainer Hönle
    DELTA LOGIC GmbH

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

  6. #6
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    Für die CP5611 verwenden wir die S7onlinx-Schnittstelle.
    die kann aber auch die anderen system ansprechen, oder?
    ich hoffe mal das siemens die details in den treiber gesteckt hat und nicht in diese dll

    Die Idee, einen eigenen Direktzugriff zu schreiben, haben wir nach Prüfung verworfen. Zuviele Hindernisse stehen das im Weg. Und die Gefahr, dass sich in der Hardware was ändert, Siemens zwar einen Treiber liefert, aber der eigene nicht mehr funktioniert.
    ändert sich die treiber oft - siemens ist dort doch schonn bischen träger

    Ein weiteres großes Problem an der Geschichte ist, dass die CP5611 einen ASPC2 hat. Dieser muss direkt programmiert werden. Doku gibt es nur gegen sehr sehr viel Geld, Fazit es lohnt sich nicht.
    heisst das microcode - oder ist die karte einfach kein dummer durchreicher
    ->der treiber scheint keinen sooo komplexen aufbau zu haben - sagt der freeware ida

    Wenn es schon eine Originalkarte sein muss, dann doch lieber die 5613 verwenden. Dort gibt es von Siemens ein SDK und Linux-Treiber etc.
    link?

    Wofür soll die alternative S7onlinx.dll gut sein? Was ist der Zweck (außer Lernen)?
    gedankenspiel - eigener CP5611 treiber + s7onlinx.dll + WINE = Step 7 unter Linux - also eher Lernen ... btw: der 2.6.24 ist da, wer freut sich noch?

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

    Standard

    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    die kann aber auch die anderen system ansprechen, oder?
    ich hoffe mal das siemens die details in den treiber gesteckt hat und nicht in diese dll
    Die s7onlinx kann alle mir bekannten Treiber ansprechen. Sie reicht in diesem Sinne nur durch.

    ändert sich die treiber oft - siemens ist dort doch schonn bischen träger
    Keine Ahnung, der Hardwaretreiber hat mich bis jetzt noch nicht richtig interessiert. Aber auch bei Siemens besteht die Möglichkeit der Änderung

    heisst das microcode - oder ist die karte einfach kein dummer durchreicher
    ->der treiber scheint keinen sooo komplexen aufbau zu haben - sagt der freeware ida
    Der ASPC2 ist ein sehr intelligentes Kerlchen der sehr viel selbständig abhandelt. Vorausgesetzt er wird richtig parametriert. Die 5611 zählt zu den dummen Karten, d.h. die Programmierung erfolgt auf dem PC. Die 5613/5614 sind intelligente Karte mit eigenem Prozessor. Diese erhalten nur bestimmte Kommandos und handeln diese komplett ab. Sie schirmen die Komplexität des ASPC2 vom PC ab.

    link?
    War soweit ich weiß bei der Karte dabei.

    gedankenspiel - eigener CP5611 treiber + s7onlinx.dll + WINE = Step 7 unter Linux - also eher Lernen ... btw: der 2.6.24 ist da, wer freut sich noch?
    Was ist WINE? Warum so kompliziert? Warum nicht eine alternative PB-Karte? Warum überhaupt eine PB-Karte? Warum nicht z.B. einen NetLink PRO verwenden? Der funktioniert auch problemlos unter Linux.
    Rainer Hönle
    DELTA LOGIC GmbH

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

  8. #8
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Vorweg ein Wort: Die MPI-Schnittstelle ist im wesentlichen auch Profibus, nur läuft dort nicht gleichzeitig DP-Kommunikation.

    Um dir eine Vorstllung zu geben, was ein ASPC2 tut:
    - Er wird mit Baudrate, der eigenen PB-Adresse, der Rolle (Master) und dem PB-Timing parametriert.
    - Danach fügt er sich selbstständig in den PB-Token Ring ein und erledigt die Grundpflichten eines Masters (Teilnehmerliste, GAP-Verwaltung, Versenden von Quittungen) eigenständig.
    - Er holt sich komplette Diagramme aus einem Speicherbereich, den er sich mit dem Host-Prozessor teilt und legt emfangene Telegramme dort ab. Dieser Speicher ist strukturiert in verkettete Listen pro SAP (Service access point).
    - Er wickelt Telegrammwiederholungen eigenständig ab, wenn die Quittung ausbleibt.
    - Nach Emfang, erfolgreichem oder endgültig erfolglosem Versand kann er den Host-Prozessor per Interrupt benachrichtigen.

    Der Treiber für das Ding muß im wesentlichen:
    - Die Register initialisieren
    - Den Zugriff des Host-Prozessor auf den gemeinsamen Speicher durchführen
    - Die Interrupts beantworten, falls verwendet.

    Probleme:
    - Die Siemens-Doku zum ASPC2 ist frei erhältlich, aber m.E. ziemlich schlecht. Siemens rät darin, gleich eine Software von Siemens dazu zu kaufen. Preis war mal 90000 Dollar, wenn ich mich nicht irre.
    - Du kannst nicht einfach mit dem ASPC2 auf dem CP6511 spielen. Auf der Karte ibefindet sich ein PCI-Bus-ASIC von einem Dritthersteller. Es scheint mir nicht ohne weiteres ersichtlich, ob und wie man darüber die Register des ASPC2 erreicht.
    - Die meisten Register sind nur schreib-, nicht lesbar, daher kann man nicht einmal sehen, ob man erfolgreich geschrieben hat oder wie der Original-Treiber die Register initialisiert.
    gedankenspiel - eigener CP5611 treiber + s7onlinx.dll + WINE = Step 7 unter Linux ...
    Wenn Step7 unter WINE laufen könnte, könnte man vielleicht eher den Original-Treiber unter Kontrolle eines Linux-Kernel-Moduls laufen lassen. Da gab es mal was mit einem Modul, was den Original NTFS-Treiber von Windows in Linux einbindet. Ich komme gerade nicht auf den Namen...

  9. Folgende 2 Benutzer sagen Danke zu Zottel für den nützlichen Beitrag:

    LowLevelMahn (25.01.2008),Rainer Hönle (25.01.2008)

  10. #9
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    Die Siemens-Doku zum ASPC2 ist frei erhältlich, aber m.E. ziemlich schlecht. Siemens rät darin, gleich eine Software von Siemens dazu zu kaufen
    hast du einen Link - oder das Dokument?
    Nur als Orientierungshilfe

    Du kannst nicht einfach mit dem ASPC2 auf dem CP6511 spielen. Auf der Karte ibefindet sich ein PCI-Bus-ASIC von einem Dritthersteller. Es scheint mir nicht ohne weiteres ersichtlich, ob und wie man darüber die Register des ASPC2 erreicht.
    d.h. die schlechte Doku ist nur für einen teil weiter hinter der PCI anbindung - das ist blöd

    Die meisten Register sind nur schreib-, nicht lesbar, daher kann man nicht einmal sehen, ob man erfolgreich geschrieben hat oder wie der Original-Treiber die Register initialisiert.
    man könnte auch in den Originaltreiber schauen - aber trotz der geringen Größe würde ich sicherlich eine weile brauchen - und ganz legal ist das dann ja auch nicht - oder?

    an beide
    Danke für die Details und das Augenöffnen
    ich konzentriere mich erstmal nur auf die s7onlinx.dll und die komischen pakete der 840D NCK/PLC

    @zottel
    libnodave und deine doku helfen mir sehr beim verstehen - und ich hoffe ich kann dann auch was zu deiner lib beitragen
    hab hier noch andere pdu-typen und opcodes usw. für dich - und die sache mit der benachrichtigung bei veränderung

    @Rainer
    die Fixierung auf den CP5611 auch nur weil ich die Hoffung hatte (habe) keine Hardware-Veränderung vornehemen zu müssen (wir bekommen den ganzen klotz PCU+Cp56111 usw + Software ) komplett konfektioniert und konfiguriert von Siemens) und dennoch die Siemenssoftware zu ersetzen - aber das muss noch warten

    btw: hat einer von euch beiden ein analyseprogramm für s7onlinx.dll traces - also bringt es euch was für eure Produkte wenn ich ein paar der PCU/NCK spezifischen Kommunikationen mitlogge und euch zukommen lasse?
    Geändert von LowLevelMahn (25.01.2008 um 21:53 Uhr)
    Zitieren Zitieren danke für die infos  

  11. #10
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Im Anhang die Doko zum ASPC2.
    Angehängte Dateien Angehängte Dateien

Ähnliche Themen

  1. Wrapper für S7Onlinx.dll probleme
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 27.05.2010, 17:40
  2. Tracer für S7
    Von skorpion37 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 13.06.2007, 17:36

Lesezeichen

Berechtigungen

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