Variablenaktualisierung?

Ich brauche eure Hilfe oder was mache ich falsch,

Ich möchte den Status einer Variablen in einer anderen abbilden. Also wenn Variable1=true dann soll Variable2 auch true annehmen oder Variable3=25.3 dann soll Variable4 auch 25.3 sein. Mein bisherigen Versuche funktionieren nicht. Ich habe folgendes versucht:

Typ: Trigger
Ziel: R12 Arbeitszimmer\Heizung\SPS\Batterie\Value

Auslöservariable: R12 Arbeitszimmer\Heizung\FHT80b\Batterie
Auslösertyp: OnUpdate

Code: SetValue($IPS_TARGET, $IPS_VALUE);

Besten Dank mas

Moinsen,

irgendwie verstehe ich deinen Code gerade nicht, kannst du mal deinen
original Code posten?

müsste unbgefähr so aussehen:

SetValue($IPS_TARGET, GetValue(37774));

Das ist der Codevorschlag, den man auswählen kann. Der Code von dir funktioniert aber leider auch nicht. Es kann doch nicht so schwierig seine einen Variablenzustand einer Variable in eine Andere zu übertragen!?

mas

Ist es auch nicht. Was du nicht beschrieben hast: wird die urscprüngliche var über ein WFE-Event verändert oder spielt sich das Ganze innerhalb IPS ab? => was genau ist der Trigger?

wenn es sich innerhalb IPS abspielt (ohne WFE-Aktionen):


$source_var_ID = 57828  /*[Haussteuerung\Diele\HZ Ist-Daten\rel. Feuchte]*/;
$source_var_val = getValueFloat($source_var_ID);
$target_var_ID = 57454  /*[Haussteuerung\Diele\HZ Ist-Daten\Spiegel-Variable]*/;


SetValueFloat($target_var_ID, $source_var_val);

Event unterhalb des Scripts anlegen, Auslöser: Variablenänderung oder -Aktualisierung der source_var_ID. fertich!

Würde dir gerne helfen… tappe aber noch im Dunklen, was du eigentlich willst!
Variable 2 soll den Wert von Var1 übernehmen bei Trigger soundso und Var4 von Var3 etc.
Beschreibe(Hintergrund?) doch mal näher, was du vorhast… das mit den Variablen ist schon klar… was soll jetzt zu was werden… brauchst du wirklich für jede Variable eine Doppelung, oder willst du die Variablen nur umwandeln?
Hast du die gedoppelte Variable im gleichen Format… Bol, Int, Float, String angelegt … ich werde nicht draus schlau:confused:

Ich glaube das Problem liegt woanders. Die Variable die ich beschreiben möchte ist schreibgeschützt und ich kann es nicht ändern. Wieso eigentlich nicht? Es ist eine Siemens Adresse im Adressbereich DB, also eigentlich schreiben/lesen.

mfg mas

tja, wenn die wesentlichen Informationen und Rahmenbedingungen erst nach 1-2 Supportversuchen kommen hab ich keine Lust mehr…:mad:

Ich habe eine Instanz FHT80b mit all ihren Variablen. Ich habe zu disen Variablen einzelne Instanzen einer Siemens SPS im Datenbereich DB mit den selben Variableneigenschaften angelegt. Diese funktionieren aus IPS über die funktion Test Center -> Wert setzen.
Jetzt möchte ich, wenn sich die FHT80b-Variablen änder, sich analog dazu die Variablen auf S7-Seite im DB ändern und umgekehrt.

mfg mas

Du verblüffst mich mit deinen Fragestellungen erneut, was durch deinem Einzeilercode, aus deiner ursprüglichen Frage, tatsächlich nicht abgetan wäre.
Hier geht’s ja nun ans systemübergreifende programmieren, wobei du dir erstmal bewusst werden musst, wie IPS funktioniert (z.B. Schreiben über Instanzen auf Instanzen-Variablen), mit den entsprechenden Befehlen.

Problemlösung* gibts hier weiterhin, nur musst du dein Problem entsprechend schildern und darstellen können. Das/die passende Forum (im Board) und Fragestellung helfen manchmal auch zu einer zielstellenden… *

Besten Dank für eure Hilfe. Ich hab die Lösung gefunden. Eine Zeile Code an der richtigen Stelle, das wars.

mfg mas