CN114273726B - 3d视觉引导切坡口方法、装置、设备、系统及存储介质 - Google Patents
3d视觉引导切坡口方法、装置、设备、系统及存储介质 Download PDFInfo
- Publication number
- CN114273726B CN114273726B CN202111531870.8A CN202111531870A CN114273726B CN 114273726 B CN114273726 B CN 114273726B CN 202111531870 A CN202111531870 A CN 202111531870A CN 114273726 B CN114273726 B CN 114273726B
- Authority
- CN
- China
- Prior art keywords
- cutting
- groove
- current
- cut
- transition point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本发明涉及人工智能技术领域,公开了一种3D视觉引导切坡口方法、装置、设备、系统及存储介质,该方法通过定义安全位,与计算机建立通讯连接,发送拍照指令至计算机,以使计算机触发3D相机对待切割工件进行拍照,获取待切割的坡口线信息,待切割的坡口线信息为计算机根据所述3D相机拍照获得的3D点云计算获得并发送,根据待切割的坡口线信息选择对应的目标程序,根据目标程序添加过渡点位,在过渡点位进行J6轴回转,再进行切割操作,从而避免连续运行过程中J6轴超极限,合理回转,保证切割操作连贯,坡口切割平滑;根据剩余坡口线数量判断是否结束切割,若是,则移动到安全位结束切割,在安全位结束切割,提高生产安全性。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种3D视觉引导切坡口方法、装置、设备、系统及存储介质。
背景技术
钢板切坡口工艺,是基于钢板下料成型好的基础上,对其边缘进行切割处理,形成不同倾角坡面过程。其作用在于保证后期钢板与钢板之间拼接过程中的良性焊接。工程中使用的钢板规格日益多样化,板材尺寸、边缘轮廓多变,目前市场上大多数采用激光寻位和工装定位的方法,激光寻位方法,多用于边缘轮廓为直线型板材,先检测再切割,每条轮廓边线分两步,机器人六轴会出现极限位;工装定位方法,多用于产品单一、批量生产情况,机器人程序均为示教运动轨迹组成,每更换一种品类工件需重新示教,切割精度依赖示教轨迹精度,机器人程序复杂多样。
现有的激光寻位方法,局限于边缘轮廓为直线型板材,先检测再切割,机器人不能一次将所有轨迹信息全部读入,轨迹运行不连贯,加工效率低。现有的工装定位方法,适用于产品单一、批量生产情况,机器人程序均为示教运动轨迹组成,每更换一种品类工件需重新示教,示教工作任务繁重、耗时长,较难实现复杂轮廓切割面平滑完整。以上两种方法,一套机器人程序不能适配所有不同类型工件,均不能规避机器人六轴超极限问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种3D视觉引导切坡口方法、装置、设备、系统及存储介质,旨在解决现有技术中一套程序不能适配所有不同类型工件,不能规避机器人六轴超极限问题的技术问题。
为实现上述目的,本发明提供一种3D视觉引导切坡口方法,所述3D视觉引导切坡口方法包括以下步骤:
定义安全位;
与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照;
获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得并发送;
根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作;
根据剩余坡口线数量判断是否结束切割;
若否,则返回所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作的步骤;
若是,则移动到所述安全位结束本次切割。
优选地,所述与计算机建立通讯连接之前,还包括:
定义料框口等待位;
在与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照的同时,移动到所述料框口等待位。
优选地,所述在所述过渡点位进行J6轴回转,包括:
在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转。
优选地,所述在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转,包括:
若所述J6轴的运动方向为逆时针,且所述当前J6轴数据大于预设值,则在所述过渡点位顺时针旋转预设角度;
若所述J6轴的运动方向为顺时针,且所述当前J6轴数据小于预设值,则在所述过渡点位逆时针旋转预设角度。
优选地,所述获取待切割的坡口线信息,包括:
发送获取指令至所述计算机,以使所述计算机根据所述获取指令返回字符串形式的坡口线信息;
接收所述计算机以字符串形式传输的坡口线信息,所述坡口线信息包括坡口线类型、坡口空间坐标信息、端点动作状态、运动速率和拐弯半径参数;
将所述坡口线信息用实数型数组变量或位置型数组变量进行表示,其中,所述坡口线类型、所述端点动作状态、所述运动速率和所述拐弯半径参数用实数型数组变量表示,所述坡口空间坐标信息用位置型数组变量表示;
相应地,所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作,包括:
根据当前坡口线类型选择对应的目标程序;
根据所述目标程序,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、运动速率和拐弯半径参数进行切割操作。
优选地,所述根据所述目标程序,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、运动速率和拐弯半径参数进行切割操作,包括:
在所述目标程序为直线段程序时,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线首端点位姿,判断所述当前坡口线首端点的端点动作状态,根据所述端点动作状态以第一运动速率和第一拐弯半径参数执行对应的切割操作,切割移动到当前坡口线末端点位姿,判断所述当前坡口线末端点的端点动作状态,根据所述当前坡口线末端点的端点动作状态以第二运动速率和第二拐弯半径参数执行对应的切割操作;
在所述目标程序为圆弧段程序时,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线首端点位姿,判断所述当前坡口线首端点的端点动作状态,根据所述当前坡口线首端点的端点动作状态以第三运动速率和第三拐弯半径参数执行对应的切割操作,切割移动到中间点位姿,再以第四运动速率和第四拐弯半径参数切割移动到当前坡口线末端点位姿,判断所述当前坡口线末端点的端点动作状态,根据所述当前坡口线末端点的端点动作状态以第五运动速率和第五拐弯半径参数执行对应的切割操作。
此外,为实现上述目的,本发明还提出一种3D视觉引导切坡口装置,所述3D视觉引导切坡口装置包括:
定义模块,用于定义安全位;
通讯模块,用于与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照;
获取模块,用于获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得并发送;
切割模块,用于根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作;
所述切割模块,还用于根据剩余坡口线数量判断是否结束切割;若否,则返回所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作的步骤;若是,则移动到所述安全位结束本次切割。
此外,为实现上述目的,本发明还提出一种3D视觉引导切坡口设备,所述3D视觉引导切坡口设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的3D视觉引导切坡口程序,所述3D视觉引导切坡口程序配置为实现如上文所述的3D视觉引导切坡口方法的步骤。
此外,为实现上述目的,本发明还提出一种3D视觉引导切坡口系统,所述3D视觉引导切坡口系统包括:3D相机,计算机,以及上文所述的3D视觉引导切坡口设备;
所述3D相机,用于检测当前位置是否处于预设拍照点范围,若处于,则对待切割工件进行拍照,获得待切割工件的3D点云,并将所述待切割工件的3D点云传输至所述计算机;
所述计算机,用于根据所述待切割工件的3D点云生成待切割的坡口线信息,并将所述待切割的坡口线信息传输至所述3D视觉引导切坡口设备。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有3D视觉引导切坡口程序,所述3D视觉引导切坡口程序被处理器执行时实现如上文所述的3D视觉引导切坡口方法的步骤。
本发明中,通过定义安全位,与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照,获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得,一次接收存储所有坡口信息,无需来回拍照获取,较大程度上提升节拍;根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,通过在所述过渡点位进行J6轴回转,再进行切割操作,从而避免连续运行过程中J6轴超极限,合理回转,保证切割操作连贯,坡口切割平滑;根据剩余坡口线数量判断是否结束切割,若否,则返回切割操作的步骤,若是,则移动到所述安全位结束本次切割,在安全位结束切割,提高生产安全性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的3D视觉引导切坡口设备的结构示意图;
图2为本发明3D视觉引导切坡口方法实施例的流程示意图;
图3为本发明3D视觉引导切坡口装置实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的3D视觉引导切坡口设备结构示意图。
如图1所示,该3D视觉引导切坡口设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display),可选用户接口1003还可以包括标准的有线接口、无线接口,对于用户接口1003的有线接口在本发明中可为USB接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的存储器(Non-volatileMemory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对3D视觉引导切坡口设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及3D视觉引导切坡口程序。
在图1所示的3D视觉引导切坡口设备中,网络接口1004主要用于连接后台服务器,与所述后台服务器进行数据通信;用户接口1003主要用于连接用户设备;所述3D视觉引导切坡口设备通过处理器1001调用存储器1005中存储的3D视觉引导切坡口程序,并执行本发明实施例提供的3D视觉引导切坡口方法。
基于上述硬件结构,提出本发明3D视觉引导切坡口方法的实施例。
参照图2,图2为本发明3D视觉引导切坡口方法实施例的流程示意图,提出本发明3D视觉引导切坡口方法第一实施例。
在第一实施例中,所述3D视觉引导切坡口方法包括以下步骤:
步骤S10:定义安全位。
应理解的是,本实施例的执行主体是所述3D视觉引导切坡口设备,其中,所述3D视觉引导切坡口设备为机器人等电子设备,比如KUKA机器人,本实施例对此不加以限制。本实施例以机器人为例进行说明,所述机器人的程序设计框架,首先定义工具和用户坐标系,添加机器人负载(payload)。示教合适拍照点位并定义为安全位(Home点)。
步骤S20:与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照。
可理解的是,与计算机建立socket通讯连接,发送字符串“tr,0”给所述计算机的视觉软件,所述计算机发送指令触发所述3D相机拍照,获得待切割工件的3D点云,所述3D相机再将待切割工件的3D点云传输至所述计算机,所述计算机获取待切割工件的工件图纸,将所述待切割工件的3D点云与所述工件图纸进行匹配,根据计算结果生成数字输出状态。
进一步地,在所述步骤S20之后,还包括:
接收计算机发送的数字输出状态,所述数字输出状态为所述计算机根据所述3D点云计算获得;
根据所述数字输出状态判断下一步动作。
需要说明的是,所述计算机的视觉系统识别计算工件信息,给出计算结果,根据计算结果生成数字输出状态,发送数字输出状态至所述机器人,所述机器人通过确认所述数字输出状态,并判断机器人下一步动作,识别计算成功,则切割程序继续执行,识别计算失败,则输出报警同时跳转程序结束。在本实施例中,所述根据所述数字输出状态判断下一步动作,包括:将所述数字输出状态编译成整数型数据,并存储所述整数型数据在第一数字寄存器内;根据所述第一数字寄存器内的所述整数型数据,判断下一步动作。
通过与计算机交互的数字输出状态,判断工件与切割信息是否匹配,从而提高切割准确性,避免采用错误的程序导致切割失误。
步骤S30:获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得并发送。
在具体实现中,所述计算机将坡口线的详细信息以字符串的形式传输给机器人,待切割的坡口线信息包括坡口线数量、每条坡口线的类型(直线或圆弧)、坡口空间坐标信息、端点位姿、端点动作状态、运动速率和拐弯半径参数。全自动获取切割边缘的位姿信息并存储于机器人运行轨迹中,真正意义上实现免示教。适用KUKA机器人各种不同版本编译,通用性强。
根据所述数字输出状态判断下一步动作,在所述下一步动作为继续执行时,获取待切割的坡口线信息。所述计算机根据待切割工件CAD图纸,在切坡口软件中设定好需要切割的轮廓边,机器人端设定接收存储坡口总数的实数变量。具体步骤:所述机器人与所述计算机建立socket通讯连接,所述机器人通过发送命令“send”发送字符串指令“qn,0”给所述计算机切坡口视觉软件,所述视觉软件接收字符串指令,给出返回值;所述机器人通过接收存储命令“rec”读取到字符串形式的坡口线数量,通过将字符串转换为实数功能函数“STRTOREAL”,将坡口线数量存储到定义好的实数变量num10中。
步骤S40:根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作。
应理解的是,坡口线类型包括直线或圆弧,若所述当前坡口线类型为直线,则选择直线段程序进行切割操作,若所述当前坡口线类型为圆弧,则选择圆弧段程序进行切割操作。判断坡口线类型,直线跳转到直线段程序,圆弧跳转到圆弧段程序。每条坡口线信息包括坡口线类型(直线或者圆弧)、坡口空间坐标信息、端点开关火信息、运动速率、拐弯半径参数。
在具体实现中,添加过渡点位,在所述过渡点位进行J6轴回转,切坡口过程中,因工件外形差异导致机器人第六轴超出运动范围而报错,被迫中断切坡口过程,可根据切割起点机器人第六轴数据和后续坡口轨迹趋势,在开火点将机器人六轴进行回转。
步骤S50:根据剩余坡口线数量判断是否结束切割。
步骤S60:若否,则返回所述步骤S40;若是,则移动到所述安全位结束本次切割。
应理解的是,切割完所述当前坡口线,获取剩余坡口线数量,判断剩余坡口线数量是否小于1。若是,说明当前坡口线是最后一条待切割的坡口线,则移动到撤离过渡点,再返回安全位并结束切割。移动到撤离过渡点,再返回安全位后结束切割,能够保证周边设备无干涉,安全结束切割任务。若否,说明当前坡口线不是最后一条待切割的坡口线,则返回步骤:根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作。机器人端程序只需编译一次,通过获取的待切割的坡口线信息就能满足钢板的尺寸、形状及摆放位置的变化,且机器人无需示教寻位就能自动获取工件的位姿信息,并生成切割轨迹,且能控制切割机实现钢板的切坡口工作,实现了免示教和免离线编程,大大提升了生产效率。
还可通过判断破口线数量:num10≥i表示坡口轨迹未执行完,跳转至所述步骤S40继续获取下一坡口线信息;num10<i表示已完成所有切割轨迹。
在本实施例中,定义安全位,与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照,接收计算机发送的待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得,一次接收存储所有坡口信息,无需来回拍照获取,较大程度上提升节拍;根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,通过在所述过渡点位进行J6轴回转,再进行切割操作,从而避免连续运行过程中J6轴超极限,合理回转,保证切割操作连贯,坡口切割平滑;根据剩余坡口线数量判断是否结束切割,若否,则返回切割操作的步骤,若是,则移动到所述安全位结束本次切割,在安全位结束切割,提高生产安全性。
继续参照图2,基于上述图2所示的第一实施例,提出本发明3D视觉引导切坡口方法的第二实施例。
在第二实施例中,所述与计算机建立通讯连接之前,还包括:
定义料框口等待位;
在执行所述步骤S20的同时,移动到所述料框口等待位。
应理解的是,所述计算机触发所述3D相机拍照,所述3D相机拍照到所述机器人进行工件切割或抓取中间还有几秒钟的时间,通过定义料框口等待位,在3D相机拍照的同时,所述机器人的抓手或手臂移动到所述料框口等待位,从而提高效率,避免空等。
进一步地,所述在所述过渡点位进行J6轴回转,包括:
在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转。
需要说明的是,切坡口过程中,因工件外形差异导致机器人第六轴超出运动范围报错,被迫中断切坡口过程,一般运动范围-360°~360°,所述预设角度设置为360°,可根据切割起点机器人第六轴数据和后续坡口轨迹趋势,在开火点将机器人六轴进行回转360°操作。例如:开火点机器人第六轴的所述当前J6轴数据为5°,后续坡口轨迹趋势机器人第六轴需要逆时针(六轴正方向)转动,即所述J6轴的运动方向为逆时针,那么第六轴最多还可转动355°,通过J6轴回转,在5°的基础上旋转-360°,则开火点第六轴为-355°,则机器人第六轴还可转动715°,这就能够保证机器人第六轴转动完整一周不会超出运动范围。在本实施例中,所述在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转,包括:若所述J6轴的运动方向为逆时针,且所述当前J6轴数据大于预设值,则在所述过渡点位顺时针旋转预设角度;若所述J6轴的运动方向为顺时针,且所述当前J6轴数据小于预设值,则在所述过渡点位逆时针旋转预设角度。
进一步地,在本实施例中,所述获取待切割的坡口线信息,包括:
发送获取指令至所述计算机,以使所述计算机根据所述获取指令返回字符串形式的坡口线信息;
接收所述计算机以字符串形式传输的坡口线信息,所述坡口线信息包括坡口线类型、坡口空间坐标信息、端点动作状态、运动速率和拐弯半径参数;
将所述坡口线信息用实数型数组变量或位置型数组变量进行表示,其中,所述坡口线类型、所述端点动作状态、所述运动速率和所述拐弯半径参数用实数型数组变量表示,所述坡口空间坐标信息用位置型数组变量表示;
相应地,所述步骤S40,包括:
根据当前坡口线类型选择对应的目标程序;
根据所述目标程序,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、运动速率和拐弯半径参数进行切割操作。
需要说明的是,每条坡口线信息包括坡口线类型(直线或者圆弧)、坡口空间坐标信息、端点动作状态、运动速率、拐弯半径参数,分别用实数型数组变量type[i]、位置型数组变量Xpoint00[j]、实数型数组变量fire[j]、实数型数组变量speed[j]、实数型数组变量APO_DIST[j]表示,其中i为0表示坡口线为直线,为1表示坡口线为圆弧,执行完一段坡口,i=i+1;待切割的坡口线数量相应减1,切割的坡口线数量增1;j表示点号,初始值为1,每条直线由两个点组成,即每执行完一段直线,j=j+1,每条圆弧用三个点表示,每执行完一段圆弧,j=j+2;建立socket通讯成功后,执行获取数据程序,通过发送获取指令至所述计算机,获取位姿信息,使用STRLEN函数读取接收到的字符串长度,使用STRTOREAL函数将字符串变为实数,使用STRADD函数将实数转化成十进制坐标值,通过以上一系列机器人功能函数将接收到的字符串信息转换为机器人可识别读取的位姿参数,每条坡口线执行三次获取数据程序,第一次执行获取坡口线类型type[i],第二三次执行获取直线起点和终点信息;每段圆弧执行四次获取数据程序,第一次执行获取坡口线类型type[i],第二三四次执行获取圆弧起点、中间点和终点信息。
进一步地,在本实施例中,所述根据所述目标程序,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、速度和拐弯半径参数进行切割操作,包括:
在所述目标程序为直线段程序时,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线首端点位姿,判断所述当前坡口线首端点的端点动作状态,根据所述端点动作状态以第一速度和第一拐弯半径参数执行对应的切割操作,切割移动到当前坡口线末端点位姿,判断所述当前坡口线末端点的端点动作状态,根据所述当前坡口线末端点的端点动作状态以第二速度和第二拐弯半径参数执行对应的切割操作;
在所述目标程序为圆弧段程序时,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线首端点位姿,判断所述当前坡口线首端点的端点动作状态,根据所述当前坡口线首端点的端点动作状态以第三速度和第三拐弯半径参数执行对应的切割操作,切割移动到中间点位姿,再以第四速度和第四拐弯半径参数切割移动到当前坡口线末端点位姿,判断所述当前坡口线末端点的端点动作状态,根据所述当前坡口线末端点的端点动作状态以第五速度和第五拐弯半径参数执行对应的切割操作。
在具体实现中,每个位姿点信息包含九组字符串,前六组表示机器人位姿信息,分别为X、Y、Z、A、B、C,后三组表示开关火类型fire[j]、运动速率speed[j]和拐弯半径参数APO_DIST[j]。具体步骤如下,直线段程序:添加过渡点位包括J6轴回转;移动到坡口线起点位姿;通过调用关火类型fire[j]参数来判断该端点动作状态,其中1表示开火,2表示关火,3表示无动作;运行速率调用speed[j]参数,拐弯半径调用APO_DIST[j]参数,每个轨迹点的运行参数均需要通过以上步骤来调用;切割移动到末端点位姿;判断该端点状态,根据剩余坡口线数量判断是否结束切割。
圆弧段程序:添加过渡点位包括J6轴回转;移动到坡口线首端点位姿;判断该端点动作状态,其中1表示开火,2表示关火,3表示无动作;运行速率调用speed[j]参数,拐弯半径调用APO_DIST[j]参数;移动到中间点位姿;判断该端点动作状态;切割移动到终点位姿;判断该端点动作状态,根据剩余坡口线数量判断是否结束切割。
在本实施例中,通过定义料框口等待位,在3D相机拍照的同时,所述机器人的抓手或手臂移动到所述料框口等待位,从而提高效率,避免空等;通过接收所述计算机端以字符串形式传输的坡口线信息,根据所述当前坡口线类型选择对应的目标程序,根据所述目标程序,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、运动速率和拐弯半径参数进行切割操作,提高机器人自动化程度,保证机器人快速准确完成钢板的切坡口工作。
此外,本发明实施例还提出一种3D视觉引导切坡口系统,所述3D视觉引导切坡口系统包括:3D相机,计算机,以及如上文所述的3D视觉引导切坡口设备;
所述3D相机,用于检测当前位置是否处于预设拍照点范围,若处于,则对待切割工件进行拍照,获得待切割工件的3D点云,并将所述待切割工件的3D点云传输至所述计算机;
所述计算机,用于根据所述待切割工件的3D点云生成待切割的坡口线信息,并将所述待切割的坡口线信息传输至所述3D视觉引导切坡口设备。
需要说明的是,所述预设拍照点范围是指所述机器人的前端不在3D相机的视野内,则3D相机拍照能够不受所述机器人前端的影响,而完整拍出待切割工件。在切坡口前对所述待测工件进行1次拍照生成3D点云,将所述待切割工件的3D点云传输至所述计算机,所述计算机提取工件的轮廓点云,结合工件2D图纸生成待切割的模板坡口线,并与实际工件点云做匹配生成重定位的坡口线,最后经过手眼转换向机器人发送可行的切割轨迹。无需人工示教,只需1次3D相机拍照,可适应工件加工误差和上料摆放误差,降低了人工操作难度、来料和上料要求,进而提升了钢板切坡口的整体作业效率。所述待测工件包括钢板工件等。
可理解的是,所述工件图纸是指待切割工件的工件模板的2D图纸,所述计算机依据预设解析规则解析工件模板的2D图纸,获取多个模板参考线Si(i=1,2,...,Ns),Ns表示参考线总个数;基于预设距离Dp与预设方向,偏移所述模板参考线Si(i=1,2,...,Ns)以生成第一模板坡口线Sgi(i=1,2,...,Ns);依据预设剪裁规则剪裁所述第一模板坡口线Sgi(i=1,2,...,Ns),生成第二模板坡口线SGi(i=1,2,...,Ns);获取待切割工件轮廓点云Cs和所述工件模板轮廓点云Ct,并获取二者之间偏移量的最优补偿距离Db以及位姿匹配的最优变换矩阵Tb;基于所述最优补偿距离Db与预设方向,偏移所述第二模板坡口线SGi(i=1,2,...,Ns)以生成第一重创坡口线Soi(i=1,2,...,Ns);依据预设剪裁规则剪裁所述第一重创坡口线Soi(i=1,2,...,Ns),生成所述工件模板的第二重创坡口线Soi(i=1,2,...,Ns);基于所述最优变换矩阵Tb旋转平移所述第二重创坡口线Soi(i=1,2,...,Ns),生成所述待切割工件的切割轨迹。所述计算机根据所述待切割工件的切割轨迹发送至机器人,机器人根据所述切割轨迹生成坡口线详细信息。或者,所述计算机根据所述待切割工件的切割轨迹生成坡口线详细信息,并发送所述坡口线详细信息至所述机器人。
本实施例中,基于待测工件图纸信息、待测工件3D点云、软件处理和机器人实现自动切割、免示教和免离线编程,提升生产效率。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有3D视觉引导切坡口程序,所述3D视觉引导切坡口程序被处理器执行时实现如上文所述的3D视觉引导切坡口方法的步骤。
此外,参照图3,本发明实施例还提出一种3D视觉引导切坡口装置,所述3D视觉引导切坡口装置包括:
定义模块10,用于定义安全位;
通讯模块20,用于与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照;
获取模块30,用于获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得并发送;
切割模块40,用于根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作;
所述切割模块40,还用于根据剩余坡口线数量判断是否结束切割;若否,则返回所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作的步骤;若是,则移动到所述安全位结束本次切割。
本发明所述3D视觉引导切坡口装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为标识。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器镜像(Read Only Memory image,ROM)/随机存取存储器(Random AccessMemory,RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种3D视觉引导切坡口方法,其特征在于,所述3D视觉引导切坡口方法包括以下步骤:
定义安全位;
与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照;
获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得并发送;
根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作,所述J6轴为机器人第六轴;
根据剩余坡口线数量判断是否结束切割;
若否,则返回所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作的步骤;
若是,则移动到所述安全位结束本次切割;
其中,所述在所述过渡点位进行J6轴回转,包括:
在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转;
所述在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转,包括:
若所述J6轴的运动方向为逆时针,且所述当前J6轴数据大于预设值,则在所述过渡点位顺时针旋转预设角度;
若所述J6轴的运动方向为顺时针,且所述当前J6轴数据小于预设值,则在所述过渡点位逆时针旋转预设角度。
2.如权利要求1所述的3D视觉引导切坡口方法,其特征在于,所述与计算机建立通讯连接之前,还包括:
定义料框口等待位;
在与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照的同时,移动到所述料框口等待位。
3.如权利要求1~2中任一项所述的3D视觉引导切坡口方法,其特征在于,所述获取待切割的坡口线信息,包括:
发送获取指令至所述计算机,以使所述计算机根据所述获取指令返回字符串形式的坡口线信息;
接收所述计算机以字符串形式传输的坡口线信息,所述坡口线信息包括坡口线类型、坡口空间坐标信息、端点动作状态、运动速率和拐弯半径参数;
将所述坡口线信息用实数型数组变量或位置型数组变量进行表示,其中,所述坡口线类型、所述端点动作状态、所述运动速率和所述拐弯半径参数用实数型数组变量表示,所述坡口空间坐标信息用位置型数组变量表示;
相应地,所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作,包括:
根据当前坡口线类型选择对应的目标程序;
根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、运动速率和拐弯半径参数进行切割操作。
4.如权利要求3所述的3D视觉引导切坡口方法,其特征在于,所述根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线端点,根据当前坡口线对应的端点动作状态、运动速率和拐弯半径参数进行切割操作,包括:
在所述目标程序为直线段程序时,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线首端点位姿,判断所述当前坡口线首端点的端点动作状态,根据所述端点动作状态以第一运动速率和第一拐弯半径参数执行对应的切割操作,切割移动到当前坡口线末端点位姿,判断所述当前坡口线末端点的端点动作状态,根据所述当前坡口线末端点的端点动作状态以第二运动速率和第二拐弯半径参数执行对应的切割操作;
在所述目标程序为圆弧段程序时,添加过渡点位,在所述过渡点位进行J6轴回转,根据当前坡口线的坡口空间坐标信息移动到当前坡口线首端点位姿,判断所述当前坡口线首端点的端点动作状态,根据所述当前坡口线首端点的端点动作状态以第三运动速率和第三拐弯半径参数执行对应的切割操作,切割移动到中间点位姿,再以第四运动速率和第四拐弯半径参数切割移动到当前坡口线末端点位姿,判断所述当前坡口线末端点的端点动作状态,根据所述当前坡口线末端点的端点动作状态以第五运动速率和第五拐弯半径参数执行对应的切割操作。
5.一种3D视觉引导切坡口装置,其特征在于,所述3D视觉引导切坡口装置包括:
定义模块,用于定义安全位;
通讯模块,用于与计算机建立通讯连接,发送拍照指令至所述计算机,以使所述计算机触发3D相机对待切割工件进行拍照;
获取模块,用于获取待切割的坡口线信息,所述待切割的坡口线信息为所述计算机根据所述3D相机拍照获得的3D点云计算获得并发送;
切割模块,用于根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作,所述J6轴为机器人第六轴;
所述切割模块,还用于根据剩余坡口线数量判断是否结束切割;若否,则返回所述根据所述待切割的坡口线信息选择对应的目标程序,并根据所述目标程序添加过渡点位,在所述过渡点位进行J6轴回转,再进行切割操作的步骤;若是,则移动到所述安全位结束本次切割;
其中,所述在所述过渡点位进行J6轴回转,包括:
在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转;
所述在所述过渡点位,根据J6轴的运动方向和当前J6轴数据进行预设角度回转,包括:
若所述J6轴的运动方向为逆时针,且所述当前J6轴数据大于预设值,则在所述过渡点位顺时针旋转预设角度;
若所述J6轴的运动方向为顺时针,且所述当前J6轴数据小于预设值,则在所述过渡点位逆时针旋转预设角度。
6.一种3D视觉引导切坡口设备,其特征在于,所述3D视觉引导切坡口设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的3D视觉引导切坡口程序,所述3D视觉引导切坡口程序被所述处理器执行时实现如权利要求1至4中任一项所述的3D视觉引导切坡口方法的步骤。
7.一种3D视觉引导切坡口系统,其特征在于,所述3D视觉引导切坡口系统包括:3D相机,计算机,以及如权利要求6所述的3D视觉引导切坡口设备;
所述3D相机,用于检测当前位置是否处于预设拍照点范围,若处于,则对待切割工件进行拍照,获得待切割工件的3D点云,并将所述待切割工件的3D点云传输至所述计算机;
所述计算机,用于根据所述待切割工件的3D点云生成待切割的坡口线信息,并将所述待切割的坡口线信息传输至所述3D视觉引导切坡口设备。
8.一种存储介质,其特征在于,所述存储介质上存储有3D视觉引导切坡口程序,所述3D视觉引导切坡口程序被处理器执行时实现如权利要求1至4中任一项所述的3D视觉引导切坡口方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111531870.8A CN114273726B (zh) | 2021-12-15 | 2021-12-15 | 3d视觉引导切坡口方法、装置、设备、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111531870.8A CN114273726B (zh) | 2021-12-15 | 2021-12-15 | 3d视觉引导切坡口方法、装置、设备、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114273726A CN114273726A (zh) | 2022-04-05 |
CN114273726B true CN114273726B (zh) | 2023-06-20 |
Family
ID=80872296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111531870.8A Active CN114273726B (zh) | 2021-12-15 | 2021-12-15 | 3d视觉引导切坡口方法、装置、设备、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114273726B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114769717A (zh) * | 2022-04-24 | 2022-07-22 | 熵智科技(深圳)有限公司 | 相邻坡口线自动剪裁方法、装置、设备及存储介质 |
CN115446487B (zh) * | 2022-11-14 | 2023-05-05 | 湖南视比特机器人有限公司 | 工件坡口切割轨迹获取方法、装置、切割方法及切割装置 |
CN116000484B (zh) * | 2023-03-28 | 2023-07-25 | 湖南视比特机器人有限公司 | 工件二次定位方法、定位装置、工件坡口切割方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105881521B (zh) * | 2016-05-27 | 2018-08-07 | 济宁中科先进技术研究院有限公司 | 采用六轴工业机器人进行相贯线切割的加工装置及方法 |
CN109317753A (zh) * | 2017-08-01 | 2019-02-12 | 王聪杰 | 一种多工序机器人自动化生产线及其方法 |
JP7205752B2 (ja) * | 2018-11-09 | 2023-01-17 | オムロン株式会社 | ロボット制御装置、ロボット制御方法、及びロボット制御プログラム |
CN111239159A (zh) * | 2020-03-16 | 2020-06-05 | 科为升视觉技术(苏州)有限公司 | 封装基板视觉检测系统及方法 |
-
2021
- 2021-12-15 CN CN202111531870.8A patent/CN114273726B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114273726A (zh) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114273726B (zh) | 3d视觉引导切坡口方法、装置、设备、系统及存储介质 | |
Safeea et al. | Kuka sunrise toolbox: Interfacing collaborative robots with matlab | |
JP3300682B2 (ja) | 画像処理機能を持つロボット装置 | |
EP3733355A1 (en) | Robot motion optimization system and method | |
CN108582071B (zh) | 一种工业机器人编程轨迹诊断及速度优化的方法 | |
EP3587050A1 (en) | Method and system to generate a 3d model for a robot scene | |
WO2020190166A1 (ru) | Способ и система захвата объекта с помощью роботизированного устройства | |
CN114227706A (zh) | 基于3d视觉的切坡口方法、装置、设备、系统及介质 | |
US10960553B2 (en) | Robot control device and robot system | |
JP2017102529A (ja) | ワーク位置姿勢算出装置およびハンドリングシステム | |
CN111596614A (zh) | 基于云边协同的运动控制误差补偿系统及方法 | |
CN114355953B (zh) | 一种基于机器视觉的多轴伺服系统的高精度控制方法及系统 | |
CN113379849A (zh) | 基于深度相机的机器人自主识别智能抓取方法及系统 | |
CN114851209B (zh) | 一种基于视觉的工业机器人工作路径规划优化方法及系统 | |
CN112907682B (zh) | 一种五轴运动平台的手眼标定方法、装置及相关设备 | |
JP6792230B1 (ja) | 情報処理装置、方法およびプログラム | |
CN112824060B (zh) | 加工路径生成装置及其方法 | |
Filaretov et al. | Human machine interface based on virtual reality for programming industrial robots | |
CN117301077B (zh) | 机械臂轨迹生成方法、装置、电子设备及可读存储介质 | |
CN108858162B (zh) | 四轴机械臂的位置确定方法和装置 | |
Borangiu et al. | Constraints-based motion planning for an automatic, flexible laser scanning robotized platform | |
JP2021186929A (ja) | 多軸ロボットの制御方法 | |
CN115319323B (zh) | 管板焊焊接方法、系统、焊接机器人及存储介质 | |
CN115709484B (zh) | 一种移动机器人安全仿真检测方法及系统 | |
CN116100562B (zh) | 多机器人协同上下料的视觉引导方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |