一种确定机器人安全线路的方法及装置转让专利
申请号 : CN201810883763.3
文献号 : CN110802587B
文献日 : 2021-04-27
发明人 : 谢永召 , 宫明波 , 赵德朋 , 刘达
申请人 : 北京柏惠维康科技有限公司
摘要 :
权利要求 :
1.一种确定机器人安全线路的方法,其特征在于,包括:利用传感器得到场景表面点云,以场景表面点云中每个点在传感器坐标系中的坐标为起点,按照传感器的采集方向和延伸距离进行立体点云的生成,确定场景实体点云;根据场景实体点云,确定机械臂的作业场景实体空间中每个点在传感器坐标系中的坐标,根据机械臂的作业场景空间中每个点在所述传感器坐标系中的坐标,建立所述机械臂的作业场景实体空间;
根据目标位置,将模拟轨迹与机械臂的作业场景实体空间不存在交集的移动线路确定为安全线路;
其中,所述根据目标位置,将模拟轨迹与机械臂的作业场景实体空间不存在交集的移动线路确定为安全线路,具体为:S2000:根据目标位置及碰撞线路文档得到机械臂的移动线路;
S2100:根据机械臂的移动线路,得到机械臂的移动线路在机械臂坐标系下的模拟轨迹点云;
S2200:判断模拟轨迹点云和机械臂的场景实体点云是否存在交集,若是,则执行步骤S2300,若否,则执行步骤S2400;
S2300:将当前机械臂的移动线路写入碰撞线路文档,并返回步骤S2000;
S2400:将当前机械臂的移动线路确定为安全线路;
其中,碰撞线路文档用于记录与机械臂的作业场景实体空间发生碰撞的移动线路。
2.根据权利要求1所述的确定机器人安全线路的方法,其特征在于,所述延伸距离为预设值,或者为传感器的有效测量距离,或者为场景表面上每个点到一边界平面的距离。
3.根据权利要求1所述的确定机器人安全线路的方法,其特征在于,利用传感器得到场景表面点云包括:
判断处于传感器最佳测量范围外的场景表面上的点是否形成一个平面,若是,则以传感器最佳测量范围内的场景表面上的点作为场景表面点云,若否,则以传感器有效测量范围内的所有场景表面上的点作为场景表面点云。
4.根据权利要求1所述的确定机器人安全线路的方法,其特征在于,所述判断模拟轨迹点云和机械臂的场景实体点云是否存在交集包括:将模拟轨迹点云和机械臂的场景实体点云统一到同一个坐标系中;
当模拟轨迹点云和机械臂的场景实体点云存在相同的坐标时,确定模拟轨迹点云和机械臂的场景实体点云存在交集;
当模拟轨迹点云和机械臂的场景实体点云不存在相同的坐标时,确定模拟轨迹点云和机械臂场景实体空间不存在交集。
5.一种确定机器人安全线路的装置,其特征在于,包括:作业场景模块,用于利用传感器得到场景表面点云,以场景表面点云中每个点在传感器坐标系中的坐标为起点,按照传感器的采集方向和延伸距离进行立体点云的生成,确定场景实体点云;根据场景实体点云,确定机械臂的作业场景实体空间中每个点在传感器坐标系中的坐标,根据机械臂的作业场景空间中每个点在所述传感器坐标系中的坐标,建立所述机械臂的作业场景实体空间;并将确定的作业场景实体空间的数据发送给线路模块;
线路模块,用于在接收到所述作业场景模块的数据后,根据目标位置,将模拟轨迹与机械臂的作业场景实体空间不存在交集的移动线路确定为安全线路;
所述线路模块包括移动线路单元,模拟轨迹点云单元,判断单元,存储单元及安全线路单元,其中:
移动线路单元,与模拟轨迹点云单元及存储单元连接,用于根据目标位置及碰撞线路的数据得到机械臂的移动线路,并将得到的机械臂的移动线路数据发送给模拟轨迹点云单元;
模拟轨迹点云单元,与移动线路单元和判断单元连接,用于根据从移动线路单元接收到的所述机械臂的移动线路数据,得到机械臂的移动线路在机械臂坐标系下的模拟轨迹点云,并将得到的模拟轨迹点云数据及所述机械臂的移动线路数据发送给判断单元;
判断单元,和模拟轨迹点云单元,存储单元及安全线路单元连接,用于根据从模拟轨迹点云单元接收到的模拟轨迹点云数据,判断模拟轨迹点云和机械臂的场景实体点云是否存在交集,并将所述机械臂的移动线路数据及判断结果发送给存储单元和安全线路单元;
存储单元,和移动线路单元及判断单元连接,用于为移动线路单元提供碰撞线路的数据,及当从判断单元接收到模拟轨迹点云和机械臂的场景实体点云存在交集的判断结果时,将所述机械臂的移动线路确定为碰撞线路,并将碰撞线路的数据记录到存储单元中;
安全线路单元,和判断单元连接,用于当从判断单元接收到模拟轨迹点云和机械臂的场景实体点云不存在交集的判断结果时,将所述机械臂的移动线路确定为安全线路;
其中,碰撞线路文档用于记录与机械臂的作业场景实体空间发生碰撞的移动线路。
6.根据权利要求5所述的确定机器人安全线路的装置,其特征在于,所述延伸距离为预设值,或者为传感器的有效测量距离,或者为场景表面上每个点到一边界平面的距离。
7.根据权利要求5所述的确定机器人安全线路的装置,其特征在于,所述作业场景模块利用传感器得到场景表面点云的步骤包括:判断处于传感器最佳测量范围外的场景表面上的点是否形成一个平面,若是,则以传感器最佳测量范围内的场景表面上的点作为场景表面点云,若否,则以传感器有效测量范围内的所有场景表面上的点作为场景表面点云。
8.根据权利要求5 所述的确定机器人安全线路的装置,其特征在于,所述判断单元包括坐标统一单元和交集确定单元,其中:坐标统一单元,和交集确定单元连接,用于将模拟轨迹点云和机械臂的场景实体点云统一到同一个坐标系中,并将统一到同一个坐标系后的模拟轨迹点云坐标数据和机械臂的场景实体点云坐标数据发送给交集确定单元;
交集确定单元,和坐标统一单元连接,用于根据从坐标统一单元接收到的同一坐标系中的模拟轨迹点云坐标数据和机械臂的场景实体点云坐标数据,当模拟轨迹点云和机械臂的场景实体点云存在相同的坐标时,确定模拟轨迹点云和机械臂的场景实体点云存在交集,当模拟轨迹点云和机械臂的场景实体点云不存在相同的坐标时,确定模拟轨迹点云和机械臂场景实体空间不存在交集。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至4中任一项所述的确定机器人安全线路的方法。
10.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至4中任一项中所述的确定机器人安全线路的方法。
说明书 :
一种确定机器人安全线路的方法及装置
技术领域
背景技术
路是事先人为规定好了的。
低,也就没有任何一条移动线路能够使机械臂安全地执行各种各样的任务,且针对每一次
任务,都需要人工事先为机器人的机械臂找到安全的移动线路,大大降低了机器人完成工
作任务的效率,且增加了操作人员的工作量。
发明内容
了机器人完成工作任务的效率,且降低了操作人员的工作量。
作为场景表面点云,若否,则以传感器有效测量范围内的所有场景表面上的点作为场景表
面点云。
据目标位置,对与机械臂的移动线路对应的模拟轨迹和机械臂的作业场景实体空间是否存
在交集进行判断等,具体为:
量范围内的所有场景表面上的点作为场景表面点云。
云单元;
迹点云,并将得到的模拟轨迹点云数据及所述机械臂的移动线路数据发送给判断单元;
否存在交集,并将所述机械臂的移动线路数据及判断结果发送给存储单元和安全线路单
元;
果时,将所述机械臂的移动线路确定为碰撞线路,并将碰撞线路的数据记录到存储单元中;
臂的场景实体点云坐标数据发送给交集确定单元;
和机械臂的场景实体点云存在相同的坐标时,确定模拟轨迹点云和机械臂的场景实体点云
存在交集,当判断模拟轨迹点云和机械臂的场景实体点云不存在相同的坐标时,确定模拟
轨迹点云和机械臂场景实体空间不存在交集。
上述所述的确定机器人安全线路的方法。
和模拟轨迹点云的坐标集合是否存在交集,来确定机械臂在执行工作任务的过程中是否和
作业场景实体空间发生碰撞,进而为机械臂找到安全的移动线路,在提高机器人完成工作
任务的效率的同时,降低了操作人员的工作量。
附图说明
申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获
得其他的附图。
具体实施方式
施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施
例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
务,都需要人工事先为机器人的机械臂找出安全的移动线路而导致的降低了机器人完成工
作任务的效率,且增加了操作人员的工作量的问题,本申请实施例提供了一种确定机器人
安全线路的方法,请参阅图1,包括步骤S100~S200,具体地:
线路,首先需要确定机械臂的作业场景实体空间,本申请利用传感器的测量数据来确定机
械臂的作业场景实体空间。
机械臂的作业场景实体空间。
有效测量范围内的部分,虽然可以得到测量数据,但是测量数据的精度一般;处于有效测量
范围外的部分则无法得到测量数据。
的场景表面上的点作为场景表面点云,若否,则以传感器有效测量范围内的所有场景表面
上的点作为场景表面点云。
申请对设置延伸距离的方式不作具体限定,只要能够与场景表面点云结合,建立机械臂的
作业场景实体空间即可。
为起点,按照传感器的采集方向和延伸距离进行立体点云的生成,得到场景实体点云。得到
场景实体点云之后,就得到了机械臂的作业场景实体空间中每个点在传感器坐标系下的坐
标,从而可以根据机械臂的作业场景实体空间中每个点在传感器坐标系下的坐标,建立机
械臂的作业场景实体空间。
表面(即所有物体朝向传感器的表面)与传感器之间的位置关系,例如,可以在场景表面上
取点,形成场景表面点云,进而通过确定场景表面上每个点与传感器的位置关系,得到场景
表面点云中每个点在传感器坐标系下的坐标。加之传感器的采集方向和延伸距离可以在传
感器坐标系中得以体现(如传感器的采集方向和延伸距离可以组成一个矢量),因此就可以
将场景表面点云中的每个点,按照传感器的采集方向和延伸距离进行延伸,生成特定方向
上和特定长度内的点,这些点就是机械臂的作业场景实体空间的立体点云,组成了机械臂
的作业场景实体空间。
延伸距离生成的特定方向上和特定长度内的点在传感器坐标系下也有各自的坐标,即可以
得到机械臂的作业场景实体空间中每个点在传感器坐标系中的坐标。
利用光学传感器中的双目摄像头确定机械臂的作业场景实体空间为例进行详细说明。
集方向(如双目摄像头的中心轴线方向)、延伸距离,以及场景表面点云得到场景实体点云。
一个具体数值,还可以设置一个垂直于双目摄像头的图像采集方向的边界平面,将场景表
面点云中每个点到这个边界平面的距离作为每个点各自的延伸距离,总之设置延伸距离的
方式很多,只要能够与场景表面点云相结合,建立场景实体点云即可。
个点在双目摄像头所拥有的传感器坐标系中的坐标为起点,根据双目摄像头的图像采集方
向和延伸距离进行延伸,得到特定方向上和特定长度内的点的坐标,这些点就组成了场景
实体点云,加之每个点在传感器坐标系中都有各自的坐标,因此也就得到了场景实体点云
中每个点在传感器坐标系中的坐标。
的模拟轨迹与机械臂的作业场景实体空间是否存在交集的方式来判断机械臂的移动线路
是否安全。由于模拟轨迹是模拟机械臂在执行工作任务过程中运动的轨迹,而在机械臂坐
标系下能够生成与该模拟轨迹对应的点云,也就是说,可以得到模拟轨迹中每个点在机械
臂坐标系下的坐标,而在上述实施例中已经得到了机械臂的场景实体点云中每个点在传感
器坐标系下的坐标,加之利用已有技术可以得到传感器坐标系和机械臂坐标系之间的转换
关系,因此可以根据模拟轨迹中每个点在机械臂坐标系下的坐标以及场景实体点云中每个
点在传感器坐标系下的坐标,利用传感器坐标系和机械臂坐标系之间的转换关系,判断模
拟轨迹与机械臂的作业场景实体空间是否存在交集,即判断模拟轨迹点云和机械臂的场景
实体点云是否存在交集。
到的机械臂坐标系和传感器坐标系之间的转换关系,可以将模拟轨迹点云和机械臂的场景
实体点云统一到同一个坐标系中,举例来说,可以将模拟轨迹点云中的每个点与机械臂的
场景实体点云中的每个点统一到机械臂坐标系下,具体操作为:根据机械臂的场景实体点
云的每个点在传感器坐标系下的坐标,以及机械臂坐标系与传感器坐标系之间的转换关
系,得到机械臂的场景实体点云中的每个点在机械臂坐标系下的坐标,进而机械臂的场景
实体点云中的每个点与模拟轨迹点云中的每个点在机械臂坐标系下的坐标均已确定,因此
只需要判断模拟轨迹点云和机械臂的场景实体点云在机械臂坐标系下是否存在相同的坐
标就可以确定模拟轨迹点云和机械臂的场景实体点云是否存在交集,将模拟轨迹点云中的
每个点与机械臂的场景实体点云中的每个点统一到传感器坐标下同样如此,此处不再赘
述。
的作业场景实体空间不存在交集的移动线路确定为安全线路。
机械臂自身程序会输出一个最优线路(如输出一条使机械臂到达目标位置的最短线路),由
于下位机的各种参数是机械臂的生产厂家设定好的,无法更改,机械臂自身程序输出的移
动线路是否安全是在机械臂的上位机上运行的。
机械臂的作业场景实体空间发生碰撞的移动线路。碰撞线路文档最初没有任何记录,经过
机械臂的上位机对机械臂自身程序输出的移动线路是否安全的判断步骤后,会将与机械臂
的作业场景实体空间发生碰撞的移动线路记录到碰撞线路文档中。
之间的位置关系,以及机械臂上各个点在机械臂坐标系中的坐标均可以得到,加之又获得
了机械臂的移动路线,因此根据上述信息可以模拟出机械臂上各个点的移动轨迹,从而得
到移动线路在机械臂坐标系下的模拟轨迹点云,并且可以获得模拟轨迹点云中每个点在机
械臂坐标系下的坐标。
业场景实体空间发生碰撞,因此当前的移动线路就不是一个安全线路,可以将当前移动线
路记录到碰撞线路文档中,并返回步骤S2000重新计算一条新的移动线路;若不存在交集,
则说明当前得到的移动线路不会使机械臂在移动过程中与机械臂的作业场景实体空间发
生碰撞,可以将当前移动线路作为机械臂的安全线路在实际操作中使用。
员的工作量。
有效测量范围内的部分,虽然可以得到测量数据,但是测量数据的精度一般;处于有效测量
范围外的部分则无法得到测量数据。
量范围内的所有场景表面上的点作为场景表面点云。
点到一边界平面的距离。本申请实施例对设置延伸距离的方式不作具体限定,只要能够与
场景表面点云结合,建立机械臂的作业场景实体空间即可。
机械臂的作业场景实体空间中每个点在传感器坐标系下的坐标,从而可以根据机械臂的作
业场景实体空间中每个点在传感器坐标系下的坐标,建立机械臂的作业场景实体空间。
拟轨迹与机械臂的作业场景实体空间是否存在交集来确定机械臂的移动线路是否安全。由
于模拟轨迹是模拟机械臂在执行工作任务过程中运动的轨迹,而在机械臂坐标系下能够生
成与该模拟轨迹对应的点云,也就是说,可以得到模拟轨迹中每个点在机械臂坐标系下的
坐标,而在上述实施例中已经得到了机械臂的场景实体点云中每个点在传感器坐标系下的
坐标,加之利用已有技术可以得到传感器坐标系和机械臂坐标系之间的转换关系,因此可
以根据模拟轨迹中每个点在机械臂坐标系下的坐标以及场景实体点云中每个点在传感器
坐标系下的坐标,利用传感器坐标系和机械臂坐标系之间的转换关系,判断模拟轨迹与机
械臂的作业场景实体空间是否存在交集,即判断模拟轨迹点云和机械臂的场景实体点云是
否存在交集,从而线路模块302可根据模拟轨迹点云和机械臂的场景实体点云是否存在交
集来确定机械臂的移动线路是否安全。
给模拟轨迹点云单元3302;
坐标系下的模拟轨迹点云,并将得到的模拟轨迹点云数据及所述机械臂的移动线路数据发
送给判断单元3303;
机械臂的场景实体点云是否存在交集,并将所述机械臂的移动线路数据及判断结果发送给
存储单元3304和安全线路单元3305;
点云存在交集的判断结果时,将所述机械臂的移动线路确定为碰撞线路,并将碰撞线路的
数据记录到存储单元3304中;
为安全线路。
臂的场景实体点云坐标数据发送给交集确定单元;
械臂的场景实体点云存在相同的坐标时,确定模拟轨迹点云和机械臂的场景实体点云存在
交集,当模拟轨迹点云和机械臂的场景实体点云不存在相同的坐标时,确定模拟轨迹点云
和机械臂场景实体空间不存在交集。
器401通过所述计算机程序执行上述实施例中所述的确定机器人安全线路的方法。
量范围内的所有场景表面上的点作为场景表面点云。
述的确定机器人安全线路的方法。
组件508。
指令,以完成上述的方法的全部或部分步骤。此外,处理组件501可以包括一个或多个模块,
便于处理组件501和其他组件之间的交互。例如,处理组件501可以包括多媒体模块,以方便
多媒体组件504和处理组件501之间的交互。
数据,消息,图片,视频等。存储器502可以由任何类型的易失性或非易失性存储设备或者它
们的组合实现,如静态随机存取存储器(英文全称:Static Random Access Memory,英文简
称:SRAM),电可擦除可编程只读存储器(英文全称:Electrically Erasable Programmable
Read Only Memory,英文简称:EEPROM),可擦除可编程只读存储器(英文全称:Erasable
Programmable Read Only Memory,英文简称:EPROM),可编程只读存储器(英文全称:
Programmable Read Only Memory,英文简称:PROM),只读存储器(英文全称:Read Only
Memory,英文简称:ROM),磁存储器,快闪存储器,磁盘或光盘。
LCD)和触摸面板(英文全称:Touch Panel,英文简称:TP)。如果屏幕包括触摸面板,屏幕可
以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以
感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而
且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件504包括
一个前置摄像头和/或后置摄像头。当终端设备50处于操作模式,如拍摄模式或视频模式
时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像
头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进
一步存储在存储器502或经由通信组件508发送。在一些实施例中,音频组件505还包括一个
扬声器,用于输出音频信号。
定按钮。
如组件为终端设备50的显示器和小键盘,传感器组件507还可以检测终端设备50或终端设
备50一个组件的位置改变,用户与终端设备50接触的存在或不存在,终端设备50方位或加
速/减速和终端设备50的温度变化。传感器组件507可以包括接近传感器,被配置用来在没
有任何的物理接触时检测附近物体的存在。传感器组件507还可以包括光传感器,如互补金
属氧化物半导体(英文全称:Complementary Metal Oxide Semiconductor,英文简称:
CMOS)或电荷耦合元件(英文全称:Charge Coupled Device,英文简称:CCD)图像传感器,用
于在成像应用中使用。在一些实施例中,该传感器组件507还可以包括加速度传感器,陀螺
仪传感器,磁传感器,压力传感器或温度传感器。
Fidelity,英文简称:WiFi),2G或3G,或它们的组合。在一个示例性实施例中,通信组件508
经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施
例中,通信组件508还包括近场通信(英文全称:Near Field Communication,英文简称:
NFC)模块,以促进短程通信。例如,该NFC模块可基于射频识别(英文全称:Radio Frequency
Identification,英文简称:RFID)技术,红外数据协会(英文全称:Infrared Data
Association,英文简称:IrDA)技术,超宽带(英文全称:Ultra Wideband,英文简称:UWB)技
术,蓝牙(英文全称:Bluetooth,英文简称:BT)技术和其他技术来实现。
称:Digital Signal Processing,英文简称:DSP)、数字信号处理设备(英文全称:Digital
Signal Processing Device,英文简称:DSPD)、可编程逻辑器件(英文全称:Programmable
Logic Device,英文简称:PLD)、现场可编程门阵列(英文全称:Field Programmable Gate
Array,英文简称:FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述
图1~图2对应的实施例中所描述的确定机器人安全线路的方法。
例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(英文全称:Random
Access Memory,英文简称:RAM)、CD‑ROM、磁带、软盘和光数据存储设备等。当存储介质中的
指令由终端设备50的处理组件501执行时,使得终端设备50能够执行上述图1~图2对应的
实施例中所描述的确定机器人安全线路的方法,该方法包括:
量。
者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识
或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的
权利要求指出。