Files
amadeus_26/docs/IMU/command.md
2026-03-22 19:42:38 +08:00

16 KiB
Raw Permalink Blame History

FDILink指令配置示例

进入配置模式

#fconfig\r\n

滤波器开关配置示例——将3D磁力计的融合开关打开

#fconfig\r\n                         // 1. 进入配置模式   
#fparam get AID_MAG_V_MAGNETIC\r\n   // 2. 获取当前滤波器状态
#fparam set AID_MAG_V_MAGNETIC 1\r\n // 3. 设置3D磁辅助为打开状态
#fsave\r\n                           // 4. 保存设置
#freboot\r\n                         // 5. 重启设备

将COM2 改成NMEA(OUT) 协议

#fparam get AID_GNSS_VEL_UPDATE\r\n
#fparam get MAG_GEOMAGFIELD_B\r\n
#fconfig\r\n
#fdeconfig\r\n
#fsave\r\n
#freboot\r\n
y\r\n
#fconfig\r\n

设置端口1的类型为MAIN

#fparam set COMM_STREAM_TYP1 1\r\n 

设置端口4的类型为NONE

#fparam set COMM_STREAM_TYP4 0\r\n

波特率修改配置

#fimucal_gyro\r\n
#fmagcal3d\r\n
#faxis\r\n
#fmsg 40 100\r\n
#fmsg\r\n
#fante\r\n
Stream_TxBlock(stream, "UNLOG\r\n", strlen("UNLOG\r\n"));
// Stream_TxBlock(stream, "GPGGA 1\r\n", strlen("GPGGA 1\r\n")); //增加NMEA解析数据会有2-3s延迟 字符形式解析慢
Stream_TxBlock(stream, "AGRICB 0.1\r\n", strlen("AGRICB 0.1\r\n"));
Stream_TxBlock(stream, "LOG PSRDOPB ONCHANGED\r\n", strlen("LOG PSRDOPB ONCHANGED\r\n"));
Stream_TxBlock(stream, "LOG PSRVELB ONTIME 0.1\r\n", strlen("LOG PSRVELB ONTIME 0.1\r\n"));
// Stream_TxBlock(stream, "LOG PSRPOSB ONTIME 0.1\r\n", strlen("LOG PSRPOSB ONTIME 0.1\r\n"));
Stream_TxBlock(stream, "LOG HEADINGB ONTIME 0.1\r\n", strlen("LOG HEADINGB ONTIME 0.1\r\n"));
// Stream_TxBlock(stream, "LOG BESTXYZB ONTIME 0.1\r\n", strlen("LOG BESTXYZB ONTIME 0.1\r\n"));

fconfig指令

属性 内容
命令 #fconfig
说明 使导航设备由导航模式进入配置模式,配置模式下设备不再进行导航也不输出数据。所有配置命令仅在配置模式下有效。配置完成后请保存,否则已配置项不会保存和生效
格式 #fconfig<CR><LF>
需要确认
重启生效
示例 输入:#fconfig — 导航设备停止输出导航结果,并输出: #OK

fdeconfig指令

属性 内容
命令 #fdeconfig
说明 使导航设备由配置模式恢复导航模式
格式1 #fdeconfig<CR><LF>
需要确认
重启生效
示例 输入:#fdeconfig — 导航设备重新输出导航数据
回复 *#OK — 成功进入导航模式

freboot

属性 内容
命令 #freboot
说明 重新热启动设备
格式 #freboot
需要确认
重启生效
示例 输入#freboot,设备重新热启动
备注 重新启动时所有未保存的设置将不会保存,也不会生效。重新启动命令不会重启 gnss 模组

freset

属性 内容
命令 #freset
说明 将配置恢复到出厂初始值,恢复出厂配置后用户配置将全部清除,固件版本保持不变
格式 #freset
需要确认
重启生效
示例 #freset
备注 通过上位机的参数导出按钮可以将重置之前的用户配置保存下来

fsave

属性 内容
命令 #fsave
说明 配置保存
格式 #fsave
需要确认
重启生效
示例 #fsave
备注 几乎所有的配置更改后都需要执行配置保存操作,这样重启后才能保证配置生效

fante

属性 内容
命令 #fante
说明 配置双天线航向与载体前向夹角
格式1 #fante<CR><LF> — 查询GNSS天线配置信息双天线航向偏角、双天线基线长度、天线杆臂
格式2 #fanteheadbias angle<CR><LF> — 其中 angle 为角度值,值域在 0 至 360°间
格式3 #fantebaseline length<CR><LF> — 配置双天线之间基线的长度length单位为米m
格式4 #fantearm x y z<CR><LF> — 配置GNSS主天线到IMU的杆臂命令
示例 将双天线航向与载体前向夹角设置为 270 度:
输入:#fanteheadbias 270.0
输出:*#OK
备注 定义主天线到从天线为基线矢量正方向从IMU正上方看去顺时针为天线航向偏角的正方向

fimucal

属性 内容
命令 #fimucal
说明 校准陀螺仪、加表的常值零偏以及调平
格式1 #fimucal_level<CR><LF> — 将IMU坐标系调平至水平面不改变陀螺和加表零偏
格式2 #fimucal_acce<CR><LF> — 执行加速度计零偏校准
格式3 #fimucal_gyro<CR><LF> — 执行陀螺仪零偏校准
需要确认
重启生效
示例 输入#fimucal_levelIMU调平校准
备注 注意! 格式1和格式2需要在水平静止状态下执行该命令格式3只需要模块保持静止

fmsg

属性 内容
命令 #fmsg
说明 配置发送的数据内容
格式1 #fmsg — 查询当前数据包信息。显示内容包括所有支持的数据包以及数据包ID以及其发送频率
格式2 #fmsg msg freq — msg为2位十六进制数字表示数据包IDfreq为设置指定数据包的发送频率
需要确认
重启生效
示例 输入:#fmsg 40 100表示IMU数据以100Hz的频率发送
输出:IMU [40] 100.0Hz表示IMU数据已经设置为100Hz的发送频率

fparam

属性 内容
命令 #fparam
说明 读取或配置参数
格式1 #fparam get paramName — paramName 需要获取的参数名称
格式2 #fparam set paramName paramValue — paramName需要设置的参数名称paramValue参数的数值十进制
需要确认
重启生效
配置说明1串口波特率配置 paramName的值和paramValue的值见表1 (DETA系列) 和表2 (EPSILON系列)默认配置中COMM_BAUD1 (端口1) 的波特率被设置为921600bps
示例1 输入:#fparam get COMM_BAUD2\r\n
输出:COMM_BAUD2=5表示现在端口2为 115200bps
输入:#fparam set COMM_BAUD2 8\r\n
输出:*#OK表示成功将端口2改为921600bps
备注1 默认端口1配置为Main协议若端口1配置为其它波特率则保存重启后波特率也需要重新选择同时强烈不建议将Main协议端口的波特率设置在115200bps以下
配置说明2滤波开关配置 除了在上位机配置滤波器开关外用户同样可以使用串口指令进行配置paramName的值可见表3相应的paramValue为0或者10表示关闭1表示打开
示例2 输入:#fparam get AID_MAG_2D_MAGNETIC\r\n
输出:AID_MAG_2D_MAGNETIC=1表示磁力计2D辅助开关是打开的
输入:#fparam set AID_MAG_2D_MAGNETIC 0\r\n
输出:*#OK,表示不使用磁力计进行融合
备注2 滤波开关的配置最好在测试前进行,测试中对滤波开关进行配置可能会破坏滤波器的稳定,容易导致位姿的突变与发散
配置说明3传感器参数修改 用户可以使用串口指令查看或者修改位于上位机 Onboard Parameters里的所有传感器参数包含imu参数、GNSS参数、DEBUG参数等等
示例3 输入:#fparam get IMU_ACC_AVG\r\n
输出:IMU_ACC_AVG=9.794700表示当地重力加速度计为9.794700m/s²
输入:#fparam get GNSS_MIN_VACC\r\n
输出:GNSS_MIN_VACC=2.500000表示当GNSS垂直方向的精度小于2.5m这个阈值时才会使用GNSS进行组合导航
输入:#fparam set GNSS_MIN_VACC 0.1\r\n
输出:*#OK表示成功将GNSS垂直方向的阈值设置为0.1m这在客户使用RTK高精度组合导航时是有用的可以防止在GNSS信号变差时对系统造成一定的负面影响
备注3 传感器参数的修改一般只用于FDISYSTEMS研发人员的调试阶段除非用户对该领域很熟悉否则不建议自行修改
配置说明4端口协议配置 端口协议除了在上位机配置外还能使用串口指令进行配置端口协议见表4常用的端口协议为Main、NAV、RTCM、NMEA和Ublox
示例4 输入:#fparam get COMM_STREAM_TYP1\r\n
输出:COMM_STREAM_TYP1=1表示端口1配置为Main协议
输入:#fparam set COMM_STREAM_TYP2 2\r\n
输出:*#OK表示将端口2配置为NAV协议即可以通过端口2获取FDILink协议的数据此时用户通过端口1或端口2均能获取数据此外端口1还能连接上位机便于实时调试
输入:#fparam set COMM_STREAM_TYP3 6\r\n
输出:*#OK表示将端口3配置为Ublox模式如果端口3有接收到Ublox类型的数据保存重启后即可实现GPS/INS组合导航
备注4 上述所有配置内容都需要#fsave保存,否则重新上电后失效;
此外所有端口中必须有一个配置为Main协议只有该端口可以连接上位机

fmagcal2d

属性 内容
命令 #fmagcal2d
说明 磁力计2d校准指令输入完成后用户在平面上沿模块中心缓慢旋转一周后完成校准完成后自动保存校准数据并退出当前的配置模式
格式1 #fmagcal2d
需要确认
重启生效
示例 输入:#fmagcal2d\r\n
输出:*#OK表示可以开始进行2d校准
输出:This is a magnetometer 2D calibration. Please wait until the magnetometer progress bar reaches 100 percent Now: 0 percent
表示2D校准的实时进度刷新频率为1HZ。当进度到达100 percent表示校准成功系统将立即退出当前配置模式重新发送FDILink数据

fmagcal3d — 3D磁校准指令

属性 内容
命令 #fmagcal3d
说明 磁力计3d校准指令输入完成后用户在空中缓慢画8字进行校准完成后自动保存校准数据退出当前的配置模式
格式1 #fmagcal3d
需要确认
重启生效
示例 输入:#fmagcal3d\r\n
输出:*#OK表示可以开始进行3d校准
输出:
This is a magnetometer 3D calibration.
The fitting error of the current calculation: xxx
Calibration Algorithm: xxx
表示3D校准的实时状态刷新频率为1HZ。"The fitting error of the current calculation : xxx"表示当前计算的拟合误差,参数类型为单精度浮点数类型。"Calibration Algorithm: xxx"表示的是校准算法等级参数等级分为Low, Mid, High三种。当计算的拟合误差小于3.000f并算法等级等于High时表示校准成功系统将立即退出当前配置模式即重新发送FDILink数据

fdgnss

属性 内容
命令 #fdgnss
说明 读取或配置上位机DGNSS栏参数
格式1 #fdgnss get gnssName
gnssName 需要获取的参数名称,包含:
RTCM_TYPE — 发送或接收RTCM的方式
NET_INFO_IMEI — SIM卡的IMEI信息无法配置
NET_INFO_CCID — SIM卡的CCID信息无法配置
NTRIP_SVR_DOMAIN — Ntrip的IP地址
NTRIP_SVR_PORT — Ntrip的IP端口
NTRIP_MOUNT — Ntrip的挂载点
NTRIP_ACCOUNT — Ntrip账号
NTRIP_PASSWORD — Ntrip密码
FDI_AUTH — FDI云鉴权码
格式2 #fdgnss set gnssName gnssValue
gnssName 需要设置的参数名称
gnssValue 参数的数值,十进制

RTCM_TYPE参数特殊定义
• 0 — Radio
• 1 — 千寻位置SDK
• 2 — Ntrip配置
• 3 — FDI云

其余gnssValue无特殊定义
需要确认
重启生效
示例1 输入:#fdgnss get NTRIP_SVR_PORT\r\n
输出:NTRIP_SVR_PORT8002表示Ntrip的IP端口为8002
示例2 完整配置NTRIP账号过程
1. 输入:#fdgnss set RTCM_TYPE 3\r\n → 输出:*#OK切换为NTRIP配置
2. 输入:#fdgnss set NTRIP_SVR_DOMAIN xxx.xxx.xx.xxx\r\n → 输出:*#OKIP配置成功
3. 输入:#fdgnss set NTRIP_SVR_PORT 8002\r\n → 输出:*#OK端口配置为8002
4. 输入:#fdgnss set NTRIP_MOUNT RTCM32_GGB\r\n → 输出:*#OK挂载点配置为RTCM32_GGB
5. 输入:#fdgnss set NTRIP_ACCOUNT qxx1234\r\n → 输出:*#OK账号配置为qxx1234
6. 输入:#fdgnss set NTRIP_PASSWORD 12345678\r\n → 输出:*#OK密码配置为12345678
备注 上述所有配置内容都需要#fsave保存,否则重新上电后失效

附录表格

表1DETA 系列v2端口波特率配置说明

paramName 端口说明 paramValue 对应波特率
COMM_BAUD1 UART, TTL电平, 设置范围9600bps-921600bps 1 9600bps
2 19200bps
3 38400bps
COMM_BAUD2 UART, TTL电平, 设置范围9600bps-921600bps 4 76800bps
5 115200bps
6 230400bps
COMM_BAUD3 UART, TTL电平, 设置范围9600bps-921600bps 7 460800bps
8 921600bps
9 2625000bps
COMM_BAUD4 UART, TTL电平, 设置范围9600bps-921600bps 10 5250000bps
11 10500000bps
12 100000bps
COMM_BAUD5 CAN, 可设置波特率为250000bps、500000bps、1000000bps 13 250000bps
14 500000bps
15 1000000bps

表2EPSILON系列端口波特率配置说明

paramName 端口说明 paramValue 对应波特率
COMM_BAUD1 RS232设置范围9600bps-921600bps 1 9600bps
2 19200bps
3 38400bps
COMM_BAUD2 RS232设置范围9600bps-921600bps 4 76800bps
5 115200bps
6 230400bps
COMM_BAUD3 RS422设置范围9600bps-921600bps 7 460800bps
8 921600bps
9 2625000bps
COMM_BAUD4 GPIO TTL设置范围9600bps-921600bps 10 5250000bps
11 10500000bps
12 100000bps
COMM_BAUD5 CAN可设置波特率为250000bps、500000bps、1000000bps 13 250000bps
14 500000bps
15 1000000bps

表3SPKF融合开关说明

paramName 说明
AID_ACCEL_GRAVITY 加速度计融合开关
AID_BRO_ALT_UPDATE 气压计融合开关
AID_CAR_CENT_ACCEL_NHC_ENABLED 汽车向心加速度补偿开关
AID_CAR_YZ_ZERO_VEL_NHC_ENABLED 汽车零速更新开关
AID_EXT_HEADING_UPDATE 外部航向输入开关
AID_GNSS_POS_UPDATE GNSS 位置融合开关
AID_GNSS_TRACK_HEADING_UPDATE GNSS 航迹角融合开关
AID_GNSS_VEL_UPDATE GNSS 速度融合开关
AID_GYO_TURN_ON_TARE_ENABLED 开机时静态陀螺零偏估计开关
AID_INIT_YAW_USE_MAG 磁力计初始化航向角开关
AID_MAG_2D_MAGNETIC 磁航向融合开关
AID_MAG_3D_MAGNETIC 磁矢量融合开关
AID_ODOMETER_VEL_UPDATE 里程计融合开关
AID_OPTICFLOW_UPDATE 光流计融合开关
AID_ZERO_POS_UPDATE 零位置更新开关
AID_ZERO_RATE_UPDATE 零角速度更新开关
AID_ZERO_VEL_UPDATE 零速度更新

表4端口协议类型与说明

paramName 端口协议 说明 paramValue
COMM_STREAM_TYP(1-5) None 0
Main 主协议导航数据收发和连接上位机通过0xF0切换模式 1
NAV 导航模式,收发 2
RTCM 接收差分修正数据v3版D3 00开头 3
NMEA 接收NMEA格式数据 4
NMEA(OUT) 导航输出NMEA格式数据 5
Ublox 接收UBX格式数据 6
External Position 接收外部位置数据 7
External Velocity 接收外部速度数据 8
External Position&Velocity 接收外部位置和速度数据 9
External Attitude angle 接收外部姿态数据 10
External Time 接收外部时间数据 11
External Heading 接收外部航向数据 12
External Depth 接收外部深度数据 13
External SLAM1 接收外部slam1数据 14
External SLAM2 接收外部slam2数据 15
External Pitot Pressure 接收外部气压计数据 16
External Air speed 接收外部空速数据 17
External Odom 接收外部里程计数据 18
External LIDAR 接收外部雷达数据 19