CN110978014A - 控制装置以及控制系统 - Google Patents

控制装置以及控制系统 Download PDF

Info

Publication number
CN110978014A
CN110978014A CN201910949712.0A CN201910949712A CN110978014A CN 110978014 A CN110978014 A CN 110978014A CN 201910949712 A CN201910949712 A CN 201910949712A CN 110978014 A CN110978014 A CN 110978014A
Authority
CN
China
Prior art keywords
control device
control
data
manipulator
learning
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
CN201910949712.0A
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.)
Fanuc Corp
Original Assignee
Fanuc 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
Priority claimed from JP2019108190A external-priority patent/JP6928031B2/ja
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of CN110978014A publication Critical patent/CN110978014A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • B25J11/0065Polishing or grinding
    • 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
    • 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/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert 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/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/024Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39218Force tracking
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39318Position loop ann and velocity loop ann and force loop ann
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39323Force and motion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Manipulator (AREA)

Abstract

本发明提供一种控制装置,其取得施加到机器人的机械手的力,并基于所取得的数据,生成包括与施加到机械手的力有关的信息的力状态数据和表示与机械手有关的控制指令的调整动作的控制指令调整数据作为状态数据,并且基于该生成的状态数据,执行与机械手的控制指令的调整动作有关的机器学习的处理。

Description

控制装置以及控制系统
技术领域
本发明涉及一种控制装置以及控制系统,尤其涉及一种能够适当调整对机器人的机械手进行力控制时的按压力或行进速度、行进方向等参数的控制装置以及控制系统。
背景技术
有时通过带有力传感器的机器人来进行使部件彼此精密嵌合的作业、或齿轮的相位对齐、去毛刺以及抛光等作业。在使机器人进行这种作业的情况下,针对使机器人把持部件或工具并将规定方向的力控制为期望值(力控制)而言,作为这种力控制的方式,已知有阻抗控制或阻尼控制、混合控制等。这些方式无论哪一种都需要设定适当的控制增益。对控制增益进行自动调整的方法是公知的(例如可参见日本特开2007-237312号公报)。
尽管如上所述,力控制中的控制增益的设定方法是公知的,但是其他参数例如适当的按压力或行进速度、行进方向等依赖于操作员的调整。对于不习惯这种参数调整的操作员来说,存在实际调整工作难、费时、或结果因人而波动、或在调整中因不恰当的设定值而工件或工具破损等问题。
发明内容
因此,为了解决这些问题,期待有一种能够适当进行控制机器人的机械手时的按压力或行进速度、行进方向等的参数调整的控制装置以及控制系统,本发明的目的就在于提供此种控制装置以及控制系统。在本发明的一个实施方式中,通过对机器人的控制装置设置如下功能来解决上述课题:通过机器学习来进行与工业机器人的机械手的控制有关的各参数的自动调整的功能。
本发明的一个实施方式的控制装置,其控制具备检测施加到机械手的力和力矩的功能的工业机器人,该控制装置具备:控制部,根据控制指令控制上述工业机器人;数据取得部,取得施加到上述工业机器人的机械手的力和力矩中的至少一个作为取得数据;以及预处理部,根据上述取得数据,生成包括与施加到上述机械手的力有关的信息的力状态数据和表示与上述机械手有关的控制指令的调整动作的控制指令调整数据作为状态数据。并且,上述控制装置基于上述状态数据,执行与上述机械手的控制指令的调整动作有关的机器学习的处理。
上述预处理部基于上述取得数据还生成表示进行了上述调整动作后的上述机械手的动作状态的判定结果的判定数据,此外,上述控制装置还可以具备学习部,该学习部使用上述状态数据以及上述判定数据,生成强化学习了与施加到上述机械手的力的状态相对应而的与上述机械手有关的控制指令的调整动作的学习模型,来作为上述机器学习的处理。
上述控制装置还可以具备:学习模型存储部,用于存储强化学习了与施加到上述机械手上的力的状态相对应的与上述机械手有关的控制指令的调整动作的学习模型;以及决策部,基于上述状态数据,对使用了上述学习模型存储部中存储的学习模型的与上述机械手有关的控制指令的调整动作进行推定,来作为上述机器学习的处理。
上述预处理部可以生成表示施加到进行了上述调整动作后的机械手上的负载的程度的负载判定数据作为上述判定数据。
上述预处理部还可以生成表示执行了上述调整动作后的机械手的作业时间的程度的作业时间数据作为上述判定数据。
本发明的另一个实施方式中提供的控制系统,其为经由网络将多个装置相互连接的系统,上述多个装置包括前述控制装置即第一控制装置。
上述多个装置包括具备机器学习装置的计算机,上述计算机取得作为上述第一控制装置的至少一个上述强化学习的结果的学习模型,此外,上述计算机所具备的机器学习装置可以进行基于所取得的上述学习模型的最优化或高效化。
上述多个装置包括与上述第一控制装置不同的第二控制装置,上述第一控制装置的学习结果能够与上述第二控制装置共享。
上述多个装置包括与上述第一控制装置不同的第二控制装置,在该第二控制装置中观测到的数据能够经由上述网络用于上述第一控制装置的强化学习中。
通过本发明,能够基于学习结果适当的进行控制机器人的机械手时的按压力或行进速度、行进方向等的参数调整。
附图说明
图1是一个实施方式的控制装置的概略硬件结构图。
图2是第一实施方式的控制装置的概略功能框图。
图3是表示工业机器人进行的部件的嵌合作业的例子的图。
图4是表示工业机器人进行的齿轮的组装作业的例子的图。
图5是表示工业机器人进行的工件的去毛刺·抛光作业的例子的图。
图6是表示包含云服务器、雾计算机、边缘计算机的三层结构的系统的例子的图。
图7是安装在计算机上的方式下的控制装置的概略硬件结构图。
图8是第二实施方式的控制系统的概略结构图。
图9是第三实施方式的控制系统的概略结构图。
图10是第四实施方式的控制系统的概略结构图。
具体实施方式
图1是一个实施方式的表示具备机器学习装置的控制装置的主要部分的概略硬件结构图。本实施方式中的控制装置1能够安装为对工业机器人进行控制的控制装置,上述工业机器人例如是进行部件的嵌入或组装、去毛刺等的工业机器人。
该控制装置1所具备的CPU11是对控制装置1进行整体控制的处理器。CPU11通过总线20读取存储在ROM12中的系统·程序,并根据该系统·程序对控制装置1整体进行控制。RAM13中临时存储有临时计算数据、操作员经由示教操作板60或输入装置71输入的各种数据等。
非易失性存储器14例如由通过电池(未图示)进行备份的存储器或SSD(SolidState Drive,固态硬盘)等构成,即使控制装置1的电源关闭也能保持存储状态。在非易失性存储器14中存储有:经由接口19从示教操作板60输入的示教数据或从输入装置71输入的数据、经由未图示的接口输入的工业机器人控制用程序、安装在工业机器人上的传感器3检测出的数据(施加到机械手上的力或力矩等)、从对工业机器人的轴进行驱动的伺服电动机50检测出的数据(伺服电动机50的电流值、位置、速度、加速度、转矩等)、以及经由外部存储装置(未图示)或网络读入的数据等。在非易失性存储器14中存储的程序或各种数据,在执行时/使用时也可以在RAM13中展开。此外,在ROM12中预先写入有用于执行与机器人的控制或示教位置的示教有关的处理等的各种系统·程序(包括用于控制与后述的机器学习装置100之间交互的系统·程序)。
作为执行读入到存储器上的各种数据、程序等的结果而得到的数据、以及从后述的机器学习装置100输出的数据等,经由接口17输出并显示到显示装置70。此外,由键盘或点选设备(pointing device)等构成的输入装置71将基于操作员操作的指令、数据等经由接口18传递给CPU11。
示教操作板60是具备显示器或手柄、硬键等的手动数据输入装置,经由接口19接受并显示来自控制装置1的信息,并将从手柄或硬键等输入的脉冲或指令、各种数据传递给CPU11。
用于控制工业机器人所具备的关节等轴的轴控制电路30,接受来自CPU11的轴的移动指令量,并将轴的指令输出到伺服放大器40。伺服放大器40接受该指令,对使机器人所具备的轴移动的伺服电动机50进行驱动。轴的伺服电动机50内置有位置·速度检测器,将来自该位置·速度检测器的位置·速度反馈信号反馈给轴控制电路30,并进行位置·速度的反馈控制。此外,虽然在图1的硬件结构图中,轴控制电路30、伺服放大器40以及伺服电动机50仅分别示出了一个,但实际上按照成为控制对象的机器人所具备的轴的数量准备。例如,在具备6个轴的机器人中,针对各轴均准备轴控制电路30、伺服放大器40和伺服电动机50。
接口21是用来连接控制装置1和机器学习装置100的接口。机器学习装置100具备:对机器学习装置100整体控制的处理器101;存储有系统·程序等的ROM12;用来进行与机器学习有关的各个处理中的临时存储的RAM103;以及用于存储学习模型等的非易失性存储器104。机器学习装置100能够观测经由接口21可由控制装置1获取的各个信息(施加到机械手上的力或力矩、伺服电动机50的电流值、位置、速度、加速度、转矩等)。此外,控制装置1接受从机器学习装置100输出的力指令、转矩指令的变更指示,并进行基于程序或示教数据的机器人的控制指令的修正等。
图2是第一实施方式中的控制装置1和机器学习装置100的概略功能框图。
本实施方式的控制装置1具备机器学习装置100进行学习时所需的结构(学习模型)。图2中示出的各个功能块,通过图1中示出的控制装置1所具备的CPU11以及机器学习装置100的处理器101执行各个的系统·程序,并对控制装置1和机器学习装置100的各部分动作进行控制来实现。
该控制装置1具备控制部32、数据取得部34以及预处理部36,控制装置1所具备的机器学习装置100具备学习部110以及决策部120。此外,在非易失性存储器14上,设置有存储从工业机器人2、传感器3等取得的数据的取得数据存储部54,在机器学习装置100的非易失性存储器104上,设置有存储通过由学习部110进行的机器学习而构建的学习模型的学习模型存储部130。
控制部32基于非易失性存储器104中存储的控制用程序52来控制工业机器人2的动作。控制部32基于由操作员进行的操作板(未图示)的控制操作或存储在非易失性存储器14等中的控制用程序来控制工业机器人2。此外,控制部32具备用于控制工业机器人2的各部分所需的一般性控制的功能,例如,是在通过控制用程序52对工业机器人2所具备的各轴(关节)的移动进行指令的情况下,对于驱动这些轴的电动机按照控制周期输出作为轴角度变化量的指令数据等的的功能。进一步地,控制部32取得工业机器人2所具备的各电动机的电动机状态量(电动机的电流值、位置、速度、加速度、转矩等),并输出给数据取得部34。
数据取得部34取得从工业机器人2、传感器3以及输入装置71等输入的各种数据。数据取得部34取得例如基于工业机器人控制用程序的指令、或施加到工业机器人2的机械手上的力或力矩、驱动工业机器人2的轴的伺服电动机50的电流值、位置、速度、加速度、转矩等,并存储到取得数据存储部54中。数据取得部34可以设为取得由传感器3检测的数据或与伺服电动机50有关的数据作为时序数据。此外,数据取得部34还可以经由外部存储装置(未图示)或有线/无线网络从其他计算机取得数据。
预处理部36基于数据取得部34取得的数据,生成机器学习装置100的学习中使用的状态数据。预处理部36生成将数据取得部34取得的数据转换为机器学习装置100中处理的统一格式(数字化、采样等)后的状态数据。例如,在机器学习装置100进行强化学习时,预处理部36生成该学习中的预定格式的状态数据S及判定数据D的组。
预处理部36生成的状态数据S包括力状态数据S1和控制指令调整数据S2,力状态数据S1包括与施加到工业机器人2的机械手上的力有关的信息,控制指令调整数据S2表示在上述力状态数据S1的力的状态下进行的机械手的控制指令(速度指令、力指令、转矩指令等)的调整动作。
力状态数据S1至少包括施加到工业机器人2的机械手的进给方向的力,此外,还可以包括向进给方向以外的方向施加的力或者力的力矩。力状态数据S1可以通过设置在工业机器人2的机械手的传感器3来检测,也可以根据流经对工业机器人2的各个轴进行控制的伺服电动机50的电流等来综合求出。
作为在上述力状态数据S1的力的状态下进行的机械手的进给方向的控制指令(速度指令、力指令、转矩指令等)的调整动作,控制指令调整数据S2至少包括机械手的进给方向的速度指令、力指令、转矩指令等控制指令,此外,还可以包括进给方向以外方向的控制指令。
预处理部36生成的判定数据D是在上述力状态数据S1的力的状态下进行上述控制指令调整数据S2所示控制指令的调整动作时的、表示该调整动作后机械手动作状态的判定结果的数据。判定数据D至少包括表示施加到机械手的负载程度的负载判定数据D1,此外,还可以包括表示机械手的作业时间程度的作业时间判定数据D2。
学习部110进行使用了由预处理部36生成的数据的机器学习。学习部110通过公知的强化学习方法,生成学习了与工业机器人2的动作状态相对应的机械手控制指令(速度指令、力指令、转矩指令等)的调整动作的学习模型,并将生成的学习模型存储到学习模型存储部130中。强化学习是对学习对象所处环境的当前状态(即输入)进行观测并在当前状态下执行预定动作(即输出),试错性地反复进行对该动作给予何种报酬的循环,从而使报酬总计最大化的方案(在本发明的机器学习装置中机械手的速度指令、力指令、转矩等控制指令的调整动作)作为最佳解来进行学习的方法。作为学习部110进行的强化学习方法举例有Q学习等。
在由学习部110进行的Q学习中,报酬R能够在例如向进给方向移动机械手时施加的负载大小收敛在预定负载范围内的情况下,判定为“良好”并作为正(plus)的报酬R,当超过预先设定的预定的负载的情况下,判定为“否”并作为负(minus)的报酬R。此外,报酬R还可以在例如向进给方向移动机械手的作业所需花费的时间(1次作业所需花费的时间、移动预定距离所需花费的时间等)为预定阈值以内的情况下,判定为“良好”并作为正(plus)的报酬R,当超过预先设定的预定阈值的情况下,判定为“否”并作为负(minus)的报酬R。报酬R的值可以根据负载大小的程度或作业所需花费的时长而变化。此外,作为判定条件,当判定数据D中包含多个数据时,可将这些多个数据进行组合来进行判定。
学习部110可构成为,使用神经网络作为价值函数Q(学习模型),将状态数据S和动作a作为神经网络的输入,并输出该状态下的该动作a的价值(结果y)。在如此构成时,作为学习模型可以使用具备输入层、中间层、输出层三层的神经网络,也可以构成为通过使用了三层以上的层构成的神经网络的所谓的深度学习的方法,来进行更加有效学习和推断。
学习部110生成的学习模型存储在非易失性存储器104上设置的学习模型存储部130中,用于决策部120进行的工业机器人2的机械手控制指令调整动作的推定处理中。
此外,学习部110虽然在学习阶段是必要结构,但在学习部110进行的工业机器人2的机械手控制指令的调整动作的学习完成后,则不一定为必要结构。例如,在将完成了学习的机器学习装置100发给客户时,可以取出学习部110再发货。
决策部120基于从预处理部36输入的状态数据S,使用学习模型存储部130中存储的学习模型,求出工业机器人2的机械手进给方向的控制指令的调整动作的最佳解,并将求出的工业机器人2的机械手进给方向的控制指令的调整动作输出。在本实施方式的决策部120中,针对由学习部110进行强化学习而生成的(决定了参数的)学习模型,输入从预处理部36输入的状态数据S(力状态数据S1、控制指令调整数据S2等)和工业机器人2的机械手的控制指令的调整动作(例如速度或力、力矩的指令值调整)作为输入数据,从而能够计算在当前状态下进行该动作时的报酬。这时,针对当前能够取得的多个工业机器人2的机械手控制指令调整动作来进行该报酬的计算,并对计算出的多个报酬进行比较,将计算出的最大报酬的工业机器人2的机械手控制指令调整动作推定为最佳解。由决策部120推定出的工业机器人2的机械手控制指令调整动作的最佳解除了输入到控制部32用于工业机器人2的机械手控制指令的调整之外,还能够例如通过显示输出到显示装置70上或者通过有线/无线网络发送输出给主计算机或云计算机等进行使用。
在具备上述结构的控制装置1中,能够在使用工业机器人2进行的各种作业中,一边检测施加到机械手进给方向的力或力矩,一边自动调整以适当速度加减、力加减进给机械手的控制。
图3~5是表示通过本发明的控制装置1控制工业机器人2而进行的作业的例子的图。
图3示出了一种进行如下作业的例子,即,通过控制装置1控制工业机器人2,通过安装在该工业机器人2上的手部80把持部件81,并将该部件81嵌合到其他部件82的预定位置的作业。
在这样的例子中,数据取得部34取得施加到工业机器人2的手部80的各个轴方向(X轴方向、Y轴方向、Z轴方向)的力以及围绕各个轴的力矩(moment),并基于这些力和力矩,预处理部36生成力状态数据S1。与此相对,作为与手部80的进给方向(部件81的嵌合方向)有关的控制指令的调整动作,调整进给方向的力指令和速度指令中的至少一个,作为其结果,将施加到手部80的各轴方向的负载的合力是否收敛在预定阈值以下设为负载判定数据D1,并将向嵌合方向移动所花费的时间(移动预定距离所花费的时间)是否收敛在预先设定的预定阈值以下设为作业时间判定数据D2。
此外,作为手部80的控制指令的调整动作,还可以包括朝向进给方向以外的方向的手部80的调整动作(部件倾斜度的微调、与部件的嵌合方向垂直方向上的位置的微调等)。在进行这种调整动作的同时,学习部110进行与嵌合作业中施加到手部80的各个轴方向的力和围绕各轴的力矩相对应的适当的调整动作的学习,根据基于该学习结果的决策部120决定出的调整动作,控制部32能够进行适当的工业机器人2的控制。
图4示出了通过控制装置1控制工业机器人2,通过安装在该工业机器人2的手部80来把持齿轮83,并相对于另一齿轮84进行齿轮的相位对齐,同时对齿轮83和84进行组装的作业的例子。
在这样的例子中,数据取得部34取得施加到工业机器人2的手部80的进给方向的力和围绕齿轮83的轴的力矩,并基于这些力和力矩,预处理部36生成力状态数据S1。与此相对,作为与手部80进给方向有关的控制指令的调整动作,调整进给方向的力指令,作为其结果,将施加到手部80的进给方向的负载是否收敛在预定阈值以下、以及围绕齿轮83的轴的负载是否收敛在预定阈值以下设为负载判定数据D1,并将向手部80的进给方向移动所花费的时间(预定距离的移动所花费的时间)是否控制在预先设定的预定阈值以下设为作业时间判定数据D2。此外,作为手部80的控制指令的调整动作,还可以包括围绕齿轮83的轴的角速度指令或速度指令的调整动作。在进行这种调整动作的同时,学习部110进行与齿轮组装作业中施加到手部80的进给方向的力和围绕齿轮83的轴的力矩相对应的适当的调整动作的学习,根据基于其学习结果的决策部120所决定出的调整动作,控制部32能够进行适当的工业机器人2的控制。
图5示出了通过控制装置1控制工业机器人2,并通过安装在该工业机器人2的抛光工具85来进行工件86的去毛刺或抛光的作业的例子。
在这样的例子中,数据取得部34取得施加到安装在工业机器人2上的抛光工具85的进给方向的力和抛光工具85对工件86施加的按压方向的力,并基于这些力,预处理部36生成力状态数据S1。与此相对,作为与抛光工具85的进给方向有关的控制指令的调整动作,调整进给方向的速度指令,作为其结果,将施加到抛光工具85的进给方向的负载是否收敛在预定阈值以下、以及对工件86施加的按压方向的负载是否是预定范围内(第一阈值以上且第二阈值以下)设为负载判定数据D1,并将向抛光工具85的进给方向移动所花费的时间(预定距离的移动所花费的时间)是否收敛在预定阈值以下设为作业时间判定数据D2。此外,作为抛光工具85的控制指令的调整动作,还可以包括朝向工件86的按压方向的力指令的调整动作。
在进行这种调整动作的同时,由学习部110进行与在去毛刺或抛光作业中施加到抛光工具85上的进给方向的力和向工件86的按压方向的力相对应的适当调整动作的学习,根据基于其学习结果的决策部120所决定出的调整动作,控制部32能够进行适当的工业机器人2的控制。
下面,作为第2~4实施方式,说明前述第1实施方式的控制装置1被安装为将包括云服务器或主计算机、雾计算机、以及边缘计算机(机器人控制器、控制装置等)的多个装置通过有线/无线网络相互连接的系统的一部分的实施方式。
如图6所示,在以下第2~4实施方式中,假设一种逻辑上分为以下3层而构成的系统:在多个装置分别与网络连接的状态下包括云服务器6等的层;包括雾计算机7等的层;以及包括边缘服务器8(单元9中包含的机器人控制器、控制装置等)等的层。
在这样的系统中,本发明第一实施方式的控制装置1能够安装在云服务器6、雾计算机7以及边缘计算机8中的任意一个上,能够与多个装置中的每个装置之间,通过网络相互共享在与机器学习有关的处理中使用的数据,来进行分布式学习,或者将生成的学习模型收集到雾计算机7或云服务器6中来进行大规模解析,甚至还能够进行所生成的学习模型的相互再利用等。
在图6所示的系统中,单元9在各地的工厂中分别设有多个,每个单元9由上位雾计算机7以预定单位(以工厂为单位,或以同一个厂商的多个工厂为单位等)进行管理。然后,由这些雾计算机7所收集并解析过的数据,能够通过更上位的云服务器6进行收集和解析等,并将作为其结果而得到的信息应用到各个边缘计算机8中的控制等中。
图7是将控制装置安装到云服务器、雾计算机等计算机上时的概略硬件结构图。
本实施方式中安装在计算机上的控制装置1’所具备的CPU311,是对控制装置1’进行整体控制的处理器。CPU311经由总线320读取出存储在ROM312中的系统·程序,并根据该系统·程序对控制装置1’整体进行控制。RAM313中临时存储有临时计算数据或显示数据、由操作员通过未图示的输入部输入的各种数据等。
非易失性存储器314由例如用电池(未图示)进行备份等,构成为即使控制装置1’的电源关闭也能保持存储状态的存储器。在非易失性存储器314中,存储有经由输入装置371输入的程序、以及从控制装置1’的各部分或经由网络5从工业机器人2’等取得的各种数据。在非易失性存储器314中存储的程序或各种数据,在执行时/使用时也可以在RAM313中展开。此外,在ROM312中预先写入有公知的解析程序等各种系统·程序(包括用于控制与后述的机器学习装置100之间的交互的系统·程序)。
控制装置1’经由接口319与有线/无线网络5连接。在网络5上,连接有至少一个工业机器人2’(具备控制装置的工业机器人)或其他控制装置1、边缘计算机8、雾计算机7、以及云服务器6等,与控制装置1’之间相互进行数据的交互。
作为执行被读入到存储器上的各种数据、程序等的结果而得到的数据等,经由接口317被输出并显示在显示装置370上。此外,由键盘或点选设备等构成的输入装置371经由接口318将基于操作员操作的指令、数据等传递给CPU311。
接口321是用于连接控制装置1’和机器学习装置100的接口。机器学习装置100具备与图1中说明的结构相同的结构。
这样,在将控制装置1’安装在云服务器、雾计算机等计算机上的情况下,除了从工业机器人2’取得信息或者对于工业机器人2’的机械手的控制指令的调整经由网络5来进行交互的这一点之外,控制装置1’所具备的功能与第1实施方式中说明的功能相同。此时,由于工业机器人2’具备控制装置,因此控制装置1’所具备的控制部32(参见图2)不进行工业机器人2’的控制,而是经由工业机器人2’所具备的控制装置来进行与该工业机器人2’的加工状态有关的信息的取得和控制。
图8是具备控制装置1’的第2实施方式的控制系统的概略结构图。
该实施方式中的控制系统500具备多个控制装置1,1’、多个工业机器人2,2’、以及将这些控制装置1,1’和工业机器人2’相互连接的网络5。
在该控制系统500中,具备机器学习装置100的控制装置1’使用学习部110的学习结果,推定工业机器人2’中机械手控制指令的调整。此外,至少一个控制装置1’可以构成为,基于其他多个控制装置1,1’分别得到的状态变量S以及判定数据D,来对所有控制装置1,1’中共用的工业机器人2,2’中的机械手的控制指令的调整进行学习,该学习结果由所有控制装置1,1’共享。因此,根据控制系统500,能够将更加多样的数据集合(包括状态变量S和判定数据D)作为输入,提高学习速度和可靠性。
图9是将机器学习装置和控制装置安装在不同装置上的第3实施方式涉及的系统的概略结构图。
该实施方式的控制系统500’具备安装为云服务器、主计算机、雾计算机等计算机的一部分的至少1台机器学习装置100(在图9中,示出了安装为雾计算机7的一部分的例子)、多个控制装置1”、以及将这些控制装置1”和计算机相互连接的网络5。此外,计算机的硬件结构与图7所示的控制装置1’的概略硬件结构图相同,构成为CPU311、RAM313、非易失性存储器314等一般计算机所具备的硬件经由总线320连接。
在具有上述结构的控制系统500’中,机器学习装置100能够基于针对多个控制装置1”中的分别到的状态变量S和判定数据D,对所有控制装置1”共用的工业机器人2中的机械手的控制指令的调整进行学习,并使用该学习结果,进行各个工业机器人2中的机械手的控制指令的调整。根据控制系统500’的构成,多个控制装置1”分别能够与所在的场所或时期无关地,在必要时将所需数量的控制装置1”连接到机器学习装置100上。
图10是具备机器学习装置100’和控制装置1的第4实施方式的控制系统500”的结构示意图。
该实施方式中的控制系统500”具备安装在边缘计算机或雾计算机、主计算机、以及云服务器等计算机上的至少1台机器学习装置100’(在图10中,示出了安装为雾计算机7的一部分的例子)、多个控制装置1、以及将这些控制装置1和计算机相互连接的有线/无线网络5。
在具有上述结构的控制系统500”中,具备机器学习装置100’的雾计算机7,从各个控制装置1取得作为该控制装置1所具备的机器学习装置100的机器学习的结果而得到的学习模型。然后,雾计算机7所具备的机器学习装置100’通过进行基于这些多个学习模型的知识的最优化或高效化处理,重新生成最优化或高效化的学习模型,并将所生成的学习模型分配给各个控制装置1。
作为由机器学习装置100’进行的学习模型的最优化或高效化的例子,可以例举基于从各控制装置1取得的多个学习模型的蒸馏模型的生成。这种情况下,本实施例中的机器学习装置100’生成向学习模型输入的输入数据,并使用将该输入数据输入到各个学习模型中的作为结果而得到的输出,从头开始进行学习,从而生成新的学习模型(蒸馏模型)。这样生成的蒸馏模型如上文中说明的那样,经由外部存储介质或网络5分配并活用于控制装置1或其他计算机中。
作为机器学习装置100’进行的学习模型的最优化或高效化的另一个例子,还可以在对从每个控制装置1取得的多个学习模型进行蒸馏的过程中,通过一般统计方法(例如离群值检测等),对每个学习模型的输出数据相对于输入数据的分布进行解析,并抽取输入数据与输出数据的组中的离群值,使用除去了该离群值后的输入数据与输出数据的组来进行蒸馏。通过这样的过程,能够从由各个学习模型得到的输入数据和输出数据的组中除去例外的推定结果,并使用除去了例外的推定结果的输入数据和输出数据的组来生成蒸馏模型。由此生成的蒸馏模型与由多个控制装置1生成的学习模型相比,能够活用为更加通用的学习模型。
另外,也可以适当导入其他一般学习模型的最优化或高效化方法(解析各学习模型,并基于该解析结果使学习模型的超参数最优化等)。
在本实施例的控制系统500”中,能够进行如下应用,例如,将机器学习装置100’配置在针对作为边缘计算机的多个控制装置1而设置的雾计算机7上,将各控制装置1生成的学习模型集中存储到雾计算机7上,进行基于所存储的多个学习模型的最优化或高效化,并且根据需要将最优化或高效化后的学习模型再分配给各控制装置1。
此外,在本实施例的控制系统500”中,例如能够将集中存储到雾计算机7上的学习模型、或者在雾计算机7上被最优化或高效化的学习模型,进一步集中到上位的主计算机或云服务器上,并使用这些学习模型来进行在工厂或控制装置1制造商的智能作业的应用(上位服务器中更加通用的学习模型的构建和再分配、基于学习模型的解析结果的维护作业的辅助、各控制装置1的性能等的分析、以及在新机械的开发中的应用等)。
以上,对本发明的实施方式进行了说明,但本发明并不仅限于上述实施方式中的例子,能够通过施加适当变化来进行多种方式的实施。
例如,在上述实施方式中,对控制装置1和机器学习装置100具有不同CPU(处理器)的装置进行了说明,但机器学习装置也可以通过控制装置1所具备的CPU11和存储在ROM12中的系统·程序来实现。

Claims (9)

1.一种控制装置,其控制具备检测施加到机械手的力和力矩的功能的工业机器人,其特征在于,
上述控制装置具备:
控制部,其根据控制指令控制上述工业机器人;
数据取得部,其取得施加到上述工业机器人的机械手的力和力矩中的至少一个作为取得数据;以及
预处理部,其根据上述取得数据,生成包括与施加到上述机械手的力有关的信息的力状态数据和表示与上述机械手有关的控制指令的调整动作的控制指令调整数据作为状态数据,
上述控制装置基于上述状态数据,执行与上述机械手的控制指令的调整动作有关的机器学习的处理。
2.根据权利要求1所述的控制装置,其特征在于,
上述预处理部基于上述取得数据还生成表示进行了上述调整动作后的上述机械手的动作状态的判定结果的判定数据,
上述控制装置还具备学习部,该学习部使用上述状态数据以及上述判定数据,生成强化学习了与施加到上述机械手的力的状态相对应的与上述机械手有关的控制指令的调整动作的学习模型,来作为上述机器学习的处理。
3.根据权利要求1所述的控制装置,其特征在于,
上述控制装置还具备:
学习模型存储部,其用于存储强化学习了与施加到上述机械手的力的状态相对应的与上述机械手有关的控制指令的调整动作的学习模型;以及
决策部,其基于上述状态数据,对使用了上述学习模型存储部中存储的学习模型的与上述机械手有关的控制指令的调整动作进行推定,来作为上述机器学习的处理。
4.根据权利要求2所述的控制装置,其特征在于,
上述预处理部生成表示施加到进行了上述调整动作后的机械手上的负载的程度的负载判定数据作为上述判定数据。
5.根据权利要求2所述的控制装置,其特征在于,
上述预处理部生成表示执行了上述调整动作后的机械手的作业时间的程度的作业时间数据作为上述判定数据。
6.一种控制系统,其为经由网络将多个装置相互连接的系统,其特征在于,
上述多个装置至少包括权利要求2、4、5中任意一项所述的控制装置即第一控制装置。
7.根据权利要求6所述的控制系统,其特征在于,
上述多个装置包括具备机器学习装置的计算机,
上述计算机取得作为上述第一控制装置的至少一个上述强化学习的结果的学习模型,
上述计算机所具备的机器学习装置进行基于所取得的上述学习模型的最优化或高效化。
8.根据权利要求6所述的控制系统,其特征在于,
上述多个装置包括与上述第一控制装置不同的第二控制装置,上述第一控制装置的学习结果能够与上述第二控制装置共享。
9.根据权利要求6所述的控制系统,其特征在于,
上述多个装置包括与上述第一控制装置不同的第二控制装置,在该第二控制装置中观测到的数据能够经由上述网络用于上述第一控制装置的强化学习中。
CN201910949712.0A 2018-10-02 2019-10-08 控制装置以及控制系统 Pending CN110978014A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2018-187717 2018-10-02
JP2018187717 2018-10-02
JP2019-108190 2019-06-10
JP2019108190A JP6928031B2 (ja) 2018-10-02 2019-06-10 制御装置及び制御システム

Publications (1)

Publication Number Publication Date
CN110978014A true CN110978014A (zh) 2020-04-10

Family

ID=69781093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910949712.0A Pending CN110978014A (zh) 2018-10-02 2019-10-08 控制装置以及控制系统

Country Status (3)

Country Link
US (1) US12005582B2 (zh)
CN (1) CN110978014A (zh)
DE (1) DE102019006725B4 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11312015B2 (en) * 2018-09-10 2022-04-26 Reliabotics LLC System and method for controlling the contact pressure applied by an articulated robotic arm to a working surface
US20200293942A1 (en) * 2019-03-11 2020-09-17 Cisco Technology, Inc. Distributed learning model for fog computing
JP2021064222A (ja) * 2019-10-15 2021-04-22 富士通株式会社 方策改善方法、方策改善プログラム、および方策改善装置
JP2021089606A (ja) * 2019-12-04 2021-06-10 キヤノン株式会社 システムおよびその制御方法、並びにプログラム
US20230080768A1 (en) * 2021-09-10 2023-03-16 Honda Motor Co., Ltd. Object manipulation
CN114378820B (zh) * 2022-01-18 2023-06-06 中山大学 一种基于安全强化学习的机器人阻抗学习方法

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195127A (ja) * 1992-12-22 1994-07-15 Agency Of Ind Science & Technol マニピュレータのハイブリッド遠隔制御装置
JPH07319558A (ja) * 1994-05-26 1995-12-08 Matsushita Electric Works Ltd 力制御装置における力の検出方法
CN101034283A (zh) * 2006-03-07 2007-09-12 发那科株式会社 控制装置
US20170028553A1 (en) * 2015-07-31 2017-02-02 Fanuc Corporation Machine learning device, robot controller, robot system, and machine learning method for learning action pattern of human
CN107263464A (zh) * 2016-04-04 2017-10-20 发那科株式会社 机器学习装置、机械系统、制造系统以及机器学习方法
WO2018053187A1 (en) * 2016-09-15 2018-03-22 Google Inc. Deep reinforcement learning for robotic manipulation
CN107962558A (zh) * 2016-10-19 2018-04-27 发那科株式会社 通过机器学习提高了外力的检测精度的人协作机器人系统
CN108227482A (zh) * 2016-12-14 2018-06-29 发那科株式会社 控制系统以及机器学习装置
JP2018107315A (ja) * 2016-12-27 2018-07-05 ファナック株式会社 プリント板組立作業のための機械学習装置、制御装置、産業機械、組立システム及び機械学習方法
CN108393890A (zh) * 2017-02-06 2018-08-14 精工爱普生株式会社 控制装置、机器人以及机器人系统
CN108393888A (zh) * 2017-02-06 2018-08-14 精工爱普生株式会社 控制装置、机器人以及机器人系统
CN108393889A (zh) * 2017-02-06 2018-08-14 精工爱普生株式会社 控制装置、机器人以及机器人系统
CN108422420A (zh) * 2017-02-15 2018-08-21 发那科株式会社 具有学习控制功能的机器人系统以及学习控制方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8886359B2 (en) 2011-05-17 2014-11-11 Fanuc Corporation Robot and spot welding robot with learning control function
JP2014006566A (ja) 2012-06-21 2014-01-16 Institute Of National Colleges Of Technology Japan 組み込み知能コントローラ、制御システム、制御プログラム、記録媒体、及び制御方法
JP5969676B1 (ja) 2015-09-30 2016-08-17 ファナック株式会社 工作機械の工具補正の頻度を最適化する機械学習装置及び機械学習方法、並びに該機械学習装置を備えた工作機械
JP7145700B2 (ja) 2018-09-06 2022-10-03 株式会社東芝 ハンド制御装置
JP7000359B2 (ja) 2019-01-16 2022-01-19 ファナック株式会社 判定装置

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195127A (ja) * 1992-12-22 1994-07-15 Agency Of Ind Science & Technol マニピュレータのハイブリッド遠隔制御装置
JPH07319558A (ja) * 1994-05-26 1995-12-08 Matsushita Electric Works Ltd 力制御装置における力の検出方法
CN101034283A (zh) * 2006-03-07 2007-09-12 发那科株式会社 控制装置
US20170028553A1 (en) * 2015-07-31 2017-02-02 Fanuc Corporation Machine learning device, robot controller, robot system, and machine learning method for learning action pattern of human
CN106393101A (zh) * 2015-07-31 2017-02-15 发那科株式会社 机械学习装置及方法、机器人控制装置、机器人系统
CN107263464A (zh) * 2016-04-04 2017-10-20 发那科株式会社 机器学习装置、机械系统、制造系统以及机器学习方法
WO2018053187A1 (en) * 2016-09-15 2018-03-22 Google Inc. Deep reinforcement learning for robotic manipulation
CN107962558A (zh) * 2016-10-19 2018-04-27 发那科株式会社 通过机器学习提高了外力的检测精度的人协作机器人系统
CN108227482A (zh) * 2016-12-14 2018-06-29 发那科株式会社 控制系统以及机器学习装置
JP2018107315A (ja) * 2016-12-27 2018-07-05 ファナック株式会社 プリント板組立作業のための機械学習装置、制御装置、産業機械、組立システム及び機械学習方法
CN108393890A (zh) * 2017-02-06 2018-08-14 精工爱普生株式会社 控制装置、机器人以及机器人系统
CN108393888A (zh) * 2017-02-06 2018-08-14 精工爱普生株式会社 控制装置、机器人以及机器人系统
CN108393889A (zh) * 2017-02-06 2018-08-14 精工爱普生株式会社 控制装置、机器人以及机器人系统
JP2018126799A (ja) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
CN108422420A (zh) * 2017-02-15 2018-08-21 发那科株式会社 具有学习控制功能的机器人系统以及学习控制方法

Also Published As

Publication number Publication date
US12005582B2 (en) 2024-06-11
US20200101603A1 (en) 2020-04-02
DE102019006725A1 (de) 2020-04-02
DE102019006725B4 (de) 2023-06-01

Similar Documents

Publication Publication Date Title
CN110978014A (zh) 控制装置以及控制系统
CN108422420B (zh) 具有学习控制功能的机器人系统以及学习控制方法
JP7000359B2 (ja) 判定装置
JP2018202564A (ja) 制御装置及び機械学習装置
CN111687652B (zh) 握持力调整装置以及握持力调整系统
US11059142B2 (en) Controller, machine learning device, and system
US11169502B2 (en) Life estimation device and machine learning device
JP7239399B2 (ja) 調整支援装置
JP2019185125A (ja) 制御装置及び機械学習装置
CN111650892B (zh) 管理装置以及管理系统
CN111538296A (zh) 管理装置和管理系统
CN109129413B (zh) 显示速度的机器人系统
US20200257253A1 (en) Management device and management system
CN111571302A (zh) 切削液量调整装置和系统
CN110174871B (zh) 控制装置、机器学习装置以及系统
DE102014226787B3 (de) Sicherer Roboter mit Bahnfortschrittsvariablen
EP3328595A2 (de) Verfahren und system zum steuern eines roboters
CN109507879B (zh) 控制装置以及机器学习装置
CN112847366A (zh) 一种力位混合示教机器人系统及示教方法
JP6928031B2 (ja) 制御装置及び制御システム
EP3710900B1 (de) Verfahren und system zum vorgeben bzw. lernen eines roboterbefehls
JP6836540B2 (ja) 情報処理装置及び情報処理方法
JP2007313612A (ja) 多関節ロボットの制御装置及びその制御方法
JP2019136807A (ja) 制御装置及び機械学習装置
DE102019213676B3 (de) Robotersteuerung

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