计算机控制技术论文Word文档格式.docx
- 文档编号:15308023
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:52
- 大小:1.80MB
计算机控制技术论文Word文档格式.docx
《计算机控制技术论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机控制技术论文Word文档格式.docx(52页珍藏版)》请在冰豆网上搜索。
第五章控制器的频域控制器22
5.1画原始的Bode图22
5.2添加比例增益23
5.3绘制闭环相应25
5.4添加一个延时补偿25
第六章控制器的状态空间设计法27
6.1设计全状态反馈控制器27
6.2添加一个预补偿器29
第七章数字器控制器设计31
7.1创建系统的一个采样数据模型31
7.2PID控制34
第八章Simulink建模40
8.1物理设置40
8.2Simulink建模42
8.3Simscape建模47
第九章Simulink控制器设计50
9.1提取线性的模型导入MATLAB51
9.2开环响应53
9.3滞后补偿的闭环响应54
9.4超前补偿的闭环响应55
总结58
第一章系统建模
1.1物理设置
直流电机是一种常见的驱动器。
它直接提供旋转运动,再加上轮或绳索,可以提供平移运动。
电驱的等效电路和转子的受力图如下所示。
对于这个例子,我们假设系统的输入是作用在点击电驱的电压V,输出是杆的转动速度d(theta)/dt。
转子和轴被假定为刚性。
我们进一步假设粘性摩擦模型,即,摩擦力矩是轴的角速度成比例的。
我们例子的物理参数为:
1.2系统方程
在一般情况下,由一个直流电机产生的转矩与电枢电流和磁场的强度成比例的。
在这个例子中我们假设磁场是恒定的,因此,电机的转矩与电枢电流I的比例由,比例系数为Kt,如下方程所示。
这是被称为一个电驱控制的电机。
(1)
反电动势e是正比于轴的角速度的一个常数因子ke。
(2)
在国际单位制中,电机的转矩系数和反电动势常数是相同的,即,Kt=Ke;
因此,我们将使用K代表两个电机转矩系数和反电动势常数。
从上面的图,我们可以得到以下方程基于牛顿第二定律和基尔霍夫电压定律。
(3)
(4)
应用拉普拉斯变换,上述的模型方程可以在拉普拉斯变量s表示。
传递函数
(5)
(6)
我们得出以下的开环传递函数,通过消除I(s)述两个方程之间,在转速为输出和电枢电压是输入。
(7)
状态方程
在状态空间形式的控制方程,可以表示通过选择转速和电流作为状态变量。
再次电枢电压作为输入转速为输出。
(8)
(9)
1.3设计要求
首先考虑的,我们的无偿的电动机在1伏特的输入电压下能达到旋转速度为0.1弧度/秒的稳定状态(这在直流电机调速:
系统分析页面里演示)。
因为电动机的最基本的要求是,它应该在转动所需的速度,我们将要求该马达速度的稳态误差小于1%。
我们的电机性能的另一个要求是,它必须尽快加速到稳定状态的速度。
在这种情况下,我们希望它有少于2秒的稳定时间。
此外,由于速度比基准速度更快,可能会损坏设备,我们希望阶跃响应的超调量少于5%。
总之,在单位阶跃命令的输入下,控制系统的输出应满足下列要求。
·
调节时间小于两秒
超调量小于5%
稳态误差小于1%
1.4MATLAB表示
传递函数
我们可以表示电机的开环传递函数,在Matlab上定义的参数和传递函数如下。
在命令窗口中运行此代码,产生如下结果:
状态方程
我们也可以用状态方程表示系统。
在MTALAB命令窗口输入如下命令,并运行,产生如下结果。
上述的状态空间模型,也可以将您现有的传递函数模型转化为状态空间形式产生的。
这也是用SS命令完成,如下所示。
第二章系统分析
2.1开环响应
首先创建一个新的m文件和输入如下命令。
现在让我们看看原始开环系统的性能。
添加ltiview命令在m文件的最后,并在MATLAB命令窗口中运行它。
函数中的step使P_motor系统产生一个单位阶跃响应。
0:
0.1:
5表示阶跃响应图包括0到5秒的数据点,间隔为0.1秒。
结果图如下,你可以观测一些系统的特性,通过右击下图并选择Charateristics菜单的SettingTime和SteadyState。
从图中我们可以看出1V的电压应用到系统,这发动机只能实现最大速度为0.1rad/sec,比期待速度小十倍。
用了2.07秒达到稳定状态,不满足我们两秒的调节时间的标准。
2.2LTI模型特性
由于我们的开环传递函数是一个二阶系统,我们应该能精确的预测已观测到的阶跃响应的特性,基于传递函数极点的位置。
你可以从LTIViewer中看到P_motor系统的极点的位置,通过右击图上区域并从菜单中选择PlotTypes>
Pole/Zero。
完成这个操作将会改变LTiViewer,蓝色的x表示极点的位置。
从上图可以看出开环传递函数有两个实极点,一个在S=-2,一个在S=-5。
由于两个极点是实极点,正如看到的阶跃响应没有震动(或者超调量)。
更进一步,由于一个极点比另一个极点的负5倍还要小,两个极点中较大的将主导系统的动态。
即,在-2处的极点主要决定系统的速度相应并且系统与一阶系统近似。
让我们看看一阶系统模型多么近似于原始电机模型。
输入如下命令在MATLAB中来建立一个极点为2的一阶系统的传递函数并且稳态值与原始传递函数相匹配。
我们可以在LTIViewer中输入这个新模型。
选择LTIViewer窗口顶部的File菜单然后选择Import。
然后从后续窗口中选择Systemsinworkspace中的rP_motor并点击OK按钮。
然后LTIViewer将会显示原始传递函数和缩减后的传递函数的相应图。
然后右击菜单中选择PlotTypes中的stepreponse。
你可以移除特性显示从Characteristics的子菜单中。
现在LTIViewer应该显示如下。
从上面可以看出,我们一阶近似的电机系统相对准确。
可以看出主要的确别是在t=0时刻二阶系统有一个零导数,但是一阶系统没有。
一阶系统的调节时间为:
(1)
tau是时间常数,此例中卫0.5。
因此,一阶系统模型由一个2秒的调节时间,接近于我们实际系统的2.07秒。
这个例子剩下的部分,不同的控制器将会被设置,来减少稳态误差和调节时间,并能达到超调量的要求。
2.3其他形式的输入响应
就系统的阶跃响应而言这个例子的要求被给出,但在实际中还有其他形式的输入。
即使一个系统的阶跃响应能大概洞察其他形式的信号的响应。
为了能得到其他形式信号的具体响应。
你可以应用Simulink或者MATLAB中的lsim命令。
更进一步,你可以直接从LTIViewer模拟其他输入形式的系统响应。
在图上点击右键然后选择PlotTypes>
LinearSimulation。
如下窗口将出现。
在这个窗口中把Endtime设置为“5”,把Interval设置为0.1。
在窗口Systeminputs部分的下面,你可以倒入一个输入信号,或者通过一些选择设计一个。
在这个例子中,点击DesignSignal从出现的窗口中并选择Signaltype为sinewave。
把Frequency设置为“0.2”,把Amplitude和Duration设置为默认值。
点击Signaldesigner窗口底部的Insert并点击LinearSimulation底部的Sumulate按钮。
系统正弦输入的两个响应将会在LTIViewer窗口中显示。
如果你双击图的y轴,你可以改变这极限。
如下图所示。
第三章PID控制器设计
3.1比例控制
首先让我们应用一个增益为100的比例控制,即,C(s)=100。
为了确定闭环传递函数,我们用feedback命令。
添加如下命令到你m文件的末尾。
现在让我们检查闭环系统响应。
添加如下命令到你的m文件末尾,并在命令窗口运行它。
将产生下图。
你可以通过右击观看系统的特性,从后续菜单中选择Chaacteristics。
在下图中,已经显示了SettingTime,PeakResponse,SteadyState
从上图我们可以看出超调量和稳态误差太大。
回想简介:
PID控制器设置,增加比例增益可以减少稳态误差。
然后,增加Kp也会导致增加超调量,因此,一个比例控制不能满足所有的设计要求。
这个可以通过选择不能的Kp来得到证实。
特别的,你可以输入sisotool(p_motor)命令应用SISODesignTool,并从ControlandEstimationToolsManager窗口的AnalysisPlots中打开一个闭环阶跃响应。
当Real-TimeUpdate被选择,你可以在CompensatorEditor中变换增益,并在LTIViever中观看对阶跃响应的影响。
一个简单是实演验证了我们的猜想,一个比例控制是不够满足设计要求的,积分或者微分控制必须被添加。
3.2PID控制
PID控制器设置中,添加一个积分将会阶跃参考的消除稳态误差,添加一个微分将减少超调量。
让我们试一下小的Ki和Kd。
修改你的面文件如下。
运行这个新的m文件,如下所示。
可以看出对于一个阶跃输入稳态误差确实消失了。
然而,达到稳定状态的时间比两秒的调节时间长很多。
3.3调整增益
在这个例子中,阶跃响应的长长的尾巴是由于积分增益太小。
因此需要很长时间消除稳态误差。
这个过程可以通过增加KI的值来加速。
回到你的m文件,把Ki改为200。
重新运行文件你会得到下图。
再次通过右击选择Characeristicd添加注释。
正如预期的,稳态误差很快的被消除了。
然而,较大的Ki增加了超调量。
让我们增加Kd来尝试减少超调量。
回到m文件把Kd变为10。
重新运行m文件,如图所示。
正如我们希望的,加大Kd减少了超调量。
现在我我们知道,如果我们用Kp=100,Ki=200,Kd=10;
所有的设计要求都被满足。
第四章控制器的根轨迹设计法
4.1绘制开环根轨迹
根轨迹设计的主要思路是通过根轨迹图预测闭环响应,根轨迹图由开环传递函数绘制并预测所有闭环极点的位置。
然后通过控制器添加零点和极点,根轨迹将被修改,然后得到期待的闭环响应。
我们用SISODesignToolGUI设计控制器。
这个工具允许你通过根轨迹调节控制器。
首先让我们画出系统的根轨迹。
在m文件的末尾添加sisotool(’rlocus’,P_motor)并运行文件。
两个窗口将会打开,一个是SISODesignTask,他将显示系统的根轨迹,另一个是ControlandEstimationToolManager,它允许你设计补偿,分析Plots,等等。
你可以在图上右击根轨迹并且点击Grid。
你的绘制图将如下所示。
4.2找到环路增益
回想设计要求,调节时间小于2秒,超调量小于5%。
系统闭环极点的位置提供关于系统瞬态响应的信息。
SISODesigntTool允许我们在复杂的负平面上定义符合设计要求的区域。
提供的区域相符一个典型的二阶系统,但是一般来说对于高阶系统或者有零点的系统也是可行的。
这预期的区域可以添加到根轨迹图上,具体方法是,在图上点击的右键,在菜单中选择DesignRequirements>
New。
你可以添加许多设计要求,包括调节时间,超调量,阻尼比,自然
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 技术 论文