(function() { var m_attempts_to_change_coefficient = [3, 3, 3, 3, 3, 3]; defineVirtualDevice("virtual_wb-map6s_88", { title: "virtual_wb-map6s_88", cells: { "Urms": { type: "value", value: "0" }, "Raw Irms 1": { type: "value", value: "0" }, "Raw P 1": { type: "value", value: "0" }, "Raw AP energy 1": { type: "value", value: "0" }, "Raw AN energy 1": { type: "value", value: "0" }, "Raw Irms 2": { type: "value", value: "0" }, "Raw P 2": { type: "value", value: "0" }, "Raw AP energy 2": { type: "value", value: "0" }, "Raw AN energy 2": { type: "value", value: "0" }, "Raw Irms 3": { type: "value", value: "0" }, "Raw P 3": { type: "value", value: "0" }, "Raw AP energy 3": { type: "value", value: "0" }, "Raw AN energy 3": { type: "value", value: "0" }, "Raw Irms 4": { type: "value", value: "0" }, "Raw P 4": { type: "value", value: "0" }, "Raw AP energy 4": { type: "value", value: "0" }, "Raw AN energy 4": { type: "value", value: "0" }, "Raw Irms 5": { type: "value", value: "0" }, "Raw P 5": { type: "value", value: "0" }, "Raw AP energy 5": { type: "value", value: "0" }, "Raw AN energy 5": { type: "value", value: "0" }, "Raw Irms 6": { type: "value", value: "0" }, "Raw P 6": { type: "value", value: "0" }, "Raw AP energy 6": { type: "value", value: "0" }, "Raw AN energy 6": { type: "value", value: "0" }, "Raw Phase angle 1": { type: "value", value: "0" }, "Raw Phase angle 2": { type: "value", value: "0" }, "Raw Phase angle 3": { type: "value", value: "0" }, "Raw Phase angle 4": { type: "value", value: "0" }, "Raw Phase angle 5": { type: "value", value: "0" }, "Raw Phase angle 6": { type: "value", value: "0" } } }); dev["virtual_wb-map6s_88"]["Urms"] = dev["wb-map6s_88"]["Urms"]; defineRule("wb-map6s_88_urms_trigger", { whenChanged: "wb-map6s_88/Urms", then: function(newValue, devName, cellName) { dev["virtual_wb-map6s_88"]["Urms"] = newValue; } }); function process_power(new_value, port) { dev["virtual_wb-map6s_88"]["Raw P " + port] = new_value; }; for (var j = 1; j < 7; j++) { (function(i) { dev["virtual_wb-map6s_88"]["Raw Phase angle " + i] = dev["wb-map6s_88"]["Phase angle " + i]; dev["virtual_wb-map6s_88"]["Raw Irms " + i] = dev["wb-map6s_88"]["Irms " + i]; dev["virtual_wb-map6s_88"]["Raw AP energy " + i] = dev["wb-map6s_88"]["AP energy " + i]; dev["virtual_wb-map6s_88"]["Raw AN energy " + i] = dev["wb-map6s_88"]["AN energy " + i]; dev["virtual_wb-map6s_88"]["Raw P " + i] = dev["wb-map6s_88"]["P " + i]; process_power(dev["wb-map6s_88"]["P " + i], i); defineRule("wb-map6s_88_irms_trigger" + i, { whenChanged: "wb-map6s_88/Phase angle " + i, then: function(newValue, devName, cellName) { dev["virtual_wb-map6s_88"]["Raw Phase angle " + i] = newValue; } }); defineRule("wb-map6s_88_irms_trigger" + i, { whenChanged: "wb-map6s_88/Irms " + i, then: function(newValue, devName, cellName) { dev["virtual_wb-map6s_88"]["Raw Irms " + i] = newValue; } }); defineRule("wb-map6s_88_ap_trigger" + i, { whenChanged: "wb-map6s_88/AP energy " + i, then: function(newValue, devName, cellName) { dev["virtual_wb-map6s_88"]["Raw AP energy " + i] = newValue; } }); defineRule("wb-map6s_88_an_trigger" + i, { whenChanged: "wb-map6s_88/AN energy " + i, then: function(newValue, devName, cellName) { dev["virtual_wb-map6s_88"]["Raw AN energy " + i] = newValue; } }); defineRule("wb-map6s_88_power_trigger" + i, { whenChanged: "wb-map6s_88/P " + i, then: function(newValue, devName, cellName) { process_power(newValue, i); } }); })(j); } })();