嵌入式可编程控制器的运动控制方法及装置与流程

文档序号:16525867发布日期:2019-01-05 10:20阅读:389来源:国知局
嵌入式可编程控制器的运动控制方法及装置与流程

本发明涉及工业控制领域,尤其涉及一种嵌入式可编程控制器的运动控制方法及装置。



背景技术:

可编程控制器是工业控制领域的核心,在各行各业中都有广泛的应用。但是随着近年来设备功能越来越复杂,以及掌握核心知识产权的需要,越来越多的企业逐步采用专用控制器代替通用的可编程控制器。

嵌入式可编程控制器在专用控制器的基础上采用可编程控制器图形化的开发手段,充分利用了处理器的强大处理功能,实现了按需定制各类运动控制的功能。现有的嵌入式可编程控制器已经得到了国内外的广泛认可,已经有大量的嵌入式可编程控制器产品面世,广泛用于工业控制的各个领域。

然而,现有的嵌入式可编程控制器的运动控制方法,程序的逻辑部分、控制算法部分和工艺调整部分混合在一起,导致运动控制程序开发、调试和升级困难。



技术实现要素:

本发明提供一种嵌入式可编程控制器的运动控制方法及装置,以解决运动控制程序开发、调试和升级困难的问题。

本发明的第一个方面提供一种嵌入式可编程控制器的运动控制方法,包括:

若利用第一线程获取到运动定制信息,则利用第一线程确定所述运动定制信息对应的控制信息并自令牌存储区获取令牌,以及:当获取到的令牌包括第一令牌时,利用所述第一线程将所述控制信息写入第一存储区,并在写入后将所述第一令牌归还至所述令牌存储区;所述运动定制信息用于表征所述运动组件所需完成的目标运动;所述控制信息用于表征完成所述目标运动所需执行的控制命令和控制命令的执行顺序;

若利用第二线程检测到所述第一存储区存有控制信息,则利用所述第二线程根据所述控制信息确定待执行控制命令所需调用的算法,并自所述令牌存储区获取令牌,以及:当获取到的令牌包括所述第一令牌和第二令牌时,利用所述第二线程将所述算法的标识写入第二存储区,并在写入后将所述第一令牌与所述第二令牌归还至所述令牌存储区;

若利用第三线程检测到所述第二存储区存有算法的标识,则利用所述第三线程自所述令牌存储区获取令牌,当获取到的令牌包括所述第二令牌时,利用所述第三线程调用所述算法,以控制所述运动组件运动,并在完成运动控制后将所述第二令牌归还至所述令牌存储区。

可选的,在所述若利用第一线程获取到运动定制信息前,还包括:

在所述令牌存储区中存入所述第一令牌和所述第二令牌。

可选的,所述利用第一线程确定所述运动定制信息对应的控制信息,包括:

利用所述第一线程解析所述运动定制信息,确定所述运动定制信息对应的控制信息。

可选的,所述控制信息包括至少一个控制命令;

所述利用所述第一线程解析所述运动定制信息,确定所述运动定制信息对应的控制信息,包括:

利用所述第一线程解析所述运动定制信息,获取所述运动定制信息对应的定制参数和控制命令序列,所述定制参数表征所述控制命令,所述控制命令序列用于表征待执行控制命令的执行顺序;

根据所述定制参数和所述控制命令序列,确定所述运动定制信息对应的控制信息。

可选的,在所述利用所述第二线程根据所述控制信息确定待执行控制命令所需调用的算法前,还包括:

若所述待执行控制命令为结束命令,则进行结束处理。

本发明的第二个方面提供一种嵌入式可编程控制器的运动控制装置,包括:

第一线程模块,用于若利用第一线程获取到运动定制信息,则利用第一线程确定所述运动定制信息对应的控制信息并自令牌存储区获取令牌,以及:当获取到的令牌包括第一令牌时,利用所述第一线程将所述控制信息写入第一存储区,并在写入后将所述第一令牌归还至所述令牌存储区;所述运动定制信息用于表征所述运动组件所需完成的目标运动;所述控制信息用于表征完成所述目标运动所需执行的控制命令和控制命令的执行顺序;

第二线程模块,用于若利用第二线程检测到所述第一存储区存有控制信息,则利用所述第二线程根据所述控制信息确定待执行控制命令所需调用的算法,并自所述令牌存储区获取令牌,以及:当获取到的令牌包括所述第一令牌和第二令牌时,利用所述第二线程将所述算法的标识写入第二存储区,并在写入后将所述第一令牌与所述第二令牌归还至所述令牌存储区;

第三线程模块,用于若利用第三线程检测到所述第二存储区存有算法的标识,则利用所述第三线程自所述令牌存储区获取令牌,当获取到的令牌包括所述第二令牌时,利用所述第三线程调用所述算法,以控制所述运动组件运动,并在完成运动控制后将所述第二令牌归还至所述令牌存储区。

可选的,所述装置,还包括:

令牌存取模块,用于在所述令牌存储区中存入所述第一令牌和所述第二令牌。

可选的,所述第一线程模块,包括:

解析单元,用于利用所述第一线程解析所述运动定制信息,确定所述运动定制信息对应的控制信息。

可选的,所述控制信息包括至少一个控制命令;

所述解析单元,包括:

获取子单元,用于利用所述第一线程解析所述运动定制信息,获取所述运动定制信息对应的定制参数和控制命令序列,所述定制参数表征所述控制命令,所述控制命令序列用于表征待执行控制命令的执行顺序;

确定子单元,用于第二根据所述定制参数和所述控制命令序列,确定所述运动定制信息对应的控制信息。

可选的,所述装置,还包括:

结束模块,用于若所述待执行控制命令为结束命令,则进行结束处理。

本发明的第三方面,提供了一种电子设备,包括:

存储器与处理器;

所述存储器,用于存储所述处理器的可执行指令;

所述处理器配置为经由执行所述可执行指令来执行第一方面及其可选方案涉及的方法。

本发明的第四方面,提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现第一方面及其可选方案涉及的方法。

本发明提供的嵌入式可编程控制器的运动控制方法及装置,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令序列和参数分离到各个线程中执行,利用令牌对各线程进行有序调度,实现了嵌入式可编程控制器控制程序中的算法、控制命令、控制命令序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要调整控制程序。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种嵌入式可编程控制器的运动控制方法的流程示意图;

图2为本发明实施例提供的另一种嵌入式可编程控制器的运动控制方法的流程示意图;

图3为本发明实施例提供的再一种嵌入式可编程控制器的运动控制方法的流程示意图;

图4为本发明实施例提供的又一种嵌入式可编程控制器的运动控制方法的流程示意图;

图5为本发明实施例提供的一种嵌入式可编程控制器的运动控制装置的结构示意图;

图6为本发明实施例提供的另一种嵌入式可编程控制器的运动控制装置的结构示意图;

图7为本发明实施例提供的再一种嵌入式可编程控制器的运动控制装置的流程示意图;

图8为本发明实施例提供的又一种嵌入式可编程控制器的运动控制装置的流程示意图。

通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本发明构思的范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。

应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应当理解,在本发明中,“与a相对应的b”、“a与b相对应”或者“b与a相对应”,表示b与a相关联,根据a可以确定b。根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。

取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。

第一线程,也可以理解为用户定制线程,用户可以通过数控语言编写,实现运动控制的序列和参数的定制。

第二线程,也可以理解为控制程序层,本领域技术人员可以通过iec61131-3标准的开发语言编写,以根据定制的序列和参数,运行对应的控制命令。

第三线程,也可以理解为引擎算法层,本领域技术人员可以通过c语言进行编写,以根据控制命令,调用对应的算法,实现运动控制。

图1为本发明实施例提供的一种嵌入式可编程控制器的运动控制方法的流程示意图,参考图1所示,本发明实施例提供的嵌入式可编程控制器的运动控制方法应用于嵌入式可编程控制器,主要包括步骤s101至步骤s103,具体如下:

s101:若利用第一线程获取到运动定制信息,则利用第一线程确定所述运动定制信息对应的控制信息并自令牌存储区获取令牌,以及:当获取到的令牌包括第一令牌时,利用所述第一线程将所述控制信息写入第一存储区,并在写入后将所述第一令牌归还至所述令牌存储区。

结合实际情况举例来说:嵌入式可编程控制器开始运行后,其中的第一线程首先开始尝试从定制存储区读取运动定制信息,其中,定制存储区用于存储用户编写的运动定制信息,所述运动定制信息用于表征所述运动组件所需完成的目标运动,所述控制信息用于表征完成所述目标运动所需执行的控制命令和控制命令的执行顺序。

在具体实现过程中,用户可以根据实际的运动控制需要,通过数控语言定制运动定制信息以实现运动控制。数控语言可以包括g代码语言。

进一步地,当第一线程成功获取到运动定制信息后,第一线程根据运动定制信息中确定控制信息,并从令牌存储区获取令牌。其中,令牌包括第一令牌和第二令牌。当获取到第一令牌时,第一线程将从运动定制信息中确定的控制信息存入第一存储区,在完成写入后第一线程将第一令牌归还至令牌存储区,具体的,所述第一存储区用于在第一线程和第二线程间传递控制信息。可选的,所述利用第一线程确定所述运动定制信息对应的控制信息,包括:

利用所述第一线程解析所述运动定制信息,确定所述运动定制信息对应的控制信息。

在具体实现过程中,可以从定制存储区当前指针位置dp读入一个字节数据,作为指令码,判断其是否为结束指令,若是,则结束,若不是,则进行运动定制信息解析;

在一种可实施方式中,在完成运动定制信息解析后,可以通过解析得到的控制命令对应的启动标志地址ta和指令码code,将指令标志区中相应位置位,以找到对应的控制命令位置。将指令码code作为字节内偏移量得到需要置位的数据,然后将该位设为on,并交还令牌t1,从而开始调用第二线程中相关的算法来启动对应的控制命令。s102:若利用第二线程检测到所述第一存储区存有控制信息,则利用所述第二线程根据所述控制信息确定待执行控制命令所需调用的算法,并自所述令牌存储区获取令牌,以及:当获取到的令牌包括所述第一令牌和第二令牌时,利用所述第二线程将所述算法的标识写入第二存储区,并在写入后将所述第一令牌与所述第二令牌归还至所述令牌存储区。

结合实际情况举例来说:第二线程尝试检测第一存储区中是否有控制信息,若第二线程检测到第一存储区中存储有控制信息,则根据控制信息包括的控制命令以及控制命令的顺序,依序调用控制命令所需要的算法,并从令牌存储区获取令牌。

在具体实现过程中,控制命令可以通过iec61131-3标准的开发语言编写。

进一步地,当获取到第一令牌和第二令牌时,第二线程将待调用的算法的标识写入第二存储区,并在写入后将所述第一令牌与所述第二令牌归还至所述令牌存储区。

其中,第二存储区用于在第二线程和第三线程间传递算法的标识。

在实际应用中,所述第二线程,还可以用于根据控制信息来判断多个控制命令之间的逻辑关系。

s103:若利用第三线程检测到所述第二存储区存有算法的标识,则利用所述第三线程自所述令牌存储区获取令牌,当获取到的令牌包括所述第二令牌时,利用所述第三线程调用所述算法,以控制所述运动组件运动,并在完成运动控制后将所述第二令牌归还至所述令牌存储区。

在具体实现过程中,算法具体可以由c语言或汇编语言编写。算法除了可以控制所述运动组件运动,还可以实现plc的初始化、中断、定时器、通信等各类功能。

本实施例提供的嵌入式可编程控制器的运动控制方法,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图2为本发明实施例提供的另一种嵌入式可编程控制器的运动控制方法的流程示意图,参考图2所示,在任一实施例的基础上,在步骤s101之前,所述方法还包括步骤s201,具体如下:

s201:在所述令牌存储区中存入所述第一令牌和所述第二令牌。

在具体实现过程中,当嵌入式可编程控制器开始进行运动控制前,首先会在令牌存储区存入第一令牌和第二令牌。

具体的,可以在可编程控制器得电后,立即存入令牌,也可以在运动定制信息存入后存入令牌。

本实施例提供的嵌入式可编程控制器的运动控制方法,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图3为本发明实施例提供的又一种嵌入式可编程控制器的运动控制方法的流程示意图,参考图3所示,在任一实施例的基础上,所述利用第一线程确定所述运动定制信息对应的控制信息,包括步骤s301至步骤s302,具体如下:

s301:利用所述第一线程解析所述运动定制信息,获取所述运动定制信息对应的定制参数和控制命令序列,

其中,所述控制信息包括至少一个控制命令。

在具体实现过程中,当第一线程获取到运动定制信息后,首先对运动定制信息进行解析,具体的,可以通过设置解析表来解析运动定制信息。

其中,所述定制参数表征所述控制命令,所述控制命令序列用于表征待执行控制命令的执行顺序。

s302:根据所述定制参数和所述控制命令序列,确定所述运动定制信息对应的控制信息

结合实际情况举例来说:解析获取的定制参数用于确定完成目标运动所需的控制命令,解析获取的控制命令序列用于确定所需控制命令的执行顺序,具体的,当控制命令为一个,无控制命令序列。

本实施例提供的嵌入式可编程控制器的运动控制方法,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图4为本发明实施例提供的另一种嵌入式可编程控制器的运动控制方法的流程示意图,参考图4所示,在任一实施例的基础上,在步骤s102之前,所述方法还包括步骤s401,具体如下:

s401:若所述待执行控制命令为结束命令,则进行结束处理。

结合实际情况举例来说:在第二线程根据控制信息调用对应的待执行控制命令调用算法前,可以先判断待执行的控制命令是否为结束命令,若待执行的控制命令为结束命令,则结束处理待执行命令,以使嵌入式可编程控制器停止运动控制。

本实施例提供的嵌入式可编程控制器的运动控制方法,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图5为本发明实施例提供的一种嵌入式可编程控制器的运动控制装置的结构示意图,参考图5所示,本发明实施例提供的嵌入式可编程控制器的运动控制装置50,具体如下:

第一线程模块51,用于若利用第一线程获取到运动定制信息,则利用第一线程确定所述运动定制信息对应的控制信息并自令牌存储区获取令牌,以及:当获取到的令牌包括第一令牌时,利用所述第一线程将所述控制信息写入第一存储区,并在写入后将所述第一令牌归还至所述令牌存储区。

其中,所述运动定制信息用于表征所述运动组件所需完成的目标运动;所述控制信息用于表征完成所述目标运动所需执行的控制命令和控制命令的执行顺序。

第二线程模块52,用于若利用第二线程检测到所述第一存储区存有控制信息,则利用所述第二线程根据所述控制信息确定待执行控制命令所需调用的算法,并自所述令牌存储区获取令牌,以及:当获取到的令牌包括所述第一令牌和第二令牌时,利用所述第二线程将所述算法的标识写入第二存储区,并在写入后将所述第一令牌与所述第二令牌归还至所述令牌存储区。

第三线程模块53,用于若利用第三线程检测到所述第二存储区存有算法的标识,则利用所述第三线程自所述令牌存储区获取令牌,当获取到的令牌包括所述第二令牌时,利用所述第三线程调用所述算法,以控制所述运动组件运动,并在完成运动控制后将所述第二令牌归还至所述令牌存储区。

本实施例提供的嵌入式可编程控制器的运动控制装置,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图6为本发明实施例提供的另一种嵌入式可编程控制器的运动控制装置的结构示意图,参考图6所示,在任一实施例的基础上,所述装置还包括:

令牌存取模块54,用于在所述令牌存储区中存入所述第一令牌和所述第二令牌。

本实施例提供的嵌入式可编程控制器的运动控制装置,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图7为本发明实施例提供的又一种嵌入式可编程控制器的运动控制装置的结构示意图,可选的,第一线程模块51包括解析单元511,参考图7所示,在任一实施例的基础上,解析单元511,具体包括:

获取子单元5111,用于利用所述第一线程解析所述运动定制信息,获取所述运动定制信息对应的定制参数和控制命令序列。

其中,所述定制参数表征所述控制命令,所述控制命令序列用于表征待执行控制命令的执行顺序。

确定子单元5112,用于第二根据所述定制参数和所述控制命令序列,确定所述运动定制信息对应的控制信息。

其中,所述控制信息包括至少一个控制命令。

本实施例提供的嵌入式可编程控制器的运动控制装置,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

图8为本发明实施例提供的再一种嵌入式可编程控制器的运动控制装置的结构示意图,参考图8所示,在任一实施例的基础上,所述装置还包括:

结束模块55,用于若所述待执行控制命令为结束命令,则进行结束处理。

本实施例提供的嵌入式可编程控制器的运动控制装置,将嵌入式可编程控制器运动控制程序中的算法、控制命令、控制命令的序列和参数分离到各个线程中执行,利用令牌实现各线程交互运行和数据传输,实现了嵌入式可编程控制器运动控制程序中算法、控制命令、控制命令的序列和参数的互相独立,从而允许程序开发人员可以单独开发或调整某一个线程,降低了运动控制程序开发、调试和升级的难度,方便用户按照实际控制需要对运动控制程序进行调整。

本实施例还提供一种电子设备,包括:

存储器与处理器;所述存储器,用于存储所述处理器的可执行指令;

所述处理器配置为经由执行所述可执行指令来执行图1-图4所述的嵌入式可编程控制器的运动控制方法。

本实施例还提供一种可读存储介质,可读存储介质中存储有程序,当电子设备的至少一个处理器执行该程序时,电子设备执行上述的各种实施方式提供的方法。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1