小弟我现在有一WINCC系统,想读一现场RS485自由协议的智能仪表,想通过Kepserver V4.0采集现场仪表数据,然后进WINCC 6.0,厂家发给我的仪表协议如下:
上位机发送数据:FE 47 0A 00 004F 01 00 06 A5
解析
FE 单字节开头固定为FE;
47 单字节 意为“G”47,固定;
0A 00 双字节(int)该数据包总长度,包括效验;
00 单字节,为下位机地址;
4F 包头—地址的效验,效验全部为取求和尾数
01 下位机点位号,下位机一台主机可带两路探头,分别称点位1和点位2
00 06 命令项 现在表示获取累计流量;
A5 为校验,前面所有字节(包括包头)之和的尾数
下位机回应数据包:FE 47 XX XX 00 XX 01 00 06 xx xx xx xx xx xx xx xx (8字节数据) xx ;
顺序意义如下
FE 单字节 开头固定为FE;
47 单字节 意为“G”47,固定,回应发送;
XX XX 双字节,数据包长度(可以不关注);
00 单字节 为下位机地址;
XX 为包头—地址的效验,效验全部为取求和尾数
01下位机点位号
00 06 命令项回返
xx xx xx xx xx xx xx xx (8字节累计流量数据)格式为标准双精度浮点数
xx 最后这一字节为校验,即前面所有字节之和的尾数。
如果下位机收到解析错误的数据则返回
FE (固定)45(固定) 07 00(数据包长度) 00 (下位机地址位) 4A(包头效验位) 94(整包效验位)
波特率9600 8N1 奇偶效验;
想在WINCC上读的就是累计流量,串口通信正常,但KEPSERVEREX设置才弄懂授权这一步,其它的都没有弄懂,望用过和懂得的大侠前辈高人出来指点迷经,谢谢大家!!!