CODESYS - das IEC 61131-3 Programmiersystem

Willkommen im offiziellen CODESYS - Forum von 3S-Smart Software Solutions | A member of the CODESYS Group
Deutsche Version English version russian version 
Aktuelle Zeit: Di Jan 15, 2019 11:28 pm

Alle Zeiten sind UTC




Ein neues Thema erstellen  Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Di Aug 15, 2017 6:16 am 
Offline

Registriert: Mo Aug 14, 2017 8:33 am
Beiträge: 17
Hallo liebe CoDeSys Liebhaber :-)

Wie im Betreff ersichtlich, hätte ich eine Frage zum Thema Watchlisten speichern und laden.
Ist es möglich Watchlisten direkt aus dem Codesys-programm heraus zu speichern und zu laden?
Bisher war es mir nur möglich, dies über einen Button mit dem Befehl "Savewatch" und "Loadwatch" zu realisieren.

Hintergrund:
Ich habe eine Steuerung, auf der im Hintergrund Windows CE läuft. Um meine Parameter/Rezepturen zu speichern, möchte ich gerne die Watchlisten speichern und laden.
Ich habe dies bereits auch versucht über Retainvariablen zu realisieren, was auch gut klappt. Jedoch sobald ich irgendetwas an den Retainvariablen verändere und dem Kunden ein Update zukommen lasse, kann er seine alten Parameter nicht wieder in die neue Version laden.
Realisiere ich das speichern der Variablen über eine Watchliste, ist nur eine bestimmte Anzahl an Variablen pro Watchliste möglich (sonst werden die nicht in der .wtc gespiechert) und ich muss mehrere Watchlisten anlegen. Diese muss ich dann über Buttons einzeln abspeichern und auch wieder einzeln laden, da Windows CE anscheinend Probleme damit hat, über einen Button mehrere Befehle auszuführen, was dann somit sehr umständlich ist (vor allem für den Kunden).

Nun würde ich gerne über Betätigung von nur einem Button "Speichern" (am besten über einen Aufruf innerhalb meines Programms) alle Watchlisten mit einem vordefinierten Namen in einem vordefiniertem Pfad speichern und mit klick auf Button "Laden" dann auch wieder laden.

Ich konnte bisher leider nichts in Handbüchern oder Foren finden, was mir helfen könnte.
Über Ihre Hilfe wäre ich sehr Dankbar.

Gruß
Chris


Nach oben
   
BeitragVerfasst: Mi Sep 20, 2017 12:58 pm 
Offline

Registriert: Mo Aug 14, 2017 8:33 am
Beiträge: 17
Hallo nochmal,

ich war nicht ganz untätig und hab bis jetzt einiges herausgefunden.

Ich brauche natürlich die SysLibTargetVisu.lib
Ich kann direkt über das Programm z.B. folgende Funktionen aufrufen:
Code:
IF xDefineReceipt THEN
   ExecuteCommand(stCommand:=sReceiptname, nType:=DEFINERECEIPT);
   xDefineReceipt := FALSE;
END_IF

IF xReadReceipt THEN
   ExecuteCommand(stCommand:=sReceiptname, nType:=READRECEIPT);
   xReadReceipt := FALSE;
END_IF

IF xWriteReceipt THEN
   ExecuteCommand(stCommand:=sReceiptname, nType:=WRITERECEIPT);
   xWriteReceipt := FALSE;
END_IF

IF xLoadWatch THEN
   ExecuteCommand(stCommand:='', nType:=LOADWATCH);
   xLoadWatch := FALSE;
END_IF

IF xSaveWatch THEN
   ExecuteCommand(stCommand:='', nType:=SAVEWATCH);
   xSaveWatch := FALSE;
END_IF


wobei ich folgende defines machen muss:
Code:
VAR_GLOBAL CONSTANT
   PRINT         : INT := 23;
   DEFINERECEIPT : INT := 34;
   READRECEIPT   : INT := 35;
   WRITERECEIPT  : INT := 36;
   SAVEWATCH     : INT := 37;
   LOADWATCH     : INT := 38;
END_VAR


somit hätte ich einen Großteil meines Problems gelöst.
Jetzt tritt ein weiteres Problem auf... Ich möchte die aktuellen Werte meiner Watchliste speichern und nicht die vordefinierten. Dies möchte ich mit "READRECEIPT" und anschließendes "SAVEWATCH" machen. So würde ich ja die aktuellen Werte in die Watchliste übertragen und diese dann als .wtc-file speichern. Über meine Codesys Visualisierung hat das auch wunderbar funktioniert, leider aber weder über die Webvisu noch über die Targetvisu, die direkt auf meiner Steuerung läuft (Touchpanel).
Hier funktioniert leider der Befehl READRECEIPT nicht... warum auch immer... laut Handbuch müsste dieser Befehl auch in der Webvisu und Targetvisu funktionieren... Hat jemand ne Idee oder ne alternative?

Wäre toll wenn mir jemand helfen könnte...


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 2 Beiträge ] 

Alle Zeiten sind UTC


Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 3 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de