convert ins_xsens to module

This commit is contained in:
Felix Ruess
2016-03-30 21:39:59 +02:00
parent bd8943a15c
commit 2ab27171fb
6 changed files with 81 additions and 89 deletions
+3 -3
View File
@@ -216,9 +216,9 @@
<configure name="MODEM_BAUD" value="B9600"/> <configure name="MODEM_BAUD" value="B9600"/>
</subsystem> </subsystem>
<subsystem name="ins" type="xsens"> <module name="ins" type="xsens">
<configure name="XSENS_UART_NR" value="1"/> <configure name="XSENS_PORT" value="uart1"/>
</subsystem> </module>
</firmware> </firmware>
+4 -4
View File
@@ -25,10 +25,10 @@
<subsystem name="control"/> <subsystem name="control"/>
<!-- Sensors --> <!-- Sensors -->
<subsystem name="navigation"/> <subsystem name="navigation"/>
<subsystem name="ins" type="xsens"> <module name="ins" type="xsens">
<configure name="XSENS_UART_NR" value="0"/> <configure name="XSENS_PORT" value="uart0"/>
<configure name="XSENS_UART_BAUD" value="B230400"/> <configure name="XSENS_BAUD" value="B230400"/>
</subsystem> </module>
</firmware> </firmware>
<!-- ************************* MODULES ************************* --> <!-- ************************* MODULES ************************* -->
@@ -21,10 +21,10 @@
<subsystem name="telemetry" type="transparent"/> <subsystem name="telemetry" type="transparent"/>
<!-- Sensors --> <!-- Sensors -->
<subsystem name="ins" type="xsens"> <module name="ins" type="xsens">
<configure name="XSENS_UART_NR" value="3"/> <configure name="XSENS_PORT" value="uart3"/>
<configure name="XSENS_UART_BAUD" value="B115200"/> <configure name="XSENS_BAUD" value="B115200"/>
</subsystem> </module>
<subsystem name="control"/> <subsystem name="control"/>
<subsystem name="navigation"/> <subsystem name="navigation"/>
@@ -1,70 +1 @@
# Hey Emacs, this is a -*- makefile -*- $(error Error: The ins xsens subsystem has been converted to a module, replace <subsystem name="ins" type="xsens"/> by <module name="ins" type="xsens"/>)
# XSens Mti-G
# <subsystem name="ins" type="xsens">
# <configure name="XSENS_UART_NR" value="0"/>
# <configure name="XSENS_UART_BAUD" value="B115200"/>
# </subsystem>
#########################################
## ATTITUDE
# AHRS Results
ap.CFLAGS += -DINS_TYPE_H=\"modules/ins/ins_xsens.h\"
ifndef XSENS_UART_BAUD
XSENS_UART_BAUD = B115200
endif
#B230400
#B115200
ap.CFLAGS += -DUSE_UART$(XSENS_UART_NR)
ap.CFLAGS += -DXSENS_LINK=uart$(XSENS_UART_NR)
ap.CFLAGS += -DUART$(XSENS_UART_NR)_BAUD=$(XSENS_UART_BAUD)
ap.CFLAGS += -DXSENS_OUTPUT_MODE=0x1836
ap.srcs += $(SRC_MODULES)/ins/xsens.c
ap.srcs += $(SRC_MODULES)/ins/xsens_common.c
ap.srcs += $(SRC_SUBSYSTEMS)/ins.c
ap.srcs += $(SRC_MODULES)/ins/ins_xsens.c
ap.CFLAGS += -DAHRS_TRIGGERED_ATTITUDE_LOOP
#########################################
## GPS
ap.CFLAGS += -DUSE_GPS_XSENS
ap.CFLAGS += -DUSE_GPS_XSENS_RAW_DATA
ap.CFLAGS += -DGPS_NB_CHANNELS=16
ap.CFLAGS += -DUSE_GPS
ap.CFLAGS += -DGPS_TYPE_H=\"modules/ins/ins_xsens.h\"
ap.srcs += $(SRC_SUBSYSTEMS)/gps.c
#########################################
## Simulator
SIM_TARGETS = sim nps
ifneq (,$(findstring $(TARGET),$(SIM_TARGETS)))
$(TARGET).CFLAGS += -DAHRS_TYPE_H=\"subsystems/ahrs/ahrs_sim.h\"
$(TARGET).CFLAGS += -DUSE_AHRS
$(TARGET).srcs += $(SRC_SUBSYSTEMS)/ahrs.c
$(TARGET).srcs += $(SRC_SUBSYSTEMS)/ahrs/ahrs_sim.c
$(TARGET).srcs += $(SRC_SUBSYSTEMS)/ins.c
$(TARGET).CFLAGS += -DINS_TYPE_H=\"subsystems/ins/ins_gps_passthrough_utm.h\"
$(TARGET).srcs += $(SRC_SUBSYSTEMS)/ins/ins_gps_passthrough_utm.c
$(TARGET).CFLAGS += -DUSE_GPS
$(TARGET).CFLAGS += -DGPS_TYPE_H=\"subsystems/gps/gps_sim.h\"
$(TARGET).srcs += $(SRC_SUBSYSTEMS)/gps/gps_sim.c
$(TARGET).srcs += $(SRC_SUBSYSTEMS)/gps.c
endif
+67 -6
View File
@@ -1,16 +1,77 @@
<!DOCTYPE module SYSTEM "module.dtd"> <!DOCTYPE module SYSTEM "module.dtd">
<module name="ins"> <module name="ins_xsens" dir="ins">
<doc> <doc>
<description>XSens</description> <description>
XSens Mti-G INS
</description>
<configure name="XSENS_PORT" value="uart1" description="The (uart) port the XSens is connected to"/>
<configure name="XSENS_BAUD" value="B115200" description="UART baud rate"/>
</doc> </doc>
<header> <header>
<file name="ins_module.h"/> <file name="ins_xsens.h"/>
</header> </header>
<init fun="ins_init()"/> <!-- ins_init is still called explicitly in main -->
<periodic fun="ins_periodic()" freq="60"/> <!--init fun="ins_init()"/-->
<makefile> <periodic fun="xsens_periodic()" freq="60"/>
<event fun="ins_xsens_event()"/>
<makefile target="ap">
<file name="xsens.c"/>
<file name="xsens_common.c"/>
<file name="ins_xsens.c"/> <file name="ins_xsens.c"/>
<file name="ins.c" dir="subsystems"/>
<configure name="XSENS_PORT" default="uart1" case="upper|lower"/>
<configure name="XSENS_BAUD" default="B115200"/>
<define name="USE_$(XSENS_PORT_UPPER)" value="1"/>
<define name="XSENS_LINK" value="$(XSENS_PORT_LOWER)"/>
<define name="$(XSENS_PORT_UPPER)_BAUD" value="$(XSENS_BAUD)"/>
<define name="XSENS_OUTPUT_MODE" value="0x1836"/>
<define name="AHRS_TRIGGERED_ATTITUDE_LOOP"/>
<file name="gps.c" dir="subsystems"/>
<define name="USE_GPS"/>
<define name="USE_GPS_XSENS"/>
<define name="USE_GPS_XSENS_RAW_DATA"/>
<define name="GPS_NB_CHANNELS" value="16"/>
<raw>
ap.CFLAGS += -DGPS_TYPE_H=\"modules/ins/ins_xsens.h\"
</raw>
</makefile>
<makefile target="sim">
<file name="ahrs.c" dir="subsystems"/>
<file name="ahrs_sim.c" dir="subsystems/ahrs"/>
<define name="USE_AHRS"/>
<file name="ins.c" dir="subsystems"/>
<file name="ins_gps_passthrough_utm.c" dir="subsystems/ins"/>
<file name="gps.c" dir="subsystems"/>
<file name="gps_sim.c" dir="subsystems/gps"/>
<define name="USE_GPS"/>
<raw>
sim.CFLAGS += -DAHRS_TYPE_H=\"subsystems/ahrs/ahrs_sim.h\"
sim.CFLAGS += -DINS_TYPE_H=\"subsystems/ins/ins_gps_passthrough_utm.h\"
sim.CFLAGS += -DGPS_TYPE_H=\"subsystems/gps/gps_sim.h\"
</raw>
</makefile>
<makefile target="nps">
<!-- nps dummy ahrs missing -->
<file name="ahrs.c" dir="subsystems"/>
<define name="USE_AHRS"/>
<define name="NPS_BYPASS_AHRS" value="TRUE"/>
<file name="ins.c" dir="subsystems"/>
<file name="ins_gps_passthrough_utm.c" dir="subsystems/ins"/>
<file name="gps.c" dir="subsystems"/>
<file name="gps_sim_nps.c" dir="subsystems/gps"/>
<define name="USE_GPS"/>
<raw>
nps.CFLAGS += -DINS_TYPE_H=\"subsystems/ins/ins_gps_passthrough_utm.h\"
nps.CFLAGS += -DGPS_TYPE_H=\"subsystems/gps/gps_sim_nps.h\"
</raw>
</makefile> </makefile>
</module> </module>
+2 -2
View File
@@ -40,8 +40,8 @@ extern float ins_pitch_neutral;
extern float ins_roll_neutral; extern float ins_roll_neutral;
#define DefaultInsImpl ins_xsens #define DefaultInsImpl ins_xsens
#define InsPeriodic xsens_periodic //#define InsPeriodic xsens_periodic
#define InsEvent ins_xsens_event //#define InsEvent ins_xsens_event
extern void ins_xsens_init(void); extern void ins_xsens_init(void);
extern void ins_xsens_register(void); extern void ins_xsens_register(void);
extern void ins_xsens_event(void); extern void ins_xsens_event(void);