A Rapidly Deployable Manipulator System
Author:Christiaan J.J.Paredis,H.Benjamin Brown,Pradeep K.Khosla Abstract:
A rapidly deployable manipulator system combines the flexibility of reconfigurable modular hardware with modular programming tools,allowing the user to rapidly create a manipulator which is custom-tailored for a given task.This article describes two main aspects of such a system,namely,the Reconfigurable Modular Manipulator System(RMMS)hardware and the corresponding control software。
1 Introduction
Robot manipulators can be easily reprogrammed to perform different tasks,yet the range of tasks that can be performed by a manipulator is limited by mechanicalstructure.Forexample,a manipulator well—suited for precise movement across the top of a table would probably no be capable of lifting heavy objects in the vertical direction。Therefore,to perform a given task,one needs to choose a manipulator with an appropriate mechanical structure.
We propose the concept of a rapidly deployable manipulator system to address the above mentioned shortcomings of fixed configuration manipulators。As is illustrated in Figure 1,a rapidly deployable manipulator system consists of software and hardware that allow the user to rapidly build and program a manipulator which is customtailored for a given task.
The central building block of a rapidly deployable system is a Reconfigurable Modular Manipulator System(RMMS)。The RMMS utilizes a stock of interchangeable link and joint modules of various sizes and performance specifications。One such module is shown in Figure 2.By combining these general purpose modules,a wide range of special purpose manipulators can be assembled。Recently,there has been considerable interest in the idea of modular manipulators,for research applications as well as for industrial applications。However,most of these systems lack the property of reconfigurability,which is key
to the concept of rapidly deployable systems。The RMMS is particularly easy to reconfigure thanks to its integrated quick—coupling connectors described in Section 3.
Effective use of the RMMS requires,Task Based Design software。This software takes as input descriptions of the task and of the available manipulator modules;it generates as output a modular assembly configuration optimally suited to perform the given task。Several different approaches have been used successfully to solve simpli-fied instances of this
A third important building block of a rapidly deployable manipulator system is a framework for the generation of control software。To reduce the complexity of softwaregeneration for real—time sensor-based control systems,a software paradigm called software assembly has been proposed in the Advanced Manipulators Laboratory at CMU。This paradigm combines the concept of reusable and reconfigurable software components,as is supported by the Chimera real—time operating system,with a graphical user interface and a visual programming language,inplemented in Onika。
Although the software assembly paradigm provides thesoftware infrastructure for rapidly programming manipulator systems,it does not solve the programming problem itself.Explicit programming of sensor—based manipulator systems is cumbersome due to the extensive amount of detail which must be specified for the robot to perform the task。The software synthesis problem for sensor-based robots can be simplified dramatically,by providing robust robotic skills,that is,encapsulated strategies for accomplishing common tasks in the robots task domain.Such robotic skills can then be used at the task level planning stage without having to consider any of the low—level details
As an example of the use of a rapidly deployable system,consider a manipulator in a nuclear environment where it must inspect material and space for radioactive contamination,or assemble and repair equipment。In such an environment,widely varied kinematic(e.g.,workspace)and dynamic(e.g.,speed,payload)performance is required,and these requirements may not be known a priori.Instead of preparing a large set of different manipulators to accomplish these tasks—an expensive solution—one can use a rapidly deployable manipulator system。Consider the
following scenario:as soon as a specific task is identified,the task based design software determinesthe task。This optimal configuration is thenassembled from the RMMS modules by a human or,in manipulator.The resulting manipulator is rapidly programmed by using the software assembly paradigm and our library of robotic skills。Finally,the manipulator is deployed to perform its task.
Although such a scenario is still futuristic,the development of the reconfigurable modular manipulator system,described in this paper,is a major step forward towards our goal of a rapidly deployable manipulator system.
Our approach could form the basis for the next generation of autonomous manipulators,in which the traditional notion of sensor—based autonomy is extended to configuration-based autonomy.Indeed,although a deployed system can have all the sensory and planning information it needs,it may still not be able to accomplish its task because the task is beyond the system's physical capabilities.A rapidly deployable system,on the other hand,could adapt its physical capabilities based on task specifications and,with advanced sensing,control,and planning strategies,accomplish the task autonomously.
2 Design of self—contained hardware modules
In most industrial manipulators,the controller is a separate unit housing the sensor interfaces,power amplifiers,and control processors for all the joints of the manipulator。A large number of wires is necessary to connect this control unit with the sensors,actuators and brakes located in each of the joints of the manipulator。The large number of electrical connections and the non—extensible nature of such a system layout make it infeasible for modular manipulators.The solution we propose is to distribute the control hardware to each individual module of the manipulator.These modules then become self—contained units which include sensors,an actuator,a brake,a transmission,a sensor interface,a motor amplifier,and a communication interface,as is illustrated in Figure 3。As a result,only six wires are required for power distribution and data communication。 2.1 Mechanical design
The goal of the RMMS project is to have a wide variety of hardware modules available.So far,we have built four kinds of modules:the manipulator base,a link
module,three pivot joint modules(one of which is shown in Figure 2),and one rotate joint module。The base module and the link module have no degrees-of-freedom;the joint modules have degree-of—freedom each.The mechanical design of the joint modules compactly fits a DC—motor,a fail-safe brake,a tachometer,a harmonic drive and a resolver
The pivot and rotate joint modules use different outside housings to provide the right—angle or in-line configuration respectively,but are identical internally。Figure 4 shows in cross-section the internal structure of a pivot joint。Each joint module includes a DC torque motor and 100:1 harmonic-drive speed reducer,and is rated at a maximum speed of 1。5rad/s and maximum torque of 270Nm.Each module has a mass of approximately 10。7kg.A single,compact,X-type bearing connects the two joint halves and provides the needed overturning rigidity。A hollow motor shaft passes through all the rotary components,and provides a channel for passage of cabling with minimal flexing。 2。2 Electronic design
The custom—designed on—board electronics are also designed according to the principle of modularity.Each RMMS module contains a motherboard which provides the basic functionality and onto which daughtercards can be stacked to add module specific functionality。
The motherboard consists of a Siemens 80C166 microcontroller,64K of ROM,64K of RAM,an SMC COM20020 universal local area network controller with an RS—485 driver,and an RS—232 driver.The function of the motherboard is to establish communication with the host interface via an RS-485 bus and to perform the lowlevel control of the module,as is explained in more detail in Section 4.The RS—232 serial bus driver allows for simple diagnostics and software prototyping.
A stacking connector permits the addition of an indefinite number of daughtercards with various functions,such as sensor interfaces,motor controllers,RAM expansion etc。In our current implementation,only modules with actuators include a daughtercard.This card contains a 16 bit resolver to digital converter,a 12 bit A/D converter to interface with the tachometer,and a 12 bit D/A converter to control the motor amplifier;we have used an ofthe-shelf motor amplifier(Galil Motion
Control model SSA-8/80)to drive the DC-motor.For modules with more than one degree—of-freedom,for instance a wrist module,more than one such daughtercard can be stacked onto由e s创ne motherboard.
3 Integrated quick-coupling connectors
To make a modular manipulator be reconfigurable,it is necessary that the modules can be easily connected with each other.We have developed a quick—coupling mechanism with which a secure mechanical connection between modules can be achieved by simply turning a ring handtight;no tools are required.As shown in Figure 5,keyed flanges provide precise registration of the two modules。Turning of the locking collar on the male end produces two distinct motions:first the fingers of the locking ring rotate(with the collar)about 22.5 degrees and capture the fingers on the flanges;second,the collar rotates relative to the locking ring,while a cam mechanism forces the fingers inward to securely grip the mating flanges。A ball-transfer mechanism between the collar and locking ring automatically produces this sequence of motions.
At the same time the mechanical connection is made,pneumatic and electronic connections are also established.Inside the locking ring is a modular connector that has 30 male electrical pins plus a pneumatic coupler in the middle。These correspond to matching female components on the mating connector。Sets of pins are wired in parallel to carry the 72V-25A power for motors and brakes,and 48V–6A power for the electronics.Additional pins carry signals for two RS-485 serial communication busses and four video busses.A plastic guide collar plus six alignment pins prevent damage to the connector pins and assure proper alignment.The plastic block holding the female pins can rotate in the housing to accommodate the eight different possible connection orientations(8@45 degrees).The relative orientation is automatically registered by means of an infrared LED in the female connector and eight photodetectors in the male connector.
4 ARMbus communication system
Each of the modules of the RMMS communicates with a VME—based host interface over a local area network called the ARMbus;each module is a node of the network。The communication is done in a serial fashion over an RS-485 bus which
runs through the length of the manipulator.We use the ARCNET protocol[1]implemented on a dedicated IC(SMC COM20020)。ARCNET is a deterministic token—passing network scheme which avoids network collisions and guarantees each node its time to access the network.Blocks information called packets may be sent from any node on the network to any one of the other nodes,or to all nodes simultaneously(broadcast)。Each node may send one packet each time it gets the token。The maximum network throughput is 5Mb/s。
The first node of the network resides on the host interface card,as is depicted in Figure 6.In addition to a VME address decoder,this card contains essentially the same hardware one can find on a module motherboard。The communication between the VME side of the card and the ARCNET side occurs through dual-port RAM.
There are two kinds of data passed over the local area network.During the manipulator initialization phase,the modules connect to the network one by one,starting at the base and ending at the end—effector.On joining the network,each module sends a data-packet to the host interface containing its serial number and its relative orientation with respect to the previous module。This information allows us to automatically determine the current manipulator configuration。
During the operation phase,the host interface communicates with each of the nodes at 400Hz.The data that is exchanged depends on the control mode—centralized or distributed。In centralized control mode,the torques for all the joints are computed on the VME-based real—time processing unit(RTPU),assembled into a data—packet by the microcontroller on the host interface card and broadcast over the ARMbus to all the nodes of the network.Each node extracts its torque value from the packet and replies by sending a data—packet containing the resolver and tachometer readings.In distributed control mode,on the other hand,the host computer broadcasts the desired joint values and feed-forward torques.Locally,in each module,the control loop can then be closed at a frequency much higher than 400Hz.The modules still send sensor readings back to the host interface to be used in the computation of the subsequent feed—forward torque。
5 Modular and reconfigurable control software
The control software for the RMMS has been developed using the Chimera real-time operating system,which supports reconfigurable and reusable software components。The software components used to control the RMMS are listed in Table 1.The trjjline,dls,and of the RMMS,such as the number of degrees—of—freedom,the Denavit—Hartenberg parameters etc.During the initialization phase,the RMMS interface establishes contact with each of the hardware modules to determine automatically which modules are being used and in which order and orientation they have been assembled.For each module,a data file with a parametric model is read.By combining this information for all the modules,kinematic and dynamic models of the entire manipulator are.
After the initialization,the rmms software component operates in a distributed control mode in which the microcontrollers of each of the RMMS modules perform PID control locally at 1900Hz.The communication between the modules and the host interface is at 400Hz,which can differ from the cycle frequency of the rmms software component.Since we use a triple buffer mechanism for the communication through the dual—port RAM on the ARMbus host interface,no synchronization or handshaking is necessary.
Because closed form inverse kinematics do not exist for all possible RMMS configurations,we use a damped least-squares kinematic controller to do the inverse kinematics computation numerically。
6 Seamless integration of simulation
To assist the user in evaluating whether an RMMS con-figuration can successfully complete a given task,we have built a simulator.The simulator is based on the TeleGrip robot simulation software from Deneb Inc。,and runs on an SGI Crimson which is connected with the real-time processing unit through a Bit3 VME—to—VME adaptor,as is shown in Figure 6.A graphical user interface allows the user to assemble simulated RMMS configurations very much like assembling the real hardware。Completed configurations can be tested and programmed using the TeleGrip functions for robot devices.The configurations can also be interfaced with the Chimera real-time softwarerunning on the same RTPUs used to control the actual hardware。As a result,it is possible to evaluate not only the movements of the
manipulator but also the realtime CPU usage and load balancing.Figure 7 shows an RMMS simulation compared with the actual task execution.
7 Summary
We have developed a Reconfigurable Modular Manipulator System which currently consists of six hardware modules,with a total of four degrees—of-freedom。These modules can be assembled in a large number of different configurations to tailor the kinematic and dynamic properties of the manipulator to the task at hand.The control software for the RMMS automatically adapts to the assembly configuration by building kinematic and dynamic models of the manipulator;this is totally transparent to the user.To assist the user in evaluating whether a manipulator configuration is well suited for a given task,we have alsobuilt a simulator.
Acknowledgment
This research was funded in part by DOE under grant DE-F902—89ER14042,by Sandia National Laboratories under contract AL—3020,by the Department of Electrical and Computer Engineering,and by The Robotics Institute,Carnegie Mellon University。
The authors would also like to thank Randy Casciola,Mark DeLouis,Eric Hoffman,and Jim Moody for their valuable contributions to the design of the RMMS
system
。
附件二:
可迅速布置的机械手系统
作者:Christiaan J。J。Paredis,H.Benjamin Brown,Pradeep K。Khosla 摘要:
一个迅速可部署的机械手系统,可以使再组合的标准化的硬件的灵活性用标准化的编程工具结合,允许用户迅速建立为一项规定的任务来通常地控制机械手。这篇文章描述这样的一个系统的两个主要方面,即,再组合的标准化的机械手系统(RMMS)硬件和相应控制软件.
1介绍
机器人操纵装置可能容易被程序重调执行不同的任务,然而一个机械手可以执行的任务的范围已经被它的机械结构限制。例如,一个很适合准确的运动的机械手在一张桌子上部或许将不能朝着垂直的方向举起重物.因此,执行规定的任务,需要有一个合适的机械结构来选择机械手。
我们提议一个迅速可部署的机械手系统的概念来处理固定构造的机械手的上述的缺点。一迅速可部署机械手系统由迅速建造的软件和硬件组成,是适合一规定任务的一个机械手.
一个迅速可部署的系统的中心的组成部分是一个再组合的标准化的机械手系统(RMMS)。RMMS利用一可交换的连接的和各种尺寸和性能的共同模件。通过结合这些多功能的模件,大范围专用机械手可以被收集。最近,有相当多的对机械手标准化的想法的兴趣.但是,对于研究应用以及为工业应用来说,大多数这些系统缺乏的必要的能力,这是迅速可部署的体制的概念的关键。
有效的使用RMMS需要基于任务的设计软件。这软件认为是任务和可得到的操纵者模件的输入描述;作为一标准化会议构造最佳适合执行规定任务的业务的产量产生。几种不同的方法已经被成功使用解决这个错综复杂的问题的.
一个迅速可部署的机械手系统的第3个重要的组成部分是控制软件的代的一种框架。为实时基于传感器的控制系统降低软件生成的复杂性,一个软件范例叫软件为会议已经在CMU先进的操纵者实验室里被提出.这个范例结合可重复使用和再组合的软件成分的概念,象妄想实时操作系统支持的那样,用一个图形用户界面和可视程序设计语言而实施。
虽然软件会议范例提供迅速编程操纵者系统的软件基础设施,但是它不解决编程问题。基于传感器的机械手系统的明确编程由于必须被为机器人指定执行任务的广大数量的细节是麻烦的。基于传感器的机器人的软件综合问题可以被简化,通过提供坚固的机器人技能,即,为在机器人任务域完成普通任务封装策略.这样机器人技能能在而不需要考虑任何低级的细节的任务步计划阶段使用。
作为使用一个迅速可部署的系统的例子,在一种核环境里,在那里它必须检查材料和放射性污染的空间,或者集合和修理设备考虑一个操纵者.在这样的一种环境里,广泛改变的动态的(例如,工作区)和动态的(例如,速度,净载重量)性能被要求,并且这些要求可能不被知道priori.不得不准备大套要完成这几次任务的不同操纵者一昂贵解决办法一使用迅速可部署操纵者系统能。考虑下列脚本:一项具体的任务一被鉴定,基于任务的设计软件就使最佳的标准化的会议构造下决心进行任务。人们然后从RMMS模件装配这个最佳的构造或者,将来,也许到另一个操纵者.导致的操纵者被迅速通过使用软件装配范例和我们的机器人技能的信息库编程序。最后,操纵者被有效地使用执行它的任务.虽然这样的脚本仍然是未来的,再组合的标准化的操纵者系统的发展,在这篇文章里描述,是向我们的一个迅速可部署的机械手系统的目标的一个向前的主要的台阶.
我们的方法能为自治机械手的下一代形成基础,其中基于传感器的自治权的传统的观念被给予基于构造的自治权。的确,虽然一个部署的系统能有它需要的全部感觉并且计划的信息,它可能仍然不能完成它的任务,因为任务是在系统的物理能力以外.一个迅速可部署的系统,另一方面,能改编它的基于任务说明的物理能力和带有先进的感觉,控制,以及计划策略,自动完成任务。
2硬件模块的两种设计
在通常工业机械手里,那些控制器单独接在那些传感器接口,功率放大器,并且因机械手全部关节那些机械手而控制处理器。许多电线连接这个控制单位和传感器,位于机械手的每个关节的作动器和刹车是必要的.大量电气装线和这样的一次系统平面布置的非可扩展性,为标准化的机械手使它不能实行。我们提出的这个解决办法是将控制硬件分配给操纵者的每个个别的模件。包括传
感器的这些模件然后成为组装组件:制动器,一个刹车,一次输送,一个传感器接口,一个电动机放大器和一个通信接口。
2。1机械设计
RMMS工程的目标是有可提供的多种硬件模块。迄今,我们已经建造4种模件:操纵者基础,一连接模块,枢共同模件(一在身材显示),并且一旋转共同模件。底部模件和连接模块没有自由度;共同模件各自有一自由度。共同模件的机械设计紧密适合一台直流电动机,一个有自动防故障设备的刹车,一台转速表,谐波运动。
那些枢和旋转共同模件在外部使用提供那些直角不同或者成队构造分别,但是相同内部,在典型地方显示一共同的枢的内部结构。每个共同模件包括一台直流力矩电动机和100:1的谐波驾驶速度减压器,并且被在1。5rad/s和270纳米的最高转矩的最高速度下。不是每个模件都有块大约10.7公斤一单个,小型,耐压的X类型提供需要的刚性连结并且相连在一起.一根空的电动机轴通过全部旋转的零部件,并且为最小的屈曲电信号的传送提供一条通道。
2.2电子设计
通俗设计的舱中的电子也被根据的原则设计。每个RMMS模件包含主板,提供基本的功能性和可以被堆积增加模件具体的功能性.
主板由西门子80C166组成,64K ROM,RAM,一SMC COM20020的64 K有一台RS—485驱动器和一台RS—232驱动器的普遍的局部地区网络控制器。主板的功能是通过一种RS-485公共系统建立与主接口的联系和进行程序控制模件,象在第4部分被更详细解释的那样。RS-232连续的公共汽车司机考虑到单纯的诊断和软件原型法。
一个堆积的连接器有各种各样的功能允许模糊的数量的增加,例如传感器接口,电动机控制器,RAM扩大器等等,在我们的当今的实施里,只是有作动器的模件包括daughtercard。这张卡片到数字化的变换器包含一16位resolver,要与转速表和一台12位D/A变换器接口控制电动机放大器的一台12位模数转换器;我们已经使用一个ofthe架子电动机放大器(Galil运动控制模型SSA 8/80)驱动直流电动机。对有超过一自由度,例如一个腕模件的模件来说,不止一这样的daughtercard可以被堆积到相同的主板上。
3综合连合的连接器
为了使一个标准化的机械手再组合,模件可能容易被彼此连结是必要的.我们已经—12-handtight被取得;没有工具被要求。调整凸缘提供两个模件的准确的连接。锁住的手腕的转动在末端上产生两种不同的动作:首先,锁住的手指大约22。5程度和捕获轮流(与手腕一起)手指在凸缘上运动;其次,那些手腕相对于锁住的手指,而凸轮机制强迫那些内在的手指在可靠紧握轮子的凸缘运动。在领和锁住的手指之间的转动机构自动生产这个运动顺序。
同时机械连接被做成为装满和电子的连接。在每锁住的指里面有30电别针以上一装满电子偶合器在中间的一标准化连接器是.这些符合匹配铺席子的连接器上的凹形零部件。别针被电报告知在方面与平行那些72 V-25A去电动机和刹车和去那些电子的权力48 V-6A的权力。
4 ARMbus通信系统
RMMS的每个模件在一个称为ARMbus的局域网上方与一个基于VME的主接口联系;每个模件都是一个网络的节点。通讯被在机械手的长度的一辆RS-485公共汽车上方用连续方式做。我们使用ARCNET协议[1]在一奉献的IC(SMC COM20020)上实现。ARCNET是避免网络冲突并且在访问网络的它的时间保证每个节点的一个决定性的权标传递网络计划。称为包的信息的块可能被在网络上从任何节点送给其它节点中的任何一个,或者对全部节点同时(广播)。每当它得到标志的时候,每个节点可以送一包。
网络的第一个节点保存在主接口卡.除一VME地址译码器之外,这卡片包含基本上相同的硬件一能在模件主板上发现。在这张卡上的VME和ARCNET之间的联系边是通过双口RAM发生的.有两种数据通过局域网.在机械手预置阶段期间,模件一个接一个连接网络,在基础启动并且结束最后effector。关于参加网络,每模件寄一数据包给包含它的顺序号和它的与以前的舱有关的有关的认识新环境的主机接口.这信息允许我们自动确定当今的机械手构造.在运行阶段,主接口以400赫兹与每个节点联系。被交换的数据取决于控制模式集中或者被分配.用集中的控制模式,全部关节的力矩被在基于VME的实时工艺设备(RTPU)上计算,进一数据包以microcontroller集合在主接口卡上和越过ARMbus随着的全部网络的节点.每个节点从包中抽出它的力矩价值并且通过使
数据包包含resolver和转速表读数回答.用分配的控制模式,另一方面,主机播送被期望的共同价值和前馈力矩。当地,在每个模件里,控制环然后能被在比400赫兹高得多的频率关闭模件仍然把传感器读数回寄给主联接于被在随后的前馈力矩的计算内使用。
5标准化和再组合的控制软件
对于远程控制软件采用嵌合体的实时操作系统开发的,它支持可重构和可重用的软件组件主题组成部分需要一定构造RMMS的依靠的参数知识,在预置阶段期间,RMMS接口建立与每个硬件模块的关系自动确定哪个模件正被使用,并且他们的命令和定向收集。对每个模件来说,一个数据提交给一个参数模型被读。通过结合所有模块的信息,建造整个机械手的运动学和动力学模型。
初始化后,应用情况的软件组件运行在分布式控制模式,每个模块的微控制器的应用情况进行PID控制在1900hz。的通信模块和主机接口是在400Hz之间发生,这可以和RMMS的周期频率不同。由于我们使用三重缓冲机制的通信通过对armbus主机接口的双端口RAM,没有同步或握手是必要的。
因为封闭形式的逆运动学不为所有可能存在的缺陷结构,利用阻尼最小二乘运动控制器做逆运动学计算数值。
6综合模拟
帮助用户评估是否可以成功完成远程控制一个给定的任务,我们已经建立了一个模拟器。模拟器是基于来自Deneb股份有限公司的TeleGrip机器人模拟软件,运行在SGI的深红色这是通过一位VME VME适配器与实时处理单元连接。图形用户界面允许用户装配模拟远程配置非常喜欢组装真实的硬件.完成配置可以测试和使用telegrip功能的机器人装置。组态,也可以与奇美拉实时软件用来控制实际的硬件相同的rtpus接口。因此,它不仅可以评估的人的运动臂也实时的CPU使用率和负载平衡。
7结束语
我们已经发展目前由6个硬件模块组成,共有四个自由度。这些模块可以组装在多个不同的机构里面,以量身定制的运动学和动力学特性的机械手手头的任务.对于远程控制软件自动适应装配结构通过建立机械手的运动学和动力学模型,
这对用户是完全透明的。为了帮助用户评估机械手配置是否非常适合一个任务,我们建立一个模拟器.
因篇幅问题不能全部显示,请点此查看更多更全内容