PX4 Autopilot Software
Go to file
Julian Oes 7229ec2a37 Move throttle check from land detector to posctrl
This commit is an attempt to fix a race condition happening on takeoff
between the land detector and the multicopter position controller.

Previously, an auto-takeoff leads to the following events:

1. A takeoff setpoint is given.
2. The thrust setpoint spikes because we don't enter smooth takeoff yet.
3. The land detector detects a takeoff because of the high thrust.
4. The position controller sees the landed state transition and
   initiates the smooth takeoff. Thrust goes back down.
5. Depending on control gains the takeoff is successful or fails
   if the smoothing takes too long which causes thrust to be too low, so
   the land detector detects land again.

The two obvious problems with this are:
- The intermittent spike.
- The failed takeoff because of the smoothing leads to a delay..

With this change, the logic for a takeoff detection is moved from the
land detector to the position controller.

The events are now:

1. A takeoff setpoint is given.
2. The position controller detects the takeoff setpoint and initiates
   the smooth takeoff.
3. As thrust ramps up, the land detector detects the take off.

In the same way, we now detect the intent to takeoff in manual,
altitude, control, position control in the position controller instead
of in the land detector.
2017-10-09 19:05:15 +02:00
.github WIP: github issue template (#7701) 2017-07-30 19:16:49 +02:00
Debug NuttX upgrade cmake wrapper (#7873) 2017-09-29 10:13:51 -04:00
Documentation Rename mainapp to px4. 2016-07-29 11:05:01 +02:00
Images Inital Commit of px4-same70xplained-v1 2017-09-29 10:13:51 -04:00
ROMFS Move throttle check from land detector to posctrl 2017-10-09 19:05:15 +02:00
Tools docker_run.sh: add ocpoc target 2017-10-05 09:34:14 -07:00
cmake fxos8700cq:Part number change fxos8701cq 2017-10-04 04:49:35 -10:00
integrationtests integrationtests: add wait time before arming to allow checks to pass 2017-05-03 08:37:14 +02:00
launch HippoCampus AUV: Enable start without ROS wrappers 2017-09-13 06:20:05 -07:00
mavlink/include/mavlink submodules: mavlink: Update to newest version 2017-08-19 09:04:52 +02:00
msg mc_pos_control: multiple small fixes in position controller we acumulated over time during our PX4 deployment and want to contribute back 2017-10-09 10:20:29 +02:00
nuttx-configs FMUv5: Increase USB buffer to increase transfer rates 2017-10-07 13:56:30 +02:00
platforms/nuttx/NuttX NuttX improve apps builtins dependencies 2017-10-05 11:28:10 -10:00
posix-configs add simple posix tests to SITL 2017-09-28 16:50:47 +01:00
src Move throttle check from land detector to posctrl 2017-10-09 19:05:15 +02:00
test_data Add additional DSM test data 2016-10-19 15:31:54 +02:00
.ackrc
.clang-tidy clang-tidy ignore clang-analyzer-cplusplus.NewDelete due to false positives 2017-08-24 19:03:58 +02:00
.gitignore travis-ci enable codecov (#8090) 2017-10-09 02:13:43 -04:00
.gitmodules uORB generation move to msg/ 2017-09-29 10:13:51 -04:00
.travis.yml travis-ci codecov add unittests flag (#8092) 2017-10-09 03:23:49 -04:00
.ycm_extra_conf.py Removed PX4FMUv1 auto completions 2017-09-10 13:37:23 -04:00
CMakeLists.txt improve nuttx verbose build 2017-09-29 10:13:51 -04:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2017-07-30 19:18:49 +02:00
CONTRIBUTING.md
CTestConfig.cmake
Firmware.sublime-project astyle scripting move to Tools/astyle 2017-08-23 08:07:36 +02:00
LICENSE.md
Makefile Makefile fix scan-build path (#8091) 2017-10-09 02:38:57 -04:00
README.md Using master README 2017-09-29 10:13:51 -04:00
Vagrantfile
circle.yml circleci force git to use git:// 2017-08-14 17:03:06 -04:00
eclipse.cproject uORB generation move to msg/ 2017-09-29 10:13:51 -04:00
eclipse.project uORB generation move to msg/ 2017-09-29 10:13:51 -04:00
package.xml

README.md

PX4 Pro Drone Autopilot

Releases DOI Build Status Coverity Scan

Slack Gitter

This repository holds the PX4 Pro flight control solution for drones, with the main applications located in the src/modules directory. It also contains the PX4 Drone Middleware Platform, which provides drivers and middleware to run drones.

Please refer to the user documentation and user forum for flying drones with the PX4 flight stack.

Weekly Dev Call

The PX4 Dev Team syncs up on a weekly dev call.

Developers

Maintenance Team

Supported Hardware

This repository contains code supporting these boards:

Project Milestones

The PX4 software and Pixhawk hardware (which has been designed for it) has been created in 2011 by Lorenz Meier.