一种机器人零点标定的方法、存储设备和控制设备与流程

文档序号:12875360阅读:771来源:国知局
一种机器人零点标定的方法、存储设备和控制设备与流程

本发明涉及工业机器人领域,尤其涉及一种机器人零点标定的方法、存储设备和移动终端。



背景技术:

零点是机器人坐标系的基准,没有零点机器人就没有办法判断自身的位置。通常工业机器人在出厂之前均会对机器人的机械参数进行标定,给出工业机器人各轴的参数及零点位置,但在特殊情况下,如电池更换、超越机械极限位置、与环境发生碰撞、手动移动机器人关节等均为造成零点的丢失。

目前机器人零点标定有如下几种方法。

1.插销式方法,通过转动机械臂至目测到达零位后,用插销插入预设孔。如果可以插入,则表明该位置为零位。该方法采用人工目测识别,存在的误差比较大。

2.emt方法,通过执行零点标定程序,在机械臂旋转过程中通过电子测量仪检测是否已经到位,如果到位则停止,停止位即为零位。该方法的需要使用电子测量仪,价格较高。

3.千分表方式,通过手动移动机器人的各轴,读取千分表数值来判断当前是否为零位。相对插销式方法,精度更高,但是无法自适应自动完成标定。



技术实现要素:

本发明所要解决的第一方面技术问题是提供一种机器人零点标定的方法,简单快速对机器人进行零点标定,从而实现机器人的驱动电机的编码器的值和现实空间中需零点标定轴的位置的对应关系。

本发明解决上述技术问题的技术方案如下:一种机器人零点标定的方法,包括如下步骤,s1,控制第一轴以预设速度朝一个方向移动,获取安装于所述第一轴的千分表的读数;其中,所述第一轴为机器人的需要零点标定的任意一个轴;s2,当所述千分表的读数由大变小,再由小变大时,控制所述第一轴停止移动;其中,所述第一轴从开始移动至停止移动为一次行程;s3,控制所述第一轴反转并向相反方向移动;调整所述速度以使当前所述行程的所述速度小于前一所述行程的所述速度;计算所述千分表的当前读数和前一读数的差值;s4,当所述差值的绝对值小于或等于预设偏差阈值时,执行步骤s5;当所述差值的绝对值大于预设偏差阈值且所述千分表的当前读数大于前一读数时,控制所述第一轴停止移动并返回执行步骤s3;s5,控制所述第一轴停止移动并记录所述第一轴的驱动电机的编码器的当前值,将所述第一轴位于的当前位置记为所述第一轴的机械零位。

本发明的有益效果是:通过本发明的零点标定方法能够简单方便完成机器人的标定过程,对机器人装配方式、装配角度、固定方式以及地面是否平整无任何要求。仅要求在机器人生产的时候保证u型槽在安装后其底部位置对应机械零位,标定实现过程与选择哪家伺服电机以及控制方式没有直接关系,只涉及u型槽的加工以及算法编程实现,具备广泛的适用性。最终标定精度与第一轴速度和预设偏差阈值设置有关。第一轴的速度越小则轴移动步距越小,相反,第一轴移动的速度越大则第一轴移动步距越大。开始时即步骤s1中,第一轴的预设速度最大,在以后步骤中第一轴的速度逐步缩小。步骤s2初步确定了u型槽底部的一个相对大的范围,通过步骤s3-s5进一步确定u型槽的底部从而确定第一轴的机械零位。

在上述技术方案的基础上,本发明还可以做如下改进。

进一步,所述一种机器人零点标定的方法,所述第一轴移动时,所述千分表的测头在u型槽内滑动,所述u型槽的底部对应所述第一轴的机械零位。

进一步,所述一种机器人零点标定的方法,步骤s1之前还包括步骤s11,s11,设置所述千分表的测杆自然伸展状态对应的数值为0,作为所述千分表的读数的初始值。

采用上述进一步方案的有益效果是对千分表进行校验,以使后续所使用的数据正确。

进一步,所述一种机器人零点标定的方法,步骤s11之后还包括步骤s12,s12,所述千分表从u型槽的一边沿至另一边沿滑动,记录滑动过程中千分表读数的最大值和最小值作为预设数值范围,用于判断步骤s1至s4中所述千分表的当前读数和前一读数的差值的绝对值是否在所述预设数值范围内。

采用上述进一步方案的有益效果是在步骤s1至s5第一轴的移动过程中,在千分表脱离u型槽滑动或未按照设定方向滑动时,及时发现纠正错误。

进一步,所述一种机器人零点标定的方法,步骤s12之后还包括步骤s13,使所述千分表位于所述u型槽的边沿,调整所述千分表在所述第一轴上的竖直位置以使所述千分表的读数在所述预设数值范围内。

采用上述进一步方案的有益效果是确定千分表初始读数为零点标定程序所能够接受的数值从而能够执行后续操作。

本发明所要解决的第二方面技术问题是提供一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行:s1,控制第一轴以预设速度朝一个方向移动,获取安装于所述第一轴的千分表的读数;其中,所述第一轴为机器人的需要零点标定的任意一个轴;s2,当所述千分表的读数由大变小,再由小变大时,控制所述第一轴停止移动;其中,所述第一轴从开始移动至停止移动为一次行程;s3,控制所述第一轴反转并向相反方向移动;调整所述速度以使当前所述行程的所述速度小于前一所述行程的所述速度;计算所述千分表的当前读数和前一读数的差值;s4,当所述差值的绝对值小于或等于预设偏差阈值时,执行步骤s5;当所述差值的绝对值大于预设偏差阈值且所述千分表的当前读数大于前一读数时,控制所述第一轴停止移动并返回执行步骤s3;s5,控制所述第一轴停止移动并记录所述第一轴的驱动电机的编码器的当前值,将所述第一轴位于的当前位置记为所述第一轴的机械零位。

本发明的有益效果是:由于本发明的机器人零点标定的方法具有操作简便、快速找准机械零位的优点,因此通过存储该方法指令,由此可以使存储设备通过处理器加载并执行上述方法指令从而可以快速找准机械零位。

本发明所要解决的第三方面技术问题是提供一种控制设备,包括处理器,适于实现各指令;以及存储设备,适于存储多条指令,所述指令适于由处理器加载并执行:s1,控制第一轴以预设速度朝一个方向移动,获取安装于所述第一轴的千分表的读数;其中,所述第一轴为机器人的需要零点标定的任意一个轴;s2,当所述千分表的读数由大变小,再由小变大时,控制所述第一轴停止移动;其中,所述第一轴从开始移动至停止移动为一次行程;s3,控制所述第一轴反转并向相反方向移动;调整所述速度以使当前所述行程的所述速度小于前一所述行程的所述速度;计算所述千分表的当前读数和前一读数的差值;s4,当所述差值的绝对值小于或等于预设偏差阈值时,执行步骤s5;当所述差值的绝对值大于预设偏差阈值且所述千分表的当前读数大于前一读数时,控制所述第一轴停止移动并返回执行步骤s3;s5,控制所述第一轴停止移动并记录所述第一轴的驱动电机的编码器的当前值,将所述第一轴位于的当前位置记为所述第一轴的机械零位。

本发明的有益效果是:由于根据本发明的机器人零点标定的方法具有操作简便、快速找准机械零位的优点,因此控制设备中通过处理器加载并执行上述方法指令从而可以快速找准机械零位。

附图说明

图1为本发明方法步骤框图;

图2为本发明千分表位于固定槽的结构示意图;

图3为本发明千分表移动过程结构示意图。

附图中,各标号所代表的部件列表如下:

11、表盘,12、套筒,13、量杆,14、测头,2、固定槽,3、u型槽。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

在本发明的描述中,需要理解的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。在本发明的描述中,“多个”的含义是两个以上,除非另有明确具限定。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接连接,也可以通过中间媒介间接连接,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

这里首选需要说明的是,“向内”是朝向容置空间中央的方向,“向外”是远离容置空间中央的方向。

请参阅图1至图3,本发明提供一种机器人零点标定的方法。

s1,控制第一轴以预设速度朝一个方向移动,获取安装于第一轴的千分表的读数。其中,第一轴为机器人的需要零点标定的任意一个轴。

具体的,千分表是通过齿轮或杠杆将一般的直线位移(直线运动)转换成指针的旋转运动,然后在刻度盘上进行读数的长度测量仪器。工业机器人在出厂之前先设计好固定u型槽以及千分表固定槽的安装孔,加工好适合零点标定第一轴结构的u型槽。因需零点标定的第一轴以及与第一轴连接的各零件的结构各不相同,所以安装孔的位置、u型槽和千分表固定槽的外形结构和尺寸需根据具体的第一轴的结构进行设置。只要保证u型槽底部位置对应第一轴的机械零位。

如图2和图3所示,千分表安装于位于需标定第一轴的固定槽2上。千分表包括表盘11、套筒12、量杆13和测头14。套筒12的上端安装于表盘11的一端。套筒12的另一端套设量杆13,量杆13在套筒12内上下移动。量杆13的下端与测头14的上端连接。测头14的下端与测量件如u型槽3接触。由于千分表安装在需零点标定的第一轴上,故千分表的测头14随第一轴的移动在u型槽3上前行进而从u型槽3的边沿a位置前行至u型槽内c位置。千分表随第一轴每移动一步,记录下千分表的读数。

s2,当千分表的读数由大变小,再由小变大时,控制第一轴停止移动。其中,第一轴从开始移动至停止移动为一次行程。

具体的,如图3所示,u型槽3边沿为水平面,当千分表在a位置时读数不变。移动至b位置过程中,u型槽3内为向下凹陷的弧面,随着弧面向下深度的增加量杆13在套筒12内逐渐增加向下伸出量进而读数逐渐减小;至u型槽3最底部时读数最小;从u型槽3底部向c位置移动时,弧面向下的深度逐渐减小,量杆13在套筒12内逐渐减小向下的伸出量进而读数逐渐增大。如果所记录的千分表读数由大变小,再由小变大,则表示千分表已滑过机械零位,也就是说千分表的测头13已经经过u型槽的底部位置。上述千分表读数的变化过程可以通过将千分表当前的读数与前一步读数进行比对从而得出读数的大小进而判断是否存在上述变化过程。而当前的读数与前一步读数的具体比对过程存在于现有技术中,在此不再赘述。从而实现对机械零位的初步判定,也就是初步判定u型槽的底部位置。

在对第一轴进行零点标定的过程中可能要经过多次行程来确定机械零位。

s3,控制第一轴反转并向相反方向移动。调整速度以使当前行程的速度小于前一行程的速度。计算千分表的当前读数和前一读数的差值。

具体的,如图3所示,第一轴自动反转至反方向b的位置并开始移动。控制电机减小第一轴移动的速度也就是减小第一轴的移动步距,从而可以精确的对u型槽的底部进行判定。

s4,当差值的绝对值小于或等于预设偏差阈值时,执行步骤s5。当差值的绝对值大于预设偏差阈值且千分表的当前读数大于前一读数时,控制第一轴停止移动并返回执行步骤s3。

具体的,在判断差值的绝对值大于预设偏差值且千分表的当前读数小于时,控制第一轴继续当前行程并计算千分表的当前读数和前读数的差值。将差值的绝对值用于和预设偏差阈值比对。

如图3所示,当差值为正值时,表示千分表已滑过u型槽的底部,千分表读数的当前值大于前一值,千分表向u型槽左侧或右侧上升段移动。需要第一轴减小速度也就是减小步距向相反方向移动。当差值为负值说明千分表读数的当前值小于前一值,千分表向u型槽左侧或右侧下降段移动;当差值的绝对值小于预设偏差阈值说明千分表位于u型槽底部。差值的绝对值大于预设偏差阈值且当千分表的当前读数大于前一读数,说明千分表已滑过u型槽的底部并位于底部的边缘。

s5,控制第一轴停止移动并记录第一轴的驱动电机的编码器的当前值,将第一轴位于的当前位置记为第一轴的机械零位。

当差值小于预设偏差阈值时表示第一轴位于u型槽的底部,也就是说第一轴位于机械零位的位置,从而确定了第一轴的机械零位。第一轴的驱动电机的编码器对于第一轴每移动一步在编码器内都存在一个对应的值,在重新确定的第一轴的机械零位时,记录此时编码器的值即记录了第一轴的机械零位的位置数据。从而能够获取当前机器人的位置以及完成机器人从当前位置达到目的位置的动作。

一个千分表的读数与第一轴的一个位置对应;第一轴的一个位置与编码器的一个值对应。由于千分表安装于第一轴上,千分表的读数与第一轴每移动一步的位置一一对应。u型槽的最底部千分表的读数最小,当千分表的读数经比对确认为最小值时,第一轴位于机械零位。第一轴是由电机驱动的,电机内所设置的编码器的值与第一轴移动的每一个位置一一对应,从而当第一轴的机械零位确定后记录对应的编码器的值。

通过本发明的实施,能够简单方便完成机器人的标定过程,对机器人装配方式、装配角度、固定方式以及地面是否平整无任何要求。仅要求在机器人生产的时候保证u型槽在安装后其底部位置正好对应机械零位。

在一实施例中,第一轴移动时,千分表的测头在u型槽内滑动,u型槽的底部对应第一轴的机械零位。

通过本实施例的实施,u型槽的底部是相对的底部,如果希望提高精度,也就是说所确定的底部接近真正的u型槽的最低部,则第一轴前动速度要慢,第一轴每一步移动的步距要小,但相应的所需时间就长。预设偏差阈值的大小与u型槽底部的垂直落差及千分表的精度有关。

u型槽的底部具有区分度和平滑度。区分度也就是千分表在移动过程中,当前读数与下一步读数之间具有的差值。u型槽的底部具有区分度就是说u型槽的底部区域具有一定的弧度而不是水平面。区分度保证u型槽的底部具有最低点从而确定机械零点。优选的,u型槽底部接近v型槽底部。平滑度也就是u型槽的底部具有弧度而不是临近最低点的面为平面。平滑度保证千分表测头从u型槽的底部移开的时候不存在障碍。

在一实施例中,步骤s1之前还包括步骤s11,设置千分表的测杆自然伸展状态对应的数值为0,作为千分表的读数的初始值。

具体的,步骤s11为在安装千分表固定在固定槽之前,对千分表进行校正,从而保证千分表的读数正确。调零位时,先使测头14与基准面接触,压测头14使大指针旋转大于一圈,转动刻度盘使0线与大指针对齐,然后把量杆13上端提起1-2mm再放手使其落下,反复2-3次后检查指针是否仍与0线对齐,如不齐则重调。对于千分表初始值的调整在于消除千分表的初始误差,为后续的千分表合法数值检查做基础。

进一步,步骤s11之后还包括步骤s12,千分表从u型槽的一边沿至另一边沿滑动,记录滑动过程中千分表读数的最大值和最小值作为预设数值范围,用于判断步骤s1至s4中千分表的当前读数和前一读数的差值的绝对值是否在预设数值范围内。

具体的,步骤s12为对第一轴进行机械零位标定之前。如千分表在移动过程中离开u型槽,则千分表在离开u型槽之前的读数离开u型槽之后的读数之差必然不在最大值和最小值之差的范围内,从而作为判断是否离开u型槽的依据。一旦千分表因为错误动作离开u型槽,则一般情况下千分表会处于自然伸展状态或者大幅偏离已记录的千分表的最大值和最小值的差值范围。

进一步,步骤s12之后还包括步骤s13,使千分表位于u型槽的边沿,调整千分表在第一轴上的竖直位置以使千分表的读数在预设数值范围内。

具体的,步骤s13为在安装u型槽和千分表固定槽于需标定的第一轴的相应安装孔处后,将千分表插入千分表固定槽内。调整千分表的读数在步骤s12中最小值和最大值所形成的范围内,其中步骤s12中最小值和最大值所形成的范围作为预设数值范围。因千分表在u型槽内移动过程中,u型槽内为一向下凹陷的弧面,千分表的读数会减小随后又增大。所以千分表在u型槽内移动前需要对千分表的读数进行调整,进而满足后续读数的变化。对千分表读数的调整会根据机器人的结构和u型槽的外形结构、尺寸的不同而不同。

一种存储设备,其中存储有多条指令,指令适于由处理器加载并执行:

s1,控制第一轴以预设速度朝一个方向移动,获取安装于第一轴的千分表的读数;其中,第一轴为机器人的需要零点标定的任意一个轴。

s2,当千分表的读数由大变小,再由小变大时,控制第一轴停止移动;其中,第一轴从开始移动至停止移动为一次行程。

s3,控制第一轴反转并向相反方向移动;调整速度以使当前行程的速度小于前一行程的速度;计算千分表的当前读数和前一读数的差值;

s4,当差值的绝对值小于或等于预设偏差阈值时,执行步骤s5;当差值的绝对值大于预设偏差阈值且千分表的当前读数大于前一读数时,控制第一轴停止移动并返回执行步骤s3;

s5,控制第一轴停止移动并记录第一轴的驱动电机的编码器的当前值,将第一轴位于的当前位置记为第一轴的机械零位。

通过本发明的实施,由于本发明的机器人零点标定的方法具有操作简便、快速找准机械零位的优点,因此通过存储该方法指令,由此可以使存储设备通过处理器加载并执行上述方法指令从而可以快速找准机械零位。

一种控制设备,包括处理器,适于实现各指令;以及存储设备,适于存储多条指令,指令适于由处理器加载并执行:

s1,控制第一轴以预设速度朝一个方向移动,获取安装于第一轴的千分表的读数;其中,第一轴为机器人的需要零点标定的任意一个轴。

s2,当千分表的读数由大变小,再由小变大时,控制第一轴停止移动;其中,第一轴从开始移动至停止移动为一次行程。

s3,控制第一轴反转并向相反方向移动;调整速度以使当前行程的速度小于前一行程的速度;计算千分表的当前读数和前一读数的差值;

s4,当差值的绝对值小于或等于预设偏差阈值时,执行步骤s5;当差值的绝对值大于预设偏差阈值且千分表的当前读数大于前一读数时,控制第一轴停止移动并返回执行步骤s3;

s5,控制第一轴停止移动并记录第一轴的驱动电机的编码器的当前值,将第一轴位于的当前位置记为第一轴的机械零位。

通过本发明的实施由于根据本发明的机器人零点标定的方法具有操作简便、快速找准机械零位的优点,因此控制设备中通过处理器加载并执行上述方法指令从而可以快速找准机械零位。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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