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

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

Thema: Bilddatei in Visualisierung die im Dateisystem der SPS liegt

  1. #1
    Registriert seit
    27.01.2016
    Beiträge
    31
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Gibt es die Möglichkeit eine Bilddatei in eine Visualisierung einzubinden, die im Dateisystem der SPS liegt?
    In Codesys muss ja jedes Bild im Imagepool liegen und dort habe ich keinen Zugriff auf das Bild. Kann man da irgendeine Referenz eintragen, die auf das interne Dateisystem der SPS verweist. Ich habe schon gesucht aber bisher nichts gefunden.

    Danke!!
    Zitieren Zitieren Bilddatei in Visualisierung die im Dateisystem der SPS liegt  

  2. #2
    Registriert seit
    07.06.2007
    Beiträge
    143
    Danke
    2
    Erhielt 24 Danke für 24 Beiträge

    Standard

    hmm.. ich bin mir nicht sicher ob ich das richtig verstanden habe aber ich denke du willst deine visu mit auf die PLC laden und dann dort darauf zugreifen. Wenn du von der Codesys Visu sprichst dann stimmt das, die Datei muss im Dateisystem liegen auf dem die Visu läuft. Die Visu in Codesys kannst du ja auch nicht runterladen zur PLC (zumindest in V2). Da läuft die Visu immer auf einem Target das z.B. ein Windowssystem ist.
    Bei V3 sieht das Ganze etwas anders aus. Da kannst du bei den meisten Steuerungen eine Webvisu aktivieren dann liegen die Bilddaten auch auf der Steuerung und durch einen browser (egal auf welchem Gerät das nun ist) kannst du die Visu starten. Eine andere Lösung fällt mir nicht ein.

    Wenn du die Bildatei nur modifizieren willst auf Byteebene dann kannst du die Datei natürlich auch auf eine V2 Steuerung laden und mit FileOpen FileWrite usw. bearbeiten. Aber einzelne Bytes in einem Bild zu bearbeiten ist denke ich Quatsch.

  3. #3
    Registriert seit
    27.01.2016
    Beiträge
    31
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Danke erstmal für die schnelle Antwort.
    Ich muss das wohl mal etwas konkreter machen. Also ich habe einen PFC200 von Wago mit Embedded Linux. Per FTP schicke ich aller 5sek ein Bild von einer Überwachungskamera auf die Steuerung, was dann immer wieder überschrieben wird. Dieses Bild möchte ich auf der internen Webvisu darstellen. Wenn ich aber bei E!Cockpit (defacto Codesys V3 oder so) einen ImagePool anlege, kann ich nur Bilder integrieren, zu denen ich vom Programmiersystem aus Zugriff habe. Also kann ich das Bild, was irgendwo im Dateisystem der Steuerung liegt nicht integrieren. Gibt es da irgendeine Möglichkeit einen Platzhalter zu paltzieren, der dann durch das Bild im Dateisystem ersetzt wird, wenn die Steuerung läuft????

  4. #4
    Registriert seit
    29.03.2004
    Beiträge
    5.731
    Danke
    143
    Erhielt 1.685 Danke für 1.225 Beiträge

    Standard

    Kommt drauf an welche Möglichkeiten du in der Webvisu hast, aber mit etwas Javascript lässt sich ein Bytearray deren einzelne Werte du aus deinem SPS-Speicher ausliest, in ein Bild wandeln (Bytes z.B. base64 codieren).
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  5. #5
    Registriert seit
    27.01.2016
    Beiträge
    31
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Meines Erachtens läuft die Visu auf HTML 5 Basis und aktualisiert sich alle 200ms. Mich wundert bloß, dass man anstatt des Bildes das auf dem Programmiersystem liegt nicht einen Verweis auf das eigene Dateisystem der Steuerung machen kann. Ein Bytearray auslesen scheint mir da schon etwas zu viel Aufwand zu sein. Aber vielleicht ist es der einzige Weg.

  6. #6
    Registriert seit
    24.07.2013
    Beiträge
    420
    Danke
    1
    Erhielt 132 Danke für 111 Beiträge

    Standard

    Hi,
    es ist so das die Bilder der Webvisu schon auf der Steuerung liegen im /visu Verzeichnis, die werden aus Perfomancegründen aber gecached.
    D.h auch wenn du die Datei austauschen würdest, bekommst du immer das original Bild angezeigt.
    Ab 3.5SP8 gibt's aber tatsächlich die Möglichkeit über ein Bitmap Property ein Neuladen des ausgetauschten Bildes zu veranlassen.
    (also hier eine Änderung an der Bitmapversion -> dein neues Bild wird geladen)

    Vor 3.5SP8 gabs nur den üblen Workaround das Caching auszuschalten in:
    webvisu.cfg.json
    {
    "UpdateRate": 200,
    "PlcAddress": "0000.9ED4.C1D5",
    "UseLocalHost": true,
    "Application": "Application",
    "StartVisu": "SendTweetVisu",
    "NumCachedImages": 0,
    "BestFit": true,
    "LogLevel": "INFO",
    "CommBufferSize": 50000,
    "HasKeyboard": false
    }
    die von CODESYS beim download in den Visu Ordner kopiert wird.
    Hat eben den Nachteil das es für alle Bilder ausgeschaltet ist.

    Grüße
    Angehängte Grafiken Angehängte Grafiken
    Geändert von HausSPSler (13.02.2016 um 21:35 Uhr)
    Edwin Schwellinger
    3S-Smart Software Solutions GmbH

  7. #7
    Registriert seit
    13.12.2011
    Beiträge
    1.402
    Danke
    146
    Erhielt 158 Danke für 149 Beiträge

    Standard

    Soweit es eine Netzwerkkamera ist könnte es auch anders funktionieren. In Codesys V2 konnte man ein ActiveX Element hinzufügen, soweit für die Kamera sowas existiert und Codesys V3 das auch noch kann, könnte das auch ein gangbarer Weg sein.

    Von irgendwas mit Internetzugang gesendet.

  8. #8
    Registriert seit
    27.01.2016
    Beiträge
    31
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Danke an HausSPSler,

    der Tipp mit dem visu-Ordner hat mir schon viel gebracht. Ich lege jetzt das Bild im ImagePool an, lade es hoch auf die Steuerung und dann überschreibe ich per FTP das hochgeladene Bild. Das funktioniert ganz gut, solang man die Webvisu per HAnd neu lädt, hat man immer das aktuelle Bild. Aber hier scheint mir wirklich das Caching ein Strich durch die Rechnung zu machen. Denn das Bild wird nicht alle 200ms neu geladen. Caching ausschalten, wie von HausSPSler beschrieben, hat leider nichts gebracht. Aber das ist trotzdem schon mal ein brauchbarer Zustand. ActiveX kann ich mal schauen, ob das eine Lösung wäre.

    Danke

  9. #9
    Registriert seit
    24.07.2013
    Beiträge
    420
    Danke
    1
    Erhielt 132 Danke für 111 Beiträge

    Standard

    Hi,
    das geht schon du musst nur beachten das dieses json file beim download wieder neu von "oben" also CODESYS runterkommt...
    Also entweder die webvisu.cfg.json readonly machen nachdem du es ergänzt hast oder aber du kannst oben ja deine Startseite z.B webvisu2 nennen dann hast du zwei json file untern eine die du geändert hast und die zweite würde beim download immer überschrieben die verwenest du dann ja aber nicht.

    webvisu.cfg.json
    {
    "UpdateRate": 200,
    "PlcAddress": "0000.9ED4.C1D5",
    "UseLocalHost": true,
    "Application": "Application",
    "StartVisu": "SendTweetVisu",
    "NumCachedImages": 0,
    "BestFit": true,
    "LogLevel": "INFO",
    "CommBufferSize": 50000,
    "HasKeyboard": false
    }
    Grüße
    Edwin Schwellinger
    3S-Smart Software Solutions GmbH

  10. #10
    Registriert seit
    27.01.2016
    Beiträge
    31
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Das war mir eigentlich schon bewusst, dass die immer wieder überschrieben wird. Deswegen habe ich eine Boot-Applikation draus gemacht und dann die webvisu.cfg.json überschrieben und zur Sicherheit die Steuerung neu gestartet um das Ganze zu probieren. Wenn du aber sagst, dass muss gehen, dann werde ich das nochmal probieren. Die Zeile "NumCachedImages" stand bei mir gar nicht drin, ist das Normal???

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 22.04.2012, 16:39
  2. Antworten: 6
    Letzter Beitrag: 28.09.2011, 16:14
  3. Antworten: 16
    Letzter Beitrag: 03.02.2006, 10:58
  4. Anlagen fernsteuern, wo liegt die Grenze?
    Von lorenz2512 im Forum Stammtisch
    Antworten: 3
    Letzter Beitrag: 17.11.2005, 22:33

Lesezeichen

Berechtigungen

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