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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 27

Thema: Daten über TSend_C an OPC-Server senden

  1. #1
    Registriert seit
    13.07.2010
    Beiträge
    71
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hey zusammen,
    ich stehe vor einem kleinen Problem.
    Zunächst mal die Komponenten:
    Verbaut ist die CPU 1211C. Die Programmierung erfolgt über das TIA Portal V10.5.
    Die AUfgabe besteht darin die Daten eines Datenbausteins an einen OPC Server zu senden. Defaultmäßig ruft der OPC-Server die Daten ja über Polling ab. Da das bei größerer Teilnehmerzahl aber eine zu hohe Netzlast verursacht, wollte ich das Pollen durch ein erreignissgesteuertes Senden ersetzen.
    Meine Frage wäre eig nur: woran erkenne ich das die neue Variante mit dem gesteuerten Senden geklappt hat? Die variablen im db werden durch einen scanner aktualisiert und simultan auch im opc server.
    Kann man irgendwo nachschauen oder einstellen nach welchem verfahren der server die daten annimmt

    Danke schonmal für die Hilfe

    LG
    Cartman
    Zitieren Zitieren Daten über TSend_C an OPC-Server senden  

  2. #2
    Registriert seit
    01.08.2005
    Beiträge
    149
    Danke
    0
    Erhielt 20 Danke für 19 Beiträge

    Frage

    Hallo!

    Also entweder ist da die Entwicklung an mir vorbei gegangen oder ich blicke es einfach nicht!

    Du willst Daten an einen OPC-Server schicken?
    Mal ganz blöd wie sieht denn das in der Praxis aus? Dann müsste man ja eine art virtuellen DB im PC erstellen aus dem sich dann der OPC-Server bedient.

    Also solch eine Funktion habe ich noch bei keinem OPC-Server gesehen.

    Ich kenne Varianten bei denen der OPC-Server nur 1Bit pollt und daran erkennt das sich was getan hat - dann holt er den Rest - aber das ist bestimmt kein Standard.

    Falls ich da was nicht blicke: War eine kurze Nacht!
    Zitieren Zitieren Steh auf der Leitung  

  3. #3
    Registriert seit
    13.07.2010
    Beiträge
    71
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    die nacht war kurz, der tag wird dafür umso länger

    vlt reden wir wirklich aneinander vorbei. also die sps bekommt die daten über einen barcodescanner und speichert diese in einem db ab.
    ***Ich kenne Varianten bei denen der OPC-Server nur 1Bit pollt und daran erkennt das sich was getan hat - dann holt er den Rest***
    diese variante läuft ja auch bereits erfolgreich, sprich der opc server holt sich regelmäßig immer die daten aus dem datenbaustein.
    für das weitere projek will ichs aber so machen, dass die sps, sobald sie neue daten hat, diese an den opc-server sendet. dafür gibts ja den baustein tsend_c. die frage die sich mir jetz stellt ist, wie man dieses pollen des opc's beenden kann, da er die daten ja zugeschickt bekommt.
    bzw was man noch machen muss, damit er diese daten empfangen kann?

  4. #4
    Registriert seit
    01.08.2005
    Beiträge
    149
    Danke
    0
    Erhielt 20 Danke für 19 Beiträge

    Standard

    Meiner Meinung nach geht das nicht!

    Du musst ja im OPC-Server deine Tag`s anlegen - und diese liegen ja in der SPS.

    Du bräuchtest ja eine Funktion im OPC-Server in der du einen Empfangspuffer erstellst und dann sagst welcher Tag wo im Puffer zu finden ist.

    Ich bin der Meinung das es das so nicht gibt (von spezial Lösungen mal abgesehen).

    Der OPC-Server müsste ja quasi die Funktion TRECV_C beinhalten. Selbst wenn er das hätte würde dies ja nichts über die Struktur der Daten aussagen.

    Was ich mir vorstellen könnte:
    Auf dem PC läuft zusätzlich eine SoftSPS auf der TRECV_C läuft und die Daten der einzelnen SPSen sammelt. Der OPC-Server greift dann auf die SoftSPS zu.

    Also wie gesagt, ich kenne keinen OPC-Server der Daten empfangen kann. Der OPC-Server ist immer der "aktive Datenabholer" und stellt diese Daten den OPC-Clients zur Verfügung.

    Was setzt zu denn als OPC-Client ein? Der OPC-Server holt ja nur die Daten die man ihm sagt. Evlt. kannst du ja deinen Client so einrichten das er nur auf das Bit "neue Daten da!" achtet (also der OPC-Server nur dieses Bit pollt) und bei einem Ereignis dann die benötigten Daten einmalig holt.

    dafür gibts ja den baustein tsend_c
    Na ja nicht wirklich - dieser Baustein dient ja primär dazu, Daten zwischen SPSen auszutauschen. Klar kann man auch Daten an einen PC schicken. Aber eben nicht an eine OPC-Server.
    Geändert von BPlagens (30.07.2010 um 09:55 Uhr)

  5. #5
    Registriert seit
    13.07.2010
    Beiträge
    71
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    hmm...
    genau die funktion mit der sich der empfangspuffer erstellen ließe is ja die gesuchte nadel im heuhaufen
    Ich hab jetz im OPC Scout, bzw im OPC Navigator unter S7_connection -> blocks die funktion "brcv" gefunden. dort lassen sich neue items ähnlich anlegen wie bei einem neuen Item unter "objects". Das auslesen einer variable hat auch schon geklappt, obwohl ich nur die adresse der variable angegeben hatte die in dem DB existiert, aber nich gesagt hatte das die variable überhaupt in dem db steht. trotzdem hat sich der angezeigte wert nach einem test-scannen vom scanner aktualisiert.
    war das jetz vlt die gesuchte funktion?

    blicke da mom irgendwie nich durch, da man ja auch keinen direkten unterschied erkennt^^

    An die softsps hatte ich auch schon gedacht, die wäre dann die notlösung wenn das hier nich klappt.

    Einen Client setz ich derzeit nicht ein. die Daten sollen wie gesagt von der sps auf den server gelangen. von dort werden sie mit einem opc router weitergesendet an eine sql datenbank. zzt arbeit ich mit dem opc-scout, der ja die eigenschaften eines clients hat.

  6. #6
    Registriert seit
    01.08.2005
    Beiträge
    149
    Danke
    0
    Erhielt 20 Danke für 19 Beiträge

    Standard

    Sorry, da hört es dann bei mir auf!

    Aber welchen OPC Router nimmst du denn?
    Der von Inray kann doch auf Ereignisse reagieren (wie "mein" Bit) und dann bestimmte Tags in die SQL-DB einfügen.

    Man kann doch auch ein VBA-Script antriggern (ging zumindest bei der Testversion von Inat damals).

    Dann hättest du doch was du willst.

    Viel Erfolg!

  7. #7
    Registriert seit
    13.07.2010
    Beiträge
    71
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    schade, aber willkommen im klub
    der router is von inray, hab mich aber noch nich so intensiv mit dem befasst.
    wenn der router auf ereignisse reagieren kann ist das ja gut, aber bekommt der die daten nicht von dem server, und der hat dieses erreignissproblem? *der zusammenhang server-router is wie gesagt noch neuland

    Dank dir trotzdem für deine Hilfe

  8. #8
    Registriert seit
    01.08.2005
    Beiträge
    149
    Danke
    0
    Erhielt 20 Danke für 19 Beiträge

    Standard

    Also eigentlich ist es ja so:

    - Inray meldet den zu beobachtenden Tag (das Bit) beim OPC Server an
    (Ich würde das so machen, das der OPC-Server bei Änderung ein Ereignis auslöst)
    - Der OPC-Server pollt nun ständig das Bit
    - Wenn sich jetzt das Bit ändert bekommt dies Inray mit und führt die gewünschte Aktion aus (sprich die anderen Tags-holen und in der SQL-DB eintragen)

    Wie gut sind denn deine Programmierfähigkeiten? Da du ja den Siemens OPC-Server nimmst gibt es ja im Programm-Ordner einige sehr gute Beispiele.
    Ich habe nie eingesehen soviel Geld für Inray auszugeben das ganze lässt sich mit 20 Zeilen Code erledigen.

  9. #9
    Registriert seit
    13.07.2010
    Beiträge
    71
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Deine idee is gut, aber du versuchst ja den zugriff von router auf server erreigniss gesteuert zu regeln. mir gehts ja vorerst "nur" darum das abbild im Server mit den Daten ausm dem DB der SPS zu aktualisieren und das eben ohne pollen.

    meine fähigkeiten sind noch nicht so berauschend, von daher is der konventionelle weg wohl der leichtere

    am besten wäre, sps und die sql datenbank bekommen icq, dann solln die sich schreiben wenn was is

  10. #10
    Registriert seit
    13.07.2010
    Beiträge
    71
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hab mitlerweile rausgefunden das man zuerst ma eine TCP Verbindung einrichten muss, klingt ja auch logisch. anschließend lässt sich im opc scout unter der tcp verbindung ein receive baustein aufrufen, der das datenpaket dann von der sps empfängt.

    *ein kleiner schritt für einen menschen, doch ein großer schritt für mich

Ähnliche Themen

  1. daten über PN senden und empfangen
    Von Servernexus im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 04.08.2011, 16:43
  2. ZPL-Daten via RS232 über SPS senden
    Von tigger im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.02.2010, 16:51
  3. Daten über DB senden
    Von bigannang im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 08.11.2007, 22:50
  4. CP340 - Daten über RS232 senden und Empfangen
    Von smartie im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 24.08.2007, 10:15
  5. Über DP/RS232 Link(Siemens) Daten senden
    Von -Andreas- im Forum Feldbusse
    Antworten: 2
    Letzter Beitrag: 23.07.2007, 10:50

Lesezeichen

Berechtigungen

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