




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,中南大学蔡自兴,谢斌zxcai,xiebin2010,机器人学基础第八章机器人编程,1,Ch.8RobotProgramming,FundamentalsofRobotics,FundamentalsofRobotics,2,Review,GeneralConsiderationsinTrajectoryPlanningInterpolatedCalculationofJointTrajectoriesPlanningofCartesianPathTrajectoriesRealTimeGenerationofPlanningTrajectories,2,FundamentalsofRobotics,3,3,Questions,Accordingtoleveloftaskdescription,howmanycategoriescanrobotprogramminglanguagesbesplitinto?Listoutseveralcommonlyusedrobotprogramminglanguages.Comparisonbetweenoff-lineprogrammingandteachbyshowing.,Ch.8RobotProgramming,4,Contents,RequirementsandLanguageTypestoRobotProgrammingStructureandBasicFunctionsofRobotLanguageSystemCommonly-UsedLanguageforRobotProgrammingOff-LineProgrammingofRobotsSummary,4,Ch.8RobotProgramming,5,Ch.8RobotProgramming,机器人编程语言是一种程序描述语言,它能十分简洁地描述工作环境和机器人的动作,能把复杂的操作内容通过尽可能简单的程序来实现。机器人编程语言也和一般的程序语言一样,应当具有结构简明、概念统一、容易扩展等特点。由于机器人的控制装置和作业要求多种多样,国内外尚未制订统一的机器人控制代码标准,所以编程语言也是多种多样的。,Ch.8RobotProgramming,6,8.1RequirementstoRobotProgrammingmovegarmtogoal2linearly;movegarmtogoal3viavia1;,8.1RequirementsandTypesofRobotProgrammingLanguages,10,8.1.1RequirementstoRobotProgramming,Flowofexecution允许用户执行测试、分支、循环、调用子程序以及中断等流程。Programmingenvironment包含断点调试功能,以及典型的编程支持(如文本编辑、调试程序和文件系统等)。Sensorintegration在编程和作业过程中,应便于人与机器人之间进行信息交换。能与传感器进行信息交互,以此来控制程序的流程。,8.1RequirementsandTypesofRobotProgrammingLanguages,11,11,8.1.2TypesofRobotProgramming机器人编程的类型,根据编程方式,机器人编程可以分为:Teachbyshowing(示教编程)手把手示教Robotprogramminglanguages(机器人语言编程)用专用的或通用的机器人语言来描述机器人的动作轨迹Off-lineprogramming(离线编程)在专门的软件环境支持下用专用或通用程序,在离线情况下进行机器人轨迹规划编程,示教盒示教,8.1RequirementsandTypesofRobotProgrammingLanguages,12,Teachbyshowing,8.1RequirementsandTypesofRobotProgrammingLanguages,13,13,8.1.2TypesofRobotProgramming,根据作业描述水平的高低,机器人编程语言可以分为:Motion-levelprogramming(动作级)以机器人关节或末端执行器的动作为中心来描述各种操作;Object-levelprogramming(对象级)以描述操作物体之间的关系为中心的语言;Task-levelprogramming(任务级)只要直接指定操作内容就可以了,为此,机器人必须一边思考一边工作。,8.1RequirementsandTypesofRobotProgrammingLanguages,14,Contents,RequirementsandLanguageTypestoRobotProgrammingStructureandBasicFunctionsofRobotLanguageSystemCommonly-UsedLanguageforRobotProgrammingOff-LineProgrammingofRobotsSummary,14,Ch.8RobotProgramming,15,15,8.2Structure&BasicFunctionsofRobotProgrammingSystem机器人语言系统的结构和基本功能,8.2.1StructureofARobotProgrammingSystem机器人语言系统的结构,8.2StructureandBasicFunctionsofARobotProgrammingSystem,16,16,8.2.2BasicFunctionsofRobotProgrammingLanguages机器人编程语言的基本功能,运算(Calculation):是机器人最重要的功能之一。包括机器人的正解、逆解、坐标变换及矢量运算等。机械手运动(MotionofRobotManipulators):是机器人最基本的功能。机器人语言用最简单的方法向各关节伺服装置提供一系列关节位置及姿态信息,由伺服系统实现运动。工具指令(ToolInstruction):包括工具种类及工具号的选择、工具参数的选择及工具的动作(工具的开关、分合)。,8.2StructureandBasicFunctionsofARobotProgrammingSystem,17,17,8.2.2BasicFunctionsofRobotProgrammingLanguages,决策(Decision):是指机器人根据作业空间范围内的传感信息而做出的判断决策。这种决策功能一般由条件转移指令实现。通信(Communication):即机器人系统与操作人员的各式通信,包括机器人向操作人员要求信息和操作人员知道机器人的状态、机器人的操作意图等。传感数据处理(SensorDataProcessing):机器人只有与传感器连接起来才能具有感知能力,具有某种智能。传感器输入和输出信号的形式、性质及强弱不同,往往需要进行大量的复杂运算和处理。,8.2StructureandBasicFunctionsofARobotProgrammingSystem,18,Contents,RequirementsandLanguageTypestoRobotProgrammingStructureandBasicFunctionsofRobotLanguageSystemCommonly-UsedLanguageforRobotProgrammingOff-LineProgrammingofRobotsSummary,18,Ch.8RobotProgramming,19,研究室里的实验语言美国斯坦福大学开发的AL语言IBM公司开发的AUTOPASS语言英国爱丁堡大学开发的RAPT语言等;商用的机器人语言由AL语言演变而来的VAL语言日本九州大学开发的IML语言IBM公司开发的AML语言等。,8.3CommonlyUsedRobotProgrammingLanguages常用的机器人编程语言,8.3CommonlyUsedRobotProgrammingLanguages,20,8.3CommonlyUsedRobotProgrammingLanguages,8.3CommonlyUsedRobotProgrammingLanguages,21,8.3CommonlyUsedRobotProgrammingLanguages,8.3CommonlyUsedRobotProgrammingLanguages,22,22,斯坦福大学1974年开发的AL语言是一种高级程序设计系统,描述诸如装配(Assembly)一类的任务。它有类似ALGOL的源语言,有将程序转换为机器码的编译程序和由控制操作机械手和其他设备的实时系统。基本功能语句:标量(SCALAR)矢量(VECTOR)旋转(ROT)坐标系(FRAME)变换(TRANS),ALLanguage,8.3CommonlyUsedRobotProgrammingLanguages,23,上图是机器人插螺栓作业的示意图。可以建立起图中的base坐标系、beam坐标系和feeder坐标系。,Example:机器人插螺栓作业,8.3CommonlyUsedRobotProgrammingLanguages,24,baseFRAME(nilrot,VECTOR(20,0,15)*inches);,坐标系base的原点位于世界坐标系原点(20,0,15)英寸处,z轴平行于世界坐标系的z轴,base坐标系,例.机器人插螺栓作业,8.3CommonlyUsedRobotProgrammingLanguages,25,beamFRAME(ROT(z,90*deg),VECTOR(20,15,0)*inches);,坐标系beam原点位于世界坐标系原点(20,15,0)英寸处,并绕世界坐标系z轴旋转90,beam坐标系,例.机器人插螺栓作业,8.3CommonlyUsedRobotProgrammingLanguages,26,feederFRAME(nilrot,VECTOR(25,20,0)*inches);,坐标系feeder的原点位于世界坐标系(25,20,0)英寸处,且z轴平行于世界坐标系的z轴,feeder坐标系,例.机器人插螺栓作业,8.3CommonlyUsedRobotProgrammingLanguages,27,Tgbase*TRANS(ROT(x,180*deg),VECTOR(15,0,0)*inches);,建立坐标系Tg,其z轴绕base坐标系的x轴旋转180,原点距base坐标系原点(15,0,0)英寸处。,Tg坐标系,例.机器人插螺栓作业,8.3CommonlyUsedRobotProgrammingLanguages,28,ETg*TRANS(nilrot,VECTOR(0,0,5)*inches);,建立坐标系E,其z轴平行于Tg坐标系的z轴,原点距Tg坐标系原点(0,0,5)英寸处,手爪E坐标系,例.机器人插螺栓作业,8.3CommonlyUsedRobotProgrammingLanguages,29,MOVE语句用来表示机器人由初始位置和姿态到目标位置和姿态的运动。假定机械手在任意位置,可把它运动到停放位置:MOVEbarmTObpark;如果要求在4s内把机械手移动到停放位置:MOVEbarmTObparkWITHDURATION=4*seconds;,ALLanguage,8.3CommonlyUsedRobotProgrammingLanguages,30,符号“”可用在语句中,表示当前位置,如:MOVEbarmTO2*zhat*inches;该指令表示机械手从当前位置向下移动2in。由此可以看出,基本的MOVE语句具有如下形式:MOVETO;MOVEbarmTOVIAf1f2f3表示机械手经过中间点f1、f2、f3移动到目标坐标系。,ALLanguage,8.3CommonlyUsedRobotProgrammingLanguages,31,用AL语言编制上图中机器人把螺栓插入其中一个孔里的作业。这个作业需要把机器人移至料斗上方A点,抓取螺栓,经过B点、C点再把它移至导板孔上方D点,并把螺栓插入其中一个孔里。,参考步骤:(1)定义机座、导板、料斗、导板孔、螺栓柄等的位置和姿态;(2)把装配作业划分为一系列动作,如移动机器人、抓取物体和完成插入等;(3)加入传感器以发现异常情况和监视装配作业的过程;(4)重复步骤13,调试改进程序。,HomeWork思考题,8.3CommonlyUsedRobotProgrammingLanguages,32,Contents,RequirementsandLanguageTypestoRobotProgrammingStructureandBasicFunctionsofRobotLanguageSystemCommonly-UsedLanguageforRobotProgrammingOff-LineProgrammingofRobotsSummary,32,Ch.8RobotProgramming,33,33,8.4Off-LineProgrammingofRobots机器人的离线编程,8.4.1FeaturesofRobotOff-LineProgramming随着机器人应用范围的扩大和所完成任务复杂程度的提高,示教方式编程已很难满足要求机器人离线编程系统利用计算机图形学建立机器人及其工作环境的模型,再利用规划算法通过对图形的控制和操作,在离线的情况下进行轨迹规划示教编程和离线编程两种方式的比较,8.4Off-LineProgrammingofRobots,34,34,8.4.1FeaturesofRobotOff-LineProgramming,可减少机器人非工作时间,当对下一个任务进行编程时,机器人仍可在生产线上工作;使编程者远离危险的工作环境;便于和CAD/CAM系统结合,做到CAD/CAM/机器人一体化;可使用高级计算机编程语言对复杂任务进行编程;便于修改机器人程序。,8.4Off-LineProgrammingofRobots,35,35,8.4.2StructureofRobotOff-LineProgrammingSystem,8.4Off-LineProgrammingofRobots,36,36,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,8.4Off-LineProgrammingofRobots,37,37,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,工业机器人一般提供两个用户接口:用于示教编程,即用示教盒直接编制机器人程序。用于语言编程,即用机器人语言编制程序,使机器人完成给定的任务。,8.4Off-LineProgrammingofRobots,38,38,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,机器人系统的几何构型大多采用三种形式的组合:结构立体几何表示(覆盖的形体种类较多)扫描变换表示(便于生成轴对称的形体)边界表示(最便于形体在计算机内表示、运算、修改和显示),8.4Off-LineProgrammingofRobots,39,39,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,分为运动学正解和运动学反解两部分就运动学反解而言,离线编程系统与机器人控制柜的联系有两种选择用离线编程系统代替机器人控制柜的逆运动学,将机器人关节坐标值通讯给控制柜将笛卡儿坐标值输送给控制柜,由控制柜提供的逆运动学方程求解机器人的形态,Whichmethodisbetter?,8.4Off-LineProgrammingofRobots,40,40,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,离线编程系统需要对机器人的运动轨迹进行仿真。规划的两种类型自由移动(仅由初始状态和目标状态定义)依赖于轨迹的约束运动(受到路径、运动学和动力学约束)轨迹规划算法关节空间的插补笛卡儿空间的插补,8.4Off-LineProgrammingofRobots,41,41,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,当机器人跟踪期望的运动轨迹时,如果所产生的误差在允许范围内,则离线编程系统可以只从运动学的角度进行轨迹规划,而不考虑机器人的动力学特性。如果机器人工作在高速和重负载的情况下,则必须考虑动力学特性,以防止产生比较大的误差。从软件设计的观点看,动力学模型的建立分为三类数字法符号法解析(数字符号)法,快速有效地建立动力学模型是机器人离线编程的主要任务之一,8.4Off-LineProgrammingofRobots,42,42,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,并行操作是在同一时刻对多个装置工作进行仿真的技术用于提供对不同装置工作过程进行仿真的环境工作原理在执行过程中,首先对每一装置分配并联和串联存储器如果可以分配几个不同处理器共一个并联存储器,则可使用并行处理,否则应该在各存储器中交换执行情况,并控制各工作装置的运动程序的执行时间,8.4Off-LineProgrammingofRobots,43,43,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,在离线编程系统中,对传感器进行建模以及能对装有传感器的机器人的误差校正进行仿真是很重要的。传感器主要分局部的和全局的两类局部传感器有力觉、触觉和接近觉等传感器全局传感器有视觉等传感器传感器功能可以通过几何图形仿真获取信息,8.4Off-LineProgrammingofRobots,44,44,8.4.2StructureofRobotOff-LineProgrammingSystem,Userinterface3-DmodelingKinematicemulationPath-planningemulationDynamicemulation,MultiprocesssimulationSimulationofsensorsLanguagetranslationtotargetsystemWorkcellcalibration,在离线编程系统中通讯接口起着联结软件系统和机器人控制柜的桥梁作用。离线编程系统实用化的一个主要问题是缺乏标准的通讯接口通讯接口把仿真系统所生成的机器人运动程序转换成机器人控制柜可以接受的代码解决办法可以是选择一种较为通用的机器人语言,然后通过对该语言加工使其转换成机器人控制柜可接受的语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省淄博市高新区2024-2025学年(五四学制)六年级下学期期末历史试题(含答案)
- 北师大版四年级上册数学第一单元 认识更大的数 检测题(无答案)
- 3D MAX的进阶之路(山东联盟) 知到智慧树答案
- 《跨文化认知与文明互鉴:意大利》知到智慧树答案
- 《道德经》的智慧启示知到智慧树见面课答案
- 虚拟现实技术在旅游行业的应用案例研究
- 2025茶叶买卖合同标准版
- 水费收费员安全知识培训课件
- 消防设备调试与维护方案
- 水粉小狮子课件重点难点
- 2025历年退役军人考试题库及答案
- 第一二单元月考综合试卷(试题)四年级上册数学沪教版
- 2025级新生军训开训仪式动员大会
- 农产品质量安全标准体系与实施路径-洞察及研究
- 中组部选调生管理办法
- GB/T 12717-2007工业用乙酸酯类试验方法
- 教师薪酬与考核 新东方
- 一个华为客户经理回忆录资料讲解
- 中国文学理论批评史全套教学课件
- 新人教版九年级下册初中化学全册课前预习单
- 工厂规章制度员工守则.doc
评论
0/150
提交评论