CN114117011A - 一种下位机模拟器的开发方法、装置、系统及存储介质 - Google Patents
一种下位机模拟器的开发方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN114117011A CN114117011A CN202111449001.0A CN202111449001A CN114117011A CN 114117011 A CN114117011 A CN 114117011A CN 202111449001 A CN202111449001 A CN 202111449001A CN 114117011 A CN114117011 A CN 114117011A
- Authority
- CN
- China
- Prior art keywords
- control
- information
- data
- simulator
- configuration file
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及一种下位机模拟器的开发方法、装置、系统及存储介质,该方法包括:获取下位机模拟器的至少一个功能控件生成的配置文件;根据配置文件中解析出的解析数据,生成对话框;通过对话框更新解析数据,将更新后的解析数据进行转发。本发明通过解析出配置文件的解析数据,基于解析数据,生成对应的对话框,利用对话框进行解析数据的修改与更新,便于用户根据自己的业务需求对配置文件进行修改,并将更新后的解析数据进行转发,避免对类似流程性需求的重复开发,大大节约了开发时间。
Description
技术领域
本发明涉及下位机模拟器设计技术领域,尤其涉及一种下位机模拟器的开发方法、装置、系统及存储介质。
背景技术
各种设备系统从宏观上划分,可分为上位机子系统以及下位机子系统,上位机系统面向管理级用户,一般是由大型应用软件开发设计完成,而下位机则面向底层设备控制,一般是由嵌入式软件开发设计完成。而下位机模拟器是用于模拟下位机与待测试的上位机系统进行交互,从而实现对上位机系统的相应功能的检测。现有的下位机模拟器在设计方法上,采用的是按照功能划分模块的思路,即在程序中将各个模块设定好,依据预定流程进行消息发送和转发,发送至上位机系统,当有新需求时,开发人员需要重新定制模拟器来实现新的功能,再进行转发。
而上述现有技术存在一些不足,无论是面对需要修改的功能、需要增加的功能还是需要删除的功能,都需要对所有代码进行整改或者重新开发,再转发至上位机系统,对上位机系统和下位机模拟器之间的信息交互造成不便。因此,如何简化下位机模拟器的开发过程是亟待解决的问题。
发明内容
有鉴于此,有必要提供一种下位机模拟器的开发方法、装置、系统及存储介质,用以克服现有技术中下位机模拟器的开发过程复杂的问题。
本发明提供一种下位机模拟器的开发方法,包括:
获取所述下位机模拟器的至少一个功能控件生成的配置文件;
根据所述配置文件中解析出的解析数据,生成对话框;
通过所述对话框更新所述解析数据,将更新后的解析数据进行转发。
进一步地,所述解析数据包括所述至少一个功能控件对应的控件信息;所述根据所述配置文件中解析出的解析数据,生成对话框,包括:
根据所述配置文件,解析出所述至少一个功能控件对应的所述控件信息;
根据所述控件信息,生成所述对话框。
进一步地,所述根据所述控件信息,生成所述对话框包括:
根据所述控件信息,确定所述至少一个功能控件对应的控件默认参数和对应的参数名称;
根据所述控件信息,生成所述对话框,显示所述控件默认参数和对应的所述参数名称。
进一步地,所述解析数据还包括所述至少一个功能控件对应的配置参数的数据信息和所述配置文件的文件格式结构的结构体信息;所述根据所述配置文件,解析出所述至少一个功能控件对应的所述控件信息之后,还包括:
根据所述配置文件,解析出所述数据信息和所述结构体信息;
根据预设的固定形式,将所述控件信息、所述数据信息和所述结构体信息进行存储。
进一步地,所述结构体信息包括所述配置文件的结构体标识号和结构体名称,所述数据信息包括所述至少一个功能控件的控件默认参数和对应的参数名称,所述控件信息包括所述至少一个功能控件的控件类型、控件内容以及控件参数类型;所述根据预设的固定形式,将所述控件信息、所述数据信息和所述结构体信息进行存储,包括:
将所述结构体标识号和所述结构体名称打包存储至界面生成器的内存的第一预设部分;
将所述控件默认参数和对应的所述参数名称打包存储至界面生成器的内存的第二预设部分;
将所述控件类型、所述控件内容以及所述控件参数类型打包存储至界面生成器的内存的第三预设部分。
进一步地,所述通过所述对话框更新所述解析数据,包括:
获取用户通过所述对话框下发的修改指令,其中,所述修改指令包括用户对所述控件默认参数修改后形成的设置数据;
将所述设置数据,替换内存中所述第二预设部分存储的所述控件默认参数,形成更新后的控件默认参数;
根据所述更新后的控件默认参数和对应的参数名称,形成更新后的数据信息。
进一步地,所述将更新后的解析数据进行转发,包括:
将存储的所述控件信息、所述结构体信息和所述更新后的数据信息进行打包,生成并转发对应的数据包。
进一步地,所述将存储的所述控件信息、所述结构体信息和所述更新后的数据信息进行打包,生成并转发对应的数据包,包括:
当获取用户通过所述对话框下发的确认指令时,将所述控件信息、所述结构体信息和所述更新后的数据信息打包,生成数据包;
将所述数据包发送至对应的预设客户端,其中,所述预设客户端对所述数据包进行解析。
本发明还提供一种下位机模拟器的开发装置,包括:
获取单元,用于获取所述下位机模拟器的至少一个功能控件生成的配置文件;
处理单元,用于根据所述配置文件中解析出的解析数据,生成对话框;
更新单元,用于通过所述对话框更新所述解析数据,将更新后的解析数据进行转发。
本发明还提供一种下位机模拟器的开发系统,包括下位机模拟器、与所述下位机模拟器交互的上位机,其中,所述下位机模拟器用于实现如上所述的下位机模拟器的开发方法,所述上位机用于接收并解析所述下位机模拟器生成的更新后的解析数据
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机该程序被处理器执行时,实现如上所述的下位机模拟器的开发方法。
与现有技术相比,本发明的有益效果包括:首先,对由多个功能控件生成的配置文件进行有效的获取;然后,对配置文件进行解析,确定包含配置文件的多种信息的解析数据,并基于解析出的解析数据,生成对应的对话框;最后,获取用户通过对话框进行更新的解析数据,将更新后的解析数据直接进行转发,从而在功能控件的基础上,生成更新后的解析数据,直接得到并转发了用户修改的数据,无需重复开发,节约了研发成本,保证了交互的高效性。综上,本发明通过解析出配置文件的解析数据,基于解析数据,生成对应的对话框,用户利用对话框进行解析数据的修改与更新,便于用户根据自己的业务需求对配置文件进行修改,并直接转发,避免对类似流程性需求的重复开发,大大节约了开发时间。
附图说明
图1为本发明提供的下位机模拟器的开发方法的应用系统一实施例的场景示意图;
图2为本发明提供的下位机模拟器的开发方法一实施例的流程示意图;
图3为本发明提供的配置文件的文件格式结构一实施例的结构示意图;
图4为本发明提供的图2中步骤S2一实施例的流程示意图;
图5为本发明提供的图4中步骤S22一实施例的流程示意图
图6为本发明提供的图4中步骤S21之后步骤一实施例的流程示意图;
图7为本发明提供的控件信息、数据信息和结构体信息一实施例的存储格式示意图;
图8为本发明提供的图2中步骤S3中更新解析数据一实施例的流程示意图;
图9为本发明提供的图8中步骤S33中转发更新后的解析数据一实施例的流程示意图;
图10为本发明提供的对话框一实施例的对话框示意图;
图11为本发明提供的下位机模拟器的开发装置一实施例的结构示意图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。此外,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明的描述中,提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,所描述的实施例可以与其它实施例相结合。
本发明提供了一种下位机模拟器的开发方法、装置及存储介质,基于配置文件,进行相应的解析,确定对应的解析数据,在解析数据的基础上进行数据的修改和更新,直接进行转发,为进一步简化下位机模拟器的开发过程提供了新思路。以下分别进行详细说明:
在展示实施例之前,先对涉及到的技术名词进行说明:
本发明实施例所提及的下位机模拟器可以为一个计算机设备或者服务器,以医疗系统为例,上位机系统可以为医疗设备的管理系统或者控制系统,对应的下位机则为对应的医疗设备中的各执行部件,下位机模拟器用于模拟医疗设备中的各执行部件。
本发明实施例所提及的功能控件是指对数据和方法的封装,用于在下位机模拟器的开发过程中,实现上述各执行部件中的某种功能。
本发明实施例所提及的配置文件一般指xml文件,其中包含上述所提控件的多种初始化数据。
本发明实施例提供了一种下位机模拟器的开发方法的应用系统,图1为本发明提供的下位机模拟器的开发方法的应用系统一实施例的场景示意图,该系统可以包括服务器100,服务器100中集成有下位机模拟器的开发装置,如图1中的服务器。
本发明实施例中服务器100主要用于:
获取下位机模拟器的至少一个功能控件生成的配置文件;
根据配置文件中解析出的解析数据,生成对话框;
通过对话框更新解析数据,将更新后的解析数据进行转发。
本发明实施例中,该服务器100可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本发明实施例中所描述的服务器100,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(Cloud Computing)的大量计算机或网络服务器构成。
可以理解的是,本发明实施例中所使用的终端200可以是既包括接收和发射硬件的设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。具体的终端200可以是台式机、便携式电脑、网络服务器、掌上电脑(Personal Digital Assistant,PDA)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备等,本实施例不限定终端200的类型。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本发明方案一种应用场景,并不构成对本发明方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的终端,例如图1中仅示出2个终端,可以理解的,该下位机模拟器的开发方法的应用系统还可以包括一个或多个其他终端,具体此处不作限定。
另外,如图1所示,该下位机模拟器的开发方法的应用系统还可以包括存储器200,用于存储数据,如配置文件、解析数据、更新后的解析数据和对话框等。
需要说明的是,图1所示的下位机模拟器的开发方法的应用系统的场景示意图仅仅是一个示例,本发明实施例描述的下位机模拟器的开发方法的应用系统以及场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着下位机模拟器的开发方法的应用系统的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
本发明实施例提供了一种下位机模拟器的开发方法,结合图2来看,图2为本发明提供的下位机模拟器的开发方法一实施例的流程示意图,包括步骤S1至步骤S3,其中:
在步骤S1中,获取下位机模拟器的至少一个功能控件生成的配置文件;
在步骤S2中,根据配置文件中解析出的解析数据,生成对话框;
在步骤S3中,通过对话框更新解析数据,将更新后的解析数据进行转发。
在本发明实施例中,首先,对由多个功能控件生成的配置文件进行有效的获取;然后,对配置文件进行解析,确定包含配置文件的多种信息的解析数据,并基于解析出的解析数据,生成对应的对话框;最后,获取用户通过对话框进行更新的解析数据,将更新后的解析数据直接进行转发,从而在功能控件的基础上,生成更新后的解析数据,直接得到并转发了用户修改的数据,无需重复开发,节约了研发成本,保证了交互的高效性。
作为更具体的实施例,对话框在相应的界面上向用户展示,并具有键入的功能,其中,用户通过对话框修改对应的解析数据。在本发明实施例中,对话框为用户提供键入的操作功能,有效达到修改解析数据的目的,实现更新的效果。
作为优选的实施例,上述至少一个功能控件用于实现医疗设备中各执行部件中对应的功能。在本发明实施例中,至少一个功能控件为初始化的控件,即其对应的控件属性值是控件默认参数,用于实现对应的部件功能,其中,多种功能控件,生成对应的配置文件,以便后续对配置文件进行解析,读取其中初始的解析数据。
需要说明的是,上述解析数据包括至少一个功能控件对应的初始化的控件信息、结构体信息和数据信息,反映至少一个功能控件的初始样式,而可以通过对话框的生成后,修改其中的数据信息,即用户根据自己的业务需求进行配置文件的修改,更新解析数据。
在具体的实施例中,上述解析数据包括控件信息,控件信息用于反馈每个功能控件对应的控件性质;其中,控件信息包括每个功能控件对应的控件类型、控件内容和控件参数类型中的至少一种;其中,需要说明的是,控件信息还可以包括控件默认参数和对应的参数名称,可以理解的是,控件信息所包含的各种信息依照具体的应用情况而设定,包括但不限于上述信息(控件类型、控件内容、控件参数类型、控件默认参数和对应的参数名称),只要能反馈功能控件对应的控件性质即可;
其中,控件类型为每个功能控件对应的类型(菜单控件、内容控件、条目控件等),控件内容为每个功能控件对应的数据内容,控件参数类型为每个功能控件的控件默认参数的数据类型(字符串、整型、浮点型等)。
在具体的实施例中,上述解析数据包括结构体信息,结构体信息用于反馈配置文件对应的结构体性质;其中,结构体信息包括结构体标识号和结构体名称;其中,需要说明的是,结构体信息包含的多种信息,是为了便于识别配置文件中的结构体,且上述结构体标识号包括结构体ID,上述结构体名称的设定必须与通信协议中对应的结构体名称相同。
在具体的实施例中,上述解析数据包括数据信息,用于存储配置文件对应的结构体中控件默认参数的参数值,包括至少一个功能控件的控件默认参数和对应的参数名称;其中,需要说明的是,数据信息还可以包括每个功能控件对应的控件参数类型,上述控件默认参数可以按用户的要求通过对话框进行调节。
作为优选的实施例,配置文件的解析数据包含控件信息、结构体信息和数据信息。上述控件信息、结构体信息和数据信息分别反映控件性质、结构体性质和用户可调的参数(控件默认参数),对于构建的配置文件,当配置文件进行解析时,即可有效获取其中的控件信息、结构体信息和数据信息。
作为优选的实施例,上述配置文件为xml文件。在本发明实施例中,用户根据业务需求,以xml文件的形式,生成对应的配置文件,有利于后续的文件解析。可以理解的是,上述配置文件的文件形式不限于xml文件,只要能实现文件配置的功能即可。
作为优选的实施例,配置文件包括根节点,根节点对应的子节点按照预设结构依次将控件信息、结构体信息和数据信息进行保存。在本发明实施例中,设置预设结构,有序且高效地保存控件信息、结构体信息和数据信息,进行有效的配置文件的结构设计。其中,以xml文件为例,配置的xml文件中的每个节点都是和控件信息、结构体信息和数据信息的类型相对应的,即可以直接在程序中保存。
具体地,结合图3来看,图3为本发明提供的配置文件的文件格式结构一实施例的结构示意图,从图可知,配置文件是按预设结构进行标准配置,而对应的文件格式结构如下:
根节点对应的子节点为结构体标识号子节点和数据结构子节点;
数据结构子节点对应的子节点为结构体名称子节点和参数子节点;
参数子节点对应的子节点为多个参数名称子节点(如图3中的参数0、参数1);
参数名称子节点对应的子节点为该参数对应的控件类型子节点、参数名称子节点、控件内容子节点、控制默认值子节点和控件参数类型子节点。
其中,图3仅以两个参数为示例,两个分别为参数0和参数1,每个参数对应的是一个功能控件,此处的数值0、1可以理解为对功能控件的编号,每个参数下对应的子节点所包含的内容相同,分别为控件类型、参数名称、控件内容、控件默认参数以及控件参数类型,其中,相关名词的解释及与控件信息、结构体信息和数据信息的对应关系参见前文,在此不再赘述。需要说明的是,在初始化时,本发明实施例配置文件的文件格式结构可以包含多种参数,单个参数对应描述的是功能控件,其中,每个参数对应的控件默认参数是该功能控件对应的初始化的控件值,在后续过程中,该控件默认参数可以被修改,从而修改功能控件的控件功能,实现不同的控件功能。
其中,结合上述配置文件包含的控件信息(包括至少一个功能控件对应的控件类型、控件内容、控件参数类型)、结构体信息(包括结构体标识号和结构体名称)、数据信息(控件默认参数和对应的参数名称)来看,设计配置文件的文件格式结构,将上述信息进行有效的结构组织,基于不同的功能控件,高效生成对应的配置文件,有利于后续的数据解析。
作为优选的实施例,结合图4来看,图4为本发明提供的图2中步骤S2一实施例的流程示意图,步骤S2包括步骤S21至步骤S22,其中:
在步骤S21中,根据配置文件,解析出至少一个功能控件对应的控件信息;
在步骤S22中,根据控件信息,生成对话框。
在本发明实施例中,对配置文件解析后,得到某一个或多个功能控件对应的控件信息,根据该控件信息,生成对应的对话框,用户可以利用对话框对对应的功能控件进行数值修改,实现不同的控件功能,避免了重复开发的流程。
作为优选的实施例,结合图5来看,图5为本发明提供的图4中步骤S22一实施例的流程示意图,步骤S22包括步骤S221至步骤S222,其中:
在步骤S221中,根据控件信息,确定至少一个功能控件对应的控件默认参数和对应的参数名称;
在步骤S222中,根据控件信息,生成对话框,显示控件默认参数和对应的参数名称。
在本发明实施例中,根据控件信息,确定每一个功能控件可修改的控件默认参数和对应的参数名称,以对话框的方式将其显示,方便用户的修改。需要说明的是,控件信息可以包括每个功能控件对应的控件类型、控件内容和控件参数类型、控件默认参数和对应的参数名称,可以根据上述控件信息包含的信息生成对应的对话框,对话框可以显示其中任一种包含的信息,在此应该用场景下,为了方便用户对控件默认参数的调整,实现所需样式,因而只显示了控件默认参数和对应的参数名称,在其他场景下,对话框显示的内容,不做不限制,满足对应的场景需求即可。
作为更具体的实施例,对话框包括显示控件默认参数的参数输入框和显示参数名称的参数名称框:
其中,用户通过参数名称框选择需要修改的参数名称后,参数名称框显示用户选择的参数名称,参数输入框显示用户选择的参数名称对应的控件默认参数,进而,用户通过参数输入框对控件默认参数进行修改。
在本发明实施例中,对话框通过参数输入框和参数名称框展示每一个控件默认参数和其对应的参数名称,比如,参数名称为uiBatterySOC,其控件默认参数为61.1,则参数名称框显示uiBatterySOC,参数输入框显示默认值61.1。可以理解的是,用户修改控件默认参数的形式包括但不限于下拉框选择、键入数值,只要能实现对应的修改功能即可。
作为更具体的实施例,对话框还用于显示当前时刻的项目信息、操作按键中的至少一种信息,其中,项目信息包括当前时刻正在进行调试项目的名称、日志等信息,操作按键用于用户进行指令确认,指令确认包括确定当前操作、撤销当前操作等。
在本发明实施例中,通过对话框显示多种信息,方便相关人员确定当前调试信息,并进行相关的操作,达到快速修改控件默认参数、更新解析数据的目的。
作为优选的实施例,在获取控制信息后,调用界面生成器对控件信息进行处理,生成对话框。在本发明实施例中,根据控件信息中包含的控件类型、参数名称、控件内容、控件默认参数和控制默认值进行相应的处理,生成对应的对话框。可以理解的是,界面生成器对控件信息的处理方式有多种,在此不做限定,只要有能实现常规的界面生成功能即可。
作为优选的实施例,结合图6来看,图6为本发明提供的图4中步骤S21之后步骤一实施例的流程示意图,步骤S21之后还包括步骤S001至步骤S002,其中:
在步骤S001中,根据配置文件,解析出数据信息和结构体信息;
在步骤S002中,根据预设的固定形式,将控件信息、数据信息和结构体信息存储至内存。
在本发明实施例中,对配置文件进行解析之后,提取出配置文件中依据文件格式结构保存的控件信息、数据信息和结构体信息(具体如图3所示),将上述信息进行存储,当后续用户需修改时,只需将存储的数据信息(控制默认参数值)进行修改,结合存储的其他未变化的控件信息和结构体信息,即可完成对配置文件的更新,以生成新功能控件。
作为优选的实施例,根据预设的固定形式,将控件信息、数据信息和结构体信息分别打包存储至数据存储器中。在本发明实施例中,将不同类型的信息分别打包存储,节约存储空间,且当获取到需要修改的参数值时,即可快速搜寻对应的地址。
作为优选的实施例,步骤S002具体包括:
将结构体标识号和结构体名称打包存储至内存的第一预设部分;
将控件默认参数和对应的参数名称打包存储至内存的第二预设部分;
将控件类型、控件内容以及控件参数类型打包存储至内存的第三预设部分。
在本发明实施例中,将不同的控件信息、数据信息和结构体信息分别存储至对应的内存位置,便于后续对控件默认参数的修改。
具体地,结合图7来看,图7为本发明提供的控件信息、数据信息和结构体信息一实施例的存储格式示意图,由图可知,预设的固定形式具体分为如下三个部分:
第一个部分为结构体信息的存储空间,即上述第一预设部分,配置文件解析后,将其中的结构体信息中的结构体标识号和结构体名称进行打包,存储至内存中的对应空间;
第二个部分为数据信息的存储空间,即上述第二预设部分,配置文件解析后,将其中的数据信息(即可修改的控件默认参数)进行打包,存储至内存中的对应空间;
第三个部分为控件信息的存储空间,即上述第三预设部分,配置文件解析后,将其中的控件信息中的控件类型、控件内容和控件参数类型进行打包,存储至内存中的对应空间。
在本发明实施例中,对控件信息、数据信息和结构体信息分别进行打包存储,保存到不同的内存空间,便于后续快速寻址后对数据信息的修改,且当需要修改控件功能时,仅进行数据信息的存储内容进行修改即可,能快速有效地实现用户的修改需求。
作为具体的实施例,结合图7来看,将配置文件中解析出来的解析数据保存在内存中,且在内存中有一个单例专门存储上述解析数据。其中,上述单例如上图7中所标识的Singleton所示,将Singleton分为第一预设部分、第二预设部分和第三预设部分,分别对应存储结构体信息、数据信息和控件信息。
作为优选的实施例,结合图8来看,图8为本发明提供的图2中步骤S3中更新解析数据一实施例的流程示意图,步骤S3包括步骤S31至步骤S33,其中:
在步骤S31中,获取用户通过对话框下发的修改指令,其中,修改指令包括用户对控件默认参数修改后形成的设置数据;
在步骤S32中,将设置数据,替换内存中第二预设部分存储的控件默认参数,形成更新后的控件默认参数;
在步骤S33中,根据更新后的控件默认参数和对应的参数名称,形成更新后的数据信息。
在本发明实施例中,用户通过对话框修改控件参数值,输入自己需要的控件参数值,从而更新存储的数据信息,结合控件信息中的控件类型、控件内容和控制值类型,以及结构体信息中的结构体标识号和结构体名称,在功能控件的基础结构上,生成进行控件功能的修改。
作为优选的实施例,上述步骤S3中描述的将更新后的解析数据进行转发,包括:
将存储的控件信息、结构体信息和更新后的数据信息进行打包,生成并转发对应的数据包。
在本发明实施例中,将存储的控件信息、结构体信息和更新后的数据信息进行打包,便于发送至对应的客户端。
作为优选的实施例,结合图9来看,图9为本发明提供的图8中步骤S33中转发更新后的解析数据一实施例的流程示意图,步骤S3还包括步骤S34至步骤S35,其中:
在步骤S34中,当获取用户通过对话框输入的确认指令时,将控件信息、结构体信息和更新后的数据信息打包,生成数据包;
在步骤S35中,将数据包发送至对应的预设客户端,其中,预设客户端对数据包进行解析。
在本发明实施例中,获取确认指令后,将控件信息、结构体信息和更新后的数据信息打包发送至预设客户端,当预设客户端对数据包解析时,即可得到由控件信息、结构体信息和更新后的数据信息共同构成的新的配置文件,显示其对应的修改后的控件默认参数。
需要说明的是,上述确认指令为用户确认打包转发的指令,即当用户修改好控件默认参数,更新存储的数据信息后,用户确认后,才会继续将控件信息、结构体信息和更新后的数据信息打包。其中,用户确认打包转发的指令可以通过用户点击对话框上的“ok”进行下发。
其中,对应的预设客户端一般为下位机模拟器对应交互的上位机系统,当下位机模拟器需要修改其控件默认参数,通过对话框即可快速得到修改后的控件默认参数,将更新后的数据信息及反映功能控件基础结构的控件信息和结构体信息一起打包,生成数据包发送至上位机系统,上位机系统对此数据包进行解析,得到该功能控件修改的控件参数默认值。换言之,在下位机模拟器和上位机系统的交互过程中,当下位机模拟器需要修改控件功能时,无需重新开发程序再转发至上位机系统。而是直接利用功能控件的基础的控件信息,生成对话框,用户通过输入的方式,得到更新后的控件参数默认值,只需更新内存中之前存储的控件参数默认值的数值,得到相应的数据包,再发送至上位机系统进行解析。上述技术思路,简化了下位机模拟器的开发流程,进一步使上位机系统和下位机模拟器的交互变得更为高效快捷,提高了研发效率。
作为更具体的实施例,在预设客户端中,对数据包进行解析后,显示对应的更新后的控件默认参数,其中,显示的方式包括但不限于进度条、表格、图形界面。在本发明实施例,在预设客户端采用直观的方式,呈现更新后的控件默认参数,方便相关人员分析查看。
作为更具体的实施例,在预设客户端中,当收到若干修改后的控件默认参数时,根据用户选择的功能控件或者参数名称,对其对应的修改后的控件默认参数进行相应的显示。在本发明实施例中,对于多种功能控件的控件默认参数都进行了修改的情况,充分考虑用户只需针对性分析或利用其中某一个功能控件的控件默认参数的需求,呈现对应的修改后的控件默认参数,避免其他修改后的控件默认参数造成用户查看和分析时的干扰。
作为更具体的实施例,在预设客户端中,根据解析出的修改后的控件默认参数,与通过对话框输入的修改指令中的设置数据进行比较,判断解析出的修改后的控件默认参数是否正确。
在本发明实施例中,在预设客户端中,对接受的数据包进行解析,得到其中解析出的修改后的控件默认参数,由于预设客户端与下位机之间的通信交互可能存在异常、故障,需对解析出的修改后的控件默认参数和用户在下位机通过对话框输入的设置数据进行对比,如果一致,则说明两者之间的通信无异常,若不一致,则说明两者之间的通信存在异常(可能存在通信协议异常、接口异常等情况),提醒用户及时调试。
在本发明一个具体的实施例中,对于机械臂的下位模拟器,对应的预设客户端为上位机系统,当用户在对应生成的对话框,修改机械臂对应的功能控件的控件默认参数,将其从移动1米改为移动0.5米,生成数据包,转发至上位机系统。上位机系统对接收到的数据包进行解析,得到相应的解析出的修改后的控件默认参数,若为0.5米,则说明机械臂的下位模拟器与上位机系统交互正常,若仍为1米,则说明通信存在异常,需提醒相关人员进行进一步的调试。
下面结合一个具体的应用例更好地说明本发明的技术方案:
结合图10来看,图10为本发明提供的对话框一实施例的对话框示意图,由图可知,参数名称框显示uiBatterySOC和oOIBBatteryPackChargeStatus,参数输入框显示对应的控件默认参数61.1和未充放电,操作按键包括用于确认的“ok”和用于撤销的“Cancel”,同时,图10中还包括显示相关项目信息(如项目名称和项目日志)的窗口,对于参数uiBatterySOC和参数oOIBBatteryPackChargeStatus(uiBatterySOC和oOIBBatteryPackChargeStatus皆为参数名称),在配置文件中是有对应节点的(形如图3中的参数0和参数1),将参数对应的控件信息和数据信息以及配置文件的结构体信息进行存储(形如图6中的存储格式);
其中,参数uiBatterySOC对应的是一个功能控件,其控件默认参数为61.1,参数oOIBBatteryPackChargeStatus对应的是另一个功能控件,其控件默认参数为“未充放电”;
其中,当用户需要修改控件默认参数时,比如,将参数uiBatterySOC的控件默认参数修改为10,将参数oOIBBatteryPackChargeStatus的控件默认参数修改为“放电”或“充电”。根据修改的控件默认参数,更新内存中存储的数据信息,得到更新后的数据信息;
其中,当用户确认修改过后的控件默认参数,按下对话框的“ok”键,即生成了确认指令,在接收到确认指令后,将存储的件信息、结构体信息和更新后的数据信息进行打包,发送对应的上位机系统,由上位机系统进行解析,得到并显示其中的更新后的控件默认参数即可;
整体步骤流程如下:
第一步,获取参数uiBatterySOC和参数oOIBBatteryPackChargeStatus构成的配置文件;
第二步,对构成的配置文件进行解析,得到解析数据,其中,解析数据包括控件信息、数据信息、结构体信息;其中,控件信息包括参数uiBatterySOC和参数oOIBBatteryPackChargeStatus对应的控件类型、控件内容和控件参数类型(还可以包括控件参数默认值和对应的参数名称),数据信息包括控件参数默认值和对应的参数名称,结构体信息包括结构体标识号和结构体名称,根据上述的解析数据生成对话框,显示控件参数默认值和对应的参数名称,如图10所示,显示参数uiBatterySOC,及其对应的控件参数默认值61.1,同时显示参数oOIBBatteryPackChargeStatus及其对应的控件参数默认值“未充放电”;
其中,将解析得到的控件信息、数据信息、结构体信息分别存储至内存中的预设位置:第一预设部分、第二预设部分以及第三预设部分;
第三步,获取用户通过对话框修改的控件参数默认值,如将参数uiBatterySOC的控件参数默认值修改为10,参数oOIBBatteryPackChargeStatus的控件参数默认值修改为“充电”,此时,将内存中第二预设部分存储的控件参数默认值进行修改,存储更新后的控件参数默认值(10、“充电”),并更新后的控件参数默认值和未变的控件信息、结构体信息打包发送至上位机系统,上位机系统对打包后的数据包解析,即可显示其修改的控件参数默认值,此过程不需要重新开发流程,基于功能控件的结构数据进行修改便能完成高效的交互。
本发明实施例还提供了一种下位机模拟器的开发装置,结合图11来看,图11为本发明提供的下位机模拟器的开发装置一实施例的结构示意图,下位机模拟器的开发装置1100包括:
获取单元1101,用于获取下位机模拟器的至少一个功能控件生成的配置文件;
处理单元1102,用于根据配置文件中解析出的解析数据,生成对话框;
更新单元1103,根据通过对话框更新解析数据,将更新后的解析数据进行转发。
下位机模拟器的开发装置的各个单元的更具体实现方式可以参见对于本下位机模拟器的开发方法的描述,且具有与之相似的有益效果,在此不再赘述。
本发明实施例还提供了一种下位机模拟器的开发系统,包括下位机模拟器、与下位机模拟器交互的上位机,其中,下位机模拟器用于实现如上所述的下位机模拟器的开发方法,上位机用于接收并解析下位机模拟器生成的更新后的解析数据。
下位机模拟器的开发系统的更具体实现方式可以参见对于本下位机模拟器的开发方法的描述,且具有与之相似的有益效果,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如上所述的下位机模拟器的开发方法。
一般来说,用于实现本发明方法的计算机指令的可以采用一个或多个计算机可读的存储介质的任意组合来承载。非临时性计算机可读存储介质可以包括任何计算机可读介质,除了临时性地传播中的信号本身。
计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言,特别是可以使用适于神经网络计算的Python语言和基于TensorFlow、PyTorch等平台框架。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本发明实施例还提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如上所述的下位机模拟器的开发方法。
根据本发明上述实施例提供的计算机可读存储介质和计算设备,可以参照根据本发明实现如上所述的下位机模拟器的开发方法具体描述的内容实现,并具有与如上所述的下位机模拟器的开发方法类似的有益效果,在此不再赘述。
本发明公开了一种下位机模拟器的开发方法、装置、系统及存储介质,首先,对由多个功能控件生成的配置文件进行有效的获取;然后,对配置文件进行解析,确定反映配置文件文件结构信息的解析数据,并基于解析出的解析数据,生成对应的对话框;最后,获取用户通过对话框进行输入的设置数据,根据设置数据更新配置文件中的解析数据,确定更新后的配置文件,从而在功能控件的基础上进行更新,无需重复开发,节约了研发成本。
本发明技术方案,通过解析出配置文件的解析数据,基于解析数据,生成对应的对话框,用户利用对话框进行解析数据的修改与更新,便于用户根据自己的业务需求对配置文件进行修改,即可生成所需样式,避免对类似流程性需求的重复开发,大大节约了开发时间。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (11)
1.一种下位机模拟器的开发方法,其特征在于,包括:
获取所述下位机模拟器的至少一个功能控件生成的配置文件;
根据所述配置文件中解析出的解析数据,生成对话框;
通过所述对话框更新所述解析数据,将更新后的解析数据进行转发。
2.根据权利要求1所述的下位机模拟器的开发方法,其特征在于,所述解析数据包括所述至少一个功能控件对应的控件信息;所述根据所述配置文件中解析出的解析数据,生成对话框,包括:
根据所述配置文件,解析出所述至少一个功能控件对应的所述控件信息;
根据所述控件信息,生成所述对话框。
3.根据权利要求2所述的下位机模拟器的开发方法,其特征在于,所述根据所述控件信息,生成所述对话框包括:
根据所述控件信息,确定所述至少一个功能控件对应的控件默认参数和对应的参数名称;
根据所述控件信息,生成所述对话框,显示所述控件默认参数和对应的所述参数名称。
4.根据权利要求2所述的下位机模拟器的开发方法,其特征在于,所述解析数据还包括所述至少一个功能控件对应的配置参数的数据信息和所述配置文件的文件格式结构的结构体信息;所述根据所述配置文件,解析出所述至少一个功能控件对应的所述控件信息之后,还包括:
根据所述配置文件,解析出所述数据信息和所述结构体信息;
根据预设的固定形式,将所述控件信息、所述数据信息和所述结构体信息进行存储。
5.根据权利要求4所述的下位机模拟器的开发方法,其特征在于,所述结构体信息包括所述配置文件的结构体标识号和结构体名称,所述数据信息包括所述至少一个功能控件的控件默认参数和对应的参数名称,所述控件信息包括所述至少一个功能控件的控件类型、控件内容以及控件参数类型;所述根据预设的固定形式,将所述控件信息、所述数据信息和所述结构体信息进行存储,包括:
将所述结构体标识号和所述结构体名称打包存储至界面生成器的内存的第一预设部分;
将所述控件默认参数和对应的所述参数名称打包存储至界面生成器的内存的第二预设部分;
将所述控件类型、所述控件内容以及所述控件参数类型打包存储至界面生成器的内存的第三预设部分。
6.根据权利要求5所述的下位机模拟器的开发方法,其特征在于,所述通过所述对话框更新所述解析数据,包括:
获取用户通过所述对话框下发的修改指令,其中,所述修改指令包括用户对所述控件默认参数修改后形成的设置数据;
将所述设置数据,替换内存中所述第二预设部分存储的所述控件默认参数,形成更新后的控件默认参数;
根据所述更新后的控件默认参数和对应的参数名称,形成更新后的数据信息。
7.根据权利要求6所述的下位机模拟器的开发方法,其特征在于,所述将更新后的解析数据进行转发,包括:
将存储的所述控件信息、所述结构体信息和所述更新后的数据信息进行打包,生成并转发对应的数据包。
8.根据权利要求7所述的下位机模拟器的开发方法,其特征在于,所述将存储的所述控件信息、所述结构体信息和所述更新后的数据信息进行打包,生成并转发对应的数据包,包括:
当获取用户通过所述对话框下发的确认指令时,将所述控件信息、所述结构体信息和所述更新后的数据信息打包,生成数据包;
将所述数据包发送至对应的预设客户端,其中,所述预设客户端对所述数据包进行解析。
9.一种下位机模拟器的开发装置,其特征在于,包括:
获取单元,用于获取所述下位机模拟器的至少一个功能控件生成的配置文件;
处理单元,用于根据所述配置文件中解析出的解析数据,生成对话框;
更新单元,用于通过所述对话框更新所述解析数据,将更新后的解析数据进行转发。
10.一种下位机模拟器的开发系统,其特征在于,包括下位机模拟器、与所述下位机模拟器交互的上位机,其中,所述下位机模拟器用于实现如权利要求1至8任一项所述的下位机模拟器的开发方法,所述上位机用于接收并解析所述下位机模拟器生成的更新后的解析数据。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机该程序被处理器执行时,实现如权利要求1至8任一项所述的下位机模拟器的开发方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111449001.0A CN114117011A (zh) | 2021-11-29 | 2021-11-29 | 一种下位机模拟器的开发方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111449001.0A CN114117011A (zh) | 2021-11-29 | 2021-11-29 | 一种下位机模拟器的开发方法、装置、系统及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN114117011A true CN114117011A (zh) | 2022-03-01 |
Family
ID=80369309
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202111449001.0A Pending CN114117011A (zh) | 2021-11-29 | 2021-11-29 | 一种下位机模拟器的开发方法、装置、系统及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN114117011A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115686508A (zh) * | 2022-09-22 | 2023-02-03 | 重庆国科医创科技发展有限公司 | 一种通过配置文件生成控制界面的方法、设备及存储介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106325860A (zh) * | 2016-08-16 | 2017-01-11 | 北京控制工程研究所 | 一种航天嵌入式软件接口数据的自动化维护方法 |
| CN106569801A (zh) * | 2016-10-18 | 2017-04-19 | 中国运载火箭技术研究院 | 一种基于复杂参数的组态化显控系统 |
| WO2017162210A1 (zh) * | 2016-03-25 | 2017-09-28 | 中兴通讯股份有限公司 | 测试配置方法及装置 |
| CN111736828A (zh) * | 2020-06-15 | 2020-10-02 | 武汉精立电子技术有限公司 | 应用于检测软件的系统配置界面生成方法及系统 |
| CN112346767A (zh) * | 2020-11-11 | 2021-02-09 | 蘑菇物联技术(深圳)有限公司 | 一种更新控制程序的方法、系统、计算机设备及存储介质 |
-
2021
- 2021-11-29 CN CN202111449001.0A patent/CN114117011A/zh active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2017162210A1 (zh) * | 2016-03-25 | 2017-09-28 | 中兴通讯股份有限公司 | 测试配置方法及装置 |
| CN106325860A (zh) * | 2016-08-16 | 2017-01-11 | 北京控制工程研究所 | 一种航天嵌入式软件接口数据的自动化维护方法 |
| CN106569801A (zh) * | 2016-10-18 | 2017-04-19 | 中国运载火箭技术研究院 | 一种基于复杂参数的组态化显控系统 |
| CN111736828A (zh) * | 2020-06-15 | 2020-10-02 | 武汉精立电子技术有限公司 | 应用于检测软件的系统配置界面生成方法及系统 |
| CN112346767A (zh) * | 2020-11-11 | 2021-02-09 | 蘑菇物联技术(深圳)有限公司 | 一种更新控制程序的方法、系统、计算机设备及存储介质 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115686508A (zh) * | 2022-09-22 | 2023-02-03 | 重庆国科医创科技发展有限公司 | 一种通过配置文件生成控制界面的方法、设备及存储介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113761428B (zh) | 页面渲染方法、装置、系统、存储介质及电子设备 | |
| CN112732572A (zh) | 服务的测试方法、装置及系统、存储介质、电子装置 | |
| US11741002B2 (en) | Test automation systems and methods using logical identifiers | |
| US20150248381A1 (en) | Compact encoding of node locations | |
| US20150355890A1 (en) | Automatic configuration of project system from project capabilities | |
| CN112363938A (zh) | 数据处理方法、装置、电子设备和存储介质 | |
| CN113268245A (zh) | 代码分析方法、装置及存储介质 | |
| CN111831277B (zh) | 虚拟数据生成方法、系统、设备及计算机可读存储介质 | |
| EP3872630A2 (en) | Request processing method and apparatus, electronic device, and computer storage medium | |
| CN113641591A (zh) | 测试用例生成方法及装置、测试方法及装置 | |
| CN112416455B (zh) | 数据处理方法、装置、终端和存储介质 | |
| CN113495730B (zh) | 资源包的生成及解析方法和装置 | |
| US20120011490A1 (en) | Development system | |
| CN113419738A (zh) | 接口文档的生成方法、装置及接口管理设备 | |
| CN114117011A (zh) | 一种下位机模拟器的开发方法、装置、系统及存储介质 | |
| CN109408057B (zh) | 自动生成代码的方法、装置、介质和计算设备 | |
| EP3519964B1 (en) | Electronic apparatus for recording debugging information and control method thereof | |
| CN119883396A (zh) | mock服务方法、系统、电子设备及存储介质 | |
| CN110647331A (zh) | 开发工具的获取方法及装置、存储介质、电子设备 | |
| CN113791779B (zh) | 数据处理方法、装置及系统 | |
| WO2023151397A1 (zh) | 应用程序部署方法、装置、设备及介质 | |
| CN115408074A (zh) | 接口数据的处理方法、装置、设备、介质及程序产品 | |
| CN116301845A (zh) | 一种表单生成方法、装置及电子设备 | |
| CN112860543A (zh) | 检测页面运行的方法和电子设备 | |
| US20250335338A1 (en) | Systems and methods for generating test cases for graphical user interface components |
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: 20220301 |