Quickstart guide for Dalus
settling_time
, for that control system.
Whether you’re new to system modeling or just getting started with Dalus, this hands-on example will help you get up to speed quickly and confidently.
Requirement: The Attitude Control and Determination Subsystem (ACDS) shall settle to within 0.1 degrees of the commanded attitude within 120 seconds after maneuver initiation.
Attribute Name | Value | Unit |
---|---|---|
l_xx | 10 | kilogram meter squared |
l_yy | 10 | kilogram meter squared |
l_zz | 10 | kilogram meter squared |
a_cmd_x
, a_cmd_y
, and a_cmd_z
. These need to be added to the action via the Right Sidebar.
These are the commanded attitudes we are providing the script:
Input Variable | Value | Unit |
---|---|---|
a_cmd_x | 50 | deg |
a_cmd_y | 50 | deg |
a_cmd_z | 50 | deg |
I_xx
, I_yy
, and I_zz
attributes you defined earlier. Copy their IDs from the Attributes dropdown and paste them in the getAttribute
function’s argument.
Finally, we need to set the settling_time
; this is the key performance parameter we are evaluating. Go back to the Satellite part and add it as an attribute.
Attribute Name | Value | Unit |
---|---|---|
settling_time | 120 | s |
setAttribute("", settling_time)
between the "".
settling_time
and set it for the Satellite’s attribute.settling_time
and set the limit to < 120 seconds
.I_xx
) in the Satellite’s attributes and re-run the simulation. Try to get the requirement to fail!
STANDBY
and SURVEILLING
.STANDBY
. Then, switch to the Action view and transition to SURVEILLING
to observe the effect taking place.Kp
) and derivative (Kd
) gains as attributes to the ACDS subsystem instead of hard-coding them in the Point Satellite script.J_rw_x
, J_rw_y
, J_rw_z
) as attributes of the Reaction Wheels .getAttribute
. This is to organize your parameters logically, making them easy to find and tune as your model grows in complexity.a_cmd_x
, a_cmd_y
, and a_cmd_z
instead of assigning them as inputs to the action.getConnection
(passing in the ID) to access these command variables instead of getInput
.attitude_x
, attitude_y
, and attitude_z
as attributes to the Satellite part with initial values of 0.setAttribute(id, value)
function, set the spacecraft’s attitude_x
, attitude_y
, attitude_z
attributes in your script.