Skip to content

[ENH] model half cells #118

@mikofski

Description

@mikofski

AFAIK there isn't a canonically accepted method to model half-cell modules in PVMismatch. I think it's possible to model a half cell by creating a total cross-tied module with 3 subblocks and 2 substrings of cells each, but it would require some mental accounting to determine the actual location of each cell when applying irradiance and temperature. Since PVmismatch always organizes cells into modules into strings into a system, the approach of putting two half-modules in parallel, then in series with more full-size modules wouldn't work

I propose a new cell_pattern template for half-cell modules, that is similar to the existing standard module. It would make the following assumptions:

  1. the cells are always cut in half
  2. the template is called a half_cell_module
  3. the strings will always start in the center, one going up, the other down
  4. there will be bypass diodes in the middle, which use the existing bypass diode conventions, eg: [2,2,2] means bypass diode every two columns
  5. the cells will be numbered 0 to Ns (Ns=78 in the image below) in a top group and a bottom group, so top[0] is the first cell on the positive (left) side, at the bottom of the top module, top[12] would be top-left, bottom[0] is right next to top[0] and bottom[12] would be bottom left, etc.
  6. Np = 2 always
  7. the existing cross-tie calculation chain would be used, it's just the mental accounting of where the actual cells are that the new template takes care of
  8. setSuns() and setTemps() for half-cell modules would have to specify the top or the bottom as a new key in the cell position list, eg: setSuns({'cells': {'top': [0, 1, 24, 25], 'bottom': [0, 25]}, 'Ee': 817.1}
  9. if specifying irradiance for each cell individually, then use top and bottom to specify Ee, eg: setSuns({'cells': {'top': [0, 1, 24, 25], 'bottom': [0, 25]}, 'Ee': {'top': 817.1, 'bottom': [813.1, 789.9]}

A half-cell module looks like this:
half-cell

UPDATE 2020-06-01
I don't know why I was making this so complicated. So see the comment below, we can make these using partially cross-tied modules, then we just need to fix the indices so that they conform to the Cartesian coordinate system where the 0th cell is in the upper left corner, then each column of cells is numbered from top to bottom, top to bottom, until the last column with the last cell in the lower right corner. Also we'd need to make sure that the bypass diodes are working correctly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions