Files
Inbox/前端感知软件数据表V1.0.md
2025-12-11 07:24:36 +08:00

173 lines
7.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# **前端感知设备软件接口控制文件 (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单位换算参考**
1. **角度**: Physical\_Angle (deg) \= Raw\_Value \* 0.0025
2. **频率**: Frequency (MHz) \= 15500 \+ Raw\_Value \* 10
3. **增益**: Gain (dB) \= Raw\_Value \* 0.5
4. **时间**: Ethernet Header 中的 Timestamp 为 UTC 时间的秒数部分。