Commit Graph
100 Commits
Author SHA1 Message Date
Roman eb18622d85 added old ekf attitude estimator back to config and made changes so it compiles 2016-10-18 20:46:08 +02:00
Roman b8a219d351 removed comments and fixed some euler bugs 2016-10-18 20:46:08 +02:00
Roman e3f3233ee4 fw position controller: fixup attitude setpoint generation
- generate complete attitude setpoint for position and altitude
control mode
- fix generation of roll setpoint for position control which lead to
wing rock
- add roll and pitch setpoint offsets so that they are logged as well

Signed-off-by: Roman <bapstr@ethz.ch>
2016-07-25 08:56:18 +02:00
Roman 13905c2480 px4io driver: send roll, pitch and yaw scale parameter values to io
Signed-off-by: Roman <bapstr@ethz.ch>
2016-07-13 09:29:12 +02:00
Roman 08bbd6dbfa px4iofirmware: added scale parameters for roll, pitch and yaw
since pure manual control for fixed wings in handled on the io side
the scale parameters for roll, pitch and yaw had to be introduced there
as well.

Signed-off-by: Roman <bapstr@ethz.ch>
2016-07-13 09:29:12 +02:00
Roman Bapst ec35e77175 px4io driver: fix reporting of mixer limits (#4922)
mixer limit topic was not filled correctly

Signed-off-by: tumbili <roman@px4.io>
2016-06-27 17:31:43 +02:00
Roman eabc4647c2 mavlink receiver: fixed unit conversions for current
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-24 08:35:27 +02:00
Roman f754d23a0f mavlink receiver: fixed computation of cell count
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-24 08:10:35 +02:00
Roman Bapst 571798c318 Pr external battery monitoring (#4881)
* mavlink receiver: added handling of battery status

handle incoming battery status messages in order to support external
battery monitoring

Signed-off-by: Roman <bapstr@ethz.ch>

* sensor params: added parameter for battery monitoring source

Signed-off-by: Roman <bapstr@ethz.ch>

* sensors: only publish battery status if we don't have external battery
monitoring activated

Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 18:41:38 +02:00
Roman 27e61127a8 ekf2: fix if else logic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
Roman 6f6ae78cf2 ekf_att_pos_estimator: added logic for airspeed modes
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
Roman 7f8c183d99 added airspeed mode enum to control state topic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
Roman 22db94e352 removed debug printf
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
Roman Bapst 37108870e1 fw_pos_control_l1: added roll setpoint for logging (#4869)
in altitude control mode for fixed wings the roll setpoint was not
logged because the position controller publishes the attitude setpoint
but the desired roll setpoint is calculated in the attitude control
module. Now the position controller calculates the roll setpoint as well
for the sake of logging.

Signed-off-by: tumbili <roman@px4.io>
2016-06-22 15:19:11 +02:00
Roman 87dc996a41 added option to output sine wave 2016-06-20 20:24:46 +02:00
Roman ff58d31348 fixed code style 2016-06-07 20:00:41 +02:00
Roman ac9a81c0c7 standard vtol pusher fix:
- pusher code now works with the new manual setpoint generation
2016-06-07 14:05:19 +02:00
Roman Bapst 292b35d06d updated matrix lib: (#4631)
- better documentation in header files
2016-05-30 23:31:06 +02:00
Roman Bapst 02ba3317e9 WIP: Manual attitude setpoint for large heading errors (#4564)
* mc pos control: in manual mode calculate attitude setpoint
such that it reflects the users intuition of roll and pitch
for any given heading error

* added some comments on the new manual attitude setpoint generation

* make calculation shorter
2016-05-19 15:28:04 +02:00
Roman f4c8bd9be3 updated gains of QAV 250 racer:
- tested in acro mode with good orientation lock and good response
- tested in stabilize mode with good attitude tracking
- needs more testing and maybe small adjustments
2016-05-10 21:27:10 +02:00
Roman 29c5c25f47 fix bug in the logging app:
- either sensor combined or the replay topic where copied into
the union buffer but at times the memory was overwritten by other
topics which updated below
- this change makes sure that the two topics are copied into the union
buffer at the correct location in the code
2016-04-27 21:40:07 +02:00
Roman b1b8ab62a3 updated ecl ekf 2016-04-19 13:25:41 +02:00
Roman c6668cae6c provide ekf2 with eas2tas factor 2016-04-19 11:20:57 +02:00
Roman f5730dc7b5 updated ecl ekf 2016-04-19 11:19:36 +02:00
Roman cf7145c8d9 calculate large error rotation correclty in attitude controller 2016-04-18 18:44:14 +02:00
Roman f7c0518a61 log pitch setpoint after modifying it 2016-04-11 14:56:50 +02:00
tumbili db2a53d95d added parameter to allow scaling the forward thrust used to acclerate forward
in multirotor mode
2016-04-11 14:56:50 +02:00
tumbili 34fe340864 added parameter for maximum allowed standard vtol down pitch 2016-04-11 14:56:49 +02:00
Roman e11d4ae302 standard vtol:
implement moving forward using pusher
2016-04-11 14:56:49 +02:00
Roman 65d491cafc ekf2: update airspeed fusion (not yet active) 2016-04-05 21:37:36 +02:00
Roman 42a5be5afe replay cleanup 2016-04-05 21:24:11 +02:00
Roman f3e147f57b make replay faster 2016-04-05 21:24:11 +02:00
Roman 1ce99e3b96 ekf2 replay: some cosmetics 2016-04-05 21:24:11 +02:00
Roman bd4a0e30de ekf2 replay: allow user to change parameters 2016-04-05 21:24:11 +02:00
tumbili 2f48317a9e ekf2: publish indicated airspeed in control state topic 2016-03-31 14:03:42 +02:00
tumbili ff338d8920 set mavlink data rate for snapdragon 2016-03-30 18:05:48 +02:00
Roman 99723975a6 ekf2 replay: apply parameter values from log at the beginning 2016-03-30 07:45:54 +02:00
tumbili 07246efef9 added snapdragon rc pwm driver 2016-03-27 12:40:10 +02:00
Roman 77697c586f write flow innovations and flow innovation variances to replay log 2016-03-13 17:47:56 +01:00
Roman 7a6a09f1a1 ekf2_replay: support parsing a uint32_t 2016-03-13 17:47:56 +01:00
Roman 89ace03133 ekf2_replay: added support for flow and range data 2016-03-13 17:47:56 +01:00
Roman 8e1b824ecb ekf2 app: only copy flow and range into replay message if they updated 2016-03-13 17:47:56 +01:00
Roman 37079dc743 sdlog2:
added separate replay messages for flow and range
2016-03-13 17:47:56 +01:00
Roman 4965926392 make ekf2 replay app work with sparse gps data 2016-03-13 17:47:56 +01:00
Roman 06ffd59f17 sdlog2: only log gps replay data if updated
Conflicts:
	src/modules/sdlog2/sdlog2.c
2016-03-13 17:47:56 +01:00
Roman 181a5fd60d ekf2 app: only publish gps in replay if updated 2016-03-13 17:47:56 +01:00
Roman 5abd11c6b9 fixed rebasing issues 2016-03-13 17:47:56 +01:00
tumbili 030b544dd7 removed UART read experiment for now 2016-03-10 17:06:01 +01:00
tumbili e80fb86b42 uart_esc: made sending motor commands to pixhawk work
- experimented with reading rc data from uart but this fails
- mixer loading works
2016-03-10 16:41:48 +01:00
tumbili 3867e7709d added uart_esc app to dsp startup script, this will output
serial data on the snapdragon ESC connector (J13)
2016-03-10 16:31:51 +01:00
tumbili 8463dddb8c strip comments from quad x mixer file because else it fails to load on Snapdragon 2016-03-10 16:31:34 +01:00
Roman a62046625b mc_pos_control: only reset position setpoint if we are not in rotary wing mode 2016-03-07 21:14:41 +01:00
tumbili 2d2b0a2d43 mc pos: in auto mode reset the position to current position. Velocity controller ensures continuous attitude setpoint 2016-03-04 08:45:13 +01:00
tumbili 9297a02ac2 move code which clears the pos and alt hold flags to the correct place.
this should fix the problem of the jump in the altitude setpoint when
switching into altitude hold mode.
2016-03-04 08:45:13 +01:00
tumbili 989a4a0984 mc pos control:
-when switching into vel control mode (xy) choose vel sp such that attitude
setpoint is continuous
2016-03-04 08:45:13 +01:00
tumbili b1a890f0cd updated ecl 2016-03-03 10:56:23 +01:00
Roman 68e45057a0 sdlog: compute logging rate correctly 2016-03-01 21:35:36 +01:00
tumbili 7d893703d7 ensure suitable PWM min/max/disarmed param values for multirotor and vtol 2016-03-01 09:45:42 +01:00
tumbili 457dc6a0a4 vtol defaults: use parameters for pwm values 2016-03-01 09:36:23 +01:00
tumbili 413f63ab93 Caipiroshka: set correct MAV_TYPE, set correct pwm output channels 2016-03-01 09:21:59 +01:00
tumbili b88a8baa76 log replay topic correctly 2016-02-29 10:27:05 +01:00
tumbili f25702c29f increased default logging to 100Hz 2016-02-29 09:51:55 +01:00
tumbili aa130b1b03 added missing parenthesis to fix logging 2016-02-29 09:51:36 +01:00
Roman bdf373c897 final cleanup 2016-02-27 11:51:05 +01:00
tumbili 3ab6fe7edd do not allocate unnecessary memory in logging app 2016-02-27 11:51:05 +01:00
tumbili 36e3600809 take into account laneded and armed flag for ekf2 replay 2016-02-27 11:51:05 +01:00
tumbili 2e40d4d4fd sdlog2: log attitude in replay mode for consistency checks 2016-02-27 11:51:05 +01:00
tumbili b98602df8b sdlog2:
increase stack size and fix indentation
2016-02-27 11:51:05 +01:00
tumbili 527f9886f9 ekf2 app:
- support use of replay
2016-02-27 11:51:05 +01:00
tumbili d73e3a7318 start sdlog2 app with different arguments in replay mode 2016-02-27 11:51:05 +01:00
tumbili e0a489a749 added ekf2 replay message 2016-02-27 11:51:05 +01:00
tumbili ec803a650e sdlog2 replay:
- added PRIO_BOOST parameter to avoid log data loss
- added replay mode which disabled logging of uneeded topics
- run mainloop based on polling of either sensor_combined or replay topic
depending on mode
- log ekf2_replay topic
2016-02-27 11:51:05 +01:00
tumbili 7da3c6ceaa sdlog2 messages:
- added ekf2 replay message
2016-02-27 11:49:49 +01:00
tumbili 652fb5e99e ekf2 app:
- support use of replay
2016-02-27 11:48:31 +01:00
tumbili 35d573e12a added ekf2 replay module 2016-02-27 11:48:31 +01:00
tumbili 3e8b2c4ad1 better PWM_MIN defaults for 250 airframes 2016-02-25 17:04:51 +01:00
tumbili efe9344fc2 removed text from generic quav250 startup script because it was interpreted as a command 2016-02-19 14:37:26 +01:00
tumbili 228a54fd51 - fixed bad pitch setpoint in fw pos controller for tailsitter
- created enum for vtol types
- minor cleanup and fixes
2016-02-18 18:55:56 +01:00
tumbili 4c61b05ef3 tailsitter, tiltrotor:
- use the transition trust when waiting for TECS to kick in
after transition
2016-02-18 18:55:56 +01:00
Roman 59a571d22f TECS:
- do not run TECS for VTO which are in rotary wing mode
- reinitialise TECS the first time we start using it again
2016-02-18 18:55:56 +01:00
tumbili fa52aa322a VTOL: pull up generic setpoint publishing 2016-02-18 18:55:56 +01:00
Roman 1da686b125 TECS:
- do not run TECS for VTO which are in rotary wing mode
- reinitialise TECS the first time we start using it again
2016-02-18 18:55:56 +01:00
tumbili b7919e0039 initialise all tecs class members 2016-02-18 17:07:09 +01:00
tumbili c1e1d0b031 put TECS init bug to rest:
the uncostrained demanded pitch was never initialized which
could lead to large initial pitch integral values
2016-02-18 16:29:04 +01:00
Roman 2a556f91ed added autoconfig gains for caipiroshka 2016-02-16 22:57:09 +01:00
Roman f11a619bf8 multirotor landing:
prevent sudden thrust setpoints when vehicle has reached ground
after landing
2016-02-16 10:26:13 +01:00
Roman 15b0baf555 ekf2: fixed call to save parameter 2016-02-15 12:52:49 +01:00
Roman 1d5cf70e83 implemented vtol weathervane yaw control for landing and loiter mission item 2016-02-15 09:49:24 +01:00
Roman 8c2eec6161 use correct struct names for virtual topics 2016-02-15 09:48:37 +01:00
Roman 80f8fcbdf6 implemented vtol weathervane yaw control for landing and loiter mission item 2016-02-15 09:48:37 +01:00
Roman be0f680863 orb topic messages:
-added flag to enable weathervane yaw control for vtol
-added comment to keep virtual topics and original topic identical
2016-02-15 09:48:37 +01:00
Roman 11df8168ee provide ekf2 with landed flag from landing detector 2016-02-14 21:26:47 +01:00
Roman 2177c0e18a ekf2: remove unused print functions 2016-02-14 20:51:01 +01:00
Roman 38ecec86f7 mc pos control:
do not run takeoff code when disarmed
2016-02-11 16:53:35 +01:00
tumbili f8f208dbe6 vtol: reset multirotor positon and altitude
when not in rotary wing mode
2016-02-08 11:09:11 +01:00
Roman fcf642fe4e fixed bad formating of ekf2 CMakeFile 2016-02-05 18:28:32 +01:00
Roman fdc0ef00b3 fix TECS logging 2016-02-05 17:14:10 +01:00
Roman c75cc75d25 ekf2 module: be consistent in constructor 2016-01-31 22:28:19 +01:00
Roman f35e3335be - only use takeoff strategy when in auto mode
- after jumped takeoff set previous vel setpoint such
that thrust setpoint is continuous
2016-01-27 11:47:41 +01:00
Roman ba169ce0b5 do not do jumped takeoff if already in air 2016-01-27 09:55:47 +01:00