微型计算机实验报告

目录

实验一 A/D与D/A转换 (2)

实验二数字滤波器 (5)

实验三离散化方法研究 (8)

实验四数字PID调节器算法的研究 (13)

实验五串级控制算法的研究........................ 错误!未定义书签。实验六解耦控制算法的研究........................ 错误!未定义书签。实验七最少拍控制算法研究........................ 错误!未定义书签。实验八具有纯滞后系统的大林控制 .................. 错误!未定义书签。实验九线性离散系统的全状态反馈控制 .............. 错误!未定义书签。实验十模糊控制系统.............................. 错误!未定义书签。实验十一具有单神经元控制器的控制系统 ............ 错误!未定义书签。实验十二二次型状态调节器........................ 错误!未定义书签。实验十三单闭环直流调速系统...................... 错误!未定义书签。实验十四步进电机转速控制系统 .................... 错误!未定义书签。实验十五单闭环温度恒值控制系统 .................. 错误!未定义书签。实验十六单容水箱液位定值控制系统 ................ 错误!未定义书签。

实验一A/D与D/A转换

一、实验目的

1.通过实验了解实验系统的结构与使用方法;

2.通过实验了解模拟量通道中模数转换与数模转换的实现方法。

二、实验设备

1.THBDC-1型控制理论·计算机控制技术实验平台

2.THBXD数据采集卡一块(含37芯通信线、16芯排线和USB电缆线各1根)

3.PC机1台(含软件“THBDC-1”)

三、实验内容

1.输入一定值的电压,测取模数转换的特性,并分析之;

2.在上位机输入一十进制代码,完成通道的数模转换实验。

四、实验步骤

1.启动实验台的“电源总开关”,打开±5、±15V电源。将“阶跃信号发生器”单元输出端连接到“数据采集接口单元”的“AD1”通道,同时将采集接口单元的“DA1”输出端连接到接口单元的“AD2”输入端;

2.将“阶跃信号发生器”的输入电压调节为1V;

3.启动计算机,在桌面双击图标“THBDC-1”软件,在打开的软件界面上点击“开始采集”按钮;

4.点击软件“系统”菜单下的“AD/DA实验”,在AD/DA实验界面上点击“开始”按钮,观测采集卡上AD转换器的转换结果,在输入电压为1V(可以使用面板上的直流数字电压表进行测量)时应为00001100011101(共14位,其中后几位将处于实时刷新状态)。调节阶跃信号的大小,然后继续观察AD转换器的转换结果,并与理论值(详见本实验附录)进行比较;

5.根据DA转换器的转换规律(详见本实验附录),在DA部分的编辑框中输入一个十进制数据(如2457,其范围为0~4095),然后虚拟示波器上观测DA转换值的大小;

6.实验结束后,关闭脚本编辑器窗口,退出实验软件。

五、附录

1.数据采集卡

本实验台采用了THBXD数据采集卡。它是一种基于USB总线的数据采集卡,卡上装有14Bit分辨率的A/D转换器和12Bit分辨率的D/A转换器,其转换器的输入量程均为±10V、输出量程均为±5V。该采集卡为用户提供4路模拟量输入通道和2路模拟量输出通道。其主要特点有:

1) 支持USB1.1协议,真正实现即插即用

2) 400KHz 14位A/D转换器,通过率为350K,12位D/A转换器,建立时间10μs

3) 4通道模拟量输入和2通道模拟量输出

4) 8K深度的FIFO保证数据的完整性

5) 8路开关量输入,8路开关量输出

2.AD/DA转换原理

数据采集卡采用“THBXD”USB卡,该卡在进行A/D转换实验时,输入电压与二进制的对应关系为:-10~10V对应为0~16383(A/D转换为14位)。其中0V为8192。其主要数据格式如下表所示(采用双极性模拟输入):

而DA 转换时的数据转换关系为:-5~5V 对应为0~4095(D/A 转换为12位),其数据格式(双极性电压输出时)为:

3.编程实现测试信号的产生

利用上位机的“脚本编程器”可编程实现各种典型信号的产生,如正弦信号,方波信号,斜坡信号,抛物线信号等。其函数表达式分别为:

1) 正弦信号

)sin(ϕω+=t A y ,ω

π

2=T

2) 方波

⎩⎨

⎧<≤<≤=T

t T T t A

y 110

3) 斜坡信号

⎩⎨

⎧<≤<≤=T

t T T t at y 110

0 ,a 为常量

4) 抛物线信号

⎪⎩

⎪⎨⎧<≤<≤=T

t T T t at y 112002

1,a 为常量 这里以抛物线信号为例进行编程,其具体程序如下:

dim tx,op,a ‘初始化函数

sub Initialize(arg) ‘初始化函数

WriteData 0 ,1 ‘对采集卡的输出端口DA1进行初始化

tx=0 ‘对变量初始化 end sub

sub TakeOneStep (arg) ‘算法运行函数 a=1

op=0.5*a*tx*tx ‘0.1为时间步长

tx=tx+0.1

if op>3 then ‘波形限幅

tx=0

end if

WriteData op ,1 ‘数据从采集卡的DA1端口输出

end sub

sub Finalize (arg)‘退出函数

WriteData 0 ,1

end sub

通过改变变量tx、a的值可改变抛物线的上升斜率。

其它典型信号的编程请参考“THBDC-1”安装目录下的“计算机控制算法VBS\基本波形”目录内参考示例程序。

实验二 数字滤波器

一、实验目的

1.通过实验熟悉数字滤波器的实现方法; 2.研究滤波器参数的变化对滤波性能的影响。 二、实验设备

1.THBDC-1型 控制理论·计算机控制技术实验平台

2.THBXD 数据采集卡一块(含37芯通信线、16芯排线和USB 电缆线各1根) 3.PC 机1台(含软件“THBDC-1”) 三、实验内容

1.设计一个带尖脉冲(频率可变)干扰信号和正弦信号输入的模拟加法电路; 2.设计并调试一阶数字滤波器; 3.设计并调试高阶数字滤波器。 四、实验原理

1.在许多信息处理过程中,如对信号的滤波,检测,预测等都要广泛地用到滤波器。数字滤波器是数字信号处理中广泛使用的一种线性环节,它从本质上说是将一组输入的数字序列通过一定规则的运算后转变为另一组希望输出的数字序列。一般可以用两种方法来实现:一种是用数字硬件来实现;另一种是用计算机的软件编程来实现。

一个数字滤波器,它所表达的运算可用差分方程来表示: ∑∑==-+-=N

i i N

i i i n y b i n x a n y 0

)()()(

2.一阶数字滤波器及其数字化 一阶数字滤波器的传递函数为 1

1

)()()(+=

=

s s X s Y s G F τ 利用一阶差分法离散化,可以得到一阶数字滤波器的算法:

)1()1()()(--+=k y T k x T k y S

S τ

τ

其中T S 为采样周期,τ为滤波器的时间常数。T S 和τ应根据信号的频谱来选择。 3.高阶数字滤波器

高阶数字滤波器算法很多,这里只给出一种加权平均算法: )3()2()1()()(4321-+-+-+=K x A K x A K x A K x A K y

其中权系数i A 满足:∑==4

1

1i i A 。同样,i A 也根据信号的频谱来选择。

五、实验步骤

1.实验接线及准备

1.1 启动计算机,在桌面双击图标THBDC-1,运行实验软件;

1.2 启动实验台的“电源总开关”,打开±5、±15V 电源。将低频函数信号发生器单元输出端连接到采集卡的“AD1”通道,并选择方波输出。在虚拟示波器观测方波信号的频率和幅值,然后调节信号发生器中的“频率调节”和“幅度调节”电位器,使方波信号的频率和幅值分别为4Hz ,2V 。然后断开与采集卡的连接,将低频函数信号发生器单元输出端连接

到“脉冲产生电路”单元输入端,产生一个尖脉冲信号Uo;

1.3 按图2-2连接电路,其中正弦信号来自数据采集卡的“DA1”输出端,尖脉冲信号来自U1单元的输出端。图2-2的输出端与数据采集卡的“AD1”输入端相连,同时将数据采集卡的“DA2”输出端与“AD2”输入端相连。

2.脚本程序运行

2.1点击软件工具栏上的“”按钮(脚本编程器),打开脚本编辑器窗口;

2.2在脚本编辑器窗口的文件菜单下点击“打开”按钮,并在“计算机控制算法VBS\计算机控制技术基础算法”文件夹下选中“数字滤波”脚本程序并打开,阅读、理解该程序,然后点击脚本编辑器窗口的调试菜单下“步长设置”,将脚本算法的运行步长设为10ms;

2.3点击脚本编辑器窗口的调试菜单下“启动”,用双踪示波器分别观察图2-2的输出端和数据采集卡输出端“DA2”的波形。调节信号发生器中的“频率调节”电位器,改变方波信号的频率(即尖脉冲干扰信号的频率)。观察数据滤波器的滤波效果;

2.4点击脚本编辑器的调试菜单下“停止”,修改算法程序中的参数Ts(注:修改Ts时要同步修改算法的运行步长)、Ti两个参数,然后再运行该程序,在示波器上再次观察参数变化对滤波效果的影响;

2.5对于高阶数字滤波器的算法编程实验,请参考本实验步骤2.2、 2.3和2.4。不同的是打开的脚本程序文件名为“数字滤波(高阶)”,实验时程序可修改的参数为a1、a2、a3和采样时间Ts。

2.6 实验结束后,关闭脚本编辑器窗口,退出实验软件。

六、实验报告要求

1.画出尖脉冲干扰信号的产生电路图。

2.编写一阶数字滤波器的脚本程序。

3.绘制加数字滤波器前、后的输出波形,并分析程序中参数的变化对其滤波效果的影响。

七、附录

1.尖脉冲干扰信号产生的模拟电路图

图2-1 尖脉冲产生电路

通过改变方波信号的频率,即可改变尖脉冲的频率。

2.实验电路的信号的产生

把图2-1产生的尖脉冲信号视为干扰信号,与一低频正弦信号(由上位机的“脚本编辑器”编程输出)输入到图2-2所示的两个输入端。

图2-2 测试信号的产生电路图

3.一阶数字滤波器的程序编写与调试示例

dim pv,op1,op2,Ts,t,opx,x,Ti ‘变量定义

sub Initialize(arg)‘初始化函数

WriteData 0 ,1 opx=0

end sub

sub TakeOneStep (arg) ‘算法运行函数

pv = ReadData(1) ‘采集卡通道1的测量值

op1=2*sin(x) ‘正弦信号的产生

x=x+0.1

Ti=0.02

Ts=0.01 ‘采样时间10ms

op2=Ts/Ti*pv+(1-Ts/Ti)*opx ‘一阶数字滤波器的输出

opx=op2

if op2>=4.9 then

op2=4.9

end if

if op2<=-4.9 then

op2=-4.9

end if

WriteData op1 ,1 ‘正弦信号从DA1端口输出

WriteData op2 ,2 ‘滤波后的信号从DA2端口输出

end sub

sub Finalize (arg) ‘退出函数

WriteData 0 ,1

WriteData 0 ,2

end sub

高阶数字滤波器的编程请参考“THBDC-1”安装目录下的“计算机控制算法VBS\计算机

控制技术基础算法”目录内参考示例程序。

实验三 离散化方法研究

一、实验目的

1.学习并掌握数字控制器的设计方法;

2.熟悉将模拟控制器D(S)离散为数字控制器的原理与方法;

3.通过数模混合实验,对D(S)的多种离散化方法作比较研究,并对D(S)离散化前后闭环系统的性能进行比较,以加深对计算机控制系统的理解。 二、实验设备

1.THBDC-1型 控制理论·计算机控制技术实验平台

2.THBXD 数据采集卡一块(含37芯通信线、16芯排线和USB 电缆线各1根) 3.PC 机1台(含软件“THBDC-1”) 三、实验内容

1.按连续系统的要求,照图3-1的方案设计一个与被控对象串联的模拟控制器D(S),并用示波器观测系统的动态特性。

2.利用实验平台,设计一个数-模混合仿真的计算机控制系统,并利用D(S)离散化后所编写的程序对系统进行控制。

3.研究采样周期T S 变化时,不同离散化的方法对闭环控制系统性能的影响。 4.对上述连续系统和计算机控制系统的动态性能作比较研究。 四、实验原理

由于计算机的发展,计算机及其相应的信号变换装置(A/D 和D/A )取代了常规的模拟控制。在对原有的连续控制系统进行改造时,最方便的办法是将原来的模拟控制器离散化,其实质是将数字控制部分(A/D 、计算机和D/A )看成一个整体,它的输入与输出都是模拟量,因而可等效于一个连续的传递函数D(S)。这样,计算机控制系统可近似地视为以D(S)为控制器的连续控制系统。

下面以一个具体的二阶系统来说明D(S)控制器的离散化方法。 1.二阶系统的原理框图如图3-1所示。

图3-1 二阶对象的方框图

图3-2 二阶对象的模拟电路图

2.系统性能指标要求

系统的速度误差系数5≥v K 1/s ,超调量%10≤p δ,系统的调整时间1≤s t s 据K v 要求可得:

5)

15.0(lim 0

0=+→S S K S s ,50=K

)

2(10

)15.0(5)(0+=

+=S S S S S G 令a

S S S D ++=

2

)(,则校正后的开环传递函数为 )

2()(10

)2(102)(2

n n S S a S S S S a S S S D ξωω+=+=+⨯++=

由上式得 10=n ω,a n =ξω2,取2

1=

ξ,则47.4102

12

==a

s

s

s s S S S D 22.015.0145.022.015.0147.4247.42)(++⨯

=++⨯=++=

所以校正后系统的模拟电路图如下图所示。

图3-3 校正后二阶系统的模拟电路图

S S

S C R S C R R S D 22.015.012.2)1()1(R )(221112++=⨯++=,为使校正后的5=v K ,要求对象K 由5增至

10。

K R 5001=,uF C 11=

45.0R 1

2

=R ,K R 2202=(实际可取200K 电阻)

,uF C 12= 3.)(S D 的离散化算法

图3-4 数—模混合控制的方框图

图3-3中)(S D 的离散化可通过数据采集卡的采样开关来实现。

传递函数与Z 传递函数间的相互转换,可视为模拟滤波器与数字滤波器之间的转换。常用的转换方法有:

a) 阶跃响应不变法(或用脉冲响应法) b) 后向差分法 c) 双线性变换 1) 阶跃跃响应不变法

)](1

[)(1s D s

L t u -=

)()(kT u kT u s =

)]([)]([)(kT u Z kT u Z z u s ==

)(kT u -数字滤波器在阶跃作用下输出响应的)(kT u )(kT u s -模拟滤波器在阶跃作用下输出响应的采样值)(kT u s

1

11)]

([E(Z)

U(Z)D(Z)--=

=

z kT u Z s S

S

S D 22.015.01)(++=

, 54.427.11)22.01(5.01)(++

=++=S S S S S S U t e t u 54.427.11)(-+=

)

1)(1()27.1(27.2127.111)(154.411

54.4154.41----------+-=

-+-=z e z z e z e z z u t t T 据此得

154.41

54.411)27.1(27.211)(E(Z)U(Z)D(Z)------+-=

-==z e z e z z U T T 即 1)-)e(k (1.27-2.27e(k)1)-U(k U(k)54.454.4T T e e --++= 2) 后向差分法

令 )1()()(--≈k e k e t de ,T dt =

T

k e k e dt t de )

1()()(--≈

后向差分S 与Z 之间关系为:

T

z S 1

1--=,代入D(S)表达式中得 1

111

22.022.015.05.022.01122

.0115

.01)()()(----+--+⨯+=-+-+==Z T Z T T T

Z T Z Z D Z E Z U

于是得

)1(22

.05

.0)(22.05.0)1(22.022.0)(-+-+++-+=

k e T k e T T k U T k U

3) 双线性变换

s T s T

Ts e

e e Z 2

2-

=

=

由泰勒级数得 s T

e

s T 2

12

+≈,s T e s T

212-≈-

111121122121--+-⨯=+-⨯=⇒-+

≈∴z z T S Z Z T S s

T s

T

Z 或,代入D(s)得

)

1(44.0)1()1()1(11T 20.22111T 20.51D(Z)1

1111

111

---------++++-=+-⨯⨯++-⨯⨯+=Z Z T T Z Z Z

Z Z Z

111144.044.01)1()1(44.01)44.0()44.0()1()1()()(----+----+⨯

+=--+--+=Z T T Z T T T

Z T T Z T T z E z U 即 )1(44.01)(44.01)1(44.044.0)(-+--+++-+-=k e T

T

k e T T k u T T k u

五、实验步骤

1.实验接线及准备

1.1 按图3-2连接一个二阶被控对象的模拟电路;

1.2 用导线将该电路的输入端连接到数据采集卡的“DA1”输出端,电路的输出端与数据采集卡的“AD1”输入端相连;

1.3待检查电路接线无误后,打开实验平台的电源总开关,并按下锁零按钮使其处于“锁零”状态。

2.脚本程序运行

2.1启动计算机,在桌面双击图标“THBDC-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.数字控制器(阶跃响应不变法)的程序编写与调试示例

dim pv,sv,ei,eix,op,opx,Ts ‘变量定义

sub Initialize(arg) ‘初始化函数

WriteData 0 ,1

eix=0

opx=0

end sub

sub TakeOneStep (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为控制输出的前项

if op<=-4.9 then ‘输出值限幅

op=-4.9

end if

if op>=4.9 then

op=4.9

end if

WriteData op ,1 ‘控制信号从DA1端口输出

end sub

sub Finalize (arg) ‘退出函数

WriteData 0 ,1

end sub

双线性变换法、后向差分变换法对D(S)离散化后的请参考“THBDC-1”安装目录下的“计算机控制算法VBS\计算机控制技术基础算法\ D(S)离散化方法研究”目录内参考示例程序。

实验四数字PID调节器算法的研究

一、实验目的

1.学习并熟悉常规的数字PID控制算法的原理;

2.学习并熟悉积分分离PID控制算法的原理;

3.掌握具有数字PID调节器控制系统的实验和调节器参数的整定方法。

二、实验设备

1.THBDC-1型控制理论·计算机控制技术实验平台

2.THBXD数据采集卡一块(含37芯通信线、16芯排线和USB电缆线各1根)

3.PC机1台(含软件“THBDC-1”)

三、实验内容

1.利用本实验平台,设计并构成一个用于混合仿真实验的计算机闭环实时控制系统;

2.采用常规的PI和PID调节器,构成计算机闭环系统,并对调节器的参数进行整定,使之具有满意的动态性能;

3.对系统采用积分分离PID控制,并整定调节器的参数。

四、实验原理

在工业过程控制中,应用最广泛的控制器是PID控制器,它是按偏差的比例(P)、积分(I)、微分(D)组合而成的控制规律。而数字PID控制器则是由模拟PID控制规律直接变换所得。

在PID控制规律中,引入积分的目的是为了消除静差,提高控制精度,但系统中引入了积分,往往使之产生过大的超调量,这对某些生产过程是不允许的。因此在工业生产中常用改进的PID算法,如积分分离PID算法,其思想是当被控量与设定值偏差较大时取消积分控制;当控制量接近给定值时才将积分作用投入,以消除静差,提高控制精度。这样,既保持了积分的作用,又减小了超调量。

五、实验步骤

1.实验接线

1.1按图4-1和图4-2连接一个二阶被控对象闭环控制系统的电路;

1.2该电路的输出与数据采集卡的输入端AD1相连,电路的输入与数据采集卡的输出端DA1相连;

1.3待检查电路接线无误后,打开实验平台的电源总开关,并将锁零单元的锁零按钮处于“解锁”状态。

2.脚本程序运行

2.1启动计算机,在桌面双击图标“THBDC-1”,运行实验软件;

2.2顺序点击虚拟示波器界面上的“”按钮和工具栏上的“”按钮(脚本编程器);

2.3在脚本编辑器窗口的文件菜单下点击“打开”按钮,并在“计算机控制算法VBS\计算机控制技术基础算法\数字PID调器算法”文件夹下选中“位置式PID”脚本程序并打开,阅读、理解该程序,然后点击脚本编辑器窗口的调试菜单下“步长设置”,将脚本算法的运行步长设为100ms;

2.4点击脚本编辑器窗口的调试菜单下“启动”;用虚拟示波器观察图4-2输出端的响应曲线;

2.5点击脚本编辑器的调试菜单下“停止”,利用扩充响应曲线法(参考本实验附录4)整定PID 控制器的P 、I 、D 及系统采样时间Ts 等参数,然后再运行。在整定过程中注意观察参数的变化对系统动态性能的影响;

2.6 参考步骤2.4、2.4和2.5,用同样的方法分别运行增量式PID 和积分分离PID 脚本程序,并整定PID 控制器的P 、I 、D 及系统采样时间Ts 等参数,然后观察参数的变化对系统动态性能的影响。另外在积分分离PID 程序运行过程中,注意不同的分离阈值tem 对系统动态性能的影响;

2.7 实验结束后,关闭脚本编辑器窗口,退出实验软件。 六、实验报告要求

1.绘出实验中二阶被控对象在各种不同的PID 控制下的响应曲线。 2.编写积分分离PID 控制算法的脚本程序。

3.分析常规PID 控制算法与积分分离PID 控制算法在实验中的控制效果。 七、附录

1.被控对象的模拟与计算机闭环控制系统的构成

图4-1 数-模混合控制系统的方框图

图中信号的离散化通过数据采集卡的采样开关来实现。 被控对象的传递函数为:

)15.0)(1(5

)2)(1(10)(++=

++=s s s s S G 它的模拟电路图如下图所示

图4-2 被控二阶对象的模拟电路图

2.常规PID 控制算法

常规PID 控制位置式算法为

})]1()([)()({)(1∑=--++=k

i d i p k e k e T T i e T T k e k k u

对应的Z 传递函数为

)1(11

)()(D(Z)11

---+-+==Z K z K K Z E z U d i P

式中K p ---比例系数 K i =i

p T T

K 积分系数,T 采样周期

K d =T

T K d

p

微分系数 其增量形式为

)]2()1(2)([)()]1()([)1()(-+--++--+-=k e k e k e K k e K k e k e K k u k u d i p 3.积分分离PID 控制算法

系统中引入的积分分离算法时,积分分离PID 算法要设置分离阈E 0: 当 │e(kT)│≤│E 0│时,采用PID 控制,以保持系统的控制精度。

当 │e(kT)│>│E 0│时,采用PD 控制,可使δp 减小。积分分离PID 控制算法为: ∑=--++=k

j d i e p k e k e K jT e K K k e K k u 0)1()([)()()(

式中K e 称为逻辑系数: 当 │e(k)│≤│E0│时, Ke=1 当 │e(k)│>│E0│时, Ke=0 对应的控制方框图为

图4-3 上位机控制的方框图

图中信号的离散化是由数据采集卡的采样开关来实现。 4.数字PID 控制器的参数整定

在模拟控制系统中,参数整定的方法较多,常用的实验整定法有:临界比例度法、阶跃响应曲线法、试凑法等。数字控制器参数的整定也可采用类似的方法,如扩充的临界比例度法、扩充的阶跃响应曲线法、试凑法等。下面简要介绍扩充阶跃响应曲线法。

扩充阶跃响应曲线法只适合于含多个惯性环节的自平衡系统。用扩充阶跃响应曲线法整定PID 参数的步骤如下:

① 数字控制器不接入控制系统,让系统处于开环工作状态下,将被调量调节到给定值附近,并使之稳定下来。

② 记录被调量在阶跃输入下的整个变化过程,如下图所示。

③ 在曲线最大斜率处作切线,求得滞后时间τ和被控对象时间常数Tx ,以及它们的比值Tx/P i d 控制度 控制律

T K P T i T d 1.05

PI

0.1τ

0.84Tx/τ

0.34τ

PID

0.05τ 1.15Tx/τ 2.0τ 0.45τ 1.2

PI

0.2τ

0.78Tx/τ

3.6τ

扩充阶跃响应曲线法通过测取响应曲线的τ、Tx参数获得一个初步的PID控制参数,然后在此基础上通过部分参数的调节(试凑)使系统获得满意的控制性能。

5.位置式PID数字控制器程序的编写与调试示例

dim pv,sv,ei,K,Ti,Td,q0,q1,q2,mx,pvx,op ‘变量定义

sub Initialize(arg) ‘初始化函数

WriteData 0 ,1

mx=0

pvx=0

end sub

sub TakeOneStep (arg) ‘算法运行函数

pv = ReadData(1) ‘采集卡AD1通道的测量值 sv=2 ‘给定值

K=0.8 ‘比例系数P

Ti=5 ‘积分时间常数I

Td=0 ‘微分时间常数D

Ts=0.1 ‘采集周期

ei=sv-pv ‘控制偏差

q0=K*ei ‘比例项

if Ti=0 then

mx=0

q1=0

else

mx=K*Ts*ei/Ti ‘当前积分项

end if

q2=K*Td*(pvx-pv)/Ts ‘'微分项

q1=q1+mx

if q1>4.9 then ‘积分限幅,以防积分饱和 q1=4.9

end if

if q1<-4.9 then

q1=-4.9

end if

pvx=pv ‘pvx为测量值的前项

op=q0+q1+q2 ‘PID控制器的输出

if op<=-4.9 then ‘输出值限幅 op=-4.9

end if

if op>=4.9 then

op=4.9

end if

WriteData op ,1 ‘输出值给DA1通道end sub

sub Finalize (arg) ‘退出函数

WriteData 0 ,1

end sub

位置式PID、积分分离PID控制算法的编程请参考“THBDC-1”安装目录下的“计算机控制算法VBS\计算机控制技术基础算法\数字PID调器算法”目录内参考示例程序。

微型计算机控制实验报告

实验一D/A转换实验 实验目的 1.学习掌握D/A转换的基本原理及TLC7528 芯片的性能。 2.学习利用DAC产生连续波形的编程方法。 实验设备 PC 机一台,TD-ACC+实验系统一套 实验内容 编写实验程序,实现D/A转换产生周期性同步的锯齿波和方波(如图2-1),并用虚拟示波器观察波形。 图2-1 实验原理 本实验采用TLC7528 芯片,它是8 位、并行、两路、电压型输出数模转换器。其主要参数如下:转换时间100ns,满量程误差1/2 LSB,参考电压-10V ~ +10V,供电电压 +5V~+15V,输入逻辑电平与TTL 兼容。 方法一:软件延时 控制计算机按一定规律连续输出数据到DAC转换器,转换后产生相应的连续波形。实验中的锯齿波由数据00H~FFH连续循环输出产生,上升幅度为01个数据量,即每输出一次后数据加一,数据输出的时间间隔由软件延时控制;方波由两个数据00H和FFH交替输出产生,每当锯齿波数据由FFH变到00H(用加一指令即可)时方波变换为另一个数据(00H变为FFH或FFH变为00H),从而实现两波形的同步效果。 实验平台中的TLC7528 的八位数据线、写信号线和通道选择控制线已接至控制计算机的总线上。片选线预留出待实验中连接到相应的I/O 片选上,具体如图2-2。 图2-2 以上电路是TLC7528 双极性输出电路,输出范围-5V ~ +5V。“W101”和“W102”

分别为A路和B路的调零电位器,实验前先调零,用DEBUG命令直接往TLC7528 的A口和B 口中送入数字量80H,分别调节“W101”和“W102”电位器,用万用表分别测“OUT1”和“OUT2”的输出电压,应在0mV 左右。 控制计算机-IOW→数模转换器-WR:IOW为D/A的写信号; 控制计算机-IOY1→数模转换器-CS:IOY1为D/A转换器片选信号,其地址可选为0640H~0641H; 控制计算机-XD0~XD7→数模转换器- D0~D7:控制计算机的八位数据线接至D/A转换器的八位数据输入端; 控制计算机-A0→数模转换器- A0:A0为0选中通道A,为1选中通道B。 参考流程: 图2-3 方法二:利用定时器控制输出间隔时间。同实验一,对控制计算机内的1#计数器编程,定时时间1ms,时间到由定时器OUT1产生的信号接到控制计算机的中断请求IRQ7申请中断,在中断程序中进行D/A数据输出。 实验步骤 1.按图接线,画“о”的线需自行连接,不带“о”的线电路板上已连好无须连接。连接好后,请仔细检查,无误后方可接通电源。 2.D/A转换器调零。在输出窗口区/调试窗口下的“>”提示符后键入O 0640 80↙,用万用表测量数模转换单元OUT1端,调电位W101使该端输出电压为0.00V,同样键入O 0641 80↙,用万用表测量数模转换单元OUT2端,调电位W102使该端输出电压为0.00V。 3.编辑程序1,延时子程序文件名:c:\shiyan\yanshi.asm可以打开并粘贴到程序中。然后编译链接并加载,如中间出现错误,则按提示进行修改,直至加载成功。 4.按工具栏上的“RUN”按钮执行程序。 5.点击虚拟示波器菜单,进入虚拟示波器界面,按“运行”按钮观察并记录OUT1、OUT2输出波形。 6.如示波器显示不正确,运用调试命令调试程序,找出程序中的问题,使之实现预期的结果。 7.完成方法二的接线,此时只需在方法一的基础上将OUT1接到IRQ7上即可编辑程序2,重复步骤3~6。

南理工微机实验报告

南理工微机实验报告 篇一:微机实验报告 实验1 基本操作实验 一、实验目的 (1)掌握TD- PITC 80X86微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。 (2)掌握使用运算指令类编程及调试方法。 (3)掌握运算类指令对各状态标志位的影响及其测试方法。 (4)学习使用软件监视变量的方法。 二、实验设备 PC机一台,TD- PITC实验装置一套 三、实验内容及步骤 通过对样例程序的操作,学会使用在TD- PITC环境下,如何输入汇编语言

程序,如何进行汇编语言源程序的汇编、连接、下载和运行;在调试程序的学习过程中,应学会:如何设置断点,如何单步运行程序,如何连续运行程序,怎样查看寄存器的内容,怎样修改寄存器的内容,怎样查看存储器的内容,怎样修改存储器的内容 实验内容一——BCD码转换为二进制 实验内容 将四个二位十进制数的BCD码存放于3500H起始的内存单元中,将转换的二进制数存入3501H起始的内存单元中,自行绘制流程图并编写程序。 实验步骤: 1)运行Wmd86软件,进入Wmd86集成开发环境。 2)根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言。语言选择后,下次再启动软件,语言环境保持这次的修改不变。在这里我们选择汇编语言。

3)语言选择后,点击新建来新建一个文档。默认文件名为Wmd861. 4)编写实验程序。并保存,此时系统会提示输入新的文件名,输完后点击保存。实验程序清单如下: SSTACK SEGMENT STACK DW 64 DUP SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START:XOR AX,AX MOV SI 3500H MOV DI 3510H A1:MOVE AL,[SI] ADD AL,AL MOV BL,AL ADD AL,AL ADD AL,AL ADD AL,BL INC SI ADD AL,[SI] MOV [DI],AL

北邮微机实验报告

北邮微机实验报告 北邮微机实验报告 一、实验目的 本次实验旨在通过对微机的实际操作,加深对计算机原理和体系结构的理解,掌握微机系统的工作原理和基本操作。 二、实验设备和环境 本次实验使用的设备为一台配置良好的微机,操作系统为Windows 10。实验环境为实验室内,保持安静、整洁的工作环境。 三、实验过程 1. 开机与关机 首先,按下电源按钮启动计算机。待计算机自检完成后,进入操作系统界面。在使用完毕后,点击“开始”按钮,选择“关机”,然后选择“关闭”或“重新启动”。 2. 操作系统的基本功能 在桌面上,双击“我的电脑”图标,可以查看计算机的硬盘、光驱、以及其他外部设备。通过“开始”菜单中的“控制面板”可以进行系统设置和管理。 3. 文件的管理与操作 通过“我的电脑”或者“资源管理器”可以查看计算机中的各个文件夹和文件。可以创建、复制、删除、移动、重命名等操作。同时,可以通过“文件”菜单中的“打开”或“保存”来进行文件的读取和保存。 4. 网络连接与应用 在桌面的右下角,可以找到网络连接的图标。双击图标,可以查看当前的网络连接状态。通过“网络和共享中心”可以进行网络设置和管理。在浏览器中输入

网址,可以访问互联网上的各种网站和资源。 5. 常用办公软件的使用 在实验过程中,我们还使用了Word、Excel和PowerPoint等常用办公软件。通过这些软件,可以进行文字处理、数据分析和演示文稿的制作。 四、实验结果与分析 通过本次实验,我对微机的操作有了更深入的了解。我学会了如何正确启动和关闭计算机,并熟悉了操作系统的基本功能。我还学会了对文件进行管理和操作,如创建、复制、删除等。此外,我还了解了网络连接与应用的基本知识,并使用常用办公软件进行了实际操作。 通过实验,我深刻认识到微机在现代社会中的重要性。微机不仅是我们日常生活中必不可少的工具,也是各个行业中必备的工具。通过学习微机的原理和操作,我们可以更好地利用计算机的功能,提高工作效率,拓宽知识视野。 五、实验总结 通过本次实验,我对微机的工作原理和基本操作有了更深入的了解。我学会了正确启动和关闭计算机,熟悉了操作系统的基本功能,掌握了文件的管理和操作技巧。我还了解了网络连接与应用的基本知识,并使用常用办公软件进行了实际操作。 微机作为现代社会中必不可少的工具,我们应该充分利用其功能,提高工作效率,拓宽知识视野。同时,我们也要注意合理使用微机,保护个人隐私和信息安全。 通过这次实验,我不仅加深了对计算机原理和体系结构的理解,还提升了自己的操作技能。我相信这些知识和技能将在今后的学习和工作中发挥重要作用。

微型计算机实验报告

目录 实验一 A/D与D/A转换 (2) 实验二数字滤波器 (5) 实验三离散化方法研究 (8) 实验四数字PID调节器算法的研究 (13) 实验五串级控制算法的研究........................ 错误!未定义书签。实验六解耦控制算法的研究........................ 错误!未定义书签。实验七最少拍控制算法研究........................ 错误!未定义书签。实验八具有纯滞后系统的大林控制 .................. 错误!未定义书签。实验九线性离散系统的全状态反馈控制 .............. 错误!未定义书签。实验十模糊控制系统.............................. 错误!未定义书签。实验十一具有单神经元控制器的控制系统 ............ 错误!未定义书签。实验十二二次型状态调节器........................ 错误!未定义书签。实验十三单闭环直流调速系统...................... 错误!未定义书签。实验十四步进电机转速控制系统 .................... 错误!未定义书签。实验十五单闭环温度恒值控制系统 .................. 错误!未定义书签。实验十六单容水箱液位定值控制系统 ................ 错误!未定义书签。

实验一A/D与D/A转换 一、实验目的 1.通过实验了解实验系统的结构与使用方法; 2.通过实验了解模拟量通道中模数转换与数模转换的实现方法。 二、实验设备 1.THBDC-1型控制理论·计算机控制技术实验平台 2.THBXD数据采集卡一块(含37芯通信线、16芯排线和USB电缆线各1根) 3.PC机1台(含软件“THBDC-1”) 三、实验内容 1.输入一定值的电压,测取模数转换的特性,并分析之; 2.在上位机输入一十进制代码,完成通道的数模转换实验。 四、实验步骤 1.启动实验台的“电源总开关”,打开±5、±15V电源。将“阶跃信号发生器”单元输出端连接到“数据采集接口单元”的“AD1”通道,同时将采集接口单元的“DA1”输出端连接到接口单元的“AD2”输入端; 2.将“阶跃信号发生器”的输入电压调节为1V; 3.启动计算机,在桌面双击图标“THBDC-1”软件,在打开的软件界面上点击“开始采集”按钮; 4.点击软件“系统”菜单下的“AD/DA实验”,在AD/DA实验界面上点击“开始”按钮,观测采集卡上AD转换器的转换结果,在输入电压为1V(可以使用面板上的直流数字电压表进行测量)时应为00001100011101(共14位,其中后几位将处于实时刷新状态)。调节阶跃信号的大小,然后继续观察AD转换器的转换结果,并与理论值(详见本实验附录)进行比较; 5.根据DA转换器的转换规律(详见本实验附录),在DA部分的编辑框中输入一个十进制数据(如2457,其范围为0~4095),然后虚拟示波器上观测DA转换值的大小; 6.实验结束后,关闭脚本编辑器窗口,退出实验软件。 五、附录 1.数据采集卡 本实验台采用了THBXD数据采集卡。它是一种基于USB总线的数据采集卡,卡上装有14Bit分辨率的A/D转换器和12Bit分辨率的D/A转换器,其转换器的输入量程均为±10V、输出量程均为±5V。该采集卡为用户提供4路模拟量输入通道和2路模拟量输出通道。其主要特点有: 1) 支持USB1.1协议,真正实现即插即用 2) 400KHz 14位A/D转换器,通过率为350K,12位D/A转换器,建立时间10μs 3) 4通道模拟量输入和2通道模拟量输出 4) 8K深度的FIFO保证数据的完整性 5) 8路开关量输入,8路开关量输出 2.AD/DA转换原理 数据采集卡采用“THBXD”USB卡,该卡在进行A/D转换实验时,输入电压与二进制的对应关系为:-10~10V对应为0~16383(A/D转换为14位)。其中0V为8192。其主要数据格式如下表所示(采用双极性模拟输入):

微机接口实验报告

微机接口实验报告

实验一:I/O地址译码 一、实验目的 掌握I/O 地址译码电路的工作原理。 二、实验原理和内容 实验电路如图(1)所示,其中74LS74 为D 触发器,可直接使用实验台上数字电路实验区的D 触发器,74LS138 为地址译码器。译码输出端Y0~Y7 在实验台上I/O 地址输出端引出,每个输出端包含8 个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU 执行I/ O 指令且地址在280H~2BFH 范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 Y4 输出一个负脉冲,执行下面两条指令 MOV DX, 2A0H OUT DX,AL(或IN AL,DX) Y5 输出一个负脉冲。 MOV DX,2A8H OUT DX,AL(或IN AL,DX) 利用这个负脉冲控制L7 闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。

三、实验程序 L1: MOV DX, 2A0H //选通74LS138的11口 OUT DX, AL //使端口A输出,给D触发器一个时钟信号 LOOP $ //延时 LOOP $ //延时 MOV DX, 2A8H //选用74LS138的10口 OUT DX, AL //使D触发器清零 LOOP $ //延时 LOOP $ //延时 MOV AH, 11 //十一号功能调用 INT 21H //如果有键按下 INC AL //AL加一,退出循环 JNZ L1 // 如果没键按下,则继续循环 四、总结 第一次实验比较简单、主要是学会了通过程序控制芯片及其端口的选通,其方法是根据芯片外围搭建的电路使DX进行写或读的操作、例如本实验里,要想选通74LS138的11口操作8255的端口A,则需要使,同理操作10 口时,则使DX=2A8H,再加上延时DELAY功能,即可使LED灯循环亮灭。但是如果不给芯片断电,则LED灯会一直循环,不能进进行人为的控制,所以又在后面加上了11号功能调用,只要当AL=0,循环结束。

微机实验报告 东华

微机实验报告东华 东华微机实验报告 一、引言 微机作为现代科技的重要组成部分,已经广泛应用于各个领域。本次实验旨在通过对东华微机的实验,深入了解微机的结构和工作原理,提高我们对计算机系统的认识和理解。 二、实验目的 1. 了解东华微机的硬件结构和主要组成部分; 2. 掌握微机的工作原理和基本操作; 3. 进一步理解微机的编程和应用。 三、实验内容 1. 东华微机的硬件结构 东华微机的硬件结构主要包括中央处理器(CPU)、内存、输入输出设备等。其中,CPU是微机的核心部件,负责执行各种指令和控制微机的运行。内存用于存储数据和程序,输入输出设备则用于与外部环境进行信息交互。 2. 微机的工作原理 微机的工作原理是基于冯·诺依曼体系结构的,即将程序和数据存储在同一存储器中,并通过控制器和运算器来执行指令。当微机启动时,CPU会从内存中读取指令,并按照指令的要求进行操作。 3. 微机的基本操作 通过对东华微机的实验,我们可以学习到微机的基本操作。包括启动和关机,输入和输出数据,以及运行程序等。这些基本操作是我们日常使用微机时必须

掌握的。 四、实验步骤 1. 启动东华微机 按下电源按钮,等待微机启动。在启动过程中,我们可以观察到屏幕上显示的 启动信息,以及听到微机发出的声音。 2. 输入数据 通过键盘输入一组数据,例如数字或字母。输入完成后,按下回车键确认。 3. 运行程序 选择一个程序,并按下运行按钮。在程序运行过程中,我们可以观察到屏幕上 的变化,以及听到微机发出的声音。 4. 输出结果 程序运行结束后,我们可以通过屏幕或打印机等输出设备查看程序的运行结果。 五、实验结果与分析 通过对东华微机的实验,我们可以获得一些实验结果。例如,输入的数据是否 被正确接收,程序是否能够正常运行,以及输出结果是否符合预期等。通过对 实验结果的分析,我们可以判断微机的工作状态和性能。 六、实验总结 通过本次实验,我们对东华微机的硬件结构和工作原理有了更深入的了解。同时,我们也掌握了微机的基本操作和应用。微机作为现代科技的重要工具,已 经深入到我们的日常生活中。通过不断学习和实践,我们可以进一步提高对微 机的认识和运用能力。 七、参考文献

微机原理实验报告

实验一显示程序实验 一、实验目的 1. 掌握在PC机上以十六进制形式显示数据的方法; 2. 掌握部分DOS功能调用使用方法; 3. 熟悉Tddebug调试环境和Turbo Debugger的使用。 二、实验所用设备 1. PC微机一台。 三、实验内容 一般来说,程序需要显示输出提示运行的状况和结果,有的还需 要将数据区中的内容显示在屏幕上。本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。实验中可使用DOS功能调用(INT 21H)。 (1) 显示单个字符输出 入口:AH=02H 调用参数:DL=输出字符(2) 显示字符串 入口:AH=09H

调用参数:DS:DX=串地址,’$’为结束字符(3) 键盘输入并回显 入口:AH=01H 返回参数:AL=输出字符(4) 返回DOS系统 入口:AH=4CH 调用参数:AL=返回码 第1页 四、实验步骤 1. 运行Tddebug软件,选择Edit菜单,根据实验内容的描述编 写实验程序,本实验显示部分参考实验流程如图1-1示;2. 使用Compile菜单中的Compile和Link对实验程序进行汇 编、连接; 3. 使用Rmrun菜单中的Run,运行程序,观察运行结果; 4. 使用Rmrun菜单中的Debug,调试程序,观察调试过程中, 数据传输指令执行后,各寄存器及数据区的内容;5. 更改数据区中的数据,考察程序的正确性。 图1-1 显示程序实验流程图

第10页 五、参考程序清单 DATA SEGMENT MES DB 'Show a as hex:', 0AH,0DH,'$' SD DB 'a' DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV DX, OFFSET MES ;显示提示信息MOV AH, 09H INT 21H MOV DI, OFFSET SD MOV AL, DS:[DI] AND AL, 0F0H ;取高4位SHR AL,4 CMP AL, 0AH ;是否是A以上的数JB C2 ADD AL, 07H C2: ADD AL, 30H MOV DL, AL ;显示字符MOV AH, 02H INT 21H

微机实验报告心得

微机实验报告心得 篇一:微机实验心得 微机实验心得 这学期通过对微机原理和微机实验课的学习,对微机系统和它的工作原理有了很大的了解。微机实验课,总共做了十几个实验,回想起来受益匪浅,主要是加深了对计算机的一些硬件情况和运行原理的理解和汇编语言的编写汇编语言,它是和机器语言最接近的,用它来编程序,会比用其它高级语言要快得多。实验课程加深了我们对汇编语言指令的熟悉和理解。不仅巩固了书本所学的知识,还具有一定的灵活性,发挥了操作,加深了我们对硬件的熟悉,锻炼了动手能力,发挥创造才能。 通过这次课程使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。 对于这门课,我们收获了很多,我觉得这门课偏重于工程思维,主要难点在于对程序的理解。但是老师让我们通过手打程序,控制实验平台很好的理解了各实验的实验程序。对于课程的建议,实验讲义给的程序很清楚,大大降低了实

验预习和自主编程的难度,给实验讲义可以更多的给方法和方式,提供一些程序建议而减少直接给出程序内容。实验课上,请一个或两个同学讲解一下实验程序设计思路,通过讲解与其他人互动,可以收获更多。 微机原理课程上讲到的各种芯片的功能,以及引脚的作用,在实验中都得到了运用,使我们加深了对于主要芯片的应用的认识,同时在实验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。总结这门课,个人感觉很有必要,学习理论的过程中边通过实验辅助,使我们更容易的接受微机原理的知识。实验过程中,获得了很多收获,获得了很多感悟,当然也遇到了很多困难。但我们都一一克服了他们,成功的完成了实 验。并在解决问题,克服困难的过程中,发现了自己平时忽略的,隐藏的问题,以及一些不该出现的粗心大意的小毛病。通过这些,我们认识的更加深刻,了解的更加深入。做到了学以致用,对知识掌握得更加牢固。 这学期的课程告一段落,但是对微机原理的理解和认识,我深知我们做的还远远不够,我们接下来还要继续努力多学习更多知识,当然动手实践很重要,我们平时也应该多编写多运用。通过了这一学期对微机原理的学习,真的对它有了一个全新的认识,我会坚持对它的学习,使自己在汇编语言

微机实验报告

实验一汇编语言上机操作训练——比较字符串 一、实验目的 1、学习程序设计的基本方法和技能; 2、熟练掌握汇编语言设计、编写、调试和运行; 二、实验内容和要求 1、汇编语言程序上机操作方法 编写一程序,比较两个字符串STRING1和STRING2所含字符是否相同,若相同刚在屏幕上显示‘MATCH’,否则,显示‘NOT MATCH’。 三、实验主要仪器设备和材料 计算机一台 四、程序 略 五、调试过程: 1、执行程序 表示两字符串相同 2、u命令反汇编: 3、在程序执行以前的寄存器情况:

内存情况: 4、用E命令修改数据区字符串及修改前后内存数据区的对比: 5、用G命令查看修改后的情况: 修改后的字符串不相同了。 六、程序功能与调试过程中遇到的问题 1、分析程序功能 程序的功能是比较string1与string2所含字符是否相同,若相同则在屏幕上显示‘MATCH’,否则,显示‘NOT MATCH’。

因为string1为‘Move the cursor backward’,string2为’ Move the cursor backward’。所以string1与string2相同,显示’MATCH’。后面用重新修改了下这些字符,会显示“not Match” 2、调试程序过程中遇到的问题 对汇编认识停留在上课老师的文字表达,至于实际操作,可以说完全不懂,只能在实验室里对着实验书一步步做下去,没遇到什么问题。但是回到宿舍中,连在哪输入都不知道,可想而知对汇编的认知度。好在在同学们的帮助下,还是能够顺利的完成了实验。只是做的时候对有些过程与指令不太明白,经过查阅相关资料后之后,也弄明白了个大概,希望在以后的微机课程学习中多用心。 七、思考题 1、将内存DATA1单元开始的0~15共16个数传送到DATA2单元开始的数据区中。MOV AX,DATA MOV DS,AX MOV ES,AX LEA SI,DATA1 LEA DI,DATA2 MOV CX,16 CLD REP MOVSB 2、将程序中的指令JZ MATCH改为JNZ MATCH,程序结果如何?为什么? JZ为零标志为1转移,而JNZ为零标志为0转移。所以当为JNZ MATCH后,当两字符串比较时,输出为‘NO MATCH’,不相同时为‘MATCH’。因此,程序结果为‘NO MATCH’。

微机实验报告

实验一I/O地址译码与交通灯控制实验 一、实验目的 1、掌握并行接口8253的基本原理 2、掌握8253的编程方法 二、实验内容 如图所示,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通变化规律燃灭。 三、编程分析 1、8255地址分析:控制寄存器地址: 0C40BH A口地址: 04C408H C口地址: 04C40AH 2、十字路口交通灯的变化规律要求 (1)南北路口的绿灯、东西路口的红灯同时亮三秒; (2)南北路口的黄灯闪烁三次,同时东西路口的红灯继续亮; (3)南北路口的红灯、东西路口的绿灯同时亮三秒; (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁三次; (5)转(1)重复。 3、C口置数分析 由于发光二极管是共阴极相连,所以若要其发亮应给高电平;黄灯闪烁是让其不断交替亮灭来实现;同时分析可知只要有绿灯亮,灯就会持续亮三秒,黄灯亮就会闪

烁三次。 4、程序设计流程图 四、汇编语言程序 STACK1 SEGMENT STACK DB 100 DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE, SS:STACK1 DY PROC NEAR

PUSH CX MOV AX, 0FFFFH ;延时程序 MOV CX, 02FFFH L0:DEC AX JNZ L0 LOOP L0 POP CX POP AX RET DY ENDP START: MOV DX, 0C40BH MOV AL, B OUT DX, AL MOV DX, 0C40AH MOV BL, 6H ;设置延迟3秒 L1:MOV AL, 00100100B ;南北绿灯亮,东西红灯亮 OUT DX, AL CALL DY ;调用延迟子程序 DEC BL JNZ L1 MOV BL, 4H ;设置第二次闪烁3次 L2:MOV DX, 0C40AH MOV AL, 01000100B ; 南北黄灯亮,东西红灯亮 OUT DX, AL CALL DY MOV AL, 00000100B ;南北黄灯灭,东西红灯亮,实现要求闪的功能 OUT DX,AL CALL DY

微机实验报告

微机实验报告 实验题目:微机控制的动态计时器设计与实现 一、实验目的 通过本次实验,学生应能掌握以下内容: 1. 熟悉动态计时器的工作原理; 2. 掌握微机控制电路的设计方法; 3. 掌握使用电子元器件进行电路连接和调试的方法。 二、实验原理 动态计时器是一种利用微处理器实现的计时器,常用于工业控制、科学实验等场所。它的主要特点是可以根据不同的需求,动态地改变计时器的计时周期。 实验中,我们需要设计一个基于8051单片机的动态计时器。该计时器需要具备以下功能: 1. 显示当前计时时间; 2. 可以通过按钮进行计时的开始和结束; 3. 可以通过按钮动态调整计时周期。 三、实验材料和设备 1. 8051单片机; 2. 液晶显示屏; 3. 按钮; 4. 电阻、电容等基本电子器件。 四、实验过程

1. 连接电路 根据课堂上老师的讲解和实验指导书的要求,按照电路图连接所有的电子元器件。确保连接正确,无误后进行下一步操作。 2. 调试电路 打开电源,通过示波器观察各个信号的波形,检查是否正常。如果有异常情况,按照故障排查的方法逐个检查并修复问题。 3. 烧录程序 使用烧录器将设计好的程序烧录到8051单片机的内部存储器中,确保程序的正确运行。 4. 进行实验 按下按钮,启动计时器。观察液晶显示屏上的计时时间是否正确。 通过按下不同的按钮,调整计时周期,观察液晶显示屏上的计时时间变化情况。 五、实验结果分析 通过实验,我们成功设计并实现了一个基于8051单片机的动 态计时器。该计时器可以根据不同的需求,动态显示计时时间,并且可以通过按钮进行计时的开始和结束,通过按钮动态调整计时周期。 本次实验比较简单,主要是通过连接电子元器件和调试电路的方法实现计时器的功能。难点在于烧录程序,需要注意烧录程序的正确性。

微机原理实验报告_实验讲义_实验九 时钟实验

实验九时钟实验 一、实验目的 1.熟悉系统功能调用INT 21H的有关功能。 2.编写时钟程序。 二、实验任务 1.执行时钟程序时,屏幕上显示提示符“:”,由键盘输入当前时、分和秒值,即XX: XX:XXJ,随即显示时间并不停地计时C 2.当有键按下时,立即停止计时,返回DOS。 三、实验原理 首先利用系统调用INT21H中02H功能,在CRT上显示一个提示符“:”,要求用户从键盘输入时钟初值(即当前时间),其输入格式为&(时):&(分):以(秒)工。然后利用OAH功能调用接收从键盘输入的字符串,并将接收的字符串存入到缓冲区。 在利用OAH功能调用前要设置一个缓冲区,在调用时,用DX作为输入缓冲区的指针,由键盘输入的字符存入该缓冲区,直至遇到回车键为止。 程序中把输入的‘时‘、‘分'、'秒'初值分别从输入缓冲区中取出,各自放在一个寄存器中,然后调用一个延时1秒钟的子程序,每过1秒使秒值增1,然后检查是否已为60秒,若不是则转显示:若是,则使秒值为0,分值增1,检查是否已为60分,若不是则转显示,若是,则使分值为0,时值增1,接着检查时值是否为24 小时,若不是则转显示,若是,则使时值为0,接着也是转显示。 若使程序运行停止,只要有键按下,即可返回Ix)S。下面列出两种判别是否有键按下的方法(仅供参考)。一种方法是读键扫描码,指令如下: IN AL, 60H ;读键扫描码 TEST AL, 80H JZ AAA ;有键按下,就转AAA AAA: MOV AH,4CH INT 21H 另一种方法是调用INT 21H中06功能,来判别是否有键按下,具体指令如下: MOV AH, 06 MOV DLOFFH :判断是否有键按下,有键按下则转AAA INT 21H JNZ AAA AAA: MOV AH,4CH INT 21H 根据图1—9—1程序流程图,编写时钟源程序。

微型计算机控制技术实验报告

... ... ... 1.2 信号的采样与保持 实验目的 1.熟悉信号的采样和保持过程 2.学习和掌握香农 (采样) 定理 3.学习用直线插值法和二次曲线插值法还原信号 实验设备 PC 机一台,TD-ACC+实验系统一套,SST51 系统板一块 实验内容 1.编写程序,实现信号通过 A/D 转换器转换成数字量送到控制计算机,计算机再把数字量送到 D/A 转换器输出。 2.编写程序,分别用直线插值法和二次曲线插值法还原信号。 实验原理 1.采样与保持 (1)香农 (采样) 定理:若对于一个具有有限频谱 (|W|

微机原理六个实验报告

实验一protuse仿真8086示例 一、实验目的 1.学习并掌握protuse仿真8086实现方法。 二、实验内容 编写汇编程序,计算2010H+2022H,并把和存放AX中。 三、实验步骤 1.protuse软件安装和masm32编译环境安装; 2.硬件电路搭建; 3.设计软件程序; 4.系统调试; 四、实验原理图 实验二编写汇编语言程序并调试运行

一、实验目的 1.掌握汇编语言的选择结构程序的编制。 二、实验内容 设有10个学生的成绩存放在内存中,编制程序分别统计90分以上、80~90分、70~79分、60~69分、低于60分的学生人数,并存放到A、B、C0、D、E、单元中。 三、实验报告及要求 1.写出实验的程序。

2.写下实验心得和实验中所遇问题及解决方法。 (1)了解到了.IF、.ELSE、.ELSEIF、.ENDIF这些伪指令更容易对多分支逻辑进行编码,于是花了一些时间自学了这些指令,从而更好地完成本题的要求。 (2)然后因为自身的能力有限,很难自己把一整个代码写完整,于是我借鉴了网上一些片面代码,然后理了一下思路,最后整理加条件改变,加了自己所有理解过后的注 释,完成了本题。

实验三8086独立按键仿真 一、实验目的 1.学习并掌握8086独立按键硬件电路 2.学习并掌握8086独立按键软件程序 二、实验内容 按键控制led灯的亮灭,完成硬件电路搭建和软件程序 三、实验原理图

四、软件程序 五、运行结果

实验四8086独立按键仿真 一、实验目的 学习并掌握8086液晶屏显示硬件电路和软件的实现方法 二、实验内容 1、实现液晶屏显示英文和数字功能 2、显示拼音姓名和学号 三、实验原理图 四、软件程序

微型计算机实验一实验报告

微型计算机实验一实验报告实验一:微型计算机的基本操作及应用探究 一、实验目的 1.了解微型计算机的基本组成和工作原理; 2.学习使用微型计算机进行基本操作; 3.探究微型计算机在实际应用中的作用。 二、实验器材和仪器 1.微型计算机实验箱; 2.微型计算机主机; 3.显示器; 4.键盘。 三、实验内容 1.将微型计算机主机与显示器、键盘连接; 2.打开微型计算机并进行基本操作; 3.使用微型计算机进行基本应用。 四、实验步骤 1.将微型计算机主机与显示器、键盘连接,确保连接稳固; 2.打开微型计算机主机,等待系统启动完毕; 3.使用键盘进行基本操作,包括输入字符、回车等;

4.运行预装的基本应用软件,并进行相应操作。 五、实验结果和分析 在本次实验中,通过连接主机与显示器、键盘,我们成功打开了微型 计算机并进行了基本操作。使用键盘输入字符并通过回车键确认后,我们 可以在显示器上看到相应的结果。这表明微型计算机能够正确地接收和处 理我们输入的指令,并将结果显示出来。通过运行预装的基本应用软件, 我们还可以进行更加复杂的操作,如文字处理、图形绘制等。 本次实验中,我们还了解到微型计算机的基本组成和工作原理。微型 计算机由主机、显示器、键盘组成。在主机中,CPU是主要的控制中心, 负责接收和处理指令;内存存储了计算机运行时所需的数据和程序;硬盘 则保存了大容量的数据。显示器负责将计算机处理的结果显示出来,键盘 则用于输入指令和数据。 微型计算机的应用领域十分广泛。它可以用于文字处理、数据处理、 图形绘制等多个方面。在今天的社会中,无论是企事业单位还是个人用户,几乎都需要使用微型计算机进行日常工作和生活。微型计算机的快速计算 和大容量存储能力,使得数据处理和信息管理变得更加便捷和高效。 六、实验总结 通过本次实验,我们学习了微型计算机的基本操作和应用,并了解了 微型计算机的基本组成和工作原理。微型计算机在今天的社会中扮演着重 要的角色,其广泛的应用范围使得人们的工作和生活更加便捷和高效。在 今后的学习和工作中,我们需要进一步掌握微型计算机的使用方法和技巧,并加强对其原理的理解,以更好地发挥微型计算机的作用。

微型计算机技术实验报告

微型计算机技术实验报告 实验名称:微型计算机技术实验 实验日期:2024年X月X日 实验目的: 1.了解微型计算机的基本组成和工作原理; 2.掌握微型计算机的硬件连接与配置方法; 3.学习使用微型计算机进行简单程序编写和调试。 实验器材: 1.微型计算机主机 2.显示器 3.键盘 4.鼠标 5.电源线 6.数据线 实验原理: 实验步骤: 1.将微型计算机主机连接到电源,并将显示器、键盘和鼠标连接到主机; 2.打开电源,观察显示器上是否出现相关信息,确认主机正常启动;

3.通过键盘和鼠标输入相关指令,进入操作系统界面; 5.打开编译器,将源文件编译成可执行文件; 6.执行可执行文件,观察程序运行的结果。 实验结果和分析: 通过以上步骤,我们成功启动并运行了微型计算机。首先,我们了解到微型计算机的基本组成和工作原理。微型计算机由主机、显示器、键盘和鼠标组成,主机通过电源供电,显示器用于显示图像和文字,键盘和鼠标用于输入操作指令。微型计算机的工作原理是通过CPU读取内存中的指令,然后进行解码和执行,最后将结果存储回内存或发送到外设。 关键词:微型计算机,CPU,内存,外设,编写,调试 实验结论: 通过本次实验,我们了解了微型计算机的基本组成和工作原理,并学习了使用微型计算机进行简单程序编写和调试的方法。通过实践操作,我们对微型计算机的使用有了更加深入的了解。这对于我们深入学习计算机原理和继续进行更复杂的计算机实验具有重要意义。 译文如下: Experiment Date: Xth Month, 2024 Objective: Equipment: 2. Monitor 3. Keyboard

微机实验报告(含思考题)实验1

实验一 ARM汇编基础实验 1.掌握ARM汇编指令 2.学习掌握C与汇编混合编程基础 3.熟练使用ARM调试工具RVDS进行调试操作 1.熟悉ARM汇编 2.用ARM汇编实现1+2+...+N 3.C调用汇编实验(实现字符串拷贝功能) 4.汇编调用C实验 5.ARM汇编实现冒泡算法(选做) 1. ARM汇编、C语言 2. RVDS工具 硬件:PC 机Pentium100 以上 软件:Windows操作系统,RVDS软件 1.在汇编中使用C定义的全局变量 在汇编和C之间进行一些数据的传递,最简便的办法就是使用全局变量。 在汇编中调用C中定义的全局变量,需要在汇编中IMPORT 对应的全局变量。 IMPORT 伪指令用于通知编译器要使用的标号或变量在其他的源文件中定义。 例如:汇编文件asmfile.s想调用C文件cfile.c中定义的全局变量a,则在汇编文件asmfile.s 前面要添加: IMPORT a 2.在汇编中调用C的函数 要在汇编中调用C文件中定义的函数,主要做两方面的工作: 首先:需要在汇编中IMPORT 对应的C函数名。 其次:在调用该 C函数之前还需要通过汇编语言传递该函数的

参数。 C和汇编之间的参数传递是通过A TPCS(ARM Thumb Procedure Call Standard)的规定来进行的。简单的说就是如果函数有不多于四个参数,对应的用ARM寄存器R0-R3来进行传递,多于4个时借助栈。函数的返回值通过R0来返回。 3.在C中调用汇编的函数 在C中调用汇编文件中的函数,要做的主要工作有两个: 一:是在C中声明函数原型,并加extern关键字; 二:是在汇编中用EXPORT导出函数名,并用该函数名作为汇 编代码段的标识,最后用mov pc,lr返回。然后,就可以 在C中使用该函数了。 EXPORT伪指令用于在程序中声明一个全局的标号,该标号可在其他的文件中引用。 1、用ARM汇编实现1+2+….n的运算。 2、理解C和汇编,并用汇编程序实现字符串拷贝,并在C程序中调用该汇编程序。 在汇编文件testfile1.s中添加两行汇编代码,分别实现: 拷贝源字符串的一个字节到R2中 将拷贝的字节复制到目标空间 注意事项: 1.C文件和汇编文件都必须加到工程中去,否则编译会报错。 2.C文件和汇编文件要拷贝到工程目录下。 3、在汇编中调用C函数。 在汇编文件testfile2.s中相应位置添加汇编代码,通过调用c函数g()实现1+2+3+glovb1,结果存在R8中。 1、用ARM汇编实现1+2+….n的运算。 ;功能:计算1+2+3+4+...+N ;说明;N>=0,当N=0时结果为0,当N=1时结果为1 N EQU 100 ; 定义N的值100 AREA Examples,CODE,READONL Y ;声明代码断Examples3 ENTRY ;标识程序入口 CODE32 ARM_CODE LDR SP,=0X30003F00 ;设置堆栈指针 ADR R0,THUMB_CODE+1 ; BX R0 ;跳转并切换处理器状态

工业用微型计算机实验报告

实验一寻址方式与基本指令实验 一、实验目的与要求: 1、练习、掌握DEBUG调试程序的使用; 2、加深对汇编语言指令、机器码、寻址方式等基本内容的理解。 二、实验设备: 计算机教学实验系统 三、实验内容(实验步骤及操作方法): 1、DEBUG调试程序的启动; 2、练习D、E、F、R、A、U、T、G、N、L、W、I、O、Q等命令的使用,观察其运行结果,掌握这些命令的使用方法; 3、通过DEBUG程序输入一汇编语言程序段,单步跟踪调试,观察寄存器的变化和指令执行的结果,加深对指令的理解。 四、思考题 1、MOV指令的含义和用法是什么? 2、堆栈操作指令PUSHF,POPF的含义和用法。 3、LOOP、JNC、XOR的含义和用法。

实验二汇编语言程序设计 一、实验目的与要求: 掌握汇编软件MASM的使用,熟悉汇编语言的上机过程。 二、实验设备: 计算机教学实验系统 三、实验内容(实验步骤及操作方法): ➢实验内容 1. 汇编语言源程序的上机步骤包括编辑、汇编、链接、调试等几个过程。源 程序文件的编辑就是编写一个汇编语言源程序,它可以使用任何一个文件编辑器实现。编辑形成的文件最后一定要以.ASM后缀保存。在编辑源程序的时候一定要将输入法切换到英文环境下,否则会出错。 2. 汇编 汇编就是把汇编语言编写的源代码程序翻译成计算机能够识别的二进制机器语言程序。目前常用的汇编程序是MASM,称为宏汇编程序。 3.链接 链接程序的功能就是把一个或多个目标文件合并成一个可执行文件,其后缀为.EXE。其实在链接过程中一共形成两个文件:第一个是可执行文件(.EXE) 4.运行 通过汇编和链接,最终形成的可执行文件已经排除了程序中的语法错误,可以直接执行。但是还可能存在一些算法错误,这样的错误则要通过调试过程来修正。常用的调试工具软件有DEBUG等。 ➢实验步骤 1. 编写一个后缀为.ASM的源程序,该程序的功能是在计算机屏幕上显示一 个字符串“HELLO!” 1)编辑源程序 用记事本编辑如下源程序 DATA SEGMENT S1 DB ‘HELLO!’, ‘$’ DATA ENDS

相关文档
最新文档