发明内容
为了解决上述技术问题之一,本发明的目的是提供一种干涉区逻辑块的生成方法、系统、装置和存储介质,能够自动生成干涉区逻辑块。
本发明所采用的技术方案是:
一种干涉区逻辑块的生成方法,包括以下步骤:
获取机器人之间的干涉区;
获取项目标准,根据干涉区和项目标准生成干涉区逻辑块;
获取信号关键字,根据信号关键字获取干涉区逻辑块的引脚信号。
进一步,所述获取机器人之间的干涉区,包括:
获取项目中所有的机器人信息,根据机器人信息生成机器人矩阵;
获取干涉区号,结合机器人矩阵和干涉区号生成干涉区矩阵,所述干涉区矩阵记录任两个机器人之间的干涉区号。
进一步,所述机器人信息为机器人名称,所述根据机器人信息生成机器人矩阵,包括:
将机器人名称填充至矩阵的第一行和第一列,获得对称矩阵作为机器人矩阵。
进一步,所述获取项目标准,根据干涉区和项目标准生成干涉区逻辑块,包括:
依次从干涉区矩阵获取第一机器人,以及获取第一机器人与其它机器人之间的干涉区号;
获取项目标准,根据项目标准以机器人为单位创建第一机器人的干涉区逻辑块;
根据项目标准和干涉区号获取逻辑表达式,将逻辑表达式写入干涉区逻辑块中。
进一步,所述获取项目标准,根据干涉区和项目标准生成干涉区逻辑块,包括:
依次从干涉区矩阵获取第一机器人,以及获取第一机器人与其它机器人之间的干涉区号;
获取项目标准,根据项目标准以干涉区号为单位创建第一机器人的干涉区逻辑块;
根据项目标准和干涉区获取逻辑表达式,将逻辑表达式写入干涉区逻辑块中。
进一步,所述引脚信号包括输入信号和输出信号,所述获取信号关键字,根据信号关键字获取干涉区逻辑块的引脚信号,包括:
获取信号关键字,根据信号关键字从预设的机器人输入输出信号表中获取干涉区逻辑块的输入信号和输出信号;
根据输入信号和输出信号对干涉区逻辑块和机器人进行信号连接。
进一步,还包括导出步骤,所述导出步骤包括:
将项目标准、信号关键字和干涉区矩阵导出并按照预设格式存储。
本发明所采用的另一技术方案是:
一种干涉区逻辑块的生成系统,包括:
干涉区获取模块,用于获取机器人之间的干涉区;
逻辑块生成模块,用于获取项目标准,根据干涉区和项目标准生成干涉区逻辑块;
信号连接模块,用于获取信号关键字,根据信号关键字获取干涉区逻辑块的引脚信号。
本发明所采用的另一技术方案是:
一种干涉区逻辑块的生成装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上所述方法。
本发明所采用的另一技术方案是:
一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行如上所述方法。
本发明的有益效果是:本发明通过对干涉区逻辑块进行标准化,在获取项目标准后自动生成干涉区逻辑块,以及根据信号关键字自动连接干涉区逻辑块的引脚信号,实现快速、批量地创建干涉区逻辑块,提高了创建干涉区逻辑块的效率。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
如图1所示,本实施例提供了一种干涉区逻辑块的生成方法,包括以下步骤:
S1、获取机器人之间的干涉区。
先获取所有机器人之间的干涉区,判断哪些机器人之间是存有干涉区;且两个机器人之间可存有多个干涉区,如图2所示,图2是机器人干涉区规划表,图中罗列了两两机器人之间使用到的干涉区号码,供工程师制作干涉区逻辑块及现场作业时查阅。任意两台机器人之间通过双向箭头连接并配上工艺所属干涉区号,直观易懂。由图2中可看出,两个机器人之间可存有多个(2个以上)干涉区。其中,有多种方式将机器人之间的干涉区输入到软件中,以创建对应的干涉区逻辑块。
在一些实施例中,工程师可通过手动的方式输入;针对两个机器人(如图2中机器人11A和11B),通过显示界面手动地输入该两个机器人的干涉区,以使后续自动生成干涉区逻辑块。这种方式在建立逻辑块时,需通过多次手动输入。
在一些实施例中,工程师可通过编辑Excel表格的方式,先根据预设格式先将所有机器人之间的干涉区编辑在Excel表格内,再将Excel表格直接导入软件中,以使后续自动生成干涉区逻辑块。这种输入方式只需输入一次,但工程师需要输入机器人基本信息(比如机器人的名称等)和干涉区号,以及手动连接逻辑块的引脚信号。
在一些实施例中,软件先读取整个项目中的机器人的基本信息,根据基本信息生成矩阵表格,再由工程师对应的输入干涉区号,具体包括步骤S11-S12:
S11、获取项目中所有的机器人信息,根据机器人信息生成机器人矩阵;其中,所述机器人信息为机器人名称。
S12、获取干涉区号,结合机器人矩阵和干涉区号生成干涉区矩阵,所述干涉区矩阵记录任两个机器人之间的干涉区号。
参照图3,软件在读取了项目中机器人的基本信息后,根据机器人名称建立并显示矩阵表格,该矩阵表格为一个对称矩阵,对称矩阵的第一行和第一列为机器人名称,工程师可根据干涉区规划表在表格内快速输入两两机器人之间的干涉区号,若存在多个干涉区,两个号码之间使用圆点隔开。输入了干涉区号的机器人名称会显示为高亮,方便与未填写的机器人区分开。由于矩阵表对角线的关系,只需在左下角或右上角空白单元格内输入干涉区号。干涉区是对两台不同的机器人而言的,因此相同的机器人时无法填写干涉区号,表格显示为灰色不可填。工程师在机器人矩阵上输入干涉区号后,保存为干涉区矩阵,将该干涉区矩阵用于后续自动生成干涉区逻辑块。保存了该干涉区矩阵后,当另一个项目中,使用到相同的机器人组合,则可直接将涉区矩阵导出并输入到另一个项目中,即可实现干涉区的获取。
S2、获取项目标准,根据干涉区和项目标准生成干涉区逻辑块。
在不同的项目标准中,规定干涉区逻辑块的输入输出引脚信号、逻辑表达式和信号关键字不同。比如,对于信号关键字,在某份标准中由字母I表示输入信号的关节字,而字母Q表示输出信号的关节字,而在另一份标准中,输入信号的关键字为:Zone Req表示请求信号,Zone Enable表示应答信号,Area Free表示占用信号。对于输入引脚,在某份标准中输入引脚可能只有两个;而在另一份标准中,输入引脚则有三个。对于逻辑表达式,所述逻辑主要为布尔逻辑,包括“1”和“0”两种状态。以下结合图4对逻辑表达式进行说明。从图4中可看出干涉区逻辑块(简称LB)包括三个输入信号(Rc_ReqZone、Rw_ClrOfZone和Rw_ClrToEnterZone)和一个输出信号(Rc_ClrToEnterZone),所述Rc_ReqZone信号代表机器人申请进入干涉区,所述Rw_ClrOfZone信号代表其他机器人没有进入干涉区,所述Rw_ClrToEnterZone代表其他机器人准备进入干涉区,干涉区逻辑块输出引脚的逻辑表达式为:Rc_ClrToEnterZone=Rc_ReqZone AND Rw_ClrOfZone AND NOT Rw_ClrToEnterZone,即逻辑表达式表达的意思是:逻辑块在接收到机器人进入干涉区的申请后,需要在检测到干涉区没有其他机器人以及没有其他机器人准备进入干涉区,才输出控制信号,控制机器人进入干涉区。在不同的标准中,所述逻辑表达式并不相同,有可能在检测到干涉区没有其他机器人,即可控制机器人进入干涉区。
根据项目标准和获得的干涉区创建干涉区逻辑块,创建干涉区逻辑块的方式有多种,比如将一台机器人的所有干涉逻辑都编写在同一个干涉区逻辑块内;也可将一台机器人与另一台机器人的所有干涉逻辑编写在一个干涉区逻辑块内;也可将一台机器人的一个干涉区号逻辑编写在一个干涉区逻辑块内。其中,将一台机器人的所有干涉逻辑都编写在同一个逻辑块的步骤包括步骤S21A-S23A:
S21A、依次从干涉区矩阵获取第一机器人,以及获取第一机器人与其它机器人之间的干涉区号;
S22A、获取项目标准,根据项目标准以机器人为单位创建第一机器人的干涉区逻辑块;
S23A、根据项目标准和干涉区号获取逻辑表达式,将逻辑表达式写入干涉区逻辑块中。
按照顺序依次获取第一机器人,该顺序可以按照干涉区矩阵行的顺序;具体的,先获取第一行的机器人作为第一机器人,依次按照顺序获取该第一机器人与其他机器人的干涉区号,该顺序可以按照干涉区矩阵列的顺序,由于第一列机器人的名称与第一机器人的名称相同,所以从第二列的机器人开始获取干涉区号,根据项目标准和干涉区号获取逻辑表达式,并将逻辑表达式写入干涉区逻辑块中。在本实施例中,以机器人为单位建立干涉区逻辑块,即一个机器人对应一个干涉区逻辑块,该干涉区逻辑块的名称可根据机器人的名称进行命名,从而与机器人对应。在该干涉区逻辑块内存储有该机器人相关的所有干涉区的逻辑表达式,当机器人需要进入哪个干涉区时,向干涉区逻辑块发送对应的请求信号,干涉区逻辑块根据对应的逻辑表达式,检测到符合条件后,通过输出引脚输出信号,控制机器人进入该干涉区。
通过上述这种方法,对所有的机器人及机器人对应的干涉区进行遍历后,自动生成各个机器人对应的干涉区逻辑块,无需工程师手动创建各个干涉区逻辑块,极大地提高了工作效率。另外,采用机器人与干涉区逻辑块对应的方式,方便工程师后期对机器人进行修改。
其中,将一台机器人的一个干涉区号逻辑编写在一个干涉区逻辑块的步骤包括步骤S21B-S23B:
S21B、依次从干涉区矩阵获取第一机器人,以及获取第一机器人与其它机器人之间的干涉区号;
S22B、获取项目标准,根据项目标准以干涉区号为单位创建第一机器人的干涉区逻辑块;
S23B、根据项目标准和干涉区获取逻辑表达式,将逻辑表达式写入干涉区逻辑块中。
在本实施例中,针对各个干涉区号建立一个干涉区逻辑块,若两个机器人之间存有多个干涉区号,则建立多个干涉区逻辑块;干涉区逻辑块的命名方式可根据机器人名称和干涉区号进行命名。各个干涉区逻辑块只有一个逻辑表达式,当机器人请求进入干涉区号的干涉区时,通过发送请求信号至对应的干涉区逻辑块,干涉区逻辑块检测到符合条件后,输出信号,以控制机器人进入干涉区。通过上述这种方式,当工程师需要修改某个干涉区时,能够快速地修改干涉区逻辑块。
S3、获取信号关键字,根据信号关键字获取干涉区逻辑块的引脚信号。
步骤S3对干涉区逻辑块和机器人进行信号连接,需要注意的是,步骤S2和步骤S3并不限定先后执行的关系,也可先执行步骤S3后在执行步骤S2,或者两者交替执行。步骤S3具体包括步骤S31-S32:
S31、获取信号关键字,根据信号关键字从预设的机器人输入输出信号表中获取干涉区逻辑块的输入信号和输出信号;
S32、根据输入信号和输出信号对干涉区逻辑块和机器人进行信号连接。
所述信号关键字,用于查找信号,连接干涉区逻辑块的引脚。所述逻辑块内部的引脚、连接信号、逻辑表达式等信息都是由项目标准规定的,当同一规定后,可直接由信号关键字获得干涉区逻辑块的输入信号和输出信号。所述机器人输入输出信号表为预先建立的表格,也可由软件获得并存储的输入输出信号表格。参照图4,当机器人A和机器人B之间存有干涉区逻辑块时,干涉区逻辑块A的输入信号分别与机器人A和机器人B连接;同时,干涉区逻辑块B的输入信号分别与机器人B和机器人A连接。
通过上述方式,连接好各个干涉逻辑块的引脚信号后,可自动获得最后的干涉区逻辑块。工程师只需选择或者输入信号关键字,软件自动根据信号关键字获取对应的引脚信号,并对干涉逻辑块和机器人进行连接。
进一步作为可选的实施方式,还包括导出步骤,所述导出步骤包括:
将项目标准、信号关键字和干涉区矩阵导出并按照预设格式存储。后续工程中可直接调取数据,适用于团队合作。
具体实施例一
工程师在通用逻辑块Excel表编辑干涉区逻辑块。先根据标准机器人信号Excel表模板手动创建:机器人输入输出信号表、干涉区规划表和机器人宏程序,根据宏程序的DO或DI信号从机器人输入输出信号表找到对应的DO或DI信号,从而获得对应的干涉区号,相当于根据关键字获取引脚信号。如图5所示,工程师在逻辑块Excel表编辑干涉区逻辑块的信息,Entry Name(输入信号)一列填入机器人一个干涉区的请求信号,接着是该干涉区的占用信号,将该机器人所有干涉区号码的信号填完后再到下一个机器人。Exit Name(输出信号)一列填入应答信号,在Value Expression一列填写满足应答信号的逻辑表达式,ExitName和Value Expression这两者一一对应。逻辑表达式通常使用信号名表示成“无请求+无占用”的形式,依次按照机器人干涉区号填完,以此顺序填写方便统计。为提高效率,信号名直接从输入输出信号表复制到此表对应位置粘贴。表格编辑好后采用逻辑块导入功能创建干涉区逻辑块。
通过上述这种方式,工程师无需逐个创建干涉区逻辑块,只需在逻辑块Excel表填写各个逻辑块的输入信号、输出信号以及逻辑表达式后,将逻辑块Excel表导入即可生成所有的干涉区逻辑块,提高了干涉区逻辑块的制作效率,提高了工程师的工作效率。
具体实施例二
在本实施例中,借助信号关键字自动连接信号,以及根据选择的标准自动生成逻辑块和固定格式的逻辑表达式,无需工程师手动编辑,不存在出错风险,保证工作质量。且这种方式具有较强的兼容性,在不同的项目中,只需更换信号关键字和项目标准,就可以自动、快速地生成机器人的干涉区逻辑块。该方法的具体执行流程如下:
步骤一、工程师启动软件,软件自动读取当前项目中的机器人,生成并显示对称矩阵,行列都是机器人名称,如图3所示。因此机器人干涉都可以简化为两两干涉,通过该矩阵可反映每两个机器人的对应关系。工程师根据干涉区规划表输入两两机器人之间的干涉区号,若两台机器人之间有多个干涉区号,以点“.”隔开;需要注意的是,本实施例对以什么分隔符隔开多个干涉区号并无限制,此版本软件使用“.”,但使用其它字符都应属于本实施例的保护范围内。除上述通过矩阵输入干涉区号外,另一种方法是选择之前保存好的表格(干涉区矩阵表格)直接导入作为创建新干涉区逻辑块的信息。软件通过配置了导入和导出的功能,适用于团队合作,无需工程师每次都手动编辑干涉区矩阵。
工程师可根据干涉区规划表在表格内快速输入两两机器人之间的干涉区号,输入了干涉区号的机器人名称会显示高亮,方便与未填写的机器人区分开。由于矩阵表对角线的关系,只需在左下角或右上角空白单元格内输入干涉区号。干涉区是对两台不同的机器人而言的,因此一台机器人时无法填写干涉区号,表格显示为灰色不可填。当机器人数量增加,干涉区号增加,此种方法将比传统方法大大提高效率。
步骤二、选择标准。每个标准会对应着一个默认的信号名关键字,与控制逻辑的实现有关。信号关键字,只是为查找信号,连接引脚。逻辑块内部的引脚、连接信号、表达式等信息都是由标准决定的,所以需要有不同的标准的入口。若默认的关键字与项目不一致,可在编辑框内手动更改。参照图6,以SAIC_Fanuc的项目标准为例,Zone Req表示请求信号,Zone Enable表示应答信号,Area Free表示占用信号。软件上通过预存各个项目标准的信号关键字,工程师只需选择对应的项目标准即可,无需手动输入信号关键字,方便工程师的操作。
步骤三、点击创建按钮即可创建干涉区逻辑块。点击创建按钮后,参见图8,根据步骤一的干涉区规划矩阵表(即干涉区矩阵)自动对机器人及机器人之间的干涉区号进行遍历,建立干涉区逻辑块。其中,可采用机器人为单位创建干涉区逻辑块,也可采用干涉区好为单位创建干涉区逻辑块,也可兼容这两种方式创建干涉区逻辑块。根据选择的项目标准编辑逻辑表达式,并将逻辑表达式写入干涉区逻辑块。根据关键字获取输入信号和输出信号,根据输入信号和输出信号对干涉区逻辑块和机器人进行信号连接,完成干涉区逻辑块的自动创建。通过上述方式,工程师只需选择项目标准以及输入干涉区号,即可点击生成干涉区逻辑块,极大地提高了干涉区逻辑块创建的效率。
另外,为了更加方便工程师的操作,在软件界面还设置了“Reset”、“Clear”、“Export”和“Import”四个按钮。所述“Reset”或“Clear”按钮,用于清除干涉区矩阵信息,使用场景包括工程师填写错误等。“Export”按钮为导出按钮,可以点击导出按钮将当前设置信息包括标准类型、信号名称关键字、所有机器人名称以及对应的干涉区关系,保存到Excel表中,供下次使用。“Import”按钮为导入按钮,即上述提及的,无需工程师手动输入干涉区号矩阵信息、信号关键字信息,直接导入即可。基于导入导出功能,提升了本实施例方法的可用性,对团队合作十分有利。无需每位工程师都手动输入,只需要团队中某人制作好初始表格,即可在项目中多次使用。
在一些实施例中,还有日志输出,便于工程师了解哪些逻辑块被创建、引脚和信号是否连接成功等信息。
如图7所示,本实施例还提供了一种干涉区逻辑块的生成系统,包括:
干涉区获取模块,用于获取机器人之间的干涉区;
逻辑块生成模块,用于获取项目标准,根据干涉区和项目标准生成干涉区逻辑块;
信号连接模块,用于获取信号关键字,根据信号关键字获取干涉区逻辑块的引脚信号。
本实施例的一种干涉区逻辑块的生成系统,可执行本发明方法实施例所提供的一种干涉区逻辑块的生成方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
本实施例还提供了一种干涉区逻辑块的生成装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上所述方法。
本实施例的一种干涉区逻辑块的生成装置,可执行本发明方法实施例所提供的一种干涉区逻辑块的生成方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
本实施例还提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行如上所述方法。
本实施例的一种存储介质,可执行本发明方法实施例所提供的一种干涉区逻辑块的生成方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
可以理解的是,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。