Closed Loop Control System. More...
Public Member Functions | |
| def | __init__ (self, Kp, Ki, Kd, ref) | 
| takes in gain value and setpoint  More... | |
| def | run (self, pos, ref) | 
| runs the proportional control loop  More... | |
| def | set_ref (self, ref) | 
| sets reference point  More... | |
| def | set_Kp (self, Kp) | 
| sets proportional gain value  More... | |
| def | add_data (self) | 
| makes list of position and time  More... | |
Public Attributes | |
| Kp | |
| Ki | |
| Kd | |
| ref | |
| listpos | |
| time | |
| start_time | |
| enc1 | |
| old_pos | |
| old_time | |
| error | |
| i | |
| integral | |
| deriv | |
| pos | |
| new_time | |
| new_pos | |
| time_diff | |
| current_time | |
Closed Loop Control System.
This class contains useful functions we need for the controller to be effective at getting to the motor setpoint.
| def controlloop.ClosedLoop.__init__ | ( | self, | |
| Kp, | |||
| Ki, | |||
| Kd, | |||
| ref | |||
| ) | 
takes in gain value and setpoint
This instantiates necessary objects to capture controller's values.
| Kp | gain value | 
| ref | reference point | 
| def controlloop.ClosedLoop.add_data | ( | self | ) | 
makes list of position and time
Time is gathered as column 1 while column 2 is encoder position. Plotting these two together gives a nice step response.
| def controlloop.ClosedLoop.run | ( | self, | |
| pos, | |||
| ref | |||
| ) | 
runs the proportional control loop
Only acting as a P-controller, this function multiplies our gain by the difference between the reference point and the current position.
| pos | current position | 
| def controlloop.ClosedLoop.set_Kp | ( | self, | |
| Kp | |||
| ) | 
sets proportional gain value
| Kp | gain value | 
| def controlloop.ClosedLoop.set_ref | ( | self, | |
| ref | |||
| ) | 
sets reference point
| ref | set point |