Class in Zendir.Classes | Inherits from PowerNodeModel
Declaration
class ReactionWheelArrayPowerModel;Description
This model creates a map between motor voltage commands and the resulting load on the parent’s electrical sub-system. It is a component model that can attach to a reaction wheel array to provide the power draw from a system.
Reaction wheels use BLDC motors driven by inverter electronics. The model implements standard DC motor equations:
- Current: I = (V_motor - Ke * omega) / R_winding
- Torque: tau = Kt * I
- Mechanical power: P_mech = |tau * omega|
- Copper losses: P_copper = I^2 * R_winding
- Total DC power: P_dc = (P_mech + P_copper) / eta_drive + I_noload * V + P_standby
This is a classical motor load (not a CPL) - the resistance can be computed directly from the commanded voltages and wheel speeds without quasi-static iteration. If the sum of commanded voltages exceeds VoltageIn, the output voltage commands are scaled proportionally.
Properties
| Declared | Description |
|---|---|
| BackEmfConstant_Ke | The back-EMF constant of the BLDC motor [V/(rad/s)].Relates motor speed to induced voltage: V_emf = Ke * omega.In SI units, Ke equals Kt for an ideal motor. |
| DriveEfficiency | The efficiency of the motor drive/inverter electronics [0..1].The total DC power draw includes losses: P_dc = P_motor / DriveEfficiency.Typical BLDC drives have 85-95% efficiency. |
| DriveStandbyPowerPerWheel | The standby power consumption per wheel of the drive electronics [W].This is the quiescent power drawn when no torque is commanded. |
| In_MotorVoltageArrayMsg | Incoming array of voltage commands that map to torques [V]. |
| In_RWSpeedArrayMsg | Incoming array of wheel angular velocities [rad/s].Required for back-EMF calculation. If null, omega defaults to 0for all wheels (zero-speed approximation). |
| NoLoadCurrent | The no-load current drawn by the motor [A].Accounts for bearing friction, windage, and iron losses.This current is drawn regardless of torque output. |
| Out_MotorVoltageArrayMsg | Outgoing array of voltage commands that have been scaled based onavailable power [V]. If the commanded voltages exceed VoltageIn,the output is scaled proportionally. |
| TorqueConstant_Kt | The torque constant of the BLDC motor [N*m/A].Relates motor current to produced torque: tau = Kt * I. |
| WindingResistance | The winding resistance of the motor per phase [Ohm].Determines copper losses: P_copper = I^2 * R. |
| Inherited | Description |
|---|---|
| CurrentIn | The current flowing into this node at the In terminal.Under flow-through convention, positive means current enters at In and exits at Out.Equal to CurrentOut in steady state for two-terminal elements. |
| CurrentOut | The current flowing out of this node at the Out terminal.Under flow-through convention, positive means current exits at Out (entered at In).Equal to CurrentIn in steady state for two-terminal elements. |
| IsEnabled | Is true if the object is currently enabled. |
| IsOpenCircuit | A flag if the power node is currently open and no power willbe transferred to the next component. |
| Name | The display name or tag of this object. |
| NetPower | Net power this node contributes to the bus, calculated directly from thevoltages and currents at the In and Out terminals:NetPower = VoltageOut * CurrentOut - VoltageIn * CurrentInThis is the power delivered to the external circuit by this node (the negativeof the power absorbed by it). Under the flow-through convention, positiveCurrentIn represents current entering at the In terminal and positiveCurrentOut represents current exiting at the Out terminal.A positive NetPower means the node is adding power to the bus (e.g. a solarpanel producing power, a discharging battery). A negative NetPower means thenode is consuming power from the bus (e.g. a power sink, a charging battery,resistive losses in a fuse/switch/component).For a two-terminal element CurrentIn == CurrentOut, so this reduces to(VoltageOut - VoltageIn) * I. When one terminal is connected to ground andthe bus has ZeroGroundPlane enabled, that terminal’s voltage and current areboth zero, so the formula still represents the true energy exchange at thenon-grounded terminal (e.g. V_out * I_out for a ground-referenced source orbattery, -V_in * I_in for a ground-referenced load). |
| Out_PowerNodeMsg | The power node message that stores all the properties ofthe node. |
| Parent | The currently attached parent object. |
| Power | The Power consumed by this power node |
| Resistance | The Resistance of the node. |
| SelfSolve | A Flag to determine if the Power Node Model should update Output parameters itself if not connected to a PowerBus |
| VoltageIn | The voltage at the In (negative) terminal of this node.For a load connected between a source and ground, this is the higher potential side. |
| VoltageNode | The voltage drop across the node: VoltageIn - VoltageOut.Positive for a load (current flows from higher to lower potential).Negative for a source (Out terminal at higher potential than In). |
| VoltageOut | The voltage at the Out (positive) terminal of this node.For a load connected between a source and ground, this is the lower potential side. |
Methods
| Inherited | Description |
|---|---|
| Clear | Clear the Power Node Model if the circuit is open |
| FindParentWithID | Returns an attached parent that satisfies the specified ID. |
| FindParentWithType | Returns an attached parent that satisfies the specified type. |
| FindRootWithID | Returns a root object that satisfies the specified ID. |
| FindRootWithType | Returns a root object that satisfies the specified type. |