-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathVersionamento_vers1_2
More file actions
278 lines (195 loc) · 6.4 KB
/
Versionamento_vers1_2
File metadata and controls
278 lines (195 loc) · 6.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
A seguir é apresentada a **compilação estruturada do código do anexo**, organizada conforme os itens necessários para caracterização científica, seleção bibliográfica e evolução do modelo.
O conteúdo foi extraído do arquivo:
📁 *Códigos de Caso Eletroposto com BESS.md*
A organização abaixo explicita **qual parte do código responde a cada item metodológico exigido para registro formal, versionamento e fundamentação científica**.
---
# 1. Caracterização do Sistema Energético
## 1.1 Tipo de Sistema (Microgrid Conectada à Rede)
Trecho que define a natureza grid-connected:
```python
model.P_grid = pyo.Var(model.T, domain=pyo.NonNegativeReals)
model.P_export = pyo.Var(model.T, domain=pyo.NonNegativeReals)
```
O balanço energético confirma operação conectada:
```python
def energy_balance_rule(m, t):
demanda_total = demanda_comercio[t] + demanda_ev[t]
return (
m.P_grid[t]
+ geracao_pv[t]
+ m.P_discharge[t]
==
demanda_total
+ m.P_charge[t]
+ m.P_export[t]
)
```
**Conclusão metodológica:**
Sistema modelado como microgrid híbrida conectada à rede, com possibilidade de exportação.
---
# 2. Horizonte Temporal e Tipo de Operação
## 2.1 Horizonte Determinístico de Curto Prazo
```python
HORIZONTE = 24
T = range(HORIZONTE)
```
**Caracterização científica:**
* Operação diária
* Modelo determinístico
* Resolução horária
Isso define que a base bibliográfica deve ser de **energy management systems de curto prazo**, não planejamento de expansão anual.
---
# 3. Natureza da Função Objetivo
## 3.1 Modelo v1.0 – Minimização de Custo
```python
def objective_rule(m):
custo_energia = sum(custo_compra * m.P_grid[t] for t in m.T)
receita_export = sum(preco_venda * m.P_export[t] for t in m.T)
custo_deg = sum(custo_degradacao *
(m.P_charge[t] + m.P_discharge[t])
for t in m.T)
return custo_energia + custo_deg - receita_export
model.OBJ = pyo.Objective(rule=objective_rule, sense=pyo.minimize)
```
Características:
* Arbitragem energética
* Considera receita de exportação
* Considera custo de degradação simplificado
---
## 3.2 Modelo v2.0 – Minimização de Energia Importada
```python
def obj_rule(model):
return sum(model.P_grid[t] for t in T)
model.obj = pyo.Objective(rule=obj_rule, sense=pyo.minimize)
```
Caracterização:
* Critério energético puro
* Não considera preços
* Foco em autonomia energética
---
# 4. Modelagem do BESS
## 4.1 Dinâmica do Estado de Carga (SOC)
```python
def soc_rule(m, t):
if t == 0:
return m.SOC[t] == (
soc_inicial
+ eta_c * m.P_charge[t]
- (m.P_discharge[t] / eta_d)
)
return m.SOC[t] == (
m.SOC[t-1]
+ eta_c * m.P_charge[t]
- (m.P_discharge[t] / eta_d)
)
```
## 4.2 Limites Operacionais
```python
model.soc_min = pyo.Constraint(model.T,
rule=lambda m, t: m.SOC[t] >= soc_min)
model.soc_max = pyo.Constraint(model.T,
rule=lambda m, t: m.SOC[t] <= soc_max)
```
## 4.3 Exclusividade Carga/Descarga
```python
model.u_charge = pyo.Var(model.T, domain=pyo.Binary)
model.u_discharge = pyo.Var(model.T, domain=pyo.Binary)
model.no_simultaneous = pyo.Constraint(
model.T,
rule=lambda m, t:
m.u_charge[t] + m.u_discharge[t] <= 1
)
```
Classificação científica:
* MILP linear
* Modelo simplificado de degradação
* Sem modelagem eletroquímica
* Sem rampa
---
# 5. Modelagem da Demanda EV
## 5.1 Perfil Determinístico Agregado
```python
demanda_ev = [
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
72, 96, 72, 0, 0, 0,
76, 100, 76, 0, 0, 0
]
```
Características:
* Dois carregadores de 50 kW
* Pico agregado de 100 kW
* Não modela chegada estocástica
* Não modela fila
* Não modela controle individual
---
# 6. Restrição Contratual de Potência
## 6.1 Inclusão de Limite de Demanda
Versão inicial:
```python
demanda_contratada = 75
model.limite_demanda = pyo.Constraint(
model.T,
rule=lambda m, t: m.P_grid[t] <= demanda_contratada
)
```
Versão ajustada para viabilidade:
```python
def grid_limit_rule(model, t):
return model.P_grid[t] <= 130.0
model.grid_limit = pyo.Constraint(T, rule=grid_limit_rule)
```
Interpretação científica:
* Teste de viabilidade estrutural
* Avaliação de adequação do contrato
* Diagnóstico de insuficiência do BESS
---
# 7. Tipo de Formulação Matemática
Identificação no código:
* Variáveis contínuas: `NonNegativeReals`
* Variáveis binárias: `Binary`
* Funções lineares
* Restrições lineares
Classificação:
→ MILP (Mixed Integer Linear Programming)
Solver utilizado:
```python
solver = pyo.SolverFactory("cbc")
```
---
# 8. Elementos Ausentes (Lacunas para Evolução)
Com base no código compilado, NÃO estão modelados:
* Degradação dependente de profundidade de descarga
* Modelagem estocástica da demanda EV
* Tarifação por demanda máxima mensal
* Dimensionamento ótimo do BESS
* CAPEX
* Emissões de carbono
* Formulação multiobjetivo
Esses pontos definem a direção de busca bibliográfica para evolução do modelo.
---
# 9. Correspondência entre Código e Itens de Compilação Científica
| Item Necessário | Evidência no Código |
| -------------------- | --------------------------- |
| Tipo de sistema | Variáveis P_grid e P_export |
| Horizonte temporal | HORIZONTE = 24 |
| Natureza da operação | Modelo determinístico |
| Objetivo econômico | objective_rule |
| Objetivo energético | obj_rule |
| BESS simplificado | soc_rule + binárias |
| Demanda EV agregada | vetor demanda_ev |
| Restrição contratual | grid_limit_rule |
| Tipo matemático | MILP |
| Solver | CBC |
---
# 10. Conclusão Técnica
O código do anexo já fornece base clara para:
* Classificação do problema científico;
* Definição de escopo da literatura necessária;
* Versionamento estruturado (v1 custo, v2 energia, v3 contrato);
* Identificação objetiva das lacunas para publicação.
---
Se desejar, posso agora:
* Mapear cada lacuna a grupos específicos de artigos recomendados;
* Propor versão v3.0 com dimensionamento do BESS;
* Estruturar matriz formal “Melhoria → Fundamentação → Alteração matemática → Impacto esperado”.