pv_boost_mpp_Iref.mdl
上传用户:liuztt
上传日期:2019-06-09
资源大小:15k
文件大小:143k
开发平台:

Matlab

  1.     Points     [0, 35]
  2.     DstBlock     "By-pass diode"
  3.     DstPort     1
  4.   }
  5. }
  6. Line {
  7.   SrcBlock   "Sum3"
  8.   SrcPort   1
  9.   DstBlock   "Sum4"
  10.   DstPort   1
  11. }
  12. Line {
  13.   SrcBlock   "Sum2"
  14.   SrcPort   1
  15.   Points   [-25, 0]
  16.   DstBlock   "Sum4"
  17.   DstPort   2
  18. }
  19. Line {
  20.   Name   "Id"
  21.   Labels   [0, 0]
  22.   SrcBlock   "PN-junction characteristic"
  23.   SrcPort   1
  24.   DstBlock   "Sum2"
  25.   DstPort   1
  26. }
  27. Line {
  28.   Name   "Vd/Rp"
  29.   Labels   [0, 0]
  30.   SrcBlock   "1/Rp"
  31.   SrcPort   1
  32.   Points   [-105, 0]
  33.   DstBlock   "Sum2"
  34.   DstPort   2
  35. }
  36.       }
  37.     }
  38.     Block {
  39.       BlockType       SubSystem
  40.       Name       "PV3"
  41.       Ports       [2, 2]
  42.       Position       [175, 232, 285, 283]
  43.       MinAlgLoopOccurrences   off
  44.       PropExecContextOutsideSubsystem off
  45.       RTWSystemCode       "Auto"
  46.       FunctionWithSeparateData off
  47.       Opaque       off
  48.       RequestExecContextInheritance off
  49.       MaskHideContents       off
  50.       MaskDescription       "PV module model based on module data-sheet parameters. This model has Ipv input, which is suitable for series connections. Limitations: no temperature dependance, static model"
  51.       MaskPromptString       "Short-circuit current|Open-circuit voltage|Current at Pmax|Voltage at Pmax|By-pass diode?"
  52.       MaskStyleString       "edit,edit,edit,edit,checkbox"
  53.       MaskTunableValueString  "on,on,on,on,on"
  54.       MaskCallbackString      "||||"
  55.       MaskEnableString       "on,on,on,on,on"
  56.       MaskVisibilityString    "on,on,on,on,on"
  57.       MaskToolTipString       "on,on,on,on,on"
  58.       MaskVarAliasString      ",,,,"
  59.       MaskVariables       "Isc=@1;Voc=@2;Ir=@3;Vr=@4;Diode=@5;"
  60.       MaskInitialization      "% calculation of PV module parametersn% limitation: constant temperaturenNs = round(Voc/0.61); % default number of cells in seriesnVt = 26e-3; % thermal voltagenG = Isc/1000; % irradiation to short-circuit current gainnVmpc = Vr/Ns; % cell voltage at rated PmaxnVocc = Voc/Ns; % cell open-circuit voltagenRmpp = Vmpc/Ir; % cell load resistance at Pmaxn%nRp = 100*Vocc/Isc; % initial value for RpnVdm = Vocc; % initial value for Vdmn%n% iterative solution for model parameters: Io, Rs, Rpnfor i=1:10n%n Idm = Isc - Ir - Vdm/Rp; % pn-junction (diode) current at MPPn Io = (Isc-Vocc/Rp)/(exp(Vocc/Vt)-1); % pn-junction reverse saturation currentn Vdm = Vt*log(Idm/Io+1); % pn-junction (diode) voltage at MPPn Rs = (Vdm-Vmpc)/Ir; % cell series resistancen Rd = (Rmpp - Rs)*Rp/(Rp-Rmpp+Rs); % diode incremental resistance at MPPn Idm = Vt/Rd; % diode current at MPP based on incremental resistancen Rp = Vdm/(Isc-Ir-Idm); % cell parallel resistancen%nendn%"
  61.       MaskDisplay       "plot([0.3 0.4],[0.4 0.8]);nplot([0.4 0.5],[0.4 0.8]);nplot([0.5 0.6],[0.4 0.8]);nplot([0.6 0.7],[0.4 0.8]);nplot([0.3 0.6],[0.4 0.4]);nplot([0.325 0.625],[0.5 0.5]);nplot([0.35 0.65],[0.6 0.6]);nplot([0.375 0.675],[0.7 0.7]);nplot([0.4 0.7],[0.8 0.8]);ntext(0.5,0.9,'PV module (I)','horizontalAlignment', 'center');n"
  62.       MaskIconFrame       on
  63.       MaskIconOpaque       off
  64.       MaskIconRotate       "none"
  65.       MaskIconUnits       "normalized"
  66.       MaskValueString       "5.45|22.2|4.95|17.2|on"
  67.       MaskTabNameString       ",,,,"
  68.       System {
  69. Name "PV3"
  70. Location [164, 268, 1200, 729]
  71. Open off
  72. ModelBrowserVisibility off
  73. ModelBrowserWidth 200
  74. ScreenColor "white"
  75. PaperOrientation "landscape"
  76. PaperPositionMode "auto"
  77. PaperType "usletter"
  78. PaperUnits "inches"
  79. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  80. TiledPageScale 1
  81. ShowPageBoundaries off
  82. ZoomFactor "100"
  83. Block {
  84.   BlockType   Inport
  85.   Name   "Ipv"
  86.   Position   [25, 168, 55, 182]
  87.   IconDisplay   "Port number"
  88.   OutDataType   "sfix(16)"
  89.   OutScaling   "2^0"
  90.   Port {
  91.     PortNumber     1
  92.     Name     "Ipv"
  93.     PropagatedSignals     "Ipv"
  94.     RTWStorageClass     "Auto"
  95.     DataLoggingNameMode     "SignalName"
  96.   }
  97. }
  98. Block {
  99.   BlockType   Inport
  100.   Name   "Insolation"
  101.   Position   [25, 273, 55, 287]
  102.   Port   "2"
  103.   IconDisplay   "Port number"
  104.   OutDataType   "sfix(16)"
  105.   OutScaling   "2^0"
  106. }
  107. Block {
  108.   BlockType   Gain
  109.   Name   "1/Rp"
  110.   Position   [445, 390, 490, 420]
  111.   Orientation   "left"
  112.   Gain   "1/Rp"
  113.   ParameterDataTypeMode   "Inherit via internal rule"
  114.   ParameterDataType   "sfix(16)"
  115.   ParameterScaling   "2^0"
  116.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  117.   OutDataTypeMode   "Inherit via internal rule"
  118.   OutDataType   "sfix(16)"
  119.   OutScaling   "2^0"
  120.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  121.   SaturateOnIntegerOverflow off
  122.   Port {
  123.     PortNumber     1
  124.     Name     "Vd/Rp"
  125.     RTWStorageClass     "Auto"
  126.     DataLoggingNameMode     "SignalName"
  127.   }
  128. }
  129. Block {
  130.   BlockType   Reference
  131.   Name   "Algebraic Constraint"
  132.   Ports   [1, 1]
  133.   Position   [410, 265, 490, 295]
  134.   SourceBlock   "simulink/MathnOperations/Algebraic Constraint"
  135.   SourceType   "Algebraic Constraint"
  136.   ShowPortLabels   "FromPortIcon"
  137.   SystemSampleTime   "-1"
  138.   FunctionWithSeparateData off
  139.   RTWMemSecFuncInitTerm   "Inherit from model"
  140.   RTWMemSecFuncExecute   "Inherit from model"
  141.   RTWMemSecDataConstants  "Inherit from model"
  142.   RTWMemSecDataInternal   "Inherit from model"
  143.   RTWMemSecDataParameters "Inherit from model"
  144.   z0   "0"
  145.   Port {
  146.     PortNumber     1
  147.     Name     "Vd"
  148.     RTWStorageClass     "Auto"
  149.     DataLoggingNameMode     "SignalName"
  150.   }
  151. }
  152. Block {
  153.   BlockType   Fcn
  154.   Name   "By-pass diode"
  155.   Position   [420, 67, 550, 103]
  156.   Expr   "-Vt*log((u/Io)+1)"
  157. }
  158. Block {
  159.   BlockType   Constant
  160.   Name   "Constant"
  161.   Position   [745, 190, 775, 220]
  162.   Value   "Diode"
  163.   OutDataType   "sfix(16)"
  164.   OutScaling   "2^0"
  165. }
  166. Block {
  167.   BlockType   Gain
  168.   Name   "Insolation to ncurrent gain"
  169.   Position   [115, 264, 160, 296]
  170.   Gain   "G"
  171.   ParameterDataTypeMode   "Inherit via internal rule"
  172.   ParameterDataType   "sfix(16)"
  173.   ParameterScaling   "2^0"
  174.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  175.   OutDataTypeMode   "Inherit via internal rule"
  176.   OutDataType   "sfix(16)"
  177.   OutScaling   "2^0"
  178.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  179.   SaturateOnIntegerOverflow off
  180.   Port {
  181.     PortNumber     1
  182.     Name     "Iph"
  183.     RTWStorageClass     "Auto"
  184.     DataLoggingNameMode     "SignalName"
  185.   }
  186. }
  187. Block {
  188.   BlockType   MinMax
  189.   Name   "MinMax"
  190.   Ports   [2, 1]
  191.   Position   [750, 77, 780, 108]
  192.   Function   "max"
  193.   Inputs   "2"
  194.   InputSameDT   off
  195.   OutDataType   "sfix(16)"
  196.   OutScaling   "2^0"
  197.   SaturateOnIntegerOverflow off
  198. }
  199. Block {
  200.   BlockType   Gain
  201.   Name   "Ns"
  202.   Position   [655, 262, 695, 298]
  203.   Gain   "Ns"
  204.   ParameterDataTypeMode   "Inherit via internal rule"
  205.   ParameterDataType   "sfix(16)"
  206.   ParameterScaling   "2^0"
  207.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  208.   OutDataTypeMode   "Inherit via internal rule"
  209.   OutDataType   "sfix(16)"
  210.   OutScaling   "2^0"
  211.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  212.   SaturateOnIntegerOverflow off
  213. }
  214. Block {
  215.   BlockType   Fcn
  216.   Name   "PN-junction characteristic"
  217.   Position   [430, 334, 510, 366]
  218.   Orientation   "left"
  219.   Expr   "Io*(exp(u/Vt)-1)"
  220.   Port {
  221.     PortNumber     1
  222.     Name     "Id"
  223.     RTWStorageClass     "Auto"
  224.     DataLoggingNameMode     "SignalName"
  225.   }
  226. }
  227. Block {
  228.   BlockType   Product
  229.   Name   "Product"
  230.   Ports   [2, 1]
  231.   Position   [905, 152, 935, 183]
  232.   InputSameDT   off
  233.   OutDataTypeMode   "Inherit via internal rule"
  234.   OutDataType   "sfix(16)"
  235.   OutScaling   "2^0"
  236.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  237.   SaturateOnIntegerOverflow off
  238. }
  239. Block {
  240.   BlockType   Gain
  241.   Name   "Rs"
  242.   Position   [420, 160, 460, 190]
  243.   NamePlacement   "alternate"
  244.   Gain   "Rs"
  245.   ParameterDataTypeMode   "Inherit via internal rule"
  246.   ParameterDataType   "sfix(16)"
  247.   ParameterScaling   "2^0"
  248.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  249.   OutDataTypeMode   "Inherit via internal rule"
  250.   OutDataType   "sfix(16)"
  251.   OutScaling   "2^0"
  252.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  253.   SaturateOnIntegerOverflow off
  254. }
  255. Block {
  256.   BlockType   Saturate
  257.   Name   "Saturation"
  258.   Position   [290, 35, 320, 65]
  259.   UpperLimit   "inf"
  260.   LowerLimit   "0"
  261. }
  262. Block {
  263.   BlockType   Sum
  264.   Name   "Sum1"
  265.   Ports   [2, 1]
  266.   Position   [575, 270, 595, 290]
  267.   ShowName   off
  268.   IconShape   "round"
  269.   Inputs   "-+|"
  270.   InputSameDT   off
  271.   OutDataTypeMode   "Inherit via internal rule"
  272.   OutDataType   "sfix(16)"
  273.   OutScaling   "2^0"
  274.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  275.   SaturateOnIntegerOverflow off
  276.   Port {
  277.     PortNumber     1
  278.     Name     "Vpvcell"
  279.     RTWStorageClass     "Auto"
  280.     DataLoggingNameMode     "SignalName"
  281.   }
  282. }
  283. Block {
  284.   BlockType   Sum
  285.   Name   "Sum2"
  286.   Ports   [2, 1]
  287.   Position   [325, 340, 345, 360]
  288.   Orientation   "left"
  289.   ShowName   off
  290.   IconShape   "round"
  291.   Inputs   "|++"
  292.   InputSameDT   off
  293.   OutDataTypeMode   "Inherit via internal rule"
  294.   OutDataType   "sfix(16)"
  295.   OutScaling   "2^0"
  296.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  297.   SaturateOnIntegerOverflow off
  298. }
  299. Block {
  300.   BlockType   Sum
  301.   Name   "Sum3"
  302.   Ports   [2, 1]
  303.   Position   [225, 270, 245, 290]
  304.   ShowName   off
  305.   IconShape   "round"
  306.   Inputs   "-+|"
  307.   InputSameDT   off
  308.   OutDataTypeMode   "Inherit via internal rule"
  309.   OutDataType   "sfix(16)"
  310.   OutScaling   "2^0"
  311.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  312.   SaturateOnIntegerOverflow off
  313. }
  314. Block {
  315.   BlockType   Sum
  316.   Name   "Sum4"
  317.   Ports   [2, 1]
  318.   Position   [285, 270, 305, 290]
  319.   ShowName   off
  320.   IconShape   "round"
  321.   Inputs   "|+-"
  322.   InputSameDT   off
  323.   OutDataTypeMode   "Inherit via internal rule"
  324.   OutDataType   "sfix(16)"
  325.   OutScaling   "2^0"
  326.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  327.   SaturateOnIntegerOverflow off
  328. }
  329. Block {
  330.   BlockType   Switch
  331.   Name   "Switch"
  332.   Position   [840, 255, 870, 285]
  333.   Criteria   "u2 > Threshold"
  334.   InputSameDT   off
  335.   SaturateOnIntegerOverflow off
  336. }
  337. Block {
  338.   BlockType   Outport
  339.   Name   "Vpv"
  340.   Position   [980, 263, 1010, 277]
  341.   IconDisplay   "Port number"
  342.   OutDataType   "sfix(16)"
  343.   OutScaling   "2^0"
  344. }
  345. Block {
  346.   BlockType   Outport
  347.   Name   "Ppv"
  348.   Position   [980, 163, 1010, 177]
  349.   Port   "2"
  350.   IconDisplay   "Port number"
  351.   OutDataType   "sfix(16)"
  352.   OutScaling   "2^0"
  353. }
  354. Line {
  355.   SrcBlock   "Insolation"
  356.   SrcPort   1
  357.   DstBlock   "Insolation to ncurrent gain"
  358.   DstPort   1
  359. }
  360. Line {
  361.   Name   "Iph"
  362.   Labels   [1, 0]
  363.   SrcBlock   "Insolation to ncurrent gain"
  364.   SrcPort   1
  365.   DstBlock   "Sum3"
  366.   DstPort   2
  367. }
  368. Line {
  369.   Name   "Ipv"
  370.   Labels   [0, 0]
  371.   SrcBlock   "Ipv"
  372.   SrcPort   1
  373.   Points   [30, 0]
  374.   Branch {
  375.     Points     [0, -125]
  376.     DstBlock     "Saturation"
  377.     DstPort     1
  378.   }
  379.   Branch {
  380.     Points     [145, 0]
  381.     Branch {
  382.       Labels       [1, 0]
  383.       DstBlock       "Sum3"
  384.       DstPort       1
  385.     }
  386.     Branch {
  387.       DstBlock       "Rs"
  388.       DstPort       1
  389.     }
  390.   }
  391. }
  392. Line {
  393.   SrcBlock   "Product"
  394.   SrcPort   1
  395.   DstBlock   "Ppv"
  396.   DstPort   1
  397. }
  398. Line {
  399.   SrcBlock   "Sum4"
  400.   SrcPort   1
  401.   DstBlock   "Algebraic Constraint"
  402.   DstPort   1
  403. }
  404. Line {
  405.   Name   "Vd"
  406.   Labels   [0, 0]
  407.   SrcBlock   "Algebraic Constraint"
  408.   SrcPort   1
  409.   Points   [50, 0]
  410.   Branch {
  411.     DstBlock     "Sum1"
  412.     DstPort     2
  413.   }
  414.   Branch {
  415.     Points     [0, 70]
  416.     Branch {
  417.       Points       [0, 55]
  418.       DstBlock       "1/Rp"
  419.       DstPort       1
  420.     }
  421.     Branch {
  422.       DstBlock       "PN-junction characteristic"
  423.       DstPort       1
  424.     }
  425.   }
  426. }
  427. Line {
  428.   Name   "Vpvcell"
  429.   Labels   [0, 0]
  430.   SrcBlock   "Sum1"
  431.   SrcPort   1
  432.   DstBlock   "Ns"
  433.   DstPort   1
  434. }
  435. Line {
  436.   SrcBlock   "Rs"
  437.   SrcPort   1
  438.   Points   [120, 0]
  439.   DstBlock   "Sum1"
  440.   DstPort   1
  441. }
  442. Line {
  443.   SrcBlock   "By-pass diode"
  444.   SrcPort   1
  445.   DstBlock   "MinMax"
  446.   DstPort   1
  447. }
  448. Line {
  449.   SrcBlock   "Ns"
  450.   SrcPort   1
  451.   Points   [20, 0]
  452.   Branch {
  453.     Points     [0, -180]
  454.     DstBlock     "MinMax"
  455.     DstPort     2
  456.   }
  457.   Branch {
  458.     DstBlock     "Switch"
  459.     DstPort     3
  460.   }
  461. }
  462. Line {
  463.   SrcBlock   "MinMax"
  464.   SrcPort   1
  465.   Points   [30, 0; 0, 165]
  466.   DstBlock   "Switch"
  467.   DstPort   1
  468. }
  469. Line {
  470.   SrcBlock   "Constant"
  471.   SrcPort   1
  472.   Points   [10, 0; 0, 65]
  473.   DstBlock   "Switch"
  474.   DstPort   2
  475. }
  476. Line {
  477.   SrcBlock   "Switch"
  478.   SrcPort   1
  479.   Points   [15, 0]
  480.   Branch {
  481.     DstBlock     "Vpv"
  482.     DstPort     1
  483.   }
  484.   Branch {
  485.     DstBlock     "Product"
  486.     DstPort     2
  487.   }
  488. }
  489. Line {
  490.   SrcBlock   "Saturation"
  491.   SrcPort   1
  492.   Points   [55, 0]
  493.   Branch {
  494.     Points     [500, 0; 0, 110]
  495.     DstBlock     "Product"
  496.     DstPort     1
  497.   }
  498.   Branch {
  499.     Points     [0, 35]
  500.     DstBlock     "By-pass diode"
  501.     DstPort     1
  502.   }
  503. }
  504. Line {
  505.   SrcBlock   "Sum3"
  506.   SrcPort   1
  507.   DstBlock   "Sum4"
  508.   DstPort   1
  509. }
  510. Line {
  511.   SrcBlock   "Sum2"
  512.   SrcPort   1
  513.   Points   [-25, 0]
  514.   DstBlock   "Sum4"
  515.   DstPort   2
  516. }
  517. Line {
  518.   Name   "Id"
  519.   Labels   [0, 0]
  520.   SrcBlock   "PN-junction characteristic"
  521.   SrcPort   1
  522.   DstBlock   "Sum2"
  523.   DstPort   1
  524. }
  525. Line {
  526.   Name   "Vd/Rp"
  527.   Labels   [0, 0]
  528.   SrcBlock   "1/Rp"
  529.   SrcPort   1
  530.   Points   [-105, 0]
  531.   DstBlock   "Sum2"
  532.   DstPort   2
  533. }
  534.       }
  535.     }
  536.     Block {
  537.       BlockType       SubSystem
  538.       Name       "PV4"
  539.       Ports       [2, 2]
  540.       Position       [175, 322, 285, 373]
  541.       MinAlgLoopOccurrences   off
  542.       PropExecContextOutsideSubsystem off
  543.       RTWSystemCode       "Auto"
  544.       FunctionWithSeparateData off
  545.       Opaque       off
  546.       RequestExecContextInheritance off
  547.       MaskHideContents       off
  548.       MaskDescription       "PV module model based on module data-sheet parameters. This model has Ipv input, which is suitable for series connections. Limitations: no temperature dependance, static model"
  549.       MaskPromptString       "Short-circuit current|Open-circuit voltage|Current at Pmax|Voltage at Pmax|By-pass diode?"
  550.       MaskStyleString       "edit,edit,edit,edit,checkbox"
  551.       MaskTunableValueString  "on,on,on,on,on"
  552.       MaskCallbackString      "||||"
  553.       MaskEnableString       "on,on,on,on,on"
  554.       MaskVisibilityString    "on,on,on,on,on"
  555.       MaskToolTipString       "on,on,on,on,on"
  556.       MaskVarAliasString      ",,,,"
  557.       MaskVariables       "Isc=@1;Voc=@2;Ir=@3;Vr=@4;Diode=@5;"
  558.       MaskInitialization      "% calculation of PV module parametersn% limitation: constant temperaturenNs = round(Voc/0.61); % default number of cells in seriesnVt = 26e-3; % thermal voltagenG = Isc/1000; % irradiation to short-circuit current gainnVmpc = Vr/Ns; % cell voltage at rated PmaxnVocc = Voc/Ns; % cell open-circuit voltagenRmpp = Vmpc/Ir; % cell load resistance at Pmaxn%nRp = 100*Vocc/Isc; % initial value for RpnVdm = Vocc; % initial value for Vdmn%n% iterative solution for model parameters: Io, Rs, Rpnfor i=1:10n%n Idm = Isc - Ir - Vdm/Rp; % pn-junction (diode) current at MPPn Io = (Isc-Vocc/Rp)/(exp(Vocc/Vt)-1); % pn-junction reverse saturation currentn Vdm = Vt*log(Idm/Io+1); % pn-junction (diode) voltage at MPPn Rs = (Vdm-Vmpc)/Ir; % cell series resistancen Rd = (Rmpp - Rs)*Rp/(Rp-Rmpp+Rs); % diode incremental resistance at MPPn Idm = Vt/Rd; % diode current at MPP based on incremental resistancen Rp = Vdm/(Isc-Ir-Idm); % cell parallel resistancen%nendn%"
  559.       MaskDisplay       "plot([0.3 0.4],[0.4 0.8]);nplot([0.4 0.5],[0.4 0.8]);nplot([0.5 0.6],[0.4 0.8]);nplot([0.6 0.7],[0.4 0.8]);nplot([0.3 0.6],[0.4 0.4]);nplot([0.325 0.625],[0.5 0.5]);nplot([0.35 0.65],[0.6 0.6]);nplot([0.375 0.675],[0.7 0.7]);nplot([0.4 0.7],[0.8 0.8]);ntext(0.5,0.9,'PV module (I)','horizontalAlignment', 'center');n"
  560.       MaskIconFrame       on
  561.       MaskIconOpaque       off
  562.       MaskIconRotate       "none"
  563.       MaskIconUnits       "normalized"
  564.       MaskValueString       "5.45|22.2|4.95|17.2|on"
  565.       MaskTabNameString       ",,,,"
  566.       System {
  567. Name "PV4"
  568. Location [164, 268, 1200, 729]
  569. Open off
  570. ModelBrowserVisibility off
  571. ModelBrowserWidth 200
  572. ScreenColor "white"
  573. PaperOrientation "landscape"
  574. PaperPositionMode "auto"
  575. PaperType "usletter"
  576. PaperUnits "inches"
  577. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  578. TiledPageScale 1
  579. ShowPageBoundaries off
  580. ZoomFactor "100"
  581. Block {
  582.   BlockType   Inport
  583.   Name   "Ipv"
  584.   Position   [25, 168, 55, 182]
  585.   IconDisplay   "Port number"
  586.   OutDataType   "sfix(16)"
  587.   OutScaling   "2^0"
  588.   Port {
  589.     PortNumber     1
  590.     Name     "Ipv"
  591.     PropagatedSignals     "Ipv"
  592.     RTWStorageClass     "Auto"
  593.     DataLoggingNameMode     "SignalName"
  594.   }
  595. }
  596. Block {
  597.   BlockType   Inport
  598.   Name   "Insolation"
  599.   Position   [25, 273, 55, 287]
  600.   Port   "2"
  601.   IconDisplay   "Port number"
  602.   OutDataType   "sfix(16)"
  603.   OutScaling   "2^0"
  604. }
  605. Block {
  606.   BlockType   Gain
  607.   Name   "1/Rp"
  608.   Position   [445, 390, 490, 420]
  609.   Orientation   "left"
  610.   Gain   "1/Rp"
  611.   ParameterDataTypeMode   "Inherit via internal rule"
  612.   ParameterDataType   "sfix(16)"
  613.   ParameterScaling   "2^0"
  614.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  615.   OutDataTypeMode   "Inherit via internal rule"
  616.   OutDataType   "sfix(16)"
  617.   OutScaling   "2^0"
  618.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  619.   SaturateOnIntegerOverflow off
  620.   Port {
  621.     PortNumber     1
  622.     Name     "Vd/Rp"
  623.     RTWStorageClass     "Auto"
  624.     DataLoggingNameMode     "SignalName"
  625.   }
  626. }
  627. Block {
  628.   BlockType   Reference
  629.   Name   "Algebraic Constraint"
  630.   Ports   [1, 1]
  631.   Position   [410, 265, 490, 295]
  632.   SourceBlock   "simulink/MathnOperations/Algebraic Constraint"
  633.   SourceType   "Algebraic Constraint"
  634.   ShowPortLabels   "FromPortIcon"
  635.   SystemSampleTime   "-1"
  636.   FunctionWithSeparateData off
  637.   RTWMemSecFuncInitTerm   "Inherit from model"
  638.   RTWMemSecFuncExecute   "Inherit from model"
  639.   RTWMemSecDataConstants  "Inherit from model"
  640.   RTWMemSecDataInternal   "Inherit from model"
  641.   RTWMemSecDataParameters "Inherit from model"
  642.   z0   "0"
  643.   Port {
  644.     PortNumber     1
  645.     Name     "Vd"
  646.     RTWStorageClass     "Auto"
  647.     DataLoggingNameMode     "SignalName"
  648.   }
  649. }
  650. Block {
  651.   BlockType   Fcn
  652.   Name   "By-pass diode"
  653.   Position   [420, 67, 550, 103]
  654.   Expr   "-Vt*log((u/Io)+1)"
  655. }
  656. Block {
  657.   BlockType   Constant
  658.   Name   "Constant"
  659.   Position   [745, 190, 775, 220]
  660.   Value   "Diode"
  661.   OutDataType   "sfix(16)"
  662.   OutScaling   "2^0"
  663. }
  664. Block {
  665.   BlockType   Gain
  666.   Name   "Insolation to ncurrent gain"
  667.   Position   [115, 264, 160, 296]
  668.   Gain   "G"
  669.   ParameterDataTypeMode   "Inherit via internal rule"
  670.   ParameterDataType   "sfix(16)"
  671.   ParameterScaling   "2^0"
  672.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  673.   OutDataTypeMode   "Inherit via internal rule"
  674.   OutDataType   "sfix(16)"
  675.   OutScaling   "2^0"
  676.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  677.   SaturateOnIntegerOverflow off
  678.   Port {
  679.     PortNumber     1
  680.     Name     "Iph"
  681.     RTWStorageClass     "Auto"
  682.     DataLoggingNameMode     "SignalName"
  683.   }
  684. }
  685. Block {
  686.   BlockType   MinMax
  687.   Name   "MinMax"
  688.   Ports   [2, 1]
  689.   Position   [750, 77, 780, 108]
  690.   Function   "max"
  691.   Inputs   "2"
  692.   InputSameDT   off
  693.   OutDataType   "sfix(16)"
  694.   OutScaling   "2^0"
  695.   SaturateOnIntegerOverflow off
  696. }
  697. Block {
  698.   BlockType   Gain
  699.   Name   "Ns"
  700.   Position   [655, 262, 695, 298]
  701.   Gain   "Ns"
  702.   ParameterDataTypeMode   "Inherit via internal rule"
  703.   ParameterDataType   "sfix(16)"
  704.   ParameterScaling   "2^0"
  705.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  706.   OutDataTypeMode   "Inherit via internal rule"
  707.   OutDataType   "sfix(16)"
  708.   OutScaling   "2^0"
  709.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  710.   SaturateOnIntegerOverflow off
  711. }
  712. Block {
  713.   BlockType   Fcn
  714.   Name   "PN-junction characteristic"
  715.   Position   [430, 334, 510, 366]
  716.   Orientation   "left"
  717.   Expr   "Io*(exp(u/Vt)-1)"
  718.   Port {
  719.     PortNumber     1
  720.     Name     "Id"
  721.     RTWStorageClass     "Auto"
  722.     DataLoggingNameMode     "SignalName"
  723.   }
  724. }
  725. Block {
  726.   BlockType   Product
  727.   Name   "Product"
  728.   Ports   [2, 1]
  729.   Position   [905, 152, 935, 183]
  730.   InputSameDT   off
  731.   OutDataTypeMode   "Inherit via internal rule"
  732.   OutDataType   "sfix(16)"
  733.   OutScaling   "2^0"
  734.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  735.   SaturateOnIntegerOverflow off
  736. }
  737. Block {
  738.   BlockType   Gain
  739.   Name   "Rs"
  740.   Position   [420, 160, 460, 190]
  741.   NamePlacement   "alternate"
  742.   Gain   "Rs"
  743.   ParameterDataTypeMode   "Inherit via internal rule"
  744.   ParameterDataType   "sfix(16)"
  745.   ParameterScaling   "2^0"
  746.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  747.   OutDataTypeMode   "Inherit via internal rule"
  748.   OutDataType   "sfix(16)"
  749.   OutScaling   "2^0"
  750.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  751.   SaturateOnIntegerOverflow off
  752. }
  753. Block {
  754.   BlockType   Saturate
  755.   Name   "Saturation"
  756.   Position   [290, 35, 320, 65]
  757.   UpperLimit   "inf"
  758.   LowerLimit   "0"
  759. }
  760. Block {
  761.   BlockType   Sum
  762.   Name   "Sum1"
  763.   Ports   [2, 1]
  764.   Position   [575, 270, 595, 290]
  765.   ShowName   off
  766.   IconShape   "round"
  767.   Inputs   "-+|"
  768.   InputSameDT   off
  769.   OutDataTypeMode   "Inherit via internal rule"
  770.   OutDataType   "sfix(16)"
  771.   OutScaling   "2^0"
  772.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  773.   SaturateOnIntegerOverflow off
  774.   Port {
  775.     PortNumber     1
  776.     Name     "Vpvcell"
  777.     RTWStorageClass     "Auto"
  778.     DataLoggingNameMode     "SignalName"
  779.   }
  780. }
  781. Block {
  782.   BlockType   Sum
  783.   Name   "Sum2"
  784.   Ports   [2, 1]
  785.   Position   [325, 340, 345, 360]
  786.   Orientation   "left"
  787.   ShowName   off
  788.   IconShape   "round"
  789.   Inputs   "|++"
  790.   InputSameDT   off
  791.   OutDataTypeMode   "Inherit via internal rule"
  792.   OutDataType   "sfix(16)"
  793.   OutScaling   "2^0"
  794.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  795.   SaturateOnIntegerOverflow off
  796. }
  797. Block {
  798.   BlockType   Sum
  799.   Name   "Sum3"
  800.   Ports   [2, 1]
  801.   Position   [225, 270, 245, 290]
  802.   ShowName   off
  803.   IconShape   "round"
  804.   Inputs   "-+|"
  805.   InputSameDT   off
  806.   OutDataTypeMode   "Inherit via internal rule"
  807.   OutDataType   "sfix(16)"
  808.   OutScaling   "2^0"
  809.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  810.   SaturateOnIntegerOverflow off
  811. }
  812. Block {
  813.   BlockType   Sum
  814.   Name   "Sum4"
  815.   Ports   [2, 1]
  816.   Position   [285, 270, 305, 290]
  817.   ShowName   off
  818.   IconShape   "round"
  819.   Inputs   "|+-"
  820.   InputSameDT   off
  821.   OutDataTypeMode   "Inherit via internal rule"
  822.   OutDataType   "sfix(16)"
  823.   OutScaling   "2^0"
  824.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  825.   SaturateOnIntegerOverflow off
  826. }
  827. Block {
  828.   BlockType   Switch
  829.   Name   "Switch"
  830.   Position   [840, 255, 870, 285]
  831.   Criteria   "u2 > Threshold"
  832.   InputSameDT   off
  833.   SaturateOnIntegerOverflow off
  834. }
  835. Block {
  836.   BlockType   Outport
  837.   Name   "Vpv"
  838.   Position   [980, 263, 1010, 277]
  839.   IconDisplay   "Port number"
  840.   OutDataType   "sfix(16)"
  841.   OutScaling   "2^0"
  842. }
  843. Block {
  844.   BlockType   Outport
  845.   Name   "Ppv"
  846.   Position   [980, 163, 1010, 177]
  847.   Port   "2"
  848.   IconDisplay   "Port number"
  849.   OutDataType   "sfix(16)"
  850.   OutScaling   "2^0"
  851. }
  852. Line {
  853.   SrcBlock   "Insolation"
  854.   SrcPort   1
  855.   DstBlock   "Insolation to ncurrent gain"
  856.   DstPort   1
  857. }
  858. Line {
  859.   Name   "Iph"
  860.   Labels   [1, 0]
  861.   SrcBlock   "Insolation to ncurrent gain"
  862.   SrcPort   1
  863.   DstBlock   "Sum3"
  864.   DstPort   2
  865. }
  866. Line {
  867.   Name   "Ipv"
  868.   Labels   [0, 0]
  869.   SrcBlock   "Ipv"
  870.   SrcPort   1
  871.   Points   [30, 0]
  872.   Branch {
  873.     Points     [0, -125]
  874.     DstBlock     "Saturation"
  875.     DstPort     1
  876.   }
  877.   Branch {
  878.     Points     [145, 0]
  879.     Branch {
  880.       Labels       [1, 0]
  881.       DstBlock       "Sum3"
  882.       DstPort       1
  883.     }
  884.     Branch {
  885.       DstBlock       "Rs"
  886.       DstPort       1
  887.     }
  888.   }
  889. }
  890. Line {
  891.   SrcBlock   "Product"
  892.   SrcPort   1
  893.   DstBlock   "Ppv"
  894.   DstPort   1
  895. }
  896. Line {
  897.   SrcBlock   "Sum4"
  898.   SrcPort   1
  899.   DstBlock   "Algebraic Constraint"
  900.   DstPort   1
  901. }
  902. Line {
  903.   Name   "Vd"
  904.   Labels   [0, 0]
  905.   SrcBlock   "Algebraic Constraint"
  906.   SrcPort   1
  907.   Points   [50, 0]
  908.   Branch {
  909.     DstBlock     "Sum1"
  910.     DstPort     2
  911.   }
  912.   Branch {
  913.     Points     [0, 70]
  914.     Branch {
  915.       Points       [0, 55]
  916.       DstBlock       "1/Rp"
  917.       DstPort       1
  918.     }
  919.     Branch {
  920.       DstBlock       "PN-junction characteristic"
  921.       DstPort       1
  922.     }
  923.   }
  924. }
  925. Line {
  926.   Name   "Vpvcell"
  927.   Labels   [0, 0]
  928.   SrcBlock   "Sum1"
  929.   SrcPort   1
  930.   DstBlock   "Ns"
  931.   DstPort   1
  932. }
  933. Line {
  934.   SrcBlock   "Rs"
  935.   SrcPort   1
  936.   Points   [120, 0]
  937.   DstBlock   "Sum1"
  938.   DstPort   1
  939. }
  940. Line {
  941.   SrcBlock   "By-pass diode"
  942.   SrcPort   1
  943.   DstBlock   "MinMax"
  944.   DstPort   1
  945. }
  946. Line {
  947.   SrcBlock   "Ns"
  948.   SrcPort   1
  949.   Points   [20, 0]
  950.   Branch {
  951.     Points     [0, -180]
  952.     DstBlock     "MinMax"
  953.     DstPort     2
  954.   }
  955.   Branch {
  956.     DstBlock     "Switch"
  957.     DstPort     3
  958.   }
  959. }
  960. Line {
  961.   SrcBlock   "MinMax"
  962.   SrcPort   1
  963.   Points   [30, 0; 0, 165]
  964.   DstBlock   "Switch"
  965.   DstPort   1
  966. }
  967. Line {
  968.   SrcBlock   "Constant"
  969.   SrcPort   1
  970.   Points   [10, 0; 0, 65]
  971.   DstBlock   "Switch"
  972.   DstPort   2
  973. }
  974. Line {
  975.   SrcBlock   "Switch"
  976.   SrcPort   1
  977.   Points   [15, 0]
  978.   Branch {
  979.     DstBlock     "Vpv"
  980.     DstPort     1
  981.   }
  982.   Branch {
  983.     DstBlock     "Product"
  984.     DstPort     2
  985.   }
  986. }
  987. Line {
  988.   SrcBlock   "Saturation"
  989.   SrcPort   1
  990.   Points   [55, 0]
  991.   Branch {
  992.     Points     [500, 0; 0, 110]
  993.     DstBlock     "Product"
  994.     DstPort     1
  995.   }
  996.   Branch {
  997.     Points     [0, 35]
  998.     DstBlock     "By-pass diode"
  999.     DstPort     1
  1000.   }
  1001. }
  1002. Line {
  1003.   SrcBlock   "Sum3"
  1004.   SrcPort   1
  1005.   DstBlock   "Sum4"
  1006.   DstPort   1
  1007. }
  1008. Line {
  1009.   SrcBlock   "Sum2"
  1010.   SrcPort   1
  1011.   Points   [-25, 0]
  1012.   DstBlock   "Sum4"
  1013.   DstPort   2
  1014. }
  1015. Line {
  1016.   Name   "Id"
  1017.   Labels   [0, 0]
  1018.   SrcBlock   "PN-junction characteristic"
  1019.   SrcPort   1
  1020.   DstBlock   "Sum2"
  1021.   DstPort   1
  1022. }
  1023. Line {
  1024.   Name   "Vd/Rp"
  1025.   Labels   [0, 0]
  1026.   SrcBlock   "1/Rp"
  1027.   SrcPort   1
  1028.   Points   [-105, 0]
  1029.   DstBlock   "Sum2"
  1030.   DstPort   2
  1031. }
  1032.       }
  1033.     }
  1034.     Block {
  1035.       BlockType       SubSystem
  1036.       Name       "PV5"
  1037.       Ports       [2, 2]
  1038.       Position       [175, 412, 285, 463]
  1039.       MinAlgLoopOccurrences   off
  1040.       PropExecContextOutsideSubsystem off
  1041.       RTWSystemCode       "Auto"
  1042.       FunctionWithSeparateData off
  1043.       Opaque       off
  1044.       RequestExecContextInheritance off
  1045.       MaskHideContents       off
  1046.       MaskDescription       "PV module model based on module data-sheet parameters. This model has Ipv input, which is suitable for series connections. Limitations: no temperature dependance, static model"
  1047.       MaskPromptString       "Short-circuit current|Open-circuit voltage|Current at Pmax|Voltage at Pmax|By-pass diode?"
  1048.       MaskStyleString       "edit,edit,edit,edit,checkbox"
  1049.       MaskTunableValueString  "on,on,on,on,on"
  1050.       MaskCallbackString      "||||"
  1051.       MaskEnableString       "on,on,on,on,on"
  1052.       MaskVisibilityString    "on,on,on,on,on"
  1053.       MaskToolTipString       "on,on,on,on,on"
  1054.       MaskVarAliasString      ",,,,"
  1055.       MaskVariables       "Isc=@1;Voc=@2;Ir=@3;Vr=@4;Diode=@5;"
  1056.       MaskInitialization      "% calculation of PV module parametersn% limitation: constant temperaturenNs = round(Voc/0.61); % default number of cells in seriesnVt = 26e-3; % thermal voltagenG = Isc/1000; % irradiation to short-circuit current gainnVmpc = Vr/Ns; % cell voltage at rated PmaxnVocc = Voc/Ns; % cell open-circuit voltagenRmpp = Vmpc/Ir; % cell load resistance at Pmaxn%nRp = 100*Vocc/Isc; % initial value for RpnVdm = Vocc; % initial value for Vdmn%n% iterative solution for model parameters: Io, Rs, Rpnfor i=1:10n%n Idm = Isc - Ir - Vdm/Rp; % pn-junction (diode) current at MPPn Io = (Isc-Vocc/Rp)/(exp(Vocc/Vt)-1); % pn-junction reverse saturation currentn Vdm = Vt*log(Idm/Io+1); % pn-junction (diode) voltage at MPPn Rs = (Vdm-Vmpc)/Ir; % cell series resistancen Rd = (Rmpp - Rs)*Rp/(Rp-Rmpp+Rs); % diode incremental resistance at MPPn Idm = Vt/Rd; % diode current at MPP based on incremental resistancen Rp = Vdm/(Isc-Ir-Idm); % cell parallel resistancen%nendn%"
  1057.       MaskDisplay       "plot([0.3 0.4],[0.4 0.8]);nplot([0.4 0.5],[0.4 0.8]);nplot([0.5 0.6],[0.4 0.8]);nplot([0.6 0.7],[0.4 0.8]);nplot([0.3 0.6],[0.4 0.4]);nplot([0.325 0.625],[0.5 0.5]);nplot([0.35 0.65],[0.6 0.6]);nplot([0.375 0.675],[0.7 0.7]);nplot([0.4 0.7],[0.8 0.8]);ntext(0.5,0.9,'PV module (I)','horizontalAlignment', 'center');n"
  1058.       MaskIconFrame       on
  1059.       MaskIconOpaque       off
  1060.       MaskIconRotate       "none"
  1061.       MaskIconUnits       "normalized"
  1062.       MaskValueString       "5.45|22.2|4.95|17.2|on"
  1063.       MaskTabNameString       ",,,,"
  1064.       System {
  1065. Name "PV5"
  1066. Location [164, 268, 1200, 729]
  1067. Open off
  1068. ModelBrowserVisibility off
  1069. ModelBrowserWidth 200
  1070. ScreenColor "white"
  1071. PaperOrientation "landscape"
  1072. PaperPositionMode "auto"
  1073. PaperType "usletter"
  1074. PaperUnits "inches"
  1075. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  1076. TiledPageScale 1
  1077. ShowPageBoundaries off
  1078. ZoomFactor "100"
  1079. Block {
  1080.   BlockType   Inport
  1081.   Name   "Ipv"
  1082.   Position   [25, 168, 55, 182]
  1083.   IconDisplay   "Port number"
  1084.   OutDataType   "sfix(16)"
  1085.   OutScaling   "2^0"
  1086.   Port {
  1087.     PortNumber     1
  1088.     Name     "Ipv"
  1089.     PropagatedSignals     "Ipv"
  1090.     RTWStorageClass     "Auto"
  1091.     DataLoggingNameMode     "SignalName"
  1092.   }
  1093. }
  1094. Block {
  1095.   BlockType   Inport
  1096.   Name   "Insolation"
  1097.   Position   [25, 273, 55, 287]
  1098.   Port   "2"
  1099.   IconDisplay   "Port number"
  1100.   OutDataType   "sfix(16)"
  1101.   OutScaling   "2^0"
  1102. }
  1103. Block {
  1104.   BlockType   Gain
  1105.   Name   "1/Rp"
  1106.   Position   [445, 390, 490, 420]
  1107.   Orientation   "left"
  1108.   Gain   "1/Rp"
  1109.   ParameterDataTypeMode   "Inherit via internal rule"
  1110.   ParameterDataType   "sfix(16)"
  1111.   ParameterScaling   "2^0"
  1112.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1113.   OutDataTypeMode   "Inherit via internal rule"
  1114.   OutDataType   "sfix(16)"
  1115.   OutScaling   "2^0"
  1116.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1117.   SaturateOnIntegerOverflow off
  1118.   Port {
  1119.     PortNumber     1
  1120.     Name     "Vd/Rp"
  1121.     RTWStorageClass     "Auto"
  1122.     DataLoggingNameMode     "SignalName"
  1123.   }
  1124. }
  1125. Block {
  1126.   BlockType   Reference
  1127.   Name   "Algebraic Constraint"
  1128.   Ports   [1, 1]
  1129.   Position   [410, 265, 490, 295]
  1130.   SourceBlock   "simulink/MathnOperations/Algebraic Constraint"
  1131.   SourceType   "Algebraic Constraint"
  1132.   ShowPortLabels   "FromPortIcon"
  1133.   SystemSampleTime   "-1"
  1134.   FunctionWithSeparateData off
  1135.   RTWMemSecFuncInitTerm   "Inherit from model"
  1136.   RTWMemSecFuncExecute   "Inherit from model"
  1137.   RTWMemSecDataConstants  "Inherit from model"
  1138.   RTWMemSecDataInternal   "Inherit from model"
  1139.   RTWMemSecDataParameters "Inherit from model"
  1140.   z0   "0"
  1141.   Port {
  1142.     PortNumber     1
  1143.     Name     "Vd"
  1144.     RTWStorageClass     "Auto"
  1145.     DataLoggingNameMode     "SignalName"
  1146.   }
  1147. }
  1148. Block {
  1149.   BlockType   Fcn
  1150.   Name   "By-pass diode"
  1151.   Position   [420, 67, 550, 103]
  1152.   Expr   "-Vt*log((u/Io)+1)"
  1153. }
  1154. Block {
  1155.   BlockType   Constant
  1156.   Name   "Constant"
  1157.   Position   [745, 190, 775, 220]
  1158.   Value   "Diode"
  1159.   OutDataType   "sfix(16)"
  1160.   OutScaling   "2^0"
  1161. }
  1162. Block {
  1163.   BlockType   Gain
  1164.   Name   "Insolation to ncurrent gain"
  1165.   Position   [115, 264, 160, 296]
  1166.   Gain   "G"
  1167.   ParameterDataTypeMode   "Inherit via internal rule"
  1168.   ParameterDataType   "sfix(16)"
  1169.   ParameterScaling   "2^0"
  1170.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1171.   OutDataTypeMode   "Inherit via internal rule"
  1172.   OutDataType   "sfix(16)"
  1173.   OutScaling   "2^0"
  1174.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1175.   SaturateOnIntegerOverflow off
  1176.   Port {
  1177.     PortNumber     1
  1178.     Name     "Iph"
  1179.     RTWStorageClass     "Auto"
  1180.     DataLoggingNameMode     "SignalName"
  1181.   }
  1182. }
  1183. Block {
  1184.   BlockType   MinMax
  1185.   Name   "MinMax"
  1186.   Ports   [2, 1]
  1187.   Position   [750, 77, 780, 108]
  1188.   Function   "max"
  1189.   Inputs   "2"
  1190.   InputSameDT   off
  1191.   OutDataType   "sfix(16)"
  1192.   OutScaling   "2^0"
  1193.   SaturateOnIntegerOverflow off
  1194. }
  1195. Block {
  1196.   BlockType   Gain
  1197.   Name   "Ns"
  1198.   Position   [655, 262, 695, 298]
  1199.   Gain   "Ns"
  1200.   ParameterDataTypeMode   "Inherit via internal rule"
  1201.   ParameterDataType   "sfix(16)"
  1202.   ParameterScaling   "2^0"
  1203.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1204.   OutDataTypeMode   "Inherit via internal rule"
  1205.   OutDataType   "sfix(16)"
  1206.   OutScaling   "2^0"
  1207.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1208.   SaturateOnIntegerOverflow off
  1209. }
  1210. Block {
  1211.   BlockType   Fcn
  1212.   Name   "PN-junction characteristic"
  1213.   Position   [430, 334, 510, 366]
  1214.   Orientation   "left"
  1215.   Expr   "Io*(exp(u/Vt)-1)"
  1216.   Port {
  1217.     PortNumber     1
  1218.     Name     "Id"
  1219.     RTWStorageClass     "Auto"
  1220.     DataLoggingNameMode     "SignalName"
  1221.   }
  1222. }
  1223. Block {
  1224.   BlockType   Product
  1225.   Name   "Product"
  1226.   Ports   [2, 1]
  1227.   Position   [905, 152, 935, 183]
  1228.   InputSameDT   off
  1229.   OutDataTypeMode   "Inherit via internal rule"
  1230.   OutDataType   "sfix(16)"
  1231.   OutScaling   "2^0"
  1232.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1233.   SaturateOnIntegerOverflow off
  1234. }
  1235. Block {
  1236.   BlockType   Gain
  1237.   Name   "Rs"
  1238.   Position   [420, 160, 460, 190]
  1239.   NamePlacement   "alternate"
  1240.   Gain   "Rs"
  1241.   ParameterDataTypeMode   "Inherit via internal rule"
  1242.   ParameterDataType   "sfix(16)"
  1243.   ParameterScaling   "2^0"
  1244.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1245.   OutDataTypeMode   "Inherit via internal rule"
  1246.   OutDataType   "sfix(16)"
  1247.   OutScaling   "2^0"
  1248.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1249.   SaturateOnIntegerOverflow off
  1250. }
  1251. Block {
  1252.   BlockType   Saturate
  1253.   Name   "Saturation"
  1254.   Position   [290, 35, 320, 65]
  1255.   UpperLimit   "inf"
  1256.   LowerLimit   "0"
  1257. }
  1258. Block {
  1259.   BlockType   Sum
  1260.   Name   "Sum1"
  1261.   Ports   [2, 1]
  1262.   Position   [575, 270, 595, 290]
  1263.   ShowName   off
  1264.   IconShape   "round"
  1265.   Inputs   "-+|"
  1266.   InputSameDT   off
  1267.   OutDataTypeMode   "Inherit via internal rule"
  1268.   OutDataType   "sfix(16)"
  1269.   OutScaling   "2^0"
  1270.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1271.   SaturateOnIntegerOverflow off
  1272.   Port {
  1273.     PortNumber     1
  1274.     Name     "Vpvcell"
  1275.     RTWStorageClass     "Auto"
  1276.     DataLoggingNameMode     "SignalName"
  1277.   }
  1278. }
  1279. Block {
  1280.   BlockType   Sum
  1281.   Name   "Sum2"
  1282.   Ports   [2, 1]
  1283.   Position   [325, 340, 345, 360]
  1284.   Orientation   "left"
  1285.   ShowName   off
  1286.   IconShape   "round"
  1287.   Inputs   "|++"
  1288.   InputSameDT   off
  1289.   OutDataTypeMode   "Inherit via internal rule"
  1290.   OutDataType   "sfix(16)"
  1291.   OutScaling   "2^0"
  1292.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1293.   SaturateOnIntegerOverflow off
  1294. }
  1295. Block {
  1296.   BlockType   Sum
  1297.   Name   "Sum3"
  1298.   Ports   [2, 1]
  1299.   Position   [225, 270, 245, 290]
  1300.   ShowName   off
  1301.   IconShape   "round"
  1302.   Inputs   "-+|"
  1303.   InputSameDT   off
  1304.   OutDataTypeMode   "Inherit via internal rule"
  1305.   OutDataType   "sfix(16)"
  1306.   OutScaling   "2^0"
  1307.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1308.   SaturateOnIntegerOverflow off
  1309. }
  1310. Block {
  1311.   BlockType   Sum
  1312.   Name   "Sum4"
  1313.   Ports   [2, 1]
  1314.   Position   [285, 270, 305, 290]
  1315.   ShowName   off
  1316.   IconShape   "round"
  1317.   Inputs   "|+-"
  1318.   InputSameDT   off
  1319.   OutDataTypeMode   "Inherit via internal rule"
  1320.   OutDataType   "sfix(16)"
  1321.   OutScaling   "2^0"
  1322.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1323.   SaturateOnIntegerOverflow off
  1324. }
  1325. Block {
  1326.   BlockType   Switch
  1327.   Name   "Switch"
  1328.   Position   [840, 255, 870, 285]
  1329.   Criteria   "u2 > Threshold"
  1330.   InputSameDT   off
  1331.   SaturateOnIntegerOverflow off
  1332. }
  1333. Block {
  1334.   BlockType   Outport
  1335.   Name   "Vpv"
  1336.   Position   [980, 263, 1010, 277]
  1337.   IconDisplay   "Port number"
  1338.   OutDataType   "sfix(16)"
  1339.   OutScaling   "2^0"
  1340. }
  1341. Block {
  1342.   BlockType   Outport
  1343.   Name   "Ppv"
  1344.   Position   [980, 163, 1010, 177]
  1345.   Port   "2"
  1346.   IconDisplay   "Port number"
  1347.   OutDataType   "sfix(16)"
  1348.   OutScaling   "2^0"
  1349. }
  1350. Line {
  1351.   SrcBlock   "Insolation"
  1352.   SrcPort   1
  1353.   DstBlock   "Insolation to ncurrent gain"
  1354.   DstPort   1
  1355. }
  1356. Line {
  1357.   Name   "Iph"
  1358.   Labels   [1, 0]
  1359.   SrcBlock   "Insolation to ncurrent gain"
  1360.   SrcPort   1
  1361.   DstBlock   "Sum3"
  1362.   DstPort   2
  1363. }
  1364. Line {
  1365.   Name   "Ipv"
  1366.   Labels   [0, 0]
  1367.   SrcBlock   "Ipv"
  1368.   SrcPort   1
  1369.   Points   [30, 0]
  1370.   Branch {
  1371.     Points     [0, -125]
  1372.     DstBlock     "Saturation"
  1373.     DstPort     1
  1374.   }
  1375.   Branch {
  1376.     Points     [145, 0]
  1377.     Branch {
  1378.       Labels       [1, 0]
  1379.       DstBlock       "Sum3"
  1380.       DstPort       1
  1381.     }
  1382.     Branch {
  1383.       DstBlock       "Rs"
  1384.       DstPort       1
  1385.     }
  1386.   }
  1387. }
  1388. Line {
  1389.   SrcBlock   "Product"
  1390.   SrcPort   1
  1391.   DstBlock   "Ppv"
  1392.   DstPort   1
  1393. }
  1394. Line {
  1395.   SrcBlock   "Sum4"
  1396.   SrcPort   1
  1397.   DstBlock   "Algebraic Constraint"
  1398.   DstPort   1
  1399. }
  1400. Line {
  1401.   Name   "Vd"
  1402.   Labels   [0, 0]
  1403.   SrcBlock   "Algebraic Constraint"
  1404.   SrcPort   1
  1405.   Points   [50, 0]
  1406.   Branch {
  1407.     DstBlock     "Sum1"
  1408.     DstPort     2
  1409.   }
  1410.   Branch {
  1411.     Points     [0, 70]
  1412.     Branch {
  1413.       Points       [0, 55]
  1414.       DstBlock       "1/Rp"
  1415.       DstPort       1
  1416.     }
  1417.     Branch {
  1418.       DstBlock       "PN-junction characteristic"
  1419.       DstPort       1
  1420.     }
  1421.   }
  1422. }
  1423. Line {
  1424.   Name   "Vpvcell"
  1425.   Labels   [0, 0]
  1426.   SrcBlock   "Sum1"
  1427.   SrcPort   1
  1428.   DstBlock   "Ns"
  1429.   DstPort   1
  1430. }
  1431. Line {
  1432.   SrcBlock   "Rs"
  1433.   SrcPort   1
  1434.   Points   [120, 0]
  1435.   DstBlock   "Sum1"
  1436.   DstPort   1
  1437. }
  1438. Line {
  1439.   SrcBlock   "By-pass diode"
  1440.   SrcPort   1
  1441.   DstBlock   "MinMax"
  1442.   DstPort   1
  1443. }
  1444. Line {
  1445.   SrcBlock   "Ns"
  1446.   SrcPort   1
  1447.   Points   [20, 0]
  1448.   Branch {
  1449.     Points     [0, -180]
  1450.     DstBlock     "MinMax"
  1451.     DstPort     2
  1452.   }
  1453.   Branch {
  1454.     DstBlock     "Switch"
  1455.     DstPort     3
  1456.   }
  1457. }
  1458. Line {
  1459.   SrcBlock   "MinMax"
  1460.   SrcPort   1
  1461.   Points   [30, 0; 0, 165]
  1462.   DstBlock   "Switch"
  1463.   DstPort   1
  1464. }
  1465. Line {
  1466.   SrcBlock   "Constant"
  1467.   SrcPort   1
  1468.   Points   [10, 0; 0, 65]
  1469.   DstBlock   "Switch"
  1470.   DstPort   2
  1471. }
  1472. Line {
  1473.   SrcBlock   "Switch"
  1474.   SrcPort   1
  1475.   Points   [15, 0]
  1476.   Branch {
  1477.     DstBlock     "Vpv"
  1478.     DstPort     1
  1479.   }
  1480.   Branch {
  1481.     DstBlock     "Product"
  1482.     DstPort     2
  1483.   }
  1484. }
  1485. Line {
  1486.   SrcBlock   "Saturation"
  1487.   SrcPort   1
  1488.   Points   [55, 0]
  1489.   Branch {
  1490.     Points     [500, 0; 0, 110]
  1491.     DstBlock     "Product"
  1492.     DstPort     1
  1493.   }
  1494.   Branch {
  1495.     Points     [0, 35]
  1496.     DstBlock     "By-pass diode"
  1497.     DstPort     1
  1498.   }
  1499. }
  1500. Line {
  1501.   SrcBlock   "Sum3"
  1502.   SrcPort   1
  1503.   DstBlock   "Sum4"
  1504.   DstPort   1
  1505. }
  1506. Line {
  1507.   SrcBlock   "Sum2"
  1508.   SrcPort   1
  1509.   Points   [-25, 0]
  1510.   DstBlock   "Sum4"
  1511.   DstPort   2
  1512. }
  1513. Line {
  1514.   Name   "Id"
  1515.   Labels   [0, 0]
  1516.   SrcBlock   "PN-junction characteristic"
  1517.   SrcPort   1
  1518.   DstBlock   "Sum2"
  1519.   DstPort   1
  1520. }
  1521. Line {
  1522.   Name   "Vd/Rp"
  1523.   Labels   [0, 0]
  1524.   SrcBlock   "1/Rp"
  1525.   SrcPort   1
  1526.   Points   [-105, 0]
  1527.   DstBlock   "Sum2"
  1528.   DstPort   2
  1529. }
  1530.       }
  1531.     }
  1532.     Block {
  1533.       BlockType       SubSystem
  1534.       Name       "PV6"
  1535.       Ports       [2, 2]
  1536.       Position       [175, 502, 285, 553]
  1537.       MinAlgLoopOccurrences   off
  1538.       PropExecContextOutsideSubsystem off
  1539.       RTWSystemCode       "Auto"
  1540.       FunctionWithSeparateData off
  1541.       Opaque       off
  1542.       RequestExecContextInheritance off
  1543.       MaskHideContents       off
  1544.       MaskDescription       "PV module model based on module data-sheet parameters. This model has Ipv input, which is suitable for series connections. Limitations: no temperature dependance, static model"
  1545.       MaskPromptString       "Short-circuit current|Open-circuit voltage|Current at Pmax|Voltage at Pmax|By-pass diode?"
  1546.       MaskStyleString       "edit,edit,edit,edit,checkbox"
  1547.       MaskTunableValueString  "on,on,on,on,on"
  1548.       MaskCallbackString      "||||"
  1549.       MaskEnableString       "on,on,on,on,on"
  1550.       MaskVisibilityString    "on,on,on,on,on"
  1551.       MaskToolTipString       "on,on,on,on,on"
  1552.       MaskVarAliasString      ",,,,"
  1553.       MaskVariables       "Isc=@1;Voc=@2;Ir=@3;Vr=@4;Diode=@5;"
  1554.       MaskInitialization      "% calculation of PV module parametersn% limitation: constant temperaturenNs = round(Voc/0.61); % default number of cells in seriesnVt = 26e-3; % thermal voltagenG = Isc/1000; % irradiation to short-circuit current gainnVmpc = Vr/Ns; % cell voltage at rated PmaxnVocc = Voc/Ns; % cell open-circuit voltagenRmpp = Vmpc/Ir; % cell load resistance at Pmaxn%nRp = 100*Vocc/Isc; % initial value for RpnVdm = Vocc; % initial value for Vdmn%n% iterative solution for model parameters: Io, Rs, Rpnfor i=1:10n%n Idm = Isc - Ir - Vdm/Rp; % pn-junction (diode) current at MPPn Io = (Isc-Vocc/Rp)/(exp(Vocc/Vt)-1); % pn-junction reverse saturation currentn Vdm = Vt*log(Idm/Io+1); % pn-junction (diode) voltage at MPPn Rs = (Vdm-Vmpc)/Ir; % cell series resistancen Rd = (Rmpp - Rs)*Rp/(Rp-Rmpp+Rs); % diode incremental resistance at MPPn Idm = Vt/Rd; % diode current at MPP based on incremental resistancen Rp = Vdm/(Isc-Ir-Idm); % cell parallel resistancen%nendn%"
  1555.       MaskDisplay       "plot([0.3 0.4],[0.4 0.8]);nplot([0.4 0.5],[0.4 0.8]);nplot([0.5 0.6],[0.4 0.8]);nplot([0.6 0.7],[0.4 0.8]);nplot([0.3 0.6],[0.4 0.4]);nplot([0.325 0.625],[0.5 0.5]);nplot([0.35 0.65],[0.6 0.6]);nplot([0.375 0.675],[0.7 0.7]);nplot([0.4 0.7],[0.8 0.8]);ntext(0.5,0.9,'PV module (I)','horizontalAlignment', 'center');n"
  1556.       MaskIconFrame       on
  1557.       MaskIconOpaque       off
  1558.       MaskIconRotate       "none"
  1559.       MaskIconUnits       "normalized"
  1560.       MaskValueString       "5.45|22.2|4.95|17.2|on"
  1561.       MaskTabNameString       ",,,,"
  1562.       System {
  1563. Name "PV6"
  1564. Location [204, 336, 1240, 797]
  1565. Open off
  1566. ModelBrowserVisibility off
  1567. ModelBrowserWidth 200
  1568. ScreenColor "white"
  1569. PaperOrientation "landscape"
  1570. PaperPositionMode "auto"
  1571. PaperType "usletter"
  1572. PaperUnits "inches"
  1573. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  1574. TiledPageScale 1
  1575. ShowPageBoundaries off
  1576. ZoomFactor "100"
  1577. Block {
  1578.   BlockType   Inport
  1579.   Name   "Ipv"
  1580.   Position   [25, 168, 55, 182]
  1581.   IconDisplay   "Port number"
  1582.   OutDataType   "sfix(16)"
  1583.   OutScaling   "2^0"
  1584.   Port {
  1585.     PortNumber     1
  1586.     Name     "Ipv"
  1587.     PropagatedSignals     "Ipv"
  1588.     RTWStorageClass     "Auto"
  1589.     DataLoggingNameMode     "SignalName"
  1590.   }
  1591. }
  1592. Block {
  1593.   BlockType   Inport
  1594.   Name   "Insolation"
  1595.   Position   [25, 273, 55, 287]
  1596.   Port   "2"
  1597.   IconDisplay   "Port number"
  1598.   OutDataType   "sfix(16)"
  1599.   OutScaling   "2^0"
  1600. }
  1601. Block {
  1602.   BlockType   Gain
  1603.   Name   "1/Rp"
  1604.   Position   [445, 390, 490, 420]
  1605.   Orientation   "left"
  1606.   Gain   "1/Rp"
  1607.   ParameterDataTypeMode   "Inherit via internal rule"
  1608.   ParameterDataType   "sfix(16)"
  1609.   ParameterScaling   "2^0"
  1610.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1611.   OutDataTypeMode   "Inherit via internal rule"
  1612.   OutDataType   "sfix(16)"
  1613.   OutScaling   "2^0"
  1614.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1615.   SaturateOnIntegerOverflow off
  1616.   Port {
  1617.     PortNumber     1
  1618.     Name     "Vd/Rp"
  1619.     RTWStorageClass     "Auto"
  1620.     DataLoggingNameMode     "SignalName"
  1621.   }
  1622. }
  1623. Block {
  1624.   BlockType   Reference
  1625.   Name   "Algebraic Constraint"
  1626.   Ports   [1, 1]
  1627.   Position   [410, 265, 490, 295]
  1628.   SourceBlock   "simulink/MathnOperations/Algebraic Constraint"
  1629.   SourceType   "Algebraic Constraint"
  1630.   ShowPortLabels   "FromPortIcon"
  1631.   SystemSampleTime   "-1"
  1632.   FunctionWithSeparateData off
  1633.   RTWMemSecFuncInitTerm   "Inherit from model"
  1634.   RTWMemSecFuncExecute   "Inherit from model"
  1635.   RTWMemSecDataConstants  "Inherit from model"
  1636.   RTWMemSecDataInternal   "Inherit from model"
  1637.   RTWMemSecDataParameters "Inherit from model"
  1638.   z0   "0"
  1639.   Port {
  1640.     PortNumber     1
  1641.     Name     "Vd"
  1642.     RTWStorageClass     "Auto"
  1643.     DataLoggingNameMode     "SignalName"
  1644.   }
  1645. }
  1646. Block {
  1647.   BlockType   Fcn
  1648.   Name   "By-pass diode"
  1649.   Position   [420, 67, 550, 103]
  1650.   Expr   "-Vt*log((u/Io)+1)"
  1651. }
  1652. Block {
  1653.   BlockType   Constant
  1654.   Name   "Constant"
  1655.   Position   [745, 190, 775, 220]
  1656.   Value   "Diode"
  1657.   OutDataType   "sfix(16)"
  1658.   OutScaling   "2^0"
  1659. }
  1660. Block {
  1661.   BlockType   Gain
  1662.   Name   "Insolation to ncurrent gain"
  1663.   Position   [115, 264, 160, 296]
  1664.   Gain   "G"
  1665.   ParameterDataTypeMode   "Inherit via internal rule"
  1666.   ParameterDataType   "sfix(16)"
  1667.   ParameterScaling   "2^0"
  1668.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1669.   OutDataTypeMode   "Inherit via internal rule"
  1670.   OutDataType   "sfix(16)"
  1671.   OutScaling   "2^0"
  1672.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1673.   SaturateOnIntegerOverflow off
  1674.   Port {
  1675.     PortNumber     1
  1676.     Name     "Iph"
  1677.     RTWStorageClass     "Auto"
  1678.     DataLoggingNameMode     "SignalName"
  1679.   }
  1680. }
  1681. Block {
  1682.   BlockType   MinMax
  1683.   Name   "MinMax"
  1684.   Ports   [2, 1]
  1685.   Position   [750, 77, 780, 108]
  1686.   Function   "max"
  1687.   Inputs   "2"
  1688.   InputSameDT   off
  1689.   OutDataType   "sfix(16)"
  1690.   OutScaling   "2^0"
  1691.   SaturateOnIntegerOverflow off
  1692. }
  1693. Block {
  1694.   BlockType   Gain
  1695.   Name   "Ns"
  1696.   Position   [655, 262, 695, 298]
  1697.   Gain   "Ns"
  1698.   ParameterDataTypeMode   "Inherit via internal rule"
  1699.   ParameterDataType   "sfix(16)"
  1700.   ParameterScaling   "2^0"
  1701.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1702.   OutDataTypeMode   "Inherit via internal rule"
  1703.   OutDataType   "sfix(16)"
  1704.   OutScaling   "2^0"
  1705.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1706.   SaturateOnIntegerOverflow off
  1707. }
  1708. Block {
  1709.   BlockType   Fcn
  1710.   Name   "PN-junction characteristic"
  1711.   Position   [430, 334, 510, 366]
  1712.   Orientation   "left"
  1713.   Expr   "Io*(exp(u/Vt)-1)"
  1714.   Port {
  1715.     PortNumber     1
  1716.     Name     "Id"
  1717.     RTWStorageClass     "Auto"
  1718.     DataLoggingNameMode     "SignalName"
  1719.   }
  1720. }
  1721. Block {
  1722.   BlockType   Product
  1723.   Name   "Product"
  1724.   Ports   [2, 1]
  1725.   Position   [905, 152, 935, 183]
  1726.   InputSameDT   off
  1727.   OutDataTypeMode   "Inherit via internal rule"
  1728.   OutDataType   "sfix(16)"
  1729.   OutScaling   "2^0"
  1730.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1731.   SaturateOnIntegerOverflow off
  1732. }
  1733. Block {
  1734.   BlockType   Gain
  1735.   Name   "Rs"
  1736.   Position   [420, 160, 460, 190]
  1737.   NamePlacement   "alternate"
  1738.   Gain   "Rs"
  1739.   ParameterDataTypeMode   "Inherit via internal rule"
  1740.   ParameterDataType   "sfix(16)"
  1741.   ParameterScaling   "2^0"
  1742.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1743.   OutDataTypeMode   "Inherit via internal rule"
  1744.   OutDataType   "sfix(16)"
  1745.   OutScaling   "2^0"
  1746.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1747.   SaturateOnIntegerOverflow off
  1748. }
  1749. Block {
  1750.   BlockType   Saturate
  1751.   Name   "Saturation"
  1752.   Position   [290, 35, 320, 65]
  1753.   UpperLimit   "inf"
  1754.   LowerLimit   "0"
  1755. }
  1756. Block {
  1757.   BlockType   Sum
  1758.   Name   "Sum1"
  1759.   Ports   [2, 1]
  1760.   Position   [575, 270, 595, 290]
  1761.   ShowName   off
  1762.   IconShape   "round"
  1763.   Inputs   "-+|"
  1764.   InputSameDT   off
  1765.   OutDataTypeMode   "Inherit via internal rule"
  1766.   OutDataType   "sfix(16)"
  1767.   OutScaling   "2^0"
  1768.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1769.   SaturateOnIntegerOverflow off
  1770.   Port {
  1771.     PortNumber     1
  1772.     Name     "Vpvcell"
  1773.     RTWStorageClass     "Auto"
  1774.     DataLoggingNameMode     "SignalName"
  1775.   }
  1776. }
  1777. Block {
  1778.   BlockType   Sum
  1779.   Name   "Sum2"
  1780.   Ports   [2, 1]
  1781.   Position   [325, 340, 345, 360]
  1782.   Orientation   "left"
  1783.   ShowName   off
  1784.   IconShape   "round"
  1785.   Inputs   "|++"
  1786.   InputSameDT   off
  1787.   OutDataTypeMode   "Inherit via internal rule"
  1788.   OutDataType   "sfix(16)"
  1789.   OutScaling   "2^0"
  1790.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1791.   SaturateOnIntegerOverflow off
  1792. }
  1793. Block {
  1794.   BlockType   Sum
  1795.   Name   "Sum3"
  1796.   Ports   [2, 1]
  1797.   Position   [225, 270, 245, 290]
  1798.   ShowName   off
  1799.   IconShape   "round"
  1800.   Inputs   "-+|"
  1801.   InputSameDT   off
  1802.   OutDataTypeMode   "Inherit via internal rule"
  1803.   OutDataType   "sfix(16)"
  1804.   OutScaling   "2^0"
  1805.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1806.   SaturateOnIntegerOverflow off
  1807. }
  1808. Block {
  1809.   BlockType   Sum
  1810.   Name   "Sum4"
  1811.   Ports   [2, 1]
  1812.   Position   [285, 270, 305, 290]
  1813.   ShowName   off
  1814.   IconShape   "round"
  1815.   Inputs   "|+-"
  1816.   InputSameDT   off
  1817.   OutDataTypeMode   "Inherit via internal rule"
  1818.   OutDataType   "sfix(16)"
  1819.   OutScaling   "2^0"
  1820.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1821.   SaturateOnIntegerOverflow off
  1822. }
  1823. Block {
  1824.   BlockType   Switch
  1825.   Name   "Switch"
  1826.   Position   [840, 255, 870, 285]
  1827.   Criteria   "u2 > Threshold"
  1828.   InputSameDT   off
  1829.   SaturateOnIntegerOverflow off
  1830. }
  1831. Block {
  1832.   BlockType   Outport
  1833.   Name   "Vpv"
  1834.   Position   [980, 263, 1010, 277]
  1835.   IconDisplay   "Port number"
  1836.   OutDataType   "sfix(16)"
  1837.   OutScaling   "2^0"
  1838. }
  1839. Block {
  1840.   BlockType   Outport
  1841.   Name   "Ppv"
  1842.   Position   [980, 163, 1010, 177]
  1843.   Port   "2"
  1844.   IconDisplay   "Port number"
  1845.   OutDataType   "sfix(16)"
  1846.   OutScaling   "2^0"
  1847. }
  1848. Line {
  1849.   SrcBlock   "Insolation"
  1850.   SrcPort   1
  1851.   DstBlock   "Insolation to ncurrent gain"
  1852.   DstPort   1
  1853. }
  1854. Line {
  1855.   Name   "Iph"
  1856.   Labels   [1, 0]
  1857.   SrcBlock   "Insolation to ncurrent gain"
  1858.   SrcPort   1
  1859.   DstBlock   "Sum3"
  1860.   DstPort   2
  1861. }
  1862. Line {
  1863.   Name   "Ipv"
  1864.   Labels   [0, 0]
  1865.   SrcBlock   "Ipv"
  1866.   SrcPort   1
  1867.   Points   [30, 0]
  1868.   Branch {
  1869.     Points     [0, -125]
  1870.     DstBlock     "Saturation"
  1871.     DstPort     1
  1872.   }
  1873.   Branch {
  1874.     Points     [145, 0]
  1875.     Branch {
  1876.       Labels       [1, 0]
  1877.       DstBlock       "Sum3"
  1878.       DstPort       1
  1879.     }
  1880.     Branch {
  1881.       DstBlock       "Rs"
  1882.       DstPort       1
  1883.     }
  1884.   }
  1885. }
  1886. Line {
  1887.   SrcBlock   "Product"
  1888.   SrcPort   1
  1889.   DstBlock   "Ppv"
  1890.   DstPort   1
  1891. }
  1892. Line {
  1893.   SrcBlock   "Sum4"
  1894.   SrcPort   1
  1895.   DstBlock   "Algebraic Constraint"
  1896.   DstPort   1
  1897. }
  1898. Line {
  1899.   Name   "Vd"
  1900.   Labels   [0, 0]
  1901.   SrcBlock   "Algebraic Constraint"
  1902.   SrcPort   1
  1903.   Points   [50, 0]
  1904.   Branch {
  1905.     DstBlock     "Sum1"
  1906.     DstPort     2
  1907.   }
  1908.   Branch {
  1909.     Points     [0, 70]
  1910.     Branch {
  1911.       Points       [0, 55]
  1912.       DstBlock       "1/Rp"
  1913.       DstPort       1
  1914.     }
  1915.     Branch {
  1916.       DstBlock       "PN-junction characteristic"
  1917.       DstPort       1
  1918.     }
  1919.   }
  1920. }
  1921. Line {
  1922.   Name   "Vpvcell"
  1923.   Labels   [0, 0]
  1924.   SrcBlock   "Sum1"
  1925.   SrcPort   1
  1926.   DstBlock   "Ns"
  1927.   DstPort   1
  1928. }
  1929. Line {
  1930.   SrcBlock   "Rs"
  1931.   SrcPort   1
  1932.   Points   [120, 0]
  1933.   DstBlock   "Sum1"
  1934.   DstPort   1
  1935. }
  1936. Line {
  1937.   SrcBlock   "By-pass diode"
  1938.   SrcPort   1
  1939.   DstBlock   "MinMax"
  1940.   DstPort   1
  1941. }
  1942. Line {
  1943.   SrcBlock   "Ns"
  1944.   SrcPort   1
  1945.   Points   [20, 0]
  1946.   Branch {
  1947.     Points     [0, -180]
  1948.     DstBlock     "MinMax"
  1949.     DstPort     2
  1950.   }
  1951.   Branch {
  1952.     DstBlock     "Switch"
  1953.     DstPort     3
  1954.   }
  1955. }
  1956. Line {
  1957.   SrcBlock   "MinMax"
  1958.   SrcPort   1
  1959.   Points   [30, 0; 0, 165]
  1960.   DstBlock   "Switch"
  1961.   DstPort   1
  1962. }
  1963. Line {
  1964.   SrcBlock   "Constant"
  1965.   SrcPort   1
  1966.   Points   [10, 0; 0, 65]
  1967.   DstBlock   "Switch"
  1968.   DstPort   2
  1969. }
  1970. Line {
  1971.   SrcBlock   "Switch"
  1972.   SrcPort   1
  1973.   Points   [15, 0]
  1974.   Branch {
  1975.     DstBlock     "Vpv"
  1976.     DstPort     1
  1977.   }
  1978.   Branch {
  1979.     DstBlock     "Product"
  1980.     DstPort     2
  1981.   }
  1982. }
  1983. Line {
  1984.   SrcBlock   "Saturation"
  1985.   SrcPort   1
  1986.   Points   [55, 0]
  1987.   Branch {
  1988.     Points     [500, 0; 0, 110]
  1989.     DstBlock     "Product"
  1990.     DstPort     1
  1991.   }
  1992.   Branch {
  1993.     Points     [0, 35]
  1994.     DstBlock     "By-pass diode"
  1995.     DstPort     1
  1996.   }
  1997. }
  1998. Line {
  1999.   SrcBlock   "Sum3"
  2000.   SrcPort   1
  2001.   DstBlock   "Sum4"
  2002.   DstPort   1
  2003. }
  2004. Line {
  2005.   SrcBlock   "Sum2"
  2006.   SrcPort   1
  2007.   Points   [-25, 0]
  2008.   DstBlock   "Sum4"
  2009.   DstPort   2
  2010. }
  2011. Line {
  2012.   Name   "Id"
  2013.   Labels   [0, 0]
  2014.   SrcBlock   "PN-junction characteristic"
  2015.   SrcPort   1
  2016.   DstBlock   "Sum2"
  2017.   DstPort   1
  2018. }
  2019. Line {
  2020.   Name   "Vd/Rp"
  2021.   Labels   [0, 0]
  2022.   SrcBlock   "1/Rp"
  2023.   SrcPort   1
  2024.   Points   [-105, 0]
  2025.   DstBlock   "Sum2"
  2026.   DstPort   2
  2027. }
  2028.       }
  2029.     }
  2030.     Block {
  2031.       BlockType       Display
  2032.       Name       "Ppv"
  2033.       Ports       [1]
  2034.       Position       [480, 440, 570, 470]
  2035.       Decimation       "1"
  2036.       Lockdown       off
  2037.     }
  2038.     Block {
  2039.       BlockType       Reference
  2040.       Name       "S1 n(time varying)"
  2041.       Ports       [0, 1]
  2042.       Position       [20, 35, 50, 65]
  2043.       SourceBlock       "simulink/Sources/RepeatingnSequence"
  2044.       SourceType       "Repeating table"
  2045.       ShowPortLabels       "FromPortIcon"
  2046.       SystemSampleTime       "-1"
  2047.       FunctionWithSeparateData off
  2048.       RTWMemSecFuncInitTerm   "Inherit from model"
  2049.       RTWMemSecFuncExecute    "Inherit from model"
  2050.       RTWMemSecDataConstants  "Inherit from model"
  2051.       RTWMemSecDataInternal   "Inherit from model"
  2052.       RTWMemSecDataParameters "Inherit from model"
  2053.       rep_seq_t       "[0 1*60 2*60 3*60 4*60 5*60 6*60 7*60 8*60]"
  2054.       rep_seq_y       "[0 400 850 950 1000 950 850 400 0]"
  2055.     }
  2056.     Block {
  2057.       BlockType       Constant
  2058.       Name       "S1-5 n(constant)"
  2059.       Position       [20, 105, 50, 135]
  2060.       Value       "1000"
  2061.       OutDataType       "sfix(16)"
  2062.       OutScaling       "2^0"
  2063.     }
  2064.     Block {
  2065.       BlockType       Reference
  2066.       Name       "S6 n(time varying)"
  2067.       Ports       [0, 1]
  2068.       Position       [25, 485, 55, 515]
  2069.       SourceBlock       "simulink/Sources/RepeatingnSequence"
  2070.       SourceType       "Repeating table"
  2071.       ShowPortLabels       "FromPortIcon"
  2072.       SystemSampleTime       "-1"
  2073.       FunctionWithSeparateData off
  2074.       RTWMemSecFuncInitTerm   "Inherit from model"
  2075.       RTWMemSecFuncExecute    "Inherit from model"
  2076.       RTWMemSecDataConstants  "Inherit from model"
  2077.       RTWMemSecDataInternal   "Inherit from model"
  2078.       RTWMemSecDataParameters "Inherit from model"
  2079.       rep_seq_t       "[0 1*60 2*60 3*60 4*60 5*60 6*60 7*60 8*60]"
  2080.       rep_seq_y       "[0 400 850 950 0 950 850 400 0]"
  2081.     }
  2082.     Block {
  2083.       BlockType       Constant
  2084.       Name       "S6 (constant)"
  2085.       Position       [20, 555, 50, 585]
  2086.       Value       "1000"
  2087.       OutDataType       "sfix(16)"
  2088.       OutScaling       "2^0"
  2089.     }
  2090.     Block {
  2091.       BlockType       Reference
  2092.       Name       "Selectncontroller"
  2093.       Ports       [2, 1]
  2094.       Position       [590, 275, 620, 370]
  2095.       SourceBlock       "simulink/SignalnRouting/Manual Switch"
  2096.       SourceType       "Manual Switch"
  2097.       ShowPortLabels       "FromPortIcon"
  2098.       SystemSampleTime       "-1"
  2099.       FunctionWithSeparateData off
  2100.       RTWMemSecFuncInitTerm   "Inherit from model"
  2101.       RTWMemSecFuncExecute    "Inherit from model"
  2102.       RTWMemSecDataConstants  "Inherit from model"
  2103.       RTWMemSecDataInternal   "Inherit from model"
  2104.       RTWMemSecDataParameters "Inherit from model"
  2105.       sw       "1"
  2106.       action       "0"
  2107.       varsize       off
  2108.       Port {
  2109. PortNumber 1
  2110. Name "Iref"
  2111. RTWStorageClass "Auto"
  2112. DataLoggingNameMode "SignalName"
  2113.       }
  2114.     }
  2115.     Block {
  2116.       BlockType       Reference
  2117.       Name       "Selectninsolationnfor nmodule 6"
  2118.       Ports       [2, 1]
  2119.       Position       [85, 522, 115, 558]
  2120.       SourceBlock       "simulink/SignalnRouting/Manual Switch"
  2121.       SourceType       "Manual Switch"
  2122.       ShowPortLabels       "FromPortIcon"
  2123.       SystemSampleTime       "-1"
  2124.       FunctionWithSeparateData off
  2125.       RTWMemSecFuncInitTerm   "Inherit from model"
  2126.       RTWMemSecFuncExecute    "Inherit from model"
  2127.       RTWMemSecDataConstants  "Inherit from model"
  2128.       RTWMemSecDataInternal   "Inherit from model"
  2129.       RTWMemSecDataParameters "Inherit from model"
  2130.       sw       "0"
  2131.       action       "0"
  2132.       varsize       off
  2133.     }
  2134.     Block {
  2135.       BlockType       Reference
  2136.       Name       "Select ninsolationnfor modulesn1-5"
  2137.       Ports       [2, 1]
  2138.       Position       [85, 72, 115, 108]
  2139.       SourceBlock       "simulink/SignalnRouting/Manual Switch"
  2140.       SourceType       "Manual Switch"
  2141.       ShowPortLabels       "FromPortIcon"
  2142.       SystemSampleTime       "-1"
  2143.       FunctionWithSeparateData off
  2144.       RTWMemSecFuncInitTerm   "Inherit from model"
  2145.       RTWMemSecFuncExecute    "Inherit from model"
  2146.       RTWMemSecDataConstants  "Inherit from model"
  2147.       RTWMemSecDataInternal   "Inherit from model"
  2148.       RTWMemSecDataParameters "Inherit from model"
  2149.       sw       "0"
  2150.       action       "0"
  2151.       varsize       off
  2152.     }
  2153.     Block {
  2154.       BlockType       Sum
  2155.       Name       "Sum"
  2156.       Ports       [2, 1]
  2157.       Position       [250, 670, 270, 690]
  2158.       ShowName       off
  2159.       IconShape       "round"
  2160.       Inputs       "+|+"
  2161.       InputSameDT       off
  2162.       OutDataTypeMode       "Inherit via internal rule"
  2163.       OutDataType       "sfix(16)"
  2164.       OutScaling       "2^0"
  2165.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  2166.       SaturateOnIntegerOverflow off
  2167.     }
  2168.     Block {
  2169.       BlockType       Constant
  2170.       Name       "Vout"
  2171.       Position       [575, 100, 605, 130]
  2172.       Value       "200"
  2173.       OutDataType       "sfix(16)"
  2174.       OutScaling       "2^0"
  2175.     }
  2176.     Block {
  2177.       BlockType       Display
  2178.       Name       "Vpv"
  2179.       Ports       [1]
  2180.       Position       [420, 50, 510, 80]
  2181.       Decimation       "1"
  2182.       Lockdown       off
  2183.     }
  2184.     Block {
  2185.       BlockType       Gain
  2186.       Name       "kWh (out)"
  2187.       Position       [750, 665, 790, 705]
  2188.       NamePlacement       "alternate"
  2189.       Gain       "1/60/1000"
  2190.       ParameterDataTypeMode   "Inherit via internal rule"
  2191.       ParameterDataType       "sfix(16)"
  2192.       ParameterScaling       "2^0"
  2193.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  2194.       OutDataTypeMode       "Inherit via internal rule"
  2195.       OutDataType       "sfix(16)"
  2196.       OutScaling       "2^0"
  2197.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  2198.       SaturateOnIntegerOverflow off
  2199.     }
  2200.     Block {
  2201.       BlockType       Gain
  2202.       Name       "kWh (pv)"
  2203.       Position       [485, 500, 525, 540]
  2204.       Gain       "1/60/1000"
  2205.       ParameterDataTypeMode   "Inherit via internal rule"
  2206.       ParameterDataType       "sfix(16)"
  2207.       ParameterScaling       "2^0"
  2208.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  2209.       OutDataTypeMode       "Inherit via internal rule"
  2210.       OutDataType       "sfix(16)"
  2211.       OutScaling       "2^0"
  2212.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  2213.       SaturateOnIntegerOverflow off
  2214.     }
  2215.     Line {
  2216.       SrcBlock       "PV1"
  2217.       SrcPort       1
  2218.       DstBlock       "Add"
  2219.       DstPort       1
  2220.     }
  2221.     Line {
  2222.       SrcBlock       "PV2"
  2223.       SrcPort       1
  2224.       DstBlock       "Add"
  2225.       DstPort       2
  2226.     }
  2227.     Line {
  2228.       SrcBlock       "PV3"
  2229.       SrcPort       1
  2230.       DstBlock       "Add"
  2231.       DstPort       3
  2232.     }
  2233.     Line {
  2234.       SrcBlock       "PV4"
  2235.       SrcPort       1
  2236.       DstBlock       "Add"
  2237.       DstPort       4
  2238.     }
  2239.     Line {
  2240.       SrcBlock       "PV5"
  2241.       SrcPort       1
  2242.       DstBlock       "Add"
  2243.       DstPort       5
  2244.     }
  2245.     Line {
  2246.       SrcBlock       "PV6"
  2247.       SrcPort       1
  2248.       DstBlock       "Add"
  2249.       DstPort       6
  2250.     }
  2251.     Line {
  2252.       SrcBlock       "Vout"
  2253.       SrcPort       1
  2254.       DstBlock       "Boost DC-DC"
  2255.       DstPort       1
  2256.     }
  2257.     Line {
  2258.       Name       "Ipv"
  2259.       Labels       [0, 0]
  2260.       SrcBlock       "Ipv = Iref"
  2261.       SrcPort       1
  2262.       Points       [-90, 0; 0, -70]
  2263.       Branch {
  2264. Points [0, -90]
  2265. Branch {
  2266.   Points   [0, -90]
  2267.   Branch {
  2268.     Points     [0, -90]
  2269.     Branch {
  2270.       Points       [0, -90]
  2271.       Branch {
  2272. Points [0, -90]
  2273. DstBlock "PV1"
  2274. DstPort 1
  2275.       }
  2276.       Branch {
  2277. DstBlock "PV2"
  2278. DstPort 1
  2279.       }
  2280.     }
  2281.     Branch {
  2282.       DstBlock       "PV3"
  2283.       DstPort       1
  2284.     }
  2285.   }
  2286.   Branch {
  2287.     DstBlock     "PV4"
  2288.     DstPort     1
  2289.   }
  2290. }
  2291. Branch {
  2292.   DstBlock   "PV5"
  2293.   DstPort   1
  2294. }
  2295.       }
  2296.       Branch {
  2297. DstBlock "PV6"
  2298. DstPort 1
  2299.       }
  2300.     }
  2301.     Line {
  2302.       SrcBlock       "Select ninsolationnfor modulesn1-5"
  2303.       SrcPort       1
  2304.       Points       [15, 0]
  2305.       Branch {
  2306. DstBlock "PV1"
  2307. DstPort 2
  2308.       }
  2309.       Branch {
  2310. Points [0, 90]
  2311. Branch {
  2312.   DstBlock   "PV2"
  2313.   DstPort   2
  2314. }
  2315. Branch {
  2316.   Points   [0, 90]
  2317.   Branch {
  2318.     DstBlock     "PV3"
  2319.     DstPort     2
  2320.   }
  2321.   Branch {
  2322.     Points     [0, 90]
  2323.     Branch {
  2324.       DstBlock       "PV4"
  2325.       DstPort       2
  2326.     }
  2327.     Branch {
  2328.       Points       [0, 90]
  2329.       Branch {
  2330. DstBlock "PV5"
  2331. DstPort 2
  2332.       }
  2333.       Branch {
  2334. Points [0, 205]
  2335. DstBlock "5 modules"
  2336. DstPort 1
  2337.       }
  2338.     }
  2339.   }
  2340. }
  2341.       }
  2342.     }
  2343.     Line {
  2344.       SrcBlock       "S1 n(time varying)"
  2345.       SrcPort       1
  2346.       Points       [10, 0; 0, 30]
  2347.       DstBlock       "Select ninsolationnfor modulesn1-5"
  2348.       DstPort       1
  2349.     }
  2350.     Line {
  2351.       SrcBlock       "S1-5 n(constant)"
  2352.       SrcPort       1
  2353.       Points       [10, 0; 0, -20]
  2354.       DstBlock       "Select ninsolationnfor modulesn1-5"
  2355.       DstPort       2
  2356.     }
  2357.     Line {
  2358.       SrcBlock       "S6 (constant)"
  2359.       SrcPort       1
  2360.       Points       [10, 0; 0, -20]
  2361.       DstBlock       "Selectninsolationnfor nmodule 6"
  2362.       DstPort       2
  2363.     }
  2364.     Line {
  2365.       SrcBlock       "Selectninsolationnfor nmodule 6"
  2366.       SrcPort       1
  2367.       Points       [5, 0]
  2368.       Branch {
  2369. DstBlock "PV6"
  2370. DstPort 2
  2371.       }
  2372.       Branch {
  2373. Points [0, 170]
  2374. DstBlock "1 module"
  2375. DstPort 1
  2376.       }
  2377.     }
  2378.     Line {
  2379.       Name       "Vpv"
  2380.       Labels       [0, 0]
  2381.       SrcBlock       "Add"
  2382.       SrcPort       1
  2383.       Points       [20, 0]
  2384.       Branch {
  2385. DstBlock "ComputenPpv"
  2386. DstPort 1
  2387.       }
  2388.       Branch {
  2389. Points [0, -135]
  2390. Branch {
  2391.   Points   [0, -90]
  2392.   DstBlock   "Vpv"
  2393.   DstPort   1
  2394. }
  2395. Branch {
  2396.   Labels   [1, 0]
  2397.   Points   [240, 0]
  2398.   Branch {
  2399.     DstBlock     "Boost DC-DC"
  2400.     DstPort     2
  2401.   }
  2402.   Branch {
  2403.     Labels     [-1, 1; 0, 0]
  2404.     Points     [0, 75]
  2405.     DstBlock     "PV MPPnscope"
  2406.     DstPort     3
  2407.   }
  2408. }
  2409.       }
  2410.     }
  2411.     Line {
  2412.       Name       "Ppv"
  2413.       Labels       [0, 0]
  2414.       SrcBlock       "ComputenPpv"
  2415.       SrcPort       1
  2416.       Points       [10, 0]
  2417.       Branch {
  2418. DstBlock "MPP trackingncontrollernMPPtrackIref.m"
  2419. DstPort 1
  2420.       }
  2421.       Branch {
  2422. Points [0, 55; -45, 0; 0, 100]
  2423. Branch {
  2424.   DstBlock   "Ppv"
  2425.   DstPort   1
  2426. }
  2427. Branch {
  2428.   Points   [0, 65]
  2429.   Branch {
  2430.     DstBlock     "Integrate nPpv"
  2431.     DstPort     1
  2432.   }
  2433.   Branch {
  2434.     Labels     [2, 0]
  2435.     Points     [0, 80]
  2436.     DstBlock     "Mux"
  2437.     DstPort     2
  2438.   }
  2439. }
  2440.       }
  2441.     }
  2442.     Line {
  2443.       Name       "Iref1"
  2444.       Labels       [0, 0]
  2445.       SrcBlock       "MPP trackingncontrollernMPPtrackIref.m"
  2446.       SrcPort       1
  2447.       DstBlock       "Selectncontroller"
  2448.       DstPort       1
  2449.     }
  2450.     Line {
  2451.       SrcBlock       "Irefn(constant)"
  2452.       SrcPort       1
  2453.       Points       [30, 0; 0, -15]
  2454.       DstBlock       "Selectncontroller"
  2455.       DstPort       2
  2456.     }
  2457.     Line {
  2458.       Name       "Iref"
  2459.       Labels       [0, 0]
  2460.       SrcBlock       "Selectncontroller"
  2461.       SrcPort       1
  2462.       Points       [10, 0]
  2463.       Branch {
  2464. Labels [2, 0]
  2465. Points [0, 260; -250, 0]
  2466. Branch {
  2467.   DstBlock   "Ipv = Iref"
  2468.   DstPort   1
  2469. }
  2470. Branch {
  2471.   Points   [0, -280]
  2472.   Branch {
  2473.     DstBlock     "ComputenPpv"
  2474.     DstPort     2
  2475.   }
  2476.   Branch {
  2477.     Points     [0, -190]
  2478.     DstBlock     "Ipv"
  2479.     DstPort     1
  2480.   }
  2481. }
  2482.       }
  2483.       Branch {
  2484. Points [0, -65]
  2485. Branch {
  2486.   Points   [0, -65]
  2487.   DstBlock   "Boost DC-DC"
  2488.   DstPort   3
  2489. }
  2490. Branch {
  2491.   Labels   [-1, 1]
  2492.   DstBlock   "PV MPPnscope"
  2493.   DstPort   4
  2494. }
  2495.       }
  2496.     }
  2497.     Line {
  2498.       SrcBlock       "kWh (pv)"
  2499.       SrcPort       1
  2500.       DstBlock       "Epv"
  2501.       DstPort       1
  2502.     }
  2503.     Line {
  2504.       SrcBlock       "Integrate nPpv"
  2505.       SrcPort       1
  2506.       DstBlock       "kWh (pv)"
  2507.       DstPort       1
  2508.     }
  2509.     Line {
  2510.       Name       "Pout"
  2511.       Labels       [0, 0]
  2512.       SrcBlock       "Boost DC-DC"
  2513.       SrcPort       2
  2514.       Points       [20, 0; 0, 150; -130, 0; 0, 300]
  2515.       Branch {
  2516. DstBlock "Mux"
  2517. DstPort 1
  2518.       }
  2519.       Branch {
  2520. Points [0, 95]
  2521. DstBlock "Integrate nPout"
  2522. DstPort 1
  2523.       }
  2524.     }
  2525.     Line {
  2526.       SrcBlock       "5 modules"
  2527.       SrcPort       1
  2528.       DstBlock       "Sum"
  2529.       DstPort       1
  2530.     }
  2531.     Line {
  2532.       SrcBlock       "1 module"
  2533.       SrcPort       1
  2534.       Points       [30, 0]
  2535.       DstBlock       "Sum"
  2536.       DstPort       2
  2537.     }
  2538.     Line {
  2539.       SrcBlock       "Sum"
  2540.       SrcPort       1
  2541.       DstBlock       "85/1000"
  2542.       DstPort       1
  2543.     }
  2544.     Line {
  2545.       Name       "Ppvnideal"
  2546.       Labels       [0, 0]
  2547.       SrcBlock       "85/1000"
  2548.       SrcPort       1
  2549.       Points       [15, 0]
  2550.       Branch {
  2551. DstBlock "Integrate nPideal"
  2552. DstPort 1
  2553.       }
  2554.       Branch {
  2555. Labels [2, 1]
  2556. Points [0, -70]
  2557. DstBlock "Mux"
  2558. DstPort 3
  2559.       }
  2560.     }
  2561.     Line {
  2562.       SrcBlock       "Integrate nPideal"
  2563.       SrcPort       1
  2564.       DstBlock       "Convert tonkWh"
  2565.       DstPort       1
  2566.     }
  2567.     Line {
  2568.       SrcBlock       "Convert tonkWh"
  2569.       SrcPort       1
  2570.       DstBlock       "Eideal"
  2571.       DstPort       1
  2572.     }
  2573.     Line {
  2574.       Name       "Pout, Ppv, Pideal"
  2575.       Labels       [0, 0; 0, 0; 0, 0]
  2576.       SrcBlock       "Mux"
  2577.       SrcPort       1
  2578.       Points       [60, 0; 0, -310]
  2579.       DstBlock       "PV MPPnscope"
  2580.       DstPort       5
  2581.     }
  2582.     Line {
  2583.       Name       "Duty"
  2584.       Labels       [-1, 0]
  2585.       SrcBlock       "Boost DC-DC"
  2586.       SrcPort       4
  2587.       DstBlock       "PV MPPnscope"
  2588.       DstPort       2
  2589.     }
  2590.     Line {
  2591.       Name       "efficiency"
  2592.       SrcBlock       "Boost DC-DC"
  2593.       SrcPort       3
  2594.       Points       [35, 0]
  2595.       Branch {
  2596. Points [0, 0; 0, -70]
  2597. DstBlock "Boost efficiency"
  2598. DstPort 1
  2599.       }
  2600.       Branch {
  2601. Labels [0, 0; 0, 0]
  2602. DstBlock "PV MPPnscope"
  2603. DstPort 1
  2604.       }
  2605.     }
  2606.     Line {
  2607.       SrcBlock       "S6 n(time varying)"
  2608.       SrcPort       1
  2609.       Points       [5, 0; 0, 30]
  2610.       DstBlock       "Selectninsolationnfor nmodule 6"
  2611.       DstPort       1
  2612.     }
  2613.     Line {
  2614.       SrcBlock       "Integrate nPout"
  2615.       SrcPort       1
  2616.       DstBlock       "kWh (out)"
  2617.       DstPort       1
  2618.     }
  2619.     Line {
  2620.       SrcBlock       "kWh (out)"
  2621.       SrcPort       1
  2622.       DstBlock       "Eout"
  2623.       DstPort       1
  2624.     }
  2625.     Annotation {
  2626.       Name       "ECEN2060n6-module PV Arrayn85 x 6 = 510 W DC system"
  2627.       Position       [234, 25]
  2628.     }
  2629.     Annotation {
  2630.       Position       [833, 524]
  2631.     }
  2632.     Annotation {
  2633.       Name       "Insolation 1-5"
  2634.       Position       [46, 23]
  2635.     }
  2636.     Annotation {
  2637.       Name       "Insolation 6"
  2638.       Position       [46, 473]
  2639.     }
  2640.     Annotation {
  2641.       Name       "PV power"
  2642.       Position       [524, 433]
  2643.       ForegroundColor       "blue"
  2644.       BackgroundColor       "cyan"
  2645.     }
  2646.     Annotation {
  2647.       Name       "PV energy [kWh]"
  2648.       Position       [581, 495]
  2649.       ForegroundColor       "blue"
  2650.       BackgroundColor       "cyan"
  2651.     }
  2652.     Annotation {
  2653.       Name       "Ideal PV energy [kWh]"
  2654.       Position       [533, 655]
  2655.       ForegroundColor       "blue"
  2656.       BackgroundColor       "cyan"
  2657.     }
  2658.     Annotation {
  2659.       Name       "ECEN 2060 PV array withnMPP tracking nBoost DC-DC converter"
  2660.       Position       [656, 33]
  2661.       BackgroundColor       "yellow"
  2662.     }
  2663.     Annotation {
  2664.       Name       "1 time unit = 1 minute"
  2665.       Position       [654, 68]
  2666.     }
  2667.     Annotation {
  2668.       Name       "PV voltage"
  2669.       Position       [467, 39]
  2670.       BackgroundColor       "cyan"
  2671.     }
  2672.     Annotation {
  2673.       Name       "Output energy [kWh]"
  2674.       Position       [856, 660]
  2675.       ForegroundColor       "blue"
  2676.       BackgroundColor       "cyan"
  2677.     }
  2678.   }
  2679. }