CN105739996A - 一种嵌入式装置研发用户分步开发方法 - Google Patents

一种嵌入式装置研发用户分步开发方法 Download PDF

Info

Publication number
CN105739996A
CN105739996A CN201610120647.7A CN201610120647A CN105739996A CN 105739996 A CN105739996 A CN 105739996A CN 201610120647 A CN201610120647 A CN 201610120647A CN 105739996 A CN105739996 A CN 105739996A
Authority
CN
China
Prior art keywords
module
user
development
library
research
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
Application number
CN201610120647.7A
Other languages
English (en)
Inventor
陈宏君
刘克金
文继锋
冯亚东
李九虎
张磊
周磊
徐睿
王国栋
熊蕙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NR Electric Co Ltd
NR Engineering Co Ltd
Original Assignee
NR Electric Co Ltd
NR Engineering Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NR Electric Co Ltd, NR Engineering Co Ltd filed Critical NR Electric Co Ltd
Priority to CN201610120647.7A priority Critical patent/CN105739996A/zh
Publication of CN105739996A publication Critical patent/CN105739996A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种嵌入式装置研发用户分步开发方法:模块研发人员开发模块化元件,提供可重用的符号库。装置集成人员基于符号库搭建装置标准功能,以可视化的方式进行装置功能配置,并设计用户可配置数据,形成标准固件包。用户基于实际需求,进行装置逻辑编程、模块投退、定值整定,形成实际运行固件包。通过分步开发的方式,可显著提升装置的灵活性和可配置能力。

Description

一种嵌入式装置研发用户分步开发方法
技术领域
本发明公开了一种嵌入式装置研发用户分步开发方法,具体涉及研发-用户分步开发方法,属于嵌入式装置研发领域。
背景技术
控制保护产品正面向平台化、智能化、网络化等方向发展,这样要求嵌入式装置具备灵活的可配置能力和快速集成能力。基于手工编写C语言和配置文件的开发方式或传统的图形化编程方式,已经很难适应不同国家和地区用户需求。需提供可配置方法,支持用户二次开发,满足现场需求,而面向用户的可配置,要求风险可靠,避免用户进行程序编译等复杂度高的操作。另外随着研发分工的细化,装置程序的研发也需分步实现,模块研发人员侧重于单个功能模块的设计,以提高模块的研发质量和运行效率,装置集成研发人员基于可复用的模块库,搭建装置功能,并设计开放给用户的配置接口,以提高装置集成速度。故需设计一种研发-用户分步开发方法,满足嵌入式装置的分角色研发和可配置功能,本案由此产生。
发明内容
本发明的目的是实现嵌入式装置可分角色、分步骤开发。为了达成上述目的,本发明提供一种嵌入式装置研发用户分步开发方法,其特征在于通过模块研发、集成研发、用户二次开发3个步骤完成嵌入式装置功能研发和配置,包括如下步骤:
第一步:通过模块库编辑软件进行模块研发。将嵌入式装置功能进行模块化设计,采用图形化编程的方式,使用功能函数库搭建功能模块,并形成模块源代码文件和目标文件,形成模块库。模块库中包含变量定义头文件、二进制目标文件、模块符号定义文件、压缩的模块源图形化页面文件。
第二步:通过研发版配置软件进行装置功能集成研发。从模块库中挑选必需的功能模块,以图形化配置组合的方式搭建顶层功能,将各模块二进制目标文件和系统程序库链接为可执行程序。设计面向用户可配置数据,包括定值分组、模块投退、装置选型等内容,将模块库、可执行程序、配置页面数据、用户可配置数据打包为标准固件包。
第三步:用户通过用户版配置软件进行二次开发。用户基于标准固件包进行模块投退、逻辑编程、定值整定等用户级配置,形成新的固件包下载到装置运行调试。
其中,所述的第一步中,功能函数库按照IEC61131-3标准设计。通过提取模块图形化页面文件中的输入、输出块,形成模块符号定义文件。
其中,所述的第二步中,在调试模式下,双击模块实例,研发版配置软件可打开模块对应的源图形页面,可对其中的功能块函数管脚进行调试。可设置对用户可见的模块、页面、定值、配置选项等数据。
其中,所述的第三步中,用户版软件仅显示用户可见的模块、页面、定值、配置选项等数据,用户版本的逻辑编程数据处理是免编译的。
采用上述方案后,本发明具有如下有益效果:通过分级分步研发配置,满足了研发可视化编程配置、用户可视化配置需求。模块研发人员基于功能函数库以图形化方式开发功能模块,形成可重用模块库。装置集成人员基于模块库,快速搭建装置功能,形成标准固件包,提高了研发效率。用户基于标准固件包,按照实际需求,进行二次开发,通过免编译的可配置方式实现模块投退和逻辑编程,显著降低了用户级的开发配置风险,并大幅提高了装置灵活性。本方法已经在电力系统继电保护装置中进行了应用,基于本发明开发的装置已经销售到80多个国家,取得较好的效益。
附图说明
图1是本发明中嵌入式装置研发用户分步研发原理图。
具体实施方式
以下将结合附图,对本发明的技术方案进行详细说明,通过3个步骤实现:
1)以可视化编程方式开发单个功能模块。按照IEC61131-3标准,设计提供
一系列通用的、粒度小的功能函数库(例如逻辑函数、延时函数、滤波函数等),在模块库编辑软件中,可新建模块,设置模块的类型名,在模块节点创建若干可视化页面,选择功能函数释放到页面,通过连接线进行功能函数输入输出连线。通过输入块、输出块来定义模块的输入输出接口。分析模块的图形化页面数据,形成模块的变量定义H文件、函数定义C代码文件,并自动形成单个模块的Makefile文件,调用编译器将C文件编译为二进制OBJ文件,将模块添加到模块库中,模块库包括模块的H文件、OBJ文件、压缩的图形化页面文件、图形接口文件等,将上述文件归档到具备版本管理功能的clearcase服务器。
2)以可视化配置方式进行装置功能集成开发。通过研发版配置软件,集成
研发人员从clearcase服务器中下载合适版本的模块库,对模块库进行裁剪,挑选必需的功能模块、预留开放给用户可选模块,以图形化配置组合的方式搭建顶层功能。软件自动形成装置工程Makefile,调用编译器,将裁剪后的模块库对应的OBJ文件和系统程序库链接为可执行文件。
集成研发人员通过软件设计面向用户可配置数据,对装置定值进行分组,设置定值默认值和可见性。设置用户可见的页面、模块,设置用户可投退的模块列表,将模块库、可执行程序、配置页面数据、用户可配置数据打包为标准固件包。固件包是个二进制压缩文件,分文件头和数据区,文件头记录压缩的文件列表和大小和文件CRC,数据区存储压缩后的各个文件数据。
将标准固件包下载到装置,上电运行,在装置调试模式下,双击顶层元件实例,研发版本配置软件解压模块对应的图形化页面,将页面中功能块函数管脚对应的地址下发给装置,装置将对应地址的数据上送给研发版本配置软件,软件根据变量名的数据类型,在管脚附近显示变量的值。
3)用户在用户版配置软件中,基于标准固件包新建装置,显示用户可见的
页面。用户可挑选可见的图形化模块,进行逻辑编程,此过程不需要重新编译(标准固件包中的可执行程序已经链接相关模块的OBJ文件)。基于集成研发提供可配置数据,用户进行模块投退、定值整定等二次开发工作,形成新的固件包,下载到装置运行。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

Claims (7)

1.一种嵌入式装置研发用户分步开发方法,其特征在于,具体包括如下步骤:
步骤1:通过模块库编辑软件进行模块研发,将嵌入式装置功能进行模块化设计,采用图形化编程的方式,使用功能函数库搭建功能模块,并形成模块源代码文件和目标文件,形成模块库;
步骤2:通过研发版配置软件进行装置功能集成研发,从模块库中挑选必需的功能模块,以图形化配置组合的方式搭建顶层功能,将各模块二进制目标文件和系统程序库链接为可执行程序;
设计面向用户可配置数据,将模块库、可执行程序、配置页面数据、用户可配置数据打包为标准固件包;
步骤3:用户通过用户版配置软件进行二次开发,用户基于标准固件包进行用户级配置,形成新的固件包下载到装置运行调试。
2.如权利要求1所述的一种嵌入式装置研发用户分步开发方法,其特征在于:步骤1所述模块库中包含变量定义头文件、二进制目标文件、模块符号定义文件、压缩的源图形化页面文件。
3.如权利要求1所述的一种嵌入式装置研发用户分步开发方法,其特征在于:步骤2所述用户可配置数据包括定值分组、模块投退、装置选型。
4.如权利要求1所述的一种嵌入式装置研发用户分步开发方法,其特征在于:步骤3所述用户配置包括模块投退、逻辑编程、定值整定。
5.如权利要求1所述的一种嵌入式装置研发用户分步开发方法,其特征在于:所述的步骤1中,功能函数库按照IEC61131-3标准设计,通过提取模块图形化页面文件中的输入、输出块,形成模块符号定义文件。
6.如权利要求2所述的一种嵌入式装置研发用户分步开发方法,其特征在于:所述的步骤2中,可打开模块对应的源图形页面,可对其中的功能函数管脚进行调试。
7.如权利要求1所述的一种嵌入式装置研发用户分步开发方法,其特征在于:在所述步骤2中,可设置对用户可见的模块、页面、定值、配置选项数据。
CN201610120647.7A 2016-03-03 2016-03-03 一种嵌入式装置研发用户分步开发方法 Pending CN105739996A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610120647.7A CN105739996A (zh) 2016-03-03 2016-03-03 一种嵌入式装置研发用户分步开发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610120647.7A CN105739996A (zh) 2016-03-03 2016-03-03 一种嵌入式装置研发用户分步开发方法

Publications (1)

Publication Number Publication Date
CN105739996A true CN105739996A (zh) 2016-07-06

Family

ID=56249128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610120647.7A Pending CN105739996A (zh) 2016-03-03 2016-03-03 一种嵌入式装置研发用户分步开发方法

Country Status (1)

Country Link
CN (1) CN105739996A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775765A (zh) * 2017-01-12 2017-05-31 武汉图灵创客科技有限公司 图形化编程系统
CN108427567A (zh) * 2018-04-13 2018-08-21 南京南瑞继保电气有限公司 一种装置驱动包自动升级方法
CN108595169A (zh) * 2018-04-28 2018-09-28 南京南瑞继保电气有限公司 一种可视化编程方法、云端服务器及存储介质
CN109697065A (zh) * 2018-12-17 2019-04-30 蜂巢(武汉)微系统技术有限公司 一种嵌入式车载系统的可视化开发方法
WO2019218724A1 (zh) * 2018-05-18 2019-11-21 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法
CN116301754A (zh) * 2023-03-23 2023-06-23 深圳市启明智显科技有限公司 基于云服务器的嵌入式设备固件开发方法、装置及系统

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268228A1 (en) * 2003-06-19 2004-12-30 Microsoft Corporation Framework for creating modular web applications
CN102087597A (zh) * 2011-02-14 2011-06-08 浪潮通信信息系统有限公司 一种基于j2ee和构件集的可视化开发平台
US8065252B2 (en) * 2008-11-07 2011-11-22 Sysware Technology Co., Ltd. Method and system of knowledge component based engineering design
CN102385509A (zh) * 2010-08-31 2012-03-21 苏州大学 一种图形化嵌入式开发方法和平台
CN102855135A (zh) * 2012-04-23 2013-01-02 苏州大学 一种图形构件化传感网开发平台及方法
CN103399739A (zh) * 2013-07-19 2013-11-20 苏州大学 一种机器人程序开发平台的生成方法与系统
CN103885782A (zh) * 2014-04-03 2014-06-25 南京南瑞继保电气有限公司 一种可视化编程页面程序库函数封装重用方法
CN104778033A (zh) * 2014-01-09 2015-07-15 大唐电信科技股份有限公司 一种积木式软件的构建方法和装置
CN104793954A (zh) * 2015-04-29 2015-07-22 南京南瑞继保电气有限公司 一种免编译的图形化组合元件封装重用方法
CN105117210A (zh) * 2015-07-28 2015-12-02 苏州大学 一种面向wscn的图形化编程系统
CN105224327A (zh) * 2015-10-08 2016-01-06 南京南瑞继保电气有限公司 一种嵌入式装置变量交换传输地址离线分配方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268228A1 (en) * 2003-06-19 2004-12-30 Microsoft Corporation Framework for creating modular web applications
US8065252B2 (en) * 2008-11-07 2011-11-22 Sysware Technology Co., Ltd. Method and system of knowledge component based engineering design
CN102385509A (zh) * 2010-08-31 2012-03-21 苏州大学 一种图形化嵌入式开发方法和平台
CN102087597A (zh) * 2011-02-14 2011-06-08 浪潮通信信息系统有限公司 一种基于j2ee和构件集的可视化开发平台
CN102855135A (zh) * 2012-04-23 2013-01-02 苏州大学 一种图形构件化传感网开发平台及方法
CN103399739A (zh) * 2013-07-19 2013-11-20 苏州大学 一种机器人程序开发平台的生成方法与系统
CN104778033A (zh) * 2014-01-09 2015-07-15 大唐电信科技股份有限公司 一种积木式软件的构建方法和装置
CN103885782A (zh) * 2014-04-03 2014-06-25 南京南瑞继保电气有限公司 一种可视化编程页面程序库函数封装重用方法
CN104793954A (zh) * 2015-04-29 2015-07-22 南京南瑞继保电气有限公司 一种免编译的图形化组合元件封装重用方法
CN105117210A (zh) * 2015-07-28 2015-12-02 苏州大学 一种面向wscn的图形化编程系统
CN105224327A (zh) * 2015-10-08 2016-01-06 南京南瑞继保电气有限公司 一种嵌入式装置变量交换传输地址离线分配方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
姚健东: "《一种通用图形化嵌入式开发平台的设计及应用》", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775765A (zh) * 2017-01-12 2017-05-31 武汉图灵创客科技有限公司 图形化编程系统
CN106775765B (zh) * 2017-01-12 2020-10-27 武汉图灵创客科技有限公司 图形化编程系统
CN108427567A (zh) * 2018-04-13 2018-08-21 南京南瑞继保电气有限公司 一种装置驱动包自动升级方法
CN108427567B (zh) * 2018-04-13 2021-06-18 南京南瑞继保电气有限公司 一种装置驱动包自动升级方法
CN108595169A (zh) * 2018-04-28 2018-09-28 南京南瑞继保电气有限公司 一种可视化编程方法、云端服务器及存储介质
CN108595169B (zh) * 2018-04-28 2021-07-27 南京南瑞继保电气有限公司 一种可视化编程方法、云端服务器及存储介质
WO2019218724A1 (zh) * 2018-05-18 2019-11-21 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法
CN109697065A (zh) * 2018-12-17 2019-04-30 蜂巢(武汉)微系统技术有限公司 一种嵌入式车载系统的可视化开发方法
CN116301754A (zh) * 2023-03-23 2023-06-23 深圳市启明智显科技有限公司 基于云服务器的嵌入式设备固件开发方法、装置及系统

Similar Documents

Publication Publication Date Title
CN105739996A (zh) 一种嵌入式装置研发用户分步开发方法
TW200504559A (en) Configurable PLC and SCADA-based control system
CN103064356B (zh) 工业自动化环境中以多种配置进行的应用的多种部署
CN106940773B (zh) 基于静态污点数据分析的隐私泄漏漏洞检测确认方法
CN108073400A (zh) 软件自动化构建方法、服务器及存储介质
US8464208B2 (en) Capturing and utilizing specific module dependency information
CN102160037B (zh) 只需设计一次就能在任何平台应用的移动应用开发框架
CN105653261B (zh) 基于云计算环境下的开发集成测试方法及系统
CN102591777B (zh) 一种单元测试代码生成方法及装置
CN103838584B (zh) 一种移动终端应用的开发方法及装置
CN106406945A (zh) 一种安卓系统so文件的加载方法及电子设备
CN104793954B (zh) 一种免编译的图形化组合元件封装重用方法
Rather et al. A comparative study of software development life cycle models
CN105391763A (zh) 对多个apk文件进行加固的方法和服务器
CN103744684A (zh) 一种异构软硬件协同开发的方法及系统
CN104462943A (zh) 业务系统中非侵入式性能监控装置和方法
CN106933642B (zh) 应用程序的处理方法及处理装置
CN103645905A (zh) 一种增量数据获取方法及装置
CN104484201A (zh) 用于ios设备的软件工具开发包更新方法和装置
CN102819717B (zh) 一种文件保护处理的方法和装置
CN107479939A (zh) 一种apk安装包重复打包的实现方法
CN103164306B (zh) 一种测试逻辑的生成方法及装置
Cetina et al. Strategies for variability transformation at run-time.
CN109815651A (zh) 基于中间代码的iOS应用程序处理方法、系统及介质
CN106020816A (zh) 一种软件开发工具包sdk下载配置方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160706

WD01 Invention patent application deemed withdrawn after publication