iobroker.sun2000 0.5.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -1
- package/admin/i18n/de/translations.json +5 -4
- package/admin/i18n/en/translations.json +2 -1
- package/admin/i18n/es/translations.json +2 -1
- package/admin/i18n/fr/translations.json +2 -1
- package/admin/i18n/it/translations.json +2 -1
- package/admin/i18n/nl/translations.json +2 -1
- package/admin/i18n/pl/translations.json +2 -1
- package/admin/i18n/pt/translations.json +2 -1
- package/admin/i18n/ru/translations.json +2 -1
- package/admin/i18n/uk/translations.json +2 -1
- package/admin/i18n/zh-cn/translations.json +2 -1
- package/admin/jsonConfig.json +74 -21
- package/io-package.json +16 -15
- package/lib/drivers/driver_base.js +1 -1
- package/lib/drivers/driver_inverter.js +2 -2
- package/main.js +17 -11
- package/package.json +1 -1
- package/lib/drivers/drivers_old.js +0 -1360
package/README.md
CHANGED
|
@@ -25,7 +25,8 @@ Feel free to follow the discussions in the german [iobroker forum](https://forum
|
|
|
25
25
|
|
|
26
26
|
## Documentation
|
|
27
27
|
|
|
28
|
-
See the [documentation page](./docs/README.md)
|
|
28
|
+
See the [documentation page](./docs/README.md) or
|
|
29
|
+
browse in the [wiki](https://github.com/bolliy/ioBroker.sun2000/wiki)
|
|
29
30
|
|
|
30
31
|
## Supported hardware
|
|
31
32
|
|
|
@@ -50,6 +51,11 @@ See the [documentation page](./docs/README.md)
|
|
|
50
51
|
Placeholder for the next version (at the beginning of the line):
|
|
51
52
|
### **WORK IN PROGRESS**
|
|
52
53
|
-->
|
|
54
|
+
### 0.5.1 (2024-03-11)
|
|
55
|
+
* Config page restructured
|
|
56
|
+
* read only the required string data
|
|
57
|
+
* fix interval medium
|
|
58
|
+
|
|
53
59
|
### 0.5.0 (2024-03-07)
|
|
54
60
|
* Integration of [Huawei SmartLogger](https://support.huawei.com/enterprise/de/doc/EDOC1100130069/d8a00460)
|
|
55
61
|
* some meter states the unit was changed (for example sun2000.0.meter.activePowerL1) (#56)
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
"delay after modbus connected": "Verzögerung nach der Modbus-Verbindung",
|
|
14
14
|
"automatic adjustment of the modbus settings": "automatische Anpassung der Modbus-Einstellungen",
|
|
15
15
|
"ms.aktive": "Modbus-Proxy aktiv",
|
|
16
|
-
"Modbus-proxy via TCP for read-only is active": "Modbus-Proxy über TCP
|
|
16
|
+
"Modbus-proxy via TCP for read-only is active": "Modbus-Proxy über TCP zum Nur-Lesen ist aktiv",
|
|
17
17
|
"ms.address": "Modbus-Proxy-IP-Adresse",
|
|
18
|
-
"If want to listen only at localhost use 127.0.0.1": "Wenn Sie nur auf localhost
|
|
18
|
+
"If want to listen only at localhost use 127.0.0.1": "Wenn Sie nur auf localhost zuhören möchten, verwenden Sie 127.0.0.1",
|
|
19
19
|
"ms.port": "Modbus-Proxy-TCP-Port",
|
|
20
20
|
"The Modbus-proxy TCP port": "Der Modbus-Proxy-TCP-Port",
|
|
21
21
|
"The SDongle modbus ID": "Die SDongle-Modbus-ID – normalerweise 100",
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
"Advanced logging": "Erweiterte Protokollierung von Modbus-Transaktionen",
|
|
24
24
|
"sl.aktive": "SmartLogger aktiv",
|
|
25
25
|
"SmartLogger active": "SmartLogger aktiv",
|
|
26
|
-
"sl.meterId": "Modbus-ID des
|
|
27
|
-
"The Meter modbus ID": "Die Modbus-ID des
|
|
26
|
+
"sl.meterId": "Modbus-ID des SmartLogger-Messgeräts",
|
|
27
|
+
"The Meter modbus ID": "Die Modbus-ID des Messgeräts",
|
|
28
|
+
"sd.active": "SDongle aktiv"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive" : "SmartLogger active",
|
|
25
25
|
"SmartLogger active" : "SmartLogger active",
|
|
26
26
|
"sl.meterId" : "SmartLogger meter modbus ID",
|
|
27
|
-
"The Meter modbus ID" : "The Meter modbus ID"
|
|
27
|
+
"The Meter modbus ID" : "The Meter modbus ID",
|
|
28
|
+
"sd.active" : "SDongle active"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger activo",
|
|
25
25
|
"SmartLogger active": "SmartLogger activo",
|
|
26
26
|
"sl.meterId": "ID modbus del medidor SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "El ID modbus del medidor"
|
|
27
|
+
"The Meter modbus ID": "El ID modbus del medidor",
|
|
28
|
+
"sd.active": "SDongle activo"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger actif",
|
|
25
25
|
"SmartLogger active": "SmartLogger actif",
|
|
26
26
|
"sl.meterId": "ID Modbus du compteur SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "L'ID Modbus du compteur"
|
|
27
|
+
"The Meter modbus ID": "L'ID Modbus du compteur",
|
|
28
|
+
"sd.active": "SDongle actif"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger attivo",
|
|
25
25
|
"SmartLogger active": "SmartLogger attivo",
|
|
26
26
|
"sl.meterId": "ID modbus del contatore SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "L'ID del modbus del contatore"
|
|
27
|
+
"The Meter modbus ID": "L'ID del modbus del contatore",
|
|
28
|
+
"sd.active": "SDongle attivo"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger actief",
|
|
25
25
|
"SmartLogger active": "SmartLogger actief",
|
|
26
26
|
"sl.meterId": "Modbus-ID van SmartLogger-meter",
|
|
27
|
-
"The Meter modbus ID": "De Modbus-ID van de meter"
|
|
27
|
+
"The Meter modbus ID": "De Modbus-ID van de meter",
|
|
28
|
+
"sd.active": "SDongle actief"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger aktywny",
|
|
25
25
|
"SmartLogger active": "SmartLogger aktywny",
|
|
26
26
|
"sl.meterId": "Identyfikator Modbus miernika SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "Identyfikator Modbus miernika"
|
|
27
|
+
"The Meter modbus ID": "Identyfikator Modbus miernika",
|
|
28
|
+
"sd.active": "SDongle aktywny"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger ativo",
|
|
25
25
|
"SmartLogger active": "SmartLogger ativo",
|
|
26
26
|
"sl.meterId": "ID modbus do medidor SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "O ID do modbus do medidor"
|
|
27
|
+
"The Meter modbus ID": "O ID do modbus do medidor",
|
|
28
|
+
"sd.active": "SD Dongle ativo"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger активен",
|
|
25
25
|
"SmartLogger active": "SmartLogger активен",
|
|
26
26
|
"sl.meterId": "Идентификатор Modbus счетчика SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "Идентификатор Modbus измерителя"
|
|
27
|
+
"The Meter modbus ID": "Идентификатор Modbus измерителя",
|
|
28
|
+
"sd.active": "SD-ключ активен"
|
|
28
29
|
}
|
|
@@ -24,5 +24,6 @@
|
|
|
24
24
|
"sl.aktive": "SmartLogger активний",
|
|
25
25
|
"SmartLogger active": "SmartLogger активний",
|
|
26
26
|
"sl.meterId": "ID лічильника Modbus SmartLogger",
|
|
27
|
-
"The Meter modbus ID": "ID лічильника modbus"
|
|
27
|
+
"The Meter modbus ID": "ID лічильника modbus",
|
|
28
|
+
"sd.active": "SDongle активний"
|
|
28
29
|
}
|
package/admin/jsonConfig.json
CHANGED
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
"address": {
|
|
16
16
|
"type": "text",
|
|
17
17
|
"label": "address",
|
|
18
|
-
"newLine": true,
|
|
19
18
|
"tooltip": "The device ip address",
|
|
20
19
|
"sm": 12,
|
|
21
20
|
"md": 8,
|
|
22
|
-
"lg": 2
|
|
21
|
+
"lg": 2,
|
|
22
|
+
"newLine": true
|
|
23
23
|
},
|
|
24
24
|
"port": {
|
|
25
25
|
"type": "number",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"label": "Modbus inverter IDs",
|
|
36
36
|
"sm": 12,
|
|
37
37
|
"md": 8,
|
|
38
|
-
"lg":
|
|
38
|
+
"lg": 2,
|
|
39
39
|
"default": "1",
|
|
40
40
|
"newLine": true,
|
|
41
41
|
"tooltip": "The modbus inverter IDs, separated with character ,"
|
|
@@ -49,25 +49,29 @@
|
|
|
49
49
|
"newLine": true,
|
|
50
50
|
"tooltip": "Update interval to update the values from the inverters"
|
|
51
51
|
},
|
|
52
|
-
"
|
|
52
|
+
"mainHdr3": {
|
|
53
53
|
"newLine": true,
|
|
54
54
|
"type": "header",
|
|
55
|
-
"text": "
|
|
55
|
+
"text": "SDongle Settings",
|
|
56
56
|
"size": 2
|
|
57
57
|
},
|
|
58
|
-
"
|
|
58
|
+
"chipsTxt": {
|
|
59
|
+
"type": "staticText",
|
|
60
|
+
"text": "Provides the collected data from the SDongle",
|
|
61
|
+
"newLine": true
|
|
62
|
+
},
|
|
63
|
+
"sd_active": {
|
|
59
64
|
"type": "checkbox",
|
|
60
|
-
"label": "
|
|
65
|
+
"label": "sd.active",
|
|
61
66
|
"newLine": true,
|
|
62
|
-
"tooltip": "
|
|
67
|
+
"tooltip": "SDongle active"
|
|
63
68
|
},
|
|
64
|
-
"
|
|
69
|
+
"sDongleId": {
|
|
65
70
|
"type": "text",
|
|
66
|
-
"label": "
|
|
71
|
+
"label": "SDongleA modbus ID",
|
|
67
72
|
"lg": 2,
|
|
68
|
-
"newLine": true
|
|
69
|
-
|
|
70
|
-
}
|
|
73
|
+
"newLine": true
|
|
74
|
+
}
|
|
71
75
|
}
|
|
72
76
|
},
|
|
73
77
|
"tab2": {
|
|
@@ -113,6 +117,37 @@
|
|
|
113
117
|
}
|
|
114
118
|
},
|
|
115
119
|
"tab3": {
|
|
120
|
+
"type": "panel",
|
|
121
|
+
"label": "Smart Logger",
|
|
122
|
+
"items": {
|
|
123
|
+
"mainHdr3": {
|
|
124
|
+
"newLine": true,
|
|
125
|
+
"type": "header",
|
|
126
|
+
"text": "SmartLogger Settings",
|
|
127
|
+
"size": 2
|
|
128
|
+
},
|
|
129
|
+
"chipsTxt": {
|
|
130
|
+
"type": "staticText",
|
|
131
|
+
"text": "The SmartLogger monitors and manages PV systems and energy storage systems. It converges all ports, converts protocols, collects and stores data, and centrally monitors and maintains the devices in the systems.",
|
|
132
|
+
"newLine": true
|
|
133
|
+
},
|
|
134
|
+
"sl_active": {
|
|
135
|
+
"type": "checkbox",
|
|
136
|
+
"label": "sl.aktive",
|
|
137
|
+
"newLine": true,
|
|
138
|
+
"tooltip": "SmartLogger active"
|
|
139
|
+
},
|
|
140
|
+
"sl_meterId": {
|
|
141
|
+
"type": "text",
|
|
142
|
+
"label": "sl.meterId",
|
|
143
|
+
"lg": 2,
|
|
144
|
+
"newLine": true,
|
|
145
|
+
"tooltip": "The Meter modbus ID"
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
"tab4": {
|
|
116
151
|
"type": "panel",
|
|
117
152
|
"label": "Modbus-proxy",
|
|
118
153
|
"items": {
|
|
@@ -152,13 +187,6 @@
|
|
|
152
187
|
"newLine": true,
|
|
153
188
|
"tooltip" : "The Modbus-proxy TCP port"
|
|
154
189
|
},
|
|
155
|
-
"sDongleId": {
|
|
156
|
-
"type": "text",
|
|
157
|
-
"label": "SDongleA modbus ID",
|
|
158
|
-
"lg": 2,
|
|
159
|
-
"newLine": true,
|
|
160
|
-
"tooltip": "The SDongle modbus ID"
|
|
161
|
-
},
|
|
162
190
|
"ms_log": {
|
|
163
191
|
"type": "checkbox",
|
|
164
192
|
"label": "ms.log",
|
|
@@ -166,6 +194,31 @@
|
|
|
166
194
|
"tooltip": "Advanced logging"
|
|
167
195
|
}
|
|
168
196
|
}
|
|
169
|
-
}
|
|
197
|
+
},
|
|
198
|
+
"tab5": {
|
|
199
|
+
"type": "panel",
|
|
200
|
+
"label": "help",
|
|
201
|
+
"items": {
|
|
202
|
+
"Hdr1": {
|
|
203
|
+
"newLine": true,
|
|
204
|
+
"type": "header",
|
|
205
|
+
"text": "How do I get help?",
|
|
206
|
+
"size": 2
|
|
207
|
+
},
|
|
208
|
+
"chipsTxt": {
|
|
209
|
+
"type": "staticText",
|
|
210
|
+
"text": "Do you need help? There are multiple ways of getting support. ",
|
|
211
|
+
"newLine": true
|
|
212
|
+
},
|
|
213
|
+
"staticLink1": {
|
|
214
|
+
"type": "staticLink",
|
|
215
|
+
"text": "Available help options",
|
|
216
|
+
"href": "https://github.com/bolliy/ioBroker.sun2000/wiki/Hilfe-(support)",
|
|
217
|
+
"icon": "info",
|
|
218
|
+
"button": true,
|
|
219
|
+
"newLine": true
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
170
223
|
}
|
|
171
224
|
}
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "sun2000",
|
|
4
|
-
"version": "0.5.
|
|
4
|
+
"version": "0.5.1",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.5.1": {
|
|
7
|
+
"en": "Config page restructured\nRead only the required string data\nfix interval medium",
|
|
8
|
+
"de": "Config-Seite umstrukturiert\nLesen Sie nur die gewünschten Stringdaten\nintervall mittel",
|
|
9
|
+
"ru": "Реструктуризация страницы настройки\nЧитайте только требуемые данные строки\nфиксированный интервал",
|
|
10
|
+
"pt": "Página de confiança reestruturada\nLeia apenas os dados de string necessários\nmédia de intervalo de correção",
|
|
11
|
+
"nl": "Configuratiepagina geherstructureerd\nAlleen de vereiste tekenreeksgegevens lezen\nfix interval medium",
|
|
12
|
+
"fr": "Config page restructurée\nLire seulement les données de chaîne requises\nintervalle de fixation moyen",
|
|
13
|
+
"it": "Pagina di configurazione ristrutturata\nLeggi solo i dati della stringa richiesti\nintervallo di fissaggio medio",
|
|
14
|
+
"es": "Reestructuración de la página de confidencialidad\nLea sólo los datos de cadena requeridos\nintervalo de fijación medio",
|
|
15
|
+
"pl": "Strona konfiguracyjna zrestrukturyzowana\nPrzeczytaj tylko wymagane dane łańcuchowe\nmedium interwałowe",
|
|
16
|
+
"uk": "Налаштування реструктуризації сторінки\nПрочитати тільки необхідні дані рядків\nфіксувати інтервал середні",
|
|
17
|
+
"zh-cn": "配置页面调整\n只读所需的字符串数据\n固定间隔介质"
|
|
18
|
+
},
|
|
6
19
|
"0.5.0": {
|
|
7
20
|
"en": "Integration of [Huawei SmartLogger](https://support.huawei.com/enterprise/de/doc/EDOC1100130069/d8a00460)\nsome meter states the unit was changed (for example sun2000.0.meter.activePowerL1) (#56)\nsun2000 serie M2 or higher can also be processed",
|
|
8
21
|
"de": "Integration von [Huawei SmartLogger](https://support.huawei.com/enterprise/de/doc/EDOC1100130069/d8a00460)\neinige Zählerzustände wurden geändert (z.B. sun2000.0.meter.activePowerL1) (#56)\nsun2000 serie M2 oder höher kann auch verarbeitet werden",
|
|
@@ -80,19 +93,6 @@
|
|
|
80
93
|
"pl": "Data umieszczenia w wykazie",
|
|
81
94
|
"uk": "Вимоги до [Додати сонце2000 to last](https://github.com/ioBroker/ioBroker.repositories/pull/3219)",
|
|
82
95
|
"zh-cn": "(https://github.com/ioBroker/ioBroker.repositories/pul/3219) 需求"
|
|
83
|
-
},
|
|
84
|
-
"0.2.0": {
|
|
85
|
-
"en": "improve error handling (#34)\nadd simple optimizer info \nRiemann sum of input power with energy loss for new state `dailySolarYield`\ntry to recreate the `yield today` from the fusion portal",
|
|
86
|
-
"de": "fehlerbehandlung verbessern (#34)\neinfache optimierer-info hinzufügen\nRiemann Summe der Eingangsleistung mit Energieverlust für neuen Zustand `dailySolarYield `\nversuchen, den `yield heute` aus dem fusionsportal wiederherzustellen",
|
|
87
|
-
"ru": "улучшить обработку ошибок (#34)\nдобавить простую информацию о оптимизации\nRiemann Сумма входной мощности с потерей энергии для нового состояния `dailySolarYield \"\nпопытаться воссоздать «урожай сегодня» с портала синтеза",
|
|
88
|
-
"pt": "melhorar o manuseio de erros (#34)\nadicionar informações de otimização simples\nRiemann soma de energia de entrada com perda de energia para novo estado `dailySolarYield \"\ntentar recriar o `yield hoje` do portal de fusão",
|
|
89
|
-
"nl": "verbetering van de foutafhandeling (#34)\nvoeg eenvoudige optimalisatie info toe\nRiemann-som van het ingangsvermogen met energieverlies voor nieuwe toestand Wat\nproberen om de te recreëren van vandaag van de fusie portal",
|
|
90
|
-
"fr": "améliorer la gestion des erreurs (#34)\najouter des informations d'optimisation simples\nRiemann somme de puissance d'entrée avec perte d'énergie pour le nouvel état `dailySolarYield \"\nessayer de recréer le « rendement aujourd'hui » du portail de fusion",
|
|
91
|
-
"it": "migliorare la gestione degli errori (#34)\naggiungere semplici informazioni di ottimizzazione\nRiemann somma di potenza di ingresso con perdita di energia per nuovo stato `dailySolarYield #\ncercare di ricreare il `yield oggi` dal portale fusion",
|
|
92
|
-
"es": "mejorar el manejo de errores (#34)\nañadir información de optimización simple\nRiemann suma de poder de entrada con pérdida de energía para el nuevo estado `dailySolarYield `\ntratar de recrear el `yield hoy' del portal de fusión",
|
|
93
|
-
"pl": "poprawić obsługę błędów (# 34)\ndodaj proste informacje o optymalizacji\nRiemann suma mocy wejściowej z utratą energii dla nowego stanu \"dailySolarYeld '\nspróbuj odtworzyć \"wydajność dzisiaj\" z portalu syntezy jądrowej",
|
|
94
|
-
"uk": "поліпшення обробки помилок (#34)\nдодати просту оптимізацію\nСума вхідної енергії з втратою енергії для нового стану `dailySolarYield й\nнамагатися відтворити `yield сьогодні` з порталу fusion",
|
|
95
|
-
"zh-cn": "改进错误处理(# 34)\n添加简单的优化信息\nRiemann 输入功率总和, `\n尝试从聚变门户重现“今天”"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"titleLang": {
|
|
@@ -176,6 +176,8 @@
|
|
|
176
176
|
"port": 502,
|
|
177
177
|
"modbusIds": "1",
|
|
178
178
|
"updateInterval": 20,
|
|
179
|
+
"sd_active": false,
|
|
180
|
+
"sDongleId": "100",
|
|
179
181
|
"timeout": 10000,
|
|
180
182
|
"delay": 0,
|
|
181
183
|
"connectDelay": 5000,
|
|
@@ -184,7 +186,6 @@
|
|
|
184
186
|
"ms_address": "0.0.0.0",
|
|
185
187
|
"ms_port": 502,
|
|
186
188
|
"ms_log": false,
|
|
187
|
-
"sDongleId": "100",
|
|
188
189
|
"sl_active": false,
|
|
189
190
|
"sl_meterId": 11
|
|
190
191
|
},
|
|
@@ -143,7 +143,7 @@ class DriverBase {
|
|
|
143
143
|
if (!reg.refresh) continue;
|
|
144
144
|
//v0.4.0
|
|
145
145
|
let interval = this.adapter.settings.lowInterval;
|
|
146
|
-
if (
|
|
146
|
+
if ( reg.refresh === dataRefreshRate.medium) interval = this.adapter.settings.mediumInterval;
|
|
147
147
|
if ((start - lastread) < interval) {
|
|
148
148
|
this.adapter.log.debug('Last read reg for '+(start - lastread)+' ms - '+reg?.info);
|
|
149
149
|
continue;
|
|
@@ -342,10 +342,10 @@ class InverterSun2000 extends DriverBase{
|
|
|
342
342
|
reg.states.push(stateCu);
|
|
343
343
|
reg.states.push(statePo);
|
|
344
344
|
}
|
|
345
|
+
reg.length = noPVString * 2;
|
|
345
346
|
}
|
|
346
347
|
stringFieldsTemplate.generated = noPVString;
|
|
347
348
|
//this.adapter.log.debug(JSON.stringify(reg));
|
|
348
|
-
|
|
349
349
|
}
|
|
350
350
|
},
|
|
351
351
|
//After 32000 read
|
|
@@ -627,7 +627,7 @@ class InverterSun2000 extends DriverBase{
|
|
|
627
627
|
fn : (path) => {
|
|
628
628
|
const disCharge = this.stateCache.get(path+'battery.currentDayDischargeCapacity')?.value;
|
|
629
629
|
const charge = this.stateCache.get(path+'battery.currentDayChargeCapacity')?.value;
|
|
630
|
-
let inputYield = this.stateCache.get(path+'dailyEnergyYield')?.value +
|
|
630
|
+
let inputYield = this.stateCache.get(path+'dailyEnergyYield')?.value *0.97 + charge - disCharge;
|
|
631
631
|
|
|
632
632
|
if (inputYield < 0 || isNaN(inputYield)) inputYield = 0;
|
|
633
633
|
this.stateCache.set(path+'derived.dailyInputYield', inputYield, {type: 'number'});
|
package/main.js
CHANGED
|
@@ -50,6 +50,10 @@ class Sun2000 extends utils.Adapter {
|
|
|
50
50
|
sl: {
|
|
51
51
|
active : false,
|
|
52
52
|
meterId: 11
|
|
53
|
+
},
|
|
54
|
+
sd: {
|
|
55
|
+
active : false,
|
|
56
|
+
sDongleId : 100
|
|
53
57
|
}
|
|
54
58
|
};
|
|
55
59
|
|
|
@@ -333,8 +337,9 @@ class Sun2000 extends utils.Adapter {
|
|
|
333
337
|
this.settings.modbusConnectDelay = this.config.connectDelay; //ms
|
|
334
338
|
this.settings.modbusAdjust = this.config.autoAdjust;
|
|
335
339
|
this.settings.modbusIds = this.config.modbusIds.split(',').map((n) => {return Number(n);});
|
|
336
|
-
this.settings.
|
|
337
|
-
|
|
340
|
+
this.settings.sd.active = this.config.sd_active;
|
|
341
|
+
this.settings.sd.sDongleId = Number(this.config.sDongleId) ?? 0;
|
|
342
|
+
if (this.settings.sDongleId < 0 && this.settings.sDongleId >= 255) this.settings.sd.active = false;
|
|
338
343
|
this.settings.highInterval = this.config.updateInterval*1000; //ms
|
|
339
344
|
this.settings.ms.address = this.config.ms_address;
|
|
340
345
|
this.settings.ms.port = this.config.ms_port;
|
|
@@ -379,16 +384,17 @@ class Sun2000 extends utils.Adapter {
|
|
|
379
384
|
driverClass: driverClasses.loggerMeter
|
|
380
385
|
});
|
|
381
386
|
}
|
|
382
|
-
} else {
|
|
383
|
-
if (this.settings.sDongleId > 0) {
|
|
384
|
-
this.devices.push({
|
|
385
|
-
index: 0,
|
|
386
|
-
duration: 0,
|
|
387
|
-
modbusId: this.settings.sDongleId,
|
|
388
|
-
driverClass: driverClasses.sdongle
|
|
389
|
-
});
|
|
390
|
-
}
|
|
391
387
|
}
|
|
388
|
+
//v0.5.1
|
|
389
|
+
if (this.settings.sd.active) {
|
|
390
|
+
this.devices.push({
|
|
391
|
+
index: 0,
|
|
392
|
+
duration: 0,
|
|
393
|
+
modbusId: this.settings.sd.sDongleId,
|
|
394
|
+
driverClass: driverClasses.sdongle
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
|
|
392
398
|
await this.adjustInverval();
|
|
393
399
|
await this.StartProcess();
|
|
394
400
|
} else {
|