基于通用计算机的机器人控制系统的制作方法

文档序号:22427271发布日期:2020-10-02 10:02阅读:109来源:国知局
基于通用计算机的机器人控制系统的制作方法

本发明涉及工业计算机领域,且特别涉及一种基于通用计算机的机器人控制系统。



背景技术:

随着工业自动化的不断推进,大多生产产线实现自动化,各式工业机器人被运用到不同的产线以适用不同的应用场景,从而节省了大量人力、财力,也大大提高了工作效率。机器人适用范围的不断扩大,机器人的智能化程度也不断的提高,不管是其内部的数据处理能力还是响应外部输入的能力都越来越强。然而,智能化程度的提高给机器人内部的数据通信能力和通讯成本造成很大的压力。

此外随着对于工业机器人而言,安全是第一位的。在现有的工业机器人控制系统中,安全逻辑主要由机器人控制柜中的独立模块(即安全单元)来实现的;譬如,当外部输入急停信号或者示教器输入急停信号时,安全单元输出安全信号以关闭伺服驱动模块的输出,从而实现机器人动作的急停以确保安全。在现有的这种逻辑控制中,安全逻辑的控制完全由安全单元这一独立模块来执行。一旦安全单元或传输安全信号的安全回路出现故障,这种控制方式将完全失效,机器人将无法响应急停信号而急停。因此,存在安全等级低的问题。



技术实现要素:

本发明为了克服现有机器人控制系统硬件依赖度高、扩展能力差以及成本高的问题,提供一种基于通用计算机的机器人控制系统。

为了实现上述目的,本发明提供一种基于通用计算机的机器人控制系统,其包括机器人控制器、数据传输模块、伺服驱动模块、安全单元、示教器以及电源模块。伺服驱动模块通过数据传输模块连接于机器人控制器,接收机器人控制器的运动指令以驱动机器人运动。安全单元通过数据传输模块分别连接于机器人控制器和伺服驱动模块,当接收到输入异常信号或故障信号后关闭伺服驱动模块且将输入异常信号或故障信号传输至机器人控制器。示教器接收机器人控制器发送的终端视频信号和第一控制交互信号;同时将第二控制交互信号发送至机器人控制器以控制机器人控制器的运行。电源模块分别电性连接机器人控制器和安全单元。

根据本发明的一实施例,安全单元、伺服驱动模块以及数据传输模块中的总线传输主站三者相互连接,安全单元和总线传输主站之间相互监测,安全单元和伺服驱动模块之间建立第一安全回路,总线传输主站和伺服驱动模块之间建立第二安全回路;

当安全单元接收到异常输入信号、监测到总线传输主站出现故障或者其自身出现故障时第一安全回路内产生第一安全控制信号以关闭伺服驱动模块的输出;

同时,当总线传输主站接收到安全单元输出的异常输入信号、其自身出现故障或者监测到安全单元出现故障时第二安全回路内产生第二安全控制信号以关闭伺服驱动模块的输出。

根据本发明的一实施例,机器人控制器内的实时操作模块连接于总线传输主站;当实时操作模块出现故障时:

总线传输主站通过第一安全回路输出第一安全控制信号以关闭伺服驱动模块的输出,同时将实时操作模块的故障信号输出至安全单元;

安全单元通过第二安全回路输出第二安全控制信号以关闭伺服驱动模块的输出。

根据本发明的一实施例,机器人控制器内还包括非实时操作模块;当非实时操作模块出现故障时,实时操作模块获取非实时操作模块的故障信号并输出至总线传输主站,总线传输主站通过第一安全回路和第二安全回路关闭伺服驱动模块的输出。

根据本发明的一实施例,机器人控制器内还具有存储模块,实时操作模块和非实时操作模块共享存储模块,两者通过共享的存储模块分别获取对方的心跳信号以监测对方的状态。

根据本发明的一实施例,非实时操作模块连接于安全单元且安全单元监听非实时操作模块的状态;

当实时操作模块出现故障时,非实时操作模块将故障信号输出至安全单元,安全单元输出第一安全控制信号以关闭伺服驱动模块的输出;

当非实时操作模块出现故障时,安全单元监听到故障信号后输出第一安全控制信号以关闭伺服驱动模块的输出。

根据本发明的一实施例,当安全单元接收到异常输入信号时将异常输入信号传输至非实时操作模块,非实时操作模块通过存储模块将该异常输入信号传输至实时操作模块,实时操作模块触发总线传输主站输出第二安全控制信以关闭伺服驱动模块的输出。

根据本发明的一实施例,电源模块:

包括电源转换电路;

控制器电源模块,连接于电源转换电路的输出端且为机器人控制器供电;

网压检测模块,连接于电源转换电路以检测电源转换电路的输入电压,当主电路断电,电源转换电路的输入电压低于设定阈值时,具有断电保护功能的电源输出断电触发信号以触发机器人控制器进行断电存储;

储能模块,连接于控制器电源模块,在电源转换电路正常工作时储能模块储能;当电源转换电路的输入电压低于设定阈值时储能模块输出能量以使控制器电源模块正常工作,控制器电源模块为机器人控制器供电以使其完成数据存储。

根据本发明的一实施例,储能模块包括连接于电源转换电路的正负母线之间的电容,电源转换电路正常供电时为电容充电;当电源转换电路的输入电压低于设定阈值时电容释放能量至控制器电源模块以使其正常工作。

根据本发明的一实施例,电源模块还包括跨接于控制器电源模块的输出端的输出电容,输出电容在电源转换电路正常工作时储能,当电源转换电路的输入电压低于设定阈值时输出电容放电,释放的能量与储能模块的输出能量相叠加后输出至机器人控制器。

根据本发明的一实施例,基于通用计算机的机器人控制系统还包括电源时序管理单元,电源时序管理单元包括:

电源判断模块,在主电路断电后再次上电时,判断电源模块的输出状态;

控制器判断模块,当电源模块处于断电保护输出时,判断机器人控制器是否关机;

时序控制模块,当机器人控制器已关机时,输出上电触发信号至机器人控制器以使其重新启动操作模块;当机器人控制器仍未关机时,实时监测机器人控制器内示教器程序的状态或机器人控制器主板的断电信号;

当监测到示教器程序已关闭后延时一预设时间以使机器人控制器关机,延时结束后输出上电触发信号至机器人控制器以使其重新启动操作模块;

或者,当接收到机器人控制器主板的断电信号后输出上电触发信号至机器人控制器以使其重新启动操作模块。

根据本发明的一实施例,当电源模块处于断电保护输出且机器人控制器仍未关机时,时序控制模块每间隔一段时间监测并确认机器人控制器内示教器程序输出的心跳信号,当在预设的间隔时间内未能接收到心跳信号则判断示教器程序已关闭。

根据本发明的一实施例,当机器人控制器关机后,时序控制模块断开电源模块和机器人控制器之间的通路后又闭合,为机器人控制器提供一具有上升沿的上电触发信号。

根据本发明的一实施例,电源时序管理单元在主电路断电时,电源模块进入断电保护输出状态且输出断电触发信号至机器人控制器以触发机器人控制器进行断电存储。

根据本发明的一实施例,示教器,包括:

接收模块,接收机器人控制器发送的终端视频信号和第一控制交互信号;

显示模块,在示教器上显示接收的终端视频信号;且响应于接收的第一控制交互信号,在示教器上对应的显示区域显示第一控制交互信号内的信息;

输入信号获取模块,获取示教器面板输入的信号或其它终端输入的信号以形成第二控制交互信号;

发送模块,将第二控制交互信号发送至机器人控制器以控制机器人控制器的运行。

根据本发明的一实施例,示教器还包括:

解码模块,电性连接于接收模块,将接收模块输出的终端视频信号和第一控制交互信号进行编码处理后输出至显示模块;

编码模块,电性连接于输入信号获取模块,将第二控制交互信号编码后输出至发送模块。

根据本发明的一实施例,数据传输模块包括:

总线传输主站,连接于机器人控制器,机器人控制器通过总线传输主站与多个驱动模块相连接以控制机器人的运动状态;

第一接口模块,通过总线传输主站连接于机器人控制器并传输第一类信号;

第二接口模块,连接于机器人控制器并传输第二类信号;第一接口模块的传输速度高于第二接口模块且机器人控制器对第一类信号的响应等级高于第二类信号。

根据本发明的一实施例,总线传输通讯网络为ethercat网络,总线传输主站为ethercat主站,第一接口模块和多个驱动模块均作为总线传输主站的ethercat从站。

根据本发明的一实施例,机器人控制器采用基于主从协调的机器人控制方法控制伺服驱动模块,基于主从协调的机器人控制方法包括:

读取机器人作业程序指令;

解析读取的指令以获得每个机器人的编号信息、当前运动信息以及设定的表征每个机器人主从关系的当前主从信息;

基于解析获得每个机器人的编号信息、当前运动信息以及当前主从信息从运动参数配置文件中为每个机器人匹配对应的运动参数;

基于每个机器人所匹配的运动参数和当前主从信息调用主从协调控制算法以进行主从协调控制。

根据本发明的一实施例,机器人控制器采用基于机器人作业程序的增益控制方法控制伺服驱动模块,所基于机器人作业程序的增益控制方法包括:

依次读取机器人作业程序中的每条指令;

当读取的指令为运动型指令时,解析读取的每条运动型指令中机器人的运动速度、轨迹类型以及轨迹类型参数;

基于解析获得的机器人的运动速度和轨迹类型获取对应的增益参数;

基于解析的运动速度、轨迹类型、轨迹类型参数以及对应的增益参数生成机器人运动指令并输出至机器人各轴上的伺服电机驱动器。

综上所述,本发明提供的基于通用计算机的机器人控制系统中电源模块在主电路断电后持续为机器人控制器供电以使机器人控制器内的操作模块完成数据的存储,从而实现数据的断电保护。安全单元提供了多安全回路的控制,确保伺服驱动模块能准确响应异常输入或故障,从而实现急停。进一步的,由于安全单元和总线传输主站之间相互监测,当安全单元或总线传输主站任一出现故障时,伺服驱动模块能对该故障进行响应,实现多模块的安全互锁控制,大大提高了安全控制等级。在数据传输模块上,基于总线传输主站的所扩展的第一接口模块与标准的第二接口模块的结合不仅实现了高响应需求数据的快速传输,同时也大大降低了传输模块的成本。在示教器上,示教器程序运行在机器人控制器上,示教器通过接收机器人控制器发送的终端视频信号以实现机器人运行状态的实时显示。在该方案中,示教器端无需嵌入独立的cpu,这不仅大大降低了示教器的成本;而且示教器程序的执行是由机器人控制器内高性能的工控机来执行的,程序的运算能力很强且运算速度非常的快,从而能更好地实现机器人动作的精确控制。

为让本发明的上述和其它目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合附图,作详细说明如下。

附图说明

图1所示为本发明提供的基于通用计算机的机器人控制系统的原理框图。

图2所示为数据传输模块与机器人控制器之间的原理框图。

图3所示为安全单元的安全控制原理框图。

图4所示为电源模块、电源时序管理单元以及机器人控制器的电路原理框图。

图5所示为本发明一实施例提供的机器人安全逻辑控制系统中电源时序管理单元在断电保护状态下主电路再次上电时的时序控制方法流程图。

图6所述为本发明另一实施例提供的机器人安全逻辑控制系统中电源时序管理单元在断电保护状态下主电路再次上电时的时序控制方法流程图。

图7所示为非断电保护状态下主电路再次上电的时序图。

图8所示为断电保护状态下机器人控制器已关机时主电路再次上电的时序图。

图9所示为断电保护状态下机器人控制器未关机时主电路再次上电的时序图。

图10-1、图10-2以及图11所示为本发明另一实施例提供的电源模块的原理图。

图12所示为图1中示教器与机器人控制器进行通信时示教器接收机器人控制器所发送的信号后的流程图。

图13所示为图1中示教器与机器人控制器进行通信时示教器发送信号至机器人控制器的流程图。

图14所示为本发明一实施例提供的示教器的原理框图。

图15所示为基于主从协调的机器人控制方法的流程图。

图16所示为现有焊接领域内多机器人协调控制中多个机器人的分布原理图。

图17所示为基于机器人作业程序的增益控制方法的流程图。

具体实施方式

如图1所示,本实施例提供的基于通用计算机的机器人控制系统包括机器人控制器1、数据传输模块2、伺服驱动模块3、安全单元4、电源模块5以及示教器7。伺服驱动模块3通过数据传输模块2连接于机器人控制器1,接收机器人控制器1的运动指令以驱动机器人运动。安全单元4通过数据传输模块2分别连接于机器人控制器1和伺服驱动模块3,当接收到输入异常信号或故障信号后关闭伺服驱动模块3且将输入异常信号或故障信号传输至机器人控制器1。示教器5接收机器人控制器1发送的终端视频信号和第一控制交互信号;同时将第二控制交互信号发送至机器人控制器1以控制机器人控制器1的运行。电源模块6分别电性连接机器人控制器1和安全单元4。

于本实施例中,如图2和图3所示,数据传输模块2包括总线传输主站21、第一接口模块22以及第二接口模块23。总线传输主站21连接于机器人控制器1,机器人控制器1通过总线传输主站21与伺服驱动模块3相连接以控制机器人的运动状态。第一接口模块22通过总线传输主站21连接于机器人控制器1并传输第一类信号b1。第二接口模块23连接于机器人控制器1并传输第二类信号b2;第一接口模块22的传输速度高于第二接口模块23且机器人控制器1对第一类信号b1的响应等级高于第二类信号b2。

于本实施例中,第一类信号b1包括安全单元4输入的安全信号、传感器单元输入的传感信号、开关量信号或同步信号等具有高速响应需求的信号。而第二类信号b2为对传输速度要求不高的普通控制或通信信号,如示教器输入的指令信号等。

于本实施例中,总线传输主站21为ethercat总线传输主站,机器人控制器1和伺服驱动模块3通过ethercat总线进行数据传输。ethercat(以太网控制自动化技术)是一个以以太网为基础的开放架构的现场总线传输主站。第一接口模块22是基于ethercat总线所扩展的接口模块,其利用了ethercat总线高速传输的特性来实现第一类信号b1的快速传输和响应。第二接口模块23则为标准的usb接口。然而,本发明对此不作任何限定。于其它实施例中,总线传输主站也可采用其它的总线传输主站,如ethernet等。第二接口模块可为标准的串行接口,如rs232接口或rs485接口。进一步的,于其它实施例中,第二接口模块也可同时包括usb接口和串行接口。

基于总线的第一接口模块22的数据响应速度远远大于第二接口模块23的数据传输速度,两者可差10倍以上。具体而言,于本实施例中,基于ethercat总线的第一接口模块22的数据响应时间1ms以内,而作为第二接口模块23的标准usb接口的数据响应时间50ms以内。然而,本发明对此不作任何限定。

于本实施例中,机器人控制器1为工业计算机,机器人控制器1内安装有ethercat软件,如twincat;机器人控制器1作为ethercat总线主站。而第一接口模块22和伺服驱动模块3均作为总线传输主站21的总线从站;具体而言,第一接口模块22和伺服驱动模块3分别通过型号为ax58100系列的控制器来成为ethercat总线主站。然而,本发明此不作任何限定。于其它实施例中,总线传输主站可独立于机器人控制器,机器人控制器也可为个人计算机等通用计算机系统。

于本实施例中,数据传输模块2中集成了具有高速传输能力的第一接口模块22和具有普通的低速传输特性的第二接口模块23。在数据传输上对要求高速响应的第一类信号b1则采用第一接口模块22进行传输,而对数据传输时效性要求不高的第二类信号则采用第二接口模块23来进行数据传输。在机器人控制系统中,具有高速响应要求的第一类信号b1并不多,更多的则是第二类信号b2。因此,数据传输模块2中只需扩展少数的第一接口模块22,而对于大多数的第二类信号b2而言,其仍可沿用传统的且标准的第二接口模块23。该设置使得本实施例提供的机器人控制系统在满足第一类信号b1高速传输的要求下大大地降低了成本。此外,第一接口模块22是基于机器人控制器1和伺服驱动模块3之间已有的总线传输主站21而采用软件的形式进行扩展的。相比现有技术中采用硬件进行传输速度的提升,软件的设计不仅大大降低了成本,同时也更加的灵活。进一步的,设置第一接口模块22与机器人控制器1之间的数据传输协议与机器人控制器1和伺服驱动模块3之间的数据传输协议相同;该设置极大的简化了程序的设计,进一步降低成本。

机器人控制系统包括机器人控制器1和其它多个数据处理单元,譬如示教器6、安全单元4以及传感器单元等。每个数据处理单元均通过第一接口模块22和/或第二接口模块23与机器人控制器1之间进行通信。于本实施例中,如图1所示,示教器6连接于安全单元4,示教器6是通过安全单元4传输安全信号至机器人控制器1;故示教器6和机器人控制器1之间只需通过第二接口模块23进行信号传输。对于安全单元4而言,其通过第一接口模块22输出安全信号等第一类信号b1至机器人控制器1;与此同时,其还通过第二接口模块23接收机器人控制器1输出的控制信号。

安全单元4是基于单片机的数据处理单元,在现有的数据传输方式中,其和机器人控制器1之间的所有信号都是通过usb接口或串行接口等第二接口模块进行数据传输,数据传输会占用安全单元内单片机的大量的资源。本实施例中,安全单元4基于第一接口模块22内的从站控制器来传输第一类信号b1,该设置大大节省了安全单元内单片机的资源,使得其具有更多的资源用于第二接口模块23上的数据传输。而对于传感器单元而言,由于传感信号与机器人的运动状态实时相关,其需要具有很高的响应速度,故传感器单元是采用第一接口模块22与机器人控制器进行数据传输的。然而,本发明对此不作任何限定。

本实施例中,机器人控制器和伺服驱动模块之间通过总线传输主站进行通信以实现机器人运动状态的控制。在该总线传输主站的基础上通过在机器人控制器上扩展第一接口模块,机器人控制器通过总线将具有高速响应需求的第一类信号从第一接口模块输入或输出,实现高速传输。于此同时,机器人控制器上还设置了基于硬件的普通usb接口或串行接口以用于传输对响应要求不高的第二类信号,实现低速传输。本发明提供的机器人数据传输系统集高速传输接口和低速传输接口于一体,在数据传输时根据信号的响应需求来选择采用高速传输或低速传输。相比仅具有单一数据传输接口的现有机器人控制系统,第一接口模块和第二接口模块的结合不仅很好地解决了数据传输的问题,同时部分数据采用第一接口模块进行传输的设计也大大降低了成本。进一步的,第一接口模块22的设置是基于器人控制器1上的总线传输主站而采用软件扩展的,设计上无需更改现有机器人控制系统内的硬件,不仅设计更加便捷且大幅度降低了成本。

于本实施例中,如图3所示,安全单元4、伺服驱动模块3以及数据传输模块2中的总线传输主站21三者相互连接。安全单元4和总线传输主站21之间相互监测,安全单元4和伺服驱动模块3之间建立第一安全回路10,总线传输主站21和伺服驱动模块3之间建立第二安全回路20。当安全单元4接收到异常输入信号、监测到总线传输主站21出现故障或者其自身出现故障时第一安全回路10内产生第一安全控制信号k1以关闭伺服驱动模块3的输出。同时,当总线传输主站21接收到安全单元4输出的异常输入信号、其自身出现故障或者监测到安全单元4出现故障时第二安全回路20内产生第二安全控制信号k2以关闭伺服驱动模块3的输出。

本实施例提供的安全逻辑控制系统中第一安全回路10和第二安全回路20的设置不仅为伺服驱动模块3提供了双重安全控制,当其中一路安全回路出现故障时,伺服驱动模块3仍能通过另一安全回路来获得故障或异常信号,从而确保机器人的安全运行。进一步的,安全单元4和总线传输主站21之间相互监测彼此的运行状态。当安全单元4出现故障时,总线传输主站21会基于该故障信号通过第二安全回路20关闭伺服驱动模块3的输出;同样的,当总线传输主站21出现故障时,响应于该故障,安全单元4通过第一安全回路20关闭伺服驱动模块3的输出。安全单元4和总线传输主站21形成互锁的安全逻辑,大大提高了安全逻辑控制系统的安全等级。

于本实施例中,伺服驱动模块3包括与总线传输主站21匹配的传输从站31,传输从站31通过第二安全回路20监测总线传输主站21的状态,当监测到总线传输主站21出现故障时传输从站31输出第二安全控制信号k2以关闭伺服驱动模块3的输出。而当总线传输主站21正常时,第二安全回路20中的第二安全控制信号k2将由总线传输主站21输出至传输从站31。同样的,安全单元4上具有与总线传输主站21相匹配的第一接口模块22,当总线传输主站21出现故障时,第一接口模块22输出第一安全控制信号k1至伺服驱动模块3。

于本实施例中,总线传输通讯网络为ethercat网络,总线传输主站21为ethercat传输主站,伺服驱动模块3上具有匹配的ethercat从站,安全单元4上具有第一接口模块22,ethercat传输主站分别通过ethercat总线连接于安全单元4和伺服驱动模块3。安全单元4通过第一接口模块22与总线传输主站21之间传输心跳信号的同时也传输其它故障或异常信号。伺服驱动模块3通过ethercat从站监听总线传输主站21的心跳信号或接收总线传输主站21输出的第二安全控制信号。在图3中,心跳信号的传输线采用ls表示(livesignal),错误信号的传输线采用es表示(errorsignal)。所述心跳信号指的是每个模块或单元内应用程序的心跳信号。譬如,对于机器人控制器而言,心跳信号可为示教器程序的心跳信号;而对于安全单元和总线传输主站而言则通过内置应用程序以实现双方心跳信号的监测。

于本实施例中,如图3所示,机器人控制器1包括实时操作模块11且实时操作模块11连接于总线传输主站21。当实时操作模块11出现故障时,总线传输主站21通过第二安全回路20关闭伺服驱动模块3输出的同时触发安全单元4通过第一安全回路10关闭伺服驱动模块3。

于本实施例中,总线传输主站21集成于实时操作模块11内,利用实时操作模块11内的cpu进行数据处理,故两者可通过共用的cpu来实现状态的相互监测。然而,本发明对此不作任何限定。于其它实时中,总线传输主站也可采用独立的cpu进行控制。此时,总线传输主站和实时操作模块之间采用心跳信号的传输线和错误信号进行通信。

于本实施例中,机器人控制器1内还包括非实时操作模块12,如windows系统。当非实时操作模块12出现故障时,实时操作模块11获取非实时操作模块12的故障信号并输出至总线传输主站21,总线传输主站21通过第一安全回路10和第二安全回路20关闭伺服驱动模块3的输出。进一步的,非实时操作模块12连接于安全单元4且安全单元4监听非实时操作模块12的状态。当安全单元4监听到实时操作模块11或非实时操作模块12出现故障时会通过第一安全回路10关闭伺服驱动模块3的输出。该设置使得机器人控制器1内的两个操作模块不仅可基于总线传输主站21输出故障信号,同步的还通过安全单元4输出故障信号,从而实现双重保护。

同样的,当安全单元4接收到异常输入信号时将异常输入信号传输至非实时操作模块12,非实时操作模块12将该异常输入信号传输至实时操作模块11,实时操作模块11触发总线传输主站21输出第二安全控制信k2以关闭伺服驱动模块3的输出。该设置同样为安全单元4提供的双重保护,此时若安全单元4和总线传输主站21之间的连接出现故障时,安全单元4也可提供过非实时操作模块12→实时操作模块11→总线传输主站21→第二安全回路20→伺服驱动模块3的方式来实现伺服驱动模块的关闭。

于本实施例中,机器人控制器1内还具有存储模块13,实时操作模块11和非实时操作模块12共享存储模块13,实时操作模块11和非实时操作模块12不仅通过共享的存储模块13获取对方的心跳信号以监测对方的状态;同时两者也通过存储模块13进行通信,譬如当非实时操作模块12接收到安全单元4输入的异常输入信号后经存储模块13传输至实时操作模块11。

于本实施例中,安全单元4通过rs总线连接于非实时操作模块12并监测非实时操作模块12的心跳信号。然而,本发明对此不作任何限定。于其它实施例中,两者也可采用其它的总线进行通信。

进一步的,于本实施例中,主电路上具有一控制主电路通断的交流接触器8。安全单元4连接于交流接触器8且与交流接触器8之间建立第三安全回路30,安全单元4通过第一安全回路10关闭伺服驱动模块3输出的同时还通过第三安全回路30输出第三安全控制信号k3至交流接触器8,断开主电路的输入,进而实现伺服驱动模块3的关闭。在第一安全回路10和第二安全回路20中伺服驱动模块3的关闭是基于输入的安全控制信号以软件控制的方式来实现输出的关闭。而第三安全回路30中,安全单元4对交流接触器8的控制不仅在输入端且是采用硬件的方式。该设置使得即使伺服驱动模块3出现故障而无法响应第一安全回路10和第二安全回路20输入的安全控制信号时,安全单元4也可通过控制交流接触器8来实现输入端的强制切断,进一步提高安全等级。然而,本发明对此不作任何限定。于其它实施例中,当伺服驱动模块具有自检功能时也可不设置第三安全回路。

以下将结合图3来详细描述本实施例提供的机器人安全逻辑控制系统的工作原理。

首先,当安全单元4接收到外部急停信号或示教器输入的急停信号时:①安全单元4通过第一安全回路10输出第一安全控制信号k1至伺服驱动模块3以关闭伺服驱动模块3的输出。②安全单元4通过第三安全回路30输出第三安全控制信号k3切断交流接触器8,伺服驱动模块3从主电路上断开,其输出对应的关闭。③安全单元4将故障信号经第一接口模块22传输至总线传输主站21,总线传输主站21传输至实时控制模块41,实时控制模块41处理后经总线传输主站21和第二安全回路20输出第二安全控制信号k2至伺服驱动模块3。④安全单元4通过rs总线将急停信号传输至非实时操作模块12,非实时操作模块12经存储模块13将急停信号传输至实时操作模块11。基于接收到的急停信号,实时控制模块41触发总线传输主站21通过第二安全回路20关闭伺服驱动模块3。此外,当安全单元本身出现故障时,总线传输主站3和非实时操作模块也会通过监测安全单元的心跳信号而通过第一安全回路关闭伺服驱动模块3。

其次,当总线传输主站21死机时:①安全单元4内的第一接口模块22在在设定时间内未能接收到总线传输主站21的心跳信号,第一接口模块22输出安全触发信号,安全单元4基于该安全触发信号通过第一安全回路10输出第一安全控制信号k1至伺服驱动模块3以关闭伺服驱动模块3的输出。②安全单元4通过第三安全回路30输出第三安全控制信号k3切断交流接触器8,伺服驱动模块3从主电路上断开,其输出对应的关闭。③伺服驱动模块3内的传输从站31在设定时间内未能接收到总线传输主站21的心跳信号后输出第二安全控制信号k2,基于该第二安全控制信号k2伺服驱动模块3关闭其输出。④实时操作模块11通过总线传输主站21内的软件实时监测总线传输主站21的状态,当其发现总线传输主站21死机后,通过存储模块13发送安全触发信号至非实时操作模块12,非实时操作模块12通过rs总线将安全触发信号输出至安全单元4内,安全单元4同时通过第一安全回路10和第三安全回路30关闭伺服驱动模块3的输出。

再次,当实时操作模块11死机时:①于本实施例中,由于总线传输主站21集成于实时操作模块11内故当实时操作模块11死机时,安全单元4内的第一接口模块22在在设定时间内未能接收到总线传输主站21的心跳信号,第一接口模块22输出安全触发信号,安全单元4基于该触发信号通过第一安全回路10输出第一安全控制信号k1至伺服驱动模块3以关闭伺服驱动模块3的输出。②安全单元4通过第三安全回路30输出第三安全控制信号k3切断交流接触器8,伺服驱动模块3从主电路上断开,其输出对应的关闭。③总线传输主站21的诊断程序监测到实时操作模块11死机后通过第二安全回路20输出第二安全控制信号k2以关闭伺服驱动模块的输出。④非实时两个操作模块42通过存储模块13无法获取到实时操作模块11的心跳信号后通过rs总线输出安全触发信号至安全单元4,安全单元4同时通过第一安全回路10和第三安全回路30关闭伺服驱动模块3的输出。

最后,当非实时操作模块12死机时:①安全单元4无法通过rs总线获取到非实时操作模块12的心跳信号,安全单元4通过第一安全回路10输出第一安全控制信号k1至伺服驱动模块3以关闭伺服驱动模块3的输出。②安全单元4通过第三安全回路30输出第三安全控制信号k3切断交流接触器8,伺服驱动模块3从主电路上断开,其输出对应的关闭。③实时操作模块11通过存储模块13无法获取到非实时操作模块12的心跳信号后通过总线传输主站21和第二安全回路20输出第二安全控制信号k2至伺服驱动模块3。④实时操作模块11通过存储模块13无法获取到非实时操作模块12的心跳信号后通过总线传输主站21输出安全触发信号至安全单元4,安全单元4通过第一安全回路10或第三安全回路30关闭伺服驱动模块3的输出。

如上文所述,本实施例提供的机器人控制系统中,安全单元4、总线传输主站21、实时操作模块11以及非实时操作模块12之间相互监测以形成安全互锁,大大提高了系统的安全等级;而软件安全控制和硬件安全控制的相互结合也进一步提高了可靠性。此外,本实施例提供的机器人控制系统是基于现有的机器人控制系统内的各功能模块而开发,其无需增加任何的硬件器件,因此,大大减小了设计成本。

此外,在机器人执行过程中,主电路断电时,机器人控制器1内的实时操作模块11和非实时操作模块12发生非正常关闭,这极其容易造成两个操作模块内数据的损坏,机器人重启后将无法再继续执行当前的作业。为解决这一问题,于本实施例中,采用具有断电保护功能的电源模块5来为机器人控制器1供电。如图4所示,电源模块5包括电源转换电路51、控制器电源模块52、网压检测模块53以及储能模块54。电源转换电路51连接于主电路。控制器电源模块52连接于电源转换电路51且为机器人控制器1供电。网压检测模块53连接于电源转换电路51以检测电源转换电路的输入电压,当主电路断电,电源转换电路51的输入电压低于设定阈值时,电源模块5输出断电触发信号至安全单元4内的电源时序管理单元6。所述断电触发信号作为急停信号输入至安全单元4后,安全单元4将按照图3中的安全逻辑断开伺服驱动模块1的输出,从而使机器人暂停。

储能模块54连接于控制器电源模块52且在主电路正常供电工作时储能;当主电路断电时储能模块54输出能量以维持控制器电源模块52正常工作,控制器电源模块52继续为机器人控制器1供电以使实时操作模块11和非实时操作模块12能基于断电触发信号完成断电存储。于本实施例中,储能模块54还为安全单元4供电,以使其在主电路断电后能正常工作。

于本实施例中,储能模块54包括连接于电源转换电路51正负母线之间的电容c1,电源转换电路51正常供电时输入电压通过正负母线为电容c1充电,充电后的电容c1两端电压为u1。当电源转换电路51的输入电压低于设定阈值时电容c1释放能量至控制器电源模块52。电容c1储存的能量将继续维持控制器电源模块52正常工作,直至电容c1储存的能量不足以维持控制器电源模块52正常运行,控制器电源模块52停止工作。电容c1的容量大小决定了断电触发信号b触发后机器人控制器1用于存储数据并进行正常关机的工作时间。优选的,于本实施例中,设置电容c1的容量可为机器人控制器1提供30秒的数据存储时间,该时间大于机器人控制器正常的关机时间△t。然而,本发明对储能模块的结构不作任何限定。于其它实施例中,储能模块也可采用电感等其它储能元件来实现。

如图4所示,于本实施例中,电源模块5还包括跨接于控制器电源模块52的输出端的输出电容c2,输出电容c2在电源转换电路51正常工作时储能,当电源转换电路51的输入电压低于设定阈值时输出电容c2放电,释放的能量与电容c1输出能量相叠加后输出至机器人控制器1。在断电时,输出电容c2对电容c1的补充叠加使得连接在电源转换电路51上的电容c1的容量可以设置得较小,从而减小电容c1的体积,进而实现电源转换电路51的小型化。然而,本发明对此不作任何限定。

电源转换电路51通过输入侧开关kin连接于市电,输入端输入的是交流市电,电容c1两端的电压u1与输入的交流电压的峰值相关(u1=uin*1.414,而其中uin为输入交流电压的有效值)。故设置网压检测模块53连接于电源转换电路51的正负母线之间且位于电容c1的输出侧,网压检测模块53通过检测电容c1两端的电压u1来判断输入电压值。具体而言,当电源转换电路51输入端的的交流电压有效值低于180v时,即电容c1两端的电压u1低于180×1.414=254v时,网压检测模块53输出断电触发信号b至安全单元4,安全单元4将该断电触发信号经时序控制模块63输出至机器人控制器1。然而,本发明对此不不作任何限定。于其它实施例中,网压检测模块也可连接于电容的输入侧以直接检测电源转换电路的输入电压。

于本实施例中,支路电源模块55和控制器电源模块52的电路均基于分立式开关电源pwm控制芯片设计,如uc3845等系列及ncp1203等系列。网压检测模块53则包括电压比较器和一可控硅,电压比较器的一端输入设定阈值电压,而另一端则连接至电容c1的两端,用于获取电容c1两端的电压u1。电压比较器的输出连接至可控硅,通过控制可控硅的导通或关断以输出信号至pwm控制芯片,从而实现支路电源模块55内任意一路输出电源的关闭。然而,本发明对支路电源模块、控制器电源模块以及网压检测模块的具体电路结构不作任何限定。于其它实施例中,支路电源模块内的四路输出电源和控制器电源模块的电路原理设计也可基于集成式开关电源芯片设计,如pi公司的top系列、lcs系列、lnk系列等芯片;而网压检测模块也可基于集成式开关电源芯片进行设计,从而与支路电源模块集成于一体。于本实施例中,机器人控制器1为工业控制计算机(简称ipc)。然而,本发明对此不作任何限定。

本实施例对断电触发信号b输出的方式不作任何限定。于其它实施例中,如图10-1、图10-2以及图11所示,网压检测模块也可通过其它的方式输出断电触发信号b。

具体而言,如图10-1所示,电源模块还包括连接于电源转换电路51输出端且与控制器电源模块52并联的支路电源模块55,网压检测模块53连接于支路电源模块55。支路电源模块55内包含四路输出电源,分别为:为伺服驱动器模块3供电的第一输出电源、为示教器6供电的第二输出电源、为安全单元4供电的第三输出电源以及为数据传输模块供电的第四输出电源。当网压检测模块53检测到电源转换电路51的输入电压低于设定阈值时触发支路电源模块55内四路输出电源均关闭输出,四路输出电源关闭的同时产生断电触发信号b。该设置集输出电源关闭和断电触发信号b输出于一体,大大简化了电路的结构。然而,本发明对此不作任何限定。于其它实施中,如图10-2所示,网压检测模块也可直接输出断电触发信号b至控制器电源模块52。

在图10-1所示的实施例中,支路电源模块55通过控制器电源模块52输出断电触发信号b至机器人控制器1,该设置简化了电源模块5和机器人控制1之间的连接接口。然而,本发明对此不作任何限定。于其它实施例中,支路电源模块或者是网压检测模块也可直接输出断电触发信号b至机器人控制器。在图10-1所示的实施例中,支路电源模块55上具有一继电器开关,四路输出电源中全部或任意一路关闭输出均会触发继电器开关,继电器开关输出高低电平形式的断电触发信号b至控制器电源模块。然而,本发明对此不作任何限定。于其它实施例中,断电触发信号b也可以为模拟信号。

在图10-1所示的实施例中,第一输出电源的输出为24v/10a;第二输出电源的输出为12v/3a;第三输出电源的输出为12v/1a;第四输出电源的输出为12v/1a;控制器电源模块输出24v/3a。然而,本发明对此不作任何限定。

本发明对网压检测模块的设置不作任何限定。于其它实施例中,如图11所示,网压检测模块53可独立于支路电源模块55。电源转换电路51和支路电源模块55间具有一控制开关56,网压检测模块53输出断电触发信号b的同时断开控制开关56。在电源转换电路51的输入电压正常时,控制开关56处于闭合状态,电源转换电路51向支路电源模块55和控制器电源模块52供电,电路处于正常工作;于此同时,电源转换电路51的输入电压对电容c1进行充电。而当主电路上的输入侧开关kin突然被打开或者输入电压不稳定使得输入电压小于网压检测模块53的设定阈值时,网压检测模块53输出信号至控制开关56以使控制开关56断开。

在图11所示的实施例中,网压检测模块53通过控制开关56输出断电触发信号b。具体而言,控制开关56的输出连接至控制器电源模块52,网压检测模块53断开控制开关56的同时控制开关56输出断电触发信号b至控制器电源模块52。控制开关56为继电器开关。然而,本发明对此不做任何限定。于其它实施例中,网压检测模块也可直接输出断电触发信号b至控制器电源模块。或者,也可由支路电源模块输出断电触发信号b;具体而言,控制开关切断了电源转换电路和支路电源模块的通路,支路电源模块内的输出电源关闭输出。或者此时,支路电源模块上连接有继电器,任意一路输出电源关闭,继电器输出断电触发信号b至控制器电源模块52。

在具有断电保护功能的电源模块5中,主电路断电后电源模块5仍持续为机器人控制器1供电以使实时操作模块11和非实时操作模块12基于断电触发信号进行断电存储,从而实现断电保护。在断电保护状态下,电源模块5的持续输出使得机器人控制器1的输入端一直维持高电平。在该状态下主电路若再次上电,机器人控制器1的输入端电平不会改变,机器人控制器1将维持关机状态,两个操作模块也就无法重启。故在断电保护状态下一旦机器人控制器1关机将会出现无法再重启的故障问题。有鉴于此,于本实施例中,基于通用计算机的机器人控制系统提供了一种上电时序控制方法以解决上述问题。

如图5所示,本实施例提供的上电时序控制方法包括:在主电路断电后再次上电时,判断电源模块的输出状态(步骤s610)。当电源模块处于断电保护输出时,判断机器人控制器是否关机(步骤s620)。若是,输出上电触发信号至机器人控制器以使其重新启动操作模块(步骤s630)。若否,实时监测机器人控制器内示教器程序的状态(步骤s641)。当监测到示教器程序已关闭后延时一预设时间以使机器人控制器关机(步骤s642)。延时结束后输出上电触发信号至机器人控制器以使其重新启动操作模块(步骤s630)。以下将结合图7至图9来详细介绍本实施例提供的上电时序控制方法。

本实施例提供的上电时序控制方法始于步骤s610,在主电路断电后再次上电时,判断电源模块5的输出状态。在具有断电保护功能的机器人控制系统中,主电路断电后电源模块5将切换至断电保护输出状态以继续为机器人控制器1供电以实现断电存储。当机器人控制器1完成断电存储并关机且电源模块5也不再为机器人控制器1供电时,如图7所示,机器人控制器1的输入端vipc将处于低电平,△t为机器人控制器1正常关机的时间。此时,若主电路再次上电时,连接于主电路的电源模块5将主电路上的市电进行转换后输出至机器人控制器1,机器人控制器1的输入端从低电平变化为高电平,输入端电平的跳变触发两个操作模块正常重启。此时,上电时序控制方法不对该状态起作用,其适用于电源模块处于断电保护输出且主电路再次上电时的状态,故在主电路上电后需对电源模块的状态进行检测。在图7至图9中,vin表示主电路的输入电压;vcps为电源模块的输出电压;b为断电触发信号;a为上电触发信号;vipc为机器人控制器1输入端电压。

于本实施例中,如图4所示,电源模块5中采用电容c1来为机器人控制器1提供断电保护,故可通过检测电容两端的电压来判断电源模块5的状态。当电容c1两端的电压u1低于设定阈值(该阈值为维持机器人控制器1工作的最低电压)时,则认为电源模块5处于断电保护状态。然而,本发明对此不作任何限定。于其它实施例中,也可采用计时的方式来判断。具体而言,计算主电路再次上电和上一次断电之间的时间间隔,当该时间间隔小于机器人控制器1正常关机的时间△t(譬如10秒)时,则判断电源模块处于断电保护输出且机器人控制器1未关机。或者,于其它实施例中,也可通过检测电源模块的输出来直接判断其状态。

当主电路再次上电且步骤s610检测到电源模块5处于断电保护输出状态时,执行步骤s620,判断机器人控制器是否已经关机。若机器人控制器已经关机,如图6所示,电源时序管理单元6输出上电触发信号a至机器人控制器1以使其重新启动两个操作模块(步骤s630)。于本实施例中,电源时序管理单元通过断开电源模块5和机器人控制器1之间的通路后又闭合来为机器人控制器1的输入端提供一具有上升沿的上电触发信号a,机器人控制器1基于该上电触发信号a的上升沿而重启两个操作模块。然而,本发明对此不作任何限定。于其他实施例中,也可在机器人控制器1内设置一强制使能端,电源时序管理单元也可将上电触发信号输出至强制使能端,以使机器人控制器1响应主电路再次上电而重启两个操作模块。

对于机器人控制器1状态的判断,当主电路再次上电和上一次断电之间的时间间隔△t小于机器人控制器1正常关机的时间△t(△t=t1+△t2)(譬如10秒)时(如图9所示),显然,机器人控制器1仍处于断电存储状态而未关机。若时间间隔△t大于或等于机器人控制器1正常关机△t的时间(如图8所示),正常情况下机器人控制器1是处于关机状态的。然而,于其它实施例中,为了准确确认机器人控制器1的状态,电源时序管理单元也可向机器人控制器1发送一心跳查询信号,若机器人控制器1未能返回心跳信号,则可确认机器人控制器1已关机。本发明对此不作任何限定。

在步骤s620中,若判断机器人控制器仍处于断电存储状态时,执行步骤s641,实时监测机器人控制器内示教器程序的状态。具体而言,电源时序管理单元6每间隔一段时间向机器人控制器1发送一心跳查询信号来确认机器人控制器1内示教器程序输出的心跳信号。当在预设的间隔时间内未能接收到心跳信号则判断示教器程序已关闭。譬如预设的时间间隔为3s~5s,若心跳查询信号发送5s后仍未能接收到操作模块返回的心跳信号,则判断示教器程序已关闭。然而,本发明对此不作任何限定。当确认示教器程序在t1时刻已经关闭后,执行步骤s642,延时一预设时间△t2以使机器人控制器关机,时序图如图9所示。延时结束且确认机器人控制器已关机后输出上电触发信号a至机器人控制器以使其重新启动操作模块(步骤s630)。

本实施例中,机器人时序控制方法实现了在电源模块处于断电保护输出时机器人控制器内操作模块在主电路再次上电时的正常启动,确保机器人控制器1运行的安全和稳定。本实施例中,当电源模块处于断电保护输出且机器人控制器为关机时是通过监测机器人控制器内示教器程序的心跳信号再结合延时的方式来确认机器人控制器何时完成断电存储且关机的。该方法采用纯软件的形式来实现机器人控制器关机状态的检测,无需更改现有机器人控制系统内的任何硬件,设计非常的方便。

然而,本发明对此不作任何限定。于其它实施例中,如图6所示,在主电路断电再次上电时,判断电源模块的输出状态,当电源模块5处于断电保护输出且机器人控制器1为关机时:检测机器人控制器主板的断电信号(步骤s641’);接收到机器人控制器主板的断电信号(步骤s642’);输出上电触发信号至机器人控制器以使其重新启动操作模块(步骤s630)。

于本实施例中,图7至图9还展示了主电路断电后的电路时序图。上电时序控制方法包括:在主电路断电时,电源模块5进入断电保护输出状态并输出断电触发信号b。机器人控制器1在断电触发信号b的作用下进行断电存储。电源模块的输出电压vcps(电容两端的电压)开始逐渐下降;而机器人控制器1上的输入电压vipc也跟随其逐渐下降。

与上述上电时序控制方法相对应的,电源时序管理单元6包括电源判断模块61、控制器判断模块62以及时序控制模块63。电源判断模块61在主电路断电后再次上电时,判断电源模块5的输出状态。当电源模块5处于断电保护输出时,控制器判断模块62判断机器人控制器1是否关机。当机器人控制器1已关机时,时序控制模块63输出上电触发信号至机器人控制器1以使其重新启动两个操作模块;当机器人控制器1仍未关机时,时序控制模块63实时监测机器人控制器内示教器程序的状态,当监测到示教器程序在t1时刻已关闭后延时一预设时间△t2以使机器人控制器1关机(t1+△t2≈△t);延时结束后时序控制模块63输出上电触发信号至机器人控制器1以使其重新启动两个操作模块。

本实施例提供的电源时序管理单元6的工作原理如上述上电时序控制方法中的步骤s610~步骤s642,在此不作赘述。

于本实施例中,电源模块5和机器人控制器1之间具有控制开关9,时序控制模块63输出信号至机器人控制开关9以断开机器人控制器1的输入;之后又迅速闭合机器人控制开关9。机器人控制开关9的快速断开后又关闭在机器人控制器1的输入端形成了一具有上升沿且可被两个操作模块识别的上电触发信号a;基于该上电触发信号a两个操作模块正常启动。然而本发明对此不作任何限定。于其它实施例中,也可在机器人控制器1上设置独立于输入端的强制使能端,电源时序管理单元输出上电触发信号至强制使能端以使两个操作模块启动。

于本实施例中,电源判断模块61为连接于电容c1的比较器,电源判断模块61通过检测电容c1两端的电压u1来判断电源模块5的状态;当电容c1两端的电压u1来低于设定阈值(该阈值为维持机器人控制器1工作的最低电压)时,则认为电源模块处于断电保护状态。控制器判断模块62则为一计时器,当主电路再次上电和上一次断电之间的时间间隔△t小于机器人控制器1正常关机的时间△t(譬如10秒)时,显然机器人控制器1仍处于断电存储状态而未关机。若时间间隔△t大于或等于机器人控制器1正常关机的时间△t,正常情况下机器人控制器1是处于关机状态的;此时为了准确确认机器人控制器1的状态,时序控制模块63每间隔一段时间监测并确认机器人控制器1内示教器程序的心跳信号,当在预设的间隔时间内未能接收到心跳信号则判断两个操作模块已关闭。然而,本发明对此不作任何限定。

于本实施例中,电源时序管理单元6集成于安全单元4内,时序控制模块63利用安全单元内的cpu以软件程序的形式来实现机器人状态的确认、时序的控制以及上电触发信号的输出。然而,本发明对此不作任何限定。于其它实施例中,电源时序管理单元也可采用独立的cpu进行设计。具有断电保护功能的电源模块5和电源时序管理单元6实现了异常断电下数据的安全存储和机器人控制器1的正常重启,进一步提高系统的使用安全性。

于本实施例中,对于示教器7而言,如图14所示,其包括接收模块71、解码模块72、显示模块73、输入信号获取模块74、编码模块75以及发送模块76。接收模块71接收机器人控制器发送的机器人视频信号和第一控制交互信号。解码模块72电性连接于接收模块71,将接收模块71输出的机器人视频信号和第一控制交互信号进行编码处理后输出至显示模块73。显示模块73在示教器上显示解码后的机器人视频信号;且响应于接收的第一控制交互信号,在示教器上对应的显示区域显示第一控制交互信号内的信息。输入信号获取模块74获取示教器面板输入的信号或其它终端输入的信号并已形成第二控制交互信号。发送模块76将第二控制交互信号发送至机器人控制器1以控制机器人控制器1的运行。

示教器7和机器人控制器1之间数据传输步骤包括:如图14所示,其包括:接收模块71接收机器人控制器1发送的终端视频信号和第一控制交互信号(步骤s710),第一控制交互信号包括机器人的运行状态或者机器人控制器的运行状态。显示模块73在示教器上显示接收的终端视频信号;且响应于接收的第一控制交互信号,在示教器上对应的显示区域显示第一控制交互信号内的信息(步骤s730)。于此同时,输入信号获取模块74获取示教器面板输入的信号并将其转换为第二控制交互信号(步骤s740)。发送模块76将第二控制交互信号发送至机器人控制器以控制机器人控制器的运行(步骤s760)。以下将结合图12和图13详细介绍本实施例提供的示教器信号传输方法的具体原理。

于本实施例中,示教器7和机器人控制器1之间实现了双向的数据传输,为描述方便以下将以编号的形式对信号处理的执行步骤进行说明。其中,步骤s710~步骤s730对应图12中示教器7接收机器人控制器1后的执行步骤;而步骤s740~步骤s770则对应图13中示教器7发送信号至机器人控制器1的执行步骤。在实际执行过程中,示教器7的发送和接收是同步进行的。

如图12所示,在步骤s710中,示教器7接收机器人控制器1发送的终端视频信号和第一控制交互信号。所述终端视频信号为机器人控制器1采集的机器人的实时运行状态视频图像,于本实施例中,该视频信号内还包括音频。第一控制交互信号包括机器人当前的运行状态和机器人控制器1当前的运行状态。机器人当前的运行状态包括机器人的位置参数和运动参数等信息,机器人控制器1的当前运行状态包括示教器程序的执行进度、机器人控制器1的运行参数等信息。然而,本发明对此不作任何限定。于其它实施例中,第一控制交互信号内也可仅包含机器人当前的运行状态,或者机器人控制器1的当前运行状态。

于本实施例中,在示教器7和机器人控制器1之间终端视频信号和第一控制交互信号分别采用两种不同的数据传输方进行通信。具体而言,作为第一类数据传输信号的第一控制交互信号为usb信号,而作为第二类数据传输信号的终端视频信号则为hdmi信号。hdmi信号在实现高清视频图像的传输同时还具有很强的抗干扰能力。然而,本发明对此不作任何限定。于其它实施例中,终端视频信号也可采用vga信号进行传输。

进一步的,于本实施例中,终端视频信号和第一控制交互信号均采用差分的形式进行传输。差分的传输方式不仅具有很强的抗干扰能力、信号传输稳定,且能实现远距离的传输。在采用差分的形式进行数据传输时,为满足传输协议,在机器人控制器1端会对终端视频信号和第一控制交互信号进行编码后再输出至示教器7。故示教器7接收到终端视频信号和第一控制交互信号(步骤s710)后执行步骤s720,解码模块72对终端视频信号和第一控制交互信号进行解码。

解码后执行步骤s730,在示教器7上显示终端视频信号和第一控制交互信号。对于解码后的终端视频信号而言,示教器7直接在显示屏上进行显示。而对于解码后的第一控制交互信号,示教器7会根据第一控制交互信号内的具体信息采用预先设定的显示方式在对应的区域内进行显示。具体而言,当第一控制交互信号内包含机器人的运动速度等具体数值信息时,可将这些信息叠加在视频图像上以文字的方式在显示器上显示;而当第一控制交互信号内包含机器人特殊位置(如机器人原点位置)或特殊动作信息(如极限动作位置)等状态类指示信息时,可将这些信息叠加在视频图像上并以图案的方式在显示器上进行闪烁显示。此外,对于状态类的指示信息,也可采用示教器7面板上的指示灯进行显示。

第一控制交互信号的传输和显示实现了机器人控制器1到示教器端的运行状态信息的反馈,操作人员通过示教器7即可直接查看到机器人或机器人控制器1的运行状态,使用非常的便捷且更有利于机器人的实时控制。

于本实施例中,机器人控制器1和示教器7之间的信号传输是一种双向传输。示教器7作为信号的发送侧,示教器7信号传输方式包括步骤s740,获取示教器7面板输入的信号并将其转换为第二控制交互信号。之后将第二控制交互信号发送至机器人控制器1(步骤s760)。操作人员可通过示教器7面板输入信号以控制机器人控制器1的运行。示教器7面板的信号输入方式包括示教器7面板上按钮的输入和显示屏上的触摸按钮的输入。于本实施例中,第二控制交互信号也为usb信号且也通过差分的形式传输至机器人控制器1。故于本实施例中,示教器7信号传输方法还包括步骤s750,将形成的第二控制交互信号进行编码,之后执行步骤s760。同样的,机器人控制器1在接收到示教器7输入的信号时也进行对应的解码。

于本实施例中,示教器7和机器人控制器1之间数据传输方法还包括步骤s770,接收其它终端输入的信号并将其以第二控制交互信号输出至机器人控制器1。譬如,示教器7上具有usb接口,其它终端可通过usb接口连接至示教器7上并输入usb信号至示教器7,示教器7将该usb信号作为第二控制交互信号,之后经步骤s750和s760输出至机器人控制器1,从而实现第三方的远程控制。然而,本发明对此不作任何限定。于其它实施例中,当其它终端向示教器7输入非usb信号时,输入信号获取模块需将输入的信号转换为usb类型的第二控制交互信号。

于本实施例中,机器人控制器1和示教器7以hdmi信号来传输终端视频信号,示教器7内无需设置独立的cpu,大大降低了示教器7的成本;而差分的数据传输方式则实现了两者之间的远距离通信。第一控制交互信号的传输则实现了示教器7上机器人运行状态和机器人控制器1运行状态的实时查看,进一步扩展了示教器7的功能。

在机器人控制器系统中通常会存在多机器人协同控制,在现有的多机器人控制系统中,在一个执行任务中,每个机器人的主从关系是无法改变的。这种无法变化主从关系的控制方法大大限制了每个机器人的功能。有鉴于此,如图15所示,机器人控制器1采用基于主从协调的机器人控制方法来控制伺服驱动模块3。基于主从协调的机器人控制方法包括:读取机器人作业程序指令(步骤p1)。解析读取的指令以获得每个机器人的编号信息、当前运动信息以及设定的表征每个机器人主从关系的当前主从信息(步骤p4)。基于解析获得的每个机器人的编号信息、当前运动信息以及当前主从信息从运动参数配置文件中为每个机器人匹配对应的运动参数(步骤p5)。基于每个机器人所匹配的运动参数和当前主从信息调用主从协调控制算法以进行主从协调控制(步骤p6)。

本实施例提供的基于主从协调的机器人控制方法中步骤p4所解析获得的表征每个机器人主从关系的当前主从信息是从步骤p1中读取的机器人作业程序中获得。该设置不仅使得用户可以通过机器人作业程序来设定每个机器人的主从关系;更进一步的,由于机器人作业程序以指令的执行顺序从时序上限定了每个时刻机器人的动作,而基于作业程序指令所获得的主从信息这种控制方式使得机器人的主从信息可以跟随任务的时序进行变化,从而实现每个机器人在不同任务阶段内主从关系的灵活变化。

本实施例提供的基于主从协调的机器人控制方法始于步骤p1,读取作业程序中的指令。具体而言,在读取指令后执行步骤p2,将每条指令转换为指令列表并进行存储,指令列表内包含每条指令的类型以及参数。

在主从协调控制中,从站的运动轨迹是跟随主站的运动轨迹进行变化的。因此,每个机器人的运动状态和其主从关系是息息相关的,两者的结合才决定了该机器人最终呈现的运动轨迹。故于本实施例中,将每个机器人当前的主从信息集成于该机器人的运动指令中,该设置不仅实现了每个机器人在每一动作状态下主从关系的可变化性,同时在用户操作上,用户也可通过每条指令来判断当前机器人的主从关系,使用非常的方便。然而,本发明对此不作任何限定。于其它实施例中,也可根据任务的需要阶段性的变化某一机器人的主从关系,此时主从信息变化可采用独立的指令进行设定,而无需集成于每一条运动指令中。具体而言,于本实施例中,运动型指令中包含每个机器人的编号信息、当前主从信息以及当前的运动信息等参数。

在将指令转换为指令列表后,执行步骤p3,基于指令列表中每条指令的类型来获取每个机器人当前的运动型指令并对其进行组建,形成一组指令集。

之后执行步骤p4,解析这组指令集以获得每个机器人的机器人编号信息、当前主从信息以及当前运动信息。指令集的组建使得步骤p4在每一状态下只需解析一次即可,该设置大大缩小了程序执行量。然而,本发明此不作任何限定。于其它实施例中,在读取、转换以及指令类型判断完成后可对每条指令独立进行解析以获得每条运动指令中对应的信息。

之后执行步骤p5,根据每个机器人的编号信息、当前主从信息以及当前运动信息匹配运动参数配置文件中对应的运动参数。于本实施例中,运动参数配置文件中仅包含所有机器人两两组合关系的标定位姿矩阵参数。之后执行步骤p6,基于每个机器人的主从关系和运动参数调用主从协调控制算法形成运动指令输出至多个伺服驱动模块3,从而实现多个机器人的主从协调控制。主从协调控制算法可采用现有的控制算法进行控制,本实施例对此不作任何限定。

图16所示为现有焊接领域内多机器人协调控制系统中多个机器人的分布原理图,而以下程序则为控制图16所示的多个机器人协调工作的作业程序示例。以下将结合图15和图16以及对应的作业程序示例来详细介绍本实施例提供的基于主从协调的机器人控制方法中主从关系变化的原理。虽然本实施例以焊接领域内的多机器人主从控制系统为例进行说明,然而本发明对此不作任何限定。于其它实施例中,这种主从协调控制的方法同样适用于其它领域内的多机器人主从控制系统。

作业程序示例:

1nop//起始行

2mov//r1机器人无主从关系运动指令

3+mov//r2机器人无主从关系运动指令

4+mov//s1变位器无主从关系运动指令

5+mov//s2变位器无主从关系运动指令

6+mov//s3变位器无主从关系运动指令

7mov//r1机器人无主从关系运动指令

8+smov//r2机器人从站运动指令

9+mov//s1变位器无主从关系运动指令

10+mov//s2变位器无主从关系运动指令

11+mmov//s3变位器主站运动指令

12smov//r1机器人从站运动指令

13+mov//r2机器人无主从关系运动指令

14+mmov//s1变位器主站运动指令

15+mov//s2变位器无主从关系运动指令

16+mov//s3变位器无主从关系运动指令

17smov//r1机器人从站运动指令

18+smov//r2机器人从站运动指令

19+mov//s1变位器无主从关系运动指令

20+mmov//s2变位器主站运动指令

21+mov//s3变位器无主从关系运动指令

22end//结束行

于本实施例中,图16所示的多机器人控制系统中包含五个机器人,包括有三台变位机(s1,s2以及s3)和两台机器人(r1和r2)。步骤p1读取每条指令,而步骤p2则将每条指令转换为指令列表,譬如指令1为运行起始指令,而指令2至指令21则为机器人的运动指令。步骤p3将同一时刻五个机器人的运动指令组成一个指令集,如指令7至指令11所组成的指令集为:mov+smov+mov+mov+mmov。

于本实施例中,如作业程序示例中所示,主从信息包括以字母“s”表示的从站状态、以字母“m”表示的主站状态以及无字母标识的无主从状态。然而,本发明对此不作任何限定。于其它实施例中,可采用其它的标识符来表征主站、从站以及无主从站状态。

步骤p4对其解析后获得:r1机器人无主从状态、r2机器从站状态、s1变位器无主从状态、s2变位器无主从状态、s3变位器主站状态。此时s3变位器和r2机器人实现主从控制,譬如r2机器人持焊枪对放置于s3变位器上的工件进行焊接。

之后,指令读取模块1读取下一组指令,即指令12至指令16获得smov+mov+mmov+mov+mov,经解析后获得:r1机器人从站状态、r2机器无主从状态、s1变位器主站状态、s2变位器无主从状态、s3变位器无主从状态。该条指令集中r1机器人将跟随s1变位器运动,两者之间具有主从关系,而r2机器人和s3变位器将由上一条指令集中的主从关系变化为无主从关系,实现每个机器人不同时刻下主从关系的变化。

之后读取下一组指令,即指令17至指令21,获得指令集:smov+smov+mov+mmov+mov。此时r1机器人和r2机器人均作为从站跟随作为主站的s2变位器运动,再一次实现主从关系的变化。此外,也可将r1机器人和r2机器人mov前的主从信息设置为“m”,从而使得r1机器人和r2机器人成为主站。

机器人控制器1所提供的基于主从协调的机器人控制方法实现了每个机器人的主从关系可跟随作业程序指令的执行而变化。而主从关系随作业程序时序的变化使得多个机器人的作业指令可集成于一个作业程序中。具体而言,在传统的多机器人控制系统中,当r1机器人和r2机器人均作为从站跟随作为主站s2变位器运动时,需要采用两个独立的作业程序来分别控制两者的运动,即s2变位器-r1机器人作业程序(job程序)、s2变位器-r2机器人作业程序(job程序)。当存在主从关系组数越多,作业程序的个数也将越多,程序不仅复杂度且系统执行程序所占用的资源也将更多。而如作业程序示例中所示,在本实施例中,r1机器人、r2机器人以及s2变位器三者的控制指令可集成于一个作业程序中,大大简化了程序量,不仅操作更加方便且大大节省了执行程序的资源。

基于主从协调的机器人控制方法中解析获得的表征每个机器人主从关系的当前主从信息是基于读取的机器人作业程序中获得。该设置不仅使得用户可以通过机器人作业程序来设定每个机器人的主从关系;更进一步的,由于机器人作业程序以指令的执行顺序从时序上限定了每个时刻机器人的动作,而基于作业程序指令所获得的主从信息这种控制方式使得机器人的主从信息可以跟随任务的时序进行变化,从而实现每个机器人在不同任务阶段内主从关系的灵活变化。

进一步的,于本实施例中,每一机器人的当前主从信息集成于作业程序中其对应的每一运动型指令中。在主从协调控制中,从站的运动轨迹是跟随主站的运动轨迹进行变化的。因此,每个机器人的运动状态和其主从关系是息息相关的,两者的结合才决定了该机器人最终呈现的运动轨迹。本实施例将每个机器人当前的主从信息集成于该机器人的运动指令中,该设置不仅实现了每个机器人在每一动作状态下主从关系的可变化性,同时在用户操作上,用户也可通过每条指令来判断当前机器人的主从关系,使用非常的方便。然而,本发明对此不作任何限定。于其它实施例中,也可根据任务的需要阶段性的变化某一机器人的主从关系,此时主从信息变化可采用独立的指令进行设定,而无需集成于每一条运动指令中。

进一步的,机器人控制器1还采用基于机器人作业程序的增益控制方法控制伺服驱动模块3,伺服驱动模块3内具有多个用于控制机器人各个轴的伺服电机驱动器。

基于机器人作业程序的增益控制方法包括:依次读取机器人作业程序中的每条指令(步骤s110)。当读取的指令为运动型指令时,解析读取的每条运动型指令中机器人的运动速度、轨迹类型以及轨迹类型参数(步骤s120)。基于解析获得的机器人的运动速度和轨迹类型获取对应的增益参数(步骤s130)。基于解析的运动速度、轨迹类型、轨迹类型参数以及对应的增益参数生成机器人运动指令并输出至机器人各轴上的伺服电机驱动器(步骤s140)。

本实施提供的伺服电机增益参数控制方法中,步骤s130中增益参数的获取是基于步骤s120中解析读取的每条运动型指令中的运动速度和轨迹类型所得到的。该设置使得在一个任务周期(一个job程序)中,增益参数可跟随机器人控制器的轨迹类型和运动速度而调整,从而满足在一个任务周期内不同轨迹类型下的增益要求。于本实施例中,所述增益参数包括速度环增益和位置环增益。然而,本发明对此不作任何任何限定。于其它实施例中,增益参数也可指速度环增益或位置环增益中的一种。

以下程序则为工业焊接机器人的一个作业程序示例。以下将结合图17和以下作业程序示例来详细介绍本实施例提供的伺服电机增益参数控制方法的原理。然而,本发明对此不作任何限定。本实施例提供的伺服电机增益参数控制方法同样适用于其它类型的机器人,如搬运作业的工业机器人。

[1]nop//起始行

[2]movjvj=80//普通关节运动指令,关节速度80%

[3]movlv=500//普通直线运动指令,速度5m/min

[4]movlv=100//普通直线运动指令,速度1m/min

[5]arconasf#(1)//起弧指令,(1)号起弧文件

[6]movlv=50arc#(1)//焊接直线运动指令,速度0.5m/min,(1)号焊接文件

[7]movlv=60arc#(2)//焊接直线运动指令,速度0.6m/min,(2)号焊接文件

[8]movlv=70arc#(1)//焊接直线运动指令,速度0.7m/min,(1)号焊接文件

[9]movlv=80arc#(3)//焊接直线运动指令,速度0.8m/min,(3)号焊接文件

[10]arcoffaef#(1)//熄弧指令,(1)号熄弧弧文件

[11]movlv=200//普通直线运动指令,速度2m/min

[12]movjvj=80//普通关节运动指令,关节速度80%

[13]end//结束行

本实施例提供的伺服电机增益参数控制方法始于步骤s110,依次读取机器人作业程序中的每条指令。具体而言,在读取指令时,还包括将指令转换为指令列表并存入共享内存,指令列表包含了每行指令的类型和相关参数,所述指令的类型包括运动型指令和非运动型指令(如起始指令和结束指令等)。在上述程序示例中,运动型指令中包含运动标识,如“mov”。在读取指令时,该运动标识被存储入该行指令对应的指令列表中。故可通过该运动标识来判断读取的指令是否为运动型指令。然而,本发明对此不作任何限定。

当读取的指令为运动型指令时,执行步骤s120,解析读取的每条运动型指令中机器人的运动速度、轨迹类型以及轨迹类型参数;所述轨迹类型包括跳转轨迹和作业轨迹,对于焊接机器人而言作业轨迹则为焊接轨迹。在上述程序示例中指令[2]至[4]的轨迹类型为跳转轨迹,而[6]至[9]的则为作业轨迹。具体而言,于本实施例中,作业轨迹包含了“arc”标识。因此,在解析时可基于该标识来判断读取的指令的轨迹类型。然而,本发明对此不作任何限定。于其它实施例中,也可采用其它的标识进行识别。

在跳转轨迹中,轨迹类型参数确定了跳转后的位置。而对于焊接轨迹而言,由于不同的工件需要采用不同的焊接参数,譬如焊枪角度以及焊丝距离工件表面的高度等参数,这些参数则为轨迹类型参数。于本实施例中,轨迹类型参数被预先配置于机器人控制器的存储文件中,在解析读取的每一条运动型指令时基于指令中包含的轨迹类型或轨迹类型参数存储文件名称来解析获得对应的轨迹类型参数。于本实施例中,解析读取的运动型指令表征该指令下的机器人处于作业轨迹时,基于运动型指令中包含的轨迹类型参数存储文件名称来解析获得对应的轨迹类型参数。具体而言,在上文的job程序示例中,第[6]行指令中“arc(1)”表示调用“(1)号焊接文件”进行焊接,而“(1)号焊接文件”则为轨迹类型参数存储文件的名称。

而当解析后表征该指令处于跳转轨迹时,在共享内存内获取与该跳转轨迹对应的轨迹类型参数存储文件。譬如,在第[2]行指令中,机器人处于跳转轨迹中的关节运动状态,此时解析单元直接从共享内存内获取预先为关节运动所配置的轨迹类型参数存储文件,轨迹类型参数包括关节运动的角度和运动方向等参数。而当跳转轨迹为直线运动时轨迹类型参数包括直线运动的方位等参数。然而,本发明对此不作任何限定。

在步骤s120获得读取的指令中机器人的运动速度和轨迹类型后,执行步骤s130,基于机器人的运动速度和轨迹类型获取对应的增益参数。于本实施例中,机器人控制器的共享内存中预先存储了与运动速度、轨迹类型以及增益参数相关的增益表,运动控制规划单元通过查询增益表来获取对应的增益参数。然而,本发明对此不作任何限定。于其它实施例中,也可基于机器人当前指令的运动速度根据预设的算法获得当前运动速度下对应的增益参数。基于每条指令中的运动速度和轨迹类型所获得的增益参数使机器人控制器在指令[2]至[4]行的高速跳转轨迹下具有较低的增益以满足稳定性要求,而指令[6]至[9]行的低速作业轨迹下具有较高的增益来满足精确性要求。进一步的,对于指令[6]至[9]行中每行的也可具有不同的增益。

最后执行步骤s140,基于解析的运动速度、轨迹类型、轨迹类型参数以及对应的增益参数生成机器人运动指令并输出至机器人各轴上的伺服电机驱动器。优选的,生成的机器人运动指令通过ethercat总线接口输出至机器人各轴上的伺服电机驱动器。ethercat作为运动控制总线接口,通讯周期短,通讯速度快,且可以在每个控制循环周期实时调整各轴电机的速度环增益和位置环增益参数并发送给机器人各轴电机的伺服电机驱动器,实现实时的增益闭环控制。

与上述伺服电机增益参数控制方法相对应的,机器人控制器1内的伺服电机增益参数控制模块包括指令读取单元、解析单元、运动控制规划单元以及运动指令生成单元。指令读取单元依次读取机器人作业程序中的每条指令。当读取的指令为运动型指令时,解析单元解析读取的每条运动型指令中机器人的运动速度、轨迹类型以及轨迹类型参数。运动控制规划单元基于解析获得的机器人的运动速度和轨迹类型获取对应的增益参数。运动指令生成单元基于解析的运动速度、轨迹类型、轨迹类型参数以及对应的增益参数生成机器人运动指令并输出至机器人各轴上的伺服电机驱动器。

于本实施例中,在解析单元解析获得运动速度和轨迹类型后,运动控制规划单元通过查询预设的增益表以获取对应的增益参数。然而,本发明对此不作任何限定。于其它实施例中,运动控制规划单元也可基于机器人当前指令的运动速度根据预设的算法获得当前运动速度下对应的增益参数,以实现高速运动的稳定控制和低速运动的精确控制。

于本实施例中,轨迹类型参数被预先配置于机器人控制器的存储文件中,在解析单元解析读取的每一条运动型指令时基于指令中包含的轨迹类型或轨迹类型参数的存储文件名称来解析获得对应内的轨迹类型参数。

于本实施例中,运动指令生成单元通过数据传输模块连接于机器人各轴上的伺服电机驱动器,运动指令生成单元在生成机器人运动指令后通过ethercat总线传输主站21输出至机器人各轴上的伺服电机驱动器。具体而言,每一伺服电机驱动器通过专用的ethercat从站控制芯片(如型号为ax58100系列的芯片)来成为ethercat总线传输主站21的从站。然而,本发明此不作任何限定。

本实施例提供的伺服电机增益参数控制系统采用本实施例中步骤s110~步骤s140的伺服电机增益参数的控制控制方法对伺服电机驱动器进行控制,在此不作赘述。

于本实施例中,伺服电机增益参数控制方法通过解析每条运动型指令中的运动速度和运动轨迹来获取对应的增益参数,增益参数跟随机器人的运动速度和运动轨迹而实时调整;从而实现在高速跳转轨迹下采用较低增益参数以保证高速运动的稳定性,而在低速作业轨迹下采用较高增益参数以满足运动的精确性。进一步的,基于每条运动型指令的增益参数调整,机器人的运动速度和轨迹类型的获取非常的容易且准确,该设置大大降低增益控制的难度和成本。

综上所述,本发明提供的基于通用计算机的机器人控制系统中电源模块在主电路断电后持续为机器人控制器供电以使机器人控制器内的操作模块完成数据的存储,从而实现数据的断电保护。安全单元提供了多安全回路的控制,确保伺服驱动模块能准确响应异常输入或故障,从而实现急停。进一步的,由于安全单元和总线传输主站之间相互监测,当安全单元或总线传输主站任一出现故障时,伺服驱动模块能对该故障进行响应,实现多模块的安全互锁控制,大大提高了安全控制等级。在数据传输模块上,基于总线传输主站的所扩展的第一接口模块与标准的第二接口模块的结合不仅实现了高响应需求数据的快速传输,同时也大大降低了传输模块的成本。在示教器上,示教器程序运行在机器人控制器上,示教器通过接收机器人控制器发送的终端视频信号以实现机器人运行状态的实时显示。在该方案中,示教器端无需嵌入独立的cpu,这不仅大大降低了示教器的成本;而且示教器程序的执行是由机器人控制器内高性能的工控机来执行的,程序的运算能力很强且运算速度非常的快,从而能更好地实现机器人动作的精确控制。

虽然本发明已由较佳实施例揭露如上,然而并非用以限定本发明,任何熟知此技艺者,在不脱离本发明的精神和范围内,可作些许的更动与润饰,因此本发明的保护范围当视权利要求书所要求保护的范围为准。

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