From 041d6e704d8a0ee815590ffd532aefa4c544b8cf Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 12:30:21 +0100 Subject: [PATCH 1/8] support for simplistic tailsitter --- Tools/sitl_gazebo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tools/sitl_gazebo b/Tools/sitl_gazebo index d362e661b4..d704f43029 160000 --- a/Tools/sitl_gazebo +++ b/Tools/sitl_gazebo @@ -1 +1 @@ -Subproject commit d362e661b46474153f43f51a6eb947d4fda1bebe +Subproject commit d704f430297fffea766a42bda16436e3bd00d6ea From d86ca63c78c6b7fb0aa9b85ba33dbae83e38b907 Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 13:27:23 +0100 Subject: [PATCH 2/8] added gazebo startup script for tailsitter --- posix-configs/SITL/init/rcS_gazebo_tailsitter | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 posix-configs/SITL/init/rcS_gazebo_tailsitter diff --git a/posix-configs/SITL/init/rcS_gazebo_tailsitter b/posix-configs/SITL/init/rcS_gazebo_tailsitter new file mode 100644 index 0000000000..2bf7a78368 --- /dev/null +++ b/posix-configs/SITL/init/rcS_gazebo_tailsitter @@ -0,0 +1,64 @@ +uorb start +simulator start -s +param load +param set MAV_TYPE 20 +param set MC_PITCHRATE_P 0.3 +param set MC_ROLLRATE_P 0.3 +param set MC_YAW_P 2.0 +param set MC_YAWRATE_P 0.35 +param set VT_TYPE 0 +param set SYS_AUTOSTART 4010 +param set SYS_RESTART_TYPE 2 +dataman start +param set CAL_GYRO0_ID 2293760 +param set CAL_ACC0_ID 1376256 +param set CAL_ACC1_ID 1310720 +param set CAL_MAG0_ID 196608 +param set CAL_GYRO0_XOFF 0.01 +param set CAL_ACC0_XOFF 0.01 +param set CAL_ACC0_YOFF -0.01 +param set CAL_ACC0_ZOFF 0.01 +param set CAL_ACC0_XSCALE 1.01 +param set CAL_ACC0_YSCALE 1.01 +param set CAL_ACC0_ZSCALE 1.01 +param set CAL_ACC1_XOFF 0.01 +param set CAL_MAG0_XOFF 0.01 +param set MPC_XY_P 0.15 +param set MPC_XY_VEL_P 0.05 +param set MPC_XY_VEL_D 0.005 +param set MPC_XY_FF 0.1 +param set SENS_BOARD_ROT 8 +param set COM_RC_IN_MODE 2 +rgbled start +tone_alarm start +gyrosim start +accelsim start +barosim start +adcsim start +gpssim start +measairspeedsim start +pwm_out_sim mode_pwm +sleep 1 +sensors start +commander start +land_detector start multicopter +navigator start +attitude_estimator_q start +position_estimator_inav start +vtol_att_control start +mc_pos_control start +mc_att_control start +fw_pos_control_l1 start +fw_att_control start +mixer load /dev/pwm_output0 ../../../../ROMFS/px4fmu_common/mixers/quad_x_vtol.main.mix +mavlink start -u 14556 -r 2000000 +mavlink stream -r 80 -s POSITION_TARGET_LOCAL_NED -u 14556 +mavlink stream -r 80 -s LOCAL_POSITION_NED -u 14556 +mavlink stream -r 80 -s GLOBAL_POSITION_INT -u 14556 +mavlink stream -r 80 -s ATTITUDE -u 14556 +mavlink stream -r 80 -s ATTITUDE_TARGET -u 14556 +mavlink stream -r 20 -s RC_CHANNELS -u 14556 +mavlink stream -r 250 -s HIGHRES_IMU -u 14556 +mavlink stream -r 10 -s OPTICAL_FLOW_RAD -u 14556 +mavlink boot_complete +sdlog2 start -r 100 -e -t -a From 6200cf6d869d1eb452519834f24557cfa346f4b3 Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 13:27:44 +0100 Subject: [PATCH 3/8] reduce gyro update rate to 400 Hz --- src/platforms/posix/drivers/gyrosim/gyrosim.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/platforms/posix/drivers/gyrosim/gyrosim.cpp b/src/platforms/posix/drivers/gyrosim/gyrosim.cpp index 0ac023285c..c7f78dbca6 100644 --- a/src/platforms/posix/drivers/gyrosim/gyrosim.cpp +++ b/src/platforms/posix/drivers/gyrosim/gyrosim.cpp @@ -95,9 +95,9 @@ // Product Name Product Revision #define GYROSIMES_REV_C4 0x14 -#define GYROSIM_ACCEL_DEFAULT_RATE 1000 +#define GYROSIM_ACCEL_DEFAULT_RATE 400 -#define GYROSIM_GYRO_DEFAULT_RATE 1000 +#define GYROSIM_GYRO_DEFAULT_RATE 400 #define GYROSIM_ONE_G 9.80665f From 2f0b24feab7cac9c98ff80ff673868608c536cfd Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 13:28:47 +0100 Subject: [PATCH 4/8] cmake: replace vtol model with tailsitter model --- Makefile | 2 +- Tools/sitl_run.sh | 4 ++-- src/firmware/posix/CMakeLists.txt | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 096a058653..b0f49eda3e 100644 --- a/Makefile +++ b/Makefile @@ -184,7 +184,7 @@ clean: # targets handled by cmake cmake_targets = test upload package package_source debug debug_tui debug_ddd debug_io debug_io_tui debug_io_ddd check_weak \ run_cmake_config config gazebo gazebo_gdb gazebo_lldb jmavsim \ - jmavsim_gdb jmavsim_lldb gazebo_gdb_iris gazebo_lldb_vtol gazebo_iris gazebo_vtol + jmavsim_gdb jmavsim_lldb gazebo_gdb_iris gazebo_lldb_tailsitter gazebo_iris gazebo_tailsitter $(foreach targ,$(cmake_targets),$(eval $(call cmake-targ,$(targ)))) .PHONY: clean diff --git a/Tools/sitl_run.sh b/Tools/sitl_run.sh index 8767f9f841..7dee02868a 100755 --- a/Tools/sitl_run.sh +++ b/Tools/sitl_run.sh @@ -88,9 +88,9 @@ then ddd --debugger gdb --args mainapp ../../../../${rc_script}_${program} elif [ "$debugger" == "valgrind" ] then - valgrind ./mainapp ../../../../${rc_script}_${program} + valgrind ./mainapp ../../../../${rc_script}_${program}_${model} else - ./mainapp ../../../../${rc_script}_${program} + ./mainapp ../../../../${rc_script}_${program}_${model} fi if [ "$program" == "jmavsim" ] diff --git a/src/firmware/posix/CMakeLists.txt b/src/firmware/posix/CMakeLists.txt index fb7490ffe2..efc81d6335 100644 --- a/src/firmware/posix/CMakeLists.txt +++ b/src/firmware/posix/CMakeLists.txt @@ -34,7 +34,7 @@ add_dependencies(run_config mainapp) foreach(viewer none jmavsim gazebo) foreach(debugger none gdb lldb ddd valgrind) - foreach(model none iris vtol) + foreach(model none iris tailsitter) if (debugger STREQUAL "none") if (model STREQUAL "none") set(_targ_name "${viewer}") From 354e623318a0826398849eb7217b98c863bac6d9 Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 13:29:23 +0100 Subject: [PATCH 5/8] support for vtol simulation --- Tools/sitl_gazebo | 2 +- src/modules/simulator/simulator_mavlink.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Tools/sitl_gazebo b/Tools/sitl_gazebo index d704f43029..d7b4fcfabd 160000 --- a/Tools/sitl_gazebo +++ b/Tools/sitl_gazebo @@ -1 +1 @@ -Subproject commit d704f430297fffea766a42bda16436e3bd00d6ea +Subproject commit d7b4fcfabde7d770cf0bf50287836d943eaf6714 diff --git a/src/modules/simulator/simulator_mavlink.cpp b/src/modules/simulator/simulator_mavlink.cpp index ca45cdf2b8..2a6efc7fa7 100644 --- a/src/modules/simulator/simulator_mavlink.cpp +++ b/src/modules/simulator/simulator_mavlink.cpp @@ -80,7 +80,7 @@ void Simulator::pack_actuator_message(mavlink_hil_controls_t &actuator_msg) // for now we only support quadrotors unsigned n = 4; - if (_vehicle_status.is_rotary_wing) { + if (_vehicle_status.is_rotary_wing || _vehicle_status.is_vtol) { for (unsigned i = 0; i < 8; i++) { if (_actuators.output[i] > PWM_LOWEST_MIN / 2) { if (i < n) { @@ -113,7 +113,7 @@ void Simulator::pack_actuator_message(mavlink_hil_controls_t &actuator_msg) actuator_msg.time_usec = hrt_absolute_time(); actuator_msg.roll_ailerons = out[0]; - actuator_msg.pitch_elevator = _vehicle_status.is_rotary_wing ? out[1] : -out[1]; + actuator_msg.pitch_elevator = (_vehicle_status.is_rotary_wing || _vehicle_status.is_vtol) ? out[1] : -out[1]; actuator_msg.yaw_rudder = out[2]; actuator_msg.throttle = out[3]; actuator_msg.aux1 = out[4]; From cf338246fc971b78390cd659475432973cb857cd Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 13:56:46 +0100 Subject: [PATCH 6/8] renamed SITL startup script for iris --- posix-configs/SITL/init/{rcS_gazebo => rcS_gazebo_iris} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename posix-configs/SITL/init/{rcS_gazebo => rcS_gazebo_iris} (100%) diff --git a/posix-configs/SITL/init/rcS_gazebo b/posix-configs/SITL/init/rcS_gazebo_iris similarity index 100% rename from posix-configs/SITL/init/rcS_gazebo rename to posix-configs/SITL/init/rcS_gazebo_iris From 16aa852c53f8ba5f5e4d0a67377adee4d362230f Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 16:01:53 +0100 Subject: [PATCH 7/8] merged master into sitl_gazebo --- Tools/sitl_gazebo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tools/sitl_gazebo b/Tools/sitl_gazebo index d7b4fcfabd..7a2e18e786 160000 --- a/Tools/sitl_gazebo +++ b/Tools/sitl_gazebo @@ -1 +1 @@ -Subproject commit d7b4fcfabde7d770cf0bf50287836d943eaf6714 +Subproject commit 7a2e18e7869e7d7c47ac7a97d956a64751429140 From 0fa0654f5a5cab33b1bb6788d9b57827a66f9bc5 Mon Sep 17 00:00:00 2001 From: tumbili Date: Wed, 18 Nov 2015 16:08:53 +0100 Subject: [PATCH 8/8] sitl_gazebo cleanup --- Tools/sitl_gazebo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tools/sitl_gazebo b/Tools/sitl_gazebo index 7a2e18e786..6072426bbc 160000 --- a/Tools/sitl_gazebo +++ b/Tools/sitl_gazebo @@ -1 +1 @@ -Subproject commit 7a2e18e7869e7d7c47ac7a97d956a64751429140 +Subproject commit 6072426bbca9407f2f26698d3e20870c1744b4fb