Skip to content

SwitchElect

Jason Harvey edited this page Feb 19, 2021 · 1 revision

SwitchElect

default_img

Background

This link extends GunnsBasicConductor with a built-in Switch object, similar to how GunnsResistiveLoad extends GunnsElectricalResistor. It embeds a Switch object in a link that can be used in a GUNNS basic network. Whereas the GunnsResistiveLoad is used as both a switch and a resistive load in series, this SwitchElect link is usually only used to model a switch by itself, and loads are placed downstream in the network as separate links. Note however that the Switch's resistance creates a resistive load all by itself, so it can be used by itself as a resistive load in a network. An example of this is shown below.

How To Use in GunnsDraw

This link has the same connection rules as GunnsBasicConductor. The picture below shows various typical uses, though they can be arranged in any way you'd use a real switch in an electrical circuit. There are 4 SwitchElect links arranged in parallel, which could represent a 4-switch card, similar to the GunnsResistiveLoad example.

  • Switch_0 is shown feeding a EpsConstantPowerLoad link.
  • Switch_1 is shown feeding a GunnsBasicConductor link used as a resistive load.
  • Switch_2 is shown feeding a PowerBusElect link, which itself feeds more loads. This is a typical architecture in an electrical distribution system.
  • Switch_3 is shown going straight to Ground. This is a shortcut to modeling a resistive load, where we use the switch's built-in resistance to also include the resistance of a downstream load. This is functionally similar to the Switch_1 example except this way saves a node in the network.
default_img

Port Connection Rules (These are limitations on the port connection to nodes that the link enforces in run-time):

Other Rules (These are extra rules you should always try to follow):

Configuration Data Parameters:

  • config (default = 0, must call a SwitchConfigData constructor): This link configures the built-in Switch object differently than GunnsResistiveLoad. Unlike the latter, which has its own individual config parameters that are passed to the Switch object, this link uses a single SwitchConfigData object, which you must construct here. The syntax to enter into this field is that of calling the C++ object constructor. For example:

    SwitchConfigData(0.005, false, false, 105.0, false, 0, 1, false)

    The contructor arguments are the individual configuration data parameters listed in Switch (defaultSwitchResistance = 0.005, overCurrentProtection = false, etc).

Input Data Parameters:

  • malfBlockageFlag: Same as GunnsBasicConductor.
  • malfBlockageValue: Same as GunnsBasicConductor.
  • inputData (default = 0, must call a SwitchInputData constructor): Similar to the config parameter, this link initializes the Switch using a single SwitchInputData object, which you must construct here. The syntax to enter into this field is that of calling the C++ object constructor. For example:

    SwitchInputData(false, 0, true, 500.0, -500.1)

    The contructor arguments are the individual input data parameters listed in Switch (switchMalfFlag = false, switchMalfValue = 0, etc).

Common Problems

  • N/A

References

  • N/A
Clone this wiki locally