THBDC-1《计算机控制技术》实验指导书文档格式.doc
《THBDC-1《计算机控制技术》实验指导书文档格式.doc》由会员分享,可在线阅读,更多相关《THBDC-1《计算机控制技术》实验指导书文档格式.doc(15页珍藏版)》请在冰豆网上搜索。
四、实验原理
由于计算机的发展,计算机及其相应的信号变换装置(A/D和D/A)取代了常规的模拟控制。
在对原有的连续控制系统进行改造时,最方便的办法是将原来的模拟控制器离散化,其实质是将数字控制部分(A/D、计算机和D/A)看成一个整体,它的输入与输出都是模拟量,因而可等效于一个连续的传递函数D(S)。
这样,计算机控制系统可近似地视为以D(S)为控制器的连续控制系统。
下面以一个具体的二阶系统来说明D(S)控制器的离散化方法。
1、二阶系统的原理框图如图3-1所示。
图3-1二阶对象的方框图
图3-2二阶对象的模拟电路图
2、系统性能指标要求
系统的速度误差系数1/s,超 调量,系统的调整时间s
据Kv要求可得:
,
令,则校正后的开环传递函数为
由上式得,,取,则
所以校正后系统的模拟电路图如下图所示。
图3-3校正后二阶系统的模拟电路图
实验建议单元:
U3、U8、U11、U5、U4及反相器单元
,为使校正后的,要求对象K由5增至10。
,
,(实际可取200K电阻),
3、的离散化算法
图3-4数—模混合控制的方框图
图3-3中的离散化可通过数据采集卡的采样开关来实现。
传递函数与Z传递函数间的相互转换,可视为模拟滤波器与数字滤波器之间的转换。
常用的转换方法有:
a)阶跃响应不变法(或用脉冲响应法)
b)后向差分法
c)双线性变换
1)阶跃跃响应不变法
-数字滤波器在阶跃作用下输出响应的
-模拟滤波器在阶跃作用下输出响应的采样值
,
据此得
即
2)后向差分法
令,
后向差分S与Z之间关系为
,代入D(S)表达式中得
于是得
3)双线性变换
由泰勒级数得,
,代入D(s)得
即
五、实验步骤
1、实验接线及准备
1.1按图3-2连接一个二阶被控对象的模拟电路;
1.2,用导线将该电路的输入端连接到数据采集卡的“DA1”输出端,电路的输出端与数据采集卡的“AD1”输入端相连;
1.3待检查电路接线无误后,打开实验平台的电源总开关,并按下锁零按钮使其处于“锁零”状态;
2、脚本程序运行
2.1启动计算机,在桌面双击图标“THBCC-1”,运行实验软件;
2.2顺序点击虚拟示波器界面上的“”按钮和工具栏上的“”按钮(脚本编程器);
2.3在脚本编辑器窗口的文件菜单下点击“打开”按钮,并在“计算机控制算法VBS\计算机控制技术基础算法\D(S)离散化方法研究”文件夹下选中“阶跃响应不变法”脚本程序并打开,阅读、理解该程序,然后点击脚本编辑器窗口的调试菜单下“步长设置”,将脚本算法的运行步长设为100ms;
点击脚本编辑器窗口的调试菜单下“启动”;
弹起锁零按钮使其处于“解锁”状态,用虚拟示波器观察图3-2输出端的响应曲线。
结束本次实验后按下锁零按钮使其处于“锁零”状态;
2.4参考步骤2.3,用同样的方法分别运行后向差分法和双线性变换脚本程序,用虚拟示波器观察图3-2输出端的响应曲线;
2.5将采样周期Ts减小或增大,重复步骤2.3和2.4,用虚拟示波器观测采样周期Ts的减小或增大对系统阶跃响应的影响。
如系统出现不稳定情况,记下此时的采样周期Ts和所采用的离散化方法;
2.6按图3-3连接二阶被控对象在加入模拟控制器(PID校正装置)后的模拟电路,并在其输入端输入2V的阶跃信号,然后观察其响应曲线,并与前面2.3和2.4步骤中采用数字控制器的实验曲线相比较;
2.7实验结束后,关闭脚本编辑器窗口,退出实验软件。
注:
为了更好的观测实验曲线,实验时可适当调节软件上的分频系数(一般调至刻度2)和选择“”按钮(时基自动),以下实验相同。
六、实验报告要求
1.绘出实验中二阶被控对象在加入模拟控制器(PID校正装置)前后的响应曲线。
2.编写数字控制器(阶跃响应不变法)的脚本程序。
3.绘出二阶被控对象在采用数字控制器后的响应曲线,并分析采样周期Ts的减小或增大对系统阶跃响应的影响。
七、附录
1.数字控制器(阶跃响应不变法)的程序编写与调试示例
dimpv,sv,ei,eix,op,opx,Ts‘变量定义
subInitialize(arg)‘初始化函数
WriteData0,1
eix=0
opx=0
endsub
subTakeOneStep(arg)‘算法运行函数
pv=ReadData
(1)‘采集卡通道AD1的测量值
sv=2‘给定值
Ts=0.1‘采样周期
ei=sv-pv‘控制偏差
op=exp(-4.54*Ts)*opx+(2.27*ei-(1.27+exp(-4.54*Ts))*eix)*0.45‘控制器输出值
eix=ei‘eix为控制偏差的前项
opx=op‘opx为控制输出的前项
ifop<
=-4.9then‘输出值限幅
op=-4.9
endif
ifop>
=4.9then
op=4.9
WriteDataop,1‘控制信号从DA1端口输出
subFinalize(arg)‘退出函数
2.数字控制器(后向差分法)的程序编写与调试示例
dimpv,sv,ei,eix,op,opx,Ts
subInitialize(arg)'
初始化函数
subTakeOneStep(arg)'
算法运行函数
pv=ReadData
(1)'
当前测量值
sv=2
Ts=0.1'
采集周期
ei=sv-pv
op=0.22/(Ts+0.22)*opx+((Ts+0.5)/(Ts+0.22)*ei-0.5/(Ts+0.22)*eix)*0.45'
当前输出值
eix=ei
opx=op
ifop<
=-4.9then'
输出值限幅
op=-4.9
endif
ifop>
op=4.9
WriteDataop,1
endsub
subFinalize(arg)'
退出函数
3.数字控制器(双线性变换法)的程序编写与调试示例
subInitialize(arg)'
eix=0
subTakeOneStep(arg)'
pv=ReadData
(1)'
Ts=0.1'
采样周期
op=(0.44-Ts)/(0.44+Ts)*opx+((1+Ts)/(0.44+Ts)*ei-(1-Ts)/(0.44+Ts)*eix)*0.45'
=-4.9then'
op=4.9
subFinalize(arg)'