Wmax为信号的最高频率,Ws为采样频率。
实验线路图:
图中画“○”的线需用户在实验中自行接好,其它线系统已连好。
图2-1采样和保持实验电路图
上图中,控制计算机的“OUT1”表示386EX内部1#定时器的输出端,定时器输出的方波周期=定时器时常,“IRQ7”表示386EX内部主片8259的“7”号中断,用作采样中断。
这里,正弦波单元的“OUT”端输出周期性的正弦波信号,通过模数转换单元的“IN7”端输入,系统用定时器作为基准时钟(初始化为10ms),定时采集“IN7”端的信号,转换结束产生采样中断,在中断服务程序中读入转换完的数字量,送到数模转换单元,在“OUT1”端输出相应的模拟信号。
由于数模转换器有输出锁存能力,所以它具有零阶保持器的作用。
采样周期T=TK×10ms,TK的范围为01~FFH,通过修改TK就可以灵活地改变采样周期。
实验参考程序:
汇编语言请参照随机软件中的EXAMPLE目录中的ACC1-2-1.ASM文件
C语言请参照随机软件中的ACS-C目录中的ACC1-2-1.C文件。
2.信号的还原
(1)实验原理
从香农定理可知,对于信号的采集,只要选择恰当的采样周期,就不会失去信号的主要特征。
在实际使用中,一般总是取实际采样频率Ws比2Wmax大,如:
Ws≥10Wmax。
但是如果采用插值法恢复信号,就可以降低对采样频率的要求,香农定理给出了采样频率的下限,用不同的插值方法恢复信号需要的采样频率也不相同。
(2)实验线路图设计
实验的电路仍如图2-1所示,只是程序中将读入的数据量送到数模转换单元之前将分别采用直线插值法和二次曲线插值法,恢复信号。
参考程序:
汇编语言直线插值法参考软件中的example目录中的ACC1-2-2.ASM文件,
汇编语言二次曲线插值法参考example目录中的ACC1-2-3.ASM文件。
C语言直线插值法参考ACS-C目录中的ACC1-2-2.C文件,
C语言二次曲线插值法参考ACS-C目录中的ACC1-2-3.C文件。
实验步骤及结果
1.采样和保持
(1)编写零阶保持程序,编译、链接。
系统初始默认是汇编语言,若采用C语言,通过软件菜单中的【设置】|【语言】来设定。
(2)按照实验线路图接线,检查无误后开启设备电源。
(3)用示波器的表笔测量正弦波单元的“OUT”端,调节正弦波单元的调幅、调频电位器及拨动开关,使得“OUT”端输出幅值为3V,周期1s的正弦波。
(4)加载程序到控制机中,运行程序,用虚拟示波器的另一路表笔观察数模转换单元的输出端“OUT1”。
(5)改变程序,增大采样周期,当采样周期>0.5s时,即Tk>50(32H)时,运行程序并观测数模转换单元的输出波形应该失真。
选择采样周期为0.05s、0.1s、0.2s和0.5s,画出输入和输出波形,观察信号的失真情况。
每次修改程序或参数后,都要重新编译并下载后再运行。
2.信号的还原
(1)分别编写直线插值和二次曲线插值程序,并编译、链接。
(2)按照线路图接线,检查无误后,开启设备电源。
调节正弦波单元的调幅、调频电位器,使正弦波单元输出幅值为3V,周期1s的正弦波。
(3)设定相应的Tk值,分别装载并运行程序。
用示波器观察数模转换单元的输出,选择采样周期为0.05s、0.1s、0.2s和0.5s,画出输入和输出波形,观察信号的失真情况,并和零阶保持程序在相同采样周期的运行效果进行比较。
实验三数字PID控制
实验目的:
1.了解PID参数对系统性能的影响。
2.学习凑试法整定PID参数。
3.掌握积分分离法PID控制规律。
实验设备:
PC机一台,TD-ACC+实验系统一套,i386EX系统板一块
实验原理和内容:
图3-1典型PID闭环控制系统方框图
上图是一个典型的PID闭环控制系统方框图。
其硬件电路原理及接线图如下:
图3-2实验接线图
实验中,采用位置式PID算式。
在一般的PID控制中,当有较大的扰动或大幅度改变给定值时,会有较大的误差,并使系统有惯性和滞后。
因此,在积分项的作用下,往往会使系统超调变大、过渡时间变长。
为此,采用积分分离法PID控制算法,即:
当误差e(k)较大时,取消积分作用;当误差e(k)较小时才将积分作用加入。
实验步骤:
1.编写实验程序,检查无误后编译、链接。
2.按照实验线路图接线,检查无误后开启设备电源。
3.调节信号源中的电位器及拨动开关,使信号源输出幅值为2V,周期3-6s的方波。
4.在程序中将积分分离值设为最大7FH(相当于没有引入积分分离),编译连接并加载运行程序,用示波器分别观测输入端R和输出端C。
此时可以观察到输入的方波,系统的输出接近于零,将ST-S短路块拔掉(去掉锁零信号),可以观察到系统的输出信号。
要恢复0状态时再将ST-S短路块插回去。
5.如果系统性能不满意,用试凑法修改PID参数,直到响应曲线满意,并记录KP、TI、TD参数,以及响应曲线的超调量和过渡时间。
6.修改积分分离值为20H,记录此时响应曲线的超调量和过渡时间,并和未引入积分分离值时的响应曲线进行比较。
7.汇编语言程序参考example目录中的ACC3-2-1.ASM文件。
C语言程序参考ACS-C目录中的ACC3-2-1.C文件。
8.在MATLAB下根据图3-1,按PID调整的结果完成控制输出,跟你实验箱的输出结果作对比,分析有关原因。
实验四直流电机闭环调速控制
实验目的:
1.了解闭环调速控制系统的构成。
2.熟悉PID控制规律,并且用算法实现。
实验设备:
PC机一台,TD-ACC+实验系统一套,i386EX系统板一块
实验原理和内容:
图4-1是一个典型的直流电机调速实验的系统方框图:
图4-1直流电机调速实验系统方框图
根据上述系统方框图,硬件线路图如下,图中画“○”的线需要接好。
图4-2硬件线路图
上图中,控制机算机的“DOUT0”表示386EX的I/O管脚P1.4,输出PWM脉冲经驱动后控制直流电机,“IRQ7”表示386EX内部主片8259的7号中断,用作测速中断。
实验中,用系统的数字量输出端口“DOUT0”来模拟产生PWM脉宽调制信号,构成系统的控制量,经驱动电路驱动后控制电机运转。
霍尔测速元件输出的脉冲信号记录电机转速构成反馈量。
在参数给定情况下,经PID运算,电机可在控制量作用下,按给定转速闭环运转。
系统定时器定时1ms,作为系统采样基准时钟;测速中断用于测量电机转速。
实验步骤:
1.编写实验程序,编译、链接。
2.按图4-2接线,检查无误后开启设备电源,将编译链接好的程序装载到控制机中。
3.打开专用图形界面,运行程序,观察电机转速,分析其响应特性。
4.若不满意,改变参数:
积分分离值IBAND、比例系数KP、积分时间常数TI、微分时间常数TD的值后再观察其响应特性,选择一组较好的控制参数并记录下来。
5.注意:
在程序调试过程中,有可能随时停止程序运行,此时DOUT0的状态应保持上次的状态。
当DOUT0为1时,直流电机将停止转动;当DOUT0为0时,直流电机将全速转动,如果长时间让直流电机全速转动,可能会导致电机单元出现故障,所以在停止程序运行时,最好将连接DOUT0的排线拔掉或按系统复位键。
6.汇编语言程序参考example目录中的ACC6-1-1.ASM文件。
C语言程序参考ACS-C目录中的ACC6-1-1.C文件。
实验五温度闭环数字控制
实验目的:
1.了解温度闭环控制系统的构成。
2.熟悉PID控制规律,并且用算法实现。
实验设备:
PC机一台,TD-ACC+实验系统一套,i386EX系统板一块
实验原理和内容:
温度闭环控制系统实验的系统方框图如下:
图5-1温度闭环控制实验系统方框图
根据上述系统方框图,硬件线路图如下,图中画“○”的线需接好。
图5-2硬件线路图
上图中,控制机算机的“DOUT0”表示386EX的I/O管脚P1.4,输出PWM脉冲经驱动后控制烤箱或温度单元,“OUT1”表示386EX内部1#定时器的输出端,定时器输出的方波周期=定时器时常,“IRQ7”表示386EX内部主片8259的7号中断(采样中断)。
实验中,使用了10K热敏电阻作为测温元件,温度变化,电阻值变换,经转换电路变换成电压信号,由模数转换器进行转换,转换完成产生采样中断,在中断程序中读取数字量,构成反馈量,在参数给定的情况下,经PID运算产生相应的控制量,最后由系统的“DOUT0”端输出PWM脉冲信号,经驱动电路驱动烤箱(温度范围室温~200℃)或温度单元(温度范围室温~70℃)加热或关断,使温度稳定在给定值。
其中系统定时器定时10ms,一方面作为A/D的定时启动信号,另一方面作为系统的采样基准时钟。
实验程序:
汇编语言程序参考随机软件中的example目录中的ACC6-2-1.ASM。
C语言程序参考ACS-C目录中的ACC6-2-1.C文件。
实验步骤:
1.编写程序,再编译,链接。
2.按图接线,检查无误后开启设备电源。
3.装载程序,打开专用图形界面,运行程序并观察波形,分析其响应特性。
4.若不满意,改变参数积分分离值IBAND、比例系数KP、积分时间常数TI、微分时间常数TD的值后再观察其响应特性,选择一组较好的控制参数并记录下来。
5.注意:
在程序调试过程中,有可能随时停止程序运行,此时DOUT0的状态应保持上次的状态。
当DOUT0为1时,烤箱或温度单元将停止加热;当DOUT0为0时,烤箱或温度单元将满功率加热,如果长时间让烤箱或温度单元处于全功率加热状态,可能会导致烤箱或温度单元损坏,所以在停止程序运行时,要将连接DOUT0的排线拔掉或按系统复位键。
实验六最少拍控制器的设计和实现
实验目的:
1.掌握最小拍有纹波控制系统的设计方法。
2.掌握最小拍无纹波控制系统的设计方法。
实验设备:
PC机一台,TD-ACC+实验系统一套,i386EX系统板一块
实验原理和内容:
图6-1最小拍控制系统方框图
1.最小拍有纹波控制系统设计
针对阶跃输入,设计有纹波系统控制算法,写出控制输出量的递推公式,并编程实现。
2.最小拍无纹波控制系统设计
针对单位斜波输入,设计最小拍无纹波系统控制算法,写出控制输出量的递推公式,并编程实现。
其硬件电路接线图如下:
图6-2最小拍控制系统方框图
实验步骤:
1.编写实验程序,检查无误后编译、链接。
2.按照实验线路图接线,检查无误后开启设备电源。
3.对象的输入信号选择:
当为有纹波设计时,选择方波。
调节电位器使方波信号的幅值为2.5V,周期为3-6s,当为无纹波设计时,选择单位斜波信号,斜波幅值为6V,上升时间为6s。
4.分别将有纹波和无纹波设计方法得到的参数写入程序,分别编译链接并装载运行程序,用示波器观察对象的测量点“C”和数模转换单元的“OUT1”端,观察系统的输出以及控制量输出序列,并记录波形进行分析。
要观察输出的阶跃响应时将ST-S短路块拔掉(去掉锁零信号),要恢复0状态时再将ST-S短路块插回去。
观察斜波信号作用下的输出时也一样操作。
注意:
实验中有纹波是针对阶越输入设计,而无纹波是针对斜波输入信号设计,所以实验时要注意正确的选择信号源。
5.实验中观察到的输出、控制量输出序列的波形和理论设计的输出序列有什么区别,观察是经过几个采样周期误差达到零的,和理论上一样吗?
试解释原因。
6.实验程序:
汇编语言程序参考随机软件中的example目录中的ACC4-1-1.ASM和ACC4-1-2.ASM。
C语言程序参考ACS-C目录中的ACC4-1-1.C和ACC4-1-2.C文件。
7.在MATLAB下根据图6-1,按设计的最少拍控制器的结果完成控制输出,跟你实验箱的输出结果作对比,分析有关原因。
实验7综合设计实验(考核用)
要求根据实验现有的条件,根据课程所学的内容,自行设计实验目的、实验设备及实验原理和相关内容,独立完成实验的结果,并写出详细的实验报告。
附录1:
ADC0809简介
ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
1.主要特性
1)8路输入通道,8位A/D转换器,输出带锁存器,逻辑电平和TTL兼容。
2)具有转换起停控制端。
3)转换时间为100μs(时钟为640kHz时),130μs(时钟为500kHz时)
4)单个+5V电源供电。
5)模拟输入电压范围0~+5V,不需零点和满刻度校准。
2.内部结构
ADC0809内部结构如图1所示,它由8路模拟开关、地址锁存和译码器、比较器、8位开关树型D/A转换器、逐次逼近比较器和三态输出锁存缓冲器组成。
图1ADC809的内部结构
3.外部特性(引脚功能)
ADC0809芯片有28条引脚,采用双列直插式封装,下面说明各引脚功能。
VIN0~VIN7:
8路模拟量输入端。
允许8路模拟量分时输入,共用一个A/D转换器。
DO0~DO7:
8位数字量输出端,DO0为最低位,DO7为最高位。
由于有三态输出锁存,可和主机数据总线直接相连。
A、B、C:
3位地址输入线,用于选通8路模拟输入中的一路。
ALE:
地址锁存允许信号,输入,高电平有效,上升沿时锁存3位通道选择信号。
START:
A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。
EOC:
A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:
数据输出允许信号,输入,高电平有效。
当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量到数据总线上。
CLK:
时钟脉冲输入端。
要求时钟频率不高于640KHZ。
VREF+、VREF-:
基准电压。
取决于被转换的模拟电压范围,通常VREF+=5V,VREF-=0V。
Vcc:
电源,单一+5V。
GND:
地。
4.ADC0809的工作过程
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
转换数据的传送A/D转换后得到的数据应及时传送给计算机进行处理。
数据传送的关键问题是如何确认A/D转换的完成,为此可采用下述三种方式。
(1)定时传送方式
对于一种A/D转换器来说,转换时间作为一项技术指标是已知的。
例如ADC0809转换时间为128μs,可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,进行数据传送。
(2)查询方式
A/D转换芯片有表明转换完成的状态信号,例如ADC0809的EOC端。
因此可以用查询方式,测试EOC的状态,即可确知转换是否完成,并接着进行数据传送。
(3)中断方式
把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。
附录2:
TLC7528简介
TLC7528包含两个相同的8位乘法D/A转换器DACA和DACB,是电压型输出数模转换器,每路DAC均具有单独的片内数据锁存器,能方便地和大多数通用微处理器总线和输出端口相接口。
数据通过公共输入口传送至两个DAC数据锁存器的任一个,控制输入端
/
决定哪一个DAC被装载。
1.其主要参数如下:
转换时间100ns,满量程误差1/2LSB,参考电压-10V~+10V,供电电压+5V~+15V,输入逻辑电平和TTL兼容。
2.内部结构
TLC7528内部结构如图2所示,它由8位输入缓冲器、两个相同的8位乘法D/A转换器DACA和DACB,每路DAC均具有单独的数据锁存器。
图2TLC7528内部结构
图3TLC7528的引脚排列图4TLC7528的时序图
3.TLC7528的工作过程
TLC7528的引脚排列如图3所示,工作的时序图如图4所示。
TLC7528通过数据总线,
、
、
、
控制信号和微处理器接口。
当
和
均为低电平时,TLC7528模拟输出(由
/
控制线指定)对DB0--DB7数据总线输入端的信号做出响应。
在此方式下,输入锁存器是透明的,输入数据直接影响模拟输出。
当
或
信号变为高电平时,DB0--DB7输入端上的数据被锁存,直至
或
信号再次变低为止。
当
为高电平时,不管
信号的状态如何,DB0~DB7数据总线将为高阻状态,禁止输入数据。
REFA和REFB是输出通道相应的参考输出电压。
RFBA和OUTA是选择输出极性引脚,不同的接法对应单极性输出或双极性输出。