mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-06-06 07:53:43 +08:00
rotorcraft sim is building again - not tested runtime
This commit is contained in:
@@ -209,8 +209,8 @@
|
|||||||
<target name="ap" board="booz_1.0">
|
<target name="ap" board="booz_1.0">
|
||||||
<param name="FLASH_MODE" value="IAP"/> <!-- default for the board but putting it here as example-->
|
<param name="FLASH_MODE" value="IAP"/> <!-- default for the board but putting it here as example-->
|
||||||
</target>
|
</target>
|
||||||
<target name="sim" board="pc">
|
<target name="sim" board="pc"/>
|
||||||
</target>
|
<subsystem name="simulator" type="nps"/>
|
||||||
<subsystem name="radio_control" type="ppm"/>
|
<subsystem name="radio_control" type="ppm"/>
|
||||||
<subsystem name="actuators" type="mkk"/>
|
<subsystem name="actuators" type="mkk"/>
|
||||||
<subsystem name="imu" type="b2_v1.0"/>
|
<subsystem name="imu" type="b2_v1.0"/>
|
||||||
@@ -231,7 +231,7 @@
|
|||||||
# FIXME: make fms a module
|
# FIXME: make fms a module
|
||||||
#include $(CFG_BOOZ)/subsystems/booz2_fms_test_signal.makefile
|
#include $(CFG_BOOZ)/subsystems/booz2_fms_test_signal.makefile
|
||||||
#include $(CFG_BOOZ)/booz2_test_progs.makefile
|
#include $(CFG_BOOZ)/booz2_test_progs.makefile
|
||||||
#include $(CFG_BOOZ)/booz2_simulator_nps.makefile
|
#include $(PAPARAZZI_SRC)/conf/autopilot/booz2_simulator_nps.makefile
|
||||||
</makefile>
|
</makefile>
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|||||||
+8
-6
@@ -11,6 +11,8 @@ JSBSIM_LIB = $(JSBSIM_ROOT)/lib
|
|||||||
SRC_BOOZ=booz
|
SRC_BOOZ=booz
|
||||||
SRC_BOOZ_SIM = $(SRC_BOOZ)/arch/sim
|
SRC_BOOZ_SIM = $(SRC_BOOZ)/arch/sim
|
||||||
|
|
||||||
|
SRC_BOARD=boards/$(BOARD)
|
||||||
|
|
||||||
NPSDIR = $(SIMDIR)/nps
|
NPSDIR = $(SIMDIR)/nps
|
||||||
|
|
||||||
|
|
||||||
@@ -25,7 +27,7 @@ sim.LDFLAGS += `pkg-config glib-2.0 --libs` -lm -lmeschach -lpcre -lglibivy
|
|||||||
sim.CFLAGS += -I$(NPSDIR) -I/usr/local/include -I$(JSBSIM_INC)
|
sim.CFLAGS += -I$(NPSDIR) -I/usr/local/include -I$(JSBSIM_INC)
|
||||||
sim.LDFLAGS += -L$(JSBSIM_LIB) -lJSBSim
|
sim.LDFLAGS += -L$(JSBSIM_LIB) -lJSBSim
|
||||||
|
|
||||||
sim.CFLAGS += -I$(SRC_BOOZ) -I$(SRC_BOOZ_SIM) -I../simulator -I$(PAPARAZZI_HOME)/conf/simulator/nps
|
sim.CFLAGS += -I$(SRC_BOOZ) -I$(SRC_BOOZ_SIM) -I$(SRC_BOARD) -I../simulator -I$(PAPARAZZI_HOME)/conf/simulator/nps
|
||||||
|
|
||||||
sim.srcs = $(NPSDIR)/nps_main.c \
|
sim.srcs = $(NPSDIR)/nps_main.c \
|
||||||
$(NPSDIR)/nps_fdm_jsbsim.c \
|
$(NPSDIR)/nps_fdm_jsbsim.c \
|
||||||
@@ -51,10 +53,10 @@ sim.srcs += math/pprz_trig_int.c \
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
sim.CFLAGS += -DBOARD_CONFIG=\"boards/booz2_v1_0.h\"
|
sim.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
|
||||||
|
|
||||||
sim.srcs += $(SRC_BOOZ_SIM)/booz2_unsimulated_peripherals.c
|
sim.srcs += $(SRC_BOOZ_SIM)/booz2_unsimulated_peripherals.c
|
||||||
sim.srcs += $(SRC_BOOZ)/booz2_main.c
|
sim.srcs += firmwares/rotorcraft/main.c
|
||||||
|
|
||||||
sim.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
|
sim.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
|
||||||
# -DTIME_LED=1
|
# -DTIME_LED=1
|
||||||
@@ -77,15 +79,15 @@ sim.srcs += $(SRC_BOOZ)/booz2_datalink.c
|
|||||||
|
|
||||||
|
|
||||||
sim.CFLAGS += -DBOOZ2_ANALOG_BARO_LED=2 -DBOOZ2_ANALOG_BARO_PERIOD='SYS_TICS_OF_SEC((1./100.))'
|
sim.CFLAGS += -DBOOZ2_ANALOG_BARO_LED=2 -DBOOZ2_ANALOG_BARO_PERIOD='SYS_TICS_OF_SEC((1./100.))'
|
||||||
sim.srcs += $(SRC_BOOZ)/booz2_analog_baro.c
|
sim.srcs += $(SRC_BOARD)/baro_board.c
|
||||||
|
|
||||||
sim.CFLAGS += -DBOOZ2_ANALOG_BATTERY_PERIOD='SYS_TICS_OF_SEC((1./10.))'
|
sim.CFLAGS += -DBOOZ2_ANALOG_BATTERY_PERIOD='SYS_TICS_OF_SEC((1./10.))'
|
||||||
sim.srcs += $(SRC_BOOZ)/booz2_battery.c
|
sim.srcs += $(SRC_BOOZ)/booz2_battery.c
|
||||||
|
|
||||||
sim.srcs += $(SRC_BOOZ)/booz2_analog.c $(SRC_BOOZ_SIM)/booz2_analog_hw.c
|
sim.srcs += $(SRC_BOOZ)/booz2_analog.c $(SRC_BOOZ_SIM)/booz2_analog_hw.c
|
||||||
|
|
||||||
|
sim.CFLAGS += -DBOOZ_IMU_TYPE_H=\"imu/booz_imu_b2.h\"
|
||||||
|
sim.CFLAGS += -DIMU_B2_VERSION_1_1
|
||||||
|
|
||||||
sim.srcs += $(SRC_BOOZ)/booz2_autopilot.c
|
sim.srcs += $(SRC_BOOZ)/booz2_autopilot.c
|
||||||
|
|
||||||
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
ARCH=sim
|
ARCH=sim
|
||||||
ARCHI=sim
|
ARCHI=sim
|
||||||
|
BOARD = pc
|
||||||
BOARD_CFG = \"tiny.h\"
|
BOARD_CFG = \"tiny.h\"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
|
||||||
|
/*
|
||||||
|
* board specific fonctions for the lisa_l board
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef BOARDS_LISA_L_BARO_H
|
#ifndef BOARDS_LISA_L_BARO_H
|
||||||
#define BOARDS_LISA_L_BARO_H
|
#define BOARDS_LISA_L_BARO_H
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
|
||||||
|
|
||||||
|
#include "firmwares/rotorcraft/baro.h"
|
||||||
|
|
||||||
|
struct Baro baro;
|
||||||
|
|
||||||
|
bool_t baro_pc_available;
|
||||||
|
|
||||||
|
void baro_init(void) {baro_pc_available=FALSE;}
|
||||||
|
|
||||||
|
void baro_periodic(void) {}
|
||||||
|
|
||||||
|
void baro_feed_value(double value) {
|
||||||
|
baro.absolute = value;
|
||||||
|
baro_pc_available = TRUE;
|
||||||
|
}
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
/*
|
||||||
|
* board specific fonction for the PC board ( simulator )
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef BOARDS_PC_BARO_H
|
||||||
|
#define BOARDS_PC_BARO_H
|
||||||
|
|
||||||
|
#define BaroEvent(_b_abs_handler, _b_diff_handler) { \
|
||||||
|
if (baro_pc_available) { \
|
||||||
|
_b_abs_handler(); \
|
||||||
|
baro_pc_available = FALSE; \
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
extern bool_t baro_pc_available;
|
||||||
|
|
||||||
|
extern void baro_feed_value(double value);
|
||||||
|
|
||||||
|
#endif /* BOARDS_PC_BARO_H */
|
||||||
@@ -94,6 +94,7 @@ extern void booz_fms_impl_set_enabled(bool_t enabled);
|
|||||||
|
|
||||||
#define BOOZ_FMS_TYPE_DATALINK 0
|
#define BOOZ_FMS_TYPE_DATALINK 0
|
||||||
#define BOOZ_FMS_TYPE_TEST_SIGNAL 1
|
#define BOOZ_FMS_TYPE_TEST_SIGNAL 1
|
||||||
|
#define BOOZ_FMS_TYPE_OVERO_LINK 2
|
||||||
|
|
||||||
#if defined BOOZ_FMS_TYPE
|
#if defined BOOZ_FMS_TYPE
|
||||||
#if BOOZ_FMS_TYPE == BOOZ_FMS_TYPE_DATALINK
|
#if BOOZ_FMS_TYPE == BOOZ_FMS_TYPE_DATALINK
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
#include "nps_autopilot_booz.h"
|
#include "nps_autopilot_booz.h"
|
||||||
|
|
||||||
#include "booz2_main.h"
|
#include "firmwares/rotorcraft/main.h"
|
||||||
#include "nps_sensors.h"
|
#include "nps_sensors.h"
|
||||||
#include "nps_radio_control.h"
|
#include "nps_radio_control.h"
|
||||||
#include "booz_radio_control.h"
|
#include "booz_radio_control.h"
|
||||||
#include "booz_imu.h"
|
#include "booz/booz_imu.h"
|
||||||
#include "booz2_analog_baro.h"
|
#include "firmwares/rotorcraft/baro.h"
|
||||||
|
|
||||||
#include "actuators/booz_supervision.h"
|
#include "actuators/booz_supervision.h"
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ void nps_autopilot_run_step(double time __attribute__ ((unused))) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (nps_sensors_baro_available()) {
|
if (nps_sensors_baro_available()) {
|
||||||
Booz2BaroISRHandler(sensors.baro.value);
|
baro_feed_value(sensors.baro.value);
|
||||||
booz2_main_event();
|
booz2_main_event();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user