六轴机械臂正解(FK)和逆解(IK)算法
整理出了如下几个计算六轴机械臂正解和逆解的关键点:01_机器人坐标系和关节的说明02_算法坐标系的建立03_D-H参数表的建立04_FK(正解)算法05_Matlab辅助计算FK(正解)06_IK(逆解)算法07_Matlab辅助计算IK(逆解)文档中针对FK以及IK算法的推导均有详细的推导过程。希望各位能根据推导过程写出自己的代码。图1针对机器人的关节坐标系,我们还需要规定各个关节的转动方向,如下图所示,我们依次描叙了各个关节的正负方向。在关节坐标系下,机器人各个关节的转动方向,必须和下图相符图22.机器人直角坐标系目前所说的直角坐标系是机器人的工具坐标系,如下图所示,因为该机器人没有安装执行末端,所以,工具坐标系原点在第六轴末端法兰中心处,红色箭头是Ⅹ轴,蓝色箭头是乙轴,根据右手定则确定Y轴方向@图3基坐标系所在的位置是定义机器人基座的位置,如上图所示,坐标系原点在第一关节的中心处,红色箭头所示为Ⅹ轴,蓝色箭头所示为乙轴,根据右手定则,即可确定Y轴的方向。具体如上图旁边那个坐标系所示。当我们说六轴机械臂位姿时,说的是六轴机械臂末端的位姿,该位姿包括六个参数,分别为Ⅹ YZABC。六轴机械臂未端的位姿是以基坐标系作为参考坐标系的:笛卡尔坐标系的Ⅹ轴,Ⅹ轴距离Y:笛卡尔坐标系的Y轴,Y轴距离Z:笛卡尔坐标系的Z轴,z轴距离A:XY-Z固定角坐标系下的偏转角B:X-Y-Z固定角坐标系下的俯仰角C:XY-Z固定角坐标系下的回转角ZA2呈Ax图如上图所示,A对应第一个坐标系中的γ,B对应第二个坐标系中的β,C对应第三个坐标系中的Q。为什么我们需要花费专门的一节来讲解六轴机器人的坐标系和关节?因为我们后续要学习的FK和就是以这个为基础的。FK是已知六轴机械臂在关节坐标系下各个关节转动的角度,然后求解直角坐标系下的Ⅹ YZABOK是已知六轴杋械臂在直角坐标系下的 XYZABO,然后求解关节坐标系下各个关节转动的角度二.算法坐标系的建立为了得出D-H参数表,我们首先需要针对六轴机器人的各个关节建立坐标系,在固定的坐标系下,才能最终得出连杆之间的变换关系,从而建立D-H参数表。82个2算法坐标系确定的通用方法如下1)坐标系的Z轴,与各个关节的旋转中心轴线重合2)坐标系的X轴,与沿着相邻两个z轴的公垂线重合3〕坐标系的Y轴,可以通过右手定则来确定当相邻两个z轴相交时,确定坐标系的方法如下1)坐标系的Y轴,沿着第一个Z轴与下一个z轴相交的延长线为Y轴2)坐标系的Ⅹ轴,通过右手定则确定当相邻两个Z轴平行时,确定坐标系的方法如下1)坐标系Ⅹ轴,相邻两个乙轴平行,做两个乙轴的公垂线,相交于下一个z轴为Ⅹ轴,方向为第一个Z轴到下一个Z轴的方向2)坐标系Y轴,通过右手定则确定三.D-H参数表的建立D-H参数表,实际上是相邻各个关节坐标的变换关系表,根据之前针对各个关节所建立的丛标系,按照如下四条变换规则,即可得到D-H参数表。变换规则1)绕Z轴,旋转9n+1n与Xn+1平行(方向一致))沿Zn轴,平移与Xn+1共线3)沿Xn轴,平移aAn与Xn+1原点重4)将Zn绕Xn+1轴,旋转αn+1Zn与Zn+1共线建立D-H参数表的详细步骤第一步,从第一关节到第二关节之间的变换绕z轴,旋转0度,让X0与X1平行且方向一致沿z轴,平移242,让Ⅺ0与X1共线沿Ⅺ轴,平移0,Ⅺ与X1原点重合将石绕X1轴,旋转90度,Z0与z1共线第二步,从第二关节到第三关节之前的交化绕z1轴,旋转90度,让X1与X2平行且方向一致沿Z1轴,平移0,让X1与X2共线沿X1轴,平移225,X1与X2原点重合将Z1绕X2轴,旋转0度,Z1与Z2共线第三步:从第三关节到第四关节之间的交换绕z2轴,旋转0度,让X2与X3平行且方向一致沿Z2轴,平移0,让Ⅹ2与X3共线沿X2轴,平移0,X2与X3原点重合将Z2绕X3轴,旋转90度,Z2与z3共线第四步:从第四关节到第五关节之间的变换绕z3轴,旋转0度让X3与X4平行且方向一致沿3轴,平移22886,让X3与X4共线沿3轴,平移0,X3与X4原点重合将Z3绕X1轴,旋转90度,Z3与Z1共线第五步:从第五关节到第六关节之间的变换绕Z4轴,旋转90度,让X4与X5平行且方向一致沿Z4轴,平移0,让X4与X共线沿X轴,平移0,X1与K5原点重合将Z4绕X5轴,旋转90度,Z4与z共线第六步:从第六关节到未端之间的变换绕z轴,旋转0度,让X5与X6平行且方向一致沿z轴,平移-50,让X5与X6共线沿X轴,平移0,X5与K6原点重合将z绕X轴,旋转0度,Z5与z6共线根据上图所示机械臂的尺寸参数以及以上六个步骤的变换,D-H参数表如下所示420901-202253-4228.864-5900900-500四.正解(FK)算法根据连杆变换规贝T=R(Z, B1*T(Z, di)*T(X, ai)*R(X, ai)6;00因为R(Z06:00100000aT(Z,a1)=00001000011000T(xa10100001d0001000 caROX. a)= osa oa;0001根据以上矩阵变换,可以得到如下连杆变换的通用矩阵如下Bi -se, ca s0,sa, a,c61s0 ce:cad sa asa0 saca d00根据以上连杆变换的通用矩阵和之前的D-H参数表,可以得到如下δ个连杆变换矩阵e10s61^0S0 0T6100102420001s20-22S620225c62000001620s60b203001000040s日4000c0 0010228.860001s50c650C650s650000006-s6006000C001-40FK算法需要解决的问题是:已知各个关节的转动角度,需要求出末端的位姿。已知:(61,2,θ3,θ4,θs,θ6求解:(X,Y,乙,A,B,C)计算公式如下所示13机器末端的位姿矩阵为72272313273300011722723py07*1T2T*37*4T5Tp000在以上的推导过程中,、T、2、37、4、7分别为相对于01、02、63、64、6s、的已知量。由此可以求解出位置变量(pPP)以及姿态变量a1T2723五. Matlab辅助计算正解(FK)根据上一章,我们有如下结论10s10100102420001s2-c620-225s6CS20225C60010
- 2020-12-05下载
- 积分:1
FLUENT经典算例合集7个
案例分析的电子书《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)目录前言..2目录FLUENT经典算例翻译之一算例1介绍如何使用 Fluent算例4非定常可压缩流动模型.52算例5辐射与自然对流模拟·:······99FLUENT经典算例翻译之二算例13使用非预混燃烧模型151算例15蒸发性液体喷雾建模.∴214算例18使用混合物多相模型和欧拉多相模型..∴252算例21使用欧拉多相粒子传热模型垂··D垂垂垂。看垂垂垂看D看垂·D4。垂278ww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)算例1介绍如何使用 Fluent引言此向导通过图例说明了一个发生在混合弯管处的两维湍流流动和传热问题的求解方法和过程。这种混合弯管的结构常见于发电厂和化工厂的管道系统中。正确计算出弯管内流体交汇处附近的流场和温度场分布,对于设计合适的入口管道位置具有重要意义通过此向导,用户可学会以下内容●在 Fluent中输入网格文件使用混合单位制去定义儿何体和流体的属性设置强制对流的湍流流动的流体物性和边界条件迭代计算并使用残差监视器监测计算过程及其收敛性●使用隔离求解器进行求解使用等势图检察流场和温度场●运用二阶离散化方法重新计算以获得更佳的温度分布对网格进行温度梯度自适应,进一步求解更佳的温度场分布前提条件在学习此向导之前,假设用户还没有使用 Fluent的给验,不过,已经学习过用户指南第一章中的简单算例,并且熟悉 Fluent的界面及其指南中的规约可题描述问题如图1-1所小。一股温度为26℃的冷流体流入大管道,在弯管处与另股温度为40℃热流体混合。管道的长度单位为英寸,而流体的属性和边界条件则使用国际单位。入口管道的雷诺数为2.03×105,因此,选择湍流流动模型。4ww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)P =100 kg/viscosity8x14FConductivity: k=0.537 Y4 miK2SpC Ic Heat 9=4216 Jkg-k6酽.2mT1121m图图1-1问题说明准备工作1.从 Fluent的文件光盘中拷贝文件 elbow/ elbow, msh到电脑的 Fluent作日录中对于Unⅸx系统,当把文件光盘放入电脑光驱后,可以在以下目录找到这个文件:/ edrom/uent61/help/ tuttles述 cdrom为电脑的光驱目录对于 windows系统,当把文件光盘放入电脑光驱后,可以在以下冂录找到个文件cdrom: fluent 6.1 help tutfiles上述 cdrom为电脑的光驱目录2.启动 Fluent,选择2D求解器。ww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)第1步:与网格相关的操作读取网格文件 elbow, mshFilc→Read+}CascSelect fileFiterh,于d,SH,GRdirectoriesFileshome user tutorial/elbow. msh/home userautorialaCase Filehome /user/tutorialoKFiterCancela)在 Files项中点击选中 elbow. msh,然后点击OK完成操作。注意当 Fluent读取网格文件的同时,信息会不断显示在反馈窗口内,报告网格转化的过程。当读取网格文件完毕, Fluent的反馈窗凵会显示共读取了918个三角形的流体单元,以及许多带着不同分区标识符的边界面。2.网格检查。Grid→} Check6ww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)F1uent的信息反馈窗口会显示如下信息:Grid checkDomain extentscoordinate:min(m)=0.0000009+00,max(m)=6.400001e+01y- coordinate:min(m)=-4.538534e+00,max(m)=6.400000e+01Volume slatisticsminimum volume (m3): 2.782193c-01maximum volume (m3):3.926232e+00total volume (m3):1.682930e+03Face area statisticsminimum face area (m2):8.015718e-01maximum face area(m2):4. 118252e+00Checking number of nodes per cellChecking number of faces per cellChecking thread pointers.Checking number of cells per faceChecking face cellsChecking bridge facesChecking right-handed cellsChecking face handednessChecking element type consistencyChecking boundary typesChecking face pairs.Checking periodic boundaries.Checking node countChecking nosolve cell countChecking nosolve face countChecking face childrenChecking cell childrenChecking storageww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)Done注意网格检查结東后,信息反馈窗∏会以默认的SI单位制给出网格在ⅹ轴和Y轴上的最大和最小值,并将报告出网格的賦它特性。网格检查还会报告出有关网格的任何错误。需要特别注意的是,确保最小体积不能是负值,否则 Fluent无法进行计算。在SI单位制中,默认单位是m,若想改变单位制,使用 in ches:可以打开 Scale grid对话框。3.平滑(或者交换)网格Grid→} Smooth/swap…Smooth/Swap GridsmoothSwap InfoMethodNumber SwappedskewnessMinimum skewnesscumber visitedNumher of lerationsSmoothCloseFluent读取网格文件后,平滑三角形或四边形网格是一个良好的习惯,那样能确保使用质量铰好的网格进行计算。a)点击按钮 Smooth,再点击按钮Swap,重复上述操作,直到 Fluent报告没有需要交换的面为止。若 Fluent再无法通过交换改善网格质量,则没有平面可被交换了。b)点击 Close关闭对话框。ww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)4.更改网格的长度单位Grid→ scalea)在 Units conversion(单位转换)项的 Grid was created ln(网格长度单位)的右侧下拉列表中选择In(代表选择了英寸b)点击 Scale按钮,更改长度单位。在 Domain extents栏中采用了默认的SI单位制,长度单位为mc)点击按钮 Change length Units,设定 inches(英寸)为此次计算采用的长度单位确保Xmax(in)和Ymax(in)中数值为64英尺。(如图1.1)Scale gridScale factorsUnit a conversion00254rid Was Created In inY0+0254Change Length UnitsDomain extentsXmax [in]E4400001Ymin (in534Ymax(in) 64scaleUnscaleCloseHeld)计算采川的长度单位已被吏改为 inches(英寸),此时便能正确反映网格的几何尺寸注意此算例的求解过程中,除了长度外,其它单位均采用SI制。一般来说,没有必要对其它单位进行改动。按照上述的操作,长度单位已被确定为 inches若用户想采用别的单位制作为长度单位,如mm,可以在 Define的下拉菜单中打开 Set units对话框,进行更改。ww.myCFDcn《数值计算与工程仿真》专刊一 FLUENT HELP算例精选中文版(→)5.显示网格。(图1.2)Display→Grid,,Grid DisplOptionsEdge TypeSurfaces三彐p Mores今Atermal-3pressure-outlet-7H Edgesv feature velocity-inlet-5p facesy outlineuelocily-inlet-rall-4Partitionswall-iiShrink factor到终安Surface Types且彐Surface eame patternclip-surfHatchfanOutline InteriorDIsplayColorsCloseHelpa)确保在 surfaces项屮的所有表面都被选屮,然后点击 Display。ww.myCFDcn
- 2020-11-30下载
- 积分:1