SolarManager unter Versionsverwaltung
Erster Stand der Hintergrundprozesse, die auf der Synology unter /volume1/homes/wagner/SolarManager laufen: der Manager selbst, die Sammler je Geraet, die MQTT-Bruecke, der Wecker und - neu hinzugezogen - der AutoAction-Runner, der als Hintergrundprozess hierher gehoert und nicht ins Web-Verzeichnis. Zugangsdaten stehen nicht mehr im Quelltext, sondern in config.ini, die nicht mit eingecheckt wird. Vorlage ist config.ini.example, gelesen wird sie von konfig.py. Betroffen waren solarManager.py (Datenbank und Wattpilot), zeit.py, gatherWaterData.py, wecker.py und skoda_testdaten.py, das sich das Passwort bisher aus dem Quelltext eines anderen Moduls herausgesucht hat. Die Kia-Anbindung ist mit dem Fahrzeug entfallen: kiaTest.py, gatherCarData.py und hyundai_kia_connect_api sind nicht mehr dabei, ebenso gatherInverterData.py, auf das nur noch eine auskommentierte Zeile zeigte. Die mitgelieferten Bibliotheken bleiben im Repository - die NAS hat kein pip, sie muessen neben den Skripten liegen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,387 @@
|
||||
<sunSpecModels v="1">
|
||||
<!-- 134: Curve-Based Frequency-Watt -->
|
||||
<model id="134" len="68" name="freq_watt">
|
||||
<block len="10" type="fixed">
|
||||
<point id="ActCrv" offset="0" access="rw" type="uint16" len="1" mandatory="true" />
|
||||
<point id="ModEna" offset="1" access="rw" type="bitfield16" len="1" mandatory="true">
|
||||
<symbol id="ENABLED">0</symbol>
|
||||
</point>
|
||||
<point id="WinTms" offset="2" access="rw" type="uint16" len="1" mandatory="false" units="Secs" />
|
||||
<point id="RvrtTms" offset="3" access="rw" type="uint16" len="1" mandatory="false" units="Secs" />
|
||||
<point id="RmpTms" offset="4" access="rw" type="uint16" len="1" mandatory="false" units="Secs" />
|
||||
<point id="NCrv" offset="5" access="r" type="uint16" len="1" mandatory="true" />
|
||||
<point id="NPt" offset="6" access="r" type="uint16" len="1" mandatory="true" />
|
||||
<point id="Hz_SF" offset="7" access="r" type="sunssf" len="1" mandatory="true" units="SF" />
|
||||
<point id="W_SF" offset="8" access="r" type="sunssf" len="1" mandatory="true" units="SF" />
|
||||
<point id="RmpIncDec_SF" offset="9" access="r" type="sunssf" len="1" mandatory="false" units="SF" />
|
||||
</block>
|
||||
<block len="58" type="repeating" name="curve">
|
||||
<point id="ActPt" offset="0" access="rw" type="uint16" len="1" mandatory="true" />
|
||||
<point id="Hz1" offset="1" access="rw" type="uint16" len="1" mandatory="true" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W1" offset="2" access="rw" type="int16" len="1" mandatory="true" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz2" offset="3" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W2" offset="4" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz3" offset="5" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W3" offset="6" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz4" offset="7" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W4" offset="8" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz5" offset="9" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W5" offset="10" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz6" offset="11" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W6" offset="12" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz7" offset="13" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W7" offset="14" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz8" offset="15" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W8" offset="16" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz9" offset="17" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W9" offset="18" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz10" offset="19" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W10" offset="20" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz11" offset="21" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W11" offset="22" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz12" offset="23" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W12" offset="24" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz13" offset="25" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W13" offset="26" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz14" offset="27" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W14" offset="28" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz15" offset="29" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W15" offset="30" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz16" offset="31" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W16" offset="32" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz17" offset="33" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W17" offset="34" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz18" offset="35" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W18" offset="36" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz19" offset="37" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W19" offset="38" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="Hz20" offset="39" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="W20" offset="40" access="rw" type="int16" len="1" mandatory="false" units="% WRef" sf="W_SF"/>
|
||||
<point id="CrvNam" offset="41" access="rw" type="string" len="8" mandatory="false" />
|
||||
<point id="RmpPT1Tms" offset="49" access="rw" type="uint16" len="1" mandatory="false" units="Secs" />
|
||||
<point id="RmpDecTmm" offset="50" access="rw" type="uint16" len="1" mandatory="false" units="% WMax/min" sf="RmpIncDec_SF"/>
|
||||
<point id="RmpIncTmm" offset="51" access="rw" type="uint16" len="1" mandatory="false" units="% WMax/min" sf="RmpIncDec_SF"/>
|
||||
<point id="RmpRsUp" offset="52" access="rw" type="uint16" len="1" mandatory="false" units="% WMax/min" sf="RmpIncDec_SF"/>
|
||||
<point id="SnptW" offset="53" access="rw" type="bitfield16" len="1" mandatory="true" />
|
||||
<point id="WRef" offset="54" access="rw" type="uint16" len="1" mandatory="false" units="W" sf="W_SF"/>
|
||||
<point id="WRefStrHz" offset="55" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="WRefStopHz" offset="56" access="rw" type="uint16" len="1" mandatory="false" units="Hz" sf="Hz_SF"/>
|
||||
<point id="ReadOnly" offset="57" access="r" type="enum16" len="1" mandatory="true" >
|
||||
<symbol id="READWRITE">0</symbol>
|
||||
<symbol id="READONLY">1</symbol>
|
||||
</point>
|
||||
</block>
|
||||
</model>
|
||||
<strings id="134" locale="en">
|
||||
<model>
|
||||
<label>Freq-Watt Crv</label>
|
||||
<description>Curve-Based Frequency-Watt </description>
|
||||
<notes>Ref 3: 8.9.1.2, 8.9.4.2</notes>
|
||||
</model>
|
||||
<point id="NCrv">
|
||||
<label>NCrv</label>
|
||||
<description>Number of curves supported (recommend min. 4).</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="NPt">
|
||||
<label>NPt</label>
|
||||
<description>Number of curve points supported (maximum of 10).</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="ModEna">
|
||||
<label>ModEna</label>
|
||||
<description>Is curve-based Frequency-Watt control active.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="ActCrv">
|
||||
<label>ActCrv</label>
|
||||
<description>Index of active curve. 0=no active curve.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="SnptW">
|
||||
<label>SnptW</label>
|
||||
<description>1=enable snapshot/capture mode</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="WRef">
|
||||
<label>WRef</label>
|
||||
<description>Reference active power (default = WMax).</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="WRefStrHz">
|
||||
<label>WRefStrHz</label>
|
||||
<description>Frequency deviation from nominal frequency at the time of the snapshot to start constraining power output.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="WRefStopHz">
|
||||
<label>WRefStopHz</label>
|
||||
<description>Frequency deviation from nominal frequency at which to release the power output.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="WinTms">
|
||||
<label>WinTms</label>
|
||||
<description>Time window for freq-watt change.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RvrtTms">
|
||||
<label>RvrtTms</label>
|
||||
<description>Timeout period for freq-watt curve selection.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RmpTms">
|
||||
<label>RmpTms</label>
|
||||
<description>Ramp time for moving from current mode to new mode.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz_SF">
|
||||
<label>Hz_SF</label>
|
||||
<description>Scale factor for frequency.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W_SF">
|
||||
<label>W_SF</label>
|
||||
<description>Scale factor for percent WRef.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RmpIncDec_SF">
|
||||
<label>RmpIncDec_SF</label>
|
||||
<description>Scale factor for increment and decrement ramps.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="CrvNam">
|
||||
<label>CrvNam</label>
|
||||
<description>Optional description for curve. (Max 16 chars)</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="ActPt">
|
||||
<label>ActPt</label>
|
||||
<description>Number of active points in array.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RmpPT1Tms">
|
||||
<label>RmpPT1Tms</label>
|
||||
<description>The time of the PT1 in seconds (time to accomplish a change of 95%).</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RmpDecTmm">
|
||||
<label>RmpDecTmm</label>
|
||||
<description>The maximum rate at which the power value may be reduced in response to changes in the frequency value.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RmpIncTmm">
|
||||
<label>RmpIncTmm</label>
|
||||
<description>The maximum rate at which the power value may be increased in response to changes in the frequency value.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="RmpRsUp">
|
||||
<label>RmpRsUp</label>
|
||||
<description>The maximum rate at which the power may be increased after releasing the frozen value of snap shot function. </description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz1">
|
||||
<label>Hz1</label>
|
||||
<description>Point 1 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W1">
|
||||
<label>W1</label>
|
||||
<description>Point 1 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz2">
|
||||
<label>Hz2</label>
|
||||
<description>Point 2 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W2">
|
||||
<label>W2</label>
|
||||
<description>Point 2 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz3">
|
||||
<label>Hz3</label>
|
||||
<description>Point 3 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W3">
|
||||
<label>W3</label>
|
||||
<description>Point 3 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz4">
|
||||
<label>Hz4</label>
|
||||
<description>Point 4 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W4">
|
||||
<label>W4</label>
|
||||
<description>Point 4 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz5">
|
||||
<label>Hz5</label>
|
||||
<description>Point 5 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W5">
|
||||
<label>W5</label>
|
||||
<description>Point 5 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz6">
|
||||
<label>Hz6</label>
|
||||
<description>Point 6 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W6">
|
||||
<label>W6</label>
|
||||
<description>Point 6 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz7">
|
||||
<label>Hz7</label>
|
||||
<description>Point 7 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W7">
|
||||
<label>W7</label>
|
||||
<description>Point 7 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz8">
|
||||
<label>Hz8</label>
|
||||
<description>Point 8 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W8">
|
||||
<label>W8</label>
|
||||
<description>Point 8 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz9">
|
||||
<label>Hz9</label>
|
||||
<description>Point 9 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W9">
|
||||
<label>W9</label>
|
||||
<description>Point 9 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz10">
|
||||
<label>Hz10</label>
|
||||
<description>Point 10 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W10">
|
||||
<label>W10</label>
|
||||
<description>Point 10 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz11">
|
||||
<label>Hz11</label>
|
||||
<description>Point 11 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W11">
|
||||
<label>W11</label>
|
||||
<description>Point 11 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz12">
|
||||
<label>Hz12</label>
|
||||
<description>Point 12 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W12">
|
||||
<label>W12</label>
|
||||
<description>Point 12 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz13">
|
||||
<label>Hz13</label>
|
||||
<description>Point 13 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W13">
|
||||
<label>W13</label>
|
||||
<description>Point 13 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz14">
|
||||
<label>Hz14</label>
|
||||
<description>Point 14 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W14">
|
||||
<label>W14</label>
|
||||
<description>Point 14 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz15">
|
||||
<label>Hz15</label>
|
||||
<description>Point 15 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W15">
|
||||
<label>W15</label>
|
||||
<description>Point 15 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz16">
|
||||
<label>Hz16</label>
|
||||
<description>Point 16 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W16">
|
||||
<label>W16</label>
|
||||
<description>Point 16 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz17">
|
||||
<label>Hz17</label>
|
||||
<description>Point 17 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W17">
|
||||
<label>W17</label>
|
||||
<description>Point 17 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz18">
|
||||
<label>Hz18</label>
|
||||
<description>Point 18 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W18">
|
||||
<label>W18</label>
|
||||
<description>Point 18 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz19">
|
||||
<label>Hz19</label>
|
||||
<description>Point 19 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W19">
|
||||
<label>W19</label>
|
||||
<description>Point 19 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="Hz20">
|
||||
<label>Hz20</label>
|
||||
<description>Point 20 Hertz.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="W20">
|
||||
<label>W20</label>
|
||||
<description>Point 20 Watts.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
<point id="ReadOnly">
|
||||
<label>ReadOnly</label>
|
||||
<description>Enumerated value indicates if curve is read-only or can be modified.</description>
|
||||
<notes> </notes>
|
||||
</point>
|
||||
</strings>
|
||||
</sunSpecModels>
|
||||
Reference in New Issue
Block a user