Commit Graph

176 Commits

Author SHA1 Message Date
Nicholas Engle 1103e92884 SITL: Add SIM_WIND_DIR_Z parameter for SITL
This controls the vertical pitch of the 3d wind vector, allowing futher control of the wind
using systems like dronekit. This change directly effects the calcuation of the wind vector
2018-02-05 16:38:53 -08:00
Andrew Tridgell 917d9842c4 SITL: support AHRS_ORIENTATION in SITL
this allows for tailsitters in RealFlight
2017-11-23 14:26:11 +11:00
Andrew Tridgell 964d64a623 SITL: adjust FlightAxis defaults
and map 0,0 to CMAC location, to improve how SITL works in
MissionPlanner
2017-11-19 18:24:08 +11:00
hiro2233 7d304073ed SITL: fixed include case sensitive
On case sensitive cygwin feature enabled, this build ok.
2017-10-25 20:59:55 +11:00
Andrew Tridgell c5cd1b873c SITL: use thread for FlightAxis comms
this allows us to run SITL at a much higher framerate than RF can
provide, and results in the EKF being much happier
2017-10-21 11:57:59 +11:00
Andrew Tridgell 74265f523a SITL: support -roll180 option to frames 2017-10-10 10:57:38 +11:00
Pierre Kancir b176ba53d7 SIM_Aircraft: move advance in time from update_position to time_advance 2017-06-07 20:29:02 +10:00
Pierre Kancir 599e3d7b83 SITL: make range finder a standalone sitl plugin 2017-06-07 20:28:25 +10:00
Andrew Tridgell 47b79eb72d SITL: expose home location 2017-05-08 13:38:10 +10:00
Andrew Tridgell 4de0daa7a1 SITL: make quaternion state available outside SITL 2017-04-16 14:01:36 +10:00
Pierre Kancir ee7355a301 SITL: Reduce some variables scope and include 2017-03-18 19:58:11 +11:00
Pierre Kancir 8054405521 SITL: Change interface port to a generic solution for external simulator 2017-03-18 19:58:11 +11:00
Pierre Kancir 5b8c89225a SITL: Make socket more verbose 2017-03-18 19:58:11 +11:00
Pierre Kancir 567a8d68e5 SITL: Make socket error more verbose 2017-03-18 19:58:11 +11:00
Pierre Kancir 63ea8c6f21 SITL: enable multi sitl for gazebo 2017-03-18 19:58:11 +11:00
Andrew Tridgell 3c8020862c SITL: support a builtin tailsitter vehicle type 2017-02-18 17:26:43 +11:00
Pierre Kancir bf135aeff7 SITL: Aircraft correct some syntax, implicit cast, make some local variable const, remove tabs and whitespace 2016-12-19 14:53:17 +00:00
Peter Barker f8918d15b1 SITL: add a hagl method to aircraft 2016-12-02 12:04:05 +11:00
Peter Barker f1c23dc9be SITL: remove argument to on_ground
This was always the current position
2016-12-02 12:04:05 +11:00
Peter Barker e24f3f9419 SITL: correct on-ground correction
Using the cached ground_height_difference may mean
you end up at the wrong height if you were near
the edge of an SRTM square and had high horizontal
velocity
2016-12-02 12:04:05 +11:00
Tom Pittenger 11229d2588 SITL: fix whitespace 2016-11-18 10:42:10 -08:00
ori ganoni 631b5c3ebc adding turbulance to SITL 2016-11-17 20:06:35 -08:00
murata c808ee2f49 Global: To nullptr from NULL.
RC_Channel: To nullptr from NULL.

AC_Fence: To nullptr from NULL.

AC_Avoidance: To nullptr from NULL.

AC_PrecLand: To nullptr from NULL.

DataFlash: To nullptr from NULL.

SITL: To nullptr from NULL.

GCS_MAVLink: To nullptr from NULL.

DataFlash: To nullptr from NULL.

AP_Compass: To nullptr from NULL.

Global: To nullptr from NULL.

Global: To nullptr from NULL.
2016-11-02 16:04:47 -02:00
priseborough d830f68901 SITL: Add angular acceleration to simulator states
The calculation used is an approximation to work around the lack of angular acceleration in the interface with the flight dynamics model.
2016-10-27 14:54:44 +11:00
Andrew Tridgell 5e03358b0b SITL: added servo filtering
SIM_SERVO_SPEED is servo time constant in seconds
2016-10-25 20:39:38 +11:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell c275e7c61d SITL: added SIM_SPEEDUP parameter
allows changing speed of simulation while running
2016-09-19 07:45:24 +10:00
Andrew Tridgell 52caf8419e SITL: fixed sense of wind direction
wind direction is where wind is coming from, not going to
2016-09-16 10:59:27 +10:00
Andrew Tridgell a1c759e491 SITL: added sensor smoothing
this adds smoothing of sensors for kinematic consistency when
interacting with the ground. It means when we land the EKF doesn't go
crazy
2016-07-19 21:38:16 +10:00
Andrew Tridgell e7a54c83d1 SITL: allow SITL to use terrain data for ground height 2016-07-19 14:42:31 +10:00
Andrew Tridgell b7395ee74b SITL: fixed sign of magnetic inclination 2016-06-20 11:17:36 +10:00
Paul Riseborough 55b0bbd3f1 SITL: Add simulation of 3D earth magnetic field
Use an independant method to the flight code using tables that that can updated.
Data taken from NOAA online calculator using WMM data at 2016-6-16 date
2016-06-19 12:51:34 +10:00
Paul Riseborough 078284e2e2 SITL: Add magnetic field environment to simulation
Includes parameters enabling a ground level magnetic anomaly to be modelled.
TODO - add automatic setting of declination, inclination and field strength using WGS-84 position.
2016-06-19 12:51:34 +10:00
Andrew Tridgell e360c6117e SITL: make SIM_* variables available to simulator backends directly 2016-06-17 08:36:13 +10:00
Tom Pittenger 0ed868d97b SITL: compiler warning, comparing float to 0 2016-06-14 21:05:38 -07:00
Andrew Tridgell 7c227ac96c SITL: debug code for logging raw SITL data 2016-06-04 14:21:21 +10:00
Gustavo Jose de Sousa ce8766e1cd SITL: remove set_yaw_degrees()
That function isn't being used anywhere.
2016-05-10 16:16:37 +10:00
Andrew Tridgell 3b0cd9f101 SITL: added RC input from FlightAxis
use the interlink controller for input for 6 channels
2016-05-04 12:51:27 +10:00
Andrew Tridgell 785ad0614a SITL: fixed coverity 125055 2016-04-26 16:46:06 +10:00
Andrew Tridgell 57aef8e1e9 SITL: added basic wind support in multicopter, plane and quadplane
this adds non-turbulent wind support for the built-in simulators. I
added it primarily for quadplane testing, but it should also be useful
for multicopter navigation testing.
2016-04-20 11:48:37 +10:00
Andrew Tridgell 73a2c99d56 SITL: limit rotational rate to 2000dps 2016-03-26 14:23:05 +11:00
Tom Pittenger 1f714ed75d SITL: handle negative throttle
- negative throttle was causing negative offsets
2016-02-09 14:18:01 +11:00
Andrew Tridgell 7a7bd0607f SITL: first version of FlightAxis SITL support 2016-01-09 07:38:51 +11:00
Andrew Tridgell 62b2a2117d SITL: only report ground contact at most once per second 2016-01-05 09:47:58 +11:00
Andrew Tridgell 33998a58ac SITL: prevent aircraft going below ground level 2016-01-01 17:01:23 +11:00
Andrew Tridgell d425965f6d SITL: expose home yaw to FDMs 2016-01-01 17:00:57 +11:00
Andrew Tridgell 8a98ce427c SITL: moved to common code for attitude/pos update 2016-01-01 15:12:33 +11:00
Tom Pittenger 7236b48518 SITL: compiler warning: double to float demotion
- replace atof() with strtof() for the correct return time
2015-12-08 14:54:58 +09:00
Tom Pittenger f88de986bc SITL: created ADSB simulator to generate additional ghost aircraft within SITL
The values are very aggressive, you'll come into contact with another aircraft very soon
Credit goes to Tridge for this work

This feature is enabled with the following command:
sim_vehicle -A --adsb
2015-11-23 19:45:40 +11:00
Andrew Tridgell 223ce2b6aa SITL: allow FDM models to provide voltage, current and RPM 2015-11-23 13:46:27 +11:00
Andrew Tridgell 585e6dabb8 SITL: FDM structure is no longer a network protocol structure
remove unused fields and change comments
2015-11-23 13:25:00 +11:00
Caio Marcelo de Oliveira Filho 288dc2a385 SITL: clean up includes
Remove unnecessary includes, reorder them in blocks separated by a blank
line

   - Corresponding header file (if exists)
   - System headers
   - Other ArduPilot library headers
   - "Local" headers (from the same library)
2015-10-22 13:36:19 -02:00
Caio Marcelo de Oliveira Filho 8a55b26443 SITL: no need to use #ifdefs
Now that SITL is compiled only when it's needed (i.e. using the SITL
board), there's no need to ifdef its files based on the
CONFIG_HAL_BOARD. So remove them.
2015-10-22 13:36:19 -02:00
Caio Marcelo de Oliveira Filho e2fa456742 SITL: remove "constructor" comment 2015-10-22 11:16:39 -02:00
Caio Marcelo de Oliveira Filho f0a20cdc7c SITL: remove trailing whitespace 2015-10-22 11:15:20 -02:00
Caio Marcelo de Oliveira Filho 49a42dc985 SITL: use a SITL namespace 2015-10-22 11:04:42 -02:00
Andrew Tridgell a3d7156f28 SITL: raise default simulation rate to 1200Hz
this greatly improves things for the heli sim
2015-09-01 16:34:20 +10:00
Fredrik Hedberg e2027a8414 SITL: Add HELI_DUAL_FRAME and HELI_COMPOUND_FRAME. 2015-08-13 18:23:30 +10:00
Gustavo Jose de Sousa a02e7730ea SITL: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:38:25 +10:00
Andrew Tridgell 1f58e0080a SITL: fixed some build warnings 2015-07-06 09:21:49 +10:00
Andrew Tridgell d8df31c023 SITL: initialise a couple of variables to prevent a valgrind error 2015-05-27 11:54:18 +10:00
Andrew Tridgell 563be63d00 SITL: try to get speedup accurate on both windows and linux 2015-05-25 21:48:42 +10:00
Andrew Tridgell 2b2259a6d7 SITL: use more granrular sleeps for windows 2015-05-25 17:05:44 +10:00
Andrew Tridgell c06d81a06a SITL: use autotest_dir
this allows for the aircraft directory for SITL to be packaged without
the source tree
2015-05-25 13:04:46 +10:00
Andrew Tridgell 2bb5f677c7 SITL: removed earth frame rates 2015-05-25 09:03:10 +10:00
Andrew Tridgell da5d5c9936 SITL: fixed airspeed pass-thru from simulators 2015-05-23 11:24:10 +10:00
Andrew Tridgell aa9853179c SITL: fixed startup yaw 2015-05-10 21:57:19 +10:00
Andrew Tridgell cbdc9f0706 SITL: fixed autotest SITL 2015-05-06 10:09:43 +10:00
Andrew Tridgell 93d5101bf9 SITL: added CRRCSim simulation connection 2015-05-05 21:42:45 +10:00
Andrew Tridgell 42c6801d61 SITL: reformat SITL code with astyle 2015-05-05 11:49:54 +10:00
Andrew Tridgell a58a663085 SITL: fixed build on APM2 2015-05-05 09:45:58 +10:00
Andrew Tridgell 64fa219c05 SITL: converted rover simulator from python to C++ 2015-05-05 09:45:53 +10:00
Andrew Tridgell 6ec6158b8b SITL: converted helicopter simulator from python 2015-05-05 09:45:53 +10:00
Andrew Tridgell 77f007ab27 SITL: support speedup setting on the command line 2015-05-05 09:45:52 +10:00
Andrew Tridgell 437e1bdba0 SITL: added fill_fdm() for FDM output from simulator 2015-05-05 09:45:52 +10:00
Andrew Tridgell 914b91af9e SITL: initial conversion of multicopter sim to C++ 2015-05-05 07:12:36 +10:00