7.6 KiB
7.6 KiB
前端感知设备软件接口控制文件 (ICD)
文档编号: FES-SW-ICD-001
版本: V1.0
日期: 2025-05-01
密级: 内部公开
1. 范围
本接口控制文件(ICD)规定了前端感知系统中,信号处理系统(SPS)、数据采集控制系统(DACS)、天馈射频系统及相关外设之间的通信协议、数据格式及时序要求。
本文件适用于前端感知系统的软件开发、系统集成及联调测试。
2. 系统概述与接口关系
前端感知系统采用星型分布式架构,由1个信号处理系统作为主控节点,控制3个分布式数据采集控制系统。
2.1 节点定义
| 设备名称 | 缩写 | 逻辑编号 | IP地址 | 备注 |
|---|---|---|---|---|
| 信号处理系统 | SPS | 0x01 | 192.168.0.100 | 主控节点 |
| 数据采集控制系统1 | DACS-1 | 0x02 | 192.168.0.200 | 子阵1控制 |
| 数据采集控制系统2 | DACS-2 | 0x03 | 192.168.0.201 | 子阵2控制 |
| 数据采集控制系统3 | DACS-3 | 0x04 | 192.168.0.202 | 子阵3控制 |
| 天馈射频系统 | ANT | 0x05 | N/A | LVDS/串行连接 |
| 时统供电系统 | PSU/Time | 0x06 | N/A | RS485连接 |
2.2 通信链路规划
| 链路名称 | 连接对象 | 物理介质 | 传输协议 | 带宽要求 | 关键约束 |
|---|---|---|---|---|---|
| 控制/状态链路 | SPS <-> DACS | Ethernet | UDP/IP | 10 Gbps | 低延迟优先 |
| 大数据回波链路 | SPS <-> DACS | Ethernet | UDP/IP | 10 Gbps | MTU 9000 (Jumbo Frame) |
| 前端控制链路 | DACS <-> ANT | LVDS/RS422 | 私有串行 | 5 Mbps | CRC-16 校验 |
3. 通用协议规范
3.1 数据格式与字节序
为保证基于 x86/ARM 架构的通用计算平台处理效率,系统内所有多字节字段(short, int, long, float 等)传输时均采用 小端模式 (Little-Endian),即低字节在前,高字节在后。
3.2 结构体对齐
所有通信数据包结构体均采用 1字节对齐 (1-byte alignment/packed),严禁编译器插入填充字节。
3.3 校验算法
为确保复杂电磁环境下的数据完整性,所有串行通信链路均采用 CRC-16-CCITT 算法。
- 多项式: 0x1021 (
x^{16} \+ x^{12} \+ x^5 \+ 1) - 初始值: 0xFFFF
- 结果处理: 不取反,小端传输
4. 以太网通信协议
4.1 端口分配
| 发送方 | 接收方 | 信息类型 | 协议 | 目标端口 (Base) | 备注 |
|---|---|---|---|---|---|
| SPS | DACS (1~3) | 控制命令 | UDP | 10011 ~ 10013 | +0, +1, +2 |
| DACS (1~3) | SPS | 状态信息 | UDP | 10021 ~ 10023 | +0, +1, +2 |
| DACS (1~3) | SPS | 回波数据 | UDP | 10031 ~ 10033 | 需开启巨型帧 |
4.2 通用报文头结构 (Ethernet Header)
所有以太网UDP报文(命令、状态、回波)均包含以下标准包头(15字节):
| 偏移 | 字段名称 | 长度 | 类型 | 说明 |
|---|---|---|---|---|
| 0 | SenderID | 1B | uint8 | 发送设备编号 |
| 1 | RespFlag | 1B | uint8 | 响应标志 (0:无需, 1:需要) |
| 2 | SeqID | 2B | uint16 | 命令序号 (循环计数) |
| 4 | TargetID | 1B | uint8 | 受控设备编号 |
| 5 | CmdCode | 1B | uint8 | 命令编号 (见附录A) |
| 6 | RetryCnt | 1B | uint8 | 重发次数 (0-2) |
| 7 | Timestamp | 4B | uint32 | 数据生成时间 (秒计数) |
| 11 | Version | 2B | uint16 | 版本号/子序号 |
| 13 | DataLen | 2B | uint16 | 后续载荷长度 (不含包头) |
5. 详细载荷定义
5.1 参数安排数据包 (SPS -> DACS)
对应命令编号:0x22 (状态设置和参数安排)
| 序号 | 字段名称 | 类型 | 精度/单位 | 说明 |
|---|---|---|---|---|
| 1 | FrameCount | uint32 | 1 | 搜索帧计数 |
| 2 | BeamTotal | uint16 | 1 | 帧波束总数 |
| 3 | SecBeamNum | uint16 | 1 | 秒周期安排波束数 |
| 4 | CPICount | uint32 | 1 | CPI计数基数 |
| 5 | BeamID | uint8 | 1 | 波束编号 |
| 6 | WorkStatus | uint8 | Bitfield | D2-0:天线模式, D4-3:收发控制, D5:射频模拟, D7-6:波束类型 |
| 7 | WidthSel | uint8 | Bitfield | D1-0:收发展宽, D4-2:方位展宽, D7-5:俯仰展宽 |
| 8 | Azimuth | int16 | 0.0025° | 方位指向,范围 [-65, 65] 度 |
| 9 | Elevation | int16 | 0.0025° | 俯仰指向,范围 [-65, 65] 度 |
| 10 | FreqCode | uint8 | 10MHz | 0=15.5GHz, Step=10MHz |
| 11 | MGC_Gain | uint16 | 0.5dB | D7-0:短码增益, D15-8:长码增益 |
| 12 | SigType | uint8 | N/A | 信号波形类型定义 |
| 13 | Bandwidth | uint16 | 0.5MHz | D7-0:短码带宽, D15-8:长码带宽 |
| 14 | PulseWidth | uint16 | 0.5us | D7-0:短码脉宽, D15-8:长码脉宽 |
| 15 | PRT | uint16 | 1us | 脉冲重复周期 |
| 16 | AccPoints | uint16 | 1 | 积累点数 |
| 17 | SimDelay | uint16 | 0.01us | 模拟目标距离延迟 |
| 18 | SimSpeed | int16 | 360/2^15 | 模拟目标速度 |
| 19 | SampShort | uint16 | 1 | 短码采样点数 |
| 20 | SampLong | uint16 | 1 | 长码采样点数 |
| 21 | DataRate | uint8 | 1Mbps | 采样率 |
5.2 回波AD数据包 (DACS -> SPS)
注意:该数据包载荷通常超过 1500 字节,严禁依赖 IP 分片。网络交换设备必须配置 MTU 9000。
| 序号 | 字段名称 | 类型 | 说明 |
|---|---|---|---|
| 1 | CPICount | uint32 | CPI计数 |
| 2-21 | (参数回传) | - | 包含当前CPI的实际执行参数(结构同5.1节序号6-21) |
| 22 | PRT_Count | uint16 | N (脉冲个数) |
| 23 | IQ_Data | Buffer | 变长数据区。排列格式: N * (和路短码IQ + 和路长码IQ + 差路短码IQ ... + 辅助路IQ) |
6. 串行通信协议 (DACS <-> 天馈)
6.1 下行控制包 (DACS -> ANT)
采用定长数据帧,总长度 24 Bytes。
| 偏移 | 字段名称 | 长度 | 说明 |
|---|---|---|---|
| 0 | Header | 2B | 固定 0x55AA |
| 2 | DestID | 1B | 固定 0x05 (天馈) |
| 3 | SrcID | 1B | DACS ID (0x02/03/04) |
| 4 | TotalLen | 2B | 固定 24 (0x0018) |
| 6 | CPICount | 4B | CPI/波束计数 |
| 10 | WorkMode | 1B | 工作方式 (同表A.3) |
| 11 | WidthSel | 1B | 展宽选择 (同表A.3) |
| 12 | Azimuth | 2B | 方位指向 (0.0025°/LSB) |
| 14 | Elevation | 2B | 俯仰指向 (0.0025°/LSB) |
| 16 | Frequency | 1B | 工作频率代码 |
| 17 | MGC_Gain | 2B | MGC 增益控制 |
| 19 | Reserved | 3B | 保留字段 (全0) |
| 22 | CRC16 | 2B | CRC-16-CCITT 校验码 |
6.2 上行状态包 (ANT -> DACS)
采用定长数据帧,总长度 24 Bytes。
| 偏移 | 字段名称 | 长度 | 说明 |
|---|---|---|---|
| 0 | Header | 2B | 固定 0x55AA |
| 2 | DestID | 1B | DACS ID (0x02/03/04) |
| 3 | SrcID | 1B | 固定 0x05 (天馈) |
| 4 | TotalLen | 2B | 固定 24 (0x0018) |
| 6 | CPICount | 4B | 对应执行的CPI计数 |
| 10 | WorkMode | 1B | 当前工作方式 |
| 11 | WidthSel | 1B | 当前展宽状态 |
| 12 | Azimuth | 2B | 当前方位 (0.0025°/LSB) |
| 14 | Elevation | 2B | 当前俯仰 (0.0025°/LSB) |
| 16 | Frequency | 1B | 当前频率 |
| 17 | MGC_Gain | 2B | 当前增益 |
| 19 | FaultCode | 2B | 故障状态码 (Bit0: 综合故障, Bit1-15: 扩展定义) |
| 21 | Reserved | 1B | 保留字段 (全0) |
| 22 | CRC16 | 2B | CRC-16-CCITT 校验码 |
附录 A:单位换算参考
- 角度: Physical_Angle (deg) = Raw_Value * 0.0025
- 频率: Frequency (MHz) = 15500 + Raw_Value * 10
- 增益: Gain (dB) = Raw_Value * 0.5
- 时间: Ethernet Header 中的 Timestamp 为 UTC 时间的秒数部分。