mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-06-04 22:17:01 +08:00
convert imu_xsens to module
This commit is contained in:
@@ -21,10 +21,10 @@
|
||||
<subsystem name="telemetry" type="transparent"/>
|
||||
|
||||
<!-- Sensors -->
|
||||
<subsystem name="imu" type="xsens">
|
||||
<configure name="XSENS_UART_NR" value="3"/>
|
||||
<configure name="XSENS_UART_BAUD" value="B115200"/>
|
||||
</subsystem>
|
||||
<module name="imu" type="xsens">
|
||||
<configure name="XSENS_PORT" value="uart3"/>
|
||||
<configure name="XSENS_BAUD" value="B115200"/>
|
||||
</module>
|
||||
<subsystem name="ahrs" type="int_cmpl_quat"/>
|
||||
<subsystem name="gps" type="ublox"/>
|
||||
<subsystem name="control"/>
|
||||
|
||||
@@ -1,70 +1 @@
|
||||
# Hey Emacs, this is a -*- makefile -*-
|
||||
|
||||
# XSens Mti just providing IMU measurements
|
||||
|
||||
# <subsystem name="imu" type="xsens">
|
||||
# <configure name="XSENS_UART_NR" value="0"/>
|
||||
# <configure name="XSENS_UART_BAUD" value="B115200"/>
|
||||
# </subsystem>
|
||||
#
|
||||
# <section name="IMU" prefix="IMU_">
|
||||
# <define name="GYRO_P_SIGN" value="1"/>
|
||||
# <define name="GYRO_Q_SIGN" value="1"/>
|
||||
# <define name="GYRO_R_SIGN" value="1"/>
|
||||
#
|
||||
# <define name="GYRO_P_NEUTRAL" value="0"/>
|
||||
# <define name="GYRO_R_NEUTRAL" value="0"/>
|
||||
# <define name="GYRO_Q_NEUTRAL" value="0"/>
|
||||
#
|
||||
# <define name="GYRO_P_SENS" value="1" integer="16"/>
|
||||
# <define name="GYRO_R_SENS" value="1" integer="16"/>
|
||||
# <define name="GYRO_Q_SENS" value="1" integer="16"/>
|
||||
#
|
||||
# <define name="ACCEL_X_SIGN" value="1"/>
|
||||
# <define name="ACCEL_Y_SIGN" value="1"/>
|
||||
# <define name="ACCEL_Z_SIGN" value="1"/>
|
||||
#
|
||||
# <define name="ACCEL_X_SENS" value="1" integer="16"/>
|
||||
# <define name="ACCEL_Z_SENS" value="1" integer="16"/>
|
||||
# <define name="ACCEL_Y_SENS" value="1" integer="16"/>
|
||||
#
|
||||
# <define name="ACCEL_X_NEUTRAL" value="0"/>
|
||||
# <define name="ACCEL_Z_NEUTRAL" value="0"/>
|
||||
# <define name="ACCEL_Y_NEUTRAL" value="0"/>
|
||||
#
|
||||
# <define name="MAG_X_SIGN" value="1"/>
|
||||
# <define name="MAG_Y_SIGN" value="1"/>
|
||||
# <define name="MAG_Z_SIGN" value="1"/>
|
||||
#
|
||||
# <define name="MAG_X_NEUTRAL" value="-45"/>
|
||||
# <define name="MAG_Y_NEUTRAL" value="334"/>
|
||||
# <define name="MAG_Z_NEUTRAL" value="7"/>
|
||||
#
|
||||
# <define name="MAG_X_SENS" value="4.47647816128" integer="16"/>
|
||||
# <define name="MAG_Y_SENS" value="4.71085671542" integer="16"/>
|
||||
# <define name="MAG_Z_SENS" value="4.41585354498" integer="16"/>
|
||||
#
|
||||
# <define name="BODY_TO_IMU_PHI" value="0" unit="deg"/>
|
||||
# <define name="BODY_TO_IMU_THETA" value="0" unit="deg"/>
|
||||
# <define name="BODY_TO_IMU_PSI" value="0" unit="deg"/>
|
||||
# </section>
|
||||
|
||||
|
||||
#########################################
|
||||
## IMU
|
||||
|
||||
ap.CFLAGS += -DUSE_IMU
|
||||
ap.CFLAGS += -DIMU_TYPE_H=\"modules/ins/imu_xsens.h\"
|
||||
ap.srcs += $(SRC_MODULES)/ins/xsens.c
|
||||
ap.srcs += $(SRC_MODULES)/ins/xsens_common.c
|
||||
ap.srcs += $(SRC_MODULES)/ins/imu_xsens.c
|
||||
ap.srcs += $(SRC_SUBSYSTEMS)/imu.c
|
||||
|
||||
ifndef XSENS_UART_BAUD
|
||||
XSENS_UART_BAUD = B115200
|
||||
endif
|
||||
|
||||
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
|
||||
$(error Error: The imu xsens subsystem has been converted to a module, replace <subsystem name="imu" type="xsens"/> by <module name="imu" type="xsens"/>)
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
<!DOCTYPE module SYSTEM "module.dtd">
|
||||
|
||||
<module name="ins_xsens700" dir="ins">
|
||||
<doc>
|
||||
<description>
|
||||
XSens IMU
|
||||
</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>
|
||||
<header>
|
||||
<file name="imu_xsens.h"/>
|
||||
</header>
|
||||
<!-- imu init/periodic/event still called explicitly in main -->
|
||||
<makefile target="ap">
|
||||
<file name="xsens.c"/>
|
||||
<file name="xsens_common.c"/>
|
||||
<file name="imu_xsens.c"/>
|
||||
<file name="imu.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)"/>
|
||||
<!-- TODO: check output mode -->
|
||||
<define name="XSENS_OUTPUT_MODE" value="0x1836"/>
|
||||
<raw>
|
||||
ap.CFLAGS += -DIMU_TYPE_H=\"modules/ins/imu_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"/>
|
||||
<raw>
|
||||
sim.CFLAGS += -DAHRS_TYPE_H=\"subsystems/ahrs/ahrs_sim.h\"
|
||||
</raw>
|
||||
</makefile>
|
||||
|
||||
<makefile target="nps">
|
||||
<define name="USE_IMU"/>
|
||||
<file name="imu_nps.c" dir="subsystems/imu"/>
|
||||
<raw>
|
||||
nps.CFLAGS += -DIMU_TYPE_H=\"subsystems/imu/imu_nps.h\"
|
||||
</raw>
|
||||
</makefile>
|
||||
</module>
|
||||
|
||||
Reference in New Issue
Block a user