Commit Graph

1734 Commits

Author SHA1 Message Date
bresch 246b3ebc23 FailureDetector - Update failure detector logic in commander. 2018-08-28 11:23:25 -04:00
bresch 7908f75b8b FailureDetector - New class, first working simple implementation. Outputs PX4_ERR messages if roll or pitch is exceeded. 2018-08-28 11:23:25 -04:00
Sebastian Verling d3bb3631ec fixed sign error in mag calibration 2018-08-28 14:28:35 +02:00
Daniel Agar 29082d0118 commander battery_failsafe state machine share strings 2018-08-21 02:38:51 -04:00
Daniel Agar 6396e486bd commander cleanup battery failsafe handling 2018-08-21 02:38:51 -04:00
mcsauder 3a22ee48db Correct trailing whitespaces. 2018-08-18 15:15:41 -04:00
acfloria 1daaa6f5dc Shorten notification on the link switch to fit in 50 characters 2018-08-08 21:13:56 +02:00
Beat Küng 26f11cb9d7 commander: use PX4_INFO for status output 2018-08-08 21:09:39 +02:00
Bob-F 2ece14bad1 Port PX4 to BeagleBone Blue Board using library librobotcontrol instead of a submodule 2018-08-06 13:32:36 +02:00
mcsauder 21aea5bf6c Rename commander.cpp to Commander.cpp and update CMakeLists.txt. 2018-08-03 22:06:05 -04:00
Daniel Agar 92bfdea1e3 commander delete non-existant methods and cleanup 2018-08-03 17:38:16 -04:00
Daniel Agar 05ca1defee commander consolidate estimator checks in new method 2018-08-03 17:38:16 -04:00
Daniel Agar daee7a4e4e commander preflight delete individual sensor selftest 2018-08-02 08:05:52 +02:00
TSC21 ca42483794 update msgs fields from camelCase to snake_case so rosidl_generate_interfaces() is able to generate code for ROS IDL files 2018-07-30 21:40:28 +02:00
Daniel Agar 921e9f6e09 commander params fix COM_VEL_FS_EVH unit
- fixes #10028
2018-07-28 10:03:19 -04:00
Daniel Agar 5e6b35758a commander params fix COM_OF_LOSS_T unit 2018-07-28 10:03:19 -04:00
MaEtUgR 5dae404fb2 vehicle_commands: add VEHICLE_CMD_DO_ORBIT 2018-07-24 15:03:53 +02:00
Daniel Agar b1d3bb0403 stop ignoring Wmissing-field-initializers and fix (#9912) 2018-07-22 12:45:52 -04:00
Roman 9d1fa8cee2 esc_calibration: adjust timeout when waiting for user to connect battery
to 20 seconds

Signed-off-by: Roman <bapstroman@gmail.com>
2018-07-03 07:05:38 +00:00
Roman 5d87eed41c esc_calibration: use hrt_elapsed_time instead of manually calculating the diff
Signed-off-by: Roman <bapstroman@gmail.com>
2018-07-03 07:05:38 +00:00
Roman 73577df994 esc_calibration: use batter status connected flag instead of checking voltage
Signed-off-by: Roman <bapstroman@gmail.com>
2018-07-03 07:05:38 +00:00
Roman beb8c3e152 esc_calibration: use predefined literals
Signed-off-by: Roman <bapstroman@gmail.com>
2018-07-03 07:05:38 +00:00
Roman 8b629454de esc_calibration: increase safety and initialise all data
- do not do calibration if not very sure that battery is not connected
- initialise all structs and variables

Signed-off-by: Roman <bapstroman@gmail.com>
2018-07-03 07:05:38 +00:00
Daniel Agar 9ce83f2208 fix all sign-compare warnings 2018-07-01 09:36:55 +00:00
Daniel Agar cf74166801 double promotion warning fix or ignore per module 2018-07-01 09:36:55 +00:00
Julian Oes 6ff9fd2209 calibration: remove warning message
The calibration warning was only used in the ESC calibration and in all
cases it actually meant that the calibration failed. In order to keep
the API as small as possible, I've deprecated the warning string and
converted the warning messages to failed messages.
2018-06-29 16:07:32 +00:00
Mark Sauder d3c169b1e0 Fix whitespaces in PreflightCheck.cpp, tilt_quad.aux.mix, and tilt_quad.main.mix 2018-06-28 20:20:32 -04:00
Beat Küng bf1c11a33c commander: move comment to the right place
It's now the same way as in the ARM logic further down.
2018-06-27 10:41:21 +02:00
Beat Küng 02fc68a53e commander arming: disable stick (dis-)arming when arming switch/button is used
A reason for using switch arming in the first place is that you cannot
accidentally disarm in-air with the sticks during acrobatic flights.

It also adds a low-throttle arming requirement for switch arming.
2018-06-27 10:41:21 +02:00
Beat Küng db2b010630 commander arming: add a grace period of 5 seconds to allow re-arming w/o preflight checks
This changes the arming logic such that the preflight checks don't need
to be satisfied if arming happens < 5 seconds after the last disarming.
This allows to recover from accidental in-air disarming.
2018-06-27 10:41:21 +02:00
Beat Küng 8c3cf0167c commander arming_state_transition: respect fRunPreArmChecks properly
if fRunPreArmChecks was set to false, there were still cases where the
preflight checks could be called. This fixes that.

arming_state_transition() with fRunPreArmChecks=false is only called
when entering & leaving preflight calibration mode.
All other places use fRunPreArmChecks=true, which means there is no change
for these.
2018-06-27 10:41:21 +02:00
Beat Küng 469b5f98e2 commander Preflight::preflightCheck: transition condition_system_sensors_initialized only to true
- this matches the logic in arming_state_transition()
- if Commander::preflight_check was run in armed state and the checks
  failed, disarming was not possible anymore
  (because disarming checks for condition_system_sensors_initialized).
  That is currently not the case, but the existing logic is way too fragile.

Alternative solution: check if armed in Preflight::preflightCheck, and
only transition to false if disarmed (but also respect the re-arming
grace period).
2018-06-27 10:41:21 +02:00
Beat Küng d1343b0ccb calibration_routines: fix 'Command denied during calibration' error message
The uorb subscribe logic got changed for queued topics with
https://github.com/PX4/Firmware/pull/9436, meaning an orb_subscribe will
return past messages as well now.

This lead to an error 'Command denied during calibration' for the previously
received calibration start command.
2018-06-18 15:06:58 +02:00
Daniel Agar daa6f29b58 commander ignore failsafe transitions when in mission and disarmed 2018-06-13 08:37:00 +02:00
Daniel Agar 20aabd3566 move systemlib/airspeed to standalone lib 2018-06-12 09:06:30 +02:00
Daniel Agar 387bc81f26 move systemlib/circuit_breaker.cpp to standalone lib 2018-06-12 09:06:30 +02:00
Daniel Agar 3399ec9e73 move systemlib/rc_check to commander (the only usage) and convert to c++ 2018-06-11 22:53:38 +02:00
Paul Riseborough 9fb674929c commander: do not check global position when using flow in POSCTL 2018-06-09 13:38:04 +02:00
Paul Riseborough 98597dcffc commander: allow position uncertainty to grow when operator can correct for drift 2018-06-09 13:38:04 +02:00
Lorenz Meier f87fa9131b FMUv5: Fix RGB led usage - these are individual status leds. 2018-06-06 23:03:28 +02:00
Philipp Oettershagen 9f414e82f6 Subsystem_info status flags & checks: Add comment to indicate that the IMU+MAG consistency checks need to be performed AFTER the individual checks are complete 2018-06-06 18:54:24 +02:00
Philipp Oettershagen e12b470cac Subsystem_info status flags & checks: Small fixes according to @bkueng's review 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 0b71c52225 Subsystem_info status flags & checks: Suppress sensor failover warnings in Hardware in the loop (HITL) 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 302cb0a285 Subsystem_info status flags & checks: Moved the set_health_flags helper functions out of the /lib/ folder and into the module/commander folder because they are actually only needed there 2018-06-06 18:54:24 +02:00
Philipp Oettershagen bd2af289f5 Subsystem_info status flags & checks: Code style fixes and cleanup to avoid strcmp() as suggested by @LorenzMeier 2018-06-06 18:54:24 +02:00
Philipp Oettershagen e4d863b95f Subsystem_info status flags & checks: Separate the functionality to a) set the health flags inside commander and b) to publish them from external modules 2018-06-06 18:54:24 +02:00
Philipp Oettershagen a807d34a7a Remove distance sensor checks again. These checks should be handled by EKF2 and should thus be added there later 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 075009be2f Subsystem_info status flags & checks: 1) Set health flags in commander directly instead of publishing via uORB 2) move publish_subsystem_info into lib/ folder" 2018-06-06 18:54:24 +02:00
Philipp Oettershagen f5847a4a7b Subsystem_info status flags & checks: Switch back to uORB for inter-process communication, handle GPS checks completely inside ekf2, add distance_sensor checks 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 6f1f414b49 Subsystem_info status flags & checks : Initial commit, updating the health flags in a centralized way mostly in commander and the votedSensorsUpdate function. 2018-06-06 18:54:24 +02:00