一种柔性机械臂横向振动pd边界控制模拟方法

文档序号:8256718阅读:213来源:国知局
一种柔性机械臂横向振动pd边界控制模拟方法
【技术领域】
[0001] 本发明涉及振动控制领域,特别涉及一种柔性机械臂横向振动ro边界控制模拟 方法。
【背景技术】
[0002] 柔性机械臂具有重量轻,能耗低,仅需用较少的动力而能获得较大的机动性等优 点而广泛应用于机器人、机械工程和航天技术等工程领域。柔性机械臂是一个强耦合、强非 线性的时变结构,但由于弹性变形而严重地影响了其工作状态,阻碍了工程中的广泛应用。 而如何从结构设计、运动学、动力学和控制方面考虑避免、减小和消除弹性变形和弹性振动 的影响是一个急待解决的问题。因此,必须开展对柔性机械臂结构设计和控制方法的研宄。 柔性机械臂系统是一个典型的分布参数系统,其动力学响应是比较复杂的,尤其反映在弹 性运动中,只有很好的研宄它,才能保证柔性机械臂在实际操作中具有较高的精度和可靠 度,为真正实现机械臂的实时振动控制创造条件。这些研宄将为航空航天、机械结构等振动 控制方面研宄提供理论参考。
[0003] 国内外学者对柔性机械臂振动边界控制大多处于理论研宄阶段,而对柔性机械臂 振动边界控制半实物模拟却很少报道。

【发明内容】

[0004] 为了克服现有技术存在的缺点与不足,本发明提供一种柔性机械臂横向振动ro 边界控制模拟方法。
[0005] 本发明采用如下技术方案:
[0006] -种柔性机械臂横向振动ro边界控制模拟方法,包括如下步骤:
[0007] S1在PC机上建立Matlab⑶I界面,模拟柔性机械臂振动,具体为
[0008] S1. 1采用差分离散化方法对TOEs方程进行离散化;
[0009] S1. 2将离散化的数据进行离散处理,时间离散点每次运算7个,此离散迭代方法 记为f7;
[0010] si. 3将第n次运算的7个差分运算结果用plot函数画出,模拟柔性机械臂横向振 动显示在界面窗口,同时由串口通信传输到控制模块,所述n为自然数,n的初始值为1;
[0011] S2控制模块接收串口传输的数据,对数据进行标识符识别分类后,并判断数据格 式是否正确,若正确,则提取这组数据中的w(L/2,t)、w(L,t)储存,否则返回数据,重新标 识符分类,w(L/2,t)、w(L,t)分别指在t时刻柔性机械臂中部L/2位移处和末端L位移处 的振动偏移量,L为柔性机械臂的长度;
[0012] S3利用差分公式计算出对应的柔性机械臂中部横向振动速度及柔性机械臂末端 横向振动速度;
[0013] S4根据S2和S3中得到的数据设计ro边界控制算法
[0014]
【主权项】
1. 一种柔性机械臂横向振动ro边界控制模拟方法,其特征在于,包括如下步骤: S1在PC机上建立Matlab⑶I界面,模拟柔性机械臂振动,具体为 S1. 1采用差分离散化方法对H)Es方程进行离散化; S1. 2将离散化的数据进行离散处理,时间离散点每次运算7个,此离散迭代方法记为 F7; S1. 3将第n次运算的7个差分运算结果用plot函数画出,模拟柔性机械臂横向振动显 示在界面窗口,同时由串口通信传输到控制模块,所述n为自然数,n的初始值为1; S2控制模块接收串口传输的数据,对数据进行标识符识别分类后,并判断数据格式是 否正确,若正确,则提取这组数据中的w(L/2,t)、w(L,t)储存,否则返回数据,重新标识符 分类,w(L/2,t)、w(L,t)分别指在t时刻柔性机械臂中部L/2位移处和末端L位移处的振 动偏移量,L为柔性机械臂的长度; S3利用差分公式计算出对应的柔性机械臂中部横向振动速度及柔性机械臂末端横向 振动速度; S4根据S2和S3中得到的数据设计ro边界控制算法
其中:ht=T/nt为将仿真时间T进行nt(ntGZ)等分后每段的步长,kuk2>0是调试后 选择的最优控制增益,iV(L/),w' (L,t')分别是机械臂振动的横向位移函数w(x,t)在 位置L处和时间t' =bht,b= 1,2, 3,…时关于位移x和时间t一阶偏导数; S5将ro控制算法转为电信号通过串口发回到PC机,PC机判断是否有信号,若判断为 有,加入控制信号,重复S1-S4,若判断为无,则运算n+1次F7离散迭代方法即重复SI. 2-S4, n为自然数。
2. 根据权利要求1所述的模拟方法,其特征在于,所述SI. 1采用差分离散化方法对 H)Es方程进行离散化,具体为: SI. 1. 1可导函数f (x),以步长h = A X = (b_a)/N将x轴上的任意区间[a, b] (a, b G R)等间距分割为N等分,所述N G Z,N>0,在区间[a,b]上第i个格点\处(i = 1,2, 3,. . .,N) 构造向后差值的泰勒展开式写为:
式中f(Xi-h),f(Xi+h)和f(xD分别为在函数f(x)在位置Xi-h,Xi+h和Xi#的值,f' (Xi),f〃(Xi),fM(Xi)为函数f(x)在位置Xi处一阶、二阶和三阶导数值; 将上式合并,忽略h的平方和更高阶项得到一阶向后差分方程:
则对于具有两个参数的可导函数妒(U),在{(x,t) |xG[〇,L],tG[〇,T],T>0}范围 内(L为机械臂长度,T为仿真时间),将x和t分别等分为nJPnt份(nx,ntGZ),每份的 步长分别为hx=L/n,和ht=T/nt,由上面式(3)容易得到的差分离散化分别为:
离散化后x=dA,t=d2ht,屯=1,2,…,nx,d2= 1,2,…,nt, 式中<(X,〇,0(X,〇分别为函数p(x,?)关于位移x和时间t的导数; SI. 1. 2参照SI. 1. 1的向后差分法的步骤,根据式(4)可直接得到w' (x,t)和a'(x,〇:
式中w' (x,t),vV(AV)分别为柔性机械臂振动偏移量函数w(X,t)关于位移x和时间t的导数; S1. 1.3将(5)带入柔性机械臂数学模型到柔性机械臂振动模型的差分方程组,利用Matlab进行数值计算。
3. 根据权利要求1所述的模拟方法,其特征在于,所述S1. 2具体为: S1. 2. 1初始化各个参数,建立4个矩阵,即2个临时储存矩阵Df,Dlw和2个存储矩阵DF,D1W; SI. 2. 2当t= 7n时,n初始值为1,的运算的结果存入Df,利用Df中的数值离散计算w(x,t),得到Dlw,同时将这2个矩阵里的值分别存入2个存储矩阵; S1. 2. 3再由Dlw算出柔性机械臂L处的值w(L,t)放入新建的D2w,此时得到了整个柔性 机械臂〇到L处的状态,然后由函数plot画图在显示窗口显示; S1. 2. 4将运算好的临时储存矩阵数据存入存储矩阵,将临时矩阵清零,然后当判断到t= (n+1)X7时再继续以上3个步骤; S1. 2. 5当判定t=Timeout时结束循环。
4. 根据权利要求1所述的模拟方法,其特征在于,所述控制模块位于ARM板上。
5. 根据权利要求1所述的模拟方法,其特征在于,所述MatlabGW界面设置暂停按钮。
【专利摘要】本发明公开了一种柔性机械臂横向振动PD边界控制模拟方法,包括在PC机上建立Matlab GUI界面,用差分离散方法对偏微分方程进行离散化处理,模拟柔性机械臂振动,并通过串口通信模块发到控制模块,控制模块根据数据设计PD边界控制算法,将PD控制算法转为电信号通过串口发回到PC机,实现对柔性机械臂振动数据监视。
【IPC分类】G05B13-04
【公开号】CN104570741
【申请号】CN201510032942
【发明人】赵志甲, 刘屿, 许冰霜
【申请人】华南理工大学
【公开日】2015年4月29日
【申请日】2015年1月22日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1