@enerlence/suntropy-cli 0.1.4 → 0.3.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enerlence/suntropy-cli",
3
- "version": "0.1.4",
3
+ "version": "0.3.0",
4
4
  "description": "Agent-first CLI for Suntropy solar platform",
5
5
  "type": "module",
6
6
  "bin": {
@@ -130,60 +130,84 @@ Anade comentario indicando el consumo configurado:
130
130
  suntropy studies add-comment --file $STUDY_FILE --content "Consumo configurado: <kWh> kWh/ano, patron <patron>"
131
131
  ```
132
132
 
133
- ### Paso 5: Obtener configuracion optima (si no la proporciono el usuario)
133
+ ### Paso 5: Anadir superficie y calcular produccion base
134
134
 
135
- Si el usuario no especifico equipo ni potencia, usar solarform para obtener la configuracion recomendada:
135
+ Primero hay que anadir las superficies y calcular la produccion base (necesaria para la optimizacion):
136
136
 
137
137
  ```bash
138
- suntropy solarform simple \
139
- --region <region> --sub-region <subregion> \
140
- --consumption <kWh> --pattern <patron> \
141
- --fields solarKit.peakPower,solarKit.panelNumber,economicResults.totalCost,solarKit.identifier,solarKit.idSolarKit
138
+ # Anadir superficie con coordenadas (power inicial estimado, se ajustara en optimizacion)
139
+ suntropy studies add surface --file $STUDY_FILE \
140
+ --lat <lat> --lon <lon> \
141
+ --angle <inclinacion> --azimuth <azimuth> \
142
+ --power 5000 --panels-count 12
143
+
144
+ # Calcular produccion para todas las superficies
145
+ suntropy studies calculate production --file $STUDY_FILE --all-surfaces
142
146
  ```
143
147
 
144
- O con coordenadas:
148
+ Si se tienen multiples superficies (diferente orientacion/inclinacion):
145
149
  ```bash
146
- suntropy solarform calculate --data '{"center":{"lat":<lat>,"lng":<lon>},"consumptionMode":"consumptionPatterns","locationMode":"locationOnly","consumptionPatternViewMode":"consumptionPattern","selectedConsumptionPattern":"<patron>","consumptionQuantity":<kWh>,"consumptionQuantityIntroductionMode":"monthlyConsumption"}' \
147
- --fields solarKit.peakPower,solarKit.panelNumber,economicResults.totalCost,solarKit.idSolarKit
150
+ suntropy studies add surface --file $STUDY_FILE --lat <lat> --lon <lon> --angle 30 --azimuth 180 --power 3000 --identifier "Tejado sur"
151
+ suntropy studies add surface --file $STUDY_FILE --lat <lat> --lon <lon> --angle 15 --azimuth 90 --power 2000 --identifier "Tejado este"
152
+ suntropy studies calculate production --file $STUDY_FILE --all-surfaces
148
153
  ```
149
154
 
150
- De aqui extraer: `peakPower`, `panelNumber`, `totalCost`, `idSolarKit`.
155
+ ### Paso 6: Configurar equipo y optimizar potencia pico
156
+
157
+ **Opcion A: Modo kit (recomendado) — seleccion automatica del kit optimo:**
151
158
 
152
- ### Paso 6: Configurar equipo (panel o kit)
159
+ Si el usuario no especifica un kit concreto, usar `optimize-peakpower --use-kits` para evaluar todos los kits del inventario y seleccionar el mas adecuado segun el criterio de optimizacion:
153
160
 
154
- **Opcion A: Kit solar (recomendado, modo por defecto):**
161
+ ```bash
162
+ # Optimizar seleccionando el kit optimo para cubrir el 100% del consumo
163
+ suntropy studies optimize-peakpower --file $STUDY_FILE --raw-consumption 100 --use-kits --apply
164
+ ```
165
+
166
+ El flag `--apply` escribe automaticamente el kit seleccionado en el estudio.
167
+
168
+ Si el usuario quiere un kit especifico, puede setearlo manualmente:
155
169
  ```bash
156
170
  suntropy studies set kit --file $STUDY_FILE --kit-id <idSolarKit>
157
171
  ```
158
172
 
159
- **Opcion B: Panel + inversor individuales:**
173
+ **Opcion B: Modo panel optimizacion de potencia pico:**
174
+
175
+ Primero setear el panel, luego optimizar:
160
176
  ```bash
161
- suntropy studies set panel --file $STUDY_FILE --panel-id <panelId> --panels-count <N>
162
- suntropy studies set inverter --file $STUDY_FILE --inverter-id <inverterId>
177
+ suntropy studies set panel --file $STUDY_FILE --panel-id <panelId>
178
+ suntropy studies optimize-peakpower --file $STUDY_FILE --energy-savings 70 --apply
163
179
  ```
164
180
 
165
- Si no se conocen los IDs, listar inventario:
181
+ El flag `--apply` actualiza `panelNumber` e `installedPower` en cada superficie del estudio.
182
+
183
+ **Criterios de optimizacion disponibles:**
184
+
185
+ | Flag | Descripcion |
186
+ |------|-------------|
187
+ | `--energy-savings <pct>` | % de ahorro energetico objetivo |
188
+ | `--raw-consumption <pct>` | Produccion como % del consumo (100 = cubrir consumo) |
189
+ | `--max-excesses <pct>` | Max % de excedentes sobre produccion |
190
+ | `--max-overproduction-months <n>` | Max meses con sobreproduccion |
191
+
192
+ Si no se especifica criterio, se usa `--raw-consumption 100` por defecto.
193
+
194
+ **Restricciones de superficie:** Si las superficies tienen campo `area` (m²), la optimizacion limita automaticamente los paneles al espacio disponible. Sin area, no hay restriccion espacial.
195
+
196
+ Si no se conocen los IDs de panel/kit, listar inventario:
166
197
  ```bash
167
198
  suntropy inventory kits list --active-only --fields idSolarKit,identifier,peakPower,price
168
199
  suntropy inventory panels list --active-only --fields solarPanelId,name,peakPower,costPerUnit
169
- suntropy inventory inverters list --active-only --fields idInverter,name,nominalPower
170
200
  ```
171
201
 
172
202
  Anade comentario tras seleccionar equipo:
173
203
  ```bash
174
- suntropy studies add-comment --file $STUDY_FILE --content "Equipo seleccionado: <nombre kit/panel>"
204
+ suntropy studies add-comment --file $STUDY_FILE --content "Equipo optimizado: <modo> — <criterio>"
175
205
  ```
176
206
 
177
- ### Paso 7: Anadir superficie y calcular produccion
207
+ ### Paso 7: Recalcular produccion con la configuracion optimizada
178
208
 
209
+ Tras aplicar la optimizacion (que actualiza `installedPower` y `panelNumber`), recalcular produccion:
179
210
  ```bash
180
- # Anadir superficie con coordenadas
181
- suntropy studies add surface --file $STUDY_FILE \
182
- --lat <lat> --lon <lon> \
183
- --angle <inclinacion> --azimuth <azimuth> \
184
- --power <Wp> --panels-count <N>
185
-
186
- # Calcular produccion para todas las superficies
187
211
  suntropy studies calculate production --file $STUDY_FILE --all-surfaces
188
212
  ```
189
213