本发明专利技术提供了一种基于DCS系统应用软件在线调试方法,包括可运行应用软件的嵌入式设备,和与嵌入式设备互相连接的计算机设备,嵌入式设备还包括数据通讯模块和应用软件数据区,嵌入式设备通过数据通讯模块与计算机设备实现数据交互;应用软件数据区包括与应用软件的局部变量一一对应的全局变量,计算机设备通过全局变量实现与应用软件数据内容的读写访问,解决了核电等高安全要求领域中,对运行于无操作系统的嵌入式设备的应用软件的调试,并且,本发明专利技术的调试方法支持对编译后的应用软件调试,支持嵌入式设备现场在线调试。
【技术实现步骤摘要】
一种基于DCS系统应用软件在线调试方法
本专利技术属于核电站嵌入式设备
,特别涉及一种基于DCS系统的应用软件在线调试的方法。
技术介绍
在工业控制DCS系统中,主控制站一般由嵌入式设备和运行于设备上的嵌入式软件构成,嵌入式软件通常分为两部分,一部分是操作系统,一部分是应用软件。“操作系统”用来实现boot、驱动、通讯等通用功能,应用软件实现用户的业务逻辑。在核电DCS行业,因安全标准原因,通用操作系统无法满足核电标准审查和质量要求,操作系统功能需要由DCS提供商自主研发,这部分虽实现类似操作系统功能但实质是无操作系统,应用软件部分与带操作系统DCS并无太大区别。在DCS工程实施过程中,应用软件的业务逻辑,规模庞大而复杂,需要在运行过程中对应用软件进行在线调试,支持强制、写入、释放等功能,否则这些应用软件正确性难以得到有效验证,产品质量存很大隐患。对于某些操作系统的平台,应用软件的调试可以通过操作系统提供的API实现,但对于无操作系统的DCS平台,应用软件在运行过程中的实时调试,就成了摆在DCS提供商一道难题。 而目前常见的嵌入式设备应用软件的调试系统有多种,但都存在一定问题,例如:高安全算法组态软件Scade仅支持PC机上仿真状态下,变量数据的监视与调试,但不支持与嵌入式设备连接并在线进行调试功能。三菱核电专用算法软件工具支持在线调试功能,但实现细节未知。CodeSys算法软件工具支持在线调试,但需要在嵌入式设备部署专用调试器。 因此,目前对运行在嵌入式设备上的应用软件的调试而言,存在: 1、调试器通常需要操作系统支持,对于无操作系统调试器,需要开发专用调试器,开发难度大、成本高 2、调试器通常会中断程序运行,无法在应用软件实际运行过程中运用。 3、调试器通常面向具备计算机专业技术的人员,不适用于工程应用人员。 4、不能实现强制功能,通常情况下,在算法运行的中间过程中,数据被强制后,会被后续执行的数据覆盖,难以达到强制目的。
技术实现思路
为了克服无操作系统嵌入式设备在线监视功能实现技术难度大、成本高的缺点,主要依赖应用软件机制解决无操作系统嵌入式设备在线调试功能的方法,本专利技术提供了:一种基于DCS系统应用软件在线调试方法,包括可运行应用软件的嵌入式设备,和与嵌入式设备互相连接的计算机设备,所述嵌入式设备还包括数据通讯模块,所述嵌入式设备通过所述数据通讯模块与所述计算机设备实现数据交互,其特征在于,所述嵌入式设备还包括应用软件数据区,所述应用软件数据区包括与所述应用软件的局部变量一一对应的全局变量,所述计算机设备通过所述全局变量,实现与所述应用软件数据内容的读写访问。 本专利技术通过全局变量,可以对运行于无操作系统的嵌入式设备的应用软件的调试,并且,本专利技术的调试方法支持对编译后的应用软件调试,支持嵌入式设备现场在线调试;又因为,本专利技术的调试方法无需开发专用调试器,因此使用、部署成本低。 这里,全局变量包括:强制标示、全局数据和强制数据; I)通过所述计算机设备为需要监测的全局变量的强制数据赋值,并将所述全局变量的强制标示设置为1〃; 2)启动所述应用软件; 3)所述应用软件在运行过程中,判断所述应用软件局部变量对应的所述全局变量的强制标示是否为1,如果是,执行步骤4),反之执行步骤5); 4)将所述全局变量的强制数据赋值给所述局部变量和所述全局变量的全局数据; 5)将所述局部变量赋值给相应的所述全局变量的全局数据; 6)通过所述数据通讯模块将所述全局变量信息传输给所述计算机设备进行显示。 由此可见,在算法运行的中间过程中,数据被强制后,不会被后续执行的数据覆盖,实现对数据的强制赋值的目的。 优选的,所述步骤I)到所述步骤4)为所述计算机设备通过所述全局变量实现对所述应用软件数据写访问;所述步骤5)和步骤6)为所述计算机设备通过所述全局变量实现对所述应用软件数据读访问。 所述全局变量在所述嵌入式设备的内存中占用的地址空间为全局变量区,所述全局变量区至少包括三个全局变量区副本,其中, 所述第一份全局变量区副本为全局数据区,所述全局数据区用来存储所述局部变量赋值给相应的所述全局变量的数据; 所述第二份全局变量区副本为标示区,所述标示区用来存储所述强制标示,这里的; 所述第三份全局变量区副本为强制数据区,用来存储所述强制数据; 所述标示区和所述强制数据区为所述全局数据区的映射,所述同一个全局变量的三份全局变量区副本的存储地址都相同。 所述全局变量区在所述嵌入式系统的内存中占用一定空间,所述占用的空间具有起始位置,所述全局数据区存储的全局变量包括地址、序号和地址长度,所述全局变量的地址为所述起始位置+(所述序号-1) *(所述地址长度);所述每个全局变量的地址长度相同。 读取所述全局变量的强制标示信息为在所述标示区读取所述全局变量对应的地址信息中存储的数据;读取所述全局变量的强制数据信息为在所述强制数据区读取所述全局变量对应的地址信息中存储的数据; 优选的,所述标示区中所述全局变量对应的地址的第I个字节为强制标示区。 在所述步骤2)中,所述计算机设备上通过与所述嵌入式设备的连接,启动所述应用软件的方法为:在所述计算机的控制台上执行启动应用软件的命令; 优选的,所述计算机包括在线监控程序,所述在线监控程序包括:启动所述应用软件的功能、为所述应用软件各输入变量赋值的功能、为所述应用软件的输出变量的值提供显示功能;所述步骤I)中,在所述计算机设备上通过与所述嵌入式设备的连接,启动所述应用软件的方法为,在所述在线监控程序中执行所述启动所述应用软件的功能; 优选的,所述在线监控程序为带图形界面的执行程序; 优选的,所述计算机与所述嵌入式设备通过串口或者网线连接; 优选的,所述计算机上安装有编辑所述应用软件的代码和将所述代码编译为所述应用软件的程序;所述嵌入式设备支持从所述计算机下载并安装编译后的所述应用软件,并调度所述应用软件的执行; 优选的,所述计算机设备为工程师站; 优选的,所述被测程序为所述应用软件中的任意长度的代码; 优选的,所述被测程序为所述应用软件的全部代码; 优选的,所述被测程序为所述应用软件的一条赋值语句; 所述计算机设备还包括算法组态、编译和下载并安装所述应用软件的功能,具体为: I)先在所述计算机设备上进行算法组态; 2)然后将经过算法组态的程序编译成所述嵌入式设备支持的所述应用软件; 3)再将所述应用软件下载到所述嵌入式设备并在所述嵌入式设备上安装的过程。 当执行完在线调试后,将所有全局变量的强制标示设为O ; 优选的,所述应用软件在下载并安装时,将所有全局变量的强制标示设为O。 优选的,所述嵌入式设备无通用操作系统。 由此,本专利技术提供的嵌入式设备在线调试方法的技术实现难度小、研发成本低、运行效率高,因此可广泛应用于各类DCS系统中。 本专利技术的有益效果是: 1、使用无操作系统的嵌入式设备,解决核电等高安全要求领域安全审查问题。 2、在系统调试时不中断程序,可以保证调试与正常状态运行的一致性,测试更有效。 3、针对无操作系统的嵌入式设备,无需开发专用调试器,使用、本文档来自技高网...
【技术保护点】
一种基于DCS系统应用软件在线调试方法,其特征在于,包括可运行应用软件的嵌入式设备,和与嵌入式设备互相连接的计算机设备,所述嵌入式设备还包括数据通讯模块,所述嵌入式设备通过所述数据通讯模块与所述计算机设备实现数据交互,其特征在于,所述嵌入式设备还包括应用软件数据区,所述应用软件数据区包括与所述应用软件的局部变量一一对应的全局变量,所述计算机设备通过所述全局变量,实现与所述应用软件数据内容的读写访问。
【技术特征摘要】
1.一种基于DCS系统应用软件在线调试方法,其特征在于,包括可运行应用软件的嵌入式设备,和与嵌入式设备互相连接的计算机设备,所述嵌入式设备还包括数据通讯模块,所述嵌入式设备通过所述数据通讯模块与所述计算机设备实现数据交互,其特征在于,所述嵌入式设备还包括应用软件数据区,所述应用软件数据区包括与所述应用软件的局部变量一一对应的全局变量,所述计算机设备通过所述全局变量,实现与所述应用软件数据内容的读写访问。2.根据权利要求1所述的一种基于DCS系统应用软件在线调试方法,其特征在于,所述全局变量包括:强制标示、全局数据和强制数据; 1)通过所述计算机设备为需要监测的全局变量的强制数据赋值,并将所述全局变量的强制标示设置为〃1〃 ; 2)启动所述应用软件; 3)所述应用软件在运行过程中,判断所述应用软件局部变量对应的所述全局变量的强制标示是否为1,如果是,执行步骤4),反之执行步骤5); 4)将所述全局变量的强制数据赋值给所述局部变量和所述全局变量的全局数据; 5)将所述局部变量赋值给相应的所述全局变量的全局数据; 6)通过所述数据通讯模块将所述全局变量信息传输给所述计算机设备进行显示。 优选的,所述步骤I)到所述步骤4)为所述计算机设备通过所述全局变量实现对所述应用软件数据写访问;所述步骤5)和步骤6)为所述计算机设备通过所述全局变量实现对所述应用软件数据读访问。3.根据权利要求2所述的一种基于DCS系统应用软件在线调试方法,其特征在于,所述全局变量在所述嵌入式设备的内存中占用的地址空间为全局变量区,所述全局变量区至少包括三个全局变量区副本,其中, 所述第一份全局变量区副本为全局数据区,所述全局数据区用来存储所述局部变量赋值给相应的所述全局变量的数据; 所述第二份全局变量区副本为标示区,所述标示区用来存储所述强制标示,这里的; 所述第三份全局变量区副本为强制数据区,用来存储所述强制数据; 所述标示区和所述强制数据区为所述全局数据区的映射,所述同一个全局变量的三份全局变量区副本的存储地址都相同。4.根据权利要求3所述的一种基于DCS系统应用软件在线调试方法,其特征在于,所述全局变量区在所述嵌入式系统的内存中占用一定空间,所述占用的空间具有起始位置,所述全局数据区存储的全局变量包括地址、序号和地址长度,所述全局变量的地址为所述起始位置+(所述序号-...
【专利技术属性】
技术研发人员:任保华,杨晨,齐敏,张浩,张智慧,
申请(专利权)人:北京广利核系统工程有限公司,中国广核集团有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。