In this assignment, you will create a PID controller to demonstrate your knowledge of controls. A ROS package, controls_hw, has been provided in the course folder of your repository. This package contains code to run vehicle dynamics code and display a graph of the results. You do NOT have to write your own code for dynamics or graphing. Your code needs to subscribe to the relevant topics provided by the dynamics node and publish a control signal to the dynamics node.
The controller is expected to stop a simulated vehicle (think of it as a fairly large truck) that starts at 20 m/s within 30m. Note that this is slightly different from the lecture examples but the same basic problem. To do this:
The ROS package, controls_hw, has been provided for you in the class template repo in the EECE5560 folder. You should not need to modify this package. The package contains:
Turn in to Blackboard:
4 points: Submission details (Q1-4 above)
10 points: Answers to Q5-7 above
6 points: PID controller package and launch file
10 points: PID controller node
10 points: accuracy – overshoot less than 1m and stops within 2m of 30m mark in 15 seconds