Hallo Leute,
ich habe mir auch eine Wago 750-841 und eine 750-342. Von den Anschlüssen her passt alles. Nur jetzt bin ich dabei mir zu überlegen wie ich das mit dem UI realisiere, jedoch ohne einen extra Rechner. Bis jetzt habe ich nur Steuermöglichkeiten gefunden wenn noch ein Rechner im Spiel ist.
Meine Überlegung ist, dass ich statische HTML Seiten baue und dann über Ajax Daten von der Wago lese oder sende. Wenn also jemand auf einen Button klickt würde ich einen HTTP Request an die Wago senden. Die Wago soll dann anhand der empfangenen Daten eine bestimmte Aktion ausführen.
Um die angezeigten Elemente aktuell zu halten würde ich entsprechend einen Request an die Wago senden und diese soll mir dann den Staus der Elemente zurück geben.
Ich habe mir entsprechend das Java Applet angeschaut und dort wird es genau so gemacht, nur eben mit Java. Ich denke ich würde es auch hin bekommen die Daten, die das Applet sendet zu simulieren, aber dazu müsste ich immer erst ein UI für das Applet bauen und schauen was gesendet wird (im Moment machen nicht alle Details der Daten Sinn). Dann könnte ich die Requests per JavaScript nachbauen.
Meine Fragen sind:
[ul]
[li]Weiß jemand nach welchem Prinzip das Applet Daten aufbaut und an die Wago sendet? Die Daten sehen ungefähr so |1|1|563|0| (das ist an was ich mich gerade erinnere).
[/li][li]Fällt jemand von euch noch eine Möglichkeit ein, wie ich die Wago noch ohne einen extra Rechner steuern könnte?
[/li][li]Kann ich ein eigenes/anderes Wago Programm schreiben, dass auf Requests reagiert? In diesem könnte ich selbst definieren welche Daten ich senden muss und welche nicht. Dabei habe ich schon die Bibliothek WagoLibEthernet_01.lib gefunden, aber ich glaube nicht, dass mir diese wirklich helfen kann.
[/li][/ul]
ich hab mir dazu auch schon mal Gedanken gemacht. das ist aber bis dato nur theoretischer Natur, da ich noch nicht dazugekommen bin.
Du musst nicht das Applet nachbauen. Es gibt f.d. Wago sog SSI (Server Side Includes). Such mal bei Wago danach. Damit kannst Du Ein- und Ausgaben per normaler Website machen - und besonders Ajax-freundlich dir auch die Daten per XML hin und herschieben.
Bilder für die Visu sollten wir auf einem Webspace ablegen, da der Speicherplatz der Wago begrenzt ist und damit die Seite auch von außerhalb darstellbar bleibt. Webspace hätte ich.
Ich habe zwar eine Visu, will aber nicht den Rechner dafür ständig laufen haben. Das bringt mich dann wieder dazu das ich die Werte irgendwo speichern muß. Dann wären wir auch wieder bei to-pass oder dem Speichern in einer DB. Soll das auch Teil dieses Projektes werden? Ein Webservice könnte ja die Werte zyklisch auslesen und in eine DB schreiben.
Hallo Leute,
ihr seid ja klasse :), so viel Resonanz habe ich nicht erwartet. Danke auch für die Dateien. Ich bin dabei mir diese Anzuschauen.
Auf jeden Fall freut es mich, dass es die Includes gibt. Damit kann man fast alles realisieren. Man muss sich nur mit der Syntax vertraut machen. Da ich noch ein Wago Neuling bin, werde ich etwas Zeit dafür brauchen.
Eine Idee wie man das UI aufbauen kann ist:
[li]Man muss die SSI Dateien mit HTML entwerfen (Der Prototyp kann man aus den Beispielen bauen)
[/li][li]Einen Ajax Wrapper
[/li]Dieser Wrapper würde nur dafür da sein, Ajax Anfragen zu verarbeiten und die entsprechenden Informationen an den Client zurück zusenden.
Ich würde mich sehr gerne gleich an die Arbeit machen, aber leider komme ich diese Woche nicht mehr dazu.
Nachdem ich mit SSI ein bisschen gespielt habe, weiss ich wieder warum ich meine Visu mit ModbusTCP realisiert habe. Die Aufrufe sind echt langsam. Hoffe das es für meine mobile Anwendung schnell genug ist, da pro Seite immer nur ein paar I/Os ausgelesen werden müssen.
Was sind Eure Erfahrungen?
Kann mir noch jemand etwas vorgekautes zu Ajax liefern?
So, damit der Thread nicht einschläft mal ein bisschen Code. Klar im Code passiert noch nicht viel, aber ich dachte mir das hier nun jeder seine Verbesserungen einbringen kann. Einer kann sich ja am Design (CSS) und ein anderer am Ajax versuchen.
Im rot markierten Bereich einfach den auszulesenden Ausgang eintragen, fertig. Schon sieht man ob z.B. das Licht eingeschaltet ist (benötigt noch reload).
Achso, die Datei muss mit Änderung .ssi auf der Wago gespeichert werden!
Was mir noch Probleme bereitet, ist das setzten der Modbusvariablen. Da ich diese auf mit auf eine Schalterfunktion gelegt habe, benötige ich einen Impuls. D.h. auf 1 setzten ,300 ms warten und wieder auf 0 setzten. Doch wenn ich das mittels writepi mache verliere ich die Verbindung zur Wago.
ich hoffe ich verstoße nicht gleich in meinem ersten Beitrag gegen alle Regeln.
Ich werde folgend auf ein anderes Forum verlinken, ist dies nicht erwünscht bitte den Link entfernen und mir dies mitteilen.
Warum ich dies tue? Ich werde nur in diesem Forum den Beitrag bis zur „Vollendung“ pflegen und dann in allen Foren in denen ich auf diesen hingewiesen habe anschließend das Ergebnis präsentieren.
Ich bin nicht in der Lage, und hege auch nicht die Lust 5 gleiche Beiträge zu erstellen und alle auf dem gleichen Stand halten zu müssen.
Ich habe zusammen mit einem Freund ein Beispiel erstellt in dem mittels Javascript Variablen von der SPS gelesen, und auch geschrieben werden können. Wir sind noch in der Beta-Phase. Mal schauen, vielleicht kann ich während des Urlaubs weitere Ergebnisse präsentieren.
ich schreibe durch das senden einmal einen Merker, z.B. Merker 200.0 und setze ihn in der letzten Zeile des PLC_PRG auf False. Somit ist dieser merker nur einen Zyklus aktiv, und steht allen aufgerufenen Instanzen und PRGs des PLC_PRG zur verfügung. Werden mehrere Tasks verwendet muss das Rücksetzen an geeigneter Stelle passieren, nicht das das PLC_PRG schneller ist und das Programm das Signal nicht mitbekommt.
finde ich wirklich Klasse - vielen Dank dass Du uns deinen Code zur Verfügung stellst! Habe leider im Moment keine Zeit es auszuprobieren, freue mich aber drauf wenn ich die Zeit habe.
Aus irgendeinem Grund wird mein neuer Account in dem anderen Forum nicht freigeschaltet. Deshalb schreibe ich nochmal hier.
Beim entwickeln und testen ist mir nun schon zum wiederholten mal die Wago neu gestartet. Habt Ihr auch dieses Problem. Mit diesem Problem ist das SSI für mich nicht zu gebrauchen.
Meine Firmware ist die: 02.06.04 (11)
ich habe FW14, mir ist es noch nie passiert das sie neugestartet ist.
Wäre schön wenn du mal genauer beschreiben könntest wann das passiert,
die Wago macht das eigtl. nur wenn sie auf nicht vorhandene Variablen schreibt, wenn du z.B. im Programm WRITEPI M200.0 schreibst, aber in der Wago nicht verwendest, dann schmiert se ab… oder bei READPI vllt. auch.
hatte am anfang auch die 11er firmware drauf, zickte teilweise etwas rum, schreib an den wago support das du eine neue brauchst, hab dann die 17er bekommen, seit dem funktionierts super (lass dir auch gleich ein neues target für codesys mitschicken, das wurde ab firmware 12 geändert so viel ich weis)
Hi, ist jetzt zwar etwas off-topic: Kann man die neue FW selber flashen oder muss man die Wago dazu einschicken? Gibts evtl. ein ChangeLog was neu ist in den Versionen?
Das Firmwareupdate sollte kein Problem darstellen, wenn du es mit dem seriellen bzw. USB- Progamierkabel machst.
Die neue Firmware kannst dir auch hier herunterladen. Ebenso eine Anleitung und die neuen Targets.