Open 41Mo opened 1 year ago
@41Mo, could you please rebase your PR on main
. Apologies for the delay in the review.
@srmainwaring yeah, ofcourse. This PR is still in draft state, I made some modifications locally to calculate force using desired acceleration. But it's incomplete.
This PR is still in draft state
Ok - I'll mark as draft and wait for your request before reviewing.
My rebased branch is here: https://github.com/srmainwaring/ardupilot_gazebo-1/tree/review/pr-catapult-plugin. It's the CMakeLists.txt that is conflicted.
Add support for a catapult via the catapult plugin.
This plugin will be useful for testing takeoff modes and will simplify usage of zephyr model e.g. #39
Details:
The catapult plugin implemented using a detachable joint system.
The plugin should be added directly to one of the models, either the Launchpad/catapult or the vehicle.
For example, in the case of the Zephyr Delta Wing model:
In this example, the plugin is added to the zephyr_catapult.sdf, which includes zephyr.sdf. Therefore, we should use the fully qualified name zephyr::wing inside the vehicle_link parameter. The catapult_link parameter should be done similarly.
The direction parameter is a three-component vector that describes the direction of the force applied by the catapult.
The final force applied by the catapult is calculated as force_magnitude * direction, and it is applied to the vehicle during the launch_duration.
Testing
Gazebo
SITL
Se takeoff mode and arm
Gazebo
publish message to topic
Launching with ardupilot plugin enabled:
https://user-images.githubusercontent.com/40123891/229605911-8e0b454a-e0ce-4a06-94ec-a63c70d76ddf.mp4
Launching without ardupilot plugin enabled.
https://user-images.githubusercontent.com/40123891/229606264-342d4aba-6176-4176-af35-35a43eee1fbd.mp4
Current ISSUES/TODOS