-
Notifications
You must be signed in to change notification settings - Fork 3
/
BC_Ldesign.m
54 lines (46 loc) · 1.67 KB
/
BC_Ldesign.m
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
%% BC_Ldesign.m
% Authors: Erick Fernando Alves, Daniel dos Santos Mota
% Date: 2021-10-29
%
% This function designs the L filter of a battery (DC-DC) converter.
%
% Naming convention:
% BC_ : battery converter, i.e., the converter connected to energy storage device
% L : inductor (and parasitic series resistance)
% design : self explanatory
%%
function [output] = BC_Ldesign(param)
%% Interface
% Input Struct
% param
% .Pn : [W] rated power power
% .Udc : [Vdc] rated dc voltage (battery side, not DC link side)
% .Fsw : [Hz] converter switching frequency
% .eta : [pu] converter efficiency (for series R of inductor)
% .deltaimax : [pu] maximum current ripple in pu of rated
%
%% Output Struct
% output
% .L : [H] L on the battery side
% .R : [Ohm] R on the battery side
%
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%');
disp('% BATTERY CONVERTER - L design');
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%');
%% Base values
Ibase = param.Pn / param.Udc;
Rbase = (param.Udc^2) / param.Pn;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Assumed a Duty Cycle of 50%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% v = L di / dt
% v: rated dc voltage
% L: the inductance we want to size
% di: delta i, the maximum ripple in A
% dt: the time, half the switching period (Duty cycle 50%)
di = param.deltaimax * Ibase;
output.L = param.Udc / ( di * 2 * param.Fsw);
output.R = (1 - param.eta) * Rbase;
disp('Inductance - battery side');
disp([' L = ',num2str(output.L),' H']);
disp([' R = ',num2str(output.R),' Ohm']);