ArduPilot / SITL_Models

Models of aircraft for SITL
82 stars 116 forks source link

Add AION R1 Rover model #120

Closed itskalvik closed 8 months ago

itskalvik commented 8 months ago

Added AION robotics R1 Rover model with ardupilot plugin. I also fixed the tire traction issue that was preventing it from rotating in place (issue present is px4 repo's R1 model).

srmainwaring commented 8 months ago

Hi @itskalvik - the PR needs some more information. Take a look at the some of the other PRs for Gazebo models to get an idea of what's expected. If the model is not created by you (i.e. from PX4's model collection or somewhere else) I'd expect some attribution and notes on licensing restrictions if any.

srmainwaring commented 8 months ago

@itskalvik the PR needed a bit of work to get running. Unfortunately you've made your commits in the master branch of your fork which makes it difficult to collaborate (if I force push to your master branch it will reset it back to the origin/master which is not good). The dev guide explains the process more fully to follow next time: https://ardupilot.org/dev/docs/submitting-patches-back-to-master.html

My changes are here: https://github.com/srmainwaring/SITL_Models/tree/reviews/pr-aion-r1

Details

Specifications: https://github-docs.readthedocs.io/en/latest/_images/r1-specs-cm.PNG

Model modifications:

Param changes:

Speed:

rc 3 groundspeed (m/s throttle (%)
1500 0.0 0
1600 0.21 20
1700 0.58 40
1800 0.92 60
1900 1.26 80
2000 1.60 100

Use RC12_OPTION 50 as auxiliary switch to learn cruise speed (rc 3 1830):

CRUISE_SPEED     1.01854407787323
CRUISE_THROTTLE  63.0
WP_SPEED 1.0

Steering

ACRO_TURN_RATE 140

Rover quick tune. Run with higher RTUN_STR_FFRATIO for more aggressive tune.

RTUN_STR_FFRATIO 1.5
itskalvik commented 8 months ago

Oh wow, yeah these changes are fantastic! I will go through the documentation and try to improve my future pull requests. Thanks @srmainwaring :)

srmainwaring commented 8 months ago

@itskalvik - it's nice to have this model available. It's still a little twitchy but that's possibly still down to the wheel collisions / physics rather than the AP tune.

There's a couple of ways we could get this PR merged. 1. you can take a branch of your PR as a backup, reset your forked master to origin/master then cherry-pick the commits from my branch and then push, or 2. close this PR, open a new PR from a fresh branch (named say prs/pr-aion-r1), then I can edit / force push to that as needed. Either way will work, closing this PR and re-opening with a named branch is the better practice though.

If you're not sure how either of these processes work I can help you through it sometime on the ArduPilot Discord server. Getting to grips with ArduPilot's expected git usage is quite a steep learning process, but well worth it especially if you plan to contribute to the main flight controller repo.