CN107346255A - 一种电能表系统升级方法及电能表系统 - Google Patents
一种电能表系统升级方法及电能表系统 Download PDFInfo
- Publication number
- CN107346255A CN107346255A CN201710353782.0A CN201710353782A CN107346255A CN 107346255 A CN107346255 A CN 107346255A CN 201710353782 A CN201710353782 A CN 201710353782A CN 107346255 A CN107346255 A CN 107346255A
- Authority
- CN
- China
- Prior art keywords
- program module
- electric energy
- energy meter
- meter system
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于程序模块化升级的电能表系统构建方法及电能表系统。现有电能表系统存在程序无法及时、频繁更新的缺陷。本发明包括如下步骤:电能表通电时,电能表系统的编译器自动编译到各个程序模块宏定义,通过链接脚本,将程序模块中每个对外函数的名字及地址信息定位到程序模块编程首地址的表格中;电能表系统根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级,从而完成电能表系统的升级。本发明只需要对相应程序模块进行跟踪和维护升级,就能满足客户的多样化需求及其后续变化。
Description
技术领域
本发明涉及电能表系统技术领域,尤其是一种电能表系统升级方法及利用该方法形成的电能表系统。
背景技术
现有的电能表系统中,在一个项目或产品比较成熟之后,程序往往没有大规模的升级,也即构建的系统架构、程序平台、调试框架、质量跟踪监控方案以及其他大部分程序模块往往是一致且长期不易变的。然而,在外部技术发展的推动下,客户的多样化需求会产生变化,这就要求程序能够得到及时、频繁的更新。目前电能表的通信方式分为:红外、RS485、电力载波等,它们的缺点:速率低、容易受干扰;例如:一个电能表固件256Kbytes,在1200波特率的传输速率下,需要传输约36分钟,而且在传输过程中不能受到感染无法使电能表程序能够及时、频繁的更新,无法满足客户的多样化需求及其后续变化。
发明内容
本发明所要解决的技术问题是现有电能表系统存在程序无法及时、频繁更新的缺陷,提供一种基于程序模块化升级的电能表系统升级方法,其使程序能够及时、频繁的更新,以满足客户的多样化需求及其后续变化。
为解决上述技术问题,本发明采用的技术方案为:一种电能表系统的升级方法,包括:
电能表通电时,电能表系统的编译器自动编译到各个程序模块宏定义,通过链接脚本,将程序模块中每个对外函数的名字及地址信息定位到程序模块编程首地址的表格中;
电能表系统根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级,从而完成电能表系统的升级。
进一步地,在各个程序模块的编程首地址处生成一个表格,表格中的一个单元用于存储一个对应的程序模块对外函数的名字及地址信息。
更进一步地,所述表格的单元结构包含至少两项,第一项为一个用于指向对外函数名字的指针,第二项为函数指针,指向对外函数的地址。
进一步地,为每个程序模块提供升级方法,并且升级方法的描述放在表格中。本发明中的程序模块为计量模块、液晶显示模块等,一个程序模块实现电能表的同一个业务功能,电能表的业务功能数量对应相应数量的程序模块。
进一步地,在程序模块的每个对外函数的首处,声明一段宏定义用于提取该对外函数的名字及地址信息。
进一步地,在电能表系统中,建立一张包含各程序模块编程首地址的表,通过该表将各个程序模块的对外函数串联成链表。
进一步地,每个程序模块都有固定的起始地址,每个程序模块预设相应的内存升级空间,以满足因程序模块更新而导致相应的bin增大或者减小的要求。
本发明还提供一种利用上述电能表系统升级方法形成的电能表系统,其包括:
多个程序模块:根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级;
编译器:电能表通电时,编译器自动编译到各个程序模块宏定义,通过链接脚本,将程序模块中每个对外函数的名字及地址信息定位到程序模块编程首地址的表格中。
进一步地,多个程序模块还包括:在各个程序模块的编程首地址处生成一个表格,表格中的一个单元用于存储一个对应的程序模块对外函数的名字及地址信息。
进一步地,还包括:串联模块:一张包含各程序模块编程首地址的表,通过该表将各个程序模块的对外函数串联成链表。
与现有技术相比,本发明的优点在于:在各个程序模块的编程首地址处生成了一张包括所有程序模块对外函数名字和地址信息的表格,在升级对外函数时通过宏定义方式,使编译器编译到宏定义时能够通过链接脚本将该段的对外函数名字和地址信息定位到所属程序模块的编程首地址处的表格中,同时在电能表系统中建立了一张包含各程序模块编程首地址的表,将各个程序模块的对外函数串联成链表,在通电时,电能表系统根据程序模块对外函数的名字及地址信息调用对外函数,完成程序模块的升级,这样只需要对相应程序模块进行跟踪和维护升级,就能满足客户的多样化需求及其后续变化。
附图说明
图1为本发明升级方法的流程图。
具体实施方式
以下结合说明书附图和具体实施方式对本发明作进一步详细描述。
实施例一
图1为本发明升级方法的流程图,如图1所示,本优选实施例为一种电能表系统的升级方法,包括如下具体步骤:
1)在电能表系统各个程序模块的编程首地址处生成一个表格,表格中的一个单元用于存储一个对应的程序模块对外函数的名字及地址信息;其中,每个程序模块都有固定的起始地址,由于程序模块更新,会导致生成的相应的bin增大或者减小,每个程序模块预设相应的内存升级空间;对外函数是指程序模块对外公开的操作方法(类似cpp中的public),程序模块可通过名字字符串从表格中获取到对外函数的入口地址,以此调用;所述表格的单元结构包含至少两项,第一项为一个指针用于指向对外函数的名字,第二项为函数指针,指向对外函数的地址。
2)在程序模块每个对外函数的首处,声明一段宏定义用于提取该对外函数的名字及地址信息。
3)电能表通电时,编译器自动编译到各个程序模块宏定义时,通过链接脚本,将程序模块每个对外函数的名字及地址信息定位到程序模块的编程首地址的表格中。
4)在电能表系统中,建立一张包含各程序模块编程首地址的表,通过该表将各个程序模块的对外函数串联成链表。
5)电能表系统利用上述4)中所建立的表格,根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级,从而完成电能表系统的升级。
实施例二
一种利用实施例一所述电能表系统升级方法形成的电能表系统,其包括多个程序模块、编译器和串联模块。
多个程序模块:在各个程序模块的编程首地址处生成一个表格,表格中的一个单元用于存储一个对应的程序模块对外函数的名字及地址信息。所述表格的单元结构包含至少两项,第一项为一个用于指向对外函数名字的指针,第二项为函数指针,指向对外函数的地址。在程序模块的每个对外函数的首处,声明一段宏定义用于提取该对外函数的名字及地址信息;每个程序模块都有固定的起始地址,每个程序模块预设相应的内存升级空间。
编译器:电能表通电时,编译器自动编译到各个程序模块宏定义,通过链接脚本,将程序模块中每个对外函数的名字及地址信息定位到程序模块编程首地址的表格中。
串联模块:一张包含各程序模块编程首地址的表,通过该表将各个程序模块的对外函数串联成链表。
电能表系统根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级,从而完成电能表系统的升级。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。对于本领域的技术人员而言,阅读上述说明后,各种变化和修正无疑将显而易见。因此,所附的权利要求书应看作是涵盖本发明的真实意图和范围的全部变化和修正。在权利要求书范围内任何和所有等价的范围与内容,都应认为仍属本发明的意图和范围内。
Claims (10)
1.一种电能表系统的升级方法,其特征在于:
电能表通电时,电能表系统的编译器自动编译到各个程序模块宏定义,通过链接脚本,将程序模块中每个对外函数的名字及地址信息定位到程序模块编程首地址的表格中;
电能表系统根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级,从而完成电能表系统的升级。
2.根据权利要求1所述的升级方法,其特征在于,在各个程序模块的编程首地址处生成一个表格,表格中的一个单元用于存储一个对应的程序模块对外函数的名字及地址信息。
3.根据权利要求2所述的升级方法,其特征在于,所述表格的单元结构包含至少两项,第一项为一个用于指向对外函数名字的指针,第二项为函数指针,指向对外函数的地址。
4.根据权利要求1-3任一项所述的升级方法,其特征在于,为每个程序模块提供升级方法,并且升级方法的描述放在表格中。
5.根据权利要求1所述的升级方法,其特征在于,在程序模块的每个对外函数的首处,声明一段宏定义用于提取该对外函数的名字及地址信息。
6.根据权利要求1所述的升级方法,其特征在于,在电能表系统中,建立一张包含各程序模块编程首地址的表,通过该表将各个程序模块的对外函数串联成链表。
7.根据权利要求1所述的升级方法,其特征在于,每个程序模块都有固定的起始地址,每个程序模块预设相应的内存升级空间。
8.一种电能表系统,其特征在于:
多个程序模块:根据程序模块对外函数名字及地址信息调用对外函数,完成程序模块的升级;
编译器:电能表通电时,编译器自动编译到各个程序模块宏定义,通过链接脚本,将程序模块中每个对外函数的名字及地址信息定位到程序模块编程首地址的表格中。
9.根据权利要求8所述的电能表系统,其特征于,所述多个程序模块还包括:
在各个程序模块的编程首地址处生成一个表格,表格中的一个单元用于存储一个对应的程序模块对外函数的名字及地址信息。
10.根据权利要求8所述的电能表系统,其特征于,还包括:
串联模块:一张包含各程序模块编程首地址的表,通过该表将各个程序模块的对外函数串联成链表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710353782.0A CN107346255A (zh) | 2017-05-18 | 2017-05-18 | 一种电能表系统升级方法及电能表系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710353782.0A CN107346255A (zh) | 2017-05-18 | 2017-05-18 | 一种电能表系统升级方法及电能表系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107346255A true CN107346255A (zh) | 2017-11-14 |
Family
ID=60253334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710353782.0A Pending CN107346255A (zh) | 2017-05-18 | 2017-05-18 | 一种电能表系统升级方法及电能表系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107346255A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111562952A (zh) * | 2020-07-16 | 2020-08-21 | 南方电网数字电网研究院有限公司 | 双芯智能电表管理单元的动态装载方法、动态装载装置 |
CN113190257A (zh) * | 2021-04-30 | 2021-07-30 | 深圳市华沃表计科技有限公司 | 智能电能表远程升级方法 |
CN113204367A (zh) * | 2021-06-10 | 2021-08-03 | 华立科技股份有限公司 | 一种功能升级方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120135722A1 (en) * | 2010-10-28 | 2012-05-31 | John Yue Jun Jiang | Local mobile number for a foreign resident mobile |
CN102665196A (zh) * | 2012-04-28 | 2012-09-12 | 清华大学 | 一种无线传感器网络的在线渐进式程序更新方法 |
CN105224309A (zh) * | 2015-09-02 | 2016-01-06 | 青岛中星微电子有限公司 | 一种调取函数的方法和装置 |
CN105930193A (zh) * | 2016-05-05 | 2016-09-07 | 国网重庆市电力公司电力科学研究院 | 一种基于操作系统的电能表软件在线升级方法及系统 |
WO2017067230A1 (zh) * | 2015-10-21 | 2017-04-27 | 中兴通讯股份有限公司 | 一种基于微服务架构扩展软件功能的方法及装置 |
-
2017
- 2017-05-18 CN CN201710353782.0A patent/CN107346255A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120135722A1 (en) * | 2010-10-28 | 2012-05-31 | John Yue Jun Jiang | Local mobile number for a foreign resident mobile |
CN102665196A (zh) * | 2012-04-28 | 2012-09-12 | 清华大学 | 一种无线传感器网络的在线渐进式程序更新方法 |
CN105224309A (zh) * | 2015-09-02 | 2016-01-06 | 青岛中星微电子有限公司 | 一种调取函数的方法和装置 |
WO2017067230A1 (zh) * | 2015-10-21 | 2017-04-27 | 中兴通讯股份有限公司 | 一种基于微服务架构扩展软件功能的方法及装置 |
CN105930193A (zh) * | 2016-05-05 | 2016-09-07 | 国网重庆市电力公司电力科学研究院 | 一种基于操作系统的电能表软件在线升级方法及系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111562952A (zh) * | 2020-07-16 | 2020-08-21 | 南方电网数字电网研究院有限公司 | 双芯智能电表管理单元的动态装载方法、动态装载装置 |
CN111562952B (zh) * | 2020-07-16 | 2021-03-16 | 南方电网数字电网研究院有限公司 | 双芯智能电表管理单元的动态装载方法、动态装载装置 |
CN113190257A (zh) * | 2021-04-30 | 2021-07-30 | 深圳市华沃表计科技有限公司 | 智能电能表远程升级方法 |
CN113204367A (zh) * | 2021-06-10 | 2021-08-03 | 华立科技股份有限公司 | 一种功能升级方法、装置、电子设备和存储介质 |
CN113204367B (zh) * | 2021-06-10 | 2023-04-14 | 华立科技股份有限公司 | 一种功能升级方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190012575A1 (en) | Method, apparatus and system for updating deep learning model | |
CN106648826B (zh) | 用于热迁移虚拟机的方法和装置 | |
CN105022630B (zh) | 一种组件管理系统及组件管理方法 | |
CN109446570B (zh) | 业务流程展示方法、装置、计算机设备以及存储介质 | |
CN103473141A (zh) | 一种带外查看及修改bios设置选项的方法 | |
CN103049383A (zh) | 一种开发测试云系统 | |
CN106446019B (zh) | 一种软件功能处理方法和装置 | |
CN109543200A (zh) | 一种文本翻译方法及装置 | |
CN107346255A (zh) | 一种电能表系统升级方法及电能表系统 | |
CN107733985A (zh) | 一种云计算系统功能组件部署方法及装置 | |
CN104166570B (zh) | 一种在线更新文件的方法、设备及系统 | |
CN112486491A (zh) | 页面生成方法、装置、计算机设备及存储介质 | |
CN109522089A (zh) | 基于虚拟化环境的分布式视图像识别方法 | |
CN109739526A (zh) | 代码更新方法和装置 | |
CN110084380A (zh) | 一种迭代训练方法、设备、系统及介质 | |
CN109446064A (zh) | 一种基于浏览器的交互测试方法 | |
CN108255735A (zh) | 关联环境测试方法、电子装置及计算机可读存储介质 | |
CN106293687A (zh) | 一种打包流程的控制方法,及装置 | |
CN110334001A (zh) | 一种批量自动生成回声测试的方法和装置 | |
CN106169961A (zh) | 基于人工智能的神经网络的网络参数处理方法及装置 | |
CN108536434A (zh) | 一种基于高级程序设计语言实现钩子函数的方法及装置 | |
CN106933763A (zh) | 数据处理方法及装置 | |
CN104778044B (zh) | 触摸屏手势事件流分发的方法及装置 | |
CN112529027A (zh) | 数据处理方法、客户端、装置及计算机可读存储介质 | |
CN113626688B (zh) | 基于软件定义的智能化医疗数据采集方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171114 |