《伺服驱动与控制建模与Matlab仿真分析.ppt》由会员分享,可在线阅读,更多相关《伺服驱动与控制建模与Matlab仿真分析.ppt(51页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第六章第六章 运动控制系统建模与运动控制系统建模与Matlab仿真仿真分析分析主要内容一、运动控制系统建模一、运动控制系统建模二、二、Matlab功能简介功能简介三、基于三、基于Matlab的的控制系统分析与设计方法控制系统分析与设计方法一、运动控制系统建模控制系统建模1.1 模型分类模型分类1.2 建模基本方法建模基本方法l 机理模型机理模型l 统计模型统计模型 (1)频率响应)频率响应 (2)系统辨识)系统辨识 (1)物理模型:采用实物作为模型,可以按比例搭建;物理模型:采用实物作为模型,可以按比例搭建;(2)数学模型:以数学公式作为仿真对象;数学模型:以数学公式作为仿真对象;(3)混合模
2、型:既有物理模型也有数学模型。混合模型:既有物理模型也有数学模型。1.1 1.1 模型分类模型分类 1.2.1 1.2.1 机理模型法机理模型法 (1 1)定义)定义:采用由:采用由一般到特殊一般到特殊的推理演绎方法,对已知结构、参数的物理的推理演绎方法,对已知结构、参数的物理系统,运用相应的定律或定理,经过合理分析简化而建立起来的描述系系统,运用相应的定律或定理,经过合理分析简化而建立起来的描述系统各物理量统各物理量动、静态变化性能动、静态变化性能的数学模型。的数学模型。l主要通过主要通过理论分析推导理论分析推导建立数学模型,常用到的理论知识包括:物建立数学模型,常用到的理论知识包括:物质不
3、灭定律、能量守恒定律、牛顿第二定律、基尔霍夫定律等。质不灭定律、能量守恒定律、牛顿第二定律、基尔霍夫定律等。l提取主要因素、忽略次要因素。抓住对系统模型具有决定性影响的提取主要因素、忽略次要因素。抓住对系统模型具有决定性影响的物理量及相互关系,舍弃次要。物理量及相互关系,舍弃次要。l注意系统的线性化。通过合理简化将非线性因素近似为线性系统。注意系统的线性化。通过合理简化将非线性因素近似为线性系统。1.2 1.2 建模基本方法建模基本方法(2 2)机理建模实例)机理建模实例 一阶倒立摆一阶倒立摆一阶倒立摆结构原理图一阶倒立摆结构原理图1)摆杆绕其重心的转动方程为2)摆杆重心的水平运动可能描述为3
4、)摆杆中心在垂直方向上的运动可描述为4)小车水平方向运动可描述为运动学与动力学分析建模:运动学与动力学分析建模:精确模型:精确模型:若只考虑在工作点附近若只考虑在工作点附近 附近附近双37高炮(2 2)机理建模实例)机理建模实例 高炮炮塔随动系统高炮炮塔随动系统微分方程(建模)微分方程(建模)拉氏变换(代数)拉氏变换(代数)稳定性分析稳定性分析系统性能分析系统性能分析PIDPID控制器控制器闭环闭环传函传函(2 2)机理建模实例)机理建模实例 高炮炮塔随动系统高炮炮塔随动系统系统框图系统框图开环开环传函传函1.2.2 1.2.2 统计模型法统计模型法定义:定义:采用由采用由特殊特殊到到一般一般
5、的逻辑、归纳方法,根据一定数量的逻辑、归纳方法,根据一定数量在系统运行过程中实测、观察的物理量数据,运用统计规在系统运行过程中实测、观察的物理量数据,运用统计规律、系统辨识等理论合理估计出反映系统各物理量相互制律、系统辨识等理论合理估计出反映系统各物理量相互制约关系的数学模型。约关系的数学模型。由于其主要依据来自实测数据,又称为实验测定法。由于其主要依据来自实测数据,又称为实验测定法。常用于黑箱或灰箱问题,根据测得的系统输入、输出常用于黑箱或灰箱问题,根据测得的系统输入、输出数据来建立实际系统的数学描述。数据来建立实际系统的数学描述。1.2 1.2 建模基本方法建模基本方法 激励信号的选择:激
6、励信号的选择:l白噪声白噪声白噪声是指在较宽的频率范围内,各相同带白噪声是指在较宽的频率范围内,各相同带宽频带所含的噪声能量相等的噪声。宽频带所含的噪声能量相等的噪声。l伪随机信号伪随机信号近似的白噪声近似的白噪声l正弦扫频信号正弦扫频信号l多频正弦信号组合多频正弦信号组合lchirpchirp信号信号统计模型法统计模型法 频率特性法频率特性法 (1)(1)由已知数据绘制该系统开环频率响应由已知数据绘制该系统开环频率响应bodebode图图(2)用用20dB/dec20dB/dec及其倍数及其倍数的折线逼近幅频特性,得到的折线逼近幅频特性,得到两个转折频率两个转折频率相应的惯性环节时间常数为相
7、应的惯性环节时间常数为(3)由低频幅频特性可知由低频幅频特性可知频率特性法建模实例频率特性法建模实例 (4)由高频段相频特性知,该系统存在纯滞后环节,系统的开环传由高频段相频特性知,该系统存在纯滞后环节,系统的开环传递函数应为以下形式递函数应为以下形式(5)确定纯滞后时间确定纯滞后时间再查图中再查图中(6)最终求得该系统的开环传递函数模型最终求得该系统的开环传递函数模型G(s)G(s)为为频率特性法建模实例频率特性法建模实例 系统辨识方法是现代控制理论中常用的方法,可根据系统的输入输出系统辨识方法是现代控制理论中常用的方法,可根据系统的输入输出响应估计系统的动态模型。响应信号包括:频率响应、阶
8、跃响应、伪随机响应估计系统的动态模型。响应信号包括:频率响应、阶跃响应、伪随机响应、白噪声响应等。下图为系统辨识原理框图。响应、白噪声响应等。下图为系统辨识原理框图。统计模型法统计模型法 系统辨识法系统辨识法 系统辨识的方法有许多种,这里主要讲述两种:系统辨识的方法有许多种,这里主要讲述两种:Levy法和法和ARX法。法。(1 1)LevyLevy法对连续系统的模型进行辨识法对连续系统的模型进行辨识Levy法源于Levy提出的对复数曲线进行拟合的一种方法 Complex-curve fitting J,IRE transactions on AC,1959.假设对象的传递函数为:为待定系数通过
9、实验可以获取对象的频率响应特性其中i为采样点,为采样点处的幅值与相位问题:如何确定待定系数?从幅频特性的角度考虑所假定的对象传递函数,则有:(1 1)LevyLevy法对连续系统的模型进行辨识法对连续系统的模型进行辨识定义如下优化目标函数,以求最优的通过求解上述多元一次方程组,就可以得到最优的待定系数(1 1)LevyLevy法对连续系统的模型进行辨识法对连续系统的模型进行辨识Matlab中,提供了相应的工具,可以辨识连续系统的数学模型。num,den=invfreqs(H,w,r,m)H为通过实验数据获取的系统的频率响应数据,其格式为P-jQw为实验中所对应的频率点,为角频率r为期望的对象模
10、型分子的阶次,需要通过先验知识确定m为期望的对象模型分母的阶次,需要通过先验知识确定num为辨识出的对象模型的分子多项式系数den为辨识出的对象模型的分母多项式系数(2 2)LevyLevy法对连续系统的模型进行辨识法对连续系统的模型进行辨识例:假设实际对象模型:根据对象模型计算出频域响应数据(1 1)LevyLevy法对连续系统的模型进行辨识法对连续系统的模型进行辨识调用B,A=invfreqs(H,w,3,4);G1=tf(B,A),可得:通过对比可知,其精度不高!(1 1)LevyLevy法对连续系统的模型进行辨识法对连续系统的模型进行辨识(2 2)ARXARX法对离散系统的模型进行辨识
11、法对离散系统的模型进行辨识一般离散系统的传递函数可写为:它对应的差分方程为:ARX模型辨识法就是通过辨识上述差分方程的系数而获取对象模型的。上述差分方程的形式又被称作ARX(自回归遍历)模型。假设已知一组对象的输入输出数据根据ARX模型可得:目标:找出一组,使得最小(2 2)ARXARX法对离散系统的模型进行辨识法对离散系统的模型进行辨识定义如下的优化指标 上述系数的获取是通过使残差平方和最小而获得的,又被称作最小二乘法。(2 2)ARXARX法对离散系统的模型进行辨识法对离散系统的模型进行辨识Matlab中,提供了相应的工具,可以辨识离散系统的数学模型。T=arx(y,u,m,n,d)y为对
12、象的输出向量u为对象的输入向量m为期望的对象模型分子的阶次,需要通过先验知识确定n为期望的对象模型分母的阶次,需要通过先验知识确定d为期望的对象的纯滞后时间,需要通过先验知识确定T.A为辨识出的对象模型的分子多项式系数T.B为辨识出的对象模型的分母多项式系数(2 2)ARXARX法对离散系统的模型进行辨识法对离散系统的模型进行辨识例:实际对象模型根据对象模型得到的响应数据(2 2)ARXARX法对离散系统的模型进行辨识法对离散系统的模型进行辨识调用T=arx(y,u,4,4,1);G=tf(T),可得:通过对比可知,其精度较高(2 2)ARXARX法对离散系统的模型进行辨识法对离散系统的模型进
13、行辨识二、Matlab功能简介p m函数函数p 图形绘制功能图形绘制功能p Simulink简介简介p S函数函数p Real-Time-Workshop&dSPACEp m文件与文件与Simulink程序的混合编程程序的混合编程p Matlab工具箱工具箱p 面向对象编程与面向对象编程与GUI二、Matlab功能简介m函数o矩阵运算矩阵运算o程序流程控制程序流程控制n分支结构分支结构oIf语句语句oSwitch语句语句n循环结构循环结构oFor 循环循环oWhile循环循环nBreak和和Continueo数据的输入与输出数据的输入与输出 save,load,*.mat二、Matlab功能简
14、介-图形绘制功能o二维图形二维图形plot(x,y,)o三维图形三维图形plot3(),mesh(x,y,z),surf(x,y,z)o基本设置函数基本设置函数axis,text,ylabel,title,legend,o参考书目:参考书目:Matlab原理与工程应用原理与工程应用二、Matlab功能简介-Simulink 参考书目参考书目:Simulink-Dynamic System Simulation for MATLAB二、Matlab功能简介-S函数o实例:实例:ADRC的的S函数实现函数实现ADRC:o参考书目参考书目:Writing S-Functions,by the Mat
15、hworks二、二、Matlab功能简介功能简介-RTW&dSPACE 利用上述系统,可以完成从系统建模、分析、离线仿真直到利用上述系统,可以完成从系统建模、分析、离线仿真直到在线实验的全过程,可使开发人员全神贯注于控制方案的构思而在线实验的全过程,可使开发人员全神贯注于控制方案的构思而不必再在琐碎的杂务上花费相当多的时间,从而可以大大缩短开不必再在琐碎的杂务上花费相当多的时间,从而可以大大缩短开发周期。目前已经成为进行快速控制原型验证和半实物仿真的首发周期。目前已经成为进行快速控制原型验证和半实物仿真的首选实时平台。选实时平台。Real-Time-Workshop&dSPACEpMatlab
16、的的Real-Time-Workshop(RTW)可以用来从可以用来从Simulink方框图编译生成方框图编译生成 C 代码代码pdSPACE是由德国是由德国dSPACE公司开发的一套基于公司开发的一套基于Matlab/Simulink的控制系统开发及半实物仿真的软硬件工作平的控制系统开发及半实物仿真的软硬件工作平台,实现了和台,实现了和Matlab/Simulink/RTW的完全无缝连接。的完全无缝连接。p优点:实时性强,可靠性高,扩充性好。优点:实时性强,可靠性高,扩充性好。pdSPACE硬件系统中的处理器具有高速的计算能力,配硬件系统中的处理器具有高速的计算能力,配备了丰富的备了丰富的I
17、/O支持,可以根据需要进行组合;支持,可以根据需要进行组合;p软件环境的功能强大,使用方便,包括实现代码自动生软件环境的功能强大,使用方便,包括实现代码自动生成成/下载和试验下载和试验/调试的整套工具。调试的整套工具。m文件与文件与Simulink程序的混合编程程序的混合编程osim(ISU4_8,0,Period,simset(MaxStep,Period/1000);oload(dataISU4.mat,yisu);oset_param(ISU4_8/Transfer Fcn,Numerator,num1,Denominator,den1);二、二、Matlab功能简介功能简介-Matla
18、b工具箱工具箱oControl System ToolboxoSystem Identification ToolboxoMulti-Parametric Toolbox o二、二、Matlab功能简介功能简介-面向对象编程与面向对象编程与GUIGUI参考书目参考书目:oA Guide to MATLAB:Object-Oriented ProgrammingoGraphics and GUIs with MATLAB 矩阵A所有特征根具有负的实部有界系统的极点全部在左半平面判断准则 间接方法 Routh判据 Hurwitz判据 Lyapunov判据 matlab工具 eig(G)pzmap(
19、G)o 稳定性分析稳定性分析三、三、基于基于Matlab的的控制系统分析控制系统分析构造矩阵Matlab工具:Tc=ctrb(A,B)r=rank(Tc)如果矩阵Tc满秩,则系统完全可控,其秩为系统可控状态的个数。o 可控可观性分析可控可观性分析构造矩阵Matlab工具:To=obsv(A,C)r=rank(To)如果矩阵To满秩,则系统完全可观,其秩为系统可观状态的个数。三、三、基于基于Matlab的的控制系统分析控制系统分析y,t=step(G)自动选择时间向量对阶跃响应进行分析y,t=step(G,tf)设置系统的终止时间,对阶跃响应进行分析y=step(G,t)用户自己设置时间向量,对
20、阶跃响应进行分析step(G1,-g,G2,-.b,G3,:r)在同一图像窗口绘制多个系统的响应曲线,可设置它们的线型与颜色 o 线性系统阶跃响应分析线性系统阶跃响应分析三、三、基于基于Matlab的的控制系统分析控制系统分析例1:已知系统传函G=zpk(-1,-2,-3,-3.5,-5,-4,-1-j,-1+j,8,ioDelay,2)step(G)step(G,10)step(G,:r,10)三、三、基于基于Matlab的的控制系统分析控制系统分析通过窗口图形对曲线进行编辑、数据分析三、三、基于基于Matlab的的控制系统分析控制系统分析y,x=impulse(sys)自动选择时间向量对脉
21、冲响应进行分析y,x=impulse(sys,tf)设置系统的终止时间,对脉冲响应进行分析y=impulse(sys,t)用户自己设置时间向量,对脉冲响应进行分析step(sys1,-g,sys2,-.b,sys3,:r)在同一图像窗口绘制多个系统的响应曲线,可设置它们的线型与颜色o 线性系统脉冲响应分析线性系统脉冲响应分析三、三、基于基于Matlab的的控制系统分析控制系统分析例:已知系统传函三、三、基于基于Matlab的的控制系统分析控制系统分析 lism(sys,iu,t,x0)y,x=lism(sys,iu,t,x0)sys:系统数学描述iu:输入向量t:时间向量X0:初始状态o 线性
22、系统任意输入响应分析线性系统任意输入响应分析三、三、基于基于Matlab的的控制系统分析控制系统分析三、三、基于基于Matlab的的控制系统分析控制系统分析 (1)零极点图绘制 pzmap(sys)极点用表示,零点用o表示 H=tf(2,5,1,1,2,3);pzmap(H)o 根轨迹分析根轨迹分析三、三、基于基于Matlab的的控制系统分析控制系统分析(2)r=rlocus(sys,k)r,k=rlocus(sys)o 根轨迹分析根轨迹分析三、三、基于基于Matlab的的控制系统分析控制系统分析(1)bode(num,den)mag,phase,w=bode(num,den)mag,phas
23、e=bode(num,den,w)o 频率特性响应分析频率特性响应分析bode(1.5,1 3 2 1)三、三、基于基于Matlab的的控制系统分析控制系统分析 margin()函数,根据频率响应数据计算幅值和相角裕度margin(sys)margin(mag,phase,w)gm,pm,wcg,wcp=margin(mag,phase,w)mag:幅值;phase:相角;w:角频率gm:幅值裕度;pm:相角裕度;wcg:相角交界频率;wcp:截止频率;o 频率特性响应分析频率特性响应分析三、三、基于基于Matlab的的控制系统分析控制系统分析G=tf(10,conv(1,0,conv(5,1,10,1);bode(G,0.01,100);margin(G);gm,pm,wcg,wcp=margin(G)三、三、基于基于Matlab的的控制系统分析控制系统分析