机器人技术领域
本发明涉及一种在外部机器与控制器之间进行通信的机器人。
背景技术
有使用各种各样的外部机器,对工件(work)进行外观检查、位置修正、外观拍摄等多
种作业的机器人。例如,在这种机器人中,进行工件的位置修正时,是通过在机器人上安装
相机进行图像拍摄来检测工件的位置。然后,根据所检测的工件的位置进行工件的位置的修
正。在相机内部设置有图像处理装置,图像处理装置基于由机器人的控制器(controller)输出
的拍摄指令进行拍摄,并将其结果输出至控制器。
当可以对这种机器人安装多种相机时,用户或设备运营商可根据用途或成本,选择购买
市售的产品来加以安装。这时,会产生相机的图像处理装置使用与机器人方面的通信协议
(communication protocol)不同的通信协议之类的情况。
相机的图像处理装置的通信协议也存在因各个相机制造商而不同,或者即使制造商相同
也因型号而不同的情况。因此,可以在机器人方面预先准备与主要的制造商或与相机相匹配
的通信协议,然而难以在机器人方面预先准备与所有相机相匹配的通信协议。
[现有技术文献]
[专利文献]
[专利文献1]日本专利特开2007-193846号公报
发明内容
[发明所要解决的问题]
但是,因相机而不同的是图像处理装置的通信协议,而并非通信内容改变。因此,只要
能够在机器人方面准备与相机相对应的通信协议,便可进行机器人与相机之间的通信。以上
是对相机进行描述,但是外部机器并不限于相机,在传感器等的情况下也会产生同样的问题。
本发明是为了解决如上所述的现有技术的问题而提出的,提供一种通过用户新制作与所
使用的外部机器相对应的驱动器(driver)来使用,而使得可以利用各种外部机器的高通用性的
机器人。
[解决问题的技术手段]
为了达成所述目的,本发明的机器人是在各作业点执行一连串作业的机器人,包括:外
部机器,通过所述一连串作业对各作业点执行本作业;控制器,根据控制数据进行控制,所
述控制数据是将囊括所述外部机器的每个所述作业点的所述一连串作业的结构化点块(point
block)排列而成;外部机器用驱动器,进行在所述外部机器与所述控制器之间收发的数据的
形式的转换;驱动器生成部,进行表示所述外部机器用驱动器中的所述数据的形式的转换内
容的驱动器数据的制作;以及驱动器选择部件,配合所述外部机器,进行外部机器用驱动器
中所使用的驱动器数据的选择。
也可以是所述一连串作业包括通过所述外部机器而进行的本作业、所述本作业前后的事
前作业及事后作业、以及对用于所述本作业的多个点(point)的定位,构成所述控制数据的
结构化点块是将表示所述一连串作业中所含的作业及移动的内容的数据与所述驱动器数据加
以关联而存储。
也可以是所述结构化点块是将各点语句(point statement)排列而成,所述各点语句是表
示在一个所述一连串作业的过程中进行定位的所有点及向所述点移动前、移动中或移动后的
作业的内容的数据,所述各点语句是将表示所述一个一连串作业中所含的作业及移动的内容
的数据与所述驱动器数据加以关联而存储。
也可以包括:外部机器用驱动器存储部件,对所述驱动器数据附加用于识别所述数据的
识别符(identifier)而加以存储;并且在所述控制数据中,通过所述识别符来指定要使用的驱
动器数据。
所述驱动器数据也可以包括用于使所述外部机器执行所述作业的顺序、以及使所述外部
机器执行作业的作业命令(command)。
所述驱动器数据也可以包括将从所述外部机器发送的数据提交至所述控制器时所使用的
变数。
也可以是所述驱动器数据包括表示所述外部机器的类别的外部机器类别,并且所述机器
人包括:转换系数计算部,进行用于将以所述外部机器类别表示的外部机器中的坐标系转换
为所述控制数据中的坐标系的转换系数的计算。
也可以是所述控制数据包括所述作业点的位置及点修正,所述点修正是用于计算与作为
作业对象的工件的相对于配置位置的偏离量相对应的修正量的条件,所述点修正设为对所述
工件已适当地配置于所述配置位置时附加至工件的基准工件的坐标、所述外部机器类别以及
所述转换系数。
也可以包括进行赋予至用户的账户(account)的认证的用户认证部件,所述驱动器生成
部根据来自具有所述账户的用户的输入进行驱动器数据的制作。
也可以是所述账户由多种账户所构成,对各个账户分别赋予不同级别的权限。
所述外部机器也可以设为传感器或相机。
附图说明
图1是表示本实施方式的机器人的构成的立体图。
图2是表示本实施方式的控制器的构成的框图。
图3是表示本实施方式的控制器的功能的功能框图。
图4是表示本实施方式的驱动器生成部的构成的框图。
图5是表示本实施方式的驱动器数据的数据结构的一例的图。
图6是表示本实施方式的控制数据的构成的框图。
图7是表示本实施方式的点修正的数据结构的一例的图。
图8是表示本实施方式的工件的构成的俯视图。
图9是表示本实施方式的驱动器数据的制作工序的流程图。
图10是表示本实施方式的点修正中的转换系数的设定工序的流程图。
图11是表示本实施方式的点修正中的基准标志位置的设定工序的流程图。
图12是表示本实施方式的控制数据中的点语句的一例的图。
图13是表示本实施方式中的显示部的显示例的图。
图14是表示本实施方式的控制数据的第1变形例的图。
图15是表示本实施方式的控制数据的第2变形例的图。
图16是表示本实施方式的控制数据的第3变形例的图。
[符号的说明]
1:机器人
2:外部机器
2a:相机
2b:涂布装置
3:移动部件
4:控制器
6:结构化点块
7:点语句
8:基准标志
8a:基准标志
8b:基准标志
9:表单
31:X线性滑块
32:Y线性滑块
33:Z线性滑块
41:CPU
42:存贮器
42a:控制数据存储部
42b:驱动器数据存储部
42c:账户存储部
42d:命令存储部
43:记忆体
44:外部机器用驱动器
45:马达驱动器
46:操作部件
51:驱动器生成部
51a:账户登录部
51b:账户认证部
51c:项目设定部
51d:驱动器登录部
52:控制数据生成部
53:驱动器选择部
54:控制数据执行部
71:点编号
72:点类别选项
73:点坐标
74:点速度
75:作业类别选项
76:作业编号
77:点修正
78:外部机器类别
331:臂
332:外部机器安装板
333:设置部
421:控制程序
422:控制数据
423:驱动器数据
424:用户ID与密码
425:控制命令
461:示教器
462:显示部
R:方向
W:工件
S01~S04、S11~S19、S21~S28:步骤
具体实施方式
以下,一边参照附图,一边对本发明的机器人的实施方式进行详细说明。在实施方式中,
省略重复的附图说明。
[1.第1实施方式]
(1)整体构成
图1是表示本实施方式的机器人的构成的立体图。如图1所示,机器人1包括:外部机
器2;移动部件3,用于移动外部机器2;以及控制器4,用于对外部机器2及移动部件3进
行控制。机器人1对移动部件3及外部机器2进行控制,使外部机器2位于所需的位置而进
行作业。
外部机器2是基于来自外部的控制信号进行规定的动作的机器。外部机器2不仅基于来
自外部的信号进行各部的动作,而且基于来自外部的信号进行外部机器2的功能的控制,并
将其控制结果输出至外部。即,外部机器2根据来自控制器4的信号执行规定的作业,并将
其控制结果输出至控制器4。作为外部机器2,使用相机、传感器等。所述外部机器2是装配
于移动部件3。外部机器2相对于移动部件3的装配部而固定。固定是通过螺丝或螺钉等来进
行,且外部机器2可拆卸自如。
移动部件3使外部机器2沿X轴方向、Y轴方向及Z轴方向移动。然后,移动部件3使
外部机器2位于所指定的点。X轴方向是与水平面平行的一个轴方向。Y轴方向是与水平面
平行并且与X轴正交的另一个轴方向。Z轴方向是高度方向。所述移动部件3包括:X线性
滑块(linear slider)31,使外部机器2沿X轴方向移动;Y线性滑块32,使外部机器2沿Y
轴方向移动;以及Z线性滑块33,使外部机器2沿Z轴方向移动。
X线性滑块31是在沿X轴方向延伸设置的轨道(rail)上滑动设置Y线性滑块32,并使
Y线性滑块32正交地固定在沿X轴方向移行的环形带上,利用X轴马达使环形带移行,使Y
线性滑块32沿X轴移动。
Y线性滑块32是在沿Y轴方向延伸设置的轨道上滑动设置Z线性滑块33,并将Z线性
滑块33固定在沿Y轴方向移行的环形带上,利用Y轴马达使环形带移行,使Z线性滑块33
沿Y轴移动。作为X线性滑块31及Y线性滑块32的传动机构,除了环形带以外,还可列举
气缸(cylinder)、导螺杆(lead screw)等各种致动器(actuator)。
Z线性滑块33包括具有沿着Z轴的轴的臂(arm)331,在所述臂331(R轴)的前端装
配有外部机器安装板332。臂331通过Z轴马达而沿Z轴方向移动。通过所述Z线性滑块33,
外部机器安装板332在Z轴方向上移动。此外,Z线性滑块33包括使臂331以臂331的中心
为轴沿R方向旋转的R轴旋转机构。通过R轴旋转机构,安装于臂331上的外部机器安装板
332以臂331的中心为轴进行旋转运动。在外部机器安装板332上,设置有多个用于安装外部
机器2的设置部333。机器人1可以在所述设置部333上安装各种外部机器2,在图1中,设
置有相机2a及涂布装置2b。
(2)控制器的构成
控制器4是所谓的计算机(computer)。图2是表示控制器4的构成的框图。控制器4如图
2所示,包括:中央处理器(Central Processing Unit,CPU)41,按照控制程序421的构成要
素即控制数据422来进行运算处理及输出指令信号;存贮器(storage)42,存储控制程序421、
控制数据422、驱动器数据423、赋予至生成驱动器数据423的用户的用户标识(identity,ID)
与密码424、以及控制命令425;记忆体(memory)43,展开控制程序421,并临时存储CPU
41的运算结果;外部机器用驱动器44,将CPU 41送出的指令信号转换为外部机器2可识别
的形式,以及将从外部机器2输出的数据的形式转换为可用于CPU 41中的运算处理的形式;
以及马达驱动器45,按照CPU 41送出的指令信号将电力脉冲供给至各马达。控制器4包括
作为周边机器的鼠标(mouse)、键盘(keyboard)及示教器(teaching pendant)461、以及液
晶显示器等显示部462等操作部件46。
图3表示控制器4的功能框图。所述控制器4通过执行存贮器42中所存储的控制程序421,
而在控制器4内实现驱动器生成部51、控制数据生成部52、驱动器选择部53以及控制数据
执行部54。
(驱动器生成部)
驱动器生成部51按照来自操作部件46的输入,进行外部机器用驱动器44中所使用的驱
动器数据423的制作。经驱动器生成部51制作的驱动器数据423被存储于存贮器42内的驱
动器数据存储部42b。驱动器生成部51如图4所示,包括:账户登录部51a,对用户给予驱
动器数据423的制作的权限;账户认证部51b,在制作驱动器数据423时进行用户的账户的确
认;项目设定部51c,进行驱动器数据423的各项目的设定;以及驱动器登录部51d,用于使
所制作的驱动器数据423登录至存贮器42内的驱动器数据存储部42b。
账户登录部51a对制作驱动器数据423的用户进行制作驱动器数据423的权限的赋予。
权限的赋予是针对希望制作驱动器数据423的用户,从账户存储部42c之中赋予与用户的属
性相对应的“用户ID”及“密码”。用户的属性例如可分为机器人1的制造商、从机器人制造商
购买机器人1而进行设置(set up)的供应商(vender)、从供应商购买机器人1而实际使用
的用户。
账户认证部51b进行用户是否具有制作驱动器数据423的权限的确认。账户认证部51b
接收来自用户的账户ID及密码的输入。然后,判断用户ID与密码的组合是否与账户存储部
42c中所存储的“用户ID”与“密码”的组合相一致。当所登录的“用户ID”及“密码”相一致时,对
输入所述账户ID及密码的组合的用户给予驱动器数据423的制作许可。
项目设定部51c接收来自被给予认证的用户的输入,对驱动器数据423的各项目进行新
的设定。图5是表示作为驱动器数据423而设定的项目的图。如图5所示,驱动器数据423
由“用户ID”、“保护模式”、“外部机器类别ID”、“外部机器类别”、“通信作业内容”、“外部机
器指令命令”、“数据读入形式”的各项目所构成。
“用户ID”是赋予至制作了驱动器数据423的用户的账户ID。“保护模式”表示所制作的驱
动器数据423在其它账户中的使用控制。例如,“保护模式”可设定如下。
(a)无限制:其它账户的用户可无限制地进行参照、变更或使用。
(b)public(公开):其它账户的用户可参照或使用。
(c)protected(保护):其它账户的用户只可使用。
(d)private(私人):其它账户的用户不可参照、变更或使用。
“外部机器类别ID”是表示外部机器2的型号等的编号。“外部机器类别”是附加至各驱动
器数据423的名称。外部机器类别是用作表示驱动器数据423的种类的识别符。在“通信作业
内容”中,表示控制器4为了使外部机器2执行作业而输出的通信内容。作为通信的内容,有
开放记忆体的时序、输出时所使用的端口#(号码)、延迟时间、输出数据的端口#等。在通
信作业内容中,指定用于使外部机器2执行作业的顺序、及这些作业所花费的时间。例如,
作为通信内容,对外部机器2指定记忆体的开放、外部命令“%S”的执行、300秒的待机、执
行外部命令“%S”的执行结果的数据的取得等。
“外部机器命令”是用于使外部机器2执行各种作业的命令。外部机器命令是外部机器2
可读取的形式。例如,当作为外部机器2的相机2a中存在“%S”作为进行拍摄的命令时,设定
“%S”作为“外部机器命令”。在外部机器用驱动器44参照所述驱动器数据423的情况下,当接
收到对与点语句(point statement)7相对应的相机2a的输出指令时,对相机2a输出“%S”。
“数据读入形式”是从相机2a输出的输出数据的形式。例如,设定
“nn,x1x1x1x1.x1x1,y1y1y1y1.y1y1,r1r1r1.r1r1,x2x2x2x2.x2x2,…”作为相机导入数据形式。nn是用于识别
所述数据的组数,x1及x2是取得数据中的X坐标。y1是取得数据中的Y坐标,r1是取得数据
中的数据旋转[以度为单位]。外部机器用驱动器44包括从取得数据中提取组数的函数
#numCameraDate、提取X坐标的函数#CameraDateX[]、提取Y坐标的函数#CameraDateY[]、
提取旋转[以度为单位]的函数#CameraDateT[]。当在外部机器用驱动器44中已指定所述驱动
器数据423时,以“相机导入数据形式”为基准,从所导入的数据中提取组数、X坐标、Y坐标、
旋转[以度为单位]。然后,配合点语句7的数据形式而加以输出。
驱动器登录部51d将通过项目设定部51c针对各项目而设定的驱动器数据423存储于驱
动器数据存储部42b中。驱动器数据423是附加用于识别数据的识别符而存储。作为存储于
驱动器数据423中的识别符,是利用通过项目设定部51c而设定的“外部机器类别”的项目。
(控制数据生成部)
控制数据生成部52按照来自操作部件46的输入进行控制数据422的制作。经控制数据
生成部52生成的控制数据422被存储于存贮器42内的控制数据存储部42a。图6是表示控制
数据422的整体构成的示意图。控制数据422记录有针对各加工点的一连串作业。所述控制
数据422是将多个结构化点块6排列而成。结构化点块6是将针对一处加工点的一连串作业
设为一块而加以记录。
一连串作业是以点主体的句法而记录。即,结构化点块6是将表示针对一处加工点的一
连串作业的所有点语句7排列而成。各点语句7是针对为了在加工点完成本作业而需要定位
的每个点所准备的信息。所述点语句7是在点编号71之下,排列点类别选项72、点坐标73
及点速度74而成。此外,点语句7是在点编号71之下,排列作业类别选项75、作业编号76、
点修正77。
点编号71明示为点主体句法的说明及定界符,以对各点语句7进行划分。点类别选项72
表示点的种类与移动方法的组合。本作业是使外部机器2能发挥本来的机能的作业,如果是
相机2a即为摄影,如果是涂布装置2b即为涂布。点的种类是经由点、本作业的开始点及本
作业的结束点等。移动方法是用于点涂布的移动、用于螺固的移动、点到点(Point To Point,
PTP)移动、直线插值移动、借助辅助点指定的圆弧插值等。例如,所谓用于点涂布的移动,
是指将PTP驱动与PTP驱动结束后的点涂布作业组合而成的移动方法。并且,对于表示经由
点的点类别选项72的记录,允许表示经由点的多个点坐标73的记录。
作业编号76是表示描述有外部机器2的作业内容的命令群的识别符。命令群是通过工业
机器人标准语言(Standard Language for Industrial Manipulators,SLIM)等机器人语言来描述,
预先存储于存贮器42的命令存储部42d中。作业类别选项75表示作业编号76所示的作业的
实施时期。所述作业类别选项75表示移动前作业、移动中作业、开始点作业、结束点作业或
本作业。
点修正77是用以计算点坐标73中的修正量的条件、以及表示根据所述条件而算出的修
正量的识别符。点修正77中的条件以及修正量是存储于命令存储部42d中。控制数据执行部
54使外部机器2在使修正量反映至控制数据422的点语句7的点坐标73而得的坐标上执行作
业,所述修正量是在点修正77中所记载的条件下算出。即,当将成为加工对象的工件W配
置于规定的配置位置,使外部机器2针对所述工件W执行作业时,在点语句7中所指定的点
坐标73是以工件W已适当地配置于配置位置为前提。因此,当工件W从规定的配置位置偏
离而配置时,针对已偏离的工件W,是将以适当的配置位置的工件W为前提的点坐标73作
为加工点来执行本作业。因此,无法获得用户所期望的结果。因此,当工件W偏离而配置时,
需要计算其偏离量。
图7是表示用以计算修正量的条件的识别符。图7表示作为点修正77而存储的“工件修
正(编号)”。如图7所示,点修正由“工件修正#”、“工件修正类别”、“外部机器类别”、“转
换系数”、“基准标志位置1”及“基准标志位置2”所构成。并且,所述点修正77是作为以工件
修正#为识别符的“工件修正(编号)”而存储。
“工件修正#”是附加至用以计算修正量的条件的识别编号。“工件修正类别”表示用于计算
修正量的部件,有使用相机2a的相机工件修正、使用传感器的传感器工件修正等。“外部机器
类别”表示用于工件修正类别的外部机器2的ID,作为ID,有型号、制造编号、以及附加至
下述所制作的驱动器的外部机器类别等。“转换系数”是将外部机器2中的坐标系转换为控制数
据422中的坐标系时所使用的转换系数。作为所述转换系数,是登录通过下述校准(calibration)
而算出的“12.58”。
“基准标志位置”表示成为用于判断所配置的工件W是否处于适当地位置及姿势的基准的
基准标志的位置。基准标志位置是通过控制数据422中的坐标系来指定。例如,如图8所示,
预先在工件W的表面上标注两个基准标志8。这时,登录两个坐标作为基准标志位置。即,
将工件W已适当地以适当的姿势配置于配置位置时的基准标志8a的坐标设为基准标志1的坐
标(X=100.00,Y=95.00),将工件W已适当地配置于工件配置位置时的基准标志8b的坐标
设为基准标志2的坐标(X=98.00,Y=92.00)而登录。
(驱动器选择部)
驱动器选择部53按照控制数据422的点修正77中所记载的外部机器类别,从存贮器42
的驱动器数据存储部42b调出与外部机器2相对应的驱动器数据423,并反映至外部机器用驱
动器44。即,当将图6所示的点编号2的点语句7的点修正77设为工件修正1时,驱动器选
择部53从驱动器数据存储部42b读出以工件修正1中所设定的外部机器类别即“CV-1000”作
为识别符的驱动器数据423。然后,将所述驱动器数据423输出至外部机器用驱动器44,基
于驱动器数据423改写外部机器用驱动器44的内容。
(控制数据执行部)
控制数据执行部54按照操作部件46的输入,基于控制数据422对移动部件3以及外部
机器2输出控制指令。控制数据执行部54连续执行控制数据422的所有点语句7。即,控制
数据执行部54从最前端开始逐个连续地参照结构化点块6。在结构化点块6的参照中,控制
数据执行部54从最前端开始依序参照结构化点块6内的各点语句7。并且,执行点语句7所
表示的控制,通过所有点语句7所表示的控制的执行结束,返回主程序(main routine)。当
返回主程序时,继续参照下一个结构化点块6。
在控制数据执行部54中,基于点语句7对移动部件3输出的控制指令是经由马达驱动器
45而输出。并且,基于点语句7对外部机器2输出的控制指令是经由外部机器用驱动器44对
外部机器2输出。基于点语句7而输出的控制指令是通过外部机器用驱动器44而转换为使外
部机器2执行的命令的形式加以输出。换言之,通过外部机器用驱动器44,将点语句7中所
记载的控制内容配合外部机器2可读取的形式加以输出。另一方面,当从外部机器2已输出
控制结果时,通过外部机器用驱动器44,配合点语句7的形式对控制结果的数据形式进行转
换。
[1-2.作用]
在具有如上所述的构成的本实施方式的机器人1中,通过以下的工序使外部机器2执行
作业。
(1)与外部机器2相匹配的驱动器数据423的制作工序。
(2)设定用于计算控制数据422中所使用的修正量的条件的点修正设定工序。
(3)将所控制的外部机器2及与所述外部机器2相对应的驱动器数据423加以关联的控
制数据422的制作工序。
(4)基于控制数据422的移动部件3以及外部机器2的控制工序。
以下,为了进行说明,对在设置有相机2a及涂布装置2b作为外部机器2的情况下,相
机用的驱动器数据423的新制作、用于计算使用有相机2a的工件W的位置修正的条件的设定、
包含位置修正的控制数据422的制作、以及利用位置修正的涂布作业的顺序进行说明。
(1)驱动器数据的制作工序
在驱动器数据423的制作工序中,制作与作为外部机器2而装配的相机2a相对应的驱动
器数据423。将作为外部机器2而装配的相机2a的形式设为“KS_UserCamera”,与所述相机
2a相对应的驱动器数据423设为未存储于驱动器数据存储部42b中。当对与相机
“KS_UserCamera”相对应的驱动器数据423进行新的制作时,经过账户登录、账户认证、驱动
器的制作、驱动器的登录的工序。图9是表示驱动器数据423的制作工序的顺序的流程图。
在账户登录工序中,制作用于制作驱动器数据423的账户。在驱动器的制作中,对制作
外部驱动器的用户,赋予用于制作外部驱动器的权限。权限的赋予是通过对成为赋予对象的
用户,从账户存储部42c中赋予“用户ID”及“密码”来进行(S01)。例如,对用户A赋予
“suzukki_k”作为用户ID,赋予“1234”作为密码。
在账户认证工序中,进行制作驱动器的用户是否具有制作驱动器的权限的确认。在权限
的确认中,从进行驱动器的制作的用户接收“用户ID”及“密码”的输入。判断“用户ID”及“密码”
是否为账户存储部42c中所存储的“用户ID”与“密码”的组合。当正在登录时,对输入所述账
户ID与密码的组合的用户进行认证,并给予驱动器的制作许可(S02)。例如,用户A输入
“suzukki_k”作为用户ID,输入“1234”作为密码。
在驱动器数据423的制作工序中,接收来自被给予认证的用户的输入,进行新的驱动器
的制作。作为驱动器数据423,进行“用户ID”、“保护模式”、“外部机器类别ID”、“外部机器
类别”、“通信作业内容”、“外部机器命令”、“数据读入形式”的设定(S03)。在用户A进行驱
动器的制作的情况下,作为驱动器数据423的“用户ID”,设定suzukki_k。然后,用户A设定
CV-1000作为“外部机器类别”,并对其它的“保护模式”、“外部机器类别ID”、“通信作业内容”、
“外部机器命令”、“数据读入形式”也进行任意设定。
在驱动器的登录工序中,将所制作的外部驱动器存储于存贮器42内的驱动器存储部42b
(S04)。所存储的外部驱动器是将“外部机器类别”作为索引(index)而存储。
(2)点修正设定工序
其次,对点修正进行设定,所述点修正设定用于计算控制数据422中所使用的修正量的
条件。
(a)转换系数的计算
首先设定“工件修正#”、“工件修正类别”、“外部机器类别”作为点修正,计算出“转换系数”。
“转换系数”的计算是通过所谓的校准而算出。图10是表示用于计算点修正的“转换系数”的顺
序的流程图。
在“转换系数”的计算工序中,首先,设定点修正的名称即“工件修正#”、表示在哪种外部
机器2中进行点修正的“工件修正类别”、表示工件修正类别中所使用的外部机器2的型号的“外
部机器类别”(S11)。
其次,在已将工件W以适当的姿势配置于适当的位置的状态下,使用机器人1的功能对
移动部件3进行控制而使相机2a移动至相机拍摄位置。相机拍摄位置是设置于工件W的配置
点的上方的位置,以控制数据422中的坐标系来表示(S12)。
移动至相机拍摄位置之后,判断“外部机器类别”中所设定的相机2a是否为对用户新制作
的驱动器所附加的“外部机器类别”(S13)。当“外部机器类别”中所设定的相机2a是对用户新
制作的驱动器所附加的“外部机器类别”时(S13的是(YES)),按照所述驱动器数据423中
所记载的控制内容,对相机2a输出实施拍摄的命令(S14)。相机2a利用其功能,对控制器
4输出拍摄结果中所含的基准标志的坐标。在控制器4中,通过外部机器用驱动器44,将拍
摄结果转换成控制数据422的形式(S15)。
另一方面,当“外部机器类别”中所设定的相机2a是控制器4的驱动器数据存储部42b中
预先存储的“外部机器类别”时(S13的否(NO)),按照所述驱动器数据423中所记载的控
制内容,对相机2a输出实施拍摄的命令(S16)。相机2a利用其功能,对控制器4输出拍摄
结果中所含的基准标志的坐标。在控制器4中,通过外部机器用驱动器44,将拍摄结果转换
成控制数据422的形式(S17)。
S15及S17的结果为,可在控制器4中取得使相机2a移动至相机拍摄位置时的相机2a的
坐标系中的基准标志8的位置。
其次,取得控制数据422中的坐标系中的基准标志8的位置。作为控制数据422中的坐
标系中的基准标志8的位置的取得方法,是通过手动使机器人1的移动部件3移动,使映照
在相机2a的视野内的基准标志的位置与S12的相机拍摄位置上的基准标志的位置相一致
(S18)。这时,作为通过手动使相机2a移动的方法,并非实际用手移动相机2a,而是利用
对操作部件46进行操作而使相机2a移动的方法。由此,可取得控制数据422中的坐标系中
的基准标志的位置。
然后,进行用于校准的变数的计算。在计算的方法中,算出使S12中所拍摄的基准标志
的坐标与使机器人1的臂移动而取得的基准标志的位置相等的变数,并将所算出的值登录至
点修正(S19)。
将如上所述而设定的“工件修正#”、“工件修正类别”、“外部机器类别”、“转换系数”与“外
部机器类别”相关联地存储于存贮器42中。“外部机器类别”成为表示点修正的识别符。
(b)基准标志位置的登录
其次,计算“基准标志位置”作为点修正。图11是表示基准标志的登录方法的顺序的流程
图。计算基准标志位置时,首先,在以适当的姿势配置于适当的位置的状态下配置工件W。
然后,通过控制器4,对移动部件3进行控制而使外部机器2即相机2a移动至基准标志的相
机拍摄位置。基准标志的相机拍摄位置是设置于工件W的配置点的上方的位置,以控制数据
422中的坐标系来表示(S21)。
移动至基准标志的相机拍摄位置之后,判断“外部机器类别”中所设定的相机2a是否为对
用户新制作的驱动器所附加的“外部机器类别”(S22)。当“外部机器类别”中所设定的相机2a
是对用户新制作的驱动器所附加的“外部机器类别”时(S22的是(YES)),按照所述驱动器
数据423中所记载的控制内容,对相机2a输出实施拍摄的命令(S23)。相机2a通过其功能,
对控制器4输出拍摄结果中所含的基准标志的坐标。在控制器4中,通过外部机器用驱动器
44,将拍摄结果转换成控制数据422的形式(S24)。
另一方面,当“外部机器类别”中所设定的相机2a是控制器4的驱动器数据存储部42b中
预先存储的“外部机器类别”时(S22的否(NO)),按照所述驱动器数据423中所记载的控制内
容,对相机2a输出实施拍摄的命令(S25)。相机2a通过其功能,对控制器4输出拍摄结果
中所含的基准标志的坐标。在控制器4中,通过外部机器用驱动器44,将拍摄结果转换成控
制数据422的形式(S26)。
S24及S26的结果为,可取得使相机2a移动至基准标志的相机拍摄位置时的相机2a的坐
标系中的基准标志8的位置。
其次,取得控制数据422中的坐标系中的基准标志8的位置。作为控制数据422中的坐
标系中的基准标志8的位置的取得方法,是通过使用转换系数,来将以相机2a的坐标系表示
的基准标志的坐标转换成控制数据422中的坐标系中的坐标(S27)。
然后,将控制数据422中的坐标系中的基准标志的坐标作为点修正的“基准标志位置”而登
录(S28)。
(3)控制数据的制作工序
当制作控制数据422时,首先,设定点修正,然后,进行各加工点上的“本作业”、各加工
点的“坐标”、各作业后的作业的设定。在这里,为了进行说明,对如下情况加以说明:在第1
加工点算出基于配置于配置位置的工件W的偏离量所得的修正量,在第2加工点,在反映有
在第1加工点算出的修正量的坐标上,对工件W实施涂布。图12是表示本实施方式的控制
数据422的一例的图。
如图12所示,作为与第1加工点相对应的点语句7,设定点编号71“#1”、点类别选项
72“PTP驱动”、点坐标73“X=100,Y=100,Z=20”、点速度74“速度40”、作业类别选项75“移
动后作业”、作业编号76“1”、点修正77“无”。作业编号76中设定的“1”是附加至takeCamera1
的命令的识别符。takeCamera1是使相机2a及控制器4执行以下动作的命令。
(a)从控制器4向相机2a输出拍摄指令,使相机2a进行拍摄。
(b)在相机2a中,从拍摄结果提取基准标志坐标,并将其结果输出至控制器4。
(c)在控制器4中对从相机2a输出的基准标志的坐标与预先设定的基准标志的坐标进行
比较,根据其差算出修正量,使其作为工件修正1的修正量而记录于命令存储部42d中。
并且,作为与第2加工点相对应的点语句7,设定点编号71“#2”、点类别选项72“点涂布”、
点坐标73“X=100,Y=140,Z=30”、点速度74“速度40”、作业类别选项75“无”、作业编号76“无”、
点修正77“工件修正1”。
同样地,作为与第3加工点相对应的点语句7,设定点编号71“#3”、点类别选项72“PTP
驱动”、点坐标73“X=150,Y=100,Z=20”、点速度74“速度40”、作业类别选项75“移动后作
业”、作业编号76“1”、点修正77“无”。作为与第4加工点相对应的点语句7,设定点编号71“#4”、
点类别选项72“点涂布”、点坐标73“X=150,Y=140,Z=30”、点速度74“速度40”、作业类别
选项75“无”、作业编号76“无”、点修正77“工件修正1”。
(4)移动部件以及外部机器的控制工序
在使用如上所述的作业数据的移动部件3以及外部机器2的控制工序中,按照图12所示
的控制数据422使机器人1运行。机器人1的运行方式如下。
首先,机器人1将外部机器2即相机2a以PTP移动至设定为点编号“#1”的点坐标73的
坐标X=100.00,Y=100.00,Z=20.000,R=0.0。
移动后,控制器4对相机2a输出拍摄指令。所述拍摄指令通过外部机器用驱动器44转
换为相机2a中的拍摄命令。利用接收到拍摄命令的相机2a进行拍摄,并从拍摄结果提取基准
标志的坐标。相机2a将所拍摄的基准标志的坐标作为控制结果输出至控制器4。在这里,从
相机2a输出的基准标志的坐标是以相机2a的坐标系表示的坐标。
相机2a所输出的基准标志的坐标通过控制器4的外部机器用驱动器44而转换成控制器4
的控制数据422的坐标形式。在控制器4中,根据接收到的基准标志的坐标与登录于点修正
77中的基准标志的坐标的差计算修正量。所述修正量记录为点修正77的修正量1。
其次,控制器4使外部机器2即涂布装置2b移动至设定为点2的坐标的坐标X=100.00,
Y=100.00,Z=20.000,R=0.0而执行涂布作业。
在点2上的涂布作业中,当设定有工件修正编号作为点修正时,在如下坐标上执行涂布
作业,所述坐标是将根据经点修正指定的条件而算出的修正量反映至作为点2的坐标而设定
的坐标所得。由此,即使在成为涂布对象的工件W的位置从基准位置偏离的情况下,也可以
在正确的位置进行涂布。
[1-3.效果]
在如上所述的机器人1中,即使在使用未想到的种类的外部机器2的情况下,也可以通
过用户制作与所述外部机器2相对应的驱动器,来使所述外部机器2执行作业。
即,在以前,需要预先将与所述外部机器2相对应的驱动器存储于存贮器42中。但是,
外部机器2的种类庞大,难以预先准备与所有外部机器2相对应的驱动器。与此相对,在本
实施方式的机器人1中,可以通过用户制作与所装配的外部机器2相对应的驱动器并将所述
驱动器赋予至控制数据422,来应对各种外部机器2。
并且,在本实施方式中,是对驱动器数据423附加用于识别所述数据的识别符。由此,
可减轻将作业内容与所使用的驱动器数据423加以关联时的用户的负担。图13是用户选择驱
动器数据423时操作部件46的显示例。如图13所示,在选择外部机器类别时,用户可以从
可选择的候补中进行选择。
并且,在本实施方式中,可采用如下所述的变形例。
(1)在本实施方式中,指定takeCamera1的识别符作为点编号1的点语句7的作业编号。
在执行所述takeCamera1时,从控制器4输出的拍摄指令通过外部驱动器加以转换而输出,所
述外部驱动器反映有在点编号2的点语句7的工件修正1中所指定的驱动器数据423。即,在
点编号2的点语句7中指定的是执行点编号1的点语句7时的驱动器。但是,作为本实施方
式,如图14所示,也可以在各点语句7中指定所使用的外部机器类别78。通过上述方式,即
使在配置有多个相机作为外部机器2,并交替使用各个相机的情况下,也可以使与所控制的相
机相对应的驱动器数据423反映至外部驱动器。
(2)在本实施方式中,是配合点语句7的记载内容来关联所使用的驱动器数据423,但
是驱动器数据423的关联对象并不限于此。例如,如图15所示,也可以将结构化点块6的记
载内容与所使用的驱动器数据423加以关联。这时,按照来自操作部件46的输入,针对每个
结构化点块6指定所关联的驱动器数据423。驱动器数据423的指定方法是在结构化点块6中
设置表单9,在所述表单9中指定外部机器类别78。由此,也可以针对每个结构化点块6,设
定共用的外部机器类别78。通常,很少在一连串作业的中途进行外部机器2的变更。因此,
针对点上的每一个作业设定外部机器类别78很费工夫。与此相对,在结构化点块6中,可以
一次性地设定所使用的外部机器类别78,从而可以减轻所述工夫。
(3)并且,也可以不将驱动器数据423与结构化点块6相关联,而将驱动器数据423与
控制数据422相关联。例如,如图16所示,也可以在控制数据422中设置表单9,对控制数
据422指定共用的驱动器数据423。由此,可以一次性指定执行控制数据422内的所有结构化
点块6时所使用的驱动器数据423。当机器人1使一种外部机器2只执行一个动作时,用于控
制器4与外部机器2的通信的外部驱动器可以是一种。这时,如果对结构化点块6赋予驱动
器,或对点上的作业编号赋予驱动器,那么驱动器的设定次数会增多。这时,对作业数据进
行驱动器的赋予。
[2.其它实施方式]
如上所述已对本发明的实施方式进行说明,但是可以在不脱离发明的主旨的范围内进行
各种省略、替换、变更。并且,所述实施方式及其变形均包含在发明的范围或主旨内,并且
包含在权利要求书所记载的发明及其同等的范围内。
(1)例如,在本实施方式中,是使用相机2a作为外部机器2,并根据拍摄结果基于工件
W的偏离量来进行修正量的计算。除此以外,还可以使用激光传感器作为外部机器2。通过
使用激光传感器,可以测定工件W的高度,也可以利用所测定的高度进行高度方向上的修正。
(2)在本实施方式中,是计算配置于工件配置位置上的工件W的修正量,进行与所述
修正量相对应的控制。除此以外,也可以通过在控制数据422中设定外部机器2以及移动部
件3的控制内容,来算出无规放置的多个工件W的坐标,基于所述坐标来执行各作业。
(3)在本实施方式中,是在一个点语句7中设定有一个作业编号76,但是也可以指定多
个作业编号。可以通过指定第1作业编号及第2作业编号作为一个点语句7,而在相同的点坐
标上执行两个作业。
(4)在本实施方式中,是设定用户所制作的驱动器的保护级别,但是也可以配合用
户的情况来赋予权限的级别。即,配合用户的特性来分级别地划分对用户所赋予的权限。
并且,也可以设为具有强大权限的用户能够忽略权限弱小的用户所设定的保护级别,而
进行驱动器数据423的阅览、编辑及删除。例如,对制造机器人1的制造商赋予最高的“A”,
对从制造商购买机器人1并进行设定(setting)的供应商赋予权限级别第二高的“B”,对
由供应商进行了设定的机器人1的购买者赋予权限级别第三高的“C”。由此,当用户向制
造商请求修理或维护时,制造商的技工(mechanic)可以对用户所设定的驱动器数据423
进行编辑。