Recloser Controller#

pydantic model gdm.distribution.controllers.DistributionRecloserController#

Data model for distribution recloser controller.

Show JSON schema
{
   "title": "DistributionRecloserController",
   "description": "Data model for distribution recloser controller.",
   "type": "object",
   "properties": {
      "uuid": {
         "format": "uuid",
         "title": "Uuid",
         "type": "string"
      },
      "name": {
         "default": "",
         "description": "Name of the recloser controller.",
         "title": "Name",
         "type": "string"
      },
      "delay": {
         "default": null,
         "description": "Fixed delay added to the recloser trip time.",
         "title": "Delay",
         "type": "string"
      },
      "ground_delayed": {
         "$ref": "#/$defs/TimeCurrentCurve",
         "description": "TCC curve related to ground delayed trip."
      },
      "ground_fast": {
         "$ref": "#/$defs/TimeCurrentCurve",
         "description": "TCC curve related to ground fast trip."
      },
      "phase_delayed": {
         "$ref": "#/$defs/TimeCurrentCurve",
         "description": "TCC curve related to phase delayed trip."
      },
      "phase_fast": {
         "$ref": "#/$defs/TimeCurrentCurve",
         "description": "TCC curve related to phase fast trip."
      },
      "num_fast_ops": {
         "description": "Number of fast operations (fuse savings).",
         "minimum": 0,
         "title": "Num Fast Ops",
         "type": "integer"
      },
      "num_shots": {
         "description": "Number of fast and delayed shots before lockout.",
         "minimum": 1,
         "title": "Num Shots",
         "type": "integer"
      },
      "reclose_intervals": {
         "default": null,
         "description": "Array of reclose intervals.",
         "title": "Reclose Intervals",
         "type": "string"
      },
      "reset_time": {
         "default": null,
         "description": "Reset time for recloser.",
         "title": "Reset Time",
         "type": "string"
      },
      "equipment": {
         "$ref": "#/$defs/RecloserControllerEquipment",
         "description": "Recloser controller equipment."
      }
   },
   "$defs": {
      "RecloserControllerEquipment": {
         "additionalProperties": false,
         "description": "Class interface for recloser controller equipment.",
         "properties": {
            "uuid": {
               "format": "uuid",
               "title": "Uuid",
               "type": "string"
            },
            "name": {
               "title": "Name",
               "type": "string"
            }
         },
         "required": [
            "name"
         ],
         "title": "RecloserControllerEquipment",
         "type": "object"
      },
      "TimeCurrentCurve": {
         "additionalProperties": false,
         "description": "An interface for time current curve.",
         "properties": {
            "uuid": {
               "format": "uuid",
               "title": "Uuid",
               "type": "string"
            },
            "name": {
               "default": "",
               "description": "Name of the curve.",
               "title": "Name",
               "type": "string"
            },
            "curve_x": {
               "default": null,
               "description": "Array of time values.",
               "title": "Curve X",
               "type": "string"
            },
            "curve_y": {
               "default": null,
               "description": "Array of current values.",
               "title": "Curve Y",
               "type": "string"
            }
         },
         "required": [
            "curve_x",
            "curve_y"
         ],
         "title": "TimeCurrentCurve",
         "type": "object"
      }
   },
   "additionalProperties": false,
   "required": [
      "delay",
      "ground_delayed",
      "ground_fast",
      "phase_delayed",
      "phase_fast",
      "num_fast_ops",
      "num_shots",
      "reclose_intervals",
      "reset_time",
      "equipment"
   ]
}

Config:
  • str_strip_whitespace: bool = True

  • validate_assignment: bool = True

  • validate_default: bool = True

  • extra: str = forbid

  • use_enum_values: bool = False

  • arbitrary_types_allowed: bool = True

  • populate_by_name: bool = True

Fields:
  • delay (infrasys.quantities.Time)

  • equipment (gdm.distribution.equipment.recloser_controller_equipment.RecloserControllerEquipment)

  • ground_delayed (gdm.distribution.common.curve.TimeCurrentCurve)

  • ground_fast (gdm.distribution.common.curve.TimeCurrentCurve)

  • name (str)

  • num_fast_ops (int)

  • num_shots (int)

  • phase_delayed (gdm.distribution.common.curve.TimeCurrentCurve)

  • phase_fast (gdm.distribution.common.curve.TimeCurrentCurve)

  • reclose_intervals (infrasys.quantities.Time)

  • reset_time (infrasys.quantities.Time)

  • uuid (uuid.UUID)

Validators:
  • validate_fields » all fields

field delay: ')] [Required]#

Fixed delay added to the recloser trip time.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: None}

Validated by:
  • validate_fields

field equipment: Annotated[RecloserControllerEquipment, FieldInfo(annotation=NoneType, required=True, description='Recloser controller equipment.')] [Required]#

Recloser controller equipment.

Validated by:
  • validate_fields

field ground_delayed: Annotated[TimeCurrentCurve, FieldInfo(annotation=NoneType, required=True, description='TCC curve related to ground delayed trip.')] [Required]#

TCC curve related to ground delayed trip.

Validated by:
  • validate_fields

field ground_fast: Annotated[TimeCurrentCurve, FieldInfo(annotation=NoneType, required=True, description='TCC curve related to ground fast trip.')] [Required]#

TCC curve related to ground fast trip.

Validated by:
  • validate_fields

field name: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='', description='Name of the recloser controller.')] = ''#

Name of the recloser controller.

Validated by:
  • validate_fields

field num_fast_ops: Annotated[int, FieldInfo(annotation=NoneType, required=True, description='Number of fast operations (fuse savings).', metadata=[Ge(ge=0)])] [Required]#

Number of fast operations (fuse savings).

Constraints:
  • ge = 0

Validated by:
  • validate_fields

field num_shots: Annotated[int, FieldInfo(annotation=NoneType, required=True, description='Number of fast and delayed shots before lockout.', metadata=[Ge(ge=1)])] [Required]#

Number of fast and delayed shots before lockout.

Constraints:
  • ge = 1

Validated by:
  • validate_fields

field phase_delayed: Annotated[TimeCurrentCurve, FieldInfo(annotation=NoneType, required=True, description='TCC curve related to phase delayed trip.')] [Required]#

TCC curve related to phase delayed trip.

Validated by:
  • validate_fields

field phase_fast: Annotated[TimeCurrentCurve, FieldInfo(annotation=NoneType, required=True, description='TCC curve related to phase fast trip.')] [Required]#

TCC curve related to phase fast trip.

Validated by:
  • validate_fields

field reclose_intervals: ')] [Required]#

Array of reclose intervals.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: None}

Validated by:
  • validate_fields

field reset_time: ')] [Required]#

Reset time for recloser.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: None}

Validated by:
  • validate_fields