一种新型自动抄表系统数据集中器的设计
寄存器和验收屏蔽寄存器等的设置。
(2)数据发送程序。
数据的发送是由CAN 总线控制器自动完成的,用户只需将待发送数据送入数据缓冲区,再启动发送命令即可。通过查询相应的标志位即可得知发送状态。
(3)数据接收程序。
数据的接收采用中断方式,接收程序在CAN 控制器产生接收中断后,从数据缓冲区中读取接收到的数据,再进行相应处理即可。
4 通信协议设计
4.1 上位机与数据集中器通信帧格式
上位机与数据集中器之间为主从结构的半双工通信方式。
上位机为主站,数据集中器为从站。每个数据集中器均有各自的地址。通信链路的建立与解除均由主站来控制。协议中规定了三种帧格式,分别是:命令帧、广播帧及应答帧。
(1)命令帧。
命令帧由上位机发送给数据集中器,由地址、命令、数据和校验码组成。
地址长2 字节,表明将接收该帧的数据集中器。命令长1字节,表示该帧的功能。数据长1~9 字节,其内容随命令帧的功能改变。校验码长2 字节,为从帧起始到校验码之前的所有字节的CRC16 校验码,用于数据校验。
(2)广播帧。
广播帧也是由上位机发出的,它用来向数据集中器发送校时及数据冻结命令。其格式中不含地址域,其它与命令帧相同。
(3)应答帧。
应答帧是数据集中器对上位机发来的命令的响应,格式与命令帧相同,地址中为数据集中器自身地址。
4.2 数据集中器与数据采集器通信帧格式
CAN 总线的技术规范只定义了数据链路层和物理层,因此要实现系统的通信就需要根据实际情况单独设计应用层的通信协议。
协议中有命令帧、应答帧、数据帧和报警帧四种帧格式。其中命令帧由数据集中器发出,含有一个数据采集器识别地址。
应答帧是采集器对集中器所发命令的响应。当集中器发出的地址与某个采集器地址一致时,该采集器会发送应答帧。由于CAN 总线采用的是短帧结构,每帧数据最多8 字节,当采集器要上报的数据大于8 字节时就要在应答帧之后再传送数据帧直到所有数据发送完成。报警帧是采集器出现断线、数据存储出错等故障时发出的报警信号。
(1)命令帧。
命令帧由地址、命令、数据组成。由于CAN 总线本身具有15 位CRC 校验,其校验强度完全可以满足本系统对通信可靠性的要求,故没有设置校验部分。各个部分的具体含义与约定如下:1)地址表明要与哪一个采集器通信,每个采集器唯一对应一个地址。地址为1 个字节,可使用标识符ID.0~ID.7 记录此地址,这样就可通过CAN 控制器的设置由硬件自动完成地址过滤。2)命令为1 个字节,用于指定具体的命令内容。不同的内容对应不同的命令代码。3)数据部分长度一般为1~8 字节。
(2)应答帧。
应答帧格式基本与命令帧格式相同,只不过其地址部分是自身地址,而不是目的地址。
(3)数据帧。
该帧是紧跟在某些应答帧之后发送的,因此只有地址和数据两部分。
(4)报警帧。
报警帧格式与应答帧格式相同,它的数据部分为1 个字节,表明了故障类型。
4.3 差错控制
为保证数据传输的可靠性,建立了上位机与数据集中器之间、数据集中器与数据采集器之间的差错控制。
当上位机或数据集中器发出命令帧后,在规定时间内如果未收到数据集中器或数据采集器的应答帧,即认为传输出错,并重发先前的命令帧。重发最多3 次,当重发3 次仍无法收到应答帧时,发出相应的提示信息。
5 结束语
以上述方式设计的数据集中器具有低功耗、可靠性高和成本低廉的特点,特别适合作为自动抄表系统中数据集中器设计的一种解决方案被推广和应用。在实验条件下对所设计的系统进行测试,测试表明所设计的系统运行平稳、功耗低,能够可靠地完成抄表系统数据采集需求,达到了设计要求,具有很好的应用前景。
自动抄表系统数据集中 相关文章:
- 电源设计小贴士 1:为您的电源选择正确的工作频率(12-25)
- 用于电压或电流调节的新调节器架构(07-19)
- 超低静态电流电源管理IC延长便携应用工作时间(04-14)
- 电源设计小贴士 2:驾驭噪声电源(01-01)
- 负载点降压稳压器及其稳定性检查方法(07-19)
- 电源设计小贴士 3:阻尼输入滤波器(第一部分)(01-16)