Commit Graph

265 Commits

Author SHA1 Message Date
Lucas De Marchi 35b550f03d autotest: fix usage of tabs instead of space
Python 3 is stricter with regard to using tabs instead of space (PEP8):
	Spaces are the preferred indentation method.

	Tabs should be used solely to remain consistent with code that
	is already indented with tabs.

	Python 3 disallows mixing the use of tabs and spaces for
	indentation.

	Python 2 code indented with a mixture of tabs and spaces should
	be converted to using spaces exclusively.
2015-05-13 20:51:37 +09:00
Andrew Tridgell 68515d0324 autotest: fixed CopterAVC test 2015-05-11 11:26:54 +10:00
Andrew Tridgell 98df4fe60e autotest: make sim command clearer in logs 2015-05-06 10:10:13 +10:00
Andrew Tridgell 209896afc7 autotest: use builtin rover model for autotest 2015-05-05 16:56:39 +10:00
Andrew Tridgell 8c8c910ad0 autotest: removed the old AVR/2560 code in autotest
now checked with build_all
2015-05-05 10:39:31 +10:00
Andrew Tridgell 1cbbf1ab9e autotest: start SITL in synthetic clock mode 2015-04-30 17:19:56 +10:00
Andrew Tridgell 3300de2c9d autotest: added some gyro and accel noise to copter sim
this noise should be kinematically consistent, so will be better for
the EKF
2015-04-21 21:33:27 +10:00
Andrew Tridgell 03b5305837 autotest: allow for negative col pitch in crrcsim heli
this allows for hovering upside down in acro mode
2015-04-21 20:45:30 +10:00
Andrew Tridgell ffd4662ec4 autotest: convert rover sim to use sim_wrapper.py 2015-04-20 08:36:52 +10:00
Andrew Tridgell dbeaccc3d9 autotest: auto-adjust frame rate for crrcsim 2015-04-20 08:20:50 +10:00
Andrew Tridgell 6897bfdc6b autotest: fixes for crrcsim with heli model 2015-04-20 08:05:29 +10:00
Andrew Tridgell e9b6863b23 autotest: changed to new crrcsim FDM protocol format 2015-04-19 15:49:05 +10:00
Andrew Tridgell 1cd114e300 autotest: added initial CRRCSim backend 2015-04-19 12:08:26 +10:00
Andrew Tridgell b5c40cad76 autotest: added gps_distance and gps_bearing
needed for CRRCSim backend
2015-04-19 12:08:26 +10:00
Andrew Tridgell b6ff19e86c autotest: make default rate depend on model type 2015-04-19 12:08:26 +10:00
Andrew Tridgell 633e7122e7 autotest: added some lateral thrust to helicopter simulator 2015-04-19 12:08:26 +10:00
Andrew Tridgell 6b21aceed0 autotest: moved constrain() into util.py 2015-04-19 12:08:26 +10:00
Andrew Tridgell d691cfc3d8 autotest: rename sim_multicopter.py to sim_wrapper.py
it now supports multiple vehicle types
2015-04-19 12:08:25 +10:00
Andrew Tridgell 82f6bb3c17 autotest: use common frame time handling 2015-04-13 10:08:12 +10:00
Randy Mackay 2799d15427 SITL: weaken simulated copter 2015-04-08 12:18:15 +09:00
Andrew Tridgell ee35c2aa35 autotest: update gimbal model to match new messages 2015-04-06 16:45:51 -07:00
Andrew Tridgell a0028e3faf autotest: fixed SITL without ROS installed 2015-04-01 12:28:41 -07:00
Andrew Tridgell 70855027f3 autotest: added Iris ROS simulator support
use -f IrisRos
2015-04-01 09:14:03 -07:00
Andrew Tridgell f82f0da2b3 autotest: support sims that do their own time control 2015-04-01 09:12:11 -07:00
Andrew Tridgell 5947160fd7 autotest: removed delta_time from update_position()
not available in some backends, and not needed
2015-04-01 09:11:25 -07:00
Andrew Tridgell cf15b4d4fc autotest: removed use of --nowait option 2015-03-27 18:03:24 -07:00
Andrew Tridgell 16f09a6eae autotest: added -S parameter for simulation speedup 2015-03-27 13:52:59 -07:00
Andrew Tridgell 45887a5d28 autotest: run rover and copter with synthetic clock 2015-03-22 18:57:43 -07:00
Andrew Chapman e90f5375d0 added octa-quad target for SITL, fixed octa motor order 2015-03-11 21:38:25 +09:00
Robert Lefebvre 45a12646be SITL: Initial improvements to tradheli simulation 2015-03-11 21:07:02 +09:00
Andrew Tridgell 3ca4142c91 SITL: added tradheli support
start with:

  sim_vehicle.sh -f heli --console --map
2015-02-24 16:16:05 +11:00
Paul Riseborough fe0c434d2b Simulator: Gimbal debug output changes 2015-02-03 09:49:17 +11:00
Paul Riseborough 84029f8f7c Simulator: Bypass angle limiting to allow debugging 2015-02-03 09:49:17 +11:00
Andrew Tridgell 9bdefd0bba autotest: updates for new GIMBAL_REPORT format 2015-02-03 09:49:16 +11:00
Andrew Tridgell c58397020a autotest: send targeted GIMBAL_REPORT messages 2015-02-03 09:49:15 +11:00
Andrew Tridgell 28cf93d300 autotest: added maths for correct gimbal joint limits
This adds (more) correct join rate limiting based on Pauls maths. It
avoids the coupling of the axes inherent in the last implementation

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2015-02-03 09:49:14 +11:00
Andrew Tridgell f63eb870cf autotest: change euler312 ordering conventions 2015-02-03 09:49:14 +11:00
Andrew Tridgell 791dfbff7e autotest: added mavlink gimbal simulation in copter SITL
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2015-02-03 09:49:13 +11:00
Andrew Tridgell edad8da613 pysim: added euler312 conversions 2015-02-03 09:49:13 +11:00
Andrew Tridgell 06c3a0e96c autotest: fixed tracker sim for non-onoff mode 2014-08-03 18:16:50 +10:00
Andrew Tridgell 8ea098ad21 autotest: support antenna trackers with on/off servos in SITL 2014-07-23 18:41:34 +10:00
Andrew Tridgell acdb2e2175 autotest: raise turn rate of antennas 2014-03-13 07:30:41 +11:00
Andrew Tridgell 83269bbea7 autotest: initial version of a antenna tracker simulator 2014-03-12 14:35:01 +11:00
Andrew Tridgell c39ad1cafb autotest: better skid steering support in the rover simulator 2014-02-17 10:11:40 +11:00
Andrew Tridgell e1b01b205a autotest: fixed clean build 2013-11-04 21:21:43 +11:00
Andrew Tridgell dcb60e190d autotest: run mavproxy.py from $PATH 2013-09-17 21:05:00 +10:00
Andrew Tridgell 4f118a85b2 autotest: fixed import paths for pymavlink
assumes installed package now
2013-08-30 13:01:36 +10:00
Andrew Tridgell 6288487814 autotest: fixed initial yaw in copter sim 2013-05-27 18:13:09 +10:00
Andrew Tridgell 7456493b34 autotest: make rover sim closer to Toms slash 2013-05-27 13:37:33 +10:00
Andrew Tridgell 761bd75a3a autotest: update rover sim for turning circle based steering
more realistic modelling of a rover
2013-05-27 13:37:33 +10:00
Andrew Tridgell 4c9cb461d6 autotest: setup Rover autotest for Sparkfun course
this will make it easier to test around the course
2013-05-17 10:37:11 +10:00
Randy Mackay 9e01dea95b AutoTest: reduce copters terminal vel to 15m/s 2013-05-03 14:52:16 +09:00
Randy Mackay 68279a138f AutoTest: reduce power of virtual copter 2013-05-03 11:20:26 +09:00
Andrew Tridgell 960574cccf autotest: fixed sleep_overhead calculation in sim_multicopter.py 2013-04-08 07:07:25 +10:00
Andrew Tridgell 2b19249e4a autotest: fixed autotest executable path 2013-04-06 18:24:43 +11:00
Andrew Tridgell a8e34eeeb7 autotest: fixed tmp path handling in autotest for dump_logs.py 2013-04-06 17:07:47 +11:00
Andrew Tridgell e61f3dfeca autotest: remote getppid for SITL copter on windows 2013-04-02 13:54:36 +11:00
Andrew Tridgell f6ddc4e4a1 autotest: added GPS vertical speed to the sitl simulator 2013-03-28 10:28:08 +11:00
Andrew Tridgell 92ddd4b5d1 autotest: removed 2nd getppid() call 2013-03-26 08:23:00 +11:00
Andrew Tridgell 8b21cac5fd autotest: remove dependency on getppid()
makes pysim more windows friendly
2013-03-26 08:20:40 +11:00
Andrew Tridgell 57c498b570 autotest: remove dependency on pexpect for rover/copter sim
this makes it easier to run on windows
2013-03-26 08:12:57 +11:00
Andrew Tridgell 232bdca4e2 autotest: improved skid steering test scripts 2013-03-15 11:05:03 +11:00
Andrew Tridgell 6ea2130342 autotest: added skid steering support to rover simulator
Very rough initial implementation. Needs to be tweaked for more
realistic behaviour later.

thanks to Greg Brill for pointers on this.
2013-03-15 09:52:32 +11:00
Andrew Tridgell a8b9e5cf5b autotest: disable wind drag
this is causing some crazy results in stabilize mode. Disable it until
we sort it out
2013-01-14 18:03:51 +11:00
Andrew Tridgell 3fda7bbeac autotest: fixed log dumping 2012-12-22 14:50:32 +11:00
Andrew Tridgell 7b2d65e3e7 autotest: added HAL_BOARD to build config 2012-12-22 12:55:22 +11:00
Andrew Tridgell a620665772 autotest: first version of a rover simulator in python 2012-11-28 00:11:54 +11:00
Andrew Tridgell 1ce3876d24 pysim: fixed testwind script 2012-10-31 10:26:48 +11:00
Lee Pike a141e16729 Pysim: add effects of wind by calcualting a drag vector (force). 2012-10-31 10:15:32 +11:00
Andrew Tridgell 697b2074a5 SITL: added SIM_WIND_* parameters
this allows control of the simulated wind during a flight
2012-08-25 17:49:26 +10:00
wiseman af0d2de2ed Use MAVPROXY_CMD instead of MAVPROXY 2012-07-23 21:30:50 -07:00
wiseman 05de9e425c Added run_sim_mission. 2012-07-23 21:29:24 -07:00
Andrew Tridgell 60caaa4b04 MAVLink: remove MAVLink 0.9 protocol support
this simplifies the code a lot. We're not going back to 1.0
2012-07-05 13:00:46 +10:00
Andrew Tridgell 61f325713e SITL: fixed the normalisation of the DCM matrix in the multicopter sim 2012-07-04 15:59:15 +10:00
Andrew Tridgell 5cd5f40f09 autotest: switch to full accel modelling in multicopter simulation
the new AHRS code should allow for centripetal compensation in
multicopters
2012-06-27 16:01:50 +10:00
Andrew Tridgell ff9743995d autotest: fixed lat/lon update for multicopter sim
this makes waypoint tracking more accurate
2012-06-05 11:18:52 +10:00
Andrew Tridgell 47d5f31fc2 removed copy of pymavlink code
use upstream code instead
2012-06-04 17:51:12 +10:00
Andrew Tridgell 67afdc7485 autotest: fixes for MAVLink 1.0 in autotest 2012-04-27 15:15:53 +10:00
Andrew Tridgell b73732c361 autotest: removed unused files 2012-04-27 15:15:53 +10:00
Andrew Tridgell 9d4b37ecac sitl: we don't need mavlink in copter sim 2012-04-24 22:24:58 +10:00
Andrew Tridgell c084a72723 pysim: ensure Vector3() uses floats 2012-03-29 12:39:53 +11:00
Andrew Tridgell 0f6e7a1449 pysim: implement partial 3D acceleration support
The simulator flies very badly when using the full acceleration
code. I don't yet know if this is a bug in the simulation or a problem
with AHRS not handling acceleration for multicopters.

For now set the acceleration to be half a 'pure gravity' acceleration
and half from the full 3D calculation.
2012-03-23 16:48:52 +11:00
Andrew Tridgell f1acdb13c2 pysim: added experimental acceleration support 2012-03-23 16:48:52 +11:00
Andrew Tridgell 5f3e2cf98a pysim: update the multicopter simulator with correct acceleration
this re-works the multicopter simulator in terms of rotation matrices,
and adds full acceleration support, which means it will include linear
acceleration affects and centripetal acceleration
2012-03-22 23:00:45 +11:00
Andrew Tridgell 4407f6b8ca pysim: added rotmat.py
this is a python library for rotation matrices, following the
conventions in AP_Math
2012-03-22 23:00:45 +11:00
Andrew Tridgell ffa3330f93 autotest: fixed the calculation of the acceleration due to gravity
this fixes the attitude calculation for the multicopter simulation
2012-02-18 19:27:15 +11:00
Jason Short 351be7c305 Made timer unsigned 2012-01-10 23:42:26 -08:00
Andrew Tridgell 2a3d4efb38 pysim: support octax 2012-01-04 22:15:17 +11:00
Andrew Tridgell 64b541037e autotest: change to an octa frame for autotest
this will be a useful experiment
2012-01-04 22:03:37 +11:00
Andrew Tridgell 9df96d0e07 pysim: added more frame types 2012-01-04 21:45:58 +11:00
Andrew Tridgell 45b4e07776 pysim: show frame type at startup 2012-01-04 19:34:11 +11:00
Andrew Tridgell ed5c9d4c47 rename sim_quad.py to sim_multicopter.py 2012-01-04 19:14:42 +11:00
Andrew Tridgell ba9423f7de pysim: added --frame option 2012-01-04 19:13:47 +11:00
Andrew Tridgell 1670f1f65b pysim: generalise the quadcopter code for multicopters
this allows for arbitrary multicopter motor arrangements
2012-01-04 19:13:15 +11:00
Jason Short a29aa020ff Made wind not reverse itself to be more natural 2011-12-29 23:02:02 -08:00
Andrew Tridgell d626fcb52f added a copy of fdpexpect 2011-12-23 12:20:58 +11:00
Andrew Tridgell 30425063d8 more errno fixes for MacOS 2011-12-23 12:07:32 +11:00
Andrew Tridgell eac97725f5 autotest: fgrate option has been removed from mavproxy 2011-12-13 21:34:53 +11:00
Andrew Tridgell ad6c90c3b9 autotest: added wind support to ArduPlane simulation 2011-12-13 15:28:03 +11:00
Andrew Tridgell 6520c7be1b autotest: changed default sim_quad rate to 400Hz (matches autotest
script)
2011-12-13 13:44:53 +11:00
Andrew Tridgell 2c0e4c1c02 autotest: use 'enter 3 times' method to get into CLI
this doesn't depend on build options
2011-12-13 10:36:52 +11:00
Andrew Tridgell da43b85422 autotest: added a test script for wind generation
this makes it easier to experiment
2011-12-13 10:36:52 +11:00
Andrew Tridgell 228d1620d2 autotest: added --wind option to sim_quad
this is in the form of speed,direction,turbulance
2011-12-13 10:36:52 +11:00
Andrew Tridgell a58e81469f autotest: added a wind generation class 2011-12-13 10:36:52 +11:00
Andrew Tridgell 7301a8bddd pysim: added rotational resistance 2011-12-12 22:08:10 +11:00
Andrew Tridgell 420bb9cc75 pysim: fixed the accelerometer calculation in the quad simulator
this was causing severe drift in the attitude calculation
2011-12-12 21:57:09 +11:00
Andrew Tridgell 39d0d7ed49 autotest: fixed body/earth frames in sim_quad physics model
Jason, can you have a look at this?
2011-12-05 17:45:23 +11:00
Andrew Tridgell dedbfc8cca autotest: estimate the cost of sleeping for more accurate frame rate
this gets us quite close to 1kHz simulation
2011-12-03 07:38:51 +11:00
Andrew Tridgell 5be56a824d autotest: run the quad simulation at a much higher rate
it now defaults to 1kHz
2011-12-03 07:24:58 +11:00
Andrew Tridgell f96a48e42b autotest: support all 11 PWM output channels
this will allow for more complex aircraft
2011-12-02 22:45:48 +11:00
Andrew Tridgell 66d65121cc autotest: switch to big-endian metric packets internally
now that all the sim code is internal to the APM git repo, we can
choose saner packet formats
2011-12-02 22:12:58 +11:00
Andrew Tridgell 1878db2013 autotest: don't die if FG isn't running 2011-12-02 17:37:55 +11:00
Andrew Tridgell cf7073128d autotest: adapt test suite to new simulation framework 2011-12-02 17:37:55 +11:00
Andrew Tridgell 65699a2f2f autotest: combined python utility code 2011-12-02 17:37:54 +11:00
Andrew Tridgell 0887804096 autotest: imported python quadcopter model as sim_quad.py
this allows us to keep it in sync with the main SITL code
2011-12-02 17:37:54 +11:00