Commit Graph

429 Commits

Author SHA1 Message Date
Lorenz Meier fd63ba7b89 FW pos control: Widen acceptance range for yaw rate to re-engage heading hold 2015-07-06 01:43:00 +02:00
Lorenz Meier d1f8edb346 Merged beta into master 2015-07-04 23:02:47 +02:00
Lorenz Meier 3671ce716a Set better defaults for fixed wing position controllers 2015-07-04 11:39:31 +02:00
Lorenz Meier 6cf47b59da FW controller: Update use to new uORB API 2015-06-30 15:46:14 +02:00
Lorenz Meier 50ba1f7365 merged release_v1.0.0 into master 2015-06-30 15:30:45 +02:00
tumbili dcb680f9d6 VTOL: only publish attitude setpoint if in correct mode 2015-06-25 22:08:52 +02:00
Lorenz Meier 454becdae5 Merged release_v1.0.0 branch into master 2015-06-25 21:45:17 +02:00
tumbili 5cf20c8dcf increase fw idle for ATTCTL and POSCTL to 0.2 2015-06-23 12:57:39 +02:00
Lorenz Meier f680bbed54 FW pos control: Rename _ground_alt to _takeoff_ground_alt to make it less ambigious with the actual terrain altitude 2015-06-23 12:57:39 +02:00
Lorenz Meier f4845b2b8f FW pos control: Guard against altitude estimate change 2015-06-23 12:57:39 +02:00
tumbili 5d92927991 make motors spin in POSCTRL and ATTCTRL when landed and throttle applied by user 2015-06-23 12:57:39 +02:00
Lorenz Meier 46428769a5 FW pos control: Fix mavlink output 2015-06-22 09:58:27 +02:00
Roman 0446efa9a4 limit roll angle in loiter and position control mode if we are in a takeoff situation 2015-06-17 17:46:37 +02:00
Roman 6ce106eea4 limit minimum pitch in altitude controller modes if in a takeoff situation 2015-06-17 17:36:26 +02:00
tumbili 5c59d7a434 do not run tecs if we are on ground to prevent integrator filling 2015-06-16 23:05:58 +02:00
tumbili c91bb76b42 ask for climbout mode when doin takeoff help 2015-06-16 23:05:58 +02:00
Lorenz Meier 44441ab501 FW pos control: Perform climbout if user requests more than 85% pitch up 2015-06-14 14:05:17 +02:00
Lorenz Meier c9fefe236b Merged release into master 2015-06-13 11:06:01 +02:00
Lorenz Meier 6c0539c243 FW position controller: Do handle idle mission items correctly 2015-06-12 15:55:55 +02:00
Lorenz Meier 696e1fc9e2 Merge pull request #2300 from tumbili/heading_hold
fixed wing posctrl
2015-06-08 17:21:31 +02:00
Lorenz Meier 1fb7434128 Navigation capabilites: Ensure regular publication of updated topic 2015-06-08 16:48:50 +02:00
Lorenz Meier c7be59038c L1 pos control: Publish timestamp when setting nav capabilities 2015-06-08 16:48:49 +02:00
tumbili d40f94bf26 fixed wing posctrl:
- lock desired yaw once yaw speed is small
2015-06-08 09:38:49 +02:00
Roman ef6e07fc9b fixed wing position control:
- only lock on yaw if yawrate is below threshold
- remove more magic numbers
2015-06-05 22:45:07 +02:00
Mark Whitehorn 1f3c5d00e4 fix posctl heading hold 2015-06-05 22:45:07 +02:00
tumbili e5e4db1923 POSCTRL:
- make sure we always intialize the waypoints
  on the desired path and that the previous waypoint is
  behind the plane
- replace magic numbers with defines
2015-06-05 22:45:07 +02:00
Lorenz Meier 46d969772c Fixed wing heading hold: Engage only after wings got close to level already 2015-06-05 22:45:07 +02:00
Lorenz Meier c99489ee9d FW pos control: Implement hardcore throttle limiting in manual interaction mode 2015-06-05 22:45:06 +02:00
Lorenz Meier ad9b875aea Pos control: Update symbol name 2015-06-05 22:45:06 +02:00
Roman 032484bd31 added takeoff protection in altitude controlled modes, code duplication cleanup 2015-06-05 22:45:06 +02:00
Roman 629002738b define new mode for altitude 2015-06-05 22:45:06 +02:00
tumbili 8b6593495c reset waypoints when switching to fw pos_ctrl mode 2015-06-05 22:45:05 +02:00
Lorenz Meier 5197be67a7 FW control: Add skeleton for distinct altitude control and position control flight modes
Conflicts:
	src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
2015-06-05 22:45:05 +02:00
Lorenz Meier 17adf552ef TECS: Update logging struct 2015-05-27 15:21:34 -07:00
Lorenz Meier 4565f57468 Merged release_v1.0.0 into master 2015-05-27 15:28:41 -07:00
Mark Charlebois 1ca05aaa64 orb_advert_t changed to void * and checks changed to nullptr
The existing orb_advert_t use thoughout the code sometimes tries
to treat it as a file descriptor and there are checks for < 0
and ::close calls on orb_advert_t types which is an invalid use
of an object pointer, which is what orb_advert_t really is.

Initially I had changed the -1 initializations to 0 but it was
suggested that this should be nullptr. That was a good recommendation
but the definition of orb_advert_t had to change to void * because
you cannot initialize a uintptr_t as nullptr.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-27 14:42:49 -07:00
Mark Charlebois a734fc96d1 extensive orb_advert_t fixes
The calls to orb_advertise were being mishandled throughout the code.
There were ::close() calls on memory pointers, there were checks
against < 0 when it is a pointer to a object and values larger than
0x7ffffffff are valid. Some places orb_advert_t variables were
being initialized as 0 other places as -1.

The orb_advert_t type was changed to uintptr_t so the pointer value
would not be wrapped as a negative number. This was causing a failure
on ARM.

Tests for < 0 were changed to == 0 since a null pointer is the valid
representation for error, or uninitialized.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-27 14:41:33 -07:00
Mark Charlebois c5237f7f6f Removed extra abstracton layer in systemlib
The calls to task_spawn_cmd, kill_all, and systemreset  were wrappers
around the px4_{task_spawn_cmd|kill_all|systemreset} implementations.

Removed the wrappers and changed all calls to the px4_ equivalents.

NuttX specific code was moved into px4_tasks.h

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 14:43:11 -07:00
Mark Charlebois 9758112e31 Use px4_config.h instead of nuttx/config.h
Modified code to use OS independent header file for config settings.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:55:41 -07:00
Mark Charlebois bf429188b4 Reverted: Use OS independent API for task creation/deletion
Keep existing API use in code. Bind the use of the OS independent
implementation in the systemlib layer.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:49:44 -07:00
Mark Charlebois ddb32742eb Use OS independent API for task creation/deletion
Calls to task_delete and task_spawn_cmd are now
px4_task_delete and px4_task_spawn_cmd respectively.

The px4_tasks.h header was added to the affected files
and incusions of nuttx/config.h were removed.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:49:44 -07:00
Daniel Agar 2e824bbeea fix incorrect argc < 1 check for no arguments
-requiring arguments should be argc < 2
2015-04-18 12:02:58 +02:00
Don Gagne 3dc8cf8769 Clean up parameter meta data as needed by QGC 2015-04-14 23:26:14 -07:00
Daniel Agar 8aae66b893 trivial code style cleanup round 2 2015-03-27 23:38:58 -04:00
Lorenz Meier 110930dc0e FW pos control: Adjust stack size to real use 2015-03-08 08:14:15 +01:00
Thomas Gubler 2d124852c1 propagate uorb contants change through all modules/drivers 2015-01-28 16:31:41 +01:00
Thomas Gubler f4e0dc2857 Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	.gitmodules
2014-12-29 08:00:12 +01:00
Thomas Gubler 25af4b266c Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	.gitignore
	src/lib/uavcan
2014-12-25 09:48:15 +01:00
Daniel Agar d511e39ea7 turn on -Werror and fix resulting errors 2014-12-22 17:56:59 -05:00
Thomas Gubler 19d5383c56 Merge pull request #1493 from PX4/fwposcontrolmode
Fw pos control: small mode cleanup
2014-12-19 11:04:56 +01:00