[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paparazzi-commits] [4965] nps: use buttons to switch mode
From: |
Felix Ruess |
Subject: |
[paparazzi-commits] [4965] nps: use buttons to switch mode |
Date: |
Tue, 15 Jun 2010 23:41:27 +0000 |
Revision: 4965
http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=4965
Author: flixr
Date: 2010-06-15 23:41:27 +0000 (Tue, 15 Jun 2010)
Log Message:
-----------
nps: use buttons to switch mode
Modified Paths:
--------------
paparazzi3/trunk/conf/autopilot/booz2_simulator_nps.makefile
paparazzi3/trunk/sw/simulator/nps/nps_radio_control.c
paparazzi3/trunk/sw/simulator/nps/nps_radio_control.h
paparazzi3/trunk/sw/simulator/nps/nps_radio_control_joystick.c
Modified: paparazzi3/trunk/conf/autopilot/booz2_simulator_nps.makefile
===================================================================
--- paparazzi3/trunk/conf/autopilot/booz2_simulator_nps.makefile
2010-06-15 17:59:15 UTC (rev 4964)
+++ paparazzi3/trunk/conf/autopilot/booz2_simulator_nps.makefile
2010-06-15 23:41:27 UTC (rev 4965)
@@ -131,6 +131,7 @@
endif
endif
+sim.CFLAGS += -DUSE_NAVIGATION
sim.srcs += $(SRC_BOOZ)/guidance/booz2_guidance_h.c
sim.srcs += $(SRC_BOOZ)/guidance/booz2_guidance_v.c
sim.srcs += math/pprz_geodetic_int.c
Modified: paparazzi3/trunk/sw/simulator/nps/nps_radio_control.c
===================================================================
--- paparazzi3/trunk/sw/simulator/nps/nps_radio_control.c 2010-06-15
17:59:15 UTC (rev 4964)
+++ paparazzi3/trunk/sw/simulator/nps/nps_radio_control.c 2010-06-15
23:41:27 UTC (rev 4965)
@@ -49,10 +49,6 @@
};
-#define MODE_SWITCH_MANUAL -1.0
-#define MODE_SWITCH_AUTO1 0.0
-#define MODE_SWITCH_AUTO2 1.0
-
#define RADIO_CONTROL_TAKEOFF_TIME 8
@@ -86,7 +82,6 @@
*/
void radio_control_script_takeoff(double time) {
-
nps_radio_control.roll = 0.;
nps_radio_control.pitch = 0.;
nps_radio_control.yaw = 0.;
@@ -111,7 +106,7 @@
void radio_control_script_step_roll(double time) {
nps_radio_control.throttle = 0.99;
nps_radio_control.mode = MODE_SWITCH_AUTO2;
-
+
if (((int32_t)rint((time*0.5)))%2) {
nps_radio_control.roll = 0.2;
nps_radio_control.yaw = 0.5;
@@ -140,7 +135,7 @@
nps_radio_control.pitch = 0.;
nps_radio_control.throttle = 0.99;
nps_radio_control.mode = MODE_SWITCH_AUTO2;
-
+
if (((int32_t)rint((time*0.5)))%2) {
nps_radio_control.yaw = 0.5;
}
@@ -163,5 +158,3 @@
nps_radio_control.roll = 0.;
}
}
-
-
Modified: paparazzi3/trunk/sw/simulator/nps/nps_radio_control.h
===================================================================
--- paparazzi3/trunk/sw/simulator/nps/nps_radio_control.h 2010-06-15
17:59:15 UTC (rev 4964)
+++ paparazzi3/trunk/sw/simulator/nps/nps_radio_control.h 2010-06-15
23:41:27 UTC (rev 4965)
@@ -3,6 +3,10 @@
#include "std.h"
+#define MODE_SWITCH_MANUAL -1.0
+#define MODE_SWITCH_AUTO1 0.0
+#define MODE_SWITCH_AUTO2 1.0
+
enum NpsRadioControlType {
SCRIPT,
JOYSTICK,
Modified: paparazzi3/trunk/sw/simulator/nps/nps_radio_control_joystick.c
===================================================================
--- paparazzi3/trunk/sw/simulator/nps/nps_radio_control_joystick.c
2010-06-15 17:59:15 UTC (rev 4964)
+++ paparazzi3/trunk/sw/simulator/nps/nps_radio_control_joystick.c
2010-06-15 23:41:27 UTC (rev 4965)
@@ -22,7 +22,7 @@
nps_joystick.roll = 0.;
nps_joystick.pitch = 0.;
nps_joystick.yaw = 0.;
- nps_joystick.mode = 1.0;
+ nps_joystick.mode = MODE_SWITCH_AUTO2;
int fd = open(device, O_RDONLY | O_NONBLOCK);
if (fd == -1) {
@@ -40,9 +40,12 @@
#define JS_PITCH 1
#define JS_YAW 2
#define JS_THROTTLE 3
-#define JS_MODE 5
#define JS_NB_AXIS 7
+// buttons to switch modes
+#define JS_MODE_MANUAL 4
+#define JS_MODE_AUTO1 5
+#define JS_MODE_AUTO2 6
static gboolean on_js_data_received(GIOChannel *source,
GIOCondition condition __attribute__
((unused)),
@@ -73,13 +76,22 @@
nps_joystick.yaw = (float)js.value/-32767.;
//printf("joystick yaw %d %f\n",js.value, nps_joystick.yaw);
break;
- case JS_MODE:
- nps_joystick.mode = 1.0;
- //nps_joystick.mode = (float)js.value/-32767.;
- //printf("joystick mode %d\n",js.value);
- break;
}
}
}
+ if (js.type == JS_EVENT_BUTTON) {
+ switch (js.number) {
+ case JS_MODE_MANUAL:
+ nps_joystick.mode = MODE_SWITCH_MANUAL;
+ break;
+ case JS_MODE_AUTO1:
+ nps_joystick.mode = MODE_SWITCH_AUTO1;
+ break;
+ case JS_MODE_AUTO2:
+ nps_joystick.mode = MODE_SWITCH_AUTO2;
+ break;
+ }
+ }
+
return TRUE;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paparazzi-commits] [4965] nps: use buttons to switch mode,
Felix Ruess <=