我有一个智能电表,通过 RS485 串行电缆连接到电脑。该硬件有一个软件,您可以读取其内部寄存器并在软件上查看它们。当我试图通过软件读取仪表的寄存器时,我运行了一个串行端口监控软件来嗅探正在发送和接收到仪表的字节。
这是嗅探结果:
Port opened
Request: 9/18/2012 7:04:04 PM.28064
2F 3F 21 0D 0A /?!..
Answer: 9/18/2012 7:04:04 PM.70264 (+0.4219 seconds)
2F 45 4C 53 35 5C 40 56 38 2E 32 30 20 20 20 20 /ELS5\@V8.20
20 20 20 20 20 0D 0A ..
Request: 9/18/2012 7:04:05 PM.53064 (+0.0156 seconds)
06 30 35 30 0D 0A .050..
Answer: 9/18/2012 7:04:05 PM.06264 (+0.5313 seconds)
02 43 2E 31 2E 30 28 33 35 30 36 34 32 36 37 29 .C.1.0(35064267)
0D 0A 30 2E 30 2E 30 28 33 35 30 36 34 32 36 37 ..0.0.0(35064267
30 30 30 30 30 30 30 30 20 20 20 20 20 20 20 20 00000000
29 0D 0A 30 2E 39 2E 31 28 31 39 30 32 33 37 29 )..0.9.1(190237)
0D 0A 30 2E 39 2E 32 28 31 38 30 39 31 32 29 0D ..0.9.2(180912).
0A 31 2E 38 2E 30 28 30 30 30 30 30 32 36 2A 6B .1.8.0(0000026*k
57 68 29 0D 0A 31 2E 38 2E 30 2A 30 31 28 30 30 Wh)..1.8.0*01(00
30 30 30 32 36 2A 6B 57 68 29 0D 0A 31 2E 38 2E 00026*kWh)..1.8.
30 2A 30 32 28 30 30 30 30 30 32 36 2A 6B 57 68 0*02(0000026*kWh
29 0D 0A 31 2E 38 2E 30 2A 30 33 28 30 30 30 30 )..1.8.0*03(0000
30 32 36 2A 6B 57 68 29 0D 0A 31 2E 38 2E 30 2A 026*kWh)..1.8.0*
30 34 28 30 30 30 30 30 30 30 2A 6B 57 68 29 0D 04(0000000*kWh).
0A 32 2E 38 2E 30 28 30 30 30 30 30 30 30 2A 6B .2.8.0(0000000*k
57 68 29 0D 0A 32 2E 38 2E 30 2A 30 31 28 30 30 Wh)..2.8.0*01(00
30 30 30 30 30 2A 6B 57 68 29 0D 0A 32 2E 38 2E 00000*kWh)..2.8.
30 2A 30 32 28 30 30 30 30 30 30 30 2A 6B 57 68 0*02(0000000*kWh
29 0D 0A 32 2E 38 2E 30 2A 30 33 28 30 30 30 30 )..2.8.0*03(0000
30 30 30 2A 6B 57 68 29 0D 0A 32 2E 38 2E 30 2A 000*kWh)..2.8.0*
30 34 28 30 30 30 30 30 30 30 2A 6B 57 68 29 0D 04(0000000*kWh).
0A 35 2E 38 2E 30 28 30 30 30 30 30 32 36 2A 6B .5.8.0(0000026*k
76 61 72 68 29 0D 0A 35 2E 38 2E 30 2A 30 31 28 varh)..5.8.0*01(
30 30 30 30 30 32 36 2A 6B 76 61 72 68 29 0D 0A 0000026*kvarh)..
35 2E 38 2E 30 2A 30 32 28 30 30 30 30 30 32 36 5.8.0*02(0000026
2A 6B 76 61 72 68 29 0D 0A 35 2E 38 2E 30 2A 30 *kvarh)..5.8.0*0
33 28 30 30 30 30 30 32 36 2A 6B 76 61 72 68 29 3(0000026*kvarh)
0D 0A 35 2E 38 2E 30 2A 30 34 28 30 30 30 30 30 ..5.8.0*04(00000
30 30 2A 6B 76 61 72 68 29 0D 0A 36 2E 38 2E 30 00*kvarh)..6.8.0
28 30 30 30 30 30 30 30 2A 6B 76 61 72 68 29 0D (0000000*kvarh).
0A 36 2E 38 2E 30 2A 30 31 28 30 30 30 30 30 30 .6.8.0*01(000000
30 2A 6B 76 61 72 68 29 0D 0A 36 2E 38 2E 30 2A 0*kvarh)..6.8.0*
30 32 28 30 30 30 30 30 30 30 2A 6B 76 61 72 68 02(0000000*kvarh
29 0D 0A 36 2E 38 2E 30 2A 30 33 28 30 30 30 30 )..6.8.0*03(0000
30 30 30 2A 6B 76 61 72 68 29 0D 0A 36 2E 38 2E 000*kvarh)..6.8.
30 2A 30 34 28 30 30 30 30 30 30 30 2A 6B 76 61 0*04(0000000*kva
72 68 29 0D 0A 37 2E 38 2E 30 28 30 30 30 30 30 rh)..7.8.0(00000
30 30 2A 6B 76 61 72 68 29 0D 0A 37 2E 38 2E 30 00*kvarh)..7.8.0
2A 30 31 28 30 30 30 30 30 30 30 2A 6B 76 61 72 *01(0000000*kvar
68 29 0D 0A 37 2E 38 2E 30 2A 30 32 28 30 30 30 h)..7.8.0*02(000
30 30 30 30 2A 6B 76 61 72 68 29 0D 0A 37 2E 38 0000*kvarh)..7.8
2E 30 2A 30 33 28 30 30 30 30 30 30 30 2A 6B 76 .0*03(0000000*kv
61 72 68 29 0D 0A 37 2E 38 2E 30 2A 30 34 28 30 arh)..7.8.0*04(0
30 30 30 30 30 30 2A 6B 76 61 72 68 29 0D 0A 39 000000*kvarh)..9
2E 36 2E 31 28 30 30 2E 30 30 2A 6B 56 41 29 28 .6.1(00.00*kVA)(
30 30 30 30 30 30 30 30 30 30 29 0D 0A 39 2E 36 0000000000)..9.6
2E 31 2A 30 31 28 30 30 2E 30 30 2A 6B 56 41 29 .1*01(00.00*kVA)
28 30 30 30 30 30 30 30 30 30 30 29 0D 0A 39 2E (0000000000)..9.
36 2E 31 2A 30 32 28 30 30 2E 30 30 2A 6B 56 41 6.1*02(00.00*kVA
29 28 30 30 30 30 30 30 30 30 30 30 29 0D 0A 39 )(0000000000)..9
2E 36 2E 31 2A 30 33 28 30 30 2E 37 34 2A 6B 56 .6.1*03(00.74*kV
41 29 28 30 34 30 35 31 32 30 30 30 30 29 0D 0A A)(0405120000)..
39 2E 36 2E 31 2A 30 34 28 30 30 2E 30 34 2A 6B 9.6.1*04(00.04*k
56 41 29 28 33 30 30 34 31 32 32 33 30 30 29 0D VA)(3004122300).
0A 46 2E 46 28 30 30 30 30 30 30 30 30 29 0D 0A .F.F(00000000)..
46 2E 46 2E 31 28 30 30 30 31 30 30 30 30 29 0D F.F.1(00010000).
0A 46 2E 46 2E 32 28 30 30 30 30 30 30 30 30 29 .F.F.2(00000000)
0D 0A 46 2E 46 2E 33 28 30 30 30 30 30 30 30 30 ..F.F.3(00000000
29 0D 0A 43 2E 33 2E 30 28 30 30 30 30 30 30 30 )..C.3.0(0000000
30 29 0D 0A 43 2E 35 36 28 30 30 33 37 32 35 29 0)..C.56(003725)
0D 0A 21 0D 0A 03 6F ..!...o
Port closed
我的问题:是否可以将请求字节(在上面找到)发送到仪表,然后获取答案字节并将它们保存在电脑上?基本上,是否可以通过发送十六进制字节并接收答案来与仪表通信?还是在发送十六进制字节之前还需要执行一些其他步骤?
注意:我的目标是开发一个基本的和更简单的软件作为仪表随附的软件。