Example #1
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="converter">所属变换器</param>
        public LLC(IsolatedDCDCConverter converter)
        {
            //获取设计规格
            this.converter = converter;
            math_Pfull     = converter.Math_Psys / converter.PhaseNum / converter.Number;
            math_Vin       = converter.Math_Vin;
            math_Vo        = converter.Math_Vo;
            math_No        = converter.Math_No;
            math_fs        = converter.Math_fs;
            math_Q         = converter.Math_Q;
            math_k         = converter.Math_k;
            math_Tdead     = math_fs < Configuration.SIC_SELECTION_FREQUENCY ? Configuration.IGBT_DEAD_TIME : Configuration.MOSFET_DEAD_TIME;

            //初始化元器件
            primaryDualModule = new DualModule(2)
            {
                Name            = "原边开关管",
                VoltageVariable = false
            };
            secondaryDualDiodeModule = new DualDiodeModule(2 * math_No)
            {
                Name            = "副边二极管",
                VoltageVariable = false
            };
            resonantInductor = new ACInductor(1)
            {
                Name            = "谐振电感",
                VoltageVariable = false
            };
            transformer = new Transformer(1)
            {
                Name            = "变压器",
                VoltageVariable = false
            };
            resonantCapacitor = new ResonantCapacitor(1)
            {
                Name            = "谐振电容",
                VoltageVariable = false,
            };
            filteringCapacitor = new FilteringCapacitor(math_No)
            {
                Name            = "滤波电容",
                VoltageVariable = false,
            };

            componentGroups = new Component[1][];
            if (Configuration.IS_RESONANT_INDUCTOR_INTEGRATED)
            {
                components         = new Component[] { primaryDualModule, secondaryDualDiodeModule, transformer, resonantCapacitor, filteringCapacitor };
                componentGroups[0] = new Component[] { primaryDualModule, secondaryDualDiodeModule, transformer, resonantCapacitor, filteringCapacitor };
            }
            else
            {
                components         = new Component[] { primaryDualModule, secondaryDualDiodeModule, resonantInductor, transformer, resonantCapacitor, filteringCapacitor };
                componentGroups[0] = new Component[] { primaryDualModule, secondaryDualDiodeModule, resonantInductor, transformer, resonantCapacitor, filteringCapacitor };
            }
        }
Example #2
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="converter">所属变换器</param>
        public CHB(DCACConverter converter)
        {
            //获取设计规格
            this.converter = converter;
            number         = converter.Number;
            modulation     = converter.Modulation;
            math_Pfull     = converter.Math_Psys / converter.PhaseNum / number;
            math_Vin       = converter.Math_Vin;
            math_Votot     = converter.Math_Vo;
            math_fg        = converter.Math_fg;
            math_φ         = converter.Math_φ;
            math_fs        = converter.Math_fs;

            math_Ma    = math_Votot * Math.Sqrt(2) / (number * math_Vin);
            math_Vo    = math_Votot / number;
            math_Iorms = math_Pfull / (math_Vo * Math.Cos(math_φ));

            //初始化元器件
            semiconductor = new CHBModule(1)
            {
                Name            = "开关器件",
                VoltageVariable = false,
                MultiNumber     = number
            };
            GridInductor = new GridInductor(1)
            {
                Name            = "并网滤波电感",
                VoltageVariable = false,
                MultiNumber     = number
            };
            ACInductor = new ACInductor(1)
            {
                Name            = "滤波电感",
                VoltageVariable = false
            };

            componentGroups = new Component[1][];
            if (Configuration.IS_GRID_CONNECTED_INDUCTOR_DESIGNED)
            {
                components         = new Component[] { semiconductor, GridInductor };
                componentGroups[0] = new Component[] { semiconductor, GridInductor };
            }
            else
            {
                components         = new Component[] { semiconductor, ACInductor };
                componentGroups[0] = new Component[] { semiconductor, ACInductor };
            }
        }