Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrote gnd_pos_control and removed gnd_att_control #12239

Merged
merged 17 commits into from
Jul 11, 2019

Conversation

AmeliaEScott
Copy link
Contributor

@AmeliaEScott AmeliaEScott commented Jun 11, 2019

Describe problem solved by the proposed pull request
The original implementation of ground rover control was based on fixed wing control, and so included unnecessary code for attitude control. This caused some problems with edge cases, such as loitering and return to launch for rovers.

Resolves #11956

Test data / coverage
This was tested both in SITL with gazebo_rover and on the Aion R1 rover.

Describe your preferred solution
The L1 controller outputs a desired turn radius. With a fixed-wing craft, this is used to calculate a desired roll angle, and then an attitude controller is used to hold this roll angle. With a ground rover, the turn radius can be achieved directly by just knowing the geometry of the vehicle and outputting a constant turn control. Thus, all of the ground "attitude control" code can be removed.

Describe possible alternatives
The existing solution treated the ground rover like a fixed-wing craft, as mentioned before. This works overall, but there are edge cases that would need to be individually addressed. However, the solution in this pull request will provide a more stable foundation for further rover functionality.

@AmeliaEScott AmeliaEScott changed the title [WIP] Updated gnd_pos_control and removed gnd_att_control [WIP] Updated gnd_pos_control and removed gnd_att_control Jun 11, 2019
@AmeliaEScott AmeliaEScott changed the title [WIP] Updated gnd_pos_control and removed gnd_att_control WIP: Updated gnd_pos_control and removed gnd_att_control Jun 11, 2019
@AmeliaEScott AmeliaEScott self-assigned this Jun 11, 2019
@AmeliaEScott AmeliaEScott added the Rover 🚙 Rovers and other UGV label Jun 11, 2019
@AmeliaEScott AmeliaEScott force-pushed the pr-rover-control branch 5 times, most recently from 851eb9a to ec56210 Compare June 14, 2019 11:29
@AmeliaEScott AmeliaEScott changed the title WIP: Updated gnd_pos_control and removed gnd_att_control Updated gnd_pos_control and removed gnd_att_control Jun 14, 2019
@AmeliaEScott AmeliaEScott requested review from dagar and julianoes June 14, 2019 11:31
@dagar dagar changed the title Updated gnd_pos_control and removed gnd_att_control [WIP] Updated gnd_pos_control and removed gnd_att_control Jun 26, 2019
@dagar
Copy link
Member

dagar commented Jul 9, 2019

Can you fix the CI failures? The new v5x config needs to be updated.

@AmeliaEScott
Copy link
Contributor Author

@dagar The CI problems have been fixed, sorry about that!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update gnd_pos_control and ground_att_control modules
2 participants