PUMA560机器人的硬件改进和计算转矩的控制外文文献翻译中英文翻译外文翻译.docx
《PUMA560机器人的硬件改进和计算转矩的控制外文文献翻译中英文翻译外文翻译.docx》由会员分享,可在线阅读,更多相关《PUMA560机器人的硬件改进和计算转矩的控制外文文献翻译中英文翻译外文翻译.docx(14页珍藏版)》请在冰点文库上搜索。
PUMA560机器人的硬件改进和计算转矩的控制外文文献翻译中英文翻译外文翻译
附录1
PUMA560机器人的硬件改进和计算转矩的控制
更新用于教育事业的工业控制器
英国Reading大学的自动控制系有一台Puma560教学机器人,由于原来的硬件控制部分和人机界面有所欠缺,因此此文就控制部分的改进作了阐述。
本论文描述了两个自动化系的研究生的研究结果,这个课题涉及了基于个人计算机的机器人操作臂的人机界面和计算转矩的控制设计。
Puma560机器人是一个六自由度的机器人操作臂,由六个直流伺服电机驱动,关节位置由编码器和电位计测定。
三个大功率的电机用于驱动腰部关节,肩关节和肘关节,而三个较小功率的电机用于驱动腕关节位置和方位。
Puma560机器人有一个宽广的可达空间和较大的加速度,加速度大的超出人的想象。
Puma560机器人设计的初衷是用于工业装配和操作控制,目前大多用于科研院所作为研究的目的来应用。
现在机器人操作臂本身仍然有高的强度和动力,然而原来的UnimationMarkⅡ控制器已经过时并且急需替代。
随着现代科技的快速发展,出现了能够运行MATLAB/SIMULINK软件的个人计算机,并且还存在有其它的功能,例如实时监控设备、快速成型、以及用于控制机器人操作臂的高级在线测试。
基于机器人控制“工具箱”的SIMULINK软件可以控制Puma560机器人操作臂,但是它不具备控制计算转矩的功能,正因为此,本文重点介绍这一技术的相关内容。
Puma560机器人的改进和接口部分
为了利用个人计算机来控制Puma560机器人操作臂,我们特意去掉了原来的LSI/11计算机、EEPROM存储器芯片、CMOS芯片、ad/ac接口、数字伺服控制板、以及操作臂接口卡。
正如操作臂接口卡中所描述的一样,原来的功率放大器以及电流、转矩控制器在新设计的控制结构体系中仍然存在。
Puma560机器人控制部分的硬件结构如图一所描述。
专用的TRC041改进卡代替原来的芯片安装在MarkⅡ控制器的背面。
控制器上的TRC041芯片通过专用的电缆与Q8数据采集器相连接,而Q8数据采集器又与个人计算机上的PCI接口相连接。
奔腾4,2.4GHz的个人计算机在Windows2000操作系统下运行,用于控制机器人操作臂的精确运动。
伺服电机的转矩通过MarkⅡ控制器来控制,并且与由个人计算机通过Q8数据采集器发送过来的数字电压相比较。
Q8数据采集器从TRC041芯片上接收到编码器和电位计上的信号。
电位计上的信号用来校准和标定最近接收到的标志信号,然后校准编码器上的读数用来决定关节的位置和方位。
控制器设计
利用控制计算转矩来实现机器人操作臂的控制,这一项技术多用于非线形的动态系统的控制中,用来去掉操作臂控制的非线形、也方便内部控制和定值的获得。
关节位置通过微分积分调节器控制计算转矩,进而来控
个人计算机
Windows2000
MATLA6.5/Simulink5.0
Wincon402
PUMA560操作臂
改进的UNIMATE控制器
PCI总线
Q8数据采集器
TRC041网卡设置
图1硬件结构
专用的TRC041改进卡安装在MarkⅡ控制器上,控制器上的TRC041改进卡和Q8数据采集器通过专用的电缆线来连接。
奔腾4,2.4GH的个人计算机在Windows2000操作系统下运行,同时应用MATLAB/SIMULINK以及Wincon应用软件来控制机器人操作臂。
制关节位置,计算转矩控制器计算必须的参考转矩值,参考转矩值的计算公式如下:
ι=M(q)(q
+K
e`+K
e+K
ε)+N(q,q`)(A-1)
在这里ι∈R6是一个矢量,是指关节转矩的参考值;q∈R6也是一个矢量,一般是指关节变量;M(q)是转动惯量矩阵;N(q,q`)代表非线性的术语,例如向心力和震动的影响,以及摩擦和重力(万有引力)的影响;e(t)=qd(t)-q(t)是跟踪误差;qd(t)∈R6是理想的轨迹值;ε∈R6是总的跟踪误差;并且Kp、Ki和Kv是微分,积分调节器在各个关节的参数设定值的矩阵真值表。
因为公式(1)是一个在时间上连续,即动态参数的公式在应用的初期通常应在数字计算机中利用。
假定这个动态的模型应用的相当恰当和精确,这个设计将对机器人操作臂提供有效的控制,幸运的是这种Puma560机器人操作臂的动态性正如其所描述的一样,满足这种设计要求。
相对的动态性和Denavit-Hatenburg操作臂所应用的参数是基于[4][5],参考文献中所描述的一样。
PID调节器参数的获取可参考文献[4]。
软件部分设计
软件结构的实现是基于在Windows2000下运行的SIMULINKLAB和SIMULINK软件来实现的。
SIMULINK软件使控制算法的快速设计得以实现,并且允许利用C代码来实现特殊的功能,并称之为S功能。
除此之外,Wincon4.1[6]用来实时执行已经编译的C代码,这些C代码是来自于SIMULINK软件项目下的实时监控处得来的,并且通过它来与Q8数据采集器通信。
图2利用PID调节器设计计算转矩控制
并在SIMULINK软件下实现控制
利用PID调节器设计计算转矩控制并在SIMULINK软件下实现控制。
已知当前的关节位置和过去的关节位置通过调节器计算当前的关节速度。
饱和反馈用来防止积分器出错,采样间隔是1ms。
轨迹生成
轨迹的生成也即是关节的运行路线的生成,是通过MATLAB代码来实现的。
在实时控制器运行的时候通过关节点理想轨迹的离线计算可以充分利用处理器,提高处理器的利用效率。
第五个命令是用来计算关节沿着指定的路线运动时关节角的矩阵变换。
这个矩阵一旦被计算出来,这个变换矩阵就被用来作为控制器的表格来实现理想关节角的插值。
控制器的实现
PID计算转矩控制器利用SIMULINK软件来实现,它的实现如图2所示。
由公式
(1)给定的计算转矩的控制准则有一部分写成C代码作为SIMULINK软件的S功能。
专门的SIMULINK软件模块与Q8数据采集器连接在一起来实现控制算法的计算,并且将计算转矩的参考值传送到MarkⅡ控制器。
假定这个动态的模型应用的相当恰当和精确,这个设计将对机器人操作臂提供有效的控制,幸运的是这种Puma560机器人操作臂的动态性正如其所描述的一样,满足这种设计要求。
相对的动态性和Denavit-Hatenburg操作臂所应用的参数是基于[4][5]参考文献中所描述的一样。
PID调节器参数的获取可参考文献[4]。
用户界面
基于MATLAB的用户使用界面允许使用者通过改变由轨迹生成器生成的代码参数来详细的了解目标轨迹和用户界面。
用户使用界面如图三所示。
这个机器人操作的用户使用界面十分友好,关节空间的轨迹可以被储存,也可以被重新装载。
末端执行器在笛卡尔坐标系中的位置和方位可以利用定义在文献[7]中的运动学方程来得到。
关节到达笛卡尔坐标系中某一特定位置和方位的关节角由文献[8]中给定的逆运动学方程来求解。
实验调试
在模拟环境中完成测试,并且达到有效性的要求后,也应该调试一下实际的机器人操作臂的应用情况。
很多测试指标都用来评估控制器的性能。
控制器调试的结果表明此控制器的设计结构有很好的使用性能,对于不同的轨迹参考值均能达到小的跟踪误差,并且这些误差在要求的范围之内。
为了达到跟踪误差的高性能和高精度,在此设计中采用了飞投运动的原理。
飞投指的是渔民投掷鱼线到河中的某一位置。
这一涉及到飞投的行为存在以下几种状态,向前投掷,向前的运动,腕部关节的抖动,以及投掷运动的完成。
PUMA560机器人操作臂的运动通过提供一个预先设定的关节轨迹到控制器上,然后大体上来模仿投掷运动的原理来实现关节轨迹的控制。
参考轨迹包括正弦曲线信号的合适的相位,量值,以及应用在关节二、三、五上的频率。
运动结果实现了由人来完成的投掷运动的效果。
PUMA560机器人操作臂实验的关节轨迹的数值如图四所示,这个界面里包括了投掷运动的三个循环周期。
实验用的视频是AVI格式的,你可以在文献[10]里下载。
图3应用界面
该界面显示了当前的关节角度和末端执行器的笛卡尔坐标位置。
在关节的运动范围内编辑器提供有效的关节角度,利用其可以设定理想关节角度。
它也显示了末端执行器的理想笛卡尔坐标位置。
该应用界面也可以存储当前位置和装载以前存储的位置。
教学过程
研究这个课题的学生获得了改进工业机器人操作臂的能力和接口部分的设计。
这个课题包括阅读和解释即熟练掌握相关科技文献上的相关知识,移去UNIMATE控制器上的多余的芯片,根据使用指南插入改进后的芯片选择和购买电缆和终端,以及接口电源,伺服系统,编码器,以及电位计和数据采集器。
学生也学习了计算转矩控制的原理,并且将其熟练的应用到了PUMA560机器人操作臂的运动控制当中。
运动控制的实现还涉及到计算转矩控制方程的模型代码,在这里计算转矩控制方程是通过C语言编制的SIMULINK软件的S功能来实现的;运动控制的实现还包括作为校准的SIMULINK系统的设计,比例微分积分调节器控制,轨迹生成,以及外部信号接口。
机器人的应用开发
由于该课题是在2002-2003学年完成的,机器人和基于接口技术的新的个人计算机运动控制的开发已经由另外的两个再读研究生来完成,这次历时四年。
这两次计算转矩的控制开发都是用在内环上。
这次研究的主要内容是:
⑴PUMA机器人操作臂的力控制。
这个内容涉及到操作臂的末端执行器的六个力传感器以及和计算机的接口部分的设计,也包括在SIMULINK下对控制器的控制。
⑵实现PUMA机器人操作臂的随意控制。
这个内容包括利用专用的控制器替换在2002-2003年使用的比例微分积分调节器控制的控制。
在基于神经网络控制器的发展和实现的基础上,未来的研究主题因该是利用神经网络控制器来控制PUMA机器人操作臂。
一些机器人控制的实验手册可以提供给学生二手的资料,以便了解机器人控制的相关知识,也可以利用它来评估不同的控制器设计的优劣,包括0重力加速度、计算转矩控制、阻抗控制、以及导纳控制等。
这篇论文描述了PUMA560机器人操作臂的改进,与个人计算机的接口,基于MATLAB轨迹生成和友好的用户界面的软件的开发,在SIMULINK下比例微分积分调节器控制的实现。
这个项目是利用先进的技术将在技术上落后但机械结构上仍还完善的机器人实验台变废为宝的恰当的例证,能够使使用者在低成本的基础上利用基于SIMULINK和MATLAB开发的先进的、柔性的软件来实现对机器人操作臂的实验研究。
附录2
HardwareRetrofitandComputedTorqueControlofaPuma560Robot
Updatinganindustrialmanipulatorforeducationaluse
TheDepartmentofCyberneticsattheUniversityofReadingU.K.had,foranumberofyears,afunctionalPUMA560manipulatorrobotwithitsoriginalcontrolhardwareandhumaninterfaces.Thisarticledescribestheresultsofathird-yearprojectbytwoundergraduatestudentsintheCyberneticsDepartment.TheprojectconsistedofinterfacingtherobotarmwithaPCanddevelopingsoftwareforthereal-timeimplementationofacomputedtorquecontrolscheme.
ThePUMA560isasix-degree-of-freedomroboticmanipulatorthatusessixdcservomotorsforjointcontrol.Jointpositionsaremeasuredusingencodersandpotentiometers.Threelargemotorsprovidecontrolofthewaist,shoulder,andelbow,whilethreesmallermotorspositiontheorientationofthewrist.ThePUMA560hasalargereachandcanachieveimpressiveacceleration.Originallydesignedforassemblyandmanipulationtasks,thePUMAarmisnowwidelyadoptedbyacademicinstitutionsforresearchpurposes.Whiletherobotarmitselfisstillrelativelyrobust,theoriginalUnimationMarkIIcontrollerwasoutdatedandinneedofreplacement.TheuseofaPCrunningMAT-LAB/SIMULINKandassociatedreal-timetoolsfacilitatestheprototyping,development,andon-linetestingofadvancedschemesforcontrollingthemanipulator.ASIMULINK-basedrobotictoolkitforcontrollingthePUMA560manipulator,butwhichexcludesthecomputedtorquecontroltechniqueemployedinthisarticle,isreportedin[1].
RetrofittingandInterfacingthePUMA560Robot
TocontrolthePUMAarmusingaPC,weremovedtheoriginalLASI/11computer,EEPROMboards,andarminterfacecard.Theoriginalpoweramplifiersandcurrent/torquecontrollersremaininthecontrolarchitecture,asdoesthearmcablecard.ThehardwareconfigurationisillustratedinFigure1.
Special-purposeTRC041retrofitcards[2]reinstalledinthebackplaneoftheMarkIIcontroller,replacingtheoriginalboards.Custom-madecablesareusedtointerfacetheTRC041cardsandaQ8dataacquisitionboard[3],whichisconnectedtothePCIinterfaceofthePC.AnIntelPentium4.2.4GHzPCrunningtheWindows2000operatingsystemisusedtocontrolthearm.ServotorquesarecontrolledbytheMarkIIcontroller,withreferencevaluessentas
PersonalComputer
Windows2000
MATLAB6.5/Simulink5.0
Wincon402
PPUMA560
Manipulator
Retrofitted
UNIMATE
Controller
PCIBUSQ8DataAcquisitionBoard
TRC041
Cable
Card
Set
Figure1.Hardwareconfiguration.
SpecialTRC041retrofitcardswereinstalledintheMarkIIcontroller.TheTRC041cardsinthecontrollerandaQ8dataacquisitionboardwereinterfacedusingcustom-madecables.AnIntelPentium42.4GHzPCrunningtheWindows2000operatingsystem,togetherwithMATLAB/SLMULINKandWincon,areusedtocontrolthearm.
analogvoltagesfromthePCthroughtheQ8board.TheQ8boardreceivesencoderandpotentiometersignalsfromtheTRC041.Readingsfromthepotentiometersareusedtocalibratetheencoderstothenearestindexpurse.Thecalibratedencoderreadingsarethenusedtodeterminethejointpositions.
ControllerDesign
Controlofthearmisperformedusingcomputedtorquecontrol[4].Thistechniqueusesanonlineardynamicmodelofthesystemtoremovethenonlinearitiesofthemanipulator,facilitatingexternalcontrolwithfixedgains.Jointpositionsarecontrolledbymeansofaproportionalintegral-derivative(PID)computedtorquecontroller,whichcalculatesthesixrequiredreferencetorquevaluesbymeansof
ι=M(q)(q
+K
e`+K
e+K
ε)+N(q,q`)(A-1)
Whereι∈R6isavectorofjointtorquereferences;q∈R6isavectorofgeneralizedjointvariables;M(q)istheinertiamatrix;N(q,q`)representsnonlinearterms,includingCoriolis/centripetaleffects,friction,andgravity;e(t)=qd(t)-q(t)isthetrackingerror,qd(t)∈R6isthedesiredtrajectory;ε∈R6istheintegralofthetrackingerror;andKp,KiandKvarediagonalmatriceswiththeproportional,derivative,andintegralgainsforeachjoint,respectively.Since
(1)isacontinuous-timeformulation,asufficientlyshortsamplingperiodshouldbeusedinadigitalcomputer-basedimplementation.
Providedthedynamicmodelemployedisreasonablyaccurate,thisschemeprovideseffectivecontrolofthearm.Fortunately,thedynamicsofthePUMA560manipulatorarewellknownandreported.TheinversedynamicsandDenavit-Hatenburgarmparametersemployedarebasedonthosereportedin[4][5].ThePIDcontrollergainsemployedarereportedin[4].
SoftwareDesign
TheimplementedsoftwarearchitectureisbasedonMATLABandSIMULINKrunningunderWindows2000.SIMULINKenablesrapiddesignofcontrolalgorithmsandallowsspecificfunctionstobeimplementedinCcodeasS-functions.Inaddition,WinCon4.[6]isusedforreal-timeexecutionofthecompiledC-codegeneratedbytheRealTimeWorkshopformtheSIMULINKdiagram,andtocommunicatewiththeQ8board.
TrajectoryGeneration
Trajectorygeneration,whichisperformedinjointspace,wasimplementedinMATLABcode.Theoff-linecalculationofpointsonthedesiredtrajectoryreducestheoverheadontheprocessorwhilethereal-timecontrollerisrunning.Afifth-orderpolynomialisusedtocalculateamatrixofjointanglesalongthespecifiedtrajectory.Oncecalculated,thismatrixisused