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

Boat Module #23148

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

Boat Module #23148

wants to merge 2 commits into from

Conversation

PerFrivik
Copy link
Contributor

@PerFrivik PerFrivik commented May 17, 2024

Solved Problem

This PR integrates the Boat module with a new architecture that supports modular components such as BoatControl, BoatGuidance, and BoatKinematics. This architecture facilitates the integration with different drive systems like Differential Drive and Ackermann Drive. The module is designed for scalability, allowing for future adaptations to various types of boats by adjusting components like kinematics to suit specific needs.

Fixes #{Github issue ID}

Solution

  • Added support for new architecture in Boat module.
  • Refactored existing code to improve modularity.

Changelog Entry

For release notes:

Feature/Bugfix XYZ
New parameter: XYZ_Z
Documentation: Need to clarify page ... / done, read docs.px4.io/...

Alternatives

We could also ...

Test coverage

Context

Related links, screenshot before/after, video

@PerFrivik PerFrivik self-assigned this May 17, 2024
@igalloway
Copy link
Contributor

igalloway commented May 17, 2024

Hi @PerFrivik
Would you be able to share a bit more about your setup? What type of boat are you testing on? I would be interested in attempting to replicate/build up a boat config for testing using our NXP RT1176 based VMU/FMU. (NXP ref design similar to Holybro V6X-RT)
https://docs.px4.io/main/en/flight_controller/pixhawk6x-rt.html

@PerFrivik
Copy link
Contributor Author

PerFrivik commented May 21, 2024

Hi @PerFrivik Would you be able to share a bit more about your setup? What type of boat are you testing on? I would be interested in attempting to replicate/build up a boat config for testing using our NXP RT1176 based VMU/FMU. (NXP ref design similar to Holybro V6X-RT) https://docs.px4.io/main/en/flight_controller/pixhawk6x-rt.html

Yes of course! I used the setup that @junwoo091400 set up quite a while ago, which can be found here.

@PerFrivik
Copy link
Contributor Author

Keep in mind this PR is subject to change, I will most likely replace the L1 with a pure pursuit.

@hamishwillee
Copy link
Contributor

@PerFrivik We'll need to discuss then when it goes in for docs.

@PerFrivik
Copy link
Contributor Author

@PerFrivik We'll need to discuss then when it goes in for docs.

Yes I agree, I'll tag you then!

float32 yaw_rate # [rad] yaw_rate
bool closed_loop_yaw_rate_control # true if rudder angle is controlled using encoder feedback, false if direct feed-forward

# TOPICS boat_setpoint boat_control_output
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is kind of pedantic, but if it makes sense try to keep the actual data type (the .msg file) more generically useful (speed and heading setpoint?) then the actual topic could be the specific boat_setpoint, etc.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good, thank you for your input! I'm doing quite the revamp on the controller and this was exactly one of my questions.

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.

None yet

4 participants