diff --git a/conf/airframes/tudelft/bebop_opticflow_indoor.xml b/conf/airframes/tudelft/bebop_opticflow_indoor.xml
new file mode 100644
index 0000000000..e94fe16313
--- /dev/null
+++ b/conf/airframes/tudelft/bebop_opticflow_indoor.xml
@@ -0,0 +1,199 @@
+
+
+
+
+ Airframe file to fly a Bebop1 drone, in stable smooth flight, through waypoints using opticflow. As this airframe does not use a magnetometer nor GPS for heading determination, all positions and angles are relative to its starting position. Therefore; the drone should be facing north when started. The values are tuned so that the flight speed is limited and the drone does not over-shoot the waypoints as it would in outdoor settings.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/flight_plans/tudelft/rotorcraft_cyberzoo_no_gps.xml b/conf/flight_plans/tudelft/rotorcraft_cyberzoo_no_gps.xml
new file mode 100644
index 0000000000..0981593c55
--- /dev/null
+++ b/conf/flight_plans/tudelft/rotorcraft_cyberzoo_no_gps.xml
@@ -0,0 +1,93 @@
+
+
+
+
+#include "autopilot.h"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/userconf/tudelft/conf.xml b/conf/userconf/tudelft/conf.xml
index e75628b2fc..8c23cc9bf6 100644
--- a/conf/userconf/tudelft/conf.xml
+++ b/conf/userconf/tudelft/conf.xml
@@ -486,6 +486,18 @@
settings_modules="modules/air_data.xml modules/geo_mag.xml modules/ins_extended.xml modules/ahrs_int_cmpl_quat.xml modules/ahrs_float_mlkf.xml modules/stabilization_indi_simple.xml modules/nav_basic_rotorcraft.xml modules/guidance_rotorcraft.xml modules/gps.xml modules/imu_common.xml"
gui_color="#7d7fd7e7ffff"
/>
+
0)
{
float dt = (float)(stamp - last_stamp_x) * 1e-6;
- ins_int.ltp_pos.x += POS_BFP_OF_REAL(dt * vel_ned.x);
+ ins_int.ltp_pos.x += lround(POS_BFP_OF_REAL(dt * vel_ned.x));
}
last_stamp_x = stamp;
}
@@ -615,7 +615,7 @@ static void vel_est_cb(uint8_t sender_id __attribute__((unused)),
if (last_stamp_y > 0)
{
float dt = (float)(stamp - last_stamp_y) * 1e-6;
- ins_int.ltp_pos.y += POS_BFP_OF_REAL(dt * vel_ned.y);
+ ins_int.ltp_pos.y += lround(POS_BFP_OF_REAL(dt * vel_ned.y));
}
last_stamp_y = stamp;
}