Class in Zendir.Classes | Inherits from MotorElectricalControlled
Declaration
class Gimbal;Description
A single 1-axis pointing mount with motor position feedback and optional EPS power draw. The gimbal rotates attached payloads about its local Up-vector (yaw). Command or use to slew to a position; read feedback from , , and .
When connected to a , the gimbal draws realistic current from the EPS based on motor parameters (, , etc.). When not connected, it operates in standalone mode using the commanded slew rate directly.
Gimbals are stackable for multi-axis pointing. This component does not model spacecraft reaction torques or mass property changes during motion; for physics-accurate coupling, use the Hinged Rigid Body (HRB).
Properties
| Declared | Description |
|---|---|
| Angle | The current gimbal angle (position feedback). |
| DesiredVelocity | The desired slew rate when driving to a target angle. |
| In_CommandGimbalMsg | Optional gimbal command message that updates target angle, slew velocity, and lock state.This is the primary command interface for FSW and Studio integration. |
| IsLimited | Whether the gimbal has reached its angle limits. |
| IsLocked | When locked, the gimbal will not move regardless of target. |
| MaxAngle | Maximum allowed angle. |
| MinAngle | Minimum allowed angle. |
| Out_GimbalStatusMsg | Gimbal status message containing position feedback, velocity, torque, and flags.This is the primary status interface for FSW and Studio integration. |
| StepAngle | Minimum angular step for position deadband and update threshold. |
| TargetAngle | The target angle to drive towards. |
| Torque | Current shaft torque from the motor. |
| Velocity | Current angular velocity from the motor. |
| Inherited | Description |
|---|---|
| ArmatureCurrent | Armature current flowing through the motor |
| ArmatureInductance | Armature inductance of the motor |
| ArmatureResistance | Armature resistance of the motor |
| BackEmf | Back-EMF voltage |
| Behaviours | A collection of behaviours attached to this object. |
| CenterOfMassB_B | The center of mass of the component in respect to the body frame (B) of the component. This is isolated from anychildren and exists in isolation. |
| CenterOfMassDot_LB_B | The center of mass time-derivative of the component within its own local coordinates. This does not include anyof the sub-components and exists in isolation. |
| CenterOfMassDotB_B | The center of mass time-derivative of the component relative to the body frame (B). This does not include any ofthe sub-components and exists in isolation. |
| CenterOfMassL_L | The center of mass of the component within its own local coordinates. This does not include any of thesub-components and exists in isolation. |
| CenterOfMassPrime_LB_B | The center of mass general-derivative of the component within its own local coordinates. This does not includeany of the sub-components and exists in isolation. |
| CenterOfMassPrimeB_B | [m/s] The center of mass general-derivative of the component relative to the body frame (B). This does notinclude any of the sub-components and exists in isolation. |
| Children | A collection of children attached to this object. |
| Current | Current through this component, in amperes, derived fromandusing the same convention as (series current whenthe two match; otherwise the split used for grounded nodes and current limiters).When is unavailable, this is zero. |
| DCM_BN | The rotational DCM matrix between the body frame (B) at the top of this component chain and the inertial frame (N). |
| DCM_LB | The rotational DCM matrix between the component frame of this object (L) relative to the body frame (B). |
| DCM_LN | The DCM rotational matrix of the component relative to the inertial origin (N) of the world. |
| DCM_LP | The DCM matrix of the component in the parent’s frame (P), taken from the Component Transform (PL). |
| In_ControlElectricalSignalMsg | Optional PWM control signal input. When connected, motor speed is duty cycle × full-scale speed( when ≥ 0, otherwise ). When null, uses directly. |
| IsEnabled | Is true if the object is currently enabled. |
| Ke | Back-EMF constant (voltage per rad/s) |
| Kt | Torque constant (Nm per Ampere) |
| LocalForward | The direction of the transform frame’s forward vector, which is along the Y axis. |
| LocalRight | The direction of the transform frame’s right vector, which is along the X axis. |
| LocalUp | The direction of the transform frame’s up vector, which is along the Z axis. |
| Mass | The component mass defined in the object. This is independent of any parent or children objects and exists inisolation. |
| MassDot | The component mass time-derivative defined in the object. This is independent of any parent or children objectsand exists in isolation. |
| MaxSpeed | Maximum motor speed in rad/s at 100% PWM duty. When ≥ 0, caps and defines full-scale speed; −1 disables the cap. |
| MaxSpeedRPM | Maximum motor speed in RPM. |
| Models | A collection of models attached to this object. |
| MomentOfInertia_LB | The moment of inertia of the component, measured at the local center of mass, represented with its own localcoordinates. This does not include any of the sub-components and exists in isolation. |
| MomentOfInertiaB_B | The moment of inertia of this component, measured in the body frame relative to the parented body. This isindependent of any children and exists in isolation. |
| MomentOfInertiaPrime_LB | The derivative of the moment of inertia of the component, measured at the local center of mass, represented withits own local coordinates. This does not include any of the sub-components and exists in isolation. |
| MomentOfInertiaPrimeB_B | The derivative of the moment of inertia of the component, represented in the body frame (B). This is independentand exists in isolation. |
| Name | The display name or tag of this object. |
| NetPower | Net power contribution of this component to the bus. Passive componentsdissipate power, so NetPower is non-positive. This is derived directly fromthe voltages and currents at the In/Out terminals of the underlying. |
| OpenCircuit | A flag if the power node is currently open and no power willbe transferred to the next component. |
| Out_ComponentMassMsg | The component mass message defines the set of mass properties and states of the system within this componentlocally. This is independent of any parent or children properties or objects. |
| Out_MotorMsg | The motor message containing output data (speed, torque, current, back-EMF) |
| Out_TransformMsg | This defines the base transform message that stores the state of the transform of this object. |
| Parent | The currently attached parent object (if any). |
| Position | [m] The position of the object relative to the parent or to world origin, if no parent exists. |
| Position_BN_N | The position of the body (the root parent B) in the inertial frame relative to the inertial point (N). |
| Position_LB_B | The position of the component relative to the root object of this hierarchy. This is in the inertial frame and ifthe component is the root object, then there will be no position. |
| Position_LN_N | The position of the inertial world space. This position is derived from the world’s transform (N). |
| Position_LP_P | The position of the object relative to the parented object (P). If there is no parent object, then this will bein the inertial frame. |
| PowerModel | The power model of this power component that is createdby this component. |
| PreviousCurrent | Previous armature current for inductor history |
| Resistance | The Resistance of the node. |
| Root | The root object in the parent chain. |
| Rotation | [-] The rotation of the object relative to the parent or to the world origin, if no parent exists. |
| Speed | Current motor speed in rad/s |
| SpeedInput | Motor speed input in rad/s (user-defined operating point).Used when no PWM control signal is connected. Clamped to ± when ≥ 0. |
| SpeedInputRPM | Motor speed input in RPM. |
| SpeedRPM | Current motor speed in RPM (convenience) |
| Thermal | [TEMPORARY] A reference to the thermal model that is attached to this object. This will allow the object to havethermal properties and be able to be used in thermal simulations. |
| TorqueElectromagnetic | Electromagnetic torque produced by the motor |
| TorqueShaft | Shaft torque available after friction losses |
| ViscousFriction | Viscous friction coefficient |
| Voltage | Voltage across this component (between its In and Out terminals), in volts.This is the same quantity as on— a single number suitable for EPS summaries withoutreferring to terminal naming.When is unavailable, this is zero. |
Methods
| Inherited | Description |
|---|---|
| AddObject | Returns a new simulation object with the specified type. |
| Attach | Attempts to attach this object to a new parent. This will only work if the current object is no parented to anyother object. |
| ConfigurePower | Configures the power interface to its default state, which will include updatingthe variables of any SPICE power components to the correct state. |
| ContainsModelWithID | Returns true if an attached model satisfies the specified ID. |
| ContainsModelWithType | Returns true if an attached model satisfies the specified type. |
| Detach | This is an action to detach the current object from its parent, if it exists and move it to another object or tojust exist within the simulation. |
| FindBehavioursWithType | Returns all attached behaviours that satisfies the specified type. |
| FindBehaviourWithID | Returns an attached behaviour that satisfies the specified ID. |
| FindBehaviourWithType | Returns an attached behaviour that satisfies the specified type. |
| FindChildrenWithType | Returns all attached children that satisfies the specified type. |
| FindChildWithID | Returns an attached child that satisfies the specified ID. |
| FindChildWithType | Returns an attached child that satisfies the specified type. |
| FindModelsWithType | Returns all attached models that satisfies the specified type. |
| FindModelWithID | Returns an attached model that satisfies the specified ID. |
| FindModelWithType | Returns an attached model that satisfies the specified type. |
| 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. |
| GetModel | Returns a valid assigned model with the specified type. |
| GetWorldForward | [DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED. |
| GetWorldRight | [DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED. |
| GetWorldTransform | Returns the world transform of the object which is relative to the parent. If no parent exists, this will be thetransform of the object in world space. |
| GetWorldUp | [DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED. |
| ReadBodyTransform | This method will reset the dirty flag on the mass so that it has been read successfully and is valid. |
| ResetPower | Resets the power interface to its default state, which will include removingany SPICE power references associated to the current interface. |
| SetWorldTransform | [DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED. |
| UpdateMassProperties | Updates the mass properties of the current physical object at a particular time. |