controller module¶
Controller module for attitude determination and control system.
This module models the behavior of a PD controller and contains a class that stores controller gains and associated controller methods.
-
class
controller.
PDController
(k_d, k_p)¶ Bases:
object
A class to store PD controller parameters and methods
Parameters: - k_d (numpy ndarray) – the gains matrix (3x3) for the derivative control
- k_p (numpy ndarray) – the gains matrix (3x3) for the proportional control
-
k_d
¶ numpy ndarray – the gains matrix (3x3) for the derivative control
-
k_p
¶ numpy ndarray – the gains matrix (3x3) for the proportional control
-
calculate_control_torques
(attitude_err, attitude_rate_err, J)¶ Calculates the necessary control torques given input errors
Parameters: - attitude_err (numpy ndarray) – the attitude error (3x1) of the spacecraft at a given time
- attitude_rate_err (numpy ndarray) – the attitude rate error (3x1) of the spacecraft at a given time
- J (numpy ndarray) – the spacecraft’s inertia tensor (3x3) (kg * m^2)
Returns: - the control torque (3x1) produced by the PD
controller (N * m)
Return type: numpy ndarray