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

Seite 2 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 11 bis 20 von 39

Thema: mit OPC Daten auf MSSQL Datenbank schreiben

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

    Beitrag


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    Zitat Zitat von Jochen Kühner
    Der kann zwar keine Daten vom OPC lesen, aber direkt Daten aus einer SPS in eine Datenbank schreiben.
    Und vice versa auch ?
    Kann der Trigger von der DB empfangen ?
    Stored Procedures mit Parameterübergabe an die DB anstoßen ?
    SQL Abfragen mit Parametern gegen die DB absetzen ?
    Was ist mit komplexen, verschachtelten Abfragen über mehrere Tabellen ?
    Kann man damit von der S7 Tabellen und Felder in der DB erstellen ?
    Was ist mit dem H1 Protokoll ?
    Was ist mit H1 über TCP ?
    RK 512 Protokoll ?

    Also für meinen Geschmack werden da zu viele Fragezeichen offenbleiben.
    Aber ich habe mir das jetzt nicht alles angesehen, aber eine Verständnisfrage stellt sich mir doch : Wie ich aus dem Namen "LibNoDave Protokoller" ableite, ist wohl die LibNoDave von Zottel die Grundlage für die Kommunikation zur SPS. Und auf welchem Gerät ist der LibNoDave Protokoller und Zottels Library installiert ? Vielleicht solltest Du den Protokoller mal etwas näher hier im Forum beschreiben. Die Webseite, auf Die Du im obigen Beitrag verlinkt hast ist nicht sehr informativ, da hab ich meistens schon keine Lust mehr, noch weiter zu blättern. Nimm dies aber bitte nicht als Kritik, sondern nur als Hinweis auf.

    Gruß

    Question_mark
    Zitieren Zitieren Da bleiben noch einige Fragen offen  

  2. Folgender Benutzer sagt Danke zu Question_mark für den nützlichen Beitrag:

    Jochen Kühner (11.05.2010)

  3. #12
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von Question_mark Beitrag anzeigen
    Hallo,



    Und vice versa auch ?
    Kann der Trigger von der DB empfangen ?
    Stored Procedures mit Parameterübergabe an die DB anstoßen ?
    SQL Abfragen mit Parametern gegen die DB absetzen ?
    Was ist mit komplexen, verschachtelten Abfragen über mehrere Tabellen ?
    Kann man damit von der S7 Tabellen und Felder in der DB erstellen ?
    Was ist mit dem H1 Protokoll ?
    Was ist mit H1 über TCP ?
    RK 512 Protokoll ?

    Also für meinen Geschmack werden da zu viele Fragezeichen offenbleiben.
    Aber ich habe mir das jetzt nicht alles angesehen, aber eine Verständnisfrage stellt sich mir doch : Wie ich aus dem Namen "LibNoDave Protokoller" ableite, ist wohl die LibNoDave von Zottel die Grundlage für die Kommunikation zur SPS. Und auf welchem Gerät ist der LibNoDave Protokoller und Zottels Library installiert ? Vielleicht solltest Du den Protokoller mal etwas näher hier im Forum beschreiben. Die Webseite, auf Die Du im obigen Beitrag verlinkt hast ist nicht sehr informativ, da hab ich meistens schon keine Lust mehr, noch weiter zu blättern. Nimm dies aber bitte nicht als Kritik, sondern nur als Hinweis auf.

    Gruß

    Question_mark

    Hab mal was geschrieben:

    http://www.sps-forum.de/showthread.php?t=35901
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  4. #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 Jochen Kühner
    Und auf welchem Gerät ist der LibNoDave Protokoller und Zottels Library installiert
    Diese Frage ist noch offen ...
    Ist das etwa ein PC ?

    Gruß

    Question_mark
    Zitieren Zitieren Eine Frage noch  

  5. #14
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Blinzeln

    Zitat Zitat von Question_mark Beitrag anzeigen
    Hallo,



    Diese Frage ist noch offen ...
    Ist das etwa ein PC ?

    Gruß

    Question_mark
    Zufrieden?
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  6. #15
    Registriert seit
    26.01.2010
    Beiträge
    51
    Danke
    1
    Erhielt 13 Danke für 12 Beiträge

    Standard

    Zitat Zitat von Question_mark Beitrag anzeigen
    Das ist im Prinzip zwar möglich, und wenn ich mich recht erinnere hat schon mal jemand das hier im Forum vorgestellt. Aber ob das wirklich praktikabel ist ? Nicht jeder SPS-Programmierer kann auch SQL-Abfragen gegen eine Datenbank programmieren. Und wenn doch, spätestens bei einem verschachtelten "Inner Join" wird er im Wikipedia nachschlagen, wie man dicke Seile knüpft und Deckenhaken stabil eindübelt. Und der Funktionsumfang wird mit Sicherheit auch beschränkt sein. Ob das Ding Trigger empfangen kann, Stored Procdures mit Parameterübergabe handeln kann usw.
    Question_mark
    Schon klar, dass nicht jeder der SPS programmiert auch Datenbankspezialist ist. Bevor man aber selber eine Applikation in Delphi oder VB entwickelt, (Dafür muss man ja auch Hochsprachen programmieren können) ist es sicher einfacher ein fertiges und getestes Programm einzusetzen. Ausserdem können wirklich Stored Procedures mit Variablenübergabe ausgeführt werden. Die Stored Procedure kann vom Datenbankadministrator erstellt werden. Der Vorteil ist einfach, dass die SPS direkten Zugriff auf die Datenbank hat und kein zusätzlicher Datenhandler benötigt wird. Dies wirkt sich positiv auf die Flexibilität und je nach Datenmenge auf die Performance aus. Bei einer Programmänderung muss nur die Datenbank und das SPS Programm angepasst werden und nicht noch zusätzlich ein Datenhandler.

    Zitat Zitat von Question_mark Beitrag anzeigen
    Außerdem gibt es so viele verschiedene Dialekte von SQL, nahezu jeder Hersteller von Datenbanken kocht da sein eigenes Süppchen. Was auf Oracle funktioniert, muss nicht unbedingt auf einem MS SQL Server oder auf einer AS400 funktionieren.
    Question_mark
    Der Standardsyntax ist überall gleich und nach ISO ANSI standardisiert. Weiterführende Befehle können verschieden sein. (Etwa mit der IEC 61131 zu vergleichen) Diese Unterschiede sind jedoch marginal und können einfach angepasst werden. Zum Beispiel Stored Procedures werden in den einen Sprachen mit Call, in den anderen mit Execute aufgerufen.

    Zitat Zitat von Question_mark Beitrag anzeigen
    Und wer bestimmt, wenn die Datenbank zB. neue Auftragsdaten in eine SPS schreiben will ?
    Question_mark
    Das Konzept wird eigentlich auf den Kopf gestellt. Die SPS holt sich die Daten und nicht die Datenbank schreibt die Daten in die SPS. Schlussendlich meldet zum Beispiel eine Leit-SPS ein Typwechsel an die anderen SPS / Roboter. Dies kann über ein DIO oder Profibus geschehen. Natürlich können auch alle DIO über die Datenbank ausgetauscht werden, was aber nicht unbedingt zu empfehlen ist.

    Zitat Zitat von Question_mark Beitrag anzeigen
    Also die direkte Verbindung SPS <--> Datenbank ist (jedenfalls zur Zeit) noch recht unflexibel und eingeschränkt.
    Question_mark
    Wenn ich es mit den herkömmlichen Lösungen vergleiche ist es die Flexibelste.

  7. #16
    Registriert seit
    27.10.2009
    Beiträge
    317
    Danke
    0
    Erhielt 64 Danke für 54 Beiträge

    Standard

    Obwohl es spanned ist wie diese Diskussion langsam in andere Lösungsvorschläge "abdriftet", nochmal die Kurzform:

    Ursprüngliche Aufgabe: S7-300 mit Inat OPC Server schon vorhanden, 50 Datenpunkte bei Änderung in Datenbank schreiben.

    Zwischenschritt: Excel (als OPC Client) gibt es schon und funktioniert auch, Werte werden bei Änderung in Tabelle abgefüllt.

    Lösung: OPC-Client mit Delfi (wurde dafür extra gekauft) selber schreiben, Werte werden bei Änderung vom OPC Server an diesen Client gemeldet. Der Client nimmt die Werte aus dem DataChangeCallback und ruft die entsprechende ODBC oder ADO Funktion der Datenbank auf. Hinweis: hier muss "entkoppelt" werden da sich die Daten schneller ändern können als sie in die Datenbank geschrieben werden können, also sollte nicht direkt aus dem Callback die Datenbank gerufen werden!

    Vorteil: funktioniert mit allen SPSen (für die es einen OPC Server gibt) und mit allen Datenbanken (für die es eine ODBC Schnittstelle gibt). Kann konfigurierbar implementiert werden (z.B. Liste mit OPC Variablen und Liste mit Ziel-Feldnamen oder natürlich mit GUI) und ist somit nicht nur flexibel sondern auch wiederverwendbar und ohne weitere Programmierung anpassbar. Würde auch mit zwei oder mehr OPC Servern als Datenquelle funktionieren (ohne dort SQL-Statements in den SPSen implementieren zu müssen)

    Alternativ: Derartige Software gibt es natürlich auch schon als fertige Produkte z.B. DataLogger (Softwaretoolbox) und viele andere, aber es sollte ja eigener Hirnschmalz anstelle von Euros investiert werden.

  8. #17
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von Dr. OPC Beitrag anzeigen
    Obwohl es spanned ist wie diese Diskussion langsam in andere Lösungsvorschläge "abdriftet", nochmal die Kurzform:

    Ursprüngliche Aufgabe: S7-300 mit Inat OPC Server schon vorhanden, 50 Datenpunkte bei Änderung in Datenbank schreiben.

    Zwischenschritt: Excel (als OPC Client) gibt es schon und funktioniert auch, Werte werden bei Änderung in Tabelle abgefüllt.

    Lösung: OPC-Client mit Delfi (wurde dafür extra gekauft) selber schreiben, Werte werden bei Änderung vom OPC Server an diesen Client gemeldet. Der Client nimmt die Werte aus dem DataChangeCallback und ruft die entsprechende ODBC oder ADO Funktion der Datenbank auf. Hinweis: hier muss "entkoppelt" werden da sich die Daten schneller ändern können als sie in die Datenbank geschrieben werden können, also sollte nicht direkt aus dem Callback die Datenbank gerufen werden!

    Vorteil: funktioniert mit allen SPSen (für die es einen OPC Server gibt) und mit allen Datenbanken (für die es eine ODBC Schnittstelle gibt). Kann konfigurierbar implementiert werden (z.B. Liste mit OPC Variablen und Liste mit Ziel-Feldnamen oder natürlich mit GUI) und ist somit nicht nur flexibel sondern auch wiederverwendbar und ohne weitere Programmierung anpassbar. Würde auch mit zwei oder mehr OPC Servern als Datenquelle funktionieren (ohne dort SQL-Statements in den SPSen implementieren zu müssen)

    Alternativ: Derartige Software gibt es natürlich auch schon als fertige Produkte z.B. DataLogger (Softwaretoolbox) und viele andere, aber es sollte ja eigener Hirnschmalz anstelle von Euros investiert werden.


    Uhhh, danke für den Tip, habe bei meinem Protokoller bei einer Testprotokollierung an eine Anlage Probleme mit dem Durchsatz bekommen, aber nie die Datenbank als möglichen Flaschenhals in betracht gezogen. Wer wohl das schreiben in die Datenbank auch azyklisch implementieren, mal sehen ob's dann geht... (sind um die 40-60 Telegramme pro Sekunde mit je 100 Byte)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

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

    Beitrag

    Hallo,

    Zitat Zitat von Dr. OPC
    (ohne dort SQL-Statements in den SPSen implementieren zu müssen)
    Eigentlich versuche ich immer noch herauszufinden, ob die Lösungen von Jochen Kühner bzw. von rudl wirklich auf SQL-Statements in der SPS beruhen und direkt von der SPS auf die Datenbank connecten oder doch einen PC als Gateway verwenden.

    Ich zitiere mich ausnahmsweise mal selber :

    Zitat Zitat von Question_mark
    Diese Frage ist noch offen ...
    Ist das etwa ein PC ?
    Und erhalte eine sehr merkwürdige Antwort :

    Zitat Zitat von Jochen Kühner
    Zufrieden?
    Da bei Jochen Kühner aber in diesem Zusammenhang immer LibNoDave genannt wird, nehme ich mal an, es gibt keine "direkte" Verbindung zwischen SPS und Datenbank, sondern es hängt immer noch ein PC dazwischen !

    Zitat Zitat von rudl
    Das Konzept wird eigentlich auf den Kopf gestellt. Die SPS holt sich die Daten und nicht die Datenbank schreibt die Daten in die SPS.
    Das nenne ich dann mal wirklich flexibel, hust ...

    Zitat Zitat von rudl
    Diese Unterschiede sind jedoch marginal und können einfach angepasst werden.


    Da haben wir also ein Trio (Jochen Kühner, rudl und SQL4automation), in dem jeder von einer "direkten" Verbindung zwischen SPS und Datenbank spricht.

    Ich frage doch einfach nur nach, wie direkt denn die Verbindung zwischen SPS und Datenbank ist, oder ob da doch vielleicht doch noch so ein kleiner PC dazwischenhängt ...

    Gruß

    Question_mark
    Zitieren Zitieren Immer noch keine vernünftige Antwort bekommen  

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

    Blinzeln

    Hallo,

    Zitat Zitat von Jochen Kühner
    aber nie die Datenbank als möglichen Flaschenhals in betracht gezogen.
    Die Datenbank ist nicht der Flaschenhals, die lacht sich schlapp über die paar Bytes. Der Flaschenhals ist ganz einfach der Umweg über die ODBC Treiber von Windows, da werden die Daten durch die Treiber von Windows geschleust. Und manchmal ist Windows auch mit anderen Sachen beschäftigt.

    Gruß

    Question_mark
    Zitieren Zitieren Flaschenhals ist nicht die DB  

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

    Lächeln


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    Zitat Zitat von rudl
    Schon klar, dass nicht jeder der SPS programmiert auch Datenbankspezialist ist. ....... Bei einer Programmänderung muss nur die Datenbank und das SPS Programm angepasst werden
    Also je ein Programmierer für SPS und Datenbank erforderlich. Wir beide haben eben unterschiedliche Auffassungen von Flexiblität. Und ich fürchte mal, die werden auch in der Zukunft nicht wirklich ausgeräumt werden

    Gruß

    Question_mark
    Zitieren Zitieren Ach, was sind wir heute wieder kontrovers  

Ähnliche Themen

  1. Per Ethernet an PC in SQL Datenbank schreiben
    Von Carsten77 im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 25.08.2011, 08:37
  2. SPS Daten in Datenbank schreiben
    Von alexa3 im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 14.11.2010, 00:16
  3. von WinCC in SQL-Datenbank schreiben
    Von mertens2 im Forum HMI
    Antworten: 13
    Letzter Beitrag: 06.10.2008, 09:15
  4. Daten in SQL-Datenbank auf Server schreiben
    Von ronnie.b im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 20.01.2007, 15:15
  5. Antworten: 1
    Letzter Beitrag: 07.02.2006, 18:56

Stichworte

Lesezeichen

Berechtigungen

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