diff --git a/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float.py b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float.py new file mode 100644 index 0000000..1213f20 --- /dev/null +++ b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float.py @@ -0,0 +1,172 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (11x)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (11x)""") +A = froniusreg.FroniusReg(40072, froniusreg.float32, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40074, froniusreg.float32, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40076, froniusreg.float32, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40078, froniusreg.float32, 1, """Phase C Current""") +PPVphAB = froniusreg.FroniusReg(40080, froniusreg.float32, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40082, froniusreg.float32, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40084, froniusreg.float32, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40086, froniusreg.float32, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40088, froniusreg.float32, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40090, froniusreg.float32, 1, """Phase Voltage CN""") +W = froniusreg.FroniusReg(40092, froniusreg.float32, 1, """AC Power""") +Hz = froniusreg.FroniusReg(40094, froniusreg.float32, 1, """Line Frequency""") +VA = froniusreg.FroniusReg(40096, froniusreg.float32, 1, """AC Apparent Power""") +VAr = froniusreg.FroniusReg(40098, froniusreg.float32, 1, """AC Reactive Power""") +PF = froniusreg.FroniusReg(40100, froniusreg.float32, 1, """AC Power Factor""") +WH = froniusreg.FroniusReg(40102, froniusreg.float32, 1, """AC Energy""") +DCA = froniusreg.FroniusReg(40104, froniusreg.float32, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40106, froniusreg.float32, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40108, froniusreg.float32, 1, """DC Power""") +TmpCab = froniusreg.FroniusReg(40110, froniusreg.float32, 1, """Cabinet Temperature""") +St = froniusreg.FroniusReg(40118, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40119, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40120, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40122, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40124, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40126, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40132, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40133, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40134, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40135, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40136, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40137, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40138, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40140, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40141, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40142, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40143, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40144, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40145, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40146, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40147, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40148, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40149, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40150, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40159, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40160, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40161, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40162, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40163, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40167, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40168, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40169, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40170, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40171, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40173, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40174, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40175, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40176, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40182, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40183, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40184, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40185, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40186, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40187, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40189, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40192, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40193, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40194, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40195, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40196, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40197, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40227, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40229, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40233, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40237, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40238, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40243, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40244, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40245, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40247, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40248, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40249, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40250, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40251, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40252, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40254, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40256, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40257, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40258, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40259, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40260, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40261, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40262, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40263, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40265, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40266, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40267, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40268, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40269, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40272, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40275, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40283, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40286, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40288, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40295, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40303, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40305, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40306, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40308, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40315, froniusreg.uint16, 1, """Length of model block""") +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float_storage.py b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float_storage.py index 0831653..ef573c3 100644 --- a/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float_storage.py +++ b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_float_storage.py @@ -5,7 +5,6 @@ ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uni L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") -Opt = froniusreg.FroniusReg(40037, froniusreg.string8, 1, """Options""") Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") @@ -31,17 +30,12 @@ DCA = froniusreg.FroniusReg(40104, froniusreg.float32, 1, """DC Current""") DCV = froniusreg.FroniusReg(40106, froniusreg.float32, 1, """DC Voltage""") DCW = froniusreg.FroniusReg(40108, froniusreg.float32, 1, """DC Power""") TmpCab = froniusreg.FroniusReg(40110, froniusreg.float32, 1, """Cabinet Temperature""") -TmpSnk = froniusreg.FroniusReg(40112, froniusreg.float32, 1, """Heat Sink Temperature""") -TmpTrns = froniusreg.FroniusReg(40114, froniusreg.float32, 1, """Transformer Temperature""") -TmpOt = froniusreg.FroniusReg(40116, froniusreg.float32, 1, """Other Temperature""") St = froniusreg.FroniusReg(40118, froniusreg.enum16, 1, """Enumerated value. Operating state""") StVnd = froniusreg.FroniusReg(40119, froniusreg.enum16, 1, """Vendor specific operating state code""") Evt1 = froniusreg.FroniusReg(40120, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") Evt2 = froniusreg.FroniusReg(40122, froniusreg.bitfield32, 1, """Reserved for future use""") EvtVnd1 = froniusreg.FroniusReg(40124, froniusreg.bitfield32, 1, """Vendor defined events""") EvtVnd2 = froniusreg.FroniusReg(40126, froniusreg.bitfield32, 1, """Vendor defined events""") -EvtVnd3 = froniusreg.FroniusReg(40128, froniusreg.bitfield32, 1, """Vendor defined events""") -EvtVnd4 = froniusreg.FroniusReg(40130, froniusreg.bitfield32, 1, """Vendor defined events""") ID = froniusreg.FroniusReg(40132, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") L = froniusreg.FroniusReg(40133, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") DERTyp = froniusreg.FroniusReg(40134, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") @@ -63,8 +57,6 @@ PFRtgQ4 = froniusreg.FroniusReg(40149, froniusreg.int16, 1, """Minimum power fac PFRtg_SF = froniusreg.FroniusReg(40150, froniusreg.sunssf, 1, """Scale factor""") WHRtg = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Nominal energy rating of storage device.""") WHRtg_SF = froniusreg.FroniusReg(40152, froniusreg.sunssf, 1, """Scale factor""") -AhrRtg = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """The usable capacity of the battery. Maximum charge minus minimum charge from a technology capability perspective (Amp-hour capacity rating).""") -AhrRtg_SF = froniusreg.FroniusReg(40154, froniusreg.sunssf, 1, """Scale factor for amp-hour rating.""") MaxChaRte = froniusreg.FroniusReg(40155, froniusreg.uint16, 1, """Maximum rate of energy transfer into the storage device.""") MaxChaRte_SF = froniusreg.FroniusReg(40156, froniusreg.sunssf, 1, """Scale factor""") MaxDisChaRte = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Maximum rate of energy transfer out of the storage device.""") @@ -75,53 +67,31 @@ L = froniusreg.FroniusReg(40161, froniusreg.uint16, 1, """Length of sunspec mode WMax = froniusreg.FroniusReg(40162, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") VRef = froniusreg.FroniusReg(40163, froniusreg.uint16, 1, """Voltage at the PCC.""") VRefOfs = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Offset from PCC to inverter.""") -VMax = froniusreg.FroniusReg(40165, froniusreg.uint16, 1, """Setpoint for maximum voltage.""") -VMin = froniusreg.FroniusReg(40166, froniusreg.uint16, 1, """Setpoint for minimum voltage.""") VAMax = froniusreg.FroniusReg(40167, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") VArMaxQ1 = froniusreg.FroniusReg(40168, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") VArMaxQ2 = froniusreg.FroniusReg(40169, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") VArMaxQ3 = froniusreg.FroniusReg(40170, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") VArMaxQ4 = froniusreg.FroniusReg(40171, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") -WGra = froniusreg.FroniusReg(40172, froniusreg.uint16, 1, """Default ramp rate of change of active power due to command or internal action.""") PFMinQ1 = froniusreg.FroniusReg(40173, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") PFMinQ2 = froniusreg.FroniusReg(40174, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") PFMinQ3 = froniusreg.FroniusReg(40175, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") PFMinQ4 = froniusreg.FroniusReg(40176, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") -VArAct = froniusreg.FroniusReg(40177, froniusreg.enum16, 1, """VAR action on change between charging and discharging: 1=switch 2=maintain VAR characterization.""") -ClcTotVA = froniusreg.FroniusReg(40178, froniusreg.enum16, 1, """Calculation method for total apparent power. 1=vector 2=arithmetic.""") -MaxRmpRte = froniusreg.FroniusReg(40179, froniusreg.uint16, 1, """Setpoint for maximum ramp rate as percentage of nominal maximum ramp rate. This setting will limit the rate that watts delivery to the grid can increase or decrease in response to intermittent PV generation.""") -ECPNomHz = froniusreg.FroniusReg(40180, froniusreg.uint16, 1, """Setpoint for nominal frequency at the ECP.""") -ConnPh = froniusreg.FroniusReg(40181, froniusreg.enum16, 1, """Identity of connected phase for single phase inverters. A=1 B=2 C=3.""") WMax_SF = froniusreg.FroniusReg(40182, froniusreg.sunssf, 1, """Scale factor for real power.""") VRef_SF = froniusreg.FroniusReg(40183, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") VRefOfs_SF = froniusreg.FroniusReg(40184, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") VMinMax_SF = froniusreg.FroniusReg(40185, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") VAMax_SF = froniusreg.FroniusReg(40186, froniusreg.sunssf, 1, """Scale factor for apparent power.""") VArMax_SF = froniusreg.FroniusReg(40187, froniusreg.sunssf, 1, """Scale factor for reactive power.""") -WGra_SF = froniusreg.FroniusReg(40188, froniusreg.sunssf, 1, """Scale factor for default ramp rate.""") PFMin_SF = froniusreg.FroniusReg(40189, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") -MaxRmpRte_SF = froniusreg.FroniusReg(40190, froniusreg.sunssf, 1, """Scale factor for maximum ramp percentage.""") -ECPNomHz_SF = froniusreg.FroniusReg(40191, froniusreg.sunssf, 1, """Scale factor for nominal frequency.""") ID = froniusreg.FroniusReg(40192, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") L = froniusreg.FroniusReg(40193, froniusreg.uint16, 1, """Length of sunspec model status (122)""") PVConn = froniusreg.FroniusReg(40194, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") StorConn = froniusreg.FroniusReg(40195, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") ECPConn = froniusreg.FroniusReg(40196, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") ActWh = froniusreg.FroniusReg(40197, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") -ActVAh = froniusreg.FroniusReg(40201, froniusreg.acc64, 1, """AC lifetime apparent energy output.""") -ActVArhQ1 = froniusreg.FroniusReg(40205, froniusreg.acc64, 1, """AC lifetime reactive energy output in quadrant 1.""") -ActVArhQ2 = froniusreg.FroniusReg(40209, froniusreg.acc64, 1, """AC lifetime reactive energy output in quadrant 2.""") -ActVArhQ3 = froniusreg.FroniusReg(40213, froniusreg.acc64, 1, """AC lifetime negative energy output in quadrant 3.""") -ActVArhQ4 = froniusreg.FroniusReg(40217, froniusreg.acc64, 1, """AC lifetime reactive energy output in quadrant 4.""") -VArAval = froniusreg.FroniusReg(40221, froniusreg.int16, 1, """Amount of VARs available without impacting watts output.""") -VArAval_SF = froniusreg.FroniusReg(40222, froniusreg.sunssf, 1, """Scale factor for available VARs.""") -WAval = froniusreg.FroniusReg(40223, froniusreg.uint16, 1, """Amount of Watts available.""") -WAval_SF = froniusreg.FroniusReg(40224, froniusreg.sunssf, 1, """Scale factor for available Watts.""") -StSetLimMsk = froniusreg.FroniusReg(40225, froniusreg.bitfield32, 1, """Bit Mask indicating setpoint limit(s) reached.""") StActCtl = froniusreg.FroniusReg(40227, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") TmSrc = froniusreg.FroniusReg(40229, froniusreg.string4, 1, """Source of time synchronization.""") Tms = froniusreg.FroniusReg(40233, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") -RtSt = froniusreg.FroniusReg(40235, froniusreg.bitfield16, 1, """Bit Mask indicating active ride-through status.""") Ris = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Isolation resistance.""") Ris_SF = froniusreg.FroniusReg(40237, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") ID = froniusreg.FroniusReg(40238, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") @@ -139,9 +109,7 @@ OutPFSet_WinTms = froniusreg.FroniusReg(40249, froniusreg.uint16, 1, """Time win OutPFSet_RvrtTms = froniusreg.FroniusReg(40250, froniusreg.uint16, 1, """Timeout period for power factor.""") OutPFSet_RmpTms = froniusreg.FroniusReg(40251, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") OutPFSet_Ena = froniusreg.FroniusReg(40252, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") -VArWMaxPct = froniusreg.FroniusReg(40253, froniusreg.int16, 1, """Reactive power in percent of WMax.""") VArMaxPct = froniusreg.FroniusReg(40254, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") -VArAvalPct = froniusreg.FroniusReg(40255, froniusreg.int16, 1, """Reactive power in percent of VArAval.""") VArPct_WinTms = froniusreg.FroniusReg(40256, froniusreg.uint16, 1, """Time window for VAR limit change.""") VArPct_RvrtTms = froniusreg.FroniusReg(40257, froniusreg.uint16, 1, """Timeout period for VAR limit.""") VArPct_RmpTms = froniusreg.FroniusReg(40258, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") @@ -156,9 +124,7 @@ DCA_SF = froniusreg.FroniusReg(40266, froniusreg.sunssf, 1, """Current Scale Fac DCV_SF = froniusreg.FroniusReg(40267, froniusreg.sunssf, 1, """Voltage Scale Factor""") DCW_SF = froniusreg.FroniusReg(40268, froniusreg.sunssf, 1, """Power Scale Factor""") DCWH_SF = froniusreg.FroniusReg(40269, froniusreg.sunssf, 1, """Energy Scale Factor""") -Evt = froniusreg.FroniusReg(40270, froniusreg.bitfield32, 1, """Global Events""") N = froniusreg.FroniusReg(40272, froniusreg.count, 1, """Number of Modules""") -TmsPer = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """Timestamp Period""") module_1_ID = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """Input ID""") module_1_IDStr = froniusreg.FroniusReg(40275, froniusreg.string8, 1, """Input ID Sting""") module_1_DCA = froniusreg.FroniusReg(40283, froniusreg.uint16, 1, """DC Current""") @@ -166,9 +132,6 @@ module_1_DCV = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """DC Voltage" module_1_DCW = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """DC Power""") module_1_DCWH = froniusreg.FroniusReg(40286, froniusreg.acc32, 1, """Lifetime Energy""") module_1_Tms = froniusreg.FroniusReg(40288, froniusreg.uint32, 1, """Timestamp""") -module_1_Tmp = froniusreg.FroniusReg(40290, froniusreg.int16, 1, """Temperature""") -module_1_DCSt = froniusreg.FroniusReg(40291, froniusreg.enum16, 1, """Operating State""") -module_1_DCEvt = froniusreg.FroniusReg(40292, froniusreg.bitfield32, 1, """Module Events""") module_2_ID = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """Input ID""") module_2_IDStr = froniusreg.FroniusReg(40295, froniusreg.string8, 1, """Input ID Sting""") module_2_DCA = froniusreg.FroniusReg(40303, froniusreg.uint16, 1, """DC Current""") @@ -176,9 +139,6 @@ module_2_DCV = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """DC Voltage" module_2_DCW = froniusreg.FroniusReg(40305, froniusreg.uint16, 1, """DC Power""") module_2_DCWH = froniusreg.FroniusReg(40306, froniusreg.acc32, 1, """Lifetime Energy""") module_2_Tms = froniusreg.FroniusReg(40308, froniusreg.uint32, 1, """Timestamp""") -module_2_Tmp = froniusreg.FroniusReg(40310, froniusreg.int16, 1, """Temperature""") -module_2_DCSt = froniusreg.FroniusReg(40311, froniusreg.enum16, 1, """Operating State""") -module_2_DCEvt = froniusreg.FroniusReg(40312, froniusreg.bitfield32, 1, """Module Events""") module_3_ID = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """Input ID""") module_3_IDStr = froniusreg.FroniusReg(40315, froniusreg.string8, 1, """Input ID Sting""") module_3_DCA = froniusreg.FroniusReg(40323, froniusreg.uint16, 1, """DC Current""") @@ -186,9 +146,6 @@ module_3_DCV = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """DC Voltage" module_3_DCW = froniusreg.FroniusReg(40325, froniusreg.uint16, 1, """DC Power""") module_3_DCWH = froniusreg.FroniusReg(40326, froniusreg.acc32, 1, """Lifetime Energy""") module_3_Tms = froniusreg.FroniusReg(40328, froniusreg.uint32, 1, """Timestamp""") -module_3_Tmp = froniusreg.FroniusReg(40330, froniusreg.int16, 1, """Temperature""") -module_3_DCSt = froniusreg.FroniusReg(40331, froniusreg.enum16, 1, """Operating State""") -module_3_DCEvt = froniusreg.FroniusReg(40332, froniusreg.bitfield32, 1, """Module Events""") module_4_ID = froniusreg.FroniusReg(40334, froniusreg.uint16, 1, """Input ID""") module_4_IDStr = froniusreg.FroniusReg(40335, froniusreg.string8, 1, """Input ID Sting""") module_4_DCA = froniusreg.FroniusReg(40343, froniusreg.uint16, 1, """DC Current""") @@ -196,9 +153,6 @@ module_4_DCV = froniusreg.FroniusReg(40344, froniusreg.uint16, 1, """DC Voltage" module_4_DCW = froniusreg.FroniusReg(40345, froniusreg.uint16, 1, """DC Power""") module_4_DCWH = froniusreg.FroniusReg(40346, froniusreg.acc32, 1, """Lifetime Energy""") module_4_Tms = froniusreg.FroniusReg(40348, froniusreg.uint32, 1, """Timestamp""") -module_4_Tmp = froniusreg.FroniusReg(40350, froniusreg.int16, 1, """Temperature""") -module_4_DCSt = froniusreg.FroniusReg(40351, froniusreg.enum16, 1, """Operating State""") -module_4_DCEvt = froniusreg.FroniusReg(40352, froniusreg.bitfield32, 1, """Module Events""") ID = froniusreg.FroniusReg(40354, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model storage (124)""") L = froniusreg.FroniusReg(40355, froniusreg.uint16, 1, """Length of sunspec model storage (124)""") WChaMax = froniusreg.FroniusReg(40356, froniusreg.uint16, 1, """Setpoint for maximum charge. @@ -218,11 +172,8 @@ Additional Fronius description: Active hold/discharge/charge storage control mode. Set the charge field to enable charging and the discharge field to enable discharging. """) -VAChaMax = froniusreg.FroniusReg(40360, froniusreg.uint16, 1, """Setpoint for maximum charging VA.""") MinRsvPct = froniusreg.FroniusReg(40361, froniusreg.uint16, 1, """Setpoint for minimum reserve for storage as a percentage of the nominal maximum storage.""") ChaState = froniusreg.FroniusReg(40362, froniusreg.uint16, 1, """Currently available energy as a percent of the capacity rating.""") -StorAval = froniusreg.FroniusReg(40363, froniusreg.uint16, 1, """State of charge (ChaState) minus storage reserve (MinRsvPct) times capacity rating (AhrRtg).""") -InBatV = froniusreg.FroniusReg(40364, froniusreg.uint16, 1, """Internal battery voltage.""") ChaSt = froniusreg.FroniusReg(40365, froniusreg.enum16, 1, """Charge status of storage device. Enumerated value.""") OutWRte = froniusreg.FroniusReg(40366, froniusreg.int16, 1, """Percent of max discharge rate. @@ -236,17 +187,12 @@ Additional Fronius description: Defines maximum Charge rate. If not used than the default is 100 and WChaMax defines max. Charge rate. See WChaMax for details """) -InOutWRte_WinTms = froniusreg.FroniusReg(40368, froniusreg.uint16, 1, """Time window for charge/discharge rate change.""") InOutWRte_RvrtTms = froniusreg.FroniusReg(40369, froniusreg.uint16, 1, """Timeout period for charge/discharge rate.""") -InOutWRte_RmpTms = froniusreg.FroniusReg(40370, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") ChaGriSet = froniusreg.FroniusReg(40371, froniusreg.enum16, 1, """nan""") WChaMax_SF = froniusreg.FroniusReg(40372, froniusreg.sunssf, 1, """Scale factor for maximum charge.""") WChaDisChaGra_SF = froniusreg.FroniusReg(40373, froniusreg.sunssf, 1, """Scale factor for maximum charge and discharge rate.""") -VAChaMax_SF = froniusreg.FroniusReg(40374, froniusreg.sunssf, 1, """Scale factor for maximum charging VA.""") MinRsvPct_SF = froniusreg.FroniusReg(40375, froniusreg.sunssf, 1, """Scale factor for minimum reserve percentage.""") ChaState_SF = froniusreg.FroniusReg(40376, froniusreg.sunssf, 1, """Scale factor for available energy percent.""") -StorAval_SF = froniusreg.FroniusReg(40377, froniusreg.sunssf, 1, """Scale factor for state of charge.""") -InBatV_SF = froniusreg.FroniusReg(40378, froniusreg.sunssf, 1, """Scale factor for battery voltage.""") InOutWRte_SF = froniusreg.FroniusReg(40379, froniusreg.sunssf, 1, """Scale factor for percent charge/discharge rate.""") ID = froniusreg.FroniusReg(40380, froniusreg.uint16, 1, """Identifies this as End block""") L = froniusreg.FroniusReg(40381, froniusreg.uint16, 1, """Length of model block""") @@ -262,34 +208,24 @@ scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) scaledWHRtg = froniusreg.ScaledFroniusReg(WHRtg, WHRtg_SF) -scaledAhrRtg = froniusreg.ScaledFroniusReg(AhrRtg, AhrRtg_SF) scaledMaxChaRte = froniusreg.ScaledFroniusReg(MaxChaRte, MaxChaRte_SF) scaledMaxDisChaRte = froniusreg.ScaledFroniusReg(MaxDisChaRte, MaxDisChaRte_SF) scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) -scaledVMax = froniusreg.ScaledFroniusReg(VMax, VMinMax_SF) -scaledVMin = froniusreg.ScaledFroniusReg(VMin, VMinMax_SF) scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) -scaledWGra = froniusreg.ScaledFroniusReg(WGra, WGra_SF) scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) -scaledMaxRmpRte = froniusreg.ScaledFroniusReg(MaxRmpRte, MaxRmpRte_SF) -scaledECPNomHz = froniusreg.ScaledFroniusReg(ECPNomHz, ECPNomHz_SF) -scaledVArAval = froniusreg.ScaledFroniusReg(VArAval, VArAval_SF) -scaledWAval = froniusreg.ScaledFroniusReg(WAval, WAval_SF) scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) -scaledVArWMaxPct = froniusreg.ScaledFroniusReg(VArWMaxPct, VArPct_SF) scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) -scaledVArAvalPct = froniusreg.ScaledFroniusReg(VArAvalPct, VArPct_SF) scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) @@ -309,10 +245,7 @@ scaledmodule_4_DCWH = froniusreg.ScaledFroniusReg(module_4_DCWH, DCWH_SF) scaledWChaMax = froniusreg.ScaledFroniusReg(WChaMax, WChaMax_SF) scaledWChaGra = froniusreg.ScaledFroniusReg(WChaGra, WChaDisChaGra_SF) scaledWDisChaGra = froniusreg.ScaledFroniusReg(WDisChaGra, WChaDisChaGra_SF) -scaledVAChaMax = froniusreg.ScaledFroniusReg(VAChaMax, VAChaMax_SF) scaledMinRsvPct = froniusreg.ScaledFroniusReg(MinRsvPct, MinRsvPct_SF) scaledChaState = froniusreg.ScaledFroniusReg(ChaState, ChaState_SF) -scaledStorAval = froniusreg.ScaledFroniusReg(StorAval, StorAval_SF) -scaledInBatV = froniusreg.ScaledFroniusReg(InBatV, InBatV_SF) scaledOutWRte = froniusreg.ScaledFroniusReg(OutWRte, InOutWRte_SF) scaledInWRte = froniusreg.ScaledFroniusReg(InWRte, InOutWRte_SF) diff --git a/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_int&sf.py b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_int&sf.py new file mode 100644 index 0000000..ef3d1b2 --- /dev/null +++ b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_int&sf.py @@ -0,0 +1,202 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (10x)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (10x)""") +A = froniusreg.FroniusReg(40072, froniusreg.uint16, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.uint16, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.uint16, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.uint16, 1, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 1, """nan""") +PPVphAB = froniusreg.FroniusReg(40077, froniusreg.uint16, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40078, froniusreg.uint16, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40079, froniusreg.uint16, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40080, froniusreg.uint16, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40081, froniusreg.uint16, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40082, froniusreg.uint16, 1, """Phase Voltage CN""") +V_SF = froniusreg.FroniusReg(40083, froniusreg.sunssf, 1, """nan""") +W = froniusreg.FroniusReg(40084, froniusreg.int16, 1, """AC Power""") +W_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 1, """nan""") +Hz = froniusreg.FroniusReg(40086, froniusreg.uint16, 1, """Line Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 1, """nan""") +VA = froniusreg.FroniusReg(40088, froniusreg.int16, 1, """AC Apparent Power""") +VA_SF = froniusreg.FroniusReg(40089, froniusreg.sunssf, 1, """nan""") +VAr = froniusreg.FroniusReg(40090, froniusreg.int16, 1, """AC Reactive Power""") +VAr_SF = froniusreg.FroniusReg(40091, froniusreg.sunssf, 1, """nan""") +PF = froniusreg.FroniusReg(40092, froniusreg.int16, 1, """AC Power Factor""") +PF_SF = froniusreg.FroniusReg(40093, froniusreg.sunssf, 1, """nan""") +WH = froniusreg.FroniusReg(40094, froniusreg.acc32, 1, """AC Energy""") +WH_SF = froniusreg.FroniusReg(40096, froniusreg.sunssf, 1, """nan""") +DCA = froniusreg.FroniusReg(40097, froniusreg.uint16, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40099, froniusreg.uint16, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40101, froniusreg.int16, 1, """DC Power""") +DCW_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 1, """nan""") +TmpCab = froniusreg.FroniusReg(40103, froniusreg.int16, 1, """Cabinet Temperature""") +Tmp_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 1, """nan""") +St = froniusreg.FroniusReg(40108, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40109, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40110, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40112, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40114, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40116, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40122, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40123, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40124, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40125, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40126, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40127, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40128, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40129, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40130, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40131, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40132, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40133, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40134, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40135, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40136, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40137, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40138, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40140, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40149, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40150, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40152, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40154, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40158, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40159, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40160, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40161, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40163, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40165, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40166, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40172, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40173, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40174, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40175, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40176, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40177, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40179, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40182, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40183, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40184, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40185, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40186, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40187, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40217, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40219, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40223, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40226, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40227, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40228, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40229, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40230, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40231, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40232, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40233, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40234, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40235, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40237, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40238, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40244, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40247, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40248, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40249, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40250, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40251, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40252, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40253, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40254, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40255, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40256, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40257, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40258, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40259, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40262, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40265, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40275, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40276, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40278, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40285, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40293, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40295, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40296, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40298, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40305, froniusreg.uint16, 1, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPPVphAB = froniusreg.ScaledFroniusReg(PPVphAB, V_SF) +scaledPPVphBC = froniusreg.ScaledFroniusReg(PPVphBC, V_SF) +scaledPPVphCA = froniusreg.ScaledFroniusReg(PPVphCA, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAr = froniusreg.ScaledFroniusReg(VAr, VAr_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledWH = froniusreg.ScaledFroniusReg(WH, WH_SF) +scaledDCA = froniusreg.ScaledFroniusReg(DCA, DCA_SF) +scaledDCV = froniusreg.ScaledFroniusReg(DCV, DCV_SF) +scaledDCW = froniusreg.ScaledFroniusReg(DCW, DCW_SF) +scaledTmpCab = froniusreg.ScaledFroniusReg(TmpCab, Tmp_SF) +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_int&sf_storage.py b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_int&sf_storage.py new file mode 100644 index 0000000..c623c64 --- /dev/null +++ b/src/pyfroniusreg/gen24_primo_symo_inverter_register_map_int&sf_storage.py @@ -0,0 +1,281 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (10x)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (10x)""") +A = froniusreg.FroniusReg(40072, froniusreg.uint16, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.uint16, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.uint16, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.uint16, 1, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 1, """nan""") +PPVphAB = froniusreg.FroniusReg(40077, froniusreg.uint16, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40078, froniusreg.uint16, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40079, froniusreg.uint16, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40080, froniusreg.uint16, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40081, froniusreg.uint16, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40082, froniusreg.uint16, 1, """Phase Voltage CN""") +V_SF = froniusreg.FroniusReg(40083, froniusreg.sunssf, 1, """nan""") +W = froniusreg.FroniusReg(40084, froniusreg.int16, 1, """AC Power""") +W_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 1, """nan""") +Hz = froniusreg.FroniusReg(40086, froniusreg.uint16, 1, """Line Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 1, """nan""") +VA = froniusreg.FroniusReg(40088, froniusreg.int16, 1, """AC Apparent Power""") +VA_SF = froniusreg.FroniusReg(40089, froniusreg.sunssf, 1, """nan""") +VAr = froniusreg.FroniusReg(40090, froniusreg.int16, 1, """AC Reactive Power""") +VAr_SF = froniusreg.FroniusReg(40091, froniusreg.sunssf, 1, """nan""") +PF = froniusreg.FroniusReg(40092, froniusreg.int16, 1, """AC Power Factor""") +PF_SF = froniusreg.FroniusReg(40093, froniusreg.sunssf, 1, """nan""") +WH = froniusreg.FroniusReg(40094, froniusreg.acc32, 1, """AC Energy""") +WH_SF = froniusreg.FroniusReg(40096, froniusreg.sunssf, 1, """nan""") +DCA = froniusreg.FroniusReg(40097, froniusreg.uint16, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40099, froniusreg.uint16, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40101, froniusreg.int16, 1, """DC Power""") +DCW_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 1, """nan""") +TmpCab = froniusreg.FroniusReg(40103, froniusreg.int16, 1, """Cabinet Temperature""") +Tmp_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 1, """nan""") +St = froniusreg.FroniusReg(40108, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40109, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40110, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40112, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40114, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40116, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40122, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40123, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40124, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40125, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40126, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40127, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40128, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40129, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40130, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40131, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40132, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40133, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40134, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40135, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40136, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40137, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40138, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40140, froniusreg.sunssf, 1, """Scale factor""") +WHRtg = froniusreg.FroniusReg(40141, froniusreg.uint16, 1, """Nominal energy rating of storage device.""") +WHRtg_SF = froniusreg.FroniusReg(40142, froniusreg.sunssf, 1, """Scale factor""") +MaxChaRte = froniusreg.FroniusReg(40145, froniusreg.uint16, 1, """Maximum rate of energy transfer into the storage device.""") +MaxChaRte_SF = froniusreg.FroniusReg(40146, froniusreg.sunssf, 1, """Scale factor""") +MaxDisChaRte = froniusreg.FroniusReg(40147, froniusreg.uint16, 1, """Maximum rate of energy transfer out of the storage device.""") +MaxDisChaRte_SF = froniusreg.FroniusReg(40148, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40149, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40150, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40152, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40154, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40158, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40159, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40160, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40161, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40163, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40165, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40166, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40172, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40173, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40174, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40175, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40176, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40177, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40179, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40182, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40183, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40184, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40185, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40186, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40187, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40217, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40219, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40223, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40226, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40227, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40228, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40229, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40230, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40231, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40232, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40233, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40234, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40235, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40237, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40238, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40244, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40247, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40248, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40249, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40250, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40251, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40252, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40253, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40254, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40255, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40256, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40257, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40258, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40259, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40262, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40265, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40275, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40276, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40278, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40285, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40293, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40295, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40296, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40298, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40305, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40313, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40315, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40316, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40318, froniusreg.uint32, 1, """Timestamp""") +module_4_ID = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """Input ID""") +module_4_IDStr = froniusreg.FroniusReg(40325, froniusreg.string8, 1, """Input ID Sting""") +module_4_DCA = froniusreg.FroniusReg(40333, froniusreg.uint16, 1, """DC Current""") +module_4_DCV = froniusreg.FroniusReg(40334, froniusreg.uint16, 1, """DC Voltage""") +module_4_DCW = froniusreg.FroniusReg(40335, froniusreg.uint16, 1, """DC Power""") +module_4_DCWH = froniusreg.FroniusReg(40336, froniusreg.acc32, 1, """Lifetime Energy""") +module_4_Tms = froniusreg.FroniusReg(40338, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40344, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model storage (124)""") +L = froniusreg.FroniusReg(40345, froniusreg.uint16, 1, """Length of sunspec model storage (124)""") +WChaMax = froniusreg.FroniusReg(40346, froniusreg.uint16, 1, """Setpoint for maximum charge. + +Additional Fronius description: +Reference Value for maximum Charge and Discharge. +Multiply this value by InWRte to define maximum charging and OutWRte to define maximum discharging. +Every rate between this two limits is allowed. +The inverter is not fully capable of transferring power as reported by this reference value. +Note that InWRte and OutWRte can be negative to define ranges for charging and discharging only +""") +WChaGra = froniusreg.FroniusReg(40347, froniusreg.uint16, 1, """Setpoint for maximum charging rate. Default is MaxChaRte.""") +WDisChaGra = froniusreg.FroniusReg(40348, froniusreg.uint16, 1, """Setpoint for maximum discharge rate. Default is MaxDisChaRte.""") +StorCtl_Mod = froniusreg.FroniusReg(40349, froniusreg.bitfield16, 1, """Activate hold/discharge/charge storage control mode. Bitfield value. + +Additional Fronius description: +Active hold/discharge/charge storage control mode. +Set the charge field to enable charging and the discharge field to enable discharging. +""") +MinRsvPct = froniusreg.FroniusReg(40351, froniusreg.uint16, 1, """Setpoint for minimum reserve for storage as a percentage of the nominal maximum storage.""") +ChaState = froniusreg.FroniusReg(40352, froniusreg.uint16, 1, """Currently available energy as a percent of the capacity rating.""") +ChaSt = froniusreg.FroniusReg(40355, froniusreg.enum16, 1, """Charge status of storage device. Enumerated value.""") +OutWRte = froniusreg.FroniusReg(40356, froniusreg.int16, 1, """Percent of max discharge rate. + +Additional Fronius description: +Defines maximum Discharge rate. If not used than the default is 100 and WChaMax defines max. Discharge rate. +See WChaMax for details +""") +InWRte = froniusreg.FroniusReg(40357, froniusreg.int16, 1, """Percent of max charging rate. + +Additional Fronius description: +Defines maximum Charge rate. If not used than the default is 100 and WChaMax defines max. Charge rate. +See WChaMax for details +""") +InOutWRte_RvrtTms = froniusreg.FroniusReg(40359, froniusreg.uint16, 1, """Timeout period for charge/discharge rate.""") +ChaGriSet = froniusreg.FroniusReg(40361, froniusreg.enum16, 1, """nan""") +WChaMax_SF = froniusreg.FroniusReg(40362, froniusreg.sunssf, 1, """Scale factor for maximum charge.""") +WChaDisChaGra_SF = froniusreg.FroniusReg(40363, froniusreg.sunssf, 1, """Scale factor for maximum charge and discharge rate.""") +MinRsvPct_SF = froniusreg.FroniusReg(40365, froniusreg.sunssf, 1, """Scale factor for minimum reserve percentage.""") +ChaState_SF = froniusreg.FroniusReg(40366, froniusreg.sunssf, 1, """Scale factor for available energy percent.""") +InOutWRte_SF = froniusreg.FroniusReg(40369, froniusreg.sunssf, 1, """Scale factor for percent charge/discharge rate.""") +ID = froniusreg.FroniusReg(40370, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40371, froniusreg.uint16, 1, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPPVphAB = froniusreg.ScaledFroniusReg(PPVphAB, V_SF) +scaledPPVphBC = froniusreg.ScaledFroniusReg(PPVphBC, V_SF) +scaledPPVphCA = froniusreg.ScaledFroniusReg(PPVphCA, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAr = froniusreg.ScaledFroniusReg(VAr, VAr_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledWH = froniusreg.ScaledFroniusReg(WH, WH_SF) +scaledDCA = froniusreg.ScaledFroniusReg(DCA, DCA_SF) +scaledDCV = froniusreg.ScaledFroniusReg(DCV, DCV_SF) +scaledDCW = froniusreg.ScaledFroniusReg(DCW, DCW_SF) +scaledTmpCab = froniusreg.ScaledFroniusReg(TmpCab, Tmp_SF) +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWHRtg = froniusreg.ScaledFroniusReg(WHRtg, WHRtg_SF) +scaledMaxChaRte = froniusreg.ScaledFroniusReg(MaxChaRte, MaxChaRte_SF) +scaledMaxDisChaRte = froniusreg.ScaledFroniusReg(MaxDisChaRte, MaxDisChaRte_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) +scaledmodule_4_DCA = froniusreg.ScaledFroniusReg(module_4_DCA, DCA_SF) +scaledmodule_4_DCV = froniusreg.ScaledFroniusReg(module_4_DCV, DCV_SF) +scaledmodule_4_DCW = froniusreg.ScaledFroniusReg(module_4_DCW, DCW_SF) +scaledmodule_4_DCWH = froniusreg.ScaledFroniusReg(module_4_DCWH, DCWH_SF) +scaledWChaMax = froniusreg.ScaledFroniusReg(WChaMax, WChaMax_SF) +scaledWChaGra = froniusreg.ScaledFroniusReg(WChaGra, WChaDisChaGra_SF) +scaledWDisChaGra = froniusreg.ScaledFroniusReg(WDisChaGra, WChaDisChaGra_SF) +scaledMinRsvPct = froniusreg.ScaledFroniusReg(MinRsvPct, MinRsvPct_SF) +scaledChaState = froniusreg.ScaledFroniusReg(ChaState, ChaState_SF) +scaledOutWRte = froniusreg.ScaledFroniusReg(OutWRte, InOutWRte_SF) +scaledInWRte = froniusreg.ScaledFroniusReg(InWRte, InOutWRte_SF) diff --git a/src/pyfroniusreg/smart_meter_register_map_float.py b/src/pyfroniusreg/smart_meter_register_map_float.py new file mode 100644 index 0000000..c060e1b --- /dev/null +++ b/src/pyfroniusreg/smart_meter_register_map_float.py @@ -0,0 +1,61 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 200, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 200, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 200, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 200, """Smart Meter Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 200, """Smart Meter Model""") +Opt = froniusreg.FroniusReg(40037, froniusreg.string8, 200, """Smart Meter Name""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 200, """SW version of """) +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 200, """Smart Meter Serialnumber""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 200, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 200, """Well-known value. Uniquely identifies this as a sunspec model ac_meter (21x)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 200, """Length of sunspec model ac_meter (21x)""") +A = froniusreg.FroniusReg(40072, froniusreg.float32, 200, """Total AC Current""") +AphA = froniusreg.FroniusReg(40074, froniusreg.float32, 200, """Phase A Current""") +AphB = froniusreg.FroniusReg(40076, froniusreg.float32, 200, """Phase B Current""") +AphC = froniusreg.FroniusReg(40078, froniusreg.float32, 200, """Phase C Current""") +PhV = froniusreg.FroniusReg(40080, froniusreg.float32, 200, """Line to Neutral AC Voltage (average of active phases)""") +PhVphA = froniusreg.FroniusReg(40082, froniusreg.float32, 200, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40084, froniusreg.float32, 200, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40086, froniusreg.float32, 200, """Phase Voltage CN""") +PPV = froniusreg.FroniusReg(40088, froniusreg.float32, 200, """Line to Line AC Voltage (average of active phases)""") +PPVphAB = froniusreg.FroniusReg(40090, froniusreg.float32, 200, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40092, froniusreg.float32, 200, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40094, froniusreg.float32, 200, """Phase Voltage CA""") +Hz = froniusreg.FroniusReg(40096, froniusreg.float32, 200, """Frequency""") +W = froniusreg.FroniusReg(40098, froniusreg.float32, 200, """Total Real Power""") +WphA = froniusreg.FroniusReg(40100, froniusreg.float32, 200, """Watts phase A""") +WphB = froniusreg.FroniusReg(40102, froniusreg.float32, 200, """Watts phase B""") +WphC = froniusreg.FroniusReg(40104, froniusreg.float32, 200, """Watts phase C""") +VA = froniusreg.FroniusReg(40106, froniusreg.float32, 200, """AC Apparent Power""") +VAphA = froniusreg.FroniusReg(40108, froniusreg.float32, 200, """VA phase A""") +VAphB = froniusreg.FroniusReg(40110, froniusreg.float32, 200, """VA phase B""") +VAphC = froniusreg.FroniusReg(40112, froniusreg.float32, 200, """VA phase C""") +VAR = froniusreg.FroniusReg(40114, froniusreg.float32, 200, """Reactive Power""") +VARphA = froniusreg.FroniusReg(40116, froniusreg.float32, 200, """VAR phase A""") +VARphB = froniusreg.FroniusReg(40118, froniusreg.float32, 200, """VAR phase B""") +VARphC = froniusreg.FroniusReg(40120, froniusreg.float32, 200, """VAR phase C""") +PF = froniusreg.FroniusReg(40122, froniusreg.float32, 200, """Power Factor""") +PFphA = froniusreg.FroniusReg(40124, froniusreg.float32, 200, """PF phase A""") +PFphB = froniusreg.FroniusReg(40126, froniusreg.float32, 200, """PF phase B""") +PFphC = froniusreg.FroniusReg(40128, froniusreg.float32, 200, """PF phase C""") +TotWhExp = froniusreg.FroniusReg(40130, froniusreg.float32, 200, """Total Real Energy Exported""") +TotWhExpPhA = froniusreg.FroniusReg(40132, froniusreg.float32, 200, """Total Watt-hours Exported phase A""") +TotWhExpPhB = froniusreg.FroniusReg(40134, froniusreg.float32, 200, """Total Watt-hours Exported phase B""") +TotWhExpPhC = froniusreg.FroniusReg(40136, froniusreg.float32, 200, """Total Watt-hours Exported phase C""") +TotWhImp = froniusreg.FroniusReg(40138, froniusreg.float32, 200, """Total Real Energy Imported""") +TotWhImpPhA = froniusreg.FroniusReg(40140, froniusreg.float32, 200, """Total Watt-hours Imported phase A""") +TotWhImpPhB = froniusreg.FroniusReg(40142, froniusreg.float32, 200, """Total Watt-hours Imported phase B""") +TotWhImpPhC = froniusreg.FroniusReg(40144, froniusreg.float32, 200, """Total Watt-hours Imported phase C""") +TotVAhExp = froniusreg.FroniusReg(40146, froniusreg.float32, 200, """Total Apparent Energy Exported""") +TotVAhExpPhA = froniusreg.FroniusReg(40148, froniusreg.float32, 200, """Total VA-hours Exported phase A""") +TotVAhExpPhB = froniusreg.FroniusReg(40150, froniusreg.float32, 200, """Total VA-hours Exported phase B""") +TotVAhExpPhC = froniusreg.FroniusReg(40152, froniusreg.float32, 200, """Total VA-hours Exported phase C""") +TotVAhImp = froniusreg.FroniusReg(40154, froniusreg.float32, 200, """Total Apparent Energy Imported""") +TotVAhImpPhA = froniusreg.FroniusReg(40156, froniusreg.float32, 200, """Total VA-hours Imported phase A""") +TotVAhImpPhB = froniusreg.FroniusReg(40158, froniusreg.float32, 200, """Total VA-hours Imported phase B""") +TotVAhImpPhC = froniusreg.FroniusReg(40160, froniusreg.float32, 200, """Total VA-hours Imported phase C""") +Evt = froniusreg.FroniusReg(40194, froniusreg.bitfield32, 200, """Meter Event Flags""") +ID = froniusreg.FroniusReg(40196, froniusreg.uint16, 200, """Identifies this as End block""") +L = froniusreg.FroniusReg(40197, froniusreg.uint16, 200, """Length of model block""") diff --git a/src/pyfroniusreg/smart_meter_register_map_int&sf.py b/src/pyfroniusreg/smart_meter_register_map_int&sf.py new file mode 100644 index 0000000..2bdf245 --- /dev/null +++ b/src/pyfroniusreg/smart_meter_register_map_int&sf.py @@ -0,0 +1,115 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 200, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 200, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 200, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 200, """Smart Meter Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 200, """Smart Meter Model""") +Opt = froniusreg.FroniusReg(40037, froniusreg.string8, 200, """Smart Meter Name""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 200, """SW version of """) +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 200, """Smart Meter Serialnumber""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 200, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 200, """Well-known value. Uniquely identifies this as a sunspec model ac_meter (20x)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 200, """Length of sunspec model ac_meter (20x)""") +A = froniusreg.FroniusReg(40072, froniusreg.int16, 200, """Total AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.int16, 200, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.int16, 200, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.int16, 200, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 200, """Current scale factor""") +PhV = froniusreg.FroniusReg(40077, froniusreg.int16, 200, """Line to Neutral AC Voltage (average of active phases)""") +PhVphA = froniusreg.FroniusReg(40078, froniusreg.int16, 200, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40079, froniusreg.int16, 200, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40080, froniusreg.int16, 200, """Phase Voltage CN""") +PPV = froniusreg.FroniusReg(40081, froniusreg.int16, 200, """Line to Line AC Voltage (average of active phases)""") +PhVphAB = froniusreg.FroniusReg(40082, froniusreg.int16, 200, """Phase Voltage AB""") +PhVphBC = froniusreg.FroniusReg(40083, froniusreg.int16, 200, """Phase Voltage BC""") +PhVphCA = froniusreg.FroniusReg(40084, froniusreg.int16, 200, """Phase Voltage CA""") +V_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 200, """Voltage scale factor""") +Hz = froniusreg.FroniusReg(40086, froniusreg.int16, 200, """Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 200, """Frequency scale factor""") +W = froniusreg.FroniusReg(40088, froniusreg.int16, 200, """Total Real Power""") +WphA = froniusreg.FroniusReg(40089, froniusreg.int16, 200, """Watts phase A""") +WphB = froniusreg.FroniusReg(40090, froniusreg.int16, 200, """Watts phase B""") +WphC = froniusreg.FroniusReg(40091, froniusreg.int16, 200, """Watts phase C""") +W_SF = froniusreg.FroniusReg(40092, froniusreg.sunssf, 200, """Real Power scale factor""") +VA = froniusreg.FroniusReg(40093, froniusreg.int16, 200, """AC Apparent Power""") +VAphA = froniusreg.FroniusReg(40094, froniusreg.int16, 200, """VA phase A""") +VAphB = froniusreg.FroniusReg(40095, froniusreg.int16, 200, """VA phase B""") +VAphC = froniusreg.FroniusReg(40096, froniusreg.int16, 200, """VA phase C""") +VA_SF = froniusreg.FroniusReg(40097, froniusreg.sunssf, 200, """Apparent Power scale factor""") +VAR = froniusreg.FroniusReg(40098, froniusreg.int16, 200, """Reactive Power""") +VARphA = froniusreg.FroniusReg(40099, froniusreg.int16, 200, """VAR phase A""") +VARphB = froniusreg.FroniusReg(40100, froniusreg.int16, 200, """VAR phase B""") +VARphC = froniusreg.FroniusReg(40101, froniusreg.int16, 200, """VAR phase C""") +VAR_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 200, """Reactive Power scale factor""") +PF = froniusreg.FroniusReg(40103, froniusreg.int16, 200, """Power Factor""") +PFphA = froniusreg.FroniusReg(40104, froniusreg.int16, 200, """PF phase A""") +PFphB = froniusreg.FroniusReg(40105, froniusreg.int16, 200, """PF phase B""") +PFphC = froniusreg.FroniusReg(40106, froniusreg.int16, 200, """PF phase C""") +PF_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 200, """Power Factor scale factor""") +TotWhExp = froniusreg.FroniusReg(40108, froniusreg.acc32, 200, """Total Real Energy Exported""") +TotWhExpPhA = froniusreg.FroniusReg(40110, froniusreg.acc32, 200, """Total Watt-hours Exported phase A""") +TotWhExpPhB = froniusreg.FroniusReg(40112, froniusreg.acc32, 200, """Total Watt-hours Exported phase B""") +TotWhExpPhC = froniusreg.FroniusReg(40114, froniusreg.acc32, 200, """Total Watt-hours Exported phase C""") +TotWhImp = froniusreg.FroniusReg(40116, froniusreg.acc32, 200, """Total Real Energy Imported""") +TotWhImpPhA = froniusreg.FroniusReg(40118, froniusreg.acc32, 200, """Total Watt-hours Imported phase A""") +TotWhImpPhB = froniusreg.FroniusReg(40120, froniusreg.acc32, 200, """Total Watt-hours Imported phase B""") +TotWhImpPhC = froniusreg.FroniusReg(40122, froniusreg.acc32, 200, """Total Watt-hours Imported phase C""") +TotWh_SF = froniusreg.FroniusReg(40124, froniusreg.sunssf, 200, """Real Energy scale factor""") +TotVAhExp = froniusreg.FroniusReg(40125, froniusreg.acc32, 200, """Total Apparent Energy Exported""") +TotVAhExpPhA = froniusreg.FroniusReg(40127, froniusreg.acc32, 200, """Total VA-hours Exported phase A""") +TotVAhExpPhB = froniusreg.FroniusReg(40129, froniusreg.acc32, 200, """Total VA-hours Exported phase B""") +TotVAhExpPhC = froniusreg.FroniusReg(40131, froniusreg.acc32, 200, """Total VA-hours Exported phase C""") +TotVAhImp = froniusreg.FroniusReg(40133, froniusreg.acc32, 200, """Total Apparent Energy Imported""") +TotVAhImpPhA = froniusreg.FroniusReg(40135, froniusreg.acc32, 200, """Total VA-hours Imported phase A""") +TotVAhImpPhB = froniusreg.FroniusReg(40137, froniusreg.acc32, 200, """Total VA-hours Imported phase B""") +TotVAhImpPhC = froniusreg.FroniusReg(40139, froniusreg.acc32, 200, """Total VA-hours Imported phase C""") +TotVAh_SF = froniusreg.FroniusReg(40141, froniusreg.sunssf, 200, """Apparent Energy scale factor""") +Evt = froniusreg.FroniusReg(40175, froniusreg.bitfield32, 200, """Meter Event Flags""") +ID = froniusreg.FroniusReg(40177, froniusreg.uint16, 200, """Identifies this as End block""") +L = froniusreg.FroniusReg(40178, froniusreg.uint16, 200, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPhV = froniusreg.ScaledFroniusReg(PhV, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledPPV = froniusreg.ScaledFroniusReg(PPV, V_SF) +scaledPhVphAB = froniusreg.ScaledFroniusReg(PhVphAB, V_SF) +scaledPhVphBC = froniusreg.ScaledFroniusReg(PhVphBC, V_SF) +scaledPhVphCA = froniusreg.ScaledFroniusReg(PhVphCA, V_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledWphA = froniusreg.ScaledFroniusReg(WphA, W_SF) +scaledWphB = froniusreg.ScaledFroniusReg(WphB, W_SF) +scaledWphC = froniusreg.ScaledFroniusReg(WphC, W_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAphA = froniusreg.ScaledFroniusReg(VAphA, VA_SF) +scaledVAphB = froniusreg.ScaledFroniusReg(VAphB, VA_SF) +scaledVAphC = froniusreg.ScaledFroniusReg(VAphC, VA_SF) +scaledVAR = froniusreg.ScaledFroniusReg(VAR, VAR_SF) +scaledVARphA = froniusreg.ScaledFroniusReg(VARphA, VAR_SF) +scaledVARphB = froniusreg.ScaledFroniusReg(VARphB, VAR_SF) +scaledVARphC = froniusreg.ScaledFroniusReg(VARphC, VAR_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledPFphA = froniusreg.ScaledFroniusReg(PFphA, PF_SF) +scaledPFphB = froniusreg.ScaledFroniusReg(PFphB, PF_SF) +scaledPFphC = froniusreg.ScaledFroniusReg(PFphC, PF_SF) +scaledTotWhExp = froniusreg.ScaledFroniusReg(TotWhExp, TotWh_SF) +scaledTotWhExpPhA = froniusreg.ScaledFroniusReg(TotWhExpPhA, TotWh_SF) +scaledTotWhExpPhB = froniusreg.ScaledFroniusReg(TotWhExpPhB, TotWh_SF) +scaledTotWhExpPhC = froniusreg.ScaledFroniusReg(TotWhExpPhC, TotWh_SF) +scaledTotWhImp = froniusreg.ScaledFroniusReg(TotWhImp, TotWh_SF) +scaledTotWhImpPhA = froniusreg.ScaledFroniusReg(TotWhImpPhA, TotWh_SF) +scaledTotWhImpPhB = froniusreg.ScaledFroniusReg(TotWhImpPhB, TotWh_SF) +scaledTotWhImpPhC = froniusreg.ScaledFroniusReg(TotWhImpPhC, TotWh_SF) +scaledTotVAhExp = froniusreg.ScaledFroniusReg(TotVAhExp, TotVAh_SF) +scaledTotVAhExpPhA = froniusreg.ScaledFroniusReg(TotVAhExpPhA, TotVAh_SF) +scaledTotVAhExpPhB = froniusreg.ScaledFroniusReg(TotVAhExpPhB, TotVAh_SF) +scaledTotVAhExpPhC = froniusreg.ScaledFroniusReg(TotVAhExpPhC, TotVAh_SF) +scaledTotVAhImp = froniusreg.ScaledFroniusReg(TotVAhImp, TotVAh_SF) +scaledTotVAhImpPhA = froniusreg.ScaledFroniusReg(TotVAhImpPhA, TotVAh_SF) +scaledTotVAhImpPhB = froniusreg.ScaledFroniusReg(TotVAhImpPhB, TotVAh_SF) +scaledTotVAhImpPhC = froniusreg.ScaledFroniusReg(TotVAhImpPhC, TotVAh_SF) diff --git a/src/pyfroniusreg/tauro_eco_inverter_register_map_float.py b/src/pyfroniusreg/tauro_eco_inverter_register_map_float.py new file mode 100644 index 0000000..4fd4515 --- /dev/null +++ b/src/pyfroniusreg/tauro_eco_inverter_register_map_float.py @@ -0,0 +1,161 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (113)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (113)""") +A = froniusreg.FroniusReg(40072, froniusreg.float32, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40074, froniusreg.float32, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40076, froniusreg.float32, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40078, froniusreg.float32, 1, """Phase C Current""") +PPVphAB = froniusreg.FroniusReg(40080, froniusreg.float32, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40082, froniusreg.float32, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40084, froniusreg.float32, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40086, froniusreg.float32, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40088, froniusreg.float32, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40090, froniusreg.float32, 1, """Phase Voltage CN""") +W = froniusreg.FroniusReg(40092, froniusreg.float32, 1, """AC Power""") +Hz = froniusreg.FroniusReg(40094, froniusreg.float32, 1, """Line Frequency""") +VA = froniusreg.FroniusReg(40096, froniusreg.float32, 1, """AC Apparent Power""") +VAr = froniusreg.FroniusReg(40098, froniusreg.float32, 1, """AC Reactive Power""") +PF = froniusreg.FroniusReg(40100, froniusreg.float32, 1, """AC Power Factor""") +WH = froniusreg.FroniusReg(40102, froniusreg.float32, 1, """AC Energy""") +DCA = froniusreg.FroniusReg(40104, froniusreg.float32, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40106, froniusreg.float32, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40108, froniusreg.float32, 1, """DC Power""") +TmpCab = froniusreg.FroniusReg(40110, froniusreg.float32, 1, """Cabinet Temperature""") +St = froniusreg.FroniusReg(40118, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40119, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40120, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40122, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40124, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40126, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40132, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40133, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40134, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40135, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40136, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40137, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40138, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40140, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40141, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40142, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40143, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40144, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40145, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40146, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40147, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40148, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40149, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40150, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40159, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40160, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40161, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40162, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40163, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40167, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40168, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40169, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40170, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40171, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40173, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40174, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40175, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40176, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40182, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40183, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40184, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40185, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40186, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40187, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40189, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40192, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40193, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40194, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40195, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40196, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40197, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40227, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40229, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40233, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40237, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40238, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40243, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40244, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40245, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40247, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40248, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40249, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40250, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40251, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40252, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40254, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40256, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40257, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40258, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40259, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40260, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40261, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40262, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40263, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40265, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40266, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40267, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40268, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40269, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40272, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40275, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40283, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40286, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40288, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40295, froniusreg.uint16, 1, """Length of model block""") +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/tauro_eco_inverter_register_map_int&sf.py b/src/pyfroniusreg/tauro_eco_inverter_register_map_int&sf.py new file mode 100644 index 0000000..104eb59 --- /dev/null +++ b/src/pyfroniusreg/tauro_eco_inverter_register_map_int&sf.py @@ -0,0 +1,193 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (103)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (103)""") +A = froniusreg.FroniusReg(40072, froniusreg.uint16, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.uint16, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.uint16, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.uint16, 1, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 1, """nan""") +PPVphAB = froniusreg.FroniusReg(40077, froniusreg.uint16, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40078, froniusreg.uint16, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40079, froniusreg.uint16, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40080, froniusreg.uint16, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40081, froniusreg.uint16, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40082, froniusreg.uint16, 1, """Phase Voltage CN""") +V_SF = froniusreg.FroniusReg(40083, froniusreg.sunssf, 1, """nan""") +W = froniusreg.FroniusReg(40084, froniusreg.int16, 1, """AC Power""") +W_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 1, """nan""") +Hz = froniusreg.FroniusReg(40086, froniusreg.uint16, 1, """Line Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 1, """nan""") +VA = froniusreg.FroniusReg(40088, froniusreg.int16, 1, """AC Apparent Power""") +VA_SF = froniusreg.FroniusReg(40089, froniusreg.sunssf, 1, """nan""") +VAr = froniusreg.FroniusReg(40090, froniusreg.int16, 1, """AC Reactive Power""") +VAr_SF = froniusreg.FroniusReg(40091, froniusreg.sunssf, 1, """nan""") +PF = froniusreg.FroniusReg(40092, froniusreg.int16, 1, """AC Power Factor""") +PF_SF = froniusreg.FroniusReg(40093, froniusreg.sunssf, 1, """nan""") +WH = froniusreg.FroniusReg(40094, froniusreg.acc32, 1, """AC Energy""") +WH_SF = froniusreg.FroniusReg(40096, froniusreg.sunssf, 1, """nan""") +DCA = froniusreg.FroniusReg(40097, froniusreg.uint16, 1, """DC Current""") +DCA_SF = froniusreg.FroniusReg(40098, froniusreg.sunssf, 1, """nan""") +DCV = froniusreg.FroniusReg(40099, froniusreg.uint16, 1, """DC Voltage""") +DCV_SF = froniusreg.FroniusReg(40100, froniusreg.sunssf, 1, """nan""") +DCW = froniusreg.FroniusReg(40101, froniusreg.int16, 1, """DC Power""") +DCW_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 1, """nan""") +TmpCab = froniusreg.FroniusReg(40103, froniusreg.int16, 1, """Cabinet Temperature""") +Tmp_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 1, """nan""") +St = froniusreg.FroniusReg(40108, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40109, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40110, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40112, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40114, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40116, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40122, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40123, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40124, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40125, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40126, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40127, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40128, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40129, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40130, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40131, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40132, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40133, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40134, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40135, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40136, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40137, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40138, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40140, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40149, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40150, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40152, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40154, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40158, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40159, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40160, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40161, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40163, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40165, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40166, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40172, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40173, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40174, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40175, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40176, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40177, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40179, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40182, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40183, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40184, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40185, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40186, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40187, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40217, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40219, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40223, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40226, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40227, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40228, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40229, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40230, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40231, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40232, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40233, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40234, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40235, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40237, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40238, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40244, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40247, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40248, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40249, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40250, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40251, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40252, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40253, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40254, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40255, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40256, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40257, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40258, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40259, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40262, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40265, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40275, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40276, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40278, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPPVphAB = froniusreg.ScaledFroniusReg(PPVphAB, V_SF) +scaledPPVphBC = froniusreg.ScaledFroniusReg(PPVphBC, V_SF) +scaledPPVphCA = froniusreg.ScaledFroniusReg(PPVphCA, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAr = froniusreg.ScaledFroniusReg(VAr, VAr_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledWH = froniusreg.ScaledFroniusReg(WH, WH_SF) +scaledDCA = froniusreg.ScaledFroniusReg(DCA, DCA_SF) +scaledDCV = froniusreg.ScaledFroniusReg(DCV, DCV_SF) +scaledDCW = froniusreg.ScaledFroniusReg(DCW, DCW_SF) +scaledTmpCab = froniusreg.ScaledFroniusReg(TmpCab, Tmp_SF) +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/tauro_inverter_register_map_float.py b/src/pyfroniusreg/tauro_inverter_register_map_float.py new file mode 100644 index 0000000..30241b5 --- /dev/null +++ b/src/pyfroniusreg/tauro_inverter_register_map_float.py @@ -0,0 +1,183 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (113)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (113)""") +A = froniusreg.FroniusReg(40072, froniusreg.float32, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40074, froniusreg.float32, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40076, froniusreg.float32, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40078, froniusreg.float32, 1, """Phase C Current""") +PPVphAB = froniusreg.FroniusReg(40080, froniusreg.float32, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40082, froniusreg.float32, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40084, froniusreg.float32, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40086, froniusreg.float32, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40088, froniusreg.float32, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40090, froniusreg.float32, 1, """Phase Voltage CN""") +W = froniusreg.FroniusReg(40092, froniusreg.float32, 1, """AC Power""") +Hz = froniusreg.FroniusReg(40094, froniusreg.float32, 1, """Line Frequency""") +VA = froniusreg.FroniusReg(40096, froniusreg.float32, 1, """AC Apparent Power""") +VAr = froniusreg.FroniusReg(40098, froniusreg.float32, 1, """AC Reactive Power""") +PF = froniusreg.FroniusReg(40100, froniusreg.float32, 1, """AC Power Factor""") +WH = froniusreg.FroniusReg(40102, froniusreg.float32, 1, """AC Energy""") +DCA = froniusreg.FroniusReg(40104, froniusreg.float32, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40106, froniusreg.float32, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40108, froniusreg.float32, 1, """DC Power""") +TmpCab = froniusreg.FroniusReg(40110, froniusreg.float32, 1, """Cabinet Temperature""") +St = froniusreg.FroniusReg(40118, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40119, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40120, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40122, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40124, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40126, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40132, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40133, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40134, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40135, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40136, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40137, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40138, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40140, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40141, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40142, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40143, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40144, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40145, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40146, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40147, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40148, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40149, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40150, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40159, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40160, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40161, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40162, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40163, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40167, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40168, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40169, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40170, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40171, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40173, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40174, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40175, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40176, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40182, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40183, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40184, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40185, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40186, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40187, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40189, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40192, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40193, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40194, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40195, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40196, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40197, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40227, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40229, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40233, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40237, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40238, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40243, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40244, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40245, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40247, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40248, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40249, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40250, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40251, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40252, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40254, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40256, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40257, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40258, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40259, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40260, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40261, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40262, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40263, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40265, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40266, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40267, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40268, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40269, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40272, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40275, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40283, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40286, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40288, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40295, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40303, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40305, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40306, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40308, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40315, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40323, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40325, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40326, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40328, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40334, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40335, froniusreg.uint16, 1, """Length of model block""") +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/tauro_inverter_register_map_int&sf.py b/src/pyfroniusreg/tauro_inverter_register_map_int&sf.py new file mode 100644 index 0000000..bafda69 --- /dev/null +++ b/src/pyfroniusreg/tauro_inverter_register_map_int&sf.py @@ -0,0 +1,213 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (103)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (103)""") +A = froniusreg.FroniusReg(40072, froniusreg.uint16, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.uint16, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.uint16, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.uint16, 1, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 1, """nan""") +PPVphAB = froniusreg.FroniusReg(40077, froniusreg.uint16, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40078, froniusreg.uint16, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40079, froniusreg.uint16, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40080, froniusreg.uint16, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40081, froniusreg.uint16, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40082, froniusreg.uint16, 1, """Phase Voltage CN""") +V_SF = froniusreg.FroniusReg(40083, froniusreg.sunssf, 1, """nan""") +W = froniusreg.FroniusReg(40084, froniusreg.int16, 1, """AC Power""") +W_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 1, """nan""") +Hz = froniusreg.FroniusReg(40086, froniusreg.uint16, 1, """Line Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 1, """nan""") +VA = froniusreg.FroniusReg(40088, froniusreg.int16, 1, """AC Apparent Power""") +VA_SF = froniusreg.FroniusReg(40089, froniusreg.sunssf, 1, """nan""") +VAr = froniusreg.FroniusReg(40090, froniusreg.int16, 1, """AC Reactive Power""") +VAr_SF = froniusreg.FroniusReg(40091, froniusreg.sunssf, 1, """nan""") +PF = froniusreg.FroniusReg(40092, froniusreg.int16, 1, """AC Power Factor""") +PF_SF = froniusreg.FroniusReg(40093, froniusreg.sunssf, 1, """nan""") +WH = froniusreg.FroniusReg(40094, froniusreg.acc32, 1, """AC Energy""") +WH_SF = froniusreg.FroniusReg(40096, froniusreg.sunssf, 1, """nan""") +DCA = froniusreg.FroniusReg(40097, froniusreg.uint16, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40099, froniusreg.uint16, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40101, froniusreg.int16, 1, """DC Power""") +DCW_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 1, """nan""") +TmpCab = froniusreg.FroniusReg(40103, froniusreg.int16, 1, """Cabinet Temperature""") +Tmp_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 1, """nan""") +St = froniusreg.FroniusReg(40108, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40109, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40110, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40112, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40114, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40116, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40122, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40123, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40124, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40125, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40126, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40127, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40128, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40129, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40130, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40131, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40132, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40133, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40134, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40135, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40136, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40137, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40138, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40140, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40149, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40150, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40152, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40154, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40158, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40159, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40160, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40161, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40163, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40165, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40166, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40172, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40173, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40174, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40175, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40176, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40177, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40179, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40182, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40183, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40184, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40185, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40186, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40187, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40217, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40219, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40223, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40226, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40227, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40228, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40229, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40230, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40231, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40232, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40233, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40234, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40235, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40237, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40238, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40244, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40247, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40248, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40249, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40250, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40251, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40252, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40253, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40254, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40255, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40256, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40257, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40258, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40259, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40262, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40265, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40275, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40276, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40278, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40285, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40293, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40295, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40296, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40298, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40305, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40313, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40315, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40316, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40318, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40325, froniusreg.uint16, 1, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPPVphAB = froniusreg.ScaledFroniusReg(PPVphAB, V_SF) +scaledPPVphBC = froniusreg.ScaledFroniusReg(PPVphBC, V_SF) +scaledPPVphCA = froniusreg.ScaledFroniusReg(PPVphCA, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAr = froniusreg.ScaledFroniusReg(VAr, VAr_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledWH = froniusreg.ScaledFroniusReg(WH, WH_SF) +scaledDCA = froniusreg.ScaledFroniusReg(DCA, DCA_SF) +scaledDCV = froniusreg.ScaledFroniusReg(DCV, DCV_SF) +scaledDCW = froniusreg.ScaledFroniusReg(DCW, DCW_SF) +scaledTmpCab = froniusreg.ScaledFroniusReg(TmpCab, Tmp_SF) +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/verto_inverter_register_map_3mppt_float.py b/src/pyfroniusreg/verto_inverter_register_map_3mppt_float.py new file mode 100644 index 0000000..30241b5 --- /dev/null +++ b/src/pyfroniusreg/verto_inverter_register_map_3mppt_float.py @@ -0,0 +1,183 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (113)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (113)""") +A = froniusreg.FroniusReg(40072, froniusreg.float32, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40074, froniusreg.float32, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40076, froniusreg.float32, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40078, froniusreg.float32, 1, """Phase C Current""") +PPVphAB = froniusreg.FroniusReg(40080, froniusreg.float32, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40082, froniusreg.float32, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40084, froniusreg.float32, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40086, froniusreg.float32, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40088, froniusreg.float32, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40090, froniusreg.float32, 1, """Phase Voltage CN""") +W = froniusreg.FroniusReg(40092, froniusreg.float32, 1, """AC Power""") +Hz = froniusreg.FroniusReg(40094, froniusreg.float32, 1, """Line Frequency""") +VA = froniusreg.FroniusReg(40096, froniusreg.float32, 1, """AC Apparent Power""") +VAr = froniusreg.FroniusReg(40098, froniusreg.float32, 1, """AC Reactive Power""") +PF = froniusreg.FroniusReg(40100, froniusreg.float32, 1, """AC Power Factor""") +WH = froniusreg.FroniusReg(40102, froniusreg.float32, 1, """AC Energy""") +DCA = froniusreg.FroniusReg(40104, froniusreg.float32, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40106, froniusreg.float32, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40108, froniusreg.float32, 1, """DC Power""") +TmpCab = froniusreg.FroniusReg(40110, froniusreg.float32, 1, """Cabinet Temperature""") +St = froniusreg.FroniusReg(40118, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40119, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40120, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40122, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40124, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40126, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40132, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40133, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40134, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40135, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40136, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40137, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40138, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40140, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40141, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40142, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40143, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40144, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40145, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40146, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40147, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40148, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40149, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40150, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40159, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40160, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40161, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40162, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40163, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40167, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40168, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40169, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40170, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40171, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40173, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40174, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40175, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40176, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40182, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40183, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40184, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40185, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40186, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40187, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40189, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40192, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40193, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40194, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40195, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40196, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40197, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40227, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40229, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40233, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40237, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40238, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40243, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40244, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40245, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40247, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40248, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40249, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40250, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40251, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40252, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40254, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40256, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40257, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40258, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40259, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40260, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40261, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40262, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40263, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40265, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40266, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40267, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40268, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40269, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40272, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40275, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40283, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40286, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40288, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40295, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40303, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40305, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40306, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40308, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40315, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40323, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40325, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40326, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40328, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40334, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40335, froniusreg.uint16, 1, """Length of model block""") +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/verto_inverter_register_map_3mppt_int&sf.py b/src/pyfroniusreg/verto_inverter_register_map_3mppt_int&sf.py new file mode 100644 index 0000000..bafda69 --- /dev/null +++ b/src/pyfroniusreg/verto_inverter_register_map_3mppt_int&sf.py @@ -0,0 +1,213 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (103)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (103)""") +A = froniusreg.FroniusReg(40072, froniusreg.uint16, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.uint16, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.uint16, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.uint16, 1, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 1, """nan""") +PPVphAB = froniusreg.FroniusReg(40077, froniusreg.uint16, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40078, froniusreg.uint16, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40079, froniusreg.uint16, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40080, froniusreg.uint16, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40081, froniusreg.uint16, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40082, froniusreg.uint16, 1, """Phase Voltage CN""") +V_SF = froniusreg.FroniusReg(40083, froniusreg.sunssf, 1, """nan""") +W = froniusreg.FroniusReg(40084, froniusreg.int16, 1, """AC Power""") +W_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 1, """nan""") +Hz = froniusreg.FroniusReg(40086, froniusreg.uint16, 1, """Line Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 1, """nan""") +VA = froniusreg.FroniusReg(40088, froniusreg.int16, 1, """AC Apparent Power""") +VA_SF = froniusreg.FroniusReg(40089, froniusreg.sunssf, 1, """nan""") +VAr = froniusreg.FroniusReg(40090, froniusreg.int16, 1, """AC Reactive Power""") +VAr_SF = froniusreg.FroniusReg(40091, froniusreg.sunssf, 1, """nan""") +PF = froniusreg.FroniusReg(40092, froniusreg.int16, 1, """AC Power Factor""") +PF_SF = froniusreg.FroniusReg(40093, froniusreg.sunssf, 1, """nan""") +WH = froniusreg.FroniusReg(40094, froniusreg.acc32, 1, """AC Energy""") +WH_SF = froniusreg.FroniusReg(40096, froniusreg.sunssf, 1, """nan""") +DCA = froniusreg.FroniusReg(40097, froniusreg.uint16, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40099, froniusreg.uint16, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40101, froniusreg.int16, 1, """DC Power""") +DCW_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 1, """nan""") +TmpCab = froniusreg.FroniusReg(40103, froniusreg.int16, 1, """Cabinet Temperature""") +Tmp_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 1, """nan""") +St = froniusreg.FroniusReg(40108, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40109, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40110, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40112, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40114, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40116, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40122, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40123, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40124, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40125, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40126, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40127, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40128, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40129, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40130, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40131, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40132, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40133, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40134, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40135, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40136, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40137, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40138, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40140, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40149, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40150, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40152, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40154, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40158, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40159, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40160, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40161, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40163, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40165, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40166, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40172, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40173, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40174, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40175, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40176, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40177, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40179, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40182, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40183, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40184, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40185, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40186, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40187, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40217, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40219, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40223, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40226, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40227, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40228, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40229, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40230, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40231, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40232, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40233, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40234, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40235, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40237, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40238, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40244, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40247, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40248, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40249, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40250, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40251, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40252, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40253, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40254, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40255, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40256, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40257, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40258, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40259, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40262, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40265, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40275, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40276, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40278, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40285, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40293, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40295, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40296, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40298, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40305, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40313, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40315, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40316, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40318, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40325, froniusreg.uint16, 1, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPPVphAB = froniusreg.ScaledFroniusReg(PPVphAB, V_SF) +scaledPPVphBC = froniusreg.ScaledFroniusReg(PPVphBC, V_SF) +scaledPPVphCA = froniusreg.ScaledFroniusReg(PPVphCA, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAr = froniusreg.ScaledFroniusReg(VAr, VAr_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledWH = froniusreg.ScaledFroniusReg(WH, WH_SF) +scaledDCA = froniusreg.ScaledFroniusReg(DCA, DCA_SF) +scaledDCV = froniusreg.ScaledFroniusReg(DCV, DCV_SF) +scaledDCW = froniusreg.ScaledFroniusReg(DCW, DCW_SF) +scaledTmpCab = froniusreg.ScaledFroniusReg(TmpCab, Tmp_SF) +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/verto_inverter_register_map_4mppt_float.py b/src/pyfroniusreg/verto_inverter_register_map_4mppt_float.py new file mode 100644 index 0000000..4356bc6 --- /dev/null +++ b/src/pyfroniusreg/verto_inverter_register_map_4mppt_float.py @@ -0,0 +1,194 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (113)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (113)""") +A = froniusreg.FroniusReg(40072, froniusreg.float32, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40074, froniusreg.float32, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40076, froniusreg.float32, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40078, froniusreg.float32, 1, """Phase C Current""") +PPVphAB = froniusreg.FroniusReg(40080, froniusreg.float32, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40082, froniusreg.float32, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40084, froniusreg.float32, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40086, froniusreg.float32, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40088, froniusreg.float32, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40090, froniusreg.float32, 1, """Phase Voltage CN""") +W = froniusreg.FroniusReg(40092, froniusreg.float32, 1, """AC Power""") +Hz = froniusreg.FroniusReg(40094, froniusreg.float32, 1, """Line Frequency""") +VA = froniusreg.FroniusReg(40096, froniusreg.float32, 1, """AC Apparent Power""") +VAr = froniusreg.FroniusReg(40098, froniusreg.float32, 1, """AC Reactive Power""") +PF = froniusreg.FroniusReg(40100, froniusreg.float32, 1, """AC Power Factor""") +WH = froniusreg.FroniusReg(40102, froniusreg.float32, 1, """AC Energy""") +DCA = froniusreg.FroniusReg(40104, froniusreg.float32, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40106, froniusreg.float32, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40108, froniusreg.float32, 1, """DC Power""") +TmpCab = froniusreg.FroniusReg(40110, froniusreg.float32, 1, """Cabinet Temperature""") +St = froniusreg.FroniusReg(40118, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40119, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40120, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40122, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40124, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40126, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40132, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40133, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40134, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40135, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40136, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40137, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40138, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40140, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40141, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40142, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40143, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40144, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40145, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40146, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40147, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40148, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40149, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40150, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40159, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40160, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40161, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40162, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40163, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40167, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40168, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40169, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40170, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40171, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40173, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40174, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40175, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40176, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40182, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40183, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40184, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40185, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40186, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40187, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40189, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40192, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40193, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40194, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40195, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40196, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40197, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40227, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40229, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40233, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40237, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40238, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40243, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40244, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40245, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40247, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40248, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40249, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40250, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40251, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40252, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40254, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40256, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40257, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40258, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40259, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40260, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40261, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40262, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40263, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40265, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40266, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40267, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40268, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40269, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40272, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40275, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40283, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40285, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40286, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40288, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40295, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40303, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40305, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40306, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40308, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40315, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40323, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40325, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40326, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40328, froniusreg.uint32, 1, """Timestamp""") +module_4_ID = froniusreg.FroniusReg(40334, froniusreg.uint16, 1, """Input ID""") +module_4_IDStr = froniusreg.FroniusReg(40335, froniusreg.string8, 1, """Input ID Sting""") +module_4_DCA = froniusreg.FroniusReg(40343, froniusreg.uint16, 1, """DC Current""") +module_4_DCV = froniusreg.FroniusReg(40344, froniusreg.uint16, 1, """DC Voltage""") +module_4_DCW = froniusreg.FroniusReg(40345, froniusreg.uint16, 1, """DC Power""") +module_4_DCWH = froniusreg.FroniusReg(40346, froniusreg.acc32, 1, """Lifetime Energy""") +module_4_Tms = froniusreg.FroniusReg(40348, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40354, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40355, froniusreg.uint16, 1, """Length of model block""") +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) +scaledmodule_4_DCA = froniusreg.ScaledFroniusReg(module_4_DCA, DCA_SF) +scaledmodule_4_DCV = froniusreg.ScaledFroniusReg(module_4_DCV, DCV_SF) +scaledmodule_4_DCW = froniusreg.ScaledFroniusReg(module_4_DCW, DCW_SF) +scaledmodule_4_DCWH = froniusreg.ScaledFroniusReg(module_4_DCWH, DCWH_SF) diff --git a/src/pyfroniusreg/verto_inverter_register_map_4mppt_int&sf.py b/src/pyfroniusreg/verto_inverter_register_map_4mppt_int&sf.py new file mode 100644 index 0000000..cfb2f02 --- /dev/null +++ b/src/pyfroniusreg/verto_inverter_register_map_4mppt_int&sf.py @@ -0,0 +1,224 @@ +from pyfroniusreg import froniusreg + +SID = froniusreg.FroniusReg(40001, froniusreg.uint32, 1, """Well-known value. Uniquely identifies this as a SunSpec Modbus Map""") +ID = froniusreg.FroniusReg(40003, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model common (1)""") +L = froniusreg.FroniusReg(40004, froniusreg.uint16, 1, """Length of sunspec model common (1)""") +Mn = froniusreg.FroniusReg(40005, froniusreg.string16, 1, """Manufacturer""") +Md = froniusreg.FroniusReg(40021, froniusreg.string16, 1, """Device""") +Vr = froniusreg.FroniusReg(40045, froniusreg.string8, 1, """SW version of inverter""") +SN = froniusreg.FroniusReg(40053, froniusreg.string16, 1, """Serialnumber of the inverter""") +DA = froniusreg.FroniusReg(40069, froniusreg.uint16, 1, """Modbus Device Address""") +ID = froniusreg.FroniusReg(40070, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model inverter (103)""") +L = froniusreg.FroniusReg(40071, froniusreg.uint16, 1, """Length of sunspec model inverter (103)""") +A = froniusreg.FroniusReg(40072, froniusreg.uint16, 1, """AC Current""") +AphA = froniusreg.FroniusReg(40073, froniusreg.uint16, 1, """Phase A Current""") +AphB = froniusreg.FroniusReg(40074, froniusreg.uint16, 1, """Phase B Current""") +AphC = froniusreg.FroniusReg(40075, froniusreg.uint16, 1, """Phase C Current""") +A_SF = froniusreg.FroniusReg(40076, froniusreg.sunssf, 1, """nan""") +PPVphAB = froniusreg.FroniusReg(40077, froniusreg.uint16, 1, """Phase Voltage AB""") +PPVphBC = froniusreg.FroniusReg(40078, froniusreg.uint16, 1, """Phase Voltage BC""") +PPVphCA = froniusreg.FroniusReg(40079, froniusreg.uint16, 1, """Phase Voltage CA""") +PhVphA = froniusreg.FroniusReg(40080, froniusreg.uint16, 1, """Phase Voltage AN""") +PhVphB = froniusreg.FroniusReg(40081, froniusreg.uint16, 1, """Phase Voltage BN""") +PhVphC = froniusreg.FroniusReg(40082, froniusreg.uint16, 1, """Phase Voltage CN""") +V_SF = froniusreg.FroniusReg(40083, froniusreg.sunssf, 1, """nan""") +W = froniusreg.FroniusReg(40084, froniusreg.int16, 1, """AC Power""") +W_SF = froniusreg.FroniusReg(40085, froniusreg.sunssf, 1, """nan""") +Hz = froniusreg.FroniusReg(40086, froniusreg.uint16, 1, """Line Frequency""") +Hz_SF = froniusreg.FroniusReg(40087, froniusreg.sunssf, 1, """nan""") +VA = froniusreg.FroniusReg(40088, froniusreg.int16, 1, """AC Apparent Power""") +VA_SF = froniusreg.FroniusReg(40089, froniusreg.sunssf, 1, """nan""") +VAr = froniusreg.FroniusReg(40090, froniusreg.int16, 1, """AC Reactive Power""") +VAr_SF = froniusreg.FroniusReg(40091, froniusreg.sunssf, 1, """nan""") +PF = froniusreg.FroniusReg(40092, froniusreg.int16, 1, """AC Power Factor""") +PF_SF = froniusreg.FroniusReg(40093, froniusreg.sunssf, 1, """nan""") +WH = froniusreg.FroniusReg(40094, froniusreg.acc32, 1, """AC Energy""") +WH_SF = froniusreg.FroniusReg(40096, froniusreg.sunssf, 1, """nan""") +DCA = froniusreg.FroniusReg(40097, froniusreg.uint16, 1, """DC Current""") +DCV = froniusreg.FroniusReg(40099, froniusreg.uint16, 1, """DC Voltage""") +DCW = froniusreg.FroniusReg(40101, froniusreg.int16, 1, """DC Power""") +DCW_SF = froniusreg.FroniusReg(40102, froniusreg.sunssf, 1, """nan""") +TmpCab = froniusreg.FroniusReg(40103, froniusreg.int16, 1, """Cabinet Temperature""") +Tmp_SF = froniusreg.FroniusReg(40107, froniusreg.sunssf, 1, """nan""") +St = froniusreg.FroniusReg(40108, froniusreg.enum16, 1, """Enumerated value. Operating state""") +StVnd = froniusreg.FroniusReg(40109, froniusreg.enum16, 1, """Vendor specific operating state code""") +Evt1 = froniusreg.FroniusReg(40110, froniusreg.bitfield32, 1, """Bitmask value. Event fields""") +Evt2 = froniusreg.FroniusReg(40112, froniusreg.bitfield32, 1, """Reserved for future use""") +EvtVnd1 = froniusreg.FroniusReg(40114, froniusreg.bitfield32, 1, """Vendor defined events""") +EvtVnd2 = froniusreg.FroniusReg(40116, froniusreg.bitfield32, 1, """Vendor defined events""") +ID = froniusreg.FroniusReg(40122, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model nameplate (120)""") +L = froniusreg.FroniusReg(40123, froniusreg.uint16, 1, """Length of sunspec model nameplate (120)""") +DERTyp = froniusreg.FroniusReg(40124, froniusreg.enum16, 1, """Type of DER device. Default value is 4 to indicate PV device.""") +WRtg = froniusreg.FroniusReg(40125, froniusreg.uint16, 1, """Continuous power output capability of the inverter.""") +WRtg_SF = froniusreg.FroniusReg(40126, froniusreg.sunssf, 1, """Scale factor""") +VARtg = froniusreg.FroniusReg(40127, froniusreg.uint16, 1, """Continuous Volt-Ampere capability of the inverter.""") +VARtg_SF = froniusreg.FroniusReg(40128, froniusreg.sunssf, 1, """Scale factor""") +VArRtgQ1 = froniusreg.FroniusReg(40129, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 1.""") +VArRtgQ2 = froniusreg.FroniusReg(40130, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 2.""") +VArRtgQ3 = froniusreg.FroniusReg(40131, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 3.""") +VArRtgQ4 = froniusreg.FroniusReg(40132, froniusreg.int16, 1, """Continuous VAR capability of the inverter in quadrant 4.""") +VArRtg_SF = froniusreg.FroniusReg(40133, froniusreg.sunssf, 1, """Scale factor""") +ARtg = froniusreg.FroniusReg(40134, froniusreg.uint16, 1, """Maximum RMS AC current level capability of the inverter.""") +ARtg_SF = froniusreg.FroniusReg(40135, froniusreg.sunssf, 1, """Scale factor""") +PFRtgQ1 = froniusreg.FroniusReg(40136, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 1.""") +PFRtgQ2 = froniusreg.FroniusReg(40137, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 2.""") +PFRtgQ3 = froniusreg.FroniusReg(40138, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 3.""") +PFRtgQ4 = froniusreg.FroniusReg(40139, froniusreg.int16, 1, """Minimum power factor capability of the inverter in quadrant 4.""") +PFRtg_SF = froniusreg.FroniusReg(40140, froniusreg.sunssf, 1, """Scale factor""") +Pad = froniusreg.FroniusReg(40149, froniusreg.pad, 1, """Pad register.""") +ID = froniusreg.FroniusReg(40150, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model settings (121)""") +L = froniusreg.FroniusReg(40151, froniusreg.uint16, 1, """Length of sunspec model settings (121)""") +WMax = froniusreg.FroniusReg(40152, froniusreg.uint16, 1, """Setting for maximum power output. Default to WRtg.""") +VRef = froniusreg.FroniusReg(40153, froniusreg.uint16, 1, """Voltage at the PCC.""") +VRefOfs = froniusreg.FroniusReg(40154, froniusreg.int16, 1, """Offset from PCC to inverter.""") +VAMax = froniusreg.FroniusReg(40157, froniusreg.uint16, 1, """Setpoint for maximum apparent power. Default to VARtg.""") +VArMaxQ1 = froniusreg.FroniusReg(40158, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 1. Default to VArRtgQ1.""") +VArMaxQ2 = froniusreg.FroniusReg(40159, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 2. Default to VArRtgQ2.""") +VArMaxQ3 = froniusreg.FroniusReg(40160, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 3. Default to VArRtgQ3.""") +VArMaxQ4 = froniusreg.FroniusReg(40161, froniusreg.int16, 1, """Setting for maximum reactive power in quadrant 4. Default to VArRtgQ4.""") +PFMinQ1 = froniusreg.FroniusReg(40163, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 1. Default to PFRtgQ1.""") +PFMinQ2 = froniusreg.FroniusReg(40164, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 2. Default to PFRtgQ2.""") +PFMinQ3 = froniusreg.FroniusReg(40165, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 3. Default to PFRtgQ3.""") +PFMinQ4 = froniusreg.FroniusReg(40166, froniusreg.int16, 1, """Setpoint for minimum power factor value in quadrant 4. Default to PFRtgQ4.""") +WMax_SF = froniusreg.FroniusReg(40172, froniusreg.sunssf, 1, """Scale factor for real power.""") +VRef_SF = froniusreg.FroniusReg(40173, froniusreg.sunssf, 1, """Scale factor for voltage at the PCC.""") +VRefOfs_SF = froniusreg.FroniusReg(40174, froniusreg.sunssf, 1, """Scale factor for offset voltage.""") +VMinMax_SF = froniusreg.FroniusReg(40175, froniusreg.sunssf, 1, """Scale factor for min/max voltages.""") +VAMax_SF = froniusreg.FroniusReg(40176, froniusreg.sunssf, 1, """Scale factor for apparent power.""") +VArMax_SF = froniusreg.FroniusReg(40177, froniusreg.sunssf, 1, """Scale factor for reactive power.""") +PFMin_SF = froniusreg.FroniusReg(40179, froniusreg.sunssf, 1, """Scale factor for minimum power factor.""") +ID = froniusreg.FroniusReg(40182, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model status (122)""") +L = froniusreg.FroniusReg(40183, froniusreg.uint16, 1, """Length of sunspec model status (122)""") +PVConn = froniusreg.FroniusReg(40184, froniusreg.bitfield16, 1, """PV inverter present/available status. Enumerated value.""") +StorConn = froniusreg.FroniusReg(40185, froniusreg.bitfield16, 1, """Storage inverter present/available status. Enumerated value.""") +ECPConn = froniusreg.FroniusReg(40186, froniusreg.bitfield16, 1, """ECP connection status: disconnected=0 connected=1.""") +ActWh = froniusreg.FroniusReg(40187, froniusreg.acc64, 1, """AC lifetime active (real) energy output.""") +StActCtl = froniusreg.FroniusReg(40217, froniusreg.bitfield32, 1, """Bit Mask indicating which inverter controls are currently active.""") +TmSrc = froniusreg.FroniusReg(40219, froniusreg.string4, 1, """Source of time synchronization.""") +Tms = froniusreg.FroniusReg(40223, froniusreg.uint32, 1, """Seconds since 01-01-2000 00:00 UTC""") +Ris = froniusreg.FroniusReg(40226, froniusreg.uint16, 1, """Isolation resistance.""") +Ris_SF = froniusreg.FroniusReg(40227, froniusreg.sunssf, 1, """Scale factor for isolation resistance.""") +ID = froniusreg.FroniusReg(40228, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model controls (123)""") +L = froniusreg.FroniusReg(40229, froniusreg.uint16, 1, """Length of sunspec model controls (123)""") +Conn_WinTms = froniusreg.FroniusReg(40230, froniusreg.uint16, 1, """Time window for connect/disconnect.""") +Conn_RvrtTms = froniusreg.FroniusReg(40231, froniusreg.uint16, 1, """Timeout period for connect/disconnect.""") +Conn = froniusreg.FroniusReg(40232, froniusreg.enum16, 1, """Enumerated valued. Connection control.""") +WMaxLimPct = froniusreg.FroniusReg(40233, froniusreg.uint16, 1, """Set power output to specified level.""") +WMaxLimPct_WinTms = froniusreg.FroniusReg(40234, froniusreg.uint16, 1, """Time window for power limit change.""") +WMaxLimPct_RvrtTms = froniusreg.FroniusReg(40235, froniusreg.uint16, 1, """Timeout period for power limit.""") +WMaxLimPct_RmpTms = froniusreg.FroniusReg(40236, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +WMaxLim_Ena = froniusreg.FroniusReg(40237, froniusreg.enum16, 1, """Enumerated valued. Throttle enable/disable control.""") +OutPFSet = froniusreg.FroniusReg(40238, froniusreg.int16, 1, """Set power factor to specific value - cosine of angle.""") +OutPFSet_WinTms = froniusreg.FroniusReg(40239, froniusreg.uint16, 1, """Time window for power factor change.""") +OutPFSet_RvrtTms = froniusreg.FroniusReg(40240, froniusreg.uint16, 1, """Timeout period for power factor.""") +OutPFSet_RmpTms = froniusreg.FroniusReg(40241, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +OutPFSet_Ena = froniusreg.FroniusReg(40242, froniusreg.enum16, 1, """Enumerated valued. Fixed power factor enable/disable control.""") +VArMaxPct = froniusreg.FroniusReg(40244, froniusreg.int16, 1, """Reactive power in percent of VArMax.""") +VArPct_WinTms = froniusreg.FroniusReg(40246, froniusreg.uint16, 1, """Time window for VAR limit change.""") +VArPct_RvrtTms = froniusreg.FroniusReg(40247, froniusreg.uint16, 1, """Timeout period for VAR limit.""") +VArPct_RmpTms = froniusreg.FroniusReg(40248, froniusreg.uint16, 1, """Ramp time for moving from current setpoint to new setpoint.""") +VArPct_Mod = froniusreg.FroniusReg(40249, froniusreg.enum16, 1, """Enumerated value. VAR percent limit mode.""") +VArPct_Ena = froniusreg.FroniusReg(40250, froniusreg.enum16, 1, """Enumerated valued. Percent limit VAr enable/disable control.""") +WMaxLimPct_SF = froniusreg.FroniusReg(40251, froniusreg.sunssf, 1, """Scale factor for power output percent.""") +OutPFSet_SF = froniusreg.FroniusReg(40252, froniusreg.sunssf, 1, """Scale factor for power factor.""") +VArPct_SF = froniusreg.FroniusReg(40253, froniusreg.sunssf, 1, """Scale factor for reactive power percent.""") +ID = froniusreg.FroniusReg(40254, froniusreg.uint16, 1, """Well-known value. Uniquely identifies this as a sunspec model mppt (160)""") +L = froniusreg.FroniusReg(40255, froniusreg.uint16, 1, """Length of sunspec model mppt (160)""") +DCA_SF = froniusreg.FroniusReg(40256, froniusreg.sunssf, 1, """Current Scale Factor""") +DCV_SF = froniusreg.FroniusReg(40257, froniusreg.sunssf, 1, """Voltage Scale Factor""") +DCW_SF = froniusreg.FroniusReg(40258, froniusreg.sunssf, 1, """Power Scale Factor""") +DCWH_SF = froniusreg.FroniusReg(40259, froniusreg.sunssf, 1, """Energy Scale Factor""") +N = froniusreg.FroniusReg(40262, froniusreg.count, 1, """Number of Modules""") +module_1_ID = froniusreg.FroniusReg(40264, froniusreg.uint16, 1, """Input ID""") +module_1_IDStr = froniusreg.FroniusReg(40265, froniusreg.string8, 1, """Input ID Sting""") +module_1_DCA = froniusreg.FroniusReg(40273, froniusreg.uint16, 1, """DC Current""") +module_1_DCV = froniusreg.FroniusReg(40274, froniusreg.uint16, 1, """DC Voltage""") +module_1_DCW = froniusreg.FroniusReg(40275, froniusreg.uint16, 1, """DC Power""") +module_1_DCWH = froniusreg.FroniusReg(40276, froniusreg.acc32, 1, """Lifetime Energy""") +module_1_Tms = froniusreg.FroniusReg(40278, froniusreg.uint32, 1, """Timestamp""") +module_2_ID = froniusreg.FroniusReg(40284, froniusreg.uint16, 1, """Input ID""") +module_2_IDStr = froniusreg.FroniusReg(40285, froniusreg.string8, 1, """Input ID Sting""") +module_2_DCA = froniusreg.FroniusReg(40293, froniusreg.uint16, 1, """DC Current""") +module_2_DCV = froniusreg.FroniusReg(40294, froniusreg.uint16, 1, """DC Voltage""") +module_2_DCW = froniusreg.FroniusReg(40295, froniusreg.uint16, 1, """DC Power""") +module_2_DCWH = froniusreg.FroniusReg(40296, froniusreg.acc32, 1, """Lifetime Energy""") +module_2_Tms = froniusreg.FroniusReg(40298, froniusreg.uint32, 1, """Timestamp""") +module_3_ID = froniusreg.FroniusReg(40304, froniusreg.uint16, 1, """Input ID""") +module_3_IDStr = froniusreg.FroniusReg(40305, froniusreg.string8, 1, """Input ID Sting""") +module_3_DCA = froniusreg.FroniusReg(40313, froniusreg.uint16, 1, """DC Current""") +module_3_DCV = froniusreg.FroniusReg(40314, froniusreg.uint16, 1, """DC Voltage""") +module_3_DCW = froniusreg.FroniusReg(40315, froniusreg.uint16, 1, """DC Power""") +module_3_DCWH = froniusreg.FroniusReg(40316, froniusreg.acc32, 1, """Lifetime Energy""") +module_3_Tms = froniusreg.FroniusReg(40318, froniusreg.uint32, 1, """Timestamp""") +module_4_ID = froniusreg.FroniusReg(40324, froniusreg.uint16, 1, """Input ID""") +module_4_IDStr = froniusreg.FroniusReg(40325, froniusreg.string8, 1, """Input ID Sting""") +module_4_DCA = froniusreg.FroniusReg(40333, froniusreg.uint16, 1, """DC Current""") +module_4_DCV = froniusreg.FroniusReg(40334, froniusreg.uint16, 1, """DC Voltage""") +module_4_DCW = froniusreg.FroniusReg(40335, froniusreg.uint16, 1, """DC Power""") +module_4_DCWH = froniusreg.FroniusReg(40336, froniusreg.acc32, 1, """Lifetime Energy""") +module_4_Tms = froniusreg.FroniusReg(40338, froniusreg.uint32, 1, """Timestamp""") +ID = froniusreg.FroniusReg(40344, froniusreg.uint16, 1, """Identifies this as End block""") +L = froniusreg.FroniusReg(40345, froniusreg.uint16, 1, """Length of model block""") +scaledA = froniusreg.ScaledFroniusReg(A, A_SF) +scaledAphA = froniusreg.ScaledFroniusReg(AphA, A_SF) +scaledAphB = froniusreg.ScaledFroniusReg(AphB, A_SF) +scaledAphC = froniusreg.ScaledFroniusReg(AphC, A_SF) +scaledPPVphAB = froniusreg.ScaledFroniusReg(PPVphAB, V_SF) +scaledPPVphBC = froniusreg.ScaledFroniusReg(PPVphBC, V_SF) +scaledPPVphCA = froniusreg.ScaledFroniusReg(PPVphCA, V_SF) +scaledPhVphA = froniusreg.ScaledFroniusReg(PhVphA, V_SF) +scaledPhVphB = froniusreg.ScaledFroniusReg(PhVphB, V_SF) +scaledPhVphC = froniusreg.ScaledFroniusReg(PhVphC, V_SF) +scaledW = froniusreg.ScaledFroniusReg(W, W_SF) +scaledHz = froniusreg.ScaledFroniusReg(Hz, Hz_SF) +scaledVA = froniusreg.ScaledFroniusReg(VA, VA_SF) +scaledVAr = froniusreg.ScaledFroniusReg(VAr, VAr_SF) +scaledPF = froniusreg.ScaledFroniusReg(PF, PF_SF) +scaledWH = froniusreg.ScaledFroniusReg(WH, WH_SF) +scaledDCA = froniusreg.ScaledFroniusReg(DCA, DCA_SF) +scaledDCV = froniusreg.ScaledFroniusReg(DCV, DCV_SF) +scaledDCW = froniusreg.ScaledFroniusReg(DCW, DCW_SF) +scaledTmpCab = froniusreg.ScaledFroniusReg(TmpCab, Tmp_SF) +scaledWRtg = froniusreg.ScaledFroniusReg(WRtg, WRtg_SF) +scaledVARtg = froniusreg.ScaledFroniusReg(VARtg, VARtg_SF) +scaledVArRtgQ1 = froniusreg.ScaledFroniusReg(VArRtgQ1, VArRtg_SF) +scaledVArRtgQ2 = froniusreg.ScaledFroniusReg(VArRtgQ2, VArRtg_SF) +scaledVArRtgQ3 = froniusreg.ScaledFroniusReg(VArRtgQ3, VArRtg_SF) +scaledVArRtgQ4 = froniusreg.ScaledFroniusReg(VArRtgQ4, VArRtg_SF) +scaledARtg = froniusreg.ScaledFroniusReg(ARtg, ARtg_SF) +scaledPFRtgQ1 = froniusreg.ScaledFroniusReg(PFRtgQ1, PFRtg_SF) +scaledPFRtgQ2 = froniusreg.ScaledFroniusReg(PFRtgQ2, PFRtg_SF) +scaledPFRtgQ3 = froniusreg.ScaledFroniusReg(PFRtgQ3, PFRtg_SF) +scaledPFRtgQ4 = froniusreg.ScaledFroniusReg(PFRtgQ4, PFRtg_SF) +scaledWMax = froniusreg.ScaledFroniusReg(WMax, WMax_SF) +scaledVRef = froniusreg.ScaledFroniusReg(VRef, VRef_SF) +scaledVRefOfs = froniusreg.ScaledFroniusReg(VRefOfs, VRefOfs_SF) +scaledVAMax = froniusreg.ScaledFroniusReg(VAMax, VAMax_SF) +scaledVArMaxQ1 = froniusreg.ScaledFroniusReg(VArMaxQ1, VArMax_SF) +scaledVArMaxQ2 = froniusreg.ScaledFroniusReg(VArMaxQ2, VArMax_SF) +scaledVArMaxQ3 = froniusreg.ScaledFroniusReg(VArMaxQ3, VArMax_SF) +scaledVArMaxQ4 = froniusreg.ScaledFroniusReg(VArMaxQ4, VArMax_SF) +scaledPFMinQ1 = froniusreg.ScaledFroniusReg(PFMinQ1, PFMin_SF) +scaledPFMinQ2 = froniusreg.ScaledFroniusReg(PFMinQ2, PFMin_SF) +scaledPFMinQ3 = froniusreg.ScaledFroniusReg(PFMinQ3, PFMin_SF) +scaledPFMinQ4 = froniusreg.ScaledFroniusReg(PFMinQ4, PFMin_SF) +scaledRis = froniusreg.ScaledFroniusReg(Ris, Ris_SF) +scaledWMaxLimPct = froniusreg.ScaledFroniusReg(WMaxLimPct, WMaxLimPct_SF) +scaledOutPFSet = froniusreg.ScaledFroniusReg(OutPFSet, OutPFSet_SF) +scaledVArMaxPct = froniusreg.ScaledFroniusReg(VArMaxPct, VArPct_SF) +scaledmodule_1_DCA = froniusreg.ScaledFroniusReg(module_1_DCA, DCA_SF) +scaledmodule_1_DCV = froniusreg.ScaledFroniusReg(module_1_DCV, DCV_SF) +scaledmodule_1_DCW = froniusreg.ScaledFroniusReg(module_1_DCW, DCW_SF) +scaledmodule_1_DCWH = froniusreg.ScaledFroniusReg(module_1_DCWH, DCWH_SF) +scaledmodule_2_DCA = froniusreg.ScaledFroniusReg(module_2_DCA, DCA_SF) +scaledmodule_2_DCV = froniusreg.ScaledFroniusReg(module_2_DCV, DCV_SF) +scaledmodule_2_DCW = froniusreg.ScaledFroniusReg(module_2_DCW, DCW_SF) +scaledmodule_2_DCWH = froniusreg.ScaledFroniusReg(module_2_DCWH, DCWH_SF) +scaledmodule_3_DCA = froniusreg.ScaledFroniusReg(module_3_DCA, DCA_SF) +scaledmodule_3_DCV = froniusreg.ScaledFroniusReg(module_3_DCV, DCV_SF) +scaledmodule_3_DCW = froniusreg.ScaledFroniusReg(module_3_DCW, DCW_SF) +scaledmodule_3_DCWH = froniusreg.ScaledFroniusReg(module_3_DCWH, DCWH_SF) +scaledmodule_4_DCA = froniusreg.ScaledFroniusReg(module_4_DCA, DCA_SF) +scaledmodule_4_DCV = froniusreg.ScaledFroniusReg(module_4_DCV, DCV_SF) +scaledmodule_4_DCW = froniusreg.ScaledFroniusReg(module_4_DCW, DCW_SF) +scaledmodule_4_DCWH = froniusreg.ScaledFroniusReg(module_4_DCWH, DCWH_SF)