ANSI报文解析与读取流程详解
4星 · 超过85%的资源 需积分: 32 110 浏览量
更新于2024-07-30
收藏 365KB DOC 举报
"ANSI规约详解"
ANSI(American National Standards Institute,美国国家标准协会)规约是一种用于抄表系统中的通信协议,它定义了设备间如何交换数据的规则。本文档详细解析了ANSI报文结构及其在抄表应用中的使用。
报文结构分为几个关键部分:
1. **特征码(EE)**:EE是报文的起始标志,表示这是一个ANSI格式的报文。
2. **表地址(00)**:00代表通用地址,如果链路中有多个表,则需使用特定表的地址进行通信。
3. **功能码(00)**:功能码通常在发送时为00,在接收时变为20,反之亦然,表明报文的方向。
4. **后序帧数标识码**:指示后续帧的数量,TX帧中通常是00,RX帧中可能为01至04,表示接收时数据是否分帧传输。
5. **接收数据体的长度(0003)**:不包括CRC校验的字节数。
6. **数据体(300015)**:包含各种命令,如握手、登录、读取、写入和登出等操作的具体数据。
7. **CRC校验(F05B)**:用于检测数据传输中的错误。
8. **链路层响应(如06)**:确认已接收到报文。
**读取TOU(Time Of Use,时段电价)的流程**:
1. 首先进行登陆操作。
2. 发送读取当前电量的命令(例如,读取ST_021_ACT_REGS)。
3. 接收并解析响应,获取实际数据。
4. 继续读取ST_027_PRESENT_REG_SELECT和ST_028_PRESENT_REG_DATA,以获取更多TOU相关数据。
5. 最后,结束操作。
**读取时间的流程**:
1. 同样先进行登陆。
2. 发送读取时间的命令,例如读取ST_052_CLOCK。
3. 解析返回的Table数据,其中包括CLOCK_CALENDAR(年-月-日-时-分-秒)和TIME_DATE_QUAL(时间属性)。
4. 对时的流程涉及发送设置时间的命令,并验证设备是否正确更新时间。
**数据结构**:
- ST_021_ACT_REGS 和 ST_027-present_REG_SELECT, ST_028_PRESENT_REG_DATA 是特定的表项,存储了与TOU相关的费率和当前状态信息。
- ST_052_CLOCK 包含CLOCK_CALENDAR结构,表示日期和时间,由YEAR、MONTH、DAY、HOUR、MINUTE和SECOND组成。
- TIME_DATE_QUAL 是一个字节,表示时间属性,可能包含时间的准确性和有效性信息。
在进行通信时,理解这些数据结构和流程至关重要,以便正确解析和响应来自抄表设备的报文。通过遵循ANSI规约,可以确保在抄表网络中实现高效且可靠的通信。
112 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
2010-02-14 上传
xingxing1095
- 粉丝: 1
- 资源: 6
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载