首页> 中国专利> 用户用电信息采集终端远程升级方法

用户用电信息采集终端远程升级方法

摘要

本发明涉及用户用电信息采集终端远程升级方法,包括:主站选择一采集终端为当前升级终端;主站向当前升级终端发送各帧文件块、以及单帧校验数据;当前升级终端校验各帧文件块;主站向当前升级终端发送整文件校验数据;当前升级终端校验整个程序升级文件;当前升级终端升级处理结束;主站判断是否所有采集终端升级处理结束,若否则选择下一采集终端为当前升级终端并转至第二步,若是则远程升级结束。本发明可实现对采集终端的远程升级维护,彻底克服传统升级方法的缺陷。

著录项

  • 公开/公告号CN103530153A

    专利类型发明专利

  • 公开/公告日2014-01-22

    原文格式PDF

  • 申请/专利权人 光一科技股份有限公司;

    申请/专利号CN201310471577.6

  • 发明设计人 高友会;仝开乐;周宇;张建培;

    申请日2013-10-11

  • 分类号G06F9/445;H04L29/08;

  • 代理机构南京苏科专利代理有限责任公司;

  • 代理人何朝旭

  • 地址 211103 江苏省南京市江宁区润麒路86号

  • 入库时间 2024-02-19 22:49:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-08-17

    授权

    授权

  • 2014-02-26

    实质审查的生效 IPC(主分类):G06F9/445 申请日:20131011

    实质审查的生效

  • 2014-01-22

    公开

    公开

说明书

技术领域

本发明涉及一种用户用电信息采集终端远程升级方法,可实现远程升级 维护终端设备。

背景技术

据申请人了解,用户用电信息采集系统可为国家电网“SG186工程”提供 用户实时/历史用电信息数据,也可为中低压配电网、农电网提供配电变压器、 公用变压器、农村综合变压器等的实时/历史数据及工况运行情况。用户用电 信息采集系统可通过已建成的电力通讯网,方便、快捷地提供实时/历史用电 信息,为国家电网公司加强自身工作并向客户提供优质用电服务提供数据支 撑。

用户用电信息采集系统通常包括散布在各采集点的采集终端,以及与采 集终端通信连接的主站服务器。在维护用户用电信息采集系统的过程中,常 因需求变更增加功能、解决现场运行问题、优化程序流程等原因,需要对各 采集终端实施升级维护操作。传统的升级方式为“人工本地升级”方式,即 由技术支持人员携带终端升级程序到采集终端现场进行本地升级。然而,由 于采集终端数量多、分布地域广、分散度高、野外运行环境差,这种传统的 升级方式无法满足批量处理、高时效性的要求,而且每次升级都会占用大量 的人力物力资源,增加了用户用电信息采集系统的运营成本。

发明内容

本发明所要解决的技术问题是:针对现有技术存在的问题,提出一种用 户用电信息采集终端远程升级方法,实现对采集终端的远程升级维护,彻底 克服传统升级方法的缺陷。

本发明解决其技术问题的技术方案如下:

一种用户用电信息采集终端远程升级方法,其特征是,包括以下步骤:

第一步、主站选择一采集终端为当前升级终端;

第二步、主站向当前升级终端按帧发送预先由整个程序升级文件分割而 成的各帧文件块、以及与各帧文件块对应的经单帧校验算法得出的单帧校验 数据;当前升级终端按所述单帧校验算法校验各帧文件块;

第三步、主站向当前升级终端发送与整个程序升级文件对应的经整文件 校验算法得出的整文件校验数据;当前升级终端按所述整文件校验算法校验 整个程序升级文件;

第四步、当前升级终端升级处理结束;主站判断是否所有采集终端升级 处理结束,若否则选择下一采集终端为当前升级终端并转至第二步,若是则 远程升级结束。

申请人在长期深入地实践研究中发现,虽然采集终端程序升级文件的大 小仅有数百KB至数MB,但是受电力通讯网的传输限制,无法将程序升级文件 一次性发送至采集终端,只能将程序升级文件分割成若干帧文件块,再逐帧 发送至采集终端。为确保这种发送方式的安全性和可靠性,申请人进一步研 究出先对每帧文件块执行校验,再对整个程序升级文件执行校验的技术手段, 以此来保证程序升级文件准确无误地发送至采集终端,避免数据被窃取和盗 用的可能性,最大程度地保护用电信息的安全。

本发明进一步完善的技术方案如下:

优选地,第二步中,针对各帧文件块的单帧校验算法具体过程如下:

S1.初始化:令变量W_CRC为16位二进制数,各位数值均为零;令数据 指针i=1;

S2.取变量W_CRC的左边8位并保存至变量W_CRC1;取变量W_CRC的右 边8位并保存至变量W_CRC2;

S3.读取当前帧文件块的第i字节数据,并将该数据与变量W_CRC2进行 异或运算,所得值为N;

S4.将密码表中的第N次序的数值与变量W_CRC1进行异或运算,所得值 保存至变量W_CRC;所述密码表由至少256个≥0x0且≤0xffff的十六进制数 值按预定次序组成;所述密码表的起始次序编号为零;

S5.令数据指针i=i+1,判断当前帧文件块是否读取完毕,若是则转至S6, 若否则转至S2;

S6.对变量W_CRC的数值取反,即得当前帧文件块的单帧校验数据。

优选地,第三步中,针对整个程序升级文件的整文件校验算法具体过程 如下:

T1.初始化:令变量W_CS为32位二进制数,各位数值均为零;令数据指 针j=1;

T2.读取程序升级文件的第i字节数据,并将该数据与变量W_CS做算术 和运算,所得值保存至变量W_CS;

T3.令数据指针j=j+1,判断程序升级文件是否读取完毕,若是则转至T4, 若否则转至T2;

T4.变量W_CS的数值即为整个程序升级文件的整文件校验数据。

以上的单帧校验算法和整文件校验算法是申请人经进一步深入实践研究 得出的专门适用于采集终端程序升级文件的校验算法,可进一步确保程序升 级文件的安全性和可靠性。

优选地,第二步的具体过程如下:

A1.初始化:令帧指针k=1,令帧重发次数n=0;

A2.主站向当前升级终端发送第k帧文件块,并发送与第k帧文件块对应 的经单帧校验算法得出的单帧校验数据;

A3.当前升级终端按所述单帧校验算法计算第k帧文件块的单帧校验数 据,并判断是否与收到的单帧校验数据相符;若相符则当前升级终端向主站 返回成功报文,主站记录当前升级终端已下载第k帧文件块,转至A4;若不 相符则当前升级终端向主站返回重发请求,主站令帧重发次数n=n+1,并判断 n是否大于预定数值,若是则主站记录当前升级终端第k帧文件块校验异常并 转至第四步,若否则转至A2;

A4.令帧指针k=k+1,主站判断是否所有帧文件块已发送完毕,若是则转 至第三步,若否则转至A2。

上述优选技术方案是申请人经进一步深入实践研究得出的,能有效确保 各帧文件块的安全性,能及时反馈升级异常的采集终端、便于有针对性的及 时检修,还能记录采集终端的下载进程、便于在通信条件较差时实现断点续 传。

优选地,第三步的具体过程如下:

B1.主站向当前升级终端发送与整个程序升级文件对应的经整文件校验 算法得出的整文件校验数据;

B2.当前升级终端按所述整文件校验算法计算整个程序升级文件的整文 件校验数据,并判断是否与收到的整文件校验数据相符;若相符则转至B3; 若不相符则主站记录当前升级终端整文件校验异常并转至第四步;

B3.当前升级终端执行复位重启动作,并将程序升级文件从临时存储区域 转移至正式应用程序区域,然后按所述整文件校验算法计算整个程序升级文 件的整文件校验数据,并判断是否与收到的整文件校验数据相符;若相符则 主站记录当前升级终端升级成功,转至第四步;若不相符则主站记录当前升 级终端文件转移异常并转至第四步。

上述优选技术方案是申请人经进一步深入实践研究得出的,能有效确保 整个程序升级文件的安全性,能及时反馈升级异常的采集终端、便于有针对 性的及时检修。

优选地,还包括位于第一步之前的主站准备步骤,所述主站准备步骤的 具体过程如下:

C1.查询采集终端程序版本,将需要升级的采集终端列入升级终端清单;

C2.选择程序升级文件,按所述整文件校验算法得出整文件校验数据;将 程序升级文件分割为若干帧文件块,并按所述单帧校验算法得出各帧文件块 的单帧校验数据;

C3.将升级终端清单中的采集终端通信信道切换至升级信道;转至第一 步;

所述第一步的具体过程为:主站在升级终端清单中选择一采集终端为当 前升级终端;

还包括位于第四步之后的主站后续处理步骤,所述主站后续处理步骤的 具体过程如下:查询升级终端清单中各采集终端程序版本,并与本次程序升 级文件的版本对比,将版本对比不一致的采集终端状态记录为升级状态异常, 将版本对比一致的采集终端通信信道切换至信息采集信道。

上述优选技术方案是申请人经进一步深入实践研究得出的,能使整个远 程升级过程自动化、流程化处理,从而进一步大幅减少设备运行维护人员的 工作量,提高采集终端远程升级的工作效率。

附图说明

图1为本发明实施例的主体流程示意图。

具体实施方式

下面参照附图并结合实施例对本发明作进一步详细描述。但是本发明不 限于所给出的例子。

实施例

如图1所示,本实施例的用户用电信息采集终端远程升级方法,包括以 下步骤:

主站准备步骤:

C1.查询采集终端程序版本,将需要升级的采集终端列入升级终端清单;

C2.选择程序升级文件,按所述整文件校验算法得出整文件校验数据;将 程序升级文件分割为若干帧文件块,并按所述单帧校验算法得出各帧文件块 的单帧校验数据;

C3.将升级终端清单中的采集终端通信信道切换至升级信道;转至第一 步。

第一步、主站在升级终端清单中选择一采集终端为当前升级终端。

第二步、主站向当前升级终端按帧发送预先由整个程序升级文件分割而 成的各帧文件块、以及与各帧文件块对应的经单帧校验算法得出的单帧校验 数据;当前升级终端按所述单帧校验算法校验各帧文件块;

具体过程如下:

A1.初始化:令帧指针k=1,令帧重发次数n=0;

A2.主站向当前升级终端发送第k帧文件块,并发送与第k帧文件块对应 的经单帧校验算法得出的单帧校验数据;

A3.当前升级终端按所述单帧校验算法计算第k帧文件块的单帧校验数 据,并判断是否与收到的单帧校验数据相符;若相符则当前升级终端向主站 返回成功报文,主站记录当前升级终端已下载第k帧文件块,转至A4;若不 相符则当前升级终端向主站返回重发请求,主站令帧重发次数n=n+1,并判断 n是否大于预定数值,若是则主站记录当前升级终端第k帧文件块校验异常并 转至第四步,若否则转至A2;

A4.令帧指针k=k+1,主站判断是否所有帧文件块已发送完毕,若是则转 至第三步,若否则转至A2。

第三步、主站向当前升级终端发送与整个程序升级文件对应的经整文件 校验算法得出的整文件校验数据;当前升级终端按所述整文件校验算法校验 整个程序升级文件;

具体过程如下:

B1.主站向当前升级终端发送与整个程序升级文件对应的经整文件校验 算法得出的整文件校验数据;

B2.当前升级终端按所述整文件校验算法计算整个程序升级文件的整文 件校验数据,并判断是否与收到的整文件校验数据相符;若相符则转至B3; 若不相符则主站记录当前升级终端整文件校验异常并转至第四步;

B3.当前升级终端执行复位重启动作,并将程序升级文件从临时存储区域 转移至正式应用程序区域,然后按所述整文件校验算法计算整个程序升级文 件的整文件校验数据,并判断是否与收到的整文件校验数据相符;若相符则 主站记录当前升级终端升级成功,转至第四步;若不相符则主站记录当前升 级终端文件转移异常并转至第四步。

第四步、当前升级终端升级处理结束;主站判断是否所有采集终端升级 处理结束,若否则选择下一采集终端为当前升级终端并转至第二步,若是则 远程升级结束。

主站后续处理步骤:查询升级终端清单中各采集终端程序版本,并与本 次程序升级文件的版本对比,将版本对比不一致的采集终端状态记录为升级 状态异常,将版本对比一致的采集终端通信信道切换至信息采集信道。

其中,第二步中,针对各帧文件块的单帧校验算法具体过程如下:

S1.初始化:令变量W_CRC为16位二进制数,各位数值均为零;令数据 指针i=1;

S2.取变量W_CRC的左边8位并保存至变量W_CRC1;取变量W_CRC的右边 8位并保存至变量W_CRC2;

S3.读取当前帧文件块的第i字节数据,并将该数据与变量W_CRC2进行 异或运算,所得值为N;

S4.将密码表中的第N次序的数值与变量W_CRC1进行异或运算,所得值 保存至变量W_CRC;密码表由至少256个≥0x0且≤0xffff的十六进制数值按 预定次序组成;密码表的起始次序编号为零;

S5.令数据指针i=i+1,判断当前帧文件块是否读取完毕,若是则转至S6, 若否则转至S2;

S6.对变量W_CRC的数值取反,即得当前帧文件块的单帧校验数据。

为便于理解单帧校验算法,举一应用示例:

某帧文件块含两字节数据,第1字节数据为10110011,第2字节数据为 01011010。左移为逻辑左移,右移为逻辑右移。

密码表如下表所示,含有256个十六进制数值,次序也以十六进制数值 表示:

次序 00 01 02 03 04 05 06 07 08 09 数值 0x0000 0x365e 0x6cbc 0x5ae2 0xd978 0xef26 0xb5c4 0x839a 0xff89 0xc9d7 次序 0A 0B 0C 0D 0E 0F 10 11 12 13 数值 0x9335 0xa56b 0x26f1 0x10af 0x4a4d 0x7c13 0xb26b 0x8435 0xded7 0xe889 次序 14 15 16 17 18 19 1A 1B 1C 1D 数值 0x6b13 0x5d4d 0x07af 0x31f1 0x4de2 0x7bbc 0x215e 0x1700 0x949a 0xa2c4 次序 1E 1F 20 21 22 23 24 25 26 27 数值 0xf826 0xce78 0x29af 0x1ff1 0x4513 0x734d 0xf0d7 0xc689 0x9c6b 0xaa35 次序 28 29 2A 2B 2C 2D 2E 2F 30 31 数值 0xd626 0xe078 0xba9a 0x8cc4 0x0f5e 0x3900 0x63e2 0x55bc 0x9bc4 0xad9a 次序 32 33 34 35 36 37 38 39 3A 3B 数值 0xf778 0xc126 0x42bc 0x74e2 0x2e00 0x185e 0x644d 0x5213 0x08f1 0x3eaf 次序 3C 3D 3E 3F 40 41 42 43 44 45 数值 0xbd35 0x8b6b 0xd189 0xe7d7 0x535e 0x6500 0x3fe2 0x09bc 0x8a26 0xbc78 次序 46 47 48 49 4A 4B 4C 4D 4E 4F 数值 0xe69a 0xd0c4 0xacd7 0x9a89 0xc06b 0xf635 0x75af 0x43f1 0x1913 0x2f4d 次序 50 51 52 53 54 55 56 57 58 59 数值 0xe135 0xd76b 0x8d89 0xbbd7 0x384d 0x0e13 0x54f1 0x62af 0x1ebc 0x28e2 次序 5A 5B 5C 5D 5E 5F 60 61 62 63 数值 0x7200 0x445e 0xc7c4 0xf19a 0xab78 0x9d26 0x7af1 0x4caf 0x164d 0x2013 次序 64 65 66 67 68 69 6A 6B 6C 6D 数值 0xa389 0x95d7 0xcf35 0xf96b 0x8578 0xb326 0xe9c4 0xdf9a 0x5c00 0x6a5e 次序 6E 6F 70 71 72 73 74 75 76 77 数值 0x30bc 0x06e2 0xc89a 0xfec4 0xa426 0x9278 0x11e2 0x27bc 0x7d5e 0x4b00 次序 78 79 7A 7B 7C 7D 7E 7F 80 81 数值 0x3713 0x014d 0x5baf 0x6df1 0xee6b 0xd835 0x82d7 0xb489 0xa6bc 0x90e2 次序 82 83 84 85 86 87 88 89 8A 8B 数值 0xca00 0xfc5e 0x7fc4 0x499a 0x1378 0x2526 0x5935 0x6f6b 0x3589 0x03d7 次序 8C 8D 8E 8F 90 91 92 93 94 95 数值 0x804d 0xb613 0xecf1 0xdaaf 0x14d7 0x2289 0x786b 0x4e35 0xcdaf 0xfbf1 次序 96 97 98 99 9A 9B 9C 9D 9E 9F 数值 0xa113 0x974d 0xeb5e 0xdd00 0x87e2 0xb1bc 0x3226 0x0478 0x5e9a 0x68c4 次序 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 数值 0x8f13 0xb94d 0xe3af 0xd5f1 0x566b 0x6035 0x3ad7 0x0c89 0x709a 0x46c4 次序 AA AB AC AD AE AF B0 B1 B2 B3 数值 0x1c26 0x2a78 0xa9e2 0x9fbc 0xc55e 0xf300 0x3d78 0x0b26 0x51c4 0x679a 次序 B4 B5 B6 B7 B8 B9 BA BB BC BD 数值 0xe400 0xd25e 0x88bc 0xbee2 0xc2f1 0xf4af 0xae4d 0x9813 0x1b89 0x2dd7 次序 BE BF C0 C1 C2 C3 C4 C5 C6 C7 数值 0x7735 0x416b 0xf5e2 0xc3bc 0x995e 0xaf00 0x2c9a 0x1ac4 0x4026 0x7678 次序 C8 C9 CA CB CC CD CE CF D0 D1 数值 0x0a6b 0x3c35 0x66d7 0x5089 0xd313 0xe54d 0xbfaf 0x89f1 0x4789 0x71d7 次序 D2 D3 D4 D5 D6 D7 D8 D9 DA DB 数值 0x2b35 0x1d6b 0x9ef1 0xa8af 0xf24d 0xc413 0xb800 0x8e5e 0xd4bc 0xe2e2 次序 DC DD DE DF E0 E1 E2 E3 E4 E5 数值 0x6178 0x5726 0x0dc4 0x3b9a 0xdc4d 0xea13 0xb0f1 0x86af 0x0535 0x336b

次序 E6 E7 E8 E9 EA EB EC ED EE EF 数值 0x6989 0x5fd7 0x23c4 0x159a 0x4f78 0x7926 0xfabc 0xcce2 0x9600 0xa05e 次序 F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 数值 0x6e26 0x5878 0x029a 0x34c4 0xb75e 0x8100 0xdbe2 0xedbc 0x91af 0xa7f1 次序 FA FB FC FD FE FF         数值 0xfd13 0xcb4d 0x48d7 0x7e89 0x246b 0x1235        

该帧文件块的单帧校验数据计算过程如下:

(1)执行S1.变量W_CR=00000000 00000000;i=1;

(2)执行S2.变量W_CRC1=00000000 00000000,变量W_CRC2=00000000 00000000;

(3)执行S3.当前帧文件块的第1字节数据=10110011,即00000000 10110011,将该数据与变量W_CRC2进行异或运算,所得值N=00000000 10110011=0x00B3;

(4)执行S4.密码表中第0x00B3次序的数值为0x679a=01100111 10011010,将该数值与变量W_CRC1进行异或运算,所得值=01100111 10011010,保存,即变量W_CRC=01100111 10011010;

(5)执行S5.i=i+1=2,当前帧文件块尚未读取完毕,转至S2;

(6)执行S2.变量W_CRC1=00000000 01100111(0x0067),变量 W_CRC2=00000000 10011010(0x009a);

(7)执行S3.当前帧文件块的第2字节数据=01011010,即00000000 01011010,将该数据与变量W_CRC2进行异或运算,所得值N=00000000 11000000=0x00C0;

(8)执行S4.密码表中第0x00C0次序的数值为0xf5e2=11110101 11100010,将该数值与变量W_CRC1进行异或运算,所得值=11110101 10000101,保存,即变量W_CRC=11110101 10000101;

(9)执行S5.i=i+1=3,当前帧文件块已读取完毕,转至S6;

(10)执行S6.对变量W_CRC的数值取反,即得当前帧文件块的单帧校验 数据=00001010 01111010。

此外,第三步中,针对整个程序升级文件的整文件校验算法具体过程如 下:

T1.初始化:令变量W_CS为32位二进制数,各位数值均为零;令数据指 针j=1;

T2.读取程序升级文件的第i字节数据,并将该数据与变量W_CS做算术 和运算,所得值保存至变量W_CS;

T3.令数据指针j=j+1,判断程序升级文件是否读取完毕,若是则转至T4, 若否则转至T2;

T4.变量W_CS的数值即为整个程序升级文件的整文件校验数据。

本实施例可应用于用户用电信息采集系统中,利用系统中已经建成的电 力通讯网络,在现有用电信息采集系统功能基础上,自动实现对现场终端设 备的远程升级维护工作,使现场终端设备实现远程增加功能、优化系统设计、 解决不断更新的用户需求,彻底克服传统升级方法的缺陷,节省大量人力物 力。

除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等 效变换形成的技术方案,均落在本发明要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号