第一篇:自控原理实验教案
自动控制原理实验教案
王晓明
辽宁科技大学电信学院
实 验 要 求
1.实验预习: 实验前必须认真预习实验指导书及其相关的理论知识,作好充分准备。对于设计性实验和综合性实验,学生必须在实验前拿出设计方案,以其达到预期的目标,写出预习报告。让指导老师检查合格的方可进行实验。2.实验进行: 学生进入实验室,要保持室内整洁安静。按照预习报告进行实验。实验中需要改接线的,应关掉电源后才能拆、接线。实验时应注意观察,若发现有异常现象,应立即关掉电源,保持现场并报告指导老师处理。
3.实验数据: 实验过程中应仔细观察实验现象,认真记录实验结果、数据、波形。所记录的实验结果经指导老师审阅后再拆除实验线路。
4.实验报告: 要求学生独立完成实验报告,不许抄袭或请人代劳。报告内容包括实验目的、实验设备、实验内容、实验电路图、实验数据及仿真曲线、实验思考题等。要求文字书写整齐清洁。
5.未尽事项由实验教师和认课教师协商决定。
目 录
实验一 线性定常系统的瞬态响应„„„„„„„„„„„„„„„„„3 实验二 控制系统稳定性分析„„„„„„„„„„„„„„„„„„„6 实验三 根轨迹法„„„„„„„„„„„„„„„„„„„„„„„„10 实验四 典型环节和系统频率特性的测量„„„„„„„„„„„„„„13 实验五 串联校正环节的设计„„„„„„„„„„„„„„„„„„„16 实验六 离散控制系统的设计„„„„„„„„„„„„„„„„„„„24 实验七 典型非线性环节的静态特性„„„„„„„„„„„„„„„„27 实验八 PID的控制作用„„„„„„„„„„„„„„„„„„„„„31 附 录 硬件的组成及原理„„„„„„„„„„„„„„„„„„„„33
实验一 线性定常系统的瞬态响应
一、实验目的
1、掌握线性定常系统动态性能指标的测试方法;
2、研究线性定常系统的参数对其动态性能和稳定性的影响。
二、实验设备
1、THBCC-1型 信号与系统·控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)USB通信线1根
3、MATLAB软件
4、万用表1只
三、实验内容
1、观测一阶、二阶系统的阶跃响应,并测出(或计算出)其上升时间、超调量和调节时间;
2、改变一阶系统的时间常数,测出(或计算出)其上升时间和调节时间;
13、调节二阶系统的开环增益K,使系统的阻尼比ζ=,测出(或计算出)
2此时系统的上升时间、超调量和调整时间;
4、二阶系统的开环增益K固定,调节二阶系统的时间常数,分别使二阶系统的ζ=0,0<ζ<1,ζ=1和ζ>1,测出(或计算出)此时系统的上升时间、超调量和调整时间。
四、实验原理
本实验是研究一阶、二阶系统的瞬态响应。
一阶系统(闭环)的传递函数为: G(s)Ts
1图1-1一阶系统模拟电路图
K=R2=1 T=R2C R1=R2=100K C=10f R0=200K R1 改变R2、R1、C的值就可改变K、T的值。二阶系统(单位反馈)的开环传递函数为:G(s)Ks(Ts1)
Wn2KC(S)1闭环传递函数:W(S)==2W== nT1T2RCR(S)S2WnSWn2
12T2R R=R1=R2=100K C=10f K1K22Rx图1-2 二阶系统方框图
图1-3 二阶系统模拟电路图
(a)欠阻尼(0<<1)(b)临界阻尼(1)(c)过阻尼(1)图1-4 二阶系统的动态响应曲线
五、实验步骤
根据上图,选择实验台上的通用电路单元设计并组建模拟电路。
1.n值一定时,图1-3中取C=1uF,R=100K(此时n10),Rx阻值可调范围为0~470K。系统输入一单位阶跃信号,在下列几种情况下,用上位软件观测并记录不同值时的实验曲线。
1.1当可调电位器RX=250K时,=0.2,系统处于欠阻尼状态,其超调量 为53%左右;
1.2若可调电位器RX=70.7K时,=0.707,系统处于欠阻尼状态,其超调量为4.3%左右;
1.3若可调电位器RX=50K时,=1,系统处于临界阻尼状态;1.4若可调电位器RX=25K时,=2,系统处于过阻尼状态。
2.值一定时,图1-3中取R=100K,RX=250K(此时=0.2)。系统输入一单位阶跃信号,在下列几种情况下,用上位软件观测并记录不同n值时的实验曲线。
2.1若取C=10uF时,n1 2.2若取C=0.1uF时,n100
六、实验报告要求
1、根据题目要求,画出一阶、二阶线性定常系统的实验电路图,写出它们的闭环传递函数,并标明电路中的各参数。
2、根据测得的系统单位阶跃响应曲线,分析开环增益K和时间常数T对系统动态特性的影响。
3、设计一个一阶线性定常闭环系统,并根据系统的阶跃输入响应确定该系统的时间常数。
七、实验思考题
1、如果阶跃输入信号的幅值过大,会在实验中产生什么后果?
2、在电路模拟系统中,如何实现负反馈和单位负反馈?
3、为什么本实验中一阶系统对阶跃输入信号的稳态误差不为零?二阶系统对阶跃输入信号的稳态误差都为零?
注意:Ui输入一个单位阶跃信号,用电压表调单位阶跃;地与稳压电源的地短接。输出可调电阻用面板上的可调电位器0-470K调节。点时间轴自动弹出时间轴放大按住鼠标左键向右移动可放大图象示波器,波形复制→WORD文档粘贴。
实验二
控制系统稳定性分析
一、实验目的
1、通过观察三阶系统在单位阶跃信号作用下的动态特性,判断系统的稳定性,并定量了解放大倍数和时间常数对系统稳定性的影响。
2、研究二阶欠阻尼系统的暂态特性。
3、研究测速反馈二阶系统的暂态特性。
4、掌握MATLAB中SIMULINK 的使用方法。
二、实验设备
1、PC机及MATLAB平台
三、实验内容
1、研究三阶系统参数对系统稳定性的影响。连接系统, 如图所示:
2、研究二阶欠阻尼加零点系统的动态特性
连接系统,如图所示:
说明:在命令空间中plot(t,y)可实时记录曲线图,背景为白色。然后拷贝到word文档粘贴。To work 改成阵列形式。
Math operations(数学运算):sources信号源clock时钟step阶跃sinks 接收器scope示波器gain增益sum 求和continuous连续transfer fan 分子分母形式的传函。加时钟t→y 表示点对点即一个时间严格y值,可在word文档中粘贴的,save format→array点阵形式。
3、掌握测速反馈对二阶系统动态性能的影响
连接系统, 如图所示:
旋转指令format可将方框图旋转,反馈回路接
四、实验原理
本实验是研究三阶系统稳定性问题和二阶系统的动态响应。1.三阶系统的开环传递函数为:G(s)K3K1K2
T1s1T2s1T3s1du和放大器,方向向左←。dt研究改变放大系数和时间常数对系统稳定性的影响,最后得出放大系数和时间常数之间的关系。
Ts12.二阶系统的开环传递函数为:G(s)2,研究二阶系统加零点对系统
ss1性能的影响,特别是改变时间常数T对系统性能的影响。
K3.二阶系统速度反馈前,内环开环传递函数为:G(s)2,速度反馈环
sTsGf(s)K1s,节的传递函数为:研究速度反馈对二阶系统性能的影响,设K
1、T1,试确定0、0
1、1时,K1的取值范围。
五、实验步骤
1、利用MATLAB平台搭建一个单位反馈的三阶系统,其开环传递函数为:G(s)K3K1K2,固定K1、K2、K3、T1、T2、T3六个参数中的五T1s1T2s1T3s1个参数,例如:K2=
2、K3=
3、T1=
2、T2=
5、T3=6,改变K1,当系统加阶跃输入时,观察输出波形,判断系统的稳定性。
2、利用MATLAB平台搭建一个单位反馈二阶欠阻尼加零点的系统,系统的开环传递函数为:G(s)Ts1,分别设定T0(无零点)和T0(有零点)时,2ss1观察其单位阶跃响应曲线,并计算其上升时间、超调量和调整时间。
3、利用MATLAB平台搭建一个带速度反馈的二阶系统,内环开环传递函数为:G(s)K,速度反馈环节的传递函数为:Gf(s)K1s,研究T
1、K1,s2Ts当改变K1数值时,观察其单位阶跃响应曲线,并计算其上升时间、超调量和调整时间。
六、实验报告要求
1、根据题目要求,利用MATLAB画出三阶系统和二阶系统加零点及二阶系统带速度反馈的系统图,并写出它们的闭环传递函数。
2、根据测得的系统单位阶跃响应曲线,分析三阶系统各环节开环增益K和时间常数T对系统稳定性的影响。
3、根据测得的系统单位阶跃响应曲线,比较二阶欠阻尼系统有零点和无零点的性能指标。
4、根据测得的系统单位阶跃响应曲线,比较二阶系统有速度反馈和无速度反馈的性能指标。
七、实验思考题
1、三阶系统稳定时,各环节放大倍数、时间常数的关系表达式?
2、二阶系统加零点对系统的动态性能有何影响?
3、二阶系统加速度反馈对系统的阻尼比有何影响?
实验三
根轨迹法
一、实验目的
1、通过根轨迹图的绘制,对典型根轨迹图进行分析及利用根轨迹法对控制系 统稳定性进行分析。
2、了解典型根轨迹图的绘制。
3、掌握MATLAB中根轨迹图绘制方法。
二、实验设备
1、THBCC-1型信号与系统控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)37针通信线1根
3、万用表1只
4、PC机及MATLAB平台
三、实验内容
1、已知负反馈控制系统的开环传递函数为G(s)的根轨迹图。
2、已知单位反馈系统的开环传递函数为G(s)下列两种情形的根轨迹图。
绘制负反馈控制系统的根轨迹图。 绘制正反馈控制系统的根轨迹图。
四、实验原理
1、利用改变系统的根轨迹放大倍数,研究系统闭环性能及系统闭环的稳定性。
2、绘制负反馈系统的根轨迹图。
3、绘制正反馈系统的根轨迹图。
4、研究改变根轨迹放大系数对系统性能指标的影响。
五、实验步骤
1、绘制系统的根轨迹图,程序代码如下:
>>den=conv([1,0],conv([1 2.73],[1 2 2]));分母多项式 G=tf(1,den); rlocus(G);画根轨迹
K,试作系统
s(s2.73)(s22s2)K(s2),试画出2s(s4)(s8)(s2s5)axis([-4 2 –3 3]);估计根轨迹图的范围设定 set(findobj(‘marker’,‘x’),‘markersize’,8); set(findobj(‘marker’,‘x’),‘linewidth’,1.5); 运行该程序即可得到系统的根轨迹图。
2、绘制负反馈控制系统的根轨迹图,程序代码如下: >>num=[1 2];
den1=conv([1 0],[1 4]); den2=conv([1 8],[1 2 5]); den=conv(den1,den2); G=tf(num,den); rlocus(G);
axis([-14 6-10 10]); title(‘单位负反馈系统根轨迹图’)
set(findobj(‘marker’,‘x’),‘markersize’,8);X-点标志 set(findobj(‘marker’,‘x’),‘linewidth’,1.5);
set(findobj(‘marker’,‘o’),‘markersize’,8);O-零点标志set(findobj(‘marker’,‘o’),‘linewidth’,1.5); 运行该程序即可得到负反馈系统的根轨迹图。
3、绘制正反馈控制系统的根轨迹图,程序代码如下: >>num=-[1 2] den1=conv([1 0],[1 4]); den2=conv([1 8],[1 2 5]); den=conv(den1,den2); G=tf(num,den); rlocus(G);
axis([-14 6-10 10]); title(‘单位正反馈系统根轨迹图’);
set(findobj(‘marker’,‘x’),‘markersize’,8);
set(findobj(‘marker’,‘x’),‘linewidth’,1.5); set(findobj(‘marker’,‘o’),‘markersize’,8); set(findobj(‘marker’,‘o’),‘linewidth’,1.5); 运行该程序即可得到正反馈系统的根轨迹图。
六、实验报告要求
1、根据题目要求,编写出绘制各系统的根轨迹图的程序,并绘制各系统的根轨迹图。
2、研究系统临界稳定的条件。
七、实验思考题
1、如果根轨迹放大倍数过大,会对系统性能有那些影响?
2、在MATLAB系统图中,如何实现负反馈和正反馈?
4、如何根据系统主导极点的要求,来确定系统的根轨迹放大倍数?
5、如何根据系统的要求,确定系统的分离点和汇合点?
实验四 典型环节和系统频率特性的测量
一、实验目的
1、了解典型环节和系统的频率特性曲线的测试方法;
2、根据实验求得的频率特性曲线求取传递函数。
二、实验设备
1、THBCC-1型信号与系统控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)USB通信线1根
3、万用表1只
4、PC机及MATLAB平台
三、实验内容
1、惯性环节的频率特性测试;
2、二阶系统频率特性测试;
3、频率响应分析;
4、由实验测得的频率特性曲线,求取相应的传递函数;
5、用MATLAB软件仿真的方法,求取惯性环节和二阶系统的频率特性。
四、实验原理
设G(S)为一最小相位系统(环节)的传递函数。如在它的输入端施加一幅值为Xm、频率为的正弦信号,则系统的稳态输出为
yYmsin(t)XmG(j)sin(t)① 由式①得出系统输出,输入信号的幅值比 YmXmG(j)G(j)② XmXm显然,G(j)是输入X(t)频率的函数,故称其为幅频特性。如用db(分贝)表示幅频值的大小,则式②可改写为
L()20LgG(j)20lgYm ③ Xm在实验时,只需改变输入信号频率的大小(幅值不变),就能测得相应输出信号的幅值Ym,代入上式,就可计算出该频率下的对数幅频值。根据实验作出被测系统(环节)的对数幅频曲线,就能对该系统(环节)的数学模型作出估计。
五、实验步骤
1、绘制一阶惯性环节的伯特图 G(s)= 程序代码如下: 4s113 》num=1;den=[4 1]; G=tf(num,den);bode(G,‘r’);
wn22、绘制二阶惯性环节的伯特图 G(s)=22grid on;,其中Wn=0.8,s2w1,1.5,2 nw=0.1,0.5,n程序代码如下:
》W=logspace(-2,2,200);Wn=0.8;
for zeta=[0.1 0.5 1 1.5 2] G=tf([Wn* Wn],[Wn^2 2*zeta* Wn Wn* Wn]);bode(G,W);hold on;grid on;end
500(0.0167s1)
1、已知某系统的开环传函为G0(s)=
s(0.05s1)(0.0025s1)(0.001s1)
试绘制系统的伯特图,并求系统的相角稳定裕量和幅值稳定裕量。绘制对数幅频特性图,程序代码如下: num=500*[0.0167 1];den1=conv([1 0],[0.05 1]);den2=conv([0.0025 1],[0.001 1]);den=conv(den1,den2);G0=tf(num,den);W=logspace(0,4,50);bode(G0,w); grid on;确定系统的相角稳定裕量和幅值稳定裕量,程序代码如下: 》margin(G0)[Gm,Pm,Wcg,Wcp]=margin(Go)
六、实验报告要求
1、写出被测环节和系统的传递函数,绘出它们的Bode图。
2、用上位机实验时,根据由实验测得二阶闭环频率特性曲线,求出相应的参数。
七、实验思考题
1、在实验中如何选择输入正弦信号的幅值?
3、根据上位机测得的Bode图的幅频特性,就能确定系统(或环节)的相频特性,试问这在什么系统时才能实现?
实验五
串联校正环节的设计
一、实验目的
1.学习使用MATLAB绘制根轨迹和伯德图。
2.熟悉使用根轨迹法和频率特性法设计典型滞后环节。
二、实验设备
1、THBCC-1型信号与系统控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)37针通信线1根
3、万用表1只
4、PC机及MATLAB平台
三、实验内容
1、有一单位反馈系统,其开环传递函数为G(s)K,试用根
(s0.5)(s0.1)(s0.2)轨迹设计一个滞后校正环节,要求对应主导极点的ζ=0.5,K=10,以满足性能指标的要求。
2、有一单位反馈系统的开环传递函数为G(s)0.08K,试用频率特性法设计
s(s0.5)一个滞后校正环节,使得Kv≥4,相位裕量(c)500,超调量Mp≤30%。
四、实验原理
1、利用MATLAB画出校正前系统的根轨迹图,求出当K?时,系统的主导极点,求出这时系统的阻尼比。根据题目要求,设计滞后校正环节参数,满足系统性能指标的要求。
2、利用MATLAB画出校正前系统的频率特性,求出这时系统的性能指标,根据题目要求,设计滞后校正环节参数,并利用MATLAB画出校正后系统的频率特性,满足系统性能指标的要求。
五、实验步骤
按实验内容讲法如下:
解:1.校正前系统的根轨迹如下:
set(findobj(„marker‟,‟x‟),‟markersize‟,8)c=conv([1,0.5],[1,0.1])
set(findobj(„marker‟,‟x‟),‟linewidth‟,1.5)b=conv([c],[1,0.2])
存盘看跟轨迹,得如下图: num=[1] den=[b] h=tf(num,den)rlocus(h)axis([-1.6 0.4-1 1])
由图中可以看到:当0.5时,根轨迹放大倍数为K*0.0165 看根 format long g c=conv([1,0.5],[1,0.1])b=conv([c],[1,0.2])num=[1] den=[b] h=tf(num,den)%rlocus(h)%[r,k]=rlocus(num,den)[r]=rlocus(num,den,0.0165)存盘看根 r = 这时,系统的三个根分别为:
Columns 1 through 2
-0.***-0.*** +
0.***4289i
Column 3
-0.***
0.***i 0.***/0.07***311=7.8>5
*0.0113 所以,两个共轭复根是主导极点,可以认为当根轨迹放大倍数为Kkp时,系统呈现二阶欠阻尼特性。且阻尼比等于0.5。
2.1)原系统传递函数为:G0(s)0.08K0.08K0.16K s(s0.5)0.5s(s/0.51)s(s/0.51)KVlimsG0(s)limss0s00.16K0.16K
4所以K25
s(s/0.51)42 s(s/0.51)s(s0.5)所以原系统传递函数为:G0(s)画波特图程序: c=conv([1,0],[2,1])num=[4] den=[c] G=tf(num,den)Bode(G,‟b‟)
b表示画出的线是兰色 grid on
画图以网格线出现 运行
φ(w)-滞后角
在相频特性找-120度,f=0.29点
在幅频高度=21.5db处幅频折线要下移21.5db.画出原系统对数渐进幅频特性曲线如下: L-1 18-2 ω 0.1 0.5 1.414 原系统传递函数为:G0(s)42 s(s/0.51)s(s0.5)2n与标准的传递函数比较G0(s)得到:n21.414 2n0.5
s(s2n)0.510.177由此得到相角裕度: 2n42214422arctan20.177140.177420.1772arctan0.3542000.9685arctan显然小于要求的相角裕度500 超调量:%e/12e0.56557%显然大于要求的30%。
原系统不满足要求。根据题目要求,采用滞后校正。
原系统的相角计算如下:
(c)900arctanc0.5
相位裕量1800(c)1800900arctan取相位裕量600
得到c0.29
c0.5
420lg13.822.8(dB)0.2910.29所以20lg22.8由此得到:b0.0725
b411取0.1c20.029
由此得到:T476 0.002 1bTT校正后的系统的对数频率渐进曲线如下: 校正后系统的传递函数为: 在截止频率原系统的幅频为20lgG(s)4(bTs1)4(bTs1)4(34.5s1)s(s/0.51)(Ts1)s(s/0.51)(Ts1)s(s/0.51)(476s1)G(s)bTs134.5s1s/0.0291 G0(s)Ts1476s1s/0.00211由G(s)G0(s)Gc(s)得到Gc(s)画图程序如下:
num=4*[34.5 1] c=conv([1,0],[2,1])den=conv([c],[476,1])G=tf(num,den)Bode(G,‟b‟)L-1 22.8 18-2-2-1 0.0021 0.029 0.1 0.29 0.5-2 1.414 ω
校验校正后系统参数:
0.290.290.291800arctan900arctanarctan54.70
0.0290.00210.5因为校正后的系统为高阶系统,采用教材中220页公式(6-8)-(6-10)如下: Mr(6-8)
谐振峰 sinMr11.23 0sin54.71Mr1.8
(6-9)0.160.4(Mr1)由公式(6-9)0.160.4(1.231)0.2520.所以校正后系统满足指标要求
六、实验报告要求
1.对于根轨迹校正法,给出如下内容:(1)原系统的稳态速度误差系数KP(2)校正后的系统稳态速度误差系数Kp(3)校正环节的传函GC(S)2.对于频率特性校正,给出如下内容:(1)新增益穿越频率Wc‟和a值(2)原相位裕量Pm(3)校正环节的传函GC(S)3. SIMULINK 搭建未校正系统的模块图,观察其超调量;校正好后,将校正环节串入原系统,观察其超调量。写出实验体会并进行校正前后的比较。
七、写出设计性实验心得
实验六
离散控制系统的设计
一、实验目的
1、使用MATLAB判断线性离散系统的稳定性。
2、使用MATLAB进行线性离散系统的时域分析。
二、实验设备
1、THBCC-1型信号与系统控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)37针通信线1根
3、万用表1只
4、PC机及MATLAB平台
三、实验内容
1、给定系统传递函数为:
G(s)2 s2s试判断下列两种情形时系统的稳定性。(1)采样时间T1s时;(2)采样时间T2s时。
2、设系统的传递函数为
Gp(s)10
(s1)(s2)采样时间分别为T0.5s,1s,1.5s,2s时,试分别绘制此系统的脉冲响应和单位阶跃响应。
四、实验原理
1、线性离散系统稳定的充要条件是:当所有的特征根的模都小于1时,系统稳定;如果模的值大于1时,系统不稳定。即i1(i=1,2,„,n)
2、采用单位脉冲和单位阶跃作为输入信号,研究线性离散系统的过渡过程。
五、实验步骤
1、程序代码如下: >>num=[2];
den=[1 1 0]; G=tf(num,den);
G1=c2d(G,1);
将连续系统模型转换成离散模型 G2=c2d(G,2);
将连续系统模型转换成离散模型
y1=G1.den{1}+[zeros(1,length(G1.den{1})-length(G1.num{1}))G1.num{1}]; y2=G2.den{1}+[zeros(1,length(G2.den{1})-length(G2.num{1}))G2.num{1}]; 带零阶保持器的分子与分母的维数(阶次)必须相同,上面语句表示分子与分母各项系数相加。r1=roots(y1)r2=roots(y2)
运行该程序后,即可判断系统的稳定性。
2、(1)脉冲响应程序如下: >>num=[10];
den=conv([1 1],[1 2]); G=tf(num,den); for T=0.5:0.5:2
Gd=c2d(G,T,‘tustin‟);
Dimpulse(Gd.num,Gd.den); hold on; impulse(G); end 运行该程序后,可得到单位脉冲响应曲线。(2)单位阶跃响应程序如下: >>num=[10]; den=conv([1 1],[1 2]); G=tf(num,den); for T=0.5:0.5:2
Gd=c2d(G,T,‘tustin‟);
dstep(Gd.num,Gd.den); hold on; step(G); end 运行该程序后,可得到单位阶跃响应曲线。
六、实验报告要求
1、编写判别线性离散系统稳定性、单位脉冲和单位阶跃响应的程序。
2、绘制线性离散系统单位脉冲和单位阶跃响应曲线。
3、分析采样时间对线性离散系统稳定性的影响。
4、分析采样时间对线性离散系统动态性能的影响。
5、结合实验中遇到的问题说出自己的看法和体会。
七、实验思考题
1、如果采样时间过大,会在实验中产生什么后果?
2、如何将连续系统模型转换为离散系统模型?
3、试比较连续系统的动态响应曲线和离散系统动态响应曲线的差别?
实验七 典型非线性环节的静态特性
一、实验目的
1、了解典型非线性环节输出——输入的静态特性;
2、掌握典型非线性环节电路模拟的研究方法。
二、实验设备
1、THBCC-1型信号与系统控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)37针通信线1根
3、双踪慢扫描示波器1台(可选)
4、万用表1只
5、PC机及MATLAB平台
三、实验内容
1、继电器型非线性环节静特性的电路模拟;
2、饱和型非线性环节静特性的电路模拟;
3、具有死区特性的非线性环节静特性的电路模拟;
4、具有间隙特性的非线性环节静特性的电路模拟。
四、实验原理
控制系统中元件的非线性有很多种,最常见的有饱和特性、死区特性、继电性特性和间隙特性,基于这些特性对系统的影响是各不相同的,因而了解它的输出-输入的静态特性将有助于对非线性系统的分析。
有关上述四种典型非线性元件的静态特性和模拟电路,请参见附录。
五、实验步骤
1、利用实验设备,设计并连接继电型非线性环节的模拟电路,完成该环节的静态特性测试;当改变环节参数时,观测其对静态特性的影响。
2、用正弦信号测试继电型非线性环节的静态特性
1)不用上位机时,把实验平台上的“低频函数信号发生器”单元的输出端与继电型非线性环节输入端相连,当“低频函数信号发生器”输出一个正弦信号(或周期斜坡信号,其频率一般均不超过10Hz)时,便可用示波器的X-Y显示模式观测该环节输入与输出的静态特性曲线。2)用上位机时,可利用上位机提供的“虚拟示波器”与“信号发生器”的功能测取继电型非线性环节的静态特性曲线。接线时把采集卡接口单元中输出端DA1与非线性环节的输入端相连(同时也与采集卡接口单元中的输入端AD2相连),非线性环节的输出则与采集卡接口单元中的输入端AD1相连,并接好采集卡接口单元与PC上位机的并口通信线。待接线完成并检查无误后,在上位机启动“THBCC-1”软件,其具体操作步骤如下:
① 在用户“登录窗口”中输出自己的学号,并点击“登录”按钮进入软件主窗口。
② 点击工具栏上的“实验选择”按钮,选择相应的实验项目。
③ 点击 “通道设置”按钮,选择相应的数据采集通道,然后点击“开始采集”按钮,进行数据采集。
④ 点击“虚拟示波器”按钮,选择“X-Y”图显示模式,然后顺序点击“启动”、“开始”按钮。
⑤ 点击 “信号发生器”按钮,选择“正弦波信号(或周期斜坡信号,其频率一般为5Hz左右)”,并把幅值设为2V,然后点击“ON”按钮即可观测非线性环节的静态特性曲线。
⑥ 点击“暂停”及“存储”按钮”,保存实验波形。
1.继电器型非线性环节
图7-1 继电型非线性环节模拟电路(电路单元:非线性单元和电位器组)在ui输入端输入一个低频率的正弦波,正弦波的Vp-p值大于12V,频率为10Hz。在下列几种情况下用示波器的X-Y(虚拟示波器上的Plot XY模式,本实验中其它部分相同)显示方式(ui端接至示波器的第一通道,uo端接至示波器的第二通道)测量静态特性M值的大小并记录。
1.1 当47K可调电位器调节至约1.8K(M=1)时; 1.2 当47K可调电位器调节至约3.6K(M=2)时; 1.3 当47K可调电位器调节至约5.4K(M=3)时; 1.4 当47K可调电位器调节至约10K(M=6左右)时;
注:本实验中所采用的正弦波最好用实验台上的“低频函数信号发生器”提供。2.饱和型非线性环节
设计并连接饱和型非线性环节的模拟电路,完成该环节的静态特性测试;当改变环节参数时,观测其对静态特性的影响。具体步骤请参考本实验的实验步骤2。
图7-2 饱和型非线性环节模拟电路(电路单元:非线性单元和电位器组)在ui输入端输入一个低频率的正弦波,正弦波的Vp-p值大于12V,频率为10Hz。将前一级运放中的电位器值调至10K(此时k=1),然后在下列几种情况下用示波器的X-Y显示方式(ui端接至示波器的第一通道,uo端接至示波器的第二通道)测量静态特性M和k值的大小并记录。
2.1 当后一级运放中的电位器值调至约1.8K(M=1)时; 2.2 当后一级运放中的电位器值调至约3.6K(M=2)时; 2.3 当后一级运放中的电位器值调至约5.4K(M=3)时; 2.4 当后一级运放中的电位器值调至约10K时;
注:为了更好的观察实验效果,“THBCC-1”软件的时基最好设为-10~+10或自动。3.死区特性非线性环节
设计并连接具有死区特性的非线性环节(可参考本实验附录的图6-3)的模拟电路,完成该环节的静态特性测试;当改变环节参数时,观测其对静态特性的影响。具体步骤请参考本实验的实验步骤2。
图7-3 死区特性非线性环节模拟电路(电路单元:非线性单元、反相器单元和电位器组)
在ui输入端输入一个低频率的正弦波,正弦波的Vp-p值大于12V,频率为10Hz。在 下列几种情况下用示波器的X-Y显示方式(ui端接至示波器的第一通道,uo端接至示波器的第二通道)测量静态特性uio和k值的大小并记录。
3.1调节两个可变电位器,当两个R1=2.0K,R2=8.0K时; 3.2调节两个可变电位器,当两个R1=2.5K,R2=7.5K时;
注:本实验的±E值也可采用±5V。
4.具有间隙特性非线性环节
设计并连接具有间隙特性的非线性环节(可参考本实验附录的图6-4)的模拟电路,完成该环节的静态特性测试;当改变环节参数时,观测其对静态特性的影响。具体步骤请参考本实验的实验步骤2。
图7-4 间隙特性非线性环节模拟电路(电路单元:非线性单元、U4、U9和电位器组)在ui输入端输入一个低频率的正弦波,正弦波的Vp-p值大于12V,频率为10Hz。在下列几种情况下用示波器的X-Y显示方式(ui端接至示波器的第一通道,uo端接至示波器的第二通道)测量静态特性uio和k值的大小并记录。
4.1调节两个可变电位器,当两个R1=2.0K,R2=8.0K时; 4.2调节两个可变电位器,当两个R1=2.5K,R2=7.5K时;
注意由于元件(二极管、电阻等)参数数值的分散性,造成电路不对称,因而引起电容上电荷累积,影响实验结果,故每次实验启动前,需对电容进行短接放电。
注:本实验的±E值也可采用±5V。
5、点击“实验报告”,根据实验时存储的波形完成实验报告。
六、实验报告要求
1、画出各典型非线性环节的模拟电路图,并选择好参数。
2、根据实验,绘制相应的非线性环节的实际静态特性,与理想的静态特性相比较,并分析电路参数对特性曲线的影响?
七、实验思考题
1、带回环的继电器特性电路中,如何确定环宽电压?
2、模拟继电型电路的特性与理想特性有何不同?为什么?
3、饱和特性电路中的限幅网络改接在反馈回路,对特性有何影响? 实验八 PID的控制作用(设计性)
一、实验目的
1.了解PID控制器中P,I,D三种基本控制作用对控制系统性能的影响。2.进行PID控制器参数工程整定技能训练。
二、实验设备
1、THBCC-1型信号与系统控制理论及计算机控制技术实验平台
2、PC机1台(含上位机软件)USB口通信线1根
4、万用表1只
5、PC机及MATLAB平台
三、实验内容
1、PID控制器的数学模型为:
GcKp{e1deedtT} dTidt2、控制对象的数学模型为:
11.89sG(s)e
24s
13、使用Z-N法整定PID参数。
四、实验原理
1、利用PID控制器改善系统动态性能指标。
2、研究PID三个参数对系统性能的影响。
五、实验步骤
1、利用MATLAB搭建系统图(学生自己做);
2、令Ti、Td0,使用Z-N法确定PID参数,并求出系统的性能指标,即上升时间tr、最大超调量%和调节时间ts;
3、分别调整PID三个参数,观察系统性能指标的变化。
六、实验报告要求
1、使用MATLAB画出系统结构图;
2、根据实验,绘制等幅振荡曲线、按Z-N法整定PID参数时系统响应曲线;
3、编写求系统动态性能指标的程序;
4、求出系统性能指标最佳时PID的三个参数。
七、实验思考题
1、Kp过大和过小对系统动态性能有何影响?
2、Ti过大和过小对系统动态性能有何影响?
3、Td过大和过小对系统动态性能有何影响?
4、Td改进动态系统性能指标的原理。
附录
硬件的组成及使用
一、直流稳压电源
直流稳压电源主要用于给实验平台提供电源。有±5V/0.5A、±15V/0.5A及+24V/1.0A五路,每路均有短路保护自恢复功能。它们的开关分别由相关的钮子开关控制,并由相应发光二极管指示。其中+24V主用于温度控制单元和直流电机单元。
实验前,启动实验平台左侧的空气开关和实验台上的电源总开关。并根据需要将±5V、±15V、+24V钮子开关拔到“开”的位置。
实验时,通过2号连接导线将直流电压接到需要的位置。
二、低频函数信号发生器及锁零按钮
低频函数信号发生器由单片集成函数信号发生器专用芯片及外围电路组合而成,主要输出有正弦信号、三角波信号、方波信号、斜坡信号和抛物线信号。输出频率分为T1、T2、T3、T4四档。其中正弦信号的频率范围分别为0.1Hz~3.3Hz、2.5Hz~86.4Hz、49.8Hz~1.7KHz、700Hz~10KHz三档,Vp-p值为16V。
使用时先将信号发生器单元的钮子开关拔到“开”的位置,并根据需要选择合适的波形及频率的档位,然后调节“频率调节”和“幅度调节”微调电位器,以得到所需要的频率和幅值,并通过2号连接导线将其接到需要的位置。
另外本单元还有一个锁零按钮,用于实验前运放单元中电容器的放电。当按下按钮时,通用单元中的场效应管处于短路状态,电容器放电,让电容器两端的初始电压为0V;当按钮复位时,单元中的场效应管处于开路状态,此时可以开始实验。
三、阶跃信号发生器
阶跃信号发生器主要提供实验时的阶跃给定信号,其输出电压范围为-5~+5V,正负档连续可调。使用时根据需要可选择正输出或负输出,具体通过“阶跃信号发生器”单元的拔动开关来实现。当按下自锁按钮时,单元的输出端输出一个可调(选择正输出时,调RP1电位器;选择负输出时,调RP2电位器)的阶跃信号(当输出电压为1V时,即为单位阶跃信号),实验开始;当按钮复位时,单元的输出端输出电压为0V。
注:单元的输出电压可通过实验台上的直流数字电压表来进行测量。
四、低频频率计
低频频率计是由单片机89C2051和六位共阴极LED数码管设计而成的,具有输入阻抗大和灵敏度高的优点。其测频范围为:0.1Hz~10.0KHz。
低频频率计主要用来测量函数信号发生器或外来周期信号的频率。使用时先将低频频率计的电源钮子开关拔到“开”的位置,然后根据需要将测量钮子开关拔到“外测”(此时通过“输入”或“地”输入端输入外来周期信号)或“内测”(此时测量低频函数信号发生器输出信号的频率)。
另外本单元还有一个复位按钮,以对低频频率计进行复位操作。
注:将“内测/外测”开关置于“外测”时,而输入接口没接被测信号时,频率计有时会显示一定数据的频率,这是由于频率计的输入阻抗大,灵敏度高,从而感应到一定数值的频率。此现象并不影响内外测频。
五、交/直流数字电压表
交/直流数字电压表有三个量程,分别为200mV、2V、20V。当自锁开关不按下时,它作直流电压表使用,这时可用于测量直流电压;当自锁开关按下时,作交流毫伏表使用,它具有频带宽(10Hz~400kHz)、精度高(±5‟)和真有效值测量的特点,即使测量窄脉冲信号,也能测得其精确的有效值,其适用的波峰因数范围可达到10。
六、通用单元电路
通用单元电路具体见实验平台所示“通用单元电路**”单元、“带调零端的运放单元”“反相器单元”和“无源元件单元”。这些单元主要由运放、电容、电阻、电位器和一些自由布线区等组成。通过接线和短路帽的选择,可以模拟各种受控对象的数学模型,主要用于比例、积分、微分、惯性等电路环节的构造。一般为反向端输入,其中电阻多为常用阻值51k、100k、200k、510k;电容多在反馈端,容值为0.1uF、1uF、10uF,其中通用单元电路二、三、九反向输入端有0.1uF电容,通用单元电路八反向输入端有4.7uF电容,可作带微分的环节。
以通用单元为例,现在搭建一个积分环节,比例常数为1s。我们可以选择常用元件100k、10uF,T=1k×10uF=1s,其中通用单元电路二是满足要求的,把对应100k和10uF的插针使用短路帽连接起来,锁零按钮按下去先对电容放电,然后用二号导线把正单位阶跃信号输入到积分单元的输入端,积分电路的输出端接入反向器单元,保证输入、输出方向的一致性。观察输出曲线,其具体电路如下图所示。
七、非线性单元
由两个含有非线性元件的电路组成,一个含有双向稳压管,另一个含有两个单向二极管并且需要外加正负15伏直流电源,可研究非线性环节的静态特性和非线性系统。其中10k、47k电位器由电位器组单元提供。例如47k电位器,既可由一号导线连接也可由二号导线连接电位器单元组中的可调电位器两个端点。
CR0R0uiR-++-++uo以连接死区非线性环节为例,输入端与正电源端、输入端与负电源端分别为两个10k可调电位器的固定端,分别用导线连接;正电源所连电位器的可调端与D1相连,另一个可调端与D2相连。然后使用低频函数信号发生器输出10Hz16v的正弦波,用导线连接到非线性环节的输入端。实验前断开电位器与电路的连线,用万用表测量R的阻值,然后再接入电路中。
八、零阶保持器
零阶保持器为实验主面板上U3单元。它采用“采样-保持器”组件LF398,具有将连续信号离散后的零阶保持器输出信号的功能,其采样频率由外接的方波信号频率决定。使用时只要接入外部的方波信号及输入信号即可。
九、数据采集接口单元
数据采集卡采用THBXD,它可直接插在IBM-PC/AT 或与之兼容的计算机内,其采样频率为350K;有16路单端A/D模拟量输入,转换精度均为14位;4路D/A模拟量输出,转换精度均为12位;16路开关量输入,16路开关量输出。接口单元则放于实验平台内,用于实验平台与PC上位机的连接与通讯。
数据采集卡接口部分包含模拟量输入输出(AI/AO)与开关量输入输出(DI/DO)两部分。其中列出AI有4路,AO有2路,DI/DO各8路。
使用虚拟示波器观察一个模拟信号,可以用导线直接连接到接口中 AD端;若使用采集卡中的信号源,用DA输出(即实验中我们通常将信号输入到AD1端,软件内部信号DA1输出)。
十、实物实验单元
包括温度控制单元、直流电机单元和步进电机单元,主要用于计算机控制技术实验中,使用方法详见实验指导书。
第二篇:工商自控原理实验考试题
工商自控原理实验考试题
要求:写出每个题目的程序清单和运行结果,按照题目要求分析结果。1 已知系统的闭环传递函数为:(s)3s2,将此传递函数在Matlab中(s5)(s3)(s1)
表示成零极点的形式和一般形式、部分分式形式。
2已知系统的开环传递函数为
Gk(s)Kg
ss22
绘制系统开环零、极图和根轨迹图,并分析系统的稳定性。
3已知系统的开环传递函数为G0(s)4s1 2s(s1)(2s1)
绘制系统的Nyquist图,利用Nyquist稳定判据判断该系统的稳定性。
4在Matlab中画出在不同阻尼系数(0,0.2,0.4,0.6,0.8,1)下,典型二阶系统的单位阶跃响应曲线,分析系统参数对阶跃响应的影响。
第三篇:自控原理小结
1、自动控制,是指在没有人直接参与的情况下,利用控制装置或控制器,使被控对象的某个被控量
自控地按照预定的规律运行的过程。
自动控制科学是研究自动控制共同规律的技术科学。
2、1948年维纳提出了《控制论》,至此形成了完整的控制理论体系。
经典控制理论以传递函数为基础,主要研究单输入单输出、线性定常系统的分析和设计问题。现代控制理论主要研究具有高性能、高精度和多耦合回路的多变量系统的分析和设计问题。
3、反馈控制原理:
指用被控量的反馈信息,不断修正被控量和输入量之间的偏差,从而实现对被控对象进行控制的任务。4、5、6、7、对系统被控量变化全过程提出的基本要求都是一样的,归结为稳定性、快速性和准确性,即快、准、稳的要求 控制系统中常用的典型输入信号有: 单位阶跃函数、单位斜坡(速度)函数、单位加速度(抛物线)函数、单位脉冲函数和正弦函数。如果一个闭环极点离虚轴最近,周围无闭环零点,其它闭环极点又远离虚轴。这个极点在系统的时间响应过程中起主导作用,称为闭环主导极点。(1)具有比例-积分-微分控制规律的控制器,称为PID控制器,是工业控制中常用的有源校正装
置。Proportion比例,Integral 积分,Differential微分
(2)PID控制器不仅能提高系统的稳态性能,同样也能够用于提高系统的动态性能。
通常,使I部分发生在系统频率特性的低频段,以提高系统的稳态性能;使D部分发生在系统频率特性的中频段,以改善系统的动态性能。
(3)P控制器,实质上是一个具有可调增益的放大器。不影响相位,提高系统开环增益,可减小系统稳态误差,提高系统控制精度,但会降低系统稳定性,甚至使闭环系统不稳定。很少单独使用。
PD控制器中的微分控制规律,能反应输入信号变换趋势,产生有效的早期修正信号,增加系统阻尼程度,改善系统稳定性。串联校正时,增加一个—1/ 的开环零点,使系统相角裕度提高,有助于系统动态性能的改善。
微分控制作用(D)只对动态过程起作用,对稳态过程无影响,且对噪声非常敏感。一般不单独使用。
I控制器(具有积分控制规律的控制器),可提高系统型别(无差度),有利于稳态性能提高。但增加了一个位于原点的开环极点,信号产生90°相角滞后,对系统稳定性不利。
8、PI控制器(具有比例-微分控制规律的控制器),主要用来改善控制系统的稳态性能。香农采样定理:
如果采样器的输入信号e(t)具有有限带宽,并且有直到Wh的频率分量,则使信号e(t)圆满地从采样信号e*(t)中恢复过来的采样周期T需满足:
T(最大采样周期)≤2∏/2Wh,即
Ws(最低采样频率)=2∏/T≥2Wh9、10、Z变换是从拉氏变换直接引申出来的一种变换方法,实际上是采样函数拉氏变换的变形。因此,Z变换又称为采样拉氏变换,是研究线性离散系统的重要数学工具。经典控制理论建立了代数判据、奈奎斯特判据、对数判据、根轨迹判据来判断线性定常系统的稳
定性,但不适于非线性、时变系统。
分析非线性系统稳定性及自振的描述函数法,要求系统线性部分具有良好的滤除谐波的性能。李雅普诺夫的稳定性理论更具有一般性,不仅适用于单变量、线性、定常系统,而且适用于多变量、非线性、时变系统。
李雅普诺夫第一法(直接法):
指利用线性系统微分方程的解来判断系统的稳定性。
李雅普诺夫第二法(间接法):
首先利用经验和技巧来构造李雅普诺夫函数,进而利用李雅普诺夫函数来判断系统稳定性。
第四篇:自控设计实验感想
一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
自控课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.
通过这次自控系统设计,本人在多方面都有所提高。通过这次系统设计,综合运用本专业所学课程的理论和生产实际知识进行一次设计工作的实际训练从而培养和提高学生独立工作能力,巩固与扩充了系统设计等课程所学的内容,掌握矫正电动机不稳定系统设计的方法和步骤,掌握系统设计的基本的技能。懂得了怎样分析系统的稳定性,怎样确定矫正方案,了解了系统的基本结构,提高了计算能力,绘图能力,熟悉了规范和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。
在这次设计过程中,体现出自己单独设计自控系统的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。
特别系最后验证成果那天,我们小组最强悍啦,从早上九点连续不断工作到下午四点半,足足八个小时,期间连厕所都顾不上,饭也没吃,空着肚子,憋着尿也硬是坚持到最后,结果,我们笑到了最后,也胜利了,终于把该死的波形给矫正出来,真系千呼万唤始出来也!
在此感谢我们的彭康拥老师.,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次课程设计的每个实验细节和每个数据,都离不开老师您的细心指导。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。
同时感谢对我帮助过的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊。尤其系两位领头人,永成跟震东,他们一丝不苟,不停地接线,修改再修改……终于,让我们见到成功的光芒。
由于本人的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正,本人将万分感谢。
第五篇:数据库原理实验教案
《数据库原理》课程实验
实验1 创建数据库和数据表
一、实验目的
熟悉SQL Server Management Studio界面;掌握通过图形化向导和执行Transact-SQL语句创建数据库的方法。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
SQL Server中的一个数据库必须至少包含一个数据文件和一个事务日志文件,所以创建数据库就是建立主数据文件和日志文件。
在SQL Server 2005中创建数据库的方法主要有两种:一是在SQL Server Management Studio窗口中使用可视化界面,通过方便的图形化向导创建,二是通过执行Transact-SQL语句创建。
(一)向导方式创建
1、从“开始”菜单选择“所有程序”→“Microsoft SQL Server 2005”,打开“SQL Server Management Studio”窗口,使用Windows或SQL Server身份验证建立连接。
2、在“对象资源管理器”窗格中展开服务器,选择“数据库”节点右击,从弹出的快捷菜单中选择“新建数据库”命令,打开“新建数据库”窗口。
3、该窗口中有3个页,分别是“常规”、“选项”和“文件组”,完成这3个页的内容即可完成数据库的创建。这里,我们仅设置“常规”的相应内容,其他2个页的内容按照默认设置即可。
(1)“数据库名称”文本框中输入数据库的名称,如“sample_st”,再输入该数据库的所有者,这里使用默认值即可。(也可以通过单击文本框右边的“浏览”按钮选择所有者。
(2)“数据库文件”列表中包括两行,一个是数据文件,一个是日志文件。通过单击下面相应的按钮可以添加或删除相应的数据文件。
逻辑名称:指定该文件的文件名。
文件类型:用于区别当前文件是数据文件还是日志文件。 文件组:显示当前数据库文件所属的文件组。
初始大小:指定该文件的初始容量。在SQL Server 2005中数据文件的默认值为3MB,日志文件的默认值为1MB。 自动增长:用于设置在文件容量不够用时,文件根据何种增长方式自动增长。
路径:指定存放在文件的目录。默认情况下,SQL Server 2005将存放路径设置为其安装目录下的data子目录,单击该列中的按钮可以在打开的“定位文件夹”对话框中更改数据库的存储路径。
完成上述操作后,单击“确定”按钮关闭“新建数据库”窗口,即完成了数据库的创建,可以在“对象资源管理器”窗格中看到新建的数据库。
(二)语言方式创建
SQL Server 2005使用的Transact-SQL语言是标准SQL的增强版本,使用它提供的Create Database语句同样可以完成对数据库的建立(参考内容见附录)。
1、单击“新建查询”按钮,创建一个查询输入窗口将附录中的语句复制到该窗口。选择创建数据库的命令,单击工具栏中的“分析”按钮,可以检查语法错误;单击“执行”按钮即可执行语句,在查询窗口内的“查询”窗格中可以看到“命令已成功完成”的提示消息。在“对象资源管理器”窗格中刷新,即可看到新建的数据库。
2、继续执行Create Database之后的语句,在“sample_st”数据库中用Create Table命令依次建立Student、Course和SC这三个数据表,利用Insert命令为各数据表添加数据。(参考内容见教材P84)
(三)知识巩固
仿照附录内容,用SQL-DDL语言创建“产品订购”数据库,包含四个数据表S、P、J和SPJ,表结构及内容见教材P122。
实验2 数据库的简单查询
一、实验目的
掌握单表查询中各个子句(Select、From、Where、Group、Having、Order)的用法,特别要掌握比较运算符和逻辑运算符的使用。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
在已建立的数据库和数据表的基础上,用Select语句完成下列查询操作。
1、查询全体学生的学号和姓名。
select sn,sno from s
2、查询全体学生的所有基本信息(仅针对Student表)。
select * from s
3、对SC表查询全体学生的选课记录,在显示结果中为“Grade”列增加5分。select score+5 from sc
4、查询全体学生的学号和姓名,将原来的英文列名设置中文别名。select sn as 姓名,sno as 学号 from s
5、显示所有选课学生的学号,去掉重复结果。
select distinct sno from sc
6、查询成绩在80分以上的学生选课记录
select * from sc where score>80
7、查询经济系所有学生的学号和姓名。
select sn,sno from s where dept='经济系'
8、查询成绩在80~90分的学生选课记录。
select * from sc where score between 80 and 90
9、查询年龄不在22~25的学生记录。
select * from s where age not between 22 and 25
10、查询所有姓“刘”的学生记录。
select * from s where sn like'刘%'
11、查询无考试成绩(成绩为空值)的学号、课程号。5
select sno ,cno from sc where score is null
12、查询考试成绩非空值的学号、课程号。
select sno ,cno from sc where score is null
13、查询数学系年龄小于20岁的学生记录。
select * from s where dept ='数学系'and age <28
14、查询选修了“101”或“102”课程的选课记录。select * from c where cno ='101' or cno ='102'
15、查询学生总人数。
select count(sno)from s
16、查询选修了课程的学生人数。
select count(distinct sno)from sc
17、查询选修了“101”课程的学生的平均成绩。
select AVG(score)from sc
where cno='101'
18、查询学号为“01003”的学生的考试总成绩。
select sum(score)from sc
where sno=01003
19、查询“101”课程的最高分和最低分。
select max(score),MIN(score)from sc
where cno='101'
20、查询每门课程的选课人数。
select cno,COUNT(sno)from sc
group by cno
21、查询每个学生的学号、选课数、平均成绩和总成绩。
select sno,COUNT(cno)/*,AVG(score),sum(score)*/ from sc group by sno
22、查询选课数超过2的学生学号及其选课数。
select sno,COUNT(cno)from sc
group by sno
having COUNT(*)>2
23、查询所有学生信息,查询结果按年龄降序排列。(针对Student表操作)
select * from s order by AGE desc
24、查询所有学生信息,查询结果按系名升序,同系学生按年龄降序排列。
select * from s order by dept,AGE desc
25、查询选课数超过2的学生学号及其选课数,查询结果按选课数降序排列。
select sno,COUNT(cno)from sc group by sno having COUNT(*)>2 order by count(cno)desc
实验3 数据库的多表查询
一、实验目的
继续熟练SQL-SELECT语句的使用;理解多表查询的概念;掌握多表连接查询中各个子句的用法,特别要比较内连接和外连接的结果。掌握非相关子查询、相关子查询的用法,理解它们的执行过程;学会在SQL Server中用Exists实现交运算,用Not Exists实现差运算。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
(一)、在已建立的数据库和数据表的基础上,用Select语句的连接查询完成下列操作。
1、查询每个学生的基本信息及其选课情况。
2、查询选修“101”课程的学生学号、姓名和成绩。
3、查询与“李平”在同一个系学习的学生记录。
4、查询与“李平”年龄相同的学生记录。
5、查询选修课程名为“数据库原理”的选课记录。
6、查询选修课程名为“数据库原理”的学生记录。
7、查询选修“101”课程且成绩≥90的学号、姓名和成绩。
8、查询“李平”的所有选课记录。
9、查询数学系学生选修的课程号,要求结果中去掉重复记录。
10、查询计算机系选修课程数≥2的学号、姓名及平均成绩,查询结果按平均成绩降序。
11、查询每个学生的学号、选修课程号、课程名及成绩。
12、查询所有学生的选修情况(包括选课和未选课的学生),要求显示学号、姓名、课程号和成绩。
(二)、在已建立的数据库和数据表的基础上,用Select语句的嵌套查询完成下列操作。
1、查询选修“101”课程且成绩≥90的学号、姓名。
2、查询“李平”的所有选课记录。
3、查询与“李平”在同一个系学习的学生记录。
4、查询与“李平”年龄相同的学生记录。
5、查询选修课程名为“数据库原理”的选课记录,输出结果包括学号和成绩。
6、查询选修课程名为“数据库原理”的学生记录,输出结果包括学号、姓名和所在系。
7、查询学号为“01003”学生的选修课程号和课程名。
8、查询没有选修“101”课程的学生学号和姓名。
9、查询选修“101”课程或“102”课程的学生姓名。
10、查询选修“101”课程和“102”课程的学生学号。
11、查询选修“101”课程但没选修“102”课程的学生学号。
12、查询没有选修任何课程的学生记录,输出结果包括学号、姓名和所在系。
13、查询数学系学生选修的课程号,要求结果中去掉重复记录。
14、查询选修课程至少包含“01003”选修课程的学生学号。实验4 数据库更新、视图定义及使用
一、实验目的
掌握Insert、Update、Delete语句的使用;对于Insert语句,要求理解默认值约束、空值约束在插入记录时所起的作用。理解视图的概念,掌握Create View、Drop View语句的使用;掌握基于视图的查询语句的使用。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
(一)、在已建立的数据库和数据表的基础上,向数据库中添加一个临时表ST,其结构比Student表结构多一个score字段。用Insert语句向临时表输入数据,输入有误时用Update语句进行修改。再用三个更新语句完成下列操作。
1、向Student表添加若干新记录,内容自定。(观察已定义的表的约束情况)
2、向SC表添加新记录,内容自定,不低于10条(注意不能违反参照完整性)。
3、为临时表ST添加记录。
4、把Student表的所有行一次性地加到临时表ST中。
5、在ST表中把所有学生的成绩加2分。
6、在ST表中把所有学生的年龄增加1。
7、在ST表中把“李平”的所在系改为“计算机”。
8、在ST表中将选修课程“数据库原理”的学生成绩加2分。
9、在SC表中删除所有成绩为空值的选修记录。
10、删除计算机系选修成绩不及格的选课记录。
(二)、在已建立的数据库和数据表的基础上,完成下列操作。
1、建立数学系学生的视图MAST。
2、建立计算机系选修课程名为“数据库原理”的学生视图,视图名:CSTVIEW,该视图中应包括属性列:学号、姓名、成绩。
3、创建一个名为STSUMVIEW的视图,包括所有学生的学号和总成绩。
4、建立学生选课视图SCVIEW,包括所有学生的学号、姓名、课程号、课程名和成绩。
5、通过MAST视图查询学生基本信息。
6、通过SCVIEW查询成绩大于90分的学生的学号和成绩。
7、查询计算机系选修课程名为“数据库原理”并且成绩大于85分的学生的学号和成绩。
8、通过MAST视图将学号为“01008”学生的年龄修改为21岁。
9、通过MAST视图将学号为“01009”学生所在系改为“经济”,是否能成功执行?若不能成功请说明理由;若修改成功,请再次通过MAST视图查询学生基本信息,是否能查询到该生?若不能查询请说明理由。
10、通过SCVIEW视图将学号为“01004”学生的总成绩修改为380分,是否能成功执行?若不能成功请说明理由。
实验5 数据库的安全与保护
一、实验目的
理解SQL Server的用户与权限管理机制,掌握用对象资源管理器创建服务器登录帐号,并同时建立用户。掌握如何为给定的用户分配权限。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
用户与权限管理
(1)打开“SQL Server Management Studio”窗口,使用对象资源管理器创建两个服务器登录帐号Test1和Test2,并在“sample_st”数据库中创建两个对应的同名用户。设置Test1用户和Test2用户的默认架构为guest。
(2)使用Test1身份登录,并为Test2分配创建数据表的权限;用Test2身份登录来验证权限分配成功。
(3)使用Test1身份登录,收回刚刚分配给Test2的创建数据表的权限;用Test2身份登录来验证权限回收成功。
五、实验步骤
1、使用对象资源管理器创建两个服务器登录帐号。以系统管理员身份登录SQL Server。打开“SQL Server Management Studio”窗口,在对象资源管理器列表中,打开展开“安全性”文件夹,选择“登录名”图标,单击鼠标右键,在弹出的菜单中选择“新建登录名”。在打开的对话框中依次建立Test1和Test2,选择“SQL Server身份验证”,同时还要输入密码,默认数据库为“sample_st”。
(2)在“用户映射”中列出了当前登录帐号可以选择访问的数据库如“sample_st”,在其左侧的复选框中打勾,表示当前登录帐号可以访问对应的数据库,默认用户名与登录帐号相同。
(3)单击“确定”按钮完成创建。
2、创建新的数据库用户。
在对象资源管理器中选中要访问操作的数据库,展开“安全性”文件夹,在“用户”文件夹中查找是否已建立与登录名Test1和Test2同名的数据库用户,若已建立,则在属性中修改其默认架构为guest;否则右击鼠标在菜单中选择“新建用户”选项,出现“数据库用户-新建”对话框,建立相应的用户。最后,在sample_st数据库的“安全性架构guest属性权限”中,为test1和test2用户分配相应权限。
3、用Grant、Revoke命令实现对用户的授权和收权。
4、用Create命令创建数据表验证授权和收权是否成功。
5、以系统管理员身份登录SQL Server。使用:“GRANT SELECT ON SC TO Test1 WITH GRANT OPTION”命令,再分别以Test1和Test2身份登录,进行授权及查询数据表,验证“WITH GRANT OPTION”能否成功执行。
6、以系统管理员身份使用“REVOKE”命令回收上述授权。
实验6 数据库的完整性
一、实验目的
通过实验掌握数据库完整性概念,掌握利用SQL Server 2005实现数据库完整性的基本方法和步骤。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
1、建立关系模式。
完成教材P164第6题,用SQL语言定义“职工”和“部门”两个关系模式: 职工(职工号,姓名,年龄,职务,工资,部门号),职工号为主码 部门(部门号,名称,经理名,电话), 部门号为主码 要求在模式中完成以下完整性约束条件的定义:(1)定义每个模式的主码;(2)定义参照完整性;
(3)定义职工年龄不得超过60岁;(4)定义部门名称必须取值唯一。
2、验证完整性约束。
使用Insert Values语句向两个表中各插入5~10条记录,对下列内容进行验证。(1)验证主键约束:“职工”和“部门”两个表中是否能接受主码值相同的记录,通过实例验证。
(2)验证唯一约束:“部门”表中是否能接受名称相同的两个不同记录?为什么?
(3)验证检查约束:“职工”表中能否接受年龄不满足条件的记录?为什么?
(4)验证参照完整性:若“部门”表中不存在部门号为“008”的记录,是否能在“职工”表中插入部门号为“008”的职工记录?若删除“001”部门的所有信息,正确的操作步骤是什么?
实验7 数据库设计实验
一、实验目的
通过实验掌握数据库设计的基本方法和步骤。
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
1、选定实验题目,为某个单位或部门设计数据库应用系统,比如:学生成绩管理、机房上机管理、职工档案管理、商品库存管理、图书管理、工资管理等。
2、根据选定的题目进行需求分析,重点分析数据需求和功能需求。
3、概念结构设计:画出E-R图。
4、逻辑结构设计:设计数据库和数据表的具体结构,指出各表的属性名称、数据类型;说明各表的主码及表之间的关联情况;说明本设计是否已达到3NF要求。
5、简要评价系统设计的优点和不足。
五、实验要求
1、提交设计报告,涵盖实验内容的全部信息,不低于1000字。
2、提交建立应用系统数据库的代码,所有数据表中的记录总数不低于50条。(请参照实验2的附录建立数据库)
实验8 存储过程实验
一、实验目的
通过实验熟悉使用存储过程进行数据库应用程序设计的方法
二、实验环境
Windows XP操作系统,SQL Server 2005软件。
三、实验课时
2课时。
四、实验内容
对sample_st数据库,编写存储过程,完成下面功能
1、统计任意一门课程的平均成绩
2、统计所有课程的平均成绩
3、统计任意一门课程的成绩分布情况,即按照分数段统计人数(即<60、60-69、70-79、80-89、90以上)