数控装置及数控方法

文档序号:214439 发布日期:2021-11-05 浏览:7次 >En<

阅读说明:本技术 数控装置及数控方法 (Numerical control device and numerical control method ) 是由 末田崇 嵯峨崎正一 马场健辅 于 2019-03-28 设计创作,主要内容包括:数控装置(1X)在控制进行被加工物的加工的工作机械(70)和进行被加工物的输送的机器人(60)的控制系统中使用,数控装置(1X)具有:输入操作部(3X),其接受向机器人(60)的手动操作;以及控制运算部(2X),其使用NC程序对工作机械(70)进行控制,并且基于手动操作对机器人(60)进行控制,控制运算部(2X)具有:可否手动判断部(412),其基于控制系统的状态,对机器人(60)可否手动操作进行判断;以及移动数据发送部(413),其如果在由可否手动判断部(412)许可机器人(60)的手动操作的情况下进行手动操作,则基于手动操作而生成向对机器人(60)的移动进行控制的机器人控制器(50)的第1移动指令,发送至机器人控制器(50)。(A numerical control device (1X) is used in a control system for controlling a machine tool (70) for processing a workpiece and a robot (60) for conveying the workpiece, and the numerical control device (1X) comprises: an input operation unit (3X) that receives manual operation of the robot (60); and a control calculation unit (2X) that controls the machine tool (70) using an NC program and controls the robot (60) on the basis of a manual operation, wherein the control calculation unit (2X) has: a manual operation possibility determination unit (412) that determines whether or not the robot (60) is manually operable, based on the state of the control system; and a movement data transmission unit (413) which, if manual operation is performed when the manual operation of the robot (60) is permitted by the availability determination unit (412), generates a 1 st movement command to the robot controller (50) that controls movement of the robot (60) based on the manual operation, and transmits the 1 st movement command to the robot controller (50).)

数控装置及数控方法

技术领域

本发明涉及对机器人及工作机械进行控制的数控装置及数控方法。

背景技术

作为数控装置之一,存在将进行被加工物的加工的工作机械的控制和进行被加工物的输送的机器人的控制并行地执行的装置。在该数控装置中,存在能够通过用户对手动手柄的操作而对工作机械或者机器人进行控制的装置。

专利文献1所记载的数控装置具有用于从按照加工程序的控制切换为手动操作的手动开关,如果手动开关接通,则通过由用户操作进行的手动手柄的旋转而产生速度信号,按照速度信号对工作机械所具有的轴驱动电动机的速度进行控制,沿预先决定的移动路径使机械移动。

专利文献1:日本特开平2-212905号公报

发明内容

但是,在上述专利文献1的技术中,是在不清楚是否是可以进行手动操作的状态的情况下进行手动操作。因此,例如如果对在与手动操作相对应的方向使机器人移动的机器人应用上述专利文献1的技术,则存在下述问题,即,有时通过手动操作而移动的机器人和按照加工程序进行驱动控制的工作机械会发生干涉。

本发明就是鉴于上述情况而提出的,其目的在于,得到一种能够防止机器人和工作机械的干涉并进行向机器人的手动操作的数控装置。

为了解决上述的课题,达到目的,本发明是一种数控装置,其在控制进行被加工物的加工的工作机械和进行被加工物的输送的机器人的控制系统中使用,该数控装置具有:输入操作部,其接受向机器人的手动操作;以及控制运算部,其使用数控程序对工作机械进行控制,并且基于手动操作对机器人进行控制,控制运算部具有:可否手动判断部,其基于控制系统的状态,对机器人可否手动操作进行判断;以及移动数据发送部,其如果在由可否手动判断部许可机器人的手动操作的情况下进行手动操作,则基于手动操作而生成向对机器人的移动进行控制的控制装置的第1移动指令,发送至控制装置。

发明的效果

本发明所涉及的数控装置具有下述效果,即,能够防止机器人和工作机械的干涉并进行向机器人的手动操作。

附图说明

图1是表示具有实施方式1所涉及的数控装置的控制系统的结构的图。

图2是表示实施方式1所涉及的数控装置的结构例的图。

图3是表示实施方式1所涉及的控制系统所具有的2个手动手柄的结构例的图。

图4是表示通过实施方式1所涉及的数控装置进行的机器人可否手动的判定处理的顺序的流程图。

图5是用于说明实施方式1所涉及的数控装置使显示部进行显示的警报的图。

图6是用于说明实施方式1所涉及的数控装置使显示部进行显示的注意消息的图。

图7是表示实施方式2所涉及的数控装置的结构例的图。

图8是表示通过实施方式2所涉及的数控装置进行的向机器人坐标系的变换处理的处理顺序的流程图。

图9是表示实施方式3所涉及的数控装置的结构例的图。

图10是用于说明实施方式3所涉及的数控装置使显示部进行显示的接受逆行操作的画面的图。

图11是用于说明实施方式3所涉及的数控装置使机器人执行的逆行的路径的图。

图12是表示实施方式3所涉及的数控装置使机器人的动作逆行的处理的处理顺序的流程图。

图13是表示实施方式4所涉及的数控装置的结构例的图。

图14是表示实施方式4所涉及的数控装置使被手动操作的机器人的速度以特定的比例降低的处理的处理顺序的流程图。

图15是表示实施方式5所涉及的数控装置的结构例的图。

图16是表示实施方式5所涉及的数控装置所具有的机器学习装置的结构例的图。

图17是表示实施方式1所涉及的控制运算部的硬件结构例的图。

具体实施方式

下面,基于附图对本发明的实施方式所涉及的数控装置及数控方法详细地进行说明。此外,本发明不受这些实施方式限定。

实施方式1.

图1是表示具有实施方式1所涉及的数控装置的控制系统的结构的图。控制系统100是使用如G码程序这样的数控(NC:Numerical Control)程序对工作机械70进行控制,通过由用户进行的手动操作而对机器人60进行控制的系统。

控制系统100具有工作机械70、数控装置1X、机器人控制器50和机器人60。数控装置1X例如配置于工作机械70。实施方式1的数控装置1X在控制系统100中,对是否是可以许可向机器人60的手动操作的状态进行判定,在是可以许可手动操作的状态的情况下,接受从用户向机器人60的手动操作。

数控装置1X是对工作机械70发送指令的装置,该指令用于使用刀具对加工工件(被加工物)进行加工。数控装置1X是进行CNC(计算机数控:Computer Numerical Control)的装置,与输入操作部3X连接。

数控装置1X与工作机械70、输入操作部3X及机器人控制器50连接。另外,机器人控制器50与输入操作部3X及机器人60连接。数控装置1X和机器人控制器50例如经由LAN(Local Area Network)而连接。

在控制系统100中,数控装置1X在其与工作机械70及输入操作部3X之间执行通信,机器人控制器50在其与数控装置1X、输入操作部3X及机器人60之间执行通信。如上所述,在控制系统100中,数控装置1X经由机器人控制器50而与机器人60连接,数控装置1X经由机器人控制器50对机器人60进行控制。另外,输入操作部3X经由机器人控制器50对机器人60进行操作。在下面的说明中,在对通过数控装置1X实施的机器人60的控制进行说明时,有时省略经由机器人控制器50的内容。

输入操作部3X是用户用于对数控装置1X及机器人控制器50进行操作的装置。输入操作部3X具有输入输出单元51、紧急停止按钮52及操作面板53。输入操作部3X将与用户操作相对应的信号发送至数控装置1X,由此对数控装置1X进行操作。

操作面板53接受来自用户的操作,将与操作相对应的信号发送至输入输出单元51。紧急停止按钮52如果被用户按下,则将用于使机器人控制器50停止的信号发送至机器人控制器50,并且将用于使工作机械70停止的信号发送至输入输出单元51。输入输出单元51将从操作面板53发送来的信号及从紧急停止按钮52发送来的信号发送至数控装置1X。紧急停止按钮52及输入输出单元51可以配置于操作面板53。

机器人控制器50按照从数控装置1X发送来的指示对机器人60进行控制。另外,机器人控制器50如果从紧急停止按钮52发送来信号,则使机器人60的动作停止。

机器人60通过机器人手61对加工对象物即加工工件进行抓持,对抓持的加工工件进行输送。机器人60将加工前的加工工件装载于工作机械70,将加工后的加工工件从工作机械70卸载。机器人60的例子为操纵器。此外,机器人60也可以执行加工工件的输送以外的处理。

数控装置1X包含后面记述的控制运算部2X、显示部4和PLC操作部5而构成。数控装置1X使用NC程序对工作机械70及机器人60进行控制。另外,数控装置1X如果从输入操作部3X接收到信号,则使工作机械70执行与接收到的信号相对应的处理。另外,数控装置1X对工作机械70的状态、机器人60的状态等进行显示。

工作机械70是NC工作机械,一边通过大于或等于2轴的驱动轴使刀具和加工工件相对地移动,一边通过刀具对加工工件进行加工。工作机械70的坐标系即第1坐标系和机器人60的坐标系即第2坐标系是不同的坐标系。工作机械70通过正交坐标系被控制,例如在3轴方向使刀具或者加工工件移动。机器人60具有旋转轴,例如在大于或等于4轴的方向进行驱动。机器人60具有多个关节和多个臂,1个关节使1个臂在大于或等于1轴的方向移动。

图2是表示实施方式1所涉及的数控装置的结构例的图。数控装置1X具有控制运算部2X、显示部4和用于对PLC(可编程逻辑控制器:Programmable Logic Controller)36进行操作的机械操作面板等PLC操作部5。在图2中,输入操作部3X、工作机械70、机器人控制器50及机器人60与数控装置1X一起示出。

工作机械70具有对刀具及加工工件进行驱动的驱动部90。驱动部90的例子是一边使加工工件旋转、一边对刀具进行驱动的驱动机构。刀具的驱动方向例如是与X轴方向平行的方向和与Z轴方向平行的方向这2个方向。此外,轴向与装置结构有关,因此轴向并不限定于上述方向。

驱动部90具有:伺服电动机901、902,它们在数控装置1X上规定出的各轴向使刀具移动;以及检测器97、98,它们对伺服电动机901、902的位置及速度进行检测。另外,驱动部90具有基于来自数控装置1X的指令而对伺服电动机901、902进行控制的各轴向的伺服控制部。各轴向的伺服控制部基于来自检测器97、98的位置及速度,进行向伺服电动机901、902的反馈控制。

伺服控制部之中的X轴伺服控制部91通过对伺服电动机901进行控制,从而对刀具的X轴方向的动作进行控制,Z轴伺服控制部92通过对伺服电动机902进行控制,从而对刀具的Z轴方向的动作进行控制。此外,工作机械70可以具有大于或等于2个刀架。在该情况下,驱动部90针对每1个刀架,具有1组X轴伺服控制部91、Z轴伺服控制部92、伺服电动机901、902和检测器97、98。

另外,驱动部90具有:主轴电动机911,其使用于使加工工件旋转的主轴进行旋转;以及检测器211,其对主轴电动机911的位置及转速进行检测。由检测器211检测的转速与主轴电动机911的转速相对应。

另外,驱动部90具有基于来自数控装置1X的指令而对主轴电动机911进行控制的主轴伺服控制部200。主轴伺服控制部200基于来自检测器211的位置及转速,进行向主轴电动机911的反馈控制。

此外,在工作机械70将2个加工工件同时地加工的情况下,驱动部90具有2组主轴电动机911、检测器211和主轴伺服控制部200。在该情况下,工作机械70具有大于或等于2个刀架。

输入操作部3X是向控制运算部2X输入信息的单元。输入操作部3X由键盘、按钮或者鼠标等输入单元构成,接受由用户对数控装置1X的命令等的输入、由用户向机器人60的手动操作或者NC程序或者参数等而输入至控制运算部2X。

输入操作部3X具有手动手柄55、点动按钮57和轴选择开关59。轴选择开关59是选择对机器人60进行手动操作的轴的开关。轴选择开关59的例子是通过工作机械70中的坐标系对X轴进行指定的开关、对Y轴进行指定的开关、对Z轴进行指定的开关、对A轴进行指定的开关、对B轴进行指定的开关、对C轴进行指定的开关。轴选择开关59将表示被按下或者触摸的轴是哪个轴的轴信息发送至控制运算部2X。该轴信息经由存储部34X而发送至机器人手动操作部41X。

手动手柄55是用于对机器人60的轴向的移动量进行操作的手柄。手动手柄55将与操作相对应的移动量发送至控制运算部2X。该移动量经由存储部34X而发送至机器人手动操作部41X。

点动按钮57是用于对机器人60的轴向的移动量进行点动操作的按钮。点动按钮57将与操作相对应的移动量发送至控制运算部2X。该移动量经由存储部34X而发送至机器人手动操作部41X。

显示部4由液晶显示装置等显示单元构成,将通过控制运算部2X处理后的信息在显示画面进行显示。显示部4的例子是液晶触摸面板。在该情况下,输入操作部3X的一部分功能配置于显示部4。

控制部即控制运算部2X使用通过工作机械70的坐标系而规定出的NC程序对工作机械70进行控制。控制运算部2X具有输入控制部32、数据设定部33、存储部34X、画面处理部31、解析处理部37、控制信号处理部35、PLC 36、插补处理部38、状态判定部45、加减速处理部39、轴数据输出部40、机器人手动操作部41X和通信控制部44。此外,PLC 36也可以配置于控制运算部2X的外部。

存储部34X具有参数存储区域341、NC程序存储区域343、显示数据存储区域344及共享区域345。在参数存储区域341内对控制运算部2X的处理所使用的参数等进行储存。具体地说,在参数存储区域341内对用于使数控装置1X动作的控制参数、伺服参数及刀具数据进行储存。在NC程序存储区域343内对在加工工件的加工中使用的NC程序进行储存。

在显示数据存储区域344内,对由显示部4显示的画面显示数据进行储存。画面显示数据是用于在显示部4对信息进行显示的数据。另外,在存储部34X设置有对暂时地使用的数据进行存储的共享区域345。

画面处理部31进行使在显示数据存储区域344中储存的画面显示数据在显示部4进行显示的控制。输入控制部32接受从输入操作部3X输入的信息。数据设定部33使由输入控制部32接受的信息存储于存储部34X。即,由输入操作部3X接受的输入信息经由输入控制部32及数据设定部33而写入至存储部34X。

控制信号处理部35与PLC 36连接,从PLC 36接受使工作机械70的机械动作的中继等信号信息。控制信号处理部35将接受到的信号信息写入至存储部34X的共享区域345。这些信号信息在加工运转时由插补处理部38进行参照。另外,控制信号处理部35如果由解析处理部37将辅助指令输出至共享区域345,则将该辅助指令从共享区域345读出而发送至PLC 36。辅助指令是使数控轴即驱动轴进行动作的指令以外的指令。辅助指令的例子是M码或者T码。

PLC 36储存有对由PLC 36执行的机械动作进行了记述的梯形图程序。PLC 36如果接受到辅助指令即T码或者M码,则按照梯形图程序使工作机械70执行与辅助指令相对应的处理。PLC 36在执行与辅助指令相对应的处理后,为了执行NC程序的下一个程序块,将表示机械控制完成的完成信号发送至控制信号处理部35。

在控制运算部2X中,控制信号处理部35、解析处理部37、插补处理部38和机器人手动操作部41X经由存储部34X连接,经由存储部34X进行信息的写入及读出。在下面的说明中,在对控制信号处理部35、解析处理部37、插补处理部38和机器人手动操作部41X之间的信息的写入及读出进行说明时,有时省略了经由存储部34X的内容。

NC程序的选择是用户通过输入操作部3X输入NC程序编号而进行的。该NC程序编号经由输入控制部32及数据设定部33而写入至共享区域345。将机械操作面板等的循环开始作为触发,解析处理部37如果将选择出的NC程序编号从共享区域345读出,则将选择出的NC程序编号的NC程序从NC程序存储区域343内读出,针对NC程序的各程序块(各行)进行解析处理。解析处理部37例如对G码(与轴移动等相关的指令)、T码(刀具更换指令等)、S码(主轴电动机转速指令)及M码(机械动作指令)进行解析。

解析处理部37在解析后的行包含有M码或者T码的情况下,将解析结果经由共享区域345及控制信号处理部35发送至PLC 36。另外,解析处理部37在解析后的行包含有M码的情况下,将M码经由控制信号处理部35发送至PLC 36。PLC 36执行与M码相对应的机械控制。在执行完成的情况下,经由控制信号处理部35将表示M码完成的结果写入至存储部34X。插补处理部38对写入至存储部34X的执行结果进行参照。

另外,解析处理部37在包含有向工作机械70的G码的情况下,经由共享区域345将解析结果发送至插补处理部38。具体地说,解析处理部37生成与G码相对应的移动条件而发送至插补处理部38。另外,解析处理部37将通过S码指定出的主轴转速发送至插补处理部38。主轴转速是每单位时间的主轴的旋转次数。移动条件是用于使加工位置不断移动的刀具进给的条件,通过使刀架移动的速度、使刀架移动的位置等表示。例如,刀具的刀具进给是使刀具在X轴方向(+X方向)及Z轴方向(+Z方向)行进。

插补处理部38使用通过解析处理部37得到的解析结果之中的向工作机械70的指令而生成用于对工作机械70进行控制的数据,发送至加减速处理部39。加减速处理部39将用于对工作机械70进行控制的数据经由轴数据输出部40而输出至工作机械70。

状态判定部45从控制信号处理部35取得表示工作机械70的状态的状态数据,基于状态数据对由轴数据输出部40向工作机械70输出的数据进行修正。例如,在工作机械70的门打开的情况下,用户有可能侵入工作机械70,因此将由轴数据输出部40向工作机械70输出的数据修正为使伺服电动机901、902及主轴电动机911的驱动停止的数据。

通信控制部44与机器人手动操作部41X及机器人控制器50连接。通信控制部44将从机器人手动操作部41X发送来的数据发送至机器人控制器50,将从机器人控制器50发送来的数据发送至机器人手动操作部41X。通信控制部44向机器人控制器50发送的数据的例子是通过手动操作(向点动按钮57或者手动手柄55的操作)产生的轴的移动量。通信控制部44向机器人手动操作部41X发送的数据的例子是表示机器人60的状态的信息。在下面的说明中,在对机器人手动操作部41X和机器人控制器50之间的数据的收发进行说明时,有时省略经由通信控制部44的内容。

机器人手动操作部41X具有可否手动判断部412及移动数据发送部413。移动数据发送部413基于通过轴选择开关59选择出的轴信息和从点动按钮57或者手动手柄55发送来的移动量而生成移动指令(第1移动指令),将移动指令发送至机器人控制器50。由此,数控装置1X能够经由机器人控制器50对机器人60进行操作。

可否手动判断部412基于控制系统100的状态(下面,称为系统状态)而对机器人60可否手动操作进行判断。即,可否手动判断部412基于机器人60、数控装置1X及工作机械70中的至少1个状态,对机器人60可否手动操作进行判断。在可否的判断时参照数控装置1X具有的各种数据。

可否手动判断部412例如从通信控制部44取得机器人控制器50和数控装置1X之间的通信状态,在机器人60和数控装置1X之间的通信未连接的情况下,判断为不可手动操作。

机器人60的状态的例子是构成机器人60的部件的温度、与机器人控制器50之间的通信状态、是否处于紧急停止中、用户是否侵入至机器人60周边的侵入禁止区域等。

数控装置1X的状态的例子是与机器人控制器50之间的通信状态。可否手动判断部412在与机器人控制器50之间的通信状态为未连接状态的情况下,有时发生了某种异常,因此不使与机器人控制器50之间的通信连接而判断为不可手动操作。

另外,可否手动判断部412可以从状态判定部45取得表示工作机械70的状态的状态数据,基于状态数据对可否手动操作进行判断。工作机械70的状态的例子是包围工作机械70的框体的门的开闭状态。可否手动判断部412在工作机械70的门打开的情况下,用户有可能侵入工作机械70,因此判断为不可手动操作。另外,可否手动判断部412在工作机械70的门关闭的情况下,判断为可手动操作,但在显示部4对表示门关闭的注意消息进行显示。由此,操作者在工作机械70的内部进行机器人60的手动示教作业时,能够避免机器人60与工作机械70的门发生干涉。

另外,可否手动判断部412也可以基于控制系统100内的结构要素的状态,对机器人60可否手动操作进行判断。例如,可否手动判断部412可以基于由配置于控制系统100的如温度传感器、接触传感器这样的各种传感器检测出的检测值,对机器人60可否手动操作进行判断。在该情况下,在配置于控制系统100的任意的传感器示出异常的检测值(高于判定值的检测值)的情况下,有时发生了某种异常,因此可否手动判断部412判断为不可手动操作。

另外,可否手动判断部412可以从通信控制部44取得机器人60侧的警报,基于所取得的警报对可否手动操作进行判断。另外,可否手动判断部412也可以从控制信号处理部35取得门的开闭信号,基于门的开闭信号而对可否手动操作进行判断。另外,可否手动判断部412也可以基于与控制信号处理部35输入输出的PLC 36之间(梯形接口)的信号而对工作机械70是否处于自动运转中进行判断,在自动运转中的情况下,判断为不可手动操作。例如,可否手动判断部412可以在门打开的状态下且没有自动运转的情况下判断为可手动操作。

可否手动判断部412在判断为不可手动操作的情况下,可以通过画面处理部31使显示部4对警报进行显示,向用户通知不可手动操作的状态。另外,可否手动判断部412在判断为不可手动操作的情况下,不向机器人60发送移动指令。由此,机器人60即使被手动操作,也不进行与手动操作相对应的动作,因此能够将是不能手动操作的状态视觉性地通知给用户。

在这里,对手动手柄55进行说明。手动手柄55可以在对工作机械70的轴向的移动量进行操作时使用。即,用户可以通过1个手动手柄55进行机器人60的操作及工作机械70的操作。在该情况下,在操作面板53配置有用于对手动手柄55所涉及的操作对象进行切换的切换开关(未图示)。

控制信号处理部35对操作面板53确认切换开关的状态,判定手动手柄55是处于对工作机械70进行控制的状态,还是处于对机器人60进行控制的状态。控制信号处理部35基于切换开关的状态,对将针对手动手柄55的手柄操作是作为向机器人60的手柄操作处理,还是作为向工作机械70的手柄操作处理进行切换。

控制信号处理部35在将手柄操作作为向机器人60的手柄操作处理的情况下,将与手柄操作相对应的数据作为用于对机器人60进行操作的数据而储存于共享区域345。用于对机器人60进行操作的数据是手动手柄55针对手柄操作而输出的手柄脉冲发生器的数据,与使机器人60的特定部位移动的移动量相对应。

控制信号处理部35在将手柄操作作为向工作机械70的手柄操作处理的情况下,将与手柄操作相对应的数据作为用于对工作机械70进行操作的数据而储存于共享区域345。用于对工作机械70进行操作的数据是手动手柄55针对手柄操作而输出的手柄脉冲发生器的数据,与使工作机械70的特定部位移动的移动量相对应。

另外,可以在操作面板53取代手动手柄55而是配置有用于对机器人60进行操作的手动手柄和用于对工作机械70进行操作的手动手柄这2个手动手柄。

图3是表示实施方式1所涉及的控制系统所具有的2个手动手柄的结构例的图。在图3中,图示出数控装置1X、输入输出单元51、用于对机器人60进行操作的手动手柄55A和用于对工作机械70进行操作的手动手柄55B。

手动手柄55A、55B均与输入输出单元51连接。用户在对机器人60进行操作时,对手动手柄55A进行操作。由此,手动手柄55A将与操作相对应的机器人60的移动量发送至数控装置1X。另外,用户在对工作机械70进行操作时,对手动手柄55B进行操作。由此,手动手柄55B将与操作相对应的工作机械70的移动量发送至数控装置1X。

图4是表示通过实施方式1所涉及的数控装置进行的机器人可否手动的判定处理的顺序的流程图。数控装置1X如果开始动作,则可否手动判断部412基于系统状态,即机器人60、数控装置1X及工作机械70中的至少1个状态,对是否能够进行机器人60的手动操作进行判断(步骤S1)。

可否手动判断部412在判断为不能进行机器人60的手动操作的情况下(步骤S1,No),向画面处理部31发送对警报进行显示的指示。由此,画面处理部31使显示部4对警报进行显示(步骤S2)。

图5是用于说明实施方式1所涉及的数控装置使显示部显示的警报的图。在图5中,示出了显示部4所显示的显示画面的第1例即操作接受画面21。操作接受画面21是接受从用户向机器人60的操作的画面。

在操作接受画面21配置有向用户的通知区域11。通知区域11是对向用户的警报、消息等进行显示的区域。在操作接受画面21中,对表示不可手动操作的“由于机器人未连接,因此不可向机器人进行操作”等警报进行显示。

另外,操作接受画面21及后面记述的操作接受画面22、23对轴选择开关59及点动按钮57进行显示。从轴选择开关59中,用户触摸期望的轴的名称,由此针对机器人60而选择进行手动操作的轴。

可否手动判断部412在判断为机器人60可手动操作的情况下(步骤S1,Yes),对是否需要注意工作机械70进行判定(步骤S3)。在工作机械70存在问题而需要注意的情况下(步骤S3,Yes),可否手动判断部412向画面处理部31发送使注意消息进行显示的指示。由此,画面处理部31使显示部4对注意消息进行显示(步骤S4)。然后,移动数据发送部413执行后面记述的步骤S5的处理。

图6是用于说明实施方式1所涉及的数控装置使显示部进行显示的注意消息的图。在图6中,示出了显示部4所显示的显示画面的第2例即操作接受画面22。操作接受画面22是接受从用户向机器人60的操作的画面。

在操作接受画面22中,对表示需要注意工作机械70的状态的“门处于关闭,注意机器人手动操作”等注意消息进行显示。如上所述,数控装置1X在可手动操作的情况下,在需要注意的情况下也要显示注意消息。然后,移动数据发送部413在显示出注意消息的状态下,如果接受到从点动按钮57或者手动手柄55发送来的移动量,则基于移动量而生成移动指令,将移动指令经由机器人控制器50发送至机器人60(步骤S5)。

另一方面,在不需要注意工作机械70的情况下(步骤S3,No),移动数据发送部413接受从点动按钮57或者手动手柄55发送来的移动量。移动数据发送部413如果接受到从点动按钮57或者手动手柄55发送来的移动量,则基于移动量而生成移动指令,将移动指令经由机器人控制器50发送至机器人60(步骤S5)。此外,在后面记述的实施方式2及其以后的说明中,有时将上述的步骤S1至S5的处理即机器人60可否手动的判定处理称为步骤S10的处理。

如上所述,根据实施方式1,数控装置1X基于工作机械70、机器人60及数控装置1X中的至少1个状态而对机器人60可否手动操作进行判断。因此,能够防止机器人60和工作机械70的干涉并能够进行向机器人60的手动操作。

实施方式2.

接下来,使用图7及图8对本发明的实施方式2进行说明。在实施方式2中,在使用工作机械70的坐标系对机器人60进行了手动操作的情况下,在将工作机械70的坐标系变换为机器人60的坐标系后,向机器人60发送指令。

图7是表示实施方式2所涉及的数控装置的结构例的图。对图7的各结构要素之中的实现与实施方式1的数控装置1X同一功能的结构要素标注有同一标号,省略重复的说明。

数控装置1Y具有控制运算部2Y、显示部4和PLC操作部5。在图7中,将输入操作部3X、工作机械70、机器人控制器50及机器人60与数控装置1Y一起示出。在实施方式2中,输入操作部3X通过工作机械70的坐标系而接受手动操作,控制运算部2Y将工作机械70的坐标系的指令变换为机器人60的坐标系的指令。

控制运算部2Y与控制运算部2X相比较,取代存储部34X而具有存储部34Y,取代机器人手动操作部41X而具有机器人手动操作部41Y。

存储部34Y在存储部34X所具有的区域的基础上,还具有特定距离存储区域346及偏移坐标存储区域347。偏移坐标存储区域347是对表示工作机械70的坐标系(下面,称为NC坐标系)和机器人60的坐标系(下面,称为机器人坐标系)之间的关系的偏移坐标进行存储的区域。偏移坐标从输入操作部3X发送至输入控制部32,经由数据设定部33而储存于存储部34Y的偏移坐标存储区域347。偏移坐标是在将通过NC坐标系指定出的移动量变换为在机器人坐标系中使用的移动量时使用的。即,在机器人60被手动操作时,在通过NC坐标系由用户执行了操作的情况下,控制运算部2Y使用偏移坐标,将NC坐标系变换为机器人坐标系。

特定距离存储区域346是对特定距离进行存储的区域。特定距离示出了从工作机械70的机械原点算起的距离。从工作机械70的机械原点起与特定距离相比的内侧的范围是机器人60与工作机械70发生干涉的可能性高于判定值的范围。

机器人手动操作部41Y在机器人手动操作部41X所具有的结构要素的基础上,还具有坐标变换部411。坐标变换部411从存储部34Y取得通过轴选择开关59选择出的轴、从点动按钮57或者手动手柄55输入的移动量和偏移坐标。坐标变换部411基于偏移坐标将通过轴选择开关59选择出的轴和输入至点动按钮57或者手动手柄55的移动量变换为机器人坐标系中的轴(移动轴)及移动量。即,坐标变换部411基于偏移坐标将NC坐标系的轴及移动量变换为机器人坐标系的轴及移动量。移动数据发送部413将该变换后的轴及移动量发送至机器人控制器50,由此能够通过NC坐标系对机器人60进行手动操作。在没有设定偏移坐标的情况下,用户所选择出的轴及用户输入的移动量作为机器人坐标系的轴及移动量,由移动数据发送部413发送至机器人控制器50。

图8是表示通过实施方式2所涉及的数控装置进行的向机器人坐标系的变换处理的处理顺序的流程图。在这里,对向机器人60进行手动操作的情况下的通过数控装置1Y实施的坐标变换处理进行说明。数控装置1Y如果开始动作,则坐标变换部411从存储部34Y取得通过轴选择开关59选择出的轴(选择轴)的信息(步骤S21)。另外,坐标变换部411从存储部34Y取得输入至点动按钮57或者手动手柄55的移动量(步骤S22)。此外,坐标变换部411可以将步骤S21的处理和步骤S22的处理以任意的顺序执行。

坐标变换部411判定在偏移坐标存储区域347中是否储存有偏移坐标(步骤S23)。在偏移坐标存储区域347中存在偏移坐标的情况下(步骤S23,Yes),坐标变换部411将NC坐标系变换为机器人坐标系(步骤S24)。即,坐标变换部411将所取得的NC坐标系的轴及移动量变换为机器人坐标系的轴及移动量。然后,可否手动判断部412执行机器人60可否手动的判定处理(步骤S10)。即,可否手动判断部412执行图4中说明的步骤S1至S5的处理。

在偏移坐标存储区域347中没有偏移坐标的情况下(步骤S23,No),坐标变换部411不进行坐标变换,执行机器人60可否手动的判定处理(步骤S10)。即,移动数据发送部413如果在没有设定偏移坐标的情况下能够进行机器人60的手动操作,则将从存储部34Y取得的轴及移动量作为机器人坐标系的轴及移动量而发送至机器人控制器50。此外,坐标变换部411可以在步骤S23的处理后,执行步骤S21、S22的处理。此外,在后面记述的实施方式3及其以后的说明中,有时将上述的步骤S23、S24的处理即向机器人坐标系的变换处理称为步骤S30的处理。

数控装置1Y的可否手动判断部412在执行步骤S10的处理时,从特定距离存储区域346取得特定距离。可否手动判断部412从机器人控制器50取得机器人60的位置(坐标),通过坐标变换部411对坐标进行逆变换,由此取得NC坐标系中的机器人60的坐标。在这里的逆变换是将机器人坐标系的坐标变换为NC坐标系的处理。可否手动判断部412在从工作机械70的机械原点起特定距离的范围内即三维区域内,设定于机器人60与工作机械70发生干涉的可能性高于判定值的特定区域。可否手动判断部412在机器人60的NC坐标系中的坐标进入特定区域的情况下,将机器人60的手动操作设为不可。可否手动判断部412在门关闭的状态下且存在使机器人60进入工作机械70的特定区域的指令的情况下,由于门关闭而机器人60无法进入加工区域,因此将手动操作设为不可。

另外,可否手动判断部412在机器人60的NC坐标系中的坐标进入特定区域的情况下,可以通过画面处理部31使显示部4对警报进行显示,向用户通知是不可手动操作的状态。

如上所述,根据实施方式2,在使用工作机械70的坐标系对机器人60进行了手动操作的情况下,数控装置1Y在将工作机械70的坐标系变换为机器人60的坐标系后,向机器人60发送指令,因此用户能够容易地对机器人60进行手动操作。

实施方式3.

接下来,使用图9至图12对本发明的实施方式3进行说明。在实施方式3中,存储有通过手动操作进行的机器人60的动作,在存在逆行的指示的情况下,将机器人60的动作反向返回。

图9是表示实施方式3所涉及的数控装置的结构例的图。对图9的各结构要素之中的实现与实施方式1、2的数控装置1X、1Y同一功能的结构要素标注有同一标号,省略重复的说明。

数控装置1Z具有控制运算部2Z、显示部4和PLC操作部5。在图9中,将输入操作部3Z、工作机械70、机器人控制器50及机器人60与数控装置1Z一起示出。

输入操作部3Z具有手动手柄55、点动按钮57、轴选择开关59和逆行开关54。逆行开关54是用于将机器人60的动作反向返回的开关。逆行开关54在被按下的期间,将表示逆行开关54被按下的信息即逆行信息持续发送至控制运算部2Z。该逆行信息经由存储部34Z而发送至机器人手动操作部41Z。

控制运算部2Z与控制运算部2Y相比较,取代存储部34Y而具有存储部34Z,取代机器人手动操作部41Y而具有机器人手动操作部41Z。

存储部34Z在存储部34Y所具有的区域的基础上,还具有手动动作存储区域348及发送间隔存储区域349。手动动作存储区域348是在机器人60的手动操作进行期间,对发送至机器人控制器50的移动指令(下面,称为手动时指令)进行存储的区域。第1移动指令即手动时指令是移动数据发送部413基于移动数据而生成的,不断储存于手动动作存储区域348。在向机器人控制器50发送的移动指令变换为机器人坐标系的情况下,手动时指令通过机器人坐标系示出。

发送间隔存储区域349是对将手动时指令变换为反向的移动指令而发送至机器人控制器50时的发送周期(逆行发送间隔)进行存储的区域。

机器人手动操作部41Z在机器人手动操作部41Y所具有的结构要素的基础上,还具有变换部即反向变换部414。反向变换部414在存在向反向的移动指令的情况下,将手动动作存储区域348内的手动时指令变换为向反向的移动指令。

反向变换部414如果在接受逆行信息的期间接受到输入至点动按钮57或者手动手柄55的移动量,则在接受移动量的期间生成沿手动时指令使机器人60逆行的移动指令(第2移动指令)。反向变换部414如果在接受逆行信息的期间接受到大于0的移动量,则与移动量的大小无关地,生成沿手动时指令使机器人60逆行的移动指令。由反向变换部414生成的移动指令从移动数据发送部413发送至机器人控制器50。

此外,也可以将逆行开关54、反向变换部414、手动动作存储区域348及发送间隔存储区域349配置于数控装置1X。

图10是用于说明实施方式3所涉及的数控装置使显示部进行显示的接受逆行操作的画面的图。在图10中,示出了显示部4所显示的显示画面的第3例即操作接受画面23。操作接受画面23是接受从用户向机器人60的操作的画面。

操作接受画面23对逆行开关54进行显示。如果用户将逆行开关54按下或者触摸,则逆行信息发送至控制运算部2Z。

图11是用于说明实施方式3所涉及的数控装置使机器人执行的逆行的路径的图。如果不按下逆行开关54,而是对点动按钮57或者手动手柄55进行操作,则机器人60向正向移动。在图11中,示出了机器人手61向上方向移动(st1)、向右方向移动(st2)、向左方向移动(st3)、向下方向移动(st4)的情况。在对机器人60进行手动操作的期间(st1~st4),与移动数据发送部413向机器人控制器50发送的移动指令相对应的手动时指令由手动动作存储区域348进行存储。

然后,按下逆行开关54,如果在逆行开关54被按下的期间对点动按钮57或者手动手柄55进行操作,则机器人60反向地在移动而来的路径进行移动。即,机器人60沿向正向移动而来的路径在路径返回。在图11中,示出了机器人手61向上方向移动(st5)、向右方向移动的(st6)情况。st5的路径和st4的路径处于相同的直线上,方向相反。另外,st6的路径和st3的路径处于相同的直线上,方向相反。

反向变换部414在逆行开关54被按下的状态下点动按钮57被操作的期间,周期性地从手动动作存储区域348对手动时指令进行调用。而且,反向变换部414将手动时指令变换为向反向的移动指令。移动数据发送部413通过将反向的移动指令发送至机器人控制器50,从而实现机器人60向反向的移动。

另外,在逆行开关54被按下的状态下手动手柄55被操作的情况下,反向变换部414在每次从手动手柄55接受到脉冲的输入时,将手动时指令变换为向反向的移动指令。

此外,在点动按钮57被按下时将手动时指令变换为反向而向机器人控制器50发送的周期被预先设定为逆行发送间隔。反向变换部414及移动数据发送部413按照逆行发送间隔而执行手动时指令向反向的变换和向机器人控制器50的发送。

用户通过在对移动方向的轴进行选择后对点动按钮57或者手动手柄55进行操作,从而能够使机器人60在由实线表示的正向(st1~st4)移动。此外,用户有时为了机器人60的位置修正而沿原来的路径使机器人60移动,以使得不与其他物体发生干涉。在该情况下,用户如果一边再次通过轴选择开关59对要动作的轴进行选择、一边对机器人60进行操作,则有时由于操作错误而机器人60与其他物体发生干涉。在实施方式3中,用户只要在将逆行开关54按下的状态下对点动按钮57或者手动手柄55进行操作即可,因此不考虑轴的选择及移动量,就能够容易地使机器人60在由虚线表示的反向(st5、st6)进行移动。由此,不使机器人60与其他物体发生干涉,就能够容易地修正机器人60的位置。

图12是表示实施方式3所涉及的数控装置使机器人的动作逆行的处理的处理顺序的流程图。数控装置1Z如果开始动作,则反向变换部414对逆行开关54是否被按下进行判定(步骤S41)。

在逆行开关54没有被按下的情况下(步骤S41,No),坐标变换部411从存储部34Z取得通过轴选择开关59选择出的轴信息(步骤S42)。另外,坐标变换部411从存储部34Z取得输入至点动按钮57或者手动手柄55的移动量(步骤S43)。此外,坐标变换部411可以将步骤S42的处理和步骤S43的处理以任意的顺序执行。

然后,坐标变换部411执行向机器人坐标系的变换处理(步骤S30)。即,坐标变换部411执行图8中说明的步骤S23、S24的处理。并且,可否手动判断部412执行机器人60可否手动的判定处理(步骤S10)。

在逆行开关54被按下的情况下(步骤S41,Yes),反向变换部414取得在手动动作存储区域348中存储的手动时指令(步骤S44)。反向变换部414将手动动作存储区域348内的手动时指令变换为向反向的移动指令(步骤S45)。然后,可否手动判断部412执行机器人60可否手动的判定处理(步骤S10)。

此外,反向变换部414可以基于手动手柄55的旋转方向,对使机器人60向移动路径的正向移动的处理和向反向移动的处理进行切换。在该情况下,反向变换部414通过存储有手动时指令的移动路径,按照手动时指令执行向正向的移动及向反向的移动。另一方面,移动数据发送部413在执行了没有存储手动时指令的新的操作的情况下,使机器人60执行与向点动按钮57或者手动手柄55的操作相对应的移动。

另外,在实施方式3中,说明了进行仅针对正交坐标系的1轴的手动操作的情况,但也可以是以三维坐标空间的终点为目标而多个轴同时地移动的手动操作。

如上所述,根据实施方式3,数控装置1Z存储有手动操作所涉及的机器人60的动作,在存在逆行的指示的情况下使机器人60的动作反向返回,因此用户能够容易地修正机器人60的位置。

实施方式4.

接下来,使用图13及图14对本发明的实施方式4进行说明。在实施方式4中,使用倍率开关对手动操作时的机器人60的动作速度进行调整。

图13是表示实施方式4所涉及的数控装置的结构例的图。对图13的各结构要素之中的实现与实施方式1至3的数控装置1X~1Z同一功能的结构要素标注有同一标号,省略重复的说明。

数控装置1P具有控制运算部2P、显示部4和PLC操作部5。在图13中,输入操作部3P、工作机械70、机器人控制器50及机器人60与数控装置1P一起示出。

输入操作部3P具有手动手柄55、点动按钮57、轴选择开关59、逆行开关54和倍率开关56。倍率开关56是用于将工作机械70及机器人60的速度乘以倍率(override)的开关。下面,对倍率开关56使机器人60的速度降低的情况进行说明。

倍率开关56在使用点动按钮57或者手动手柄55进行向机器人60的手动操作时,使机器人60的速度以特定的比例降低。倍率开关56将通过用户操作所设定的设定值发送至控制运算部2P。该设定值与使机器人60的速度降低的比率相对应。从倍率开关56发送来的设定值储存于存储部34Z。

控制运算部2P与控制运算部2Z相比较,取代机器人手动操作部41Z而具有机器人手动操作部41P。机器人手动操作部41P在机器人手动操作部41Z所具有的结构要素的基础上,还具有倍率控制部415。

倍率控制部415从存储部34Z取得设定值,将设定值变换为使机器人60的速度降低的比率。移动数据发送部413将被手动操作的机器人60的速度数据乘以比率,由此生成使速度降低后的速度数据。

此外,也可以将倍率开关56及倍率控制部415配置于数控装置1X或者数控装置1Y。

图14是表示实施方式4所涉及的数控装置使被手动操作的机器人的速度以特定的比例降低的处理的处理顺序的流程图。数控装置1P如果开始动作,则坐标变换部411从存储部34Z取得通过轴选择开关59选择出的轴信息(步骤S61)。另外,坐标变换部411从存储部34Z取得输入至点动按钮57或者手动手柄55的移动量(步骤S62)。此外,坐标变换部411可以将步骤S61的处理和步骤S62的处理以任意的顺序执行。然后,坐标变换部411执行向机器人坐标系的变换处理(步骤S30)。

在机器人60的动作过快的情况下,用户能够通过倍率开关56而降低机器人60的速度。倍率控制部415经由存储部34Z从倍率开关56取得向倍率开关56的操作状态,即,对倍率开关56设定的值(步骤S63)。倍率控制部415将对倍率开关56设定的值变换为与机器人60的速度相乘的比率(倍率)(步骤S64)。

倍率控制部415将变换后的比率(%)发送至移动数据发送部413。另外,移动数据发送部413从存储部34Z取得表示机器人60的移动速度的速度数据。

移动数据发送部413将速度数据乘以比率(步骤S65)。例如,在比率为10%的情况下,移动数据发送部413生成机器人60的速度成为十分之一的速度数据。移动数据发送部413将轴信息、移动量、生成的速度数据经由机器人控制器50发送至机器人60(步骤S66)。

由此,用户能够通过倍率开关56对手动操作时的机器人60的动作速度进行控制,因此能够通过用户的判断而容易避免机器人60与工作机械70等发生干涉。此外,用户通过对机器人控制器50进行操作也能够使机器人60的速度降低,但在实施方式4中,用户即使不移动至机器人控制器50,也能够使机器人60的速度降低,因此用户的作业效率提高。

如上所述,根据实施方式4,数控装置1P使用倍率开关56而使手动操作时的机器人60的动作速度降低,因此用户能够容易地避免机器人60与工作机械70等发生干涉。

实施方式5.

接下来,使用图15对本发明的实施方式5进行说明。在实施方式5中,基于对控制系统100的状态进行判定时的判定值和直至在控制系统100发生错误为止的时间之间的关系,对可否手动操作进行学习。

图15是表示实施方式5所涉及的数控装置的结构例的图。图16是表示实施方式5所涉及的数控装置所具有的机器学习装置的结构例的图。对图15、16的各结构要素之中的实现与实施方式1的数控装置1X同一功能的结构要素标注有同一标号,省略重复的说明。

数控装置1Q具有控制运算部2Q、显示部4和PLC操作部5。在图15中,输入操作部3X、工作机械70、机器人控制器50及机器人60与数控装置1Q一起示出。

控制运算部2Q与控制运算部2X相比较,取代机器人手动操作部41X而具有机器人手动操作部41Q。机器人手动操作部41Q与机器人手动操作部41X相比较,取代可否手动判断部412而具有可否手动判断部412Q。可否手动判断部412Q在可否手动判断部412的功能的基础上,还具有对从手动操作开始至发生错误为止的时间进行测量的功能。

另外,控制运算部2Q在控制运算部2X所具有的结构要素的基础上还具有机器学习装置80。机器学习装置80对在判定可否手动操作时使用的适当的判定值进行学习,可否手动判断部412Q使用通过机器学习装置80学习到的判定值对可否手动操作进行判定。可否手动判断部412Q在不可手动操作的情况下通知给用户,并且将手动操作设为无效。

数控装置1Q的机器学习装置80以外的各结构要素将表示控制系统100的状态的状态信息发送至机器学习装置80。状态信息的例子是表示机器人60的状态的机器人状态信息、表示工作机械70的状态的NC状态信息、表示PLC 36的状态的PLC状态信息等。

可否手动判断部412Q例如从机器人手动操作部41Q取得机器人状态信息。另外,可否手动判断部412Q例如从共享区域345取得NC状态信息。另外,可否手动判断部412Q例如从控制信号处理部35取得PLC状态信息。

机器学习装置80从可否手动判断部412Q取得机器人状态信息、NC状态信息及PLC状态信息。此外,机器学习装置80也可以从机器人手动操作部41Q取得机器人状态信息,从共享区域345取得NC状态信息,从控制信号处理部35取得PLC状态信息。状态信息可以包含除了机器人状态信息、NC状态信息及PLC状态信息以外的信息。

可否手动判断部412Q基于状态信息,对在由用户进行的机器人60的手动操作中是否发生了错误进行判断。错误设为是在机器人60与工作机械70碰撞时或者与工作机械70碰撞的可能性高于特定的基准值的情况下发生的。即,可否手动判断部412Q在控制系统100中,在发生将机器人60的手动操作设为不可的状态的情况下,判断为发生了错误。可否手动判断部412Q将针对每个错误的判断项目的判定值和错误的判断项目所示的值(表示状态的值)进行比较,由此判断针对每个错误的判断项目是否发生了错误。针对每个错误的判断项目的判定值储存于存储部34X。另外,可否手动判断部412Q对从手动操作开始至发生错误为止的时间(下面,称为错误发生时间)进行测量。

机器学习装置80基于对控制系统100的状态进行判定时的判定值和控制系统100中的错误发生时间之间的关系,不断学习适当的判定值。由此,可否手动判断部412Q所存储的判定值通过由机器学习装置80进行的学习而不断被擦写。如上所述,判定值在可否手动操作判定时使用,因此机器学习装置80对可否手动操作进行学习。

可否手动判断部412Q在错误发生时,向画面处理部31通知警报。因此,判定值可以说为是否使警报发生的判定基准。此外,判定值并不限定于由存储部34X存储的情况,也可以由机器学习装置80存储。

错误的判断项目的例子是机器人手61的运转区域是否处于特定的范围内。该运转区域与由用户进行的向机器人60的手动操作相应地变化。运转区域有时通过机器人60的特定位置(开始位置)的机器人手61的距离及移动方向而决定,因此相对于该距离的判定值成为运转区域的判定值。在机器人手61的运转区域过宽的情况下,机器人手61容易与工作机械70碰撞,存在直至发生警报为止的时间变长倾向。因此,如果判定值变得过大,则直至使警报发生为止的时间变长。另一方面,如果判定值过小,则机器人手61的运转区域窄,不方便。因此,不使直至发生警报为止的时间过短,能够确保机器人手61的运转区域的判定值是适当的判定值。另外,根据机器人60的移动方向而不发生错误(例如,不与工作机械70发生干涉),因此不发生错误的移动方向的范围是适当的判定值。另外,工作机械70的状态(不处于自动运转中(加工中),且工作机械70的门打开等状态)是机器人能够移动的适当的判定值。因此,机器学习装置80以错误发生时间以适当的时间(下面,称为适当时间)发生的方式对判定值进行设定。适当时间是从手动操作开始起的经过时间,例如可以是10秒后至30秒后等的期间,也可以是15秒后这样的特定的定时。在适当时间且适当的移动方向且适当的工作机械70的状态下,容易发生错误。由此,能够确保机器人手61的运转区域,并在机器人手61的手动操作时避免机器人手61的碰撞。机器学习装置80不断对各种适当的判定值进行学习。此外,刀具或者加工工件的位置根据NC程序的进展状况而变化,因此可以针对NC程序的每个进展状况而设定判定值。另外,在这里对基于错误发生时间而决定判定值的情况进行了说明,但也可以基于移动量而决定判定值。

可否手动判断部412Q如果判断为发生了错误,则对各种状态进行测量或者计算而发送至机器学习装置80。

机器学习装置80具有状态观测部71和学习部72。状态观测部71从可否手动判断部412Q取得当前使用中的状态。状态观测部71在发生了错误的情况下,对各种状态进行观测而作为状态变量81,发送至学习部72。可否手动判断部412Q在用户对机器人60进行手动操作中,针对错误的每次发生而取得各种状态。因此,状态观测部71针对错误的每次发生取得各种状态而将状态变量81发送至学习部72。

学习部72所使用的学习算法可以是任意的学习算法。在这里,对在学习算法应用强化学习(Reinforcement Learning)的情况进行说明。强化学习是某环境内的智能体(行动主体)对状态变量81所示的当前的状态进行观测,决定应采取的行动83。智能体对行动83进行选择而从环境得到回报82,经过一系列的行动83而对回报82得到最多的对策进行学习。作为强化学习的代表性的方法,已知Q学习(Q-learning)及TD学习(TD-learning)。例如,在Q学习的情况下,行动价值函数Q(s,a)的通常的更新式(行动价值表)通过式(1)表示。

【式1】

在式(1)中,st表示时刻t的环境,at表示时刻t的行动。通过行动at,环境变为st+1。rt+1表示通过其环境的变化而赋予的回报82,γ表示折扣率,α表示学习系数。在应用Q学习的情况下,与机器人60的手动操作相对应的判定值成为行动at

通过式(1)表示的更新式是在时刻t+1的最好的行动a的行动价值如果大于在时刻t执行的行动a的行动价值Q,则增大行动价值Q,在相反的情况下,减小行动价值Q。换言之,对行动价值函数Q(s,a)进行更新,以使得时刻t的行动a的行动价值Q接近时刻t+1的最好的行动价值。由此,某环境中的最好的行动价值依次传播为以前的环境中的行动价值。

学习部72具有回报计算部73和函数更新部74。回报计算部73基于状态变量81即错误发生时间及判定值对回报82进行计算。回报计算部73如果用户对机器人60进行手动操作时的例如错误发生时间和适当时间的差(下面,称为时间差)小于至此为止的时间差,则使回报82增大(例如赋予“1”的回报)。回报计算部73例如将时间差为0时将回报82设为最大回报。另一方面,回报计算部73如果用户对机器人60进行手动操作时的时间差大于至此为止的时间差,则使回报82减小(例如赋予“-1”的回报)。另外,在错误没有发生的移动方向的情况下赋予最大回报(例如赋予“1”的回报)。另外,在工作机械70的状态不是自动运转且工作机械70的门打开的状态的情况下赋予最大回报(例如赋予“1”的回报)。

函数更新部74按照由回报计算部73计算的回报82,对用于决定行动83(下一次的判定值)的函数进行更新。例如在Q学习的情况下,函数更新部74将通过式(1)表示的行动价值函数Q(st,at)作为用于决定下一次的判定值的函数使用。函数更新部74使用更新后的行动价值函数Q(st,at)对行动83进行计算。函数更新部74将计算出的行动83发送至可否手动判断部412Q。

可否手动判断部412Q使用由机器学习装置80计算出的行动83即判定值,判定可否向机器人60手动操作。可否手动判断部412Q如果运转区域大于判定值(在回报小的情况下),则使显示部4对警报进行显示,使机器人60的手动操作停止。

此外,机器学习装置80也可以配置于控制运算部2Q的外部。另外,在实施方式5中,对利用强化学习进行机器学习的情况进行了说明,但也可以按照其他公知的方法,例如神经网络、遗传编程、功能逻辑编程、支持向量机等执行机器学习。

另外,状态信息可以是状态的履历。例如,可以将错误的判断项目作为由传感器检测出的信息的履历。在该情况下,例如,将信息通过时间积分得到的值是状态信息。另外,机器学习装置80可以配置于数控装置1Y、1Z、1P。

如上所述,根据实施方式5,机器学习装置80基于适当的状态对在机器人60可否手动操作的判定时使用的判定值进行学习,因此数控装置1Q能够适当地对机器人60可否手动操作进行判断。

此外,也可以将实施方式1至5中说明的内容组合。例如,可以将实施方式3中说明的逆行开关54、反向变换部414、手动动作存储区域348及发送间隔存储区域349配置于数控装置1Q。另外,也可以将实施方式4中说明的倍率开关56及倍率控制部415配置于数控装置1Q。

在这里,对数控装置1X~1Z、1P、1Q所具有的控制运算部2X~2Z、2P、2Q的硬件结构进行说明。此外,控制运算部2X~2Z、2P、2Q具有相同的硬件结构,因此在这里对控制运算部2X的硬件结构进行说明。

图17是表示实施方式1所涉及的控制运算部的硬件结构例的图。控制运算部2X能够通过图17所示的处理器301、存储器302及接口电路303而实现。处理器301、存储器302及接口电路303能够通过总线310而彼此进行数据的收发。

处理器301的例子是CPU(也称为Central Processing Unit、中央处理装置、处理装置、运算装置、微处理器、微型计算机、处理器、DSP(Digital Signal Processor))或者系统LSI(Large Scale Integration)。存储器302的例子是RAM(Random Access Memory)或者ROM(Read Only Memory)。

存储部34X由存储器302实现。输入控制部32的一部分功能、画面处理部31的一部分功能、通信控制部44的一部分功能、轴数据输出部40的一部分功能由接口电路303实现。

控制运算部2X是处理器301将存储器302所存储的用于执行控制运算部2X的动作的程序读出并执行而实现的。另外,该程序可以说使计算机执行控制运算部2X的顺序或者方法。存储器302还作为处理器301执行各种处理时的暂时存储器被使用。

由处理器301执行的程序可以是具有能够由计算机执行的、包含用于进行数据处理的多个命令在内的计算机可读取且非易失性的(non-transitory)记录介质的计算机程序产品。由处理器301执行的程序使计算机执行由多个命令进行数据处理。

另外,也可以将控制运算部2X通过专用的硬件而实现。另外,关于控制运算部2X的功能,也可以将一部分通过专用的硬件而实现,将一部分通过软件或者固件而实现。

以上的实施方式所示的结构,表示本发明的内容的一个例子,也能够与其他公知技术进行组合,在不脱离本发明的主旨的范围,也能够对结构的一部分进行省略、变更。

标号的说明

1P、1Q、1X~1Z数控装置,2P、2Q、2X~2Z控制运算部,3P、3X、3Z输入操作部,4显示部,5PLC操作部,11通知区域,21~23操作接受画面,31画面处理部,32输入控制部,33数据设定部,34X~34Z存储部,35控制信号处理部,37解析处理部,38插补处理部,39加减速处理部,40轴数据输出部,41P、41Q、41X~41Z机器人手动操作部,44通信控制部,45状态判定部,50机器人控制器,51输入输出单元,52紧急停止按钮,53操作面板,54逆行开关,55、55A、55B手动手柄,56倍率开关,57点动按钮,59轴选择开关,60机器人,61机器人手,70工作机械,71状态观测部,72学习部,73回报计算部,74函数更新部,80机器学习装置,81状态变量,82回报,83行动,90驱动部,100控制系统,301处理器,302存储器,303接口电路,310总线,341参数存储区域,343NC程序存储区域,344显示数据存储区域,345共享区域,346特定距离存储区域,347偏移坐标存储区域,348手动动作存储区域,349发送间隔存储区域,411坐标变换部,412、412Q可否手动判断部,413移动数据发送部,414反向变换部,415倍率控制部。

34页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:数控装置及机器学习装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类