ArduPilot / SITL_Models

Models of aircraft for SITL
82 stars 116 forks source link

Add release directory, add DG-800 glider as 1st template/example #15

Closed Hwurzburg closed 4 years ago

Hwurzburg commented 4 years ago

Reorg proposal as we discussed Tridge....and first entry as template.... I re-worked the param file to provide full functionality of all airframe features (brake, airbrake, motor deploy,etc.) I re-worked the model file to add the readme.md text as the model description in RealFlight aircraft selection and to add a camera (independent of environment) to allow inspect of all operating surfaces to facilitate code change verifications

I expect that all proposal for a released model should be tested and all the required elements verified by a third party: Readme for model and include it in RF description box....should state features, output assignments in params, and channel functions (ch 8 should always be mode to match Interlink controller default)..and should have a model specific inspection camera

The goal is to provide newbie's like myself easy ramp on using the model

davidbuzz commented 4 years ago

might be worth including in the readme for each the specific version of ardupilot/arducopter it was tested with, and perhaps the specific realflight version as well..?

kd0aij commented 4 years ago

We should pare the parameter files down by excluding all default values

Hwurzburg commented 4 years ago

We should pare the parameter files down by excluding all default values

Do you know an easy way to do that?

Hwurzburg commented 4 years ago

We should pare the parameter files down by excluding all default values

good idea...will add

kd0aij commented 4 years ago

@Hwurzburg I just realized that the default values aren't even in the parameter metadata, and I don't know how a GCS determines whether a param value is non-default... The autotests have sets of default parameters on a per-frame basis (I think). We can ask @peterbarker if there's a tool to generate a diff between a full set of params and the defaults for a particular frame.

Hwurzburg commented 4 years ago

@kd0aij we talked last night....yeah the sim uses a small diff file for the vehicle overlaid on the firmware defaults....what we need is a utility that would take a param file, compare to sim_vehicle params after loading (or any file) and produces a loadable param file for the differences.... tried mavparmdiff.py but takes a lot of hand editing to get rid of unwanted data and reformat into a loadable file...

Hwurzburg commented 4 years ago

might be worth including in the readme for each the specific version of ardupilot/arducopter it was tested with, and perhaps the specific realflight version as well..?

sorry wrong quote before...yeah will add that

Hwurzburg commented 4 years ago

I have reworked the RF model on the glider in light of the fact that we want it to the the interlink controller as standard and that flightaxis in ArduPilot only can input 8 channels....even though interlink has 13 rc outputs (should consider increasing that...sw e,f,g,h and the button could be used in sims for rc options, passthru to operate direct servos,etc.) did manage to get the brake working using the software radio (which is not required here, but usually is if its a derivative)

Hwurzburg commented 4 years ago

Added basic quadcopter

kd0aij commented 4 years ago

verified DG-800 RFX and param file with Interlink controller in RF8: behaves well: motor deploys on arming with SW7, LG on knob, flaps on SW5, flight mode on SW8

IamPete1 commented 4 years ago

If you find some params that are required for all vehicles we could add them in the code rather than having them in each pram file,

https://github.com/ArduPilot/ardupilot/blob/7a3e2d11dbf5838fdde70a97d26b0b42b608f948/libraries/SITL/SIM_FlightAxis.cpp#L44

Hwurzburg commented 4 years ago

@IamPete1 Will keep that in mind....it might be nice to set the first 12 servo outputs to 1000/2000 for min max instead of only the first few..

Hwurzburg commented 4 years ago

okay, ready to go...will also update wiki with new paths, as well as expanding on how this all works