许多工厂里正在出现能根据指令完成人类简单工作的机器。某些实验性机器人正在学会怎样应付环境的变化
[提要]人类早就幻想过的自动机器人,到60年代有了专用电子计算机的控制,才真正出现了。实用的工业机器人一般比较简单,只有最基本的操纵能力,反馈限于“关节”位置的信息。如提高操作的精确度,代价就太高了。机器人的控制分等级,通过力传感器、触觉传感器和接近传感器传输控制信息。
人工智能的科学研究正在力图给机器人配备智力,这就要有分析环境条件的传感器和数据处理线路。如Shakey(斯坦福研究所制造的一个机器人)就能够在不同房间里排除各种障碍寻找一个盒子。但机器人即使要模拟一个视觉,也还需要几十年的时间。
80年代将出现用机器人造机床的无人工厂,15年内将出现高度自动化甚至部分自复制的机器人工厂。
本文原载美国《美国科学家》,1976年2月号。作者Jamess·Albus和John M·Evans都在美国国家标准局自动化和控制技术司工作。
起码从有记载的历史以来,人类就被那些靠自身动力和自我控制而运动的机器迷住了。据说,在亚里士多德的希腊戏剧中就有好几场完全是由自动木偶演出的,木偶是靠拈线上挂的重物所驱动的。很久以后,欧洲皇族们曾迷恋于一种会写字、绘画、演奏乐器的栩栩如生的自动机。近年来,笼罩在机械自动机上面的神秘气氛已经消失了。今天,全世界的工厂都已在利用自动化机器和工业机器人从事那些对于人类太危险、太繁重、太使人厌烦或者是经济上太不合算的工作。
工业中使用自动控制机械,当然并不新鲜。自从瓦特发明飞球控制器以调节蒸汽引擎的速度以来,已经将近二百年了。那是第一次应用反馈原理探测和校正对预期控制调定的偏离。在20世纪30年代和40年代期间,炼油厂和石油化工厂广泛地“机器人化”,这是通过在反馈回路中插入比较简单的模拟控制仪器以调节蒸馏柱、催化破碎器和其他用来连续加工流动原料中的压力、温度和流量。第二次大战期间,麻省理工学院(MI. T. )的伺服机构实验室因大炮需用雷达跟踪进行高速瞄准,提出了反馈控制的数学基础。40年代末开始的自动制造技术,在二次大战期间发展起来的电子技术的帮助下,又扩展到金属加工和金属处理工业中。数字计算机的发展,又加快了这个趋势。50年代制成了由穿孔纸带上的数字控制的机床。60年代,实质上是由专用电子计算机控制的第一代工业机器人,就进入了市场。
正是把电子计算机用来控制工业机器,才使机器人成为一个十分有趣的科学技术问题。计算机插进反馈回路的结果,使全部控制办法比以前只用简单反馈回路要丰富多了。计算机具有高速计算并作出决定的能力,这样,就可以及时改变机器人的控制程序,最后可以使机器人某种程度上独立判断它同变化的环境的相互关系。
目前的机器人技术有两个主要的分支,一个是技术上的,一个是科学上的。在实用工业机器人的发展中,主要指标是可靠性和收益。对机器人的潜力进行的科学实验,通常是为了研究“人工智能”,重点是探讨感官知觉、原动控制和智能行为等基本问题。
在全世界的工厂里有数以千计笼统地叫做机器人的装置。这些机械,大都很少表现出一般人会联系到机器人一词的特性,它们不过是些“拾放”机,只能做最简单的动作。它们很少有或根本没有能力感知周围环境的状况,打开开关,它们就执行一系列预定操作。机器每一关节的运动,都有机械制动器规定限度,而动作的每一细节又必须由插头控电盘所产生的电动力或气动力支配。
在一个典型的应用中,插头板上横排代表某一特定机器人关节的一个自由度,纵行则代表一步程序。接头接在哪些排、行之间,决定着每一步开动哪些关节、朝哪个方向开动。什么时候需要新程序,就重新调整机械制动器的位置,重新安排编程序的接头,以确定一系列新的动作。附加一个可以指令每一自由度的位置取任一数值的伺服机构,就能达到更复杂的控制水平。加上伺服控制,就要求电位计、编码器、解析器等测量每一关节位置的传感器产生反馈。测得位置同指令位置相比较,一切误差都由送给相应的关节激励器的信号加以校正。
有几种方法编制伺服控制器的程序。最简便的方法从概念上说是一个类似插线板系统的电位器板。每一步,关节的位置都由电位计板上的数值决定,不由制动器决定。
由伺服机构驱动的机器人,加上电子记忆和数字控制线路,能力将大为提高。美国工业中最常用的一类伺服控制机器人,就使用了数字伺服机构,并装有贮存程序的电镀丝记忆。机器人的程序,是按照人们要它所通过的位置序列来编制的。指导人使用一个手提控制盒,合上装有控制机器人每一关节的速率控制按钮。指导人就凭这些按钮,引导机器人每一步都如愿达到一定位置。指导人掀按钮,就可以记录每一关节的位置。重复程序时,控制系统只要指令每一关节移向每一步所记下的位置就行了。机器人一旦进入生产线操作,按照固定的定时周期,在完成程序上的一步或接到外部机器的联锁信号之后,它就会一而再、再而三地重复记录下来的程序,从上一步推移到下一步。
电子记忆使机器人可以贮存几种程序,并根据不同的输入信号或外部传感器的反馈选择这一种或那一种。例如,点焊汽车体的机器人就可以按程序处理装配线上各种各样混在一起的汽车模型。
大部分机器人只能记忆几百步程序。每一步包含的动作幅度很大,又很急促。如果需要一种平稳的连续的动作,可以在控制系统上附加一个能贮存几千紧密间隔步的磁带。如果要机器人的“手”在空间平稳地移动,就采用连续轨线程序,像在弧焊或在喷漆或喷涂玻璃纤维中那样。
给机器人的控制系统加上具有数学能力和逻辑能力的计算机,它就能进行更高级的控制。有了计算机,机器人就可以利用一个外部(而不是内部)坐标系使手按程序沿直线或其他几何轨道移动。机器人要把物体按规定排列在集装架上,或者要同传动带或装配线上移动的物体发生作用,这样一种坐标系具有许多优点。计算机使工作空间坐标所需轨迹的数学定义可以转化为某种驱动信号,对应于机器人臂上各种关节的伺服机构。
W·Charles Stark Draper实验室的Daniel E·Whitney已提出一种执行这样的坐标变换的计算机程序(即解析运动速率控制)。Whitney使用了一个固定在机器人手上的坐标系。由手的动作,例如“把Y件沿手轴移动”,“把X件向右移”等,可以发出输入指令。最近出现的工业机器人同样具有处理工作空间坐标的能力,从而在执行程序的过程中实时地实现了必需的变换。这种机器人的计算机控制系统,也可以推测以最高速度操纵重件的加速减速概况。
绝大多数工业机器人只有最基本的操纵能力。反馈只限于同一些联锁信号和定时信号相结合的关节位置信息。因此,大多数机器人只能在加工件总是位于机器人恰好能够抓到的条件下发挥作用。
对很多工业应用来说,这种水平的性能已足以完成许许多多不同的任务。例如,日本川崎实验室的工程师们表明,机器人可以只用高精度的位置反馈把发动机和变速箱加以复合装配,也可以在零件集中时把设计精巧的钳子和夹具在一定程度上加以复合装配。其他实验也表明,在装配两个有一点公差的组件时,对于少量震荡和晃动加以设计恰当的拔梢和斜角规,就能够适应轻度的排列不齐并防止互相挤轧。
在其他许多情况下,要用机器人的精确操作所需要的约束来提高工作条件,代价原来极其昂贵。例如据报道,使车体保持点焊机器人所要求的位置精确度范围内的传送装置,成本要比焊接机器人本身还高10倍之多。结果,许多政府、大学和工业实验室正在研究新的反馈方法,以弥补工件方位的不确定。
讨论机器人技术为了有一个统一的范围,可以把控制问题看作一系列按等级排列的问题。控制等级的每一级都从上一级接受指令,并作出反应:向下一级按次序发出一系列指令,把传感反馈用到闭环控制相应之处。例如,假定目标是要在装配小型汽油发动机这一项复杂任务中控制操纵器。可以把这一任务划分为一系列更简单的连续动作,比如说取A件和B件,把A件插入B件而取消轴外力,把C件装配于AB集合上,如此等等。这每一步工作又可进一步划分为一系列基本动作,比如伸、抓、沿特定轨线移动等等。这些基本动作本身又可以分为一连串表现为X、Y、Z坐标和夹持方向的操纵器位置。最后,操纵器位置又可以转化为驱动关节激励器伺服机构的电压协调序列。
一般说来,在等级序列中,每一级都有两种类型的输入。首先有从上一级来的输入指令。最高级的指令可以来自操作人或外部某种其他选择目标的机构。其他各级指令都是由等级序列中的上一级作为输出下达的。
第二类输入是由表明操纵器状况和外部条件的反馈信号所组成。这种输入可以描述关节的位置和运动,也可以从力传感器、触觉传感器或接近传感器把信息传送到抓机上。此外,反馈数据也会从机器人必须与之发生作用的外界机械传送定时信号。反馈数据还会描述障碍物的方位、工作件的形状和方位以及参考系的移动,或者提供其他与机器人的操纵任务有关的信息。尤其在比较高等级的控制中,这种输入信息需要经由视觉、听觉、触觉或其他人类感官所能正常察觉的信号进行综合处理。
从等级序列的角度来看,要控制机器人去完成一项综合任务,就需要每一级控制都能把上一级来的指令转化为对下一级的一系列指令。要完成这种转化,技术上有困难,这主要是因为在计算中必须加以处理的反馈数据又多又繁杂。而反馈的类型又紧紧依赖于在外部环境中遇到的不定度。
如果排列不齐只限于位置上几毫米或方向上几度之差,人们可以给机器人安上力传感器、触觉传感器或接近传感器,以提供必要的校正信息。测定力,有时就测量相应的关节激励器中的发动机电流或特异水压。在其他设计中,力传感器是由机器人“腕”上的张力计所组成。有时力传感器也可以安装在夹持工件的工作台上,由机器人插入销钉和轴承,盖上衬垫,旋紧螺丝。力通过工件传到工作台上,可以用来控制这个装配作业。触觉传感器大多数只不过是两个面互相接触时传送信号的微型开关。
接近传感器一般比较复杂。典型的系统是使用激光束或红外光束,通过从测量目标反射回来的能量确定接近度。例如,在距离1米以上,可以通过测量一个激光脉冲传送时间来推算量程。一个机器人如配备设计完好的传感器,可以寻找位置不确定的物体,可以高速趋向物体而绝不会撞上去。力传感器、触觉传感器和接近传感器既然在固定于传感装置的坐标系中提供信息,那么,信息就必须进入可以用传感器坐标表示指令的那一级或更高级的控制。
有好几种不同的方案,传感反馈数据可以用于控制的不同级别以弥补环境的不确定性。一个办法是确定某一物体的精确位置,然后转移、回旋或伸展先前记录下来的轨迹,以弥补所测位置的误差。另一个办法是先把反馈数据引进为操作器终点计算轨迹的数学方程中去。Draper实验室的Whitney和James L. Nevins曾经使用第二种技术,使一台能进行力的反馈的操作器可以找面、沿边缘移动并以严密公差把销钉插入孔中。也可以使反馈信号执行控制程序中的条件分支。斯坦福大学的人工智能实验所已用机器人装配水泵,证实了这种能力。
另一种技术是把反馈合并到控制等级中去,这是阿尔布斯在国家标准局提出的“小脑模型接合控制器”。这是一个适应系统,用分类贮存系统为每一相应的输入组合贮存或学会正确的输出。小脑模型控制接合器像它的原型小脑一样,可以应付大量指令和反馈变量,并显示出许多条件反射的特征。它在多个不同的等级中可能大有用途。
如果机器人所处世界很不确定,就需要复杂得多的反馈信息和控制技术。例如,倘若机器人要操纵随意置放或积成堆的物体,关于力、触觉和接近的简单信息一般是不够的。在极端情况下,机器人也许至少要搬开一个障碍物才能拿到它所要的东西。它甚至还需要选择达到这个目标的工具。这样的调度就要求机器人具有认识计划的能力。
多年来,人工智能领域的研究者曾力求给机器人配备适当的智力。在大多情况下,进行这样的努力,需要更高级的控制同某种能够有意义地表示环境状况的固有信息结构——一种“世界模型”或知识轮廓——结合起来。机器人还必须具有足以分析环境条件的丰富的传感器和数据处理线路,使机器人的固有知识轮廓能够跟上现状。
当机器人面对着一个有待执行的输入指令,它就设法制定一个假想的世界模型。然后,它试图设计出一套能把现有世界模型变为理想世界模型的程序。这种内在程序的每一步,都必须符合一个可由下一级执行的输出指令。这样一种内在程序一经建立,就能够成为所需要的一系列输出指令。
斯坦福研究所制造了一个叫Shakey的机器人,就体现了这种技术。可以交给Shakey这样一些任务,像找出一个具有一定大小、形状、颜色的合子,再把它搬到一个指定的位置上去。这个机器人能到好几个不同的房间里找合子,应付各种障碍,制定适当的行动路线。有时候在达到主要目标之前还需要先完成预备动作。有一次,Shakey算好了把一个斜面移动几次,它就可以爬到一个放合子的平台上。很明显,问题的实质在于怎样使机器人具有应付这类任务的机智。
对于自动分析物像和场景的问题,M. I,T. 计算机科学实验室提出了一个有希望的办法。从电视扫描器得来的数据由计算机程序加以处理,这种程序用来找出边缘、确定平面、分析形状、建立数据结构,以确定所有这些初始性质是怎样集中起来,构成所见环境中物体真相的如实反映。M. I. T. 的人工智能实验室在最近的大部分工作中,把场景分析程序安排在非等级构造中,以便使任何一个亚程序都可以呼叫另一个亚程序与之交换信息。例如,一个找寻边缘的亚程序可以得出某种暂时性结论,并把这个结论直接报告给需要结论的程序,或者确定它需要另一个亚程序的协助。
对机器视觉的问题,斯坦福人工智能实验室的Thomas O. Binford和他的同事们持有一种颇为特殊的见解。他们把一道激光束用柱形透镜扩展成一个平面,照射到环境中的物体上。在光平面横切物体表面之处,一线微光把物体的轮廓映现出来。把光平面移动几个不同的位置和方向,就可以形成一个复合的模式,表示可见表面的三维形状。然后,用一种从扫描系统所见表面试图判明整个物体构造的计算机程序,分析这个模式。这一方法的优点是避免了许多由阴影和形状不规则所引起的错综复杂情况。
加利福尼亚理工学院的喷气实验室正在研制一个机器人视觉系统,以满足在模拟的火星表面上定位并拾取石块的需要。这个系统用电视照相机和场景分析程序探测石块的外形。然后由激光测距仪精确测量石块的位置,以便由操作器拾起来。
斯坦福研究所的Charles A. Rosen、David Nitzan等人为设计适合工业用的视觉分析程序,已设计了一个扫描系统,由一行安装在传送带上方的光电二极管组成。当物体以单行——方向凌乱,而且不一定同一——经过时,光电二极管给每一个勾画了外形。很简单的视觉分析程序就可以确定物体的外形,测量其位置和方向,并进行简易的次品检查。如果需要把物体丢掉或继续加工,就把指令发给操作器,由它拾起移动的零件,放到适当的方向上进一步处理。
机器人要模拟理智行为的基本过程,甚至只是模拟视觉理解力所必需的感觉信息加工,无疑还需要几十年的时间。机器人要像一个两岁小孩子那样机敏地发明某种策略对付新的情况,也还需要一定的时间。视觉理解力和发明都是极为复杂的过程,除非对人类大脑基本作用的理解比今天更加完善得多,才有可能理解这些过程。
至于机器人在现代工厂高度有组织的环境中完成实际工作的能力,那就完全是另一个问题了。在一个工厂里,机器人不需要有创造性,也不需要有什么真正有效的洞察力。对一个工业机器人来说,主要标准是价钱便宜,使用可靠,又易于编制出一系列详细规定的操作程序。可以用一些实际方法使机器人能够补偿各个部件的正常尺寸变化和轻度排列不齐。在工业制造的强制环境中,最高级的输入指令可以都是老一套,就像计算机同盘形记忆之类的普通外围设备之间的通讯一样。这就有可能用编码器和其他熟知的程序编制技术产生高级的指令序列。有好几种程序语言,为了编制程序和操作数控机床的目的而得到发展。近来已有几个工程技术团体开始为机器人系统创造这一种语言。
这里所描述的发展过程表明,在最近的将来要完成高度自动化的机器人工厂,并没有根本性的技术障碍。在日本,政府、工业界和大学一起搞了一项重大计划,准备树立一个用机器人制造机床部件的无人工厂样板。这个工厂按计划在80年代初开工,如获成功,将成为其他制造业的典范。因此,高度自动化的甚至部分自复制的机器人工厂,15年内看来至少很有可能在某些国家开工。
(张国强译,关又生校)