CN117584170A - 机器人控制方法及机器人系统 - Google Patents

机器人控制方法及机器人系统 Download PDF

Info

Publication number
CN117584170A
CN117584170A CN202310998374.6A CN202310998374A CN117584170A CN 117584170 A CN117584170 A CN 117584170A CN 202310998374 A CN202310998374 A CN 202310998374A CN 117584170 A CN117584170 A CN 117584170A
Authority
CN
China
Prior art keywords
joint
angle
rotation angle
posture
reference position
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.)
Pending
Application number
CN202310998374.6A
Other languages
English (en)
Inventor
小林匠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN117584170A publication Critical patent/CN117584170A/zh
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Manipulator (AREA)

Abstract

本发明提供机器人控制方法及机器人系统。机器人控制方法具有:第一步骤,计算第一角度,第一角度为第一姿态下的第一关节相对于第一基准位置的旋转角度(θ1)与第二姿态下的第一关节相对于第一基准位置的旋转角度(θ2)之差;第二步骤,判断计算出的第一角度是否大于预定的值;第三步骤,在第二步骤中,在判断为第一角度大于所述预定的值的情况下,计算第二角度,第二角度为旋转角度(θ1)与在将第二关节从相对于第二基准位置的旋转角度θA改变为相对于第二基准位置的旋转角度(θB)时的、第二姿态下的第一关节相对于第一基准位置的旋转角度(θ3)之差;以及第四步骤,对第一角度的绝对值和第二角度的绝对值进行比较,设定绝对值小的一方的角度。

Description

机器人控制方法及机器人系统
技术领域
本发明涉及机器人控制方法及机器人系统。
背景技术
近年来,工厂中由于人工费的高涨、人材不足,而使用具有机械臂的机器人进行制造、加工、组装等作业,使得一直由人工进行的作业的自动化加速。
在这样的机器人中,通过指定设定在机械臂的控制点的起始点和终点的坐标来进行作业。另外,要求在起始点和终点之间平稳且顺畅地使机械臂的姿态变化。
例如,在专利文献1所记载的机器人中,通过使机械臂所具有的各关节的可动范围为180°以上,提高了机械臂的姿态的自由度,实现了姿态的平稳变化。在专利文献1所记载的机器人中,由于各关节的可动范围比较大,因此无论在向从各关节的旋转轴的轴向观察的顺时针和逆时针中的任一方向旋转的情况下,机械臂都能够采取相同的姿态。因而,为了进行平稳、迅速且高效的作业,需要考虑使各关节向哪个方向旋转姿态随时间的变化量会变少来进行动作。
专利文献1:日本特开2013-158876号公报
然而,在专利文献1中,关于上述方面没有进行充分的研究,存在有时不进行高效的动作等问题。
发明内容
本发明的应用例所涉及的机器人控制方法的特征在于,所述机器人控制方法是控制机器人的工作的控制方法,所述机器人具备机械臂,所述机械臂具有以第一基准位置为基准,并以第一轴为中心旋转的第一关节、和以第二基准位置为基准,并以与所述第一轴正交的第二轴为中心旋转的第二关节,在将所述机械臂从第一姿态改变为第二姿态时,所述机器人控制方法具有:第一步骤,计算第一角度,所述第一角度为所述第一姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ1与所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ2之差;第二步骤,判断计算出的所述第一角度是否大于预定的值;第三步骤,在所述第二步骤中,在判断为所述第一角度大于所述预定的值的情况下,计算第二角度,所述第二角度为所述旋转角度θ1与在将所述第二关节从相对于所述第二基准位置的旋转角度θA改变为相对于所述第二基准位置的旋转角度θB时的、所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ3之差,所述旋转角度θA为在所述第一步骤中求出所述旋转角度θ2时的所述第二关节的旋转角度,所述旋转角度θB为从所述第二基准位置向与从所述第二基准位置向所述旋转角度θA旋转的方向相反的方向旋转所述第二基准位置与所述旋转角度θA之差的绝对值的旋转角度;第四步骤,对所述第一角度的绝对值和所述第二角度的绝对值进行比较,设定绝对值小的一方的角度;以及第五步骤,使用在所述第四步骤中设定的角度驱动所述机械臂,改变为所述第二姿态。
本发明的应用例所涉及的机器人系统的特征在于,所述机器人系统具有:机械臂,具有以第一基准位置为基准,并以第一轴为中心旋转的第一关节、和以第二基准位置为基准,并以与所述第一轴正交的第二轴为中心旋转的第二关节;以及控制部,控制所述机械臂,在将所述机械臂从第一姿态改变为第二姿态时,所述控制部执行:第一步骤,计算第一角度,所述第一角度为所述第一姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ1与所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ2之差;第二步骤,判断计算出的所述第一角度是否大于预定的值;第三步骤,在所述第二步骤中,在判断为所述第一角度大于所述预定的值的情况下,计算第二角度,所述第二角度为所述旋转角度θ1与在将所述第二关节从相对于所述第二基准位置的旋转角度θA改变为相对于所述第二基准位置的旋转角度θB时的、所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ3之差,所述旋转角度θA为在所述第一步骤中求出所述旋转角度θ2时的所述第二关节的旋转角度,所述旋转角度θB为从所述第二基准位置向与从所述第二基准位置向所述旋转角度θA旋转的方向相反的方向旋转所述第二基准位置与所述旋转角度θA之差的绝对值的旋转角度;第四步骤,对所述第一角度的绝对值和所述第二角度的绝对值进行比较,设定绝对值小的一方的角度;以及第五步骤,使用在所述第四步骤中设定的角度驱动所述机械臂,改变为所述第二姿态。
附图说明
图1是表示执行本发明的机器人控制方法的机器人系统的整体构成的图。
图2是图1所示的机器人系统的框图。
图3是图1所示的机械臂的示意图。
图4是图1所示的机械臂的前端部的示意图。
图5是图1所示的机械臂的前端部的示意图。
图6是图1所示的机械臂的前端部的示意图。
图7是图1所示的机械臂的前端部的示意图。
图8是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。
图9是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。
图10是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。
图11是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。
图12是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。
图13是用于说明本发明的机器人控制方法的一例的流程图。
附图标记说明
1…机器人;3…控制装置;4…示教装置;5…机器人控制装置;10…机械臂;11…基座;12…第一臂;13…第二臂;14…第三臂;15…第四臂;16…第五臂;17…第六臂;20…末端执行器;31…控制部;32…存储部;33…通信部;41…控制部;42…存储部;43…通信部;100…机器人系统;171…关节;172…关节;173…关节;174…关节;175…关节;176…关节;A…动作范围外区域;D1…电机驱动器;D2…电机驱动器;D3…电机驱动器;D4…电机驱动器;D5…电机驱动器;D6…电机驱动器;E1…编码器;E2…编码器;E3…编码器;E4…编码器;E5…编码器;E6…编码器;M1…电机;M2…电机;M3…电机;M4…电机;M5…电机;M6…电机;O1…第一旋转轴;O2…第二旋转轴;O3…第三旋转轴;O4…第四旋转轴;O5…第五旋转轴;O6…第六旋转轴;Ox…轴;Oy…轴;Oz…轴;P01…第一基准位置;P02…第二基准位置;S101…步骤;S102…步骤;S103…步骤;S104…步骤;S105…步骤;S106…步骤;S107…步骤;TCP…控制点;α1…旋转角度;α2…旋转角度;α3…旋转角度;α4…旋转角度;γ1…第一角度;γ2…第二角度;θ1…旋转角度;θ2…旋转角度;θ3…旋转角度;Δθ1…角度;Δθ2…角度;Δα1…角度;P1至P6…位置。
具体实施方式
以下,基于附图所示的优选实施方式,对本发明的机器人控制方法及机器人系统进行详细说明。
<第一实施方式>
图1是表示执行本发明的机器人控制方法的机器人系统的整体构成的图。图2是图1所示的机器人系统的框图。图3是图1所示的机械臂的示意图。图4至图7是图1所示的机械臂的前端部的示意图。图8是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。图9是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。图10是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。图11是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。图12是用于说明图1所示的机械臂的关节的旋转量和旋转方向的图。图13是用于说明本发明的机器人控制方法的一例的流程图。
需要说明的是,以下,对于机械臂10,也将图1和图3中的基座11侧称为“基端”,将其相反侧即末端执行器20侧称为“前端”。
如图1所示,机器人系统100具备机器人1以及执行本发明的机器人控制方法的机器人控制装置5。机器人控制装置5具备控制机器人1的各部的工作的控制装置3以及进行示教的示教装置4。需要说明的是,机器人控制装置5执行的控制的各步骤可以是控制装置3和示教装置4中的任一方执行的构成,也可以是双方分担执行的构成。
首先,对机器人1进行说明。
图1所示的机器人1在本实施方式中是单臂的六轴垂直多关节机器人,具有基座11以及机械臂10。另外,能够在机械臂10的前端部安装末端执行器20。需要说明的是,末端执行器20可以是机器人1的构成要件,也可以是独立于机器人1的部件,即,也可以不是机器人1的构成要件。
需要说明的是,机器人1不限定于图示的构成,例如,也可以是双臂型的多关节机器人。
基座11是将机械臂10的基端支承为能够驱动的支承体,例如固定于工厂内的地板。机器人1的基座11经由中继电缆与控制装置3电连接。需要说明的是,机器人1与控制装置3的连接不限定于图1所示的构成那样基于有线的连接,例如,也可以是基于无线的连接。另外,也可以经由因特网等网络进行连接。
在本实施方式中,机械臂10具有第一臂12、第二臂13、第三臂14、第四臂15、第五臂16、以及第六臂17,这些臂从基座11侧按该顺序连结。需要说明的是,机械臂10所具有的臂的数量不限定于六个,例如,也可以是一个、两个、三个、四个、五个或七个以上。另外,各臂的全长等的大小分别没有特别限定,能够适当设定。
基座11和第一臂12经由关节171连结。并且,第一臂12能够相对于基座11以沿着铅垂方向延伸的第一旋转轴O1为旋转中心绕该第一旋转轴O1旋转。这样,第一旋转轴O1与固定基座11的地板的地板面的法线一致,机械臂10的整体能够绕第一旋转轴O1的轴向正方向、反方向的任一方向旋转。
第一臂12和第二臂13经由关节172连结。并且,第二臂13能够相对于第一臂12以沿着水平方向延伸的第二旋转轴O2为旋转中心旋转。
第二臂13和第三臂14经由关节173连结。并且,第三臂14能够相对于第二臂13以沿着水平方向延伸的第三旋转轴O3为旋转中心旋转。第三旋转轴O3与第二旋转轴O2平行。
第三臂14和第四臂15经由关节174连结。并且,第四臂15能够相对于第三臂14以与第三臂14的中心轴方向平行的第四旋转轴O4为旋转中心旋转。第四旋转轴O4与第三旋转轴O3正交。
第四臂15和第五臂16经由关节175连结。并且,第五臂16能够相对于第四臂15以第五旋转轴O5为旋转中心旋转。第五旋转轴O5与第四旋转轴O4正交。
第五臂16和第六臂17经由关节176连结。并且,第六臂17能够相对于第五臂16以第六旋转轴O6为旋转中心旋转。第六旋转轴O6与第五旋转轴O5正交。
另外,第六臂17成为在机械臂10中位于最前端侧的机器人前端部。该第六臂17能够通过机械臂10的驱动与末端执行器20一起位移。
不管机械臂10的姿态如何,第四旋转轴O4和第六旋转轴O6均位于同一平面内。即使各臂绕第一旋转轴O1、第二旋转轴O2、第三旋转轴O3以及第五旋转轴O5的轴旋转,第四旋转轴O4和第六旋转轴O6也位于同一平面内。例如,在图3所示的状态下,第四旋转轴O4和第六旋转轴O6所处的平面是与图3的纸面平行的平面。
图1所示的末端执行器20为具有能够把持工件或工具的把持部的构成。在将末端执行器20安装于第六臂17的状态下,末端执行器20的前端部成为控制点TCP。
机器人1具备作为驱动部的电机M1、电机M2、电机M3、电机M4、电机M5和电机M6、以及编码器E1、编码器E2、编码器E3、编码器E4、编码器E5和编码器E6。电机M1内置于关节171,使第一臂12相对于基座11绕第一旋转轴O1旋转。电机M2内置于关节172,使第一臂12和第二臂13绕第二旋转轴O2相对旋转。电机M3内置于关节173,使第二臂13和第三臂14绕第三旋转轴O3相对旋转。电机M4内置于关节174,使第三臂14和第四臂15绕第四旋转轴O4相对旋转。电机M5内置于关节175,使第四臂15和第五臂16绕第五旋转轴O5相对旋转。电机M6内置于关节176,使第五臂16和第六臂17绕第六旋转轴O6相对旋转。
另外,编码器E1内置于关节171,检测电机M1的位置。编码器E2内置于关节172,检测电机M2的位置。编码器E3内置于关节173,检测电机M3的位置。编码器E4内置于关节174,检测电机M4的位置。编码器E5内置于第五臂16,检测电机M5的位置。编码器E6内置于第六臂17,检测电机M6的位置。需要说明的是,这里所说的“检测位置”是指检测电机的旋转角即包括正反的旋转量和角速度,将该检测到的信息称为“位置信息”。
如图2所示,电机驱动器D1至电机驱动器D6分别与对应的电机M1至电机M6连接,控制这些各电机的驱动。电机驱动器D1至电机驱动器D6分别内置于关节171、关节172、关节173、关节174、第五臂16、以及第六臂17。
编码器E1至编码器E6、电机M1至电机M6、以及电机驱动器D1至电机驱动器D6分别与控制装置3电连接。由编码器E1至编码器E6检测到的电机M1至电机M6的位置信息、即旋转量作为电信号发送到控制装置3。并且,控制装置3基于该位置信息,向图2所示的电机驱动器D1至电机驱动器D6输出控制信号,驱动电机M1至电机M6。即,控制机械臂10是指控制电机M1至电机M6的驱动,从而控制属于机械臂10的第一臂12至第六臂17的工作。
在机械臂10的前端部、即第六臂17的前端,能够拆装地安装末端执行器20。在本实施方式中,末端执行器20由手部构成,该手部具有能够相互接近分离的一对爪部,并且通过各爪部把持、松开工件或工具。安装于该末端执行器20的力检测器能够检测由两爪部把持工件时的把持力的反作用力的大小、朝向。
需要说明的是,作为末端执行器20,不限定于图示的构成,例如也可以是具有吸附部,并通过该吸附部的吸附把持工件或工具的构成。另外,作为末端执行器20,例如也可以是研磨机、磨削机、切削机、喷枪、激光照射器、螺丝刀、扳手等工具。
接着,对控制装置3和示教装置4进行说明。
如图1所示,在本实施方式中,控制装置3设置于远离机器人1的位置。但是,不限定于该构成,控制装置3也可以内置于基座11。另外,控制装置3具有控制机器人1的驱动的功能,与前述的机器人1的各部电连接。控制装置3具有控制部31、存储部32以及通信部33。这些各部例如经由总线以能够相互通信的方式连接。
控制部31例如由CPU(Central Processing Unit:中央处理器)构成,读出并执行存储于存储部32的动作程序等各种程序。由控制部31生成的信号经由通信部33发送到机器人1的各部,来自机器人1的各部的信号经由通信部33由控制部31接收。由此,机械臂10能够以预定的条件执行预定的作业。需要说明的是,控制部31是执行后述的第五步骤的部分。
存储部32保存由控制部31执行的各种程序等。作为存储部32,例如可列举具有RAM(Random Access Memory:随机存取存储器)等易失性存储器、ROM(Read Only Memory:只读存储器)等非易失性存储器以及装拆式的外部存储装置等的构成。
通信部33例如使用有线LAN(Local Area Network:局域网)、无线LAN等外部接口在与控制装置3之间进行信号的收发。在该情况下,可以经由未图示的服务器进行通信,另外,也可以经由因特网等网络进行通信。
如图1、图2和图3所示,示教装置4是进行示教、即创建机器人1执行的动作程序的装置。具体而言,示教装置4基于用户指定的位置信息创建动作程序,并发送到控制装置3。用户例如输入作业开始位置和作业结束位置在预定坐标系中的坐标作为位置信息。需要说明的是,这里所说的坐标是指控制点TCP所处的坐标。示教装置4基于上述位置信息,计算作业开始位置、作业结束位置、以及在它们之间的机械臂10随时间变化的姿态,并创建动作程序。
示教装置4具有控制部41、存储部42以及通信部43。
控制部41例如由CPU(Central Processing Unit:中央处理器)构成,读出并执行存储于存储部42的动作程序、动作程序生成程序等各种程序。由控制部41生成的信号经由通信部43发送到机器人1的各部,来自机器人1的各部的信号经由通信部33由控制部31接收。由此,机械臂10能够以预定的条件执行预定的作业。控制部41是执行后述的第一步骤至第四步骤的部分。需要说明的是,控制部31也可以执行后述的第一步骤至第四步骤中的至少一个。
作为存储部42,例如可列举具有RAM(Random Access Memory:随机存取存储器)等易失性存储器、ROM(Read Only Memory:只读存储器)等非易失性存储器以及装拆式的外部存储装置等的构成。
存储部42中存储后述的第一基准位置P01、第三基准位置P03、位置P1、P2、P3、P4、P5和P6的位置信息、各关节171至176的可动范围、旋转角度θ1、θ2、θ3、旋转角度α1、α2、α3、α4、第一角度γ1、第二角度γ2、以及基于这些经过第一步骤至第四步骤而创建的动作程序等。需要说明的是,存储在存储部42中的信息的一部分或全部也可以存储在存储部32中。
通信部43例如使用有线LAN(Local Area Network:局域网)、无线LAN等外部接口在与控制装置3之间进行信号的收发。在该情况下,可以经由未图示的服务器进行通信,另外,也可以经由因特网等网络进行通信。通信部43将存储在存储部42中的与动作程序有关的信息等发送到控制装置3。另外,通信部43也能够接收存储在存储部32中的信息,并将该信息存储在存储部42中。
以上,对机器人系统100的构成进行了说明。这样的机器人系统100所具备的机械臂10的各关节171至176的可动范围、即能够旋转的角度范围被设定得比较大。
关节171的可动范围没有特别限定,例如为400°以上且500°以下。即,第一臂12能够相对于基座11绕第一旋转轴O1旋转上述角度。
关节172的可动范围没有特别限定,例如为100°以上且200°以下。即,第二臂13能够相对于第一臂12绕第二旋转轴O2旋转上述角度。
关节173的可动范围没有特别限定,例如为200°以上且300°以下。即,第三臂14能够相对于第二臂13绕第三旋转轴O3旋转上述角度。
关节174的可动范围没有特别限定,例如为350°以上且450°以下。即,第四臂15能够相对于第三臂14绕第四旋转轴O4旋转上述角度。
关节175的可动范围没有特别限定,例如为200°以上且300°以下。即,第五臂16能够相对于第四臂15绕第五旋转轴O5旋转上述角度。
关节176的可动范围没有特别限定,例如为650°以上且750°以下。即,第六臂17能够相对于第五臂16绕第六旋转轴O6旋转上述角度。
这样,当各关节171至176的可动范围较大时,即使各关节171至176向不同的方向旋转,也能够采取相同的姿态。例如,图4所示的姿态和图7所示的姿态是相同的姿态。在图4和图7中,图示了设定于机械臂10的前端的前端坐标系中的三轴即Ox、Oy和Oz。在图4和图7中,这三轴都朝向相同的方向,但在关节175上标记的字符“E”成为左右反转的状态。即,图4所示的姿态和图7所示的姿态是相同的姿态是指,设定于机械臂10的前端的前端坐标系的姿态相同。在图4和图7中,在达到相同的姿态之前,预定的关节的旋转方向和旋转量不同,其结果,关节175的朝向反转。
机械臂10例如从图4所示的姿态经过图5所示的姿态和图6所示的姿态成为图7所示的姿态。使关节174从图4所示的姿态旋转180°而成为图5所示的姿态。接着,使关节175从图5所示的姿态反转而成为图6所示的姿态。接着,使关节176从图6所示的姿态旋转-180°而成为图7所示的姿态。需要说明的是,“使关节175反转”是指,使关节175从第二基准位置P02向与从第二基准位置P02向旋转角度θA旋转的方向相反的方向旋转第二基准位置P02与旋转角度θA之差的绝对值。即,“使关节175反转”是指,使臂16经由第二基准位置P02移动到对称的位置。需要说明的是,在图示的构成中,第二基准位置P02是指位于臂15的延长线上的位置。
在使机械臂10变化为预定的姿态时,虽然存在多种各关节的旋转方向和旋转量的组合,但通过从其中选择最佳的组合,能够进一步减轻对机械臂10的各部的负荷,创建并执行进行高效的动作的动作程序。这能够通过以下说明的本实施方式的机器人控制方法来实现。
控制部41生成动作程序,该动作程序在用户指定控制点TCP从作业开始位置向作业结束位置移动的情况下,驱动机械臂10以使控制点TCP从位于作业开始位置的第一姿态改变为控制点TCP位于作业结束位置的第二姿态。即,基于作业开始位置和作业结束位置的信息,设定第一姿态、第二姿态以及其间的各关节171至176的随时间变化的旋转量和旋转速度。以下,在各关节171至176中,以关节174作为第一关节、关节175作为第二关节为例进行说明。
如前所述,由于关节174的旋转轴即第四旋转轴O4和关节176的旋转轴即第六旋转轴O6位于同一平面内,因此使控制点TCP绕图4和图7所示的轴Ox旋转的旋转量为关节174和关节176的旋转量的总和。另外,与使控制点TCP绕轴Ox顺时针旋转190°相比,使控制点TCP绕轴Ox逆时针旋转170°的总的旋转量更少。即,当选择后者以将控制点TCP设定在相同的旋转位置(旋转角度)时,与选择前者相比,能够减少总的旋转量。需要说明的是,此时,进行使臂16经由第二基准位置P02移动到对称的位置的动作,但该移动为180°以下,是比较少的移动量。
在这样的选择中,使控制点TCP绕轴Ox旋转的旋转量能够设为180°以下。通过将该旋转量分担给具有处于同一平面内的旋转轴的两个关节174和关节176,能够使关节174和关节176中的任一个的旋转量为90°以下。
图8至图12分别是表示关节的旋转量的图,以各图的圆的12点位置作为基准位置,示出旋转量、旋转方向。基准位置例如是待机姿态下的旋转位置,将关节174的基准位置称为第一基准位置P01,将关节176的基准位置称为第三基准位置P03。
需要说明的是,在图8至图12中,旋转方向为顺时针的旋转角度为“+”,旋转方向为逆时针的旋转角度为“-”。例如,顺时针旋转80°是指旋转+80°,逆时针旋转80°是指旋转-80°。
以下,列举一例进行说明。
(情况1)
如图8所示,第一姿态下的关节174的旋转位置(以下,也称为“旋转角度”)为从第一基准位置P01顺时针旋转θ1(°)后的位置P1。另外,第二姿态下的关节174的旋转位置为从第一基准位置P01顺时针旋转θ2(°)后的位置P2。即,在姿态从第一姿态改变为第二姿态时,关节174从位置P1朝向位置P2顺时针旋转角度Δθ1(°)。在图示的构成中,θ1=+150°,θ2=+250°,Δθ1为Δθ1=θ2-θ1=+100°。
需要说明的是,与图示不同,在θ1=+150°、θ2=+100°的情况下,Δθ1=θ2-θ1=-50°。即,在姿态从第一姿态改变为第二姿态时,关节174逆时针旋转50°。
另外,如图9所示,第一姿态下的关节176的旋转位置为从第三基准位置P03顺时针旋转α1(°)后的位置P3。另外,第二姿态下的关节176的旋转位置为从第三基准位置P03顺时针旋转α2(°)后的位置P4。即,在姿态从第一姿态改变为第二姿态时,关节176从位置P3朝向位置P4顺时针旋转Δα1(°)。在图示的构成中,α1=+45°,α2=+125°,Δα1为Δα1=α2-α1=+80°。
即,在情况1中,在从第一姿态改变为第二姿态时,使关节174旋转+100°,使关节176旋转+80°。
控制部41将这些信息设定为J4标志信息、J6标志信息,并存储在存储部42中。在进行该设定时,控制部41也设定J1标志信息、手标志信息、肘标志信息、手腕标志信息等,并存储在存储部42中。J1标志信息是表示关节171的旋转量和旋转方向的信息。手标志信息是表示机械臂10的姿态是右手系的姿态还是左手系的姿态的信息。肘标志信息是表示机械臂10的姿态是上肘姿态还是下肘姿态的信息。手腕标志信息是表示机械臂10的姿态是手腕非反转姿态还是手腕反转姿态的标志(参照日本特开2016-83706号公报)。
手腕标志信息是表示从关节175的第二基准位P02、即从笔直地伸展关节175的状态向哪一侧弯曲的标志,有Flip(F)和NonFlip(NP)。例如,图5所示那样的状态为Flip(F),图6所示那样的状态为NonFlip(NP)。需要说明的是,作为确定手腕标志信息的要素,除了关节175的旋转位置之外,还可列举关节174的旋转位置。例如,通过使关节174旋转180°,也能够切换图5所示的姿态和图6所示的姿态。这样,手腕标志信息是加入了关节174和关节175的旋转位置的信息。
如上所述,通过使关节174顺时针旋转Δθ1(=+100°),并且使关节176顺时针旋转Δα1(=+80°),能够将机械臂10从第一姿态改变为第二姿态。
在此,如与上述情况1不同的下述情况2那样,也能够改变关节174、关节175和关节176的旋转方向和旋转量的组合的选择,使得关节174的旋转量为+90°以下,关节176的旋转量为+90°以上,从而实现与上述相同的从第一姿态到第二姿态的姿态改变。对关节174和关节176进行比较可知,由于关节174位于基端侧,且施加更大的载荷,因此使其旋转所需的能量、旋转时的负荷较大。因而,与情况1相比,可以说将关节174的旋转量的绝对值设为90°以下,将关节176的旋转量的绝对值设为90°以上的下述情况2是更合适的动作程序。因此,在关节174的旋转量超过了90°的情况下,创建以下说明的情况2那样的动作程序。
(情况2)
如图11所示,第一姿态下的关节176的旋转位置为从第三基准位置P03顺时针旋转α1(°)后的位置P3。另外,第二姿态下的关节176的旋转位置为从第三基准位置P03逆时针旋转α3(°)后的位置P5。在此,位置P5为从情况1中的第二姿态下的关节176的旋转位置即位置P4旋转180°后的旋转位置。即,在从第一姿态改变为第二姿态时,关节176从位置P3朝向位置P5逆时针旋转Δα4(°)。在图示的构成中,α1=+45°,α3=-50°,Δα4为Δα4=α3-α1=-95°。
另外,第一姿态下的关节174的旋转位置为从第一基准位置P01顺时针旋转θ1(°)后的位置P1。另外,第二姿态下的关节174的旋转位置为从第一基准位置P01顺时针旋转θ3(°)后的位置P6。在此,P6为从情况1中的第二姿态下的关节174的旋转位置即位置P2旋转180°后的旋转位置。即,在姿态从第一姿态改变为第二姿态时,关节174从位置P1朝向位置P6逆时针旋转Δθ2(°)。在图示的构成中,θ1=+150°,θ3=+70°,Δθ2为Δθ2=θ3-θ1=-80°。
这样,在情况2中,在从第一姿态改变为第二姿态时,使关节174从位置P1朝向位置P6逆时针旋转80°,即顺时针旋转一80°,并且使关节176从位置P3朝向位置P5逆时针旋转95°。
另外,在情况2中,通过使关节175的旋转角度反转,实现与情况1相同的姿态。即,在情况2中,从第二基准位置P02向与从第二基准位置P02向旋转角度θA旋转的方向相反的方向旋转第二基准位置P02与旋转角度θA之差的绝对值(参照图5和图6)。例如,图5所示的旋转位置为-45°,图6所示的旋转位置为+45°。通过关节175的这样的调整,能够抵消将第二姿态下的关节176的旋转位置设为从情况1中的第二姿态下的关节176的旋转位置即位置P4旋转180°后的位置P5的情况,能够使情况1和情况2的第二姿态为相同的姿态。
对情况1和情况2进行比较可知,情况2的关节174的旋转量的绝对值少,可以说是更合适的动作程序。因此,采用情况2。这样,如果基于输入的作业开始位置和作业结束位置的位置信息创建的程序如情况1那样关节174的旋转量的绝对值超过90°,则控制部41进行上述的调整,创建情况2那样的关节174的旋转量的绝对值为90°以下的动作程序。
需要说明的是,以下,将情况1中的关节174的旋转角度称为第一角度γ1,将情况2中的关节174的旋转角度称为第二角度γ2。即,第一角度γ1为γ1=Δθ1=θ2-θ1=100°,第二角度γ2为γ2=Δθ2=θ3-θ1=-80°。
在此,如图12中阴影线所示那样,对在关节174中存在动作范围外区域A的情况进行说明。该动作范围外区域A是关节174不能旋转的区域,在图示的构成中,存在于3点位置到4点位置。当在该位置存在动作范围外区域A时,例如在情况2中计算出的关节174的旋转路径与动作范围外区域A的全部或一部分重叠。因而,即使打算创建如上述那样的关节174从位置P1逆时针旋转80°到位置P6的动作程序(参照图10),也有可能创建从位置P1顺时针旋转280°到位置P6的动作程序(参照图12)。即,动作程序设定为第二角度γ2=280°。当采用这样的情况2时,关节174的旋转量变大,不再是合适的动作程序。
考虑到以上,在本发明中,对第一角度γ1(°)的绝对值|γ1|和第二角度γ2(°)的绝对值|γ2|进行比较,设定两个绝对值中较小的一方的角度。例如,在|γ1|=100°、|γ2|=80°的情况下采用情况2,在|γ1|=100°、|γ2|=280°的情况下采用情况1。即,即使在情况1中关节174的旋转角度超过90°的情况下,如果进行了上述调整的情况2为非本意的动作程序,则采用情况1。通过经过这样的步骤,能够防止关节174的旋转量变得过大,并且能够创建合适的动作程序。
特别是,与在使机械臂10动作之前预先周密地创建动作程序的情况相比,在实时地使机械臂10动作,并且一边输入作为下一移动目的地的目的位置的位置信息一边驱动机械臂10的情况下,由于要求高效的处理,因此本发明是有效的。
需要说明的是,关于在第一角度γ1的绝对值|γ1|=第二角度γ2的绝对值|γ2|的情况下采用哪一方,可以是采用用户预先设定的一方的构成,也可以是采用关节174、176的旋转量较小的一方的构成。
需要说明的是,动作范围外区域A包括结构上不能旋转的区域、禁止用户旋转的区域等。
接着,使用图13所示的流程图,对本发明的机器人控制方法的一例进行说明。
首先,在步骤S101中,基于用户输入的作业开始位置和作业结束位置的位置信息计算第一角度γ1。该步骤S101是第一步骤。在情况1中,第一角度γ1为100°。
接着,在步骤S102中,判断第一角度γ1的绝对值|γ1|是否超过预定的值,在本实施方式中为90°。即,判断是否为|γ1|>90°。该步骤S102是第二步骤。在如情况1那样判断为|γ1|>90°的情况下,转移到步骤S103。在判断为不是|γ1|>90°的情况下,将该γ1设定为确定值,并转移到步骤S107。在步骤S107中,基于设定的条件驱动机械臂10。需要说明的是,在步骤S107中,也确定关节174、176以外的动作条件,并基于此驱动机械臂10。
在步骤S103中,切换手腕标志,即,使关节175的旋转角度反转来进行调整,并计算第二角度γ2。具体而言,从第二基准位置P02向与从第二基准位置P02向旋转角度θA旋转的方向相反的方向旋转第二基准位置P02与旋转角度θA之差的绝对值(参照图5和图6),并计算第二角度γ2。例如,在上述情况2中,在关节174的旋转路径与动作范围外区域A不重叠的情况下,第二角度γ2=-80°,在关节174的旋转路径与动作范围外区域A重叠的情况下,第二角度γ2=280°。该步骤S103是第三步骤。
接着,在步骤S104中,对第一角度γ1的绝对值和第二角度γ2的绝对值进行比较,求出其大小关系。即,判断是否为|γ1|<|γ2|。在步骤S104中,判断为|γ1|<|γ2|的情况下,转移到步骤S105,并采用第一角度γ1。在步骤S104中,在判断为不是|γ1|<|γ2|的情况下,转移到步骤S106,并采用第二角度γ2。即,在γ1和γ2中,将其绝对值较小的一方的角度设定为关节174的旋转角度,并创建动作程序。这样的步骤S104至步骤S106是第四步骤。
接着,在步骤S107中,以在上述中设定的关节174和关节176的旋转角度驱动机械臂10。需要说明的是,在步骤S107中,根据设定的关节174和关节176的旋转角度和旋转角度,也设定其他关节的动作条件,并基于此驱动机械臂10。
如以上说明的那样,是控制机器人1的工作的控制方法,机器人1具备机械臂10,机械臂10具有以第一基准位置P01为基准,并以作为第一轴的一例的旋转轴O4为中心旋转的作为第一关节的一例的关节174、和以第二基准位置P02为基准,并以与旋转轴O4正交的旋转轴O5为中心旋转的作为第二关节的一例的关节175。另外,在将机械臂10从第一姿态改变为第二姿态时,机器人控制方法具有:第一步骤,计算第一角度γ1,第一角度γ1为第一姿态下的关节174相对于第一基准位置P01的旋转角度θ1与第二姿态下的关节174相对于第一基准位置P01的旋转角度θ2之差;第二步骤,判断计算出的第一角度γ1是否大于预定的值;第三步骤,在第二步骤中,在判断为第一角度γ1大于预定的值的情况下,计算第二角度γ2,第二角度γ2为旋转角度θ1与在将关节175从相对于第二基准位置P02的旋转角度θA改变为相对于第二基准位置P02的旋转角度θB时的、第二姿态下的关节174相对于第一基准位置P01的旋转角度θ3之差,旋转角度θA为在第一步骤中求出旋转角度θ2时的关节175的旋转角度,旋转角度θB为从第二基准位置P02向与从第二基准位置P02向旋转角度θA旋转的方向相反的方向旋转第二基准位置P02与旋转角度θA之差的绝对值的旋转角度;第四步骤,对第一角度γ1的绝对值和第二角度γ2的绝对值进行比较,设定绝对值较小的一方的角度;以及第五步骤,使用在第四步骤中设定的角度驱动机械臂10,改变为第二姿态。
另外,机器人系统100具有:机械臂10,具有以第一基准位置P01为基准,并以作为第一轴的一例的旋转轴O4为中心旋转的作为第一关节的一例的关节174、和以第二基准位置P02为基准,并以与旋转轴O4正交的旋转轴O5为中心旋转的作为第二关节的一例的关节175;以及作为控制部的一例的机器人控制装置5,控制机械臂。另外,在将机械臂10从第一姿态改变为第二姿态时,机器人控制装置5执行:第一步骤,计算第一角度γ1,第一角度γ1为第一姿态下的关节174相对于第一基准位置P01的旋转角度θ1与第二姿态下的关节174相对于第一基准位置P01的旋转角度θ2之差;第二步骤,判断计算出的第一角度γ1是否大于预定的值;第三步骤,在第二步骤中,在判断为第一角度γ1大于预定的值的情况下,计算第二角度γ2,第二角度γ2为旋转角度θ1与在将关节175从相对于第二基准位置P02的旋转角度θA改变为相对于第二基准位置P02的旋转角度θB时的、第二姿态下的关节174相对于第一基准位置P01的旋转角度θ3之差,旋转角度θA为在第一步骤中求出旋转角度θ2时的关节175的旋转角度,旋转角度θB为从第二基准位置P02向与从第二基准位置P02向旋转角度θA旋转的方向相反的方向旋转第二基准位置P02与旋转角度θA之差的绝对值的旋转角度;第四步骤,对第一角度γ1的绝对值和第二角度γ2的绝对值进行比较,设定绝对值较小的一方的角度;以及第五步骤,使用在第四步骤中设定的角度驱动机械臂10,改变为第二姿态。
通过经过第一步骤至第四步骤,能够创建更合适的动作程序,并且,通过执行该动作程序,机器人能够进行更高效的动作。特别是,能够防止关节174的旋转量变得过大,有助于减轻对机械臂10的负荷、降低驱动能量。
需要说明的是,在本实施方式中,对执行经过第一步骤至第四步骤创建的动作程序,并驱动机械臂10而从第一姿态成为第二姿态的情况进行了说明。在该情况下,假设动作程序的创建和基于该动作程序的执行的机械臂10的驱动是实时地即时间上连续地进行的。在该情况下,例如,具有在第一姿态或第二姿态的位置信息发生了改变的情况下,能够追随所述改变而瞬间进行与其对应的动作程序的创建或修正,并即时修正机械臂10的动作的优点。
与此相对,基于第一步骤至第四步骤预先创建一个或两个以上的动作程序,在使机械臂10动作时,设定或选择适当的动作程序,并执行该动作程序也包含在本发明中。
另外,在本实施方式中,将第一关节作为关节174、将第二关节作为关节175进行了说明,但在本发明中不限定于此,也能够应用于其他关节。例如,也可以将第一关节作为关节176,将第二关节作为关节175。在该情况下,由于能够使关节176的旋转量比关节174小,因此在比第六臂17靠前端处设置相机等进行布线时,能够进一步降低布线的扭曲。
需要说明的是,在第二步骤中,对作为与第一角度γ1进行比较的预定的值为90°的情况进行了说明,但在本发明中不限定于此,例如也可以为180°。
另外,机械臂10具有六个关节即关节171至176,第一关节是从基端侧起第四个关节即关节174,第二关节是从基端侧起第六个关节即关节176。根据这样的构成,将第一关节和第二关节应用于位于机械臂10的较前端侧、即更接近末端执行器20的两个关节。因此,能够使与基端部相比要求高精度的动作的前端部合适地动作。其结果,能够进行更合适的作业。
需要说明的是,机械臂10的关节的数量不限定于六个,也可以是两个至五个、七个以上。在该情况下,对于第一关节和第二关节,也优选将第一关节和第二关节应用于位于机械臂10的较前端侧、即更接近末端执行器20的两个关节。由此,能够进行更合适的作业。
以上,虽然针对图示的实施方式对本发明的机器人控制方法及机器人系统进行了说明,但本发明不限定于此。另外,在机器人控制方法中,也可以在第一至第五步骤中的各步骤的前后附加任意的步骤。另外,机器人系统的各部能够替换为可发挥同样功能的任意的结构物,或者也可以附加任意的结构物。

Claims (3)

1.一种机器人控制方法,其特征在于,所述机器人控制方法是控制机器人的工作的控制方法,所述机器人具备机械臂,所述机械臂具有以第一基准位置为基准,并以第一轴为中心旋转的第一关节、和以第二基准位置为基准,并以与所述第一轴正交的第二轴为中心旋转的第二关节,
在将所述机械臂从第一姿态改变为第二姿态时,所述机器人控制方法具有:
第一步骤,计算第一角度,所述第一角度为所述第一姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ1与所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ2之差;
第二步骤,判断计算出的所述第一角度是否大于预定的值;
第三步骤,在所述第二步骤中,在判断为所述第一角度大于所述预定的值的情况下,计算第二角度,所述第二角度为所述旋转角度θ1与在将所述第二关节从相对于所述第二基准位置的旋转角度θA改变为相对于所述第二基准位置的旋转角度θB时的所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ3之差,所述旋转角度θA为在所述第一步骤中求出所述旋转角度θ2时的所述第二关节的旋转角度,所述旋转角度θB为从所述第二基准位置向与从所述第二基准位置向所述旋转角度θA旋转的方向相反的方向旋转所述第二基准位置与所述旋转角度θA之差的绝对值的旋转角度;
第四步骤,对所述第一角度的绝对值和所述第二角度的绝对值进行比较,设定绝对值小的一方的角度;以及
第五步骤,使用在所述第四步骤中设定的角度驱动所述机械臂,改变为所述第二姿态。
2.根据权利要求1所述的机器人控制方法,其特征在于,
所述机械臂具有六个关节,
所述第一关节是从基端侧起第四个关节,所述第二关节是从基端侧起第五个关节。
3.一种机器人系统,其特征在于,所述机器人系统具有:机械臂,具有以第一基准位置为基准,并以第一轴为中心旋转的第一关节、和以第二基准位置为基准,并以与所述第一轴正交的第二轴为中心旋转的第二关节;以及控制部,控制所述机械臂,
在将所述机械臂从第一姿态改变为第二姿态时,所述控制部执行:
第一步骤,计算第一角度,所述第一角度为所述第一姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ1与所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ2之差;
第二步骤,判断计算出的所述第一角度是否大于预定的值;
第三步骤,在所述第二步骤中,在判断为所述第一角度大于所述预定的值的情况下,计算第二角度,所述第二角度为所述旋转角度θ1与在将所述第二关节从相对于所述第二基准位置的旋转角度θA改变为相对于所述第二基准位置的旋转角度θB时的所述第二姿态下的所述第一关节相对于所述第一基准位置的旋转角度θ3之差,所述旋转角度θA为在所述第一步骤中求出所述旋转角度θ2时的所述第二关节的旋转角度,所述旋转角度θB为从所述第二基准位置向与从所述第二基准位置向所述旋转角度θA旋转的方向相反的方向旋转所述第二基准位置与所述旋转角度θA之差的绝对值的旋转角度;
第四步骤,对所述第一角度的绝对值和所述第二角度的绝对值进行比较,设定绝对值小的一方的角度;以及
第五步骤,使用在所述第四步骤中设定的角度驱动所述机械臂,改变为所述第二姿态。
CN202310998374.6A 2022-08-09 2023-08-08 机器人控制方法及机器人系统 Pending CN117584170A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-126863 2022-08-09
JP2022126863A JP2024024201A (ja) 2022-08-09 2022-08-09 ロボット制御方法およびロボットシステム

Publications (1)

Publication Number Publication Date
CN117584170A true CN117584170A (zh) 2024-02-23

Family

ID=89912149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310998374.6A Pending CN117584170A (zh) 2022-08-09 2023-08-08 机器人控制方法及机器人系统

Country Status (2)

Country Link
JP (1) JP2024024201A (zh)
CN (1) CN117584170A (zh)

Also Published As

Publication number Publication date
JP2024024201A (ja) 2024-02-22

Similar Documents

Publication Publication Date Title
KR101498836B1 (ko) 7축 다관절 로봇의 제어 장치 및 교시 방법
US7765031B2 (en) Robot and multi-robot interference avoidance method
JP6167770B2 (ja) 多軸型ロボットの軌道生成方法及び多軸型ロボットの制御装置
JP5144035B2 (ja) 産業用ロボットのツールの位置・姿勢制御方法及び制御システム
JP5346217B2 (ja) 多軸ロボット及びその速度制御装置
JP5481932B2 (ja) ロボット制御装置およびその制御方法
CN106493711B (zh) 控制装置、机器人以及机器人系统
KR20150051892A (ko) 잉여 산업 로봇의 운동 시퀀스를 프로그래밍하기 위한 방법 및 관련 산업 로봇
KR101498835B1 (ko) 7축 다관절 로봇의 제어방법, 제어 프로그램 및 로봇 제어장치
JPH079606B2 (ja) ロボット制御装置
EP3175958B1 (en) 5-axis and 6-axis mixing control method for industrial robot and system thereof
JP3070329B2 (ja) 産業用ロボットシステム
JP7003220B2 (ja) ロボットを備えるハンドリング装置、方法及びコンピュータプログラム
KR20180099623A (ko) 로봇 팔 및 로봇 손목
JPH0438553B2 (zh)
JP7007791B2 (ja) ロボットの運転方法、コンピュータプログラム、及びロボットシステム
CN113858189B (zh) 机器人的控制方法及机器人系统
CN117584170A (zh) 机器人控制方法及机器人系统
JP2013223895A (ja) ロボット制御方法及びロボット制御装置
JP2002036155A (ja) ロボットのエンドエフェクタ
JP2013220501A (ja) ロボット制御方法及びロボット制御装置
CN113442131B (zh) 示教方法
WO2024009382A1 (ja) ロボット装置
JP2003025263A (ja) パラレルメカニズム機械の制御装置
US20210299855A1 (en) Robot and robot system having the same

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