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

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 26 von 26

Thema: SPS Variablen über eigenes ActivX lesen/schreiben?

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ja ich versteh dich schon, aber hätte ich 1000 Bit Tags, welche in einem Rohdatenblock untergebracht wären, müsste ich ja auf all diese Tags triggern, und den dafür vorgesehenen Rohdatenblock übertragen....

  2. #22
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Zitat Zitat von BorisDieKlinge80 Beitrag anzeigen
    ja ich versteh dich schon, aber hätte ich 1000 Bit Tags, welche in einem Rohdatenblock untergebracht wären, müsste ich ja auf all diese Tags triggern, und den dafür vorgesehenen Rohdatenblock übertragen....
    Bits habe ich schon deshalb kaum in Benutzung. Man kann ja alles in WinCC erledigen, indem man ein DWord nutzt und die aktiven Bits selektiert (Farbumschläge, Buttons etc,)
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #23
    Registriert seit
    25.08.2003
    Beiträge
    332
    Danke
    46
    Erhielt 54 Danke für 46 Beiträge

    Lächeln

    Ralle,

    Ich habe ein paar Fragen zu Deiner Lösung:
    1) Kann man wirklich in WinCC auf eine externe Rohdatenvariable triggern?
    Wäre mir neu.

    2) Warum nutzt Ihr ein ActiveX und nicht z.B. ein Global-Script (vorzugsweise C, VBS ginge auch) als Schnittstelle interne Variablen <=> Rohdatenvariable(n)?

    Gruß
    Flinn

  4. #24
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    1. Die Rohdatenvarible wird unter der entsprechenden Verbindung in WinCC angelegt. Mann kann ein Script anlegen, daß mit einer Änderung diser Rohdatenvariable getriggert wird, das funktioniert problemlos.

    2. Ich habe teilweise auch ohne ActiveX mit Scripten gearbeitet. So habe ich sämtliche Störmeldungen in WinCC (ca. 1200) über Rohdatenvariable realisiert.
    Dann hatten wir aber auch gemischte Blöcke, die enthielten Byte, DWord, Int, Real, String. Es ist ziemlich anstrengend und fehlerträchtig die Daten korrekt aus den Rohdaten herauszuholen und die Bytes entsprechend richtig zu vertauschen. VBA und auch C unter WinCC unterliegt wohl auch einigen Beschränkungen (VBA kann hier nicht alles, was Microsoft ihm eigentlich spendiert hat, warum wissen nur die Siemens-Entwickler), konnte also ohnehin nicht alles, was wir benötigten (Drucken von Labeln über Netzwerk, Daten an andere Server verschicken und empfangen etc.) Dabei stellte mein Kollege dann fest, daß er sich in den ActiveX richtig austoben konnte (Delphi 2006) und alles so programmieren konnte, wie er es von Windows gewohnt ist, ohne Script- und WinCC-Einschränkungen. Das ActiveX dann in WinCC zu benutzen ist rel. einfach, integriert sind gleich Funktionen, um die Daten korrekt zu extrahieren.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    Flinn (16.05.2008)

  6. #25
    Registriert seit
    25.08.2003
    Beiträge
    332
    Danke
    46
    Erhielt 54 Danke für 46 Beiträge

    Lächeln

    Zitat Zitat von Ralle Beitrag anzeigen
    1. Die Rohdatenvarible wird unter der entsprechenden Verbindung in WinCC angelegt. Mann kann ein Script anlegen, daß mit einer Änderung diser Rohdatenvariable getriggert wird, das funktioniert problemlos.

    2. Ich habe teilweise auch ohne ActiveX mit Scripten gearbeitet. So habe ich sämtliche Störmeldungen in WinCC (ca. 1200) über Rohdatenvariable realisiert.
    Dann hatten wir aber auch gemischte Blöcke, die enthielten Byte, DWord, Int, Real, String. Es ist ziemlich anstrengend und fehlerträchtig die Daten korrekt aus den Rohdaten herauszuholen und die Bytes entsprechend richtig zu vertauschen. VBA und auch C unter WinCC unterliegt wohl auch einigen Beschränkungen (VBA kann hier nicht alles, was Microsoft ihm eigentlich spendiert hat, warum wissen nur die Siemens-Entwickler), konnte also ohnehin nicht alles, was wir benötigten (Drucken von Labeln über Netzwerk, Daten an andere Server verschicken und empfangen etc.) Dabei stellte mein Kollege dann fest, daß er sich in den ActiveX richtig austoben konnte (Delphi 2006) und alles so programmieren konnte, wie er es von Windows gewohnt ist, ohne Script- und WinCC-Einschränkungen. Das ActiveX dann in WinCC zu benutzen ist rel. einfach, integriert sind gleich Funktionen, um die Daten korrekt zu extrahieren.
    zu 1) Danke für die Info! Werde ich mal testen.

    zu 2) Und wir haben die ganzen Konvertierungen mit WinCC-Mitteln gemacht... Na,ja, fertig ist fertig.

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ja die sripterei ist ja ganz edel, aber oft nicht 100% durchschaubar, elegant und nicht debugbar... zudem könnte man ein activeX schön konfigurierbar machen. bspw. XML Dokument als rohdatentag / interntag schnittstellen beschreiben etc.

    Ich hab auch schon für einzelne Module rohdaten konverteirt gesplittet byteorder umtegereht etc. etc. und diese dann an eine datenbank geschickt.. wenn man den code dann länger nich mehr anschaut.. weis man oft nicht mehr genau was da vorsich geht


    WAS ABER SCHEISSE IST, wenn ich von 240WORD variablen welche über 1 Rohdatentag gemppt wird, triggen muss...ich muss ja dann eine triggerfunktion anlagen, und jede der 240 internen tags als trigger einbinden..
    Geändert von BorisDieKlinge80 (19.05.2008 um 09:50 Uhr)

Ähnliche Themen

  1. C#-Variablen in TwinCAT lesen und Schreiben
    Von kcirtap im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 29.11.2010, 10:18
  2. Antworten: 2
    Letzter Beitrag: 08.11.2010, 07:21
  3. In DB schreiben / lesen
    Von mariob im Forum HMI
    Antworten: 4
    Letzter Beitrag: 27.12.2008, 16:54
  4. Antworten: 10
    Letzter Beitrag: 19.06.2008, 17:10
  5. DB lesen/schreiben über Ethernet
    Von merlin im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 12.04.2007, 10:29

Lesezeichen

Berechtigungen

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