Exemple #1
0
        // Configuring the required elements for a grid connected system
        public void Config()
        {
            SimShading.Config();
            SimTransformer.Config();
            SimSpectral.Config();

            // Array of PVArray, Inverter and Wiring objects based on the number of Sub-Arrays
            SimPVA      = new PVArray[ReadFarmSettings.SubArrayCount];
            SimInv      = new Inverter[ReadFarmSettings.SubArrayCount];
            SimACWiring = new ACWiring[ReadFarmSettings.SubArrayCount];

            // Initialize and Configure PVArray and Inverter Objects through their .CSYX file
            for (int SubArrayCount = 0; SubArrayCount < ReadFarmSettings.SubArrayCount; SubArrayCount++)
            {
                SimInv[SubArrayCount] = new Inverter();
                SimInv[SubArrayCount].Config(SubArrayCount + 1);
                SimPVA[SubArrayCount] = new PVArray();
                SimPVA[SubArrayCount].Config(SubArrayCount + 1);
                SimACWiring[SubArrayCount] = new ACWiring();

                // If 'at Pnom' specified for AC Loss Fraction in version 1.2.0
                if (string.Compare(ReadFarmSettings.CASSYSCSYXVersion, "1.2.0") >= 0 && ReadFarmSettings.GetInnerText("System", "ACWiringLossAtSTC", _Error: ErrLevel.WARNING) == "False")
                {
                    SimACWiring[SubArrayCount].Config(SubArrayCount + 1, SimInv[SubArrayCount].itsOutputVoltage, SimInv[SubArrayCount].outputPhases, SimInv[SubArrayCount].itsPNomArrayAC);
                }
                else
                {
                    SimACWiring[SubArrayCount].Config(SubArrayCount + 1, SimInv[SubArrayCount].itsOutputVoltage, SimInv[SubArrayCount].outputPhases, SimInv[SubArrayCount].itsMaxSubArrayACEff * SimPVA[SubArrayCount].itsPNomDCArray);
                }
                farmArea += SimPVA[SubArrayCount].itsRoughArea;
            }
        }
Exemple #2
0
 public void Calculate
 (
     Inverter SimInverter
 )
 {
     // AC wiring losses using the current caculated (three phase output assumed)
     ACWiringLoss = Math.Sqrt(SimInverter.outputPhases) * Math.Pow(SimInverter.IOut, 2) * itsACWiringRes;
 }