计算机控制课程设计报告-二阶环节电压跟踪控制系统的设计.doc_第1页
计算机控制课程设计报告-二阶环节电压跟踪控制系统的设计.doc_第2页
计算机控制课程设计报告-二阶环节电压跟踪控制系统的设计.doc_第3页
计算机控制课程设计报告-二阶环节电压跟踪控制系统的设计.doc_第4页
计算机控制课程设计报告-二阶环节电压跟踪控制系统的设计.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计指导教师评定成绩表项目分值优秀(100x90)良好(90x80)中等(80x70)及格(70x60)不及格(x60)评分参考标准参考标准参考标准参考标准参考标准学习态度15学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作学习态度比较认真,科学作风良好,能按期圆满完成任务书规定的任务学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作学习态度尚可,能遵守组织纪律,能按期完成任务学习马虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度技术水平与实际能力25设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信设计基本合理,理论分析与计算无大错,实验数据无大错设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的问题创新10有重大改进或独特见解,有一定实用价值有较大改进或新颖的见解,实用性尚可有一定改进或新的见解有一定见解观念陈旧论文(计算书、图纸)撰写质量50结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸非常工整、清晰结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清晰结构合理,层次较为分明,文理通顺,基本达到规范化要求,书写比较工整;图纸比较工整、清晰结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规范化要求;图纸比较工整内容空泛,结构混乱,文字表达不清,错别字较多,达不到规范化要求;图纸不工整或不清晰指导教师评定成绩:指导教师签名: 年 月 日目 录1 序言12设计步骤22.1硬件设计22.2 软件设计23原理分析43.1 AD转换 43.2标度变换53.3AD转换73.4PI控制84程序清单85 总结25附录:2829 二阶环节电压跟踪控制系统的设计(采用PC机、JK实验装置)1 序言基于反馈原理建立的自动控制系统。所谓反馈原理,就是根据系统输出变化的信息来进行控制,即通过比较系统行为(输出)与期望行为之间的偏差,并消除偏差以获得预期的系统性能。在反馈控制系统中,既存在由输入到输出的信号前向通路,也包含从输出端到输入端的信号反馈通路,两者组成一个闭合的回路。因此,反馈控制系统又称为闭环控制系统。反馈控制是自动控制的主要形式。自动控制系统多数是反馈控制系统。在工程上常把在运行中使输出量和期望值保持一致的反馈控制系统称为自动调节系统,而把用来精确地跟随或复现某种过程的反馈控制系统称为伺服系统或随动系统。 反馈控制系统由控制器、受控对象和反馈通路组成(见图)。图中带叉号的圆圈为比较环节,用来将输入与输出相减,给出偏差信号。这一环节在具体系统中可能与控制器一起统称为调节器。以炉温控制为例,受控对象为炉子;输出变量为实际的炉子温度;输入变量为给定常值温度,一般用电压表示。炉温用热电偶测量,代表炉温的热电动势与给定电压相比较,两者的差值电压经过功率放大后用来驱动相应的执行机构进行控制。同开环控制系统相比,闭环控制具有一系列优点。在反馈控制系统中,不管出于什么原因(外部扰动或系统内部变化),只要被控制量偏离规定值,就会产生相应的控制作用去消除偏差。因此,它具有抑制干扰的能力,对元件特性变化不敏感,并能改善系统的响应特性。但反馈回路的引入增加了系统的复杂性,而且增益选择不当时会引起系统的不稳定。为提高控制精度,在扰动变量可以测量时,也常同时采用按扰动的控制(即前馈控制)作为反馈控制的补充而构成复合控制系统。而本次课程设计可通过闭环控制系统实现,所以有必要先对闭环系统做个简单的介绍。自动控制在日常生活中的应用非常广泛,大到航天航空,小到家用电器都会涉及到自动控制。自动控制系统的任务是使被控对象的被控量跟随给定值的变化而变化。闭环控制系统是一种最基本的自动控制系统,图一中有单回路闭环控制系统的框图。变送器(含测量元件)对被控量Y进行测量,并将其变换为电信号,经A/D转换为数字信号后反馈给控制器。控制器将反馈信号与给定值R进行比较,并根据指定的控制规律产生相应的控制信号,经D/A转换后作用于被控对象,是被控量与给定值保持一致。 RG(S)D/A控制器Y变送器A/D 图一:单回路闭环控制系统框图2 设计步骤闭环控制系统应该包括硬件和软件两大部分。21 硬件设计闭环控制系统硬件组成与数据采集系统基本相同,主要由模拟输入通道,模拟输出通道和被控对象等组成。其工作过程是:被控对象的输出经模拟输入通道转换成数字信号进入计算机,计算机将该信号与给定值比较,得到偏差信号,控制算法程序对偏差信号进行决策和计算,并将计算结果通过模拟输出通道转换成模拟量,加载到被控对象,是被空对象输出值与给定值的偏差最小。硬件电路就是选取合适的电子器件,芯片或设备,设计这样一个闭环控制系统,使计算机能按要求完成上述工作过程。通过TDN-AC/ASC试验系统可搭建控制对象G(S),该对象输出连接到JK-3实验操作面板模拟通道0即AI0端数据采集系统的输出D/A直接连接到控制对象G(S)输入端。2.2软件设计软件设计除了要达到数据采集系统的要求外,还必须有控制算法程序和更强的数据处理能力。一个控制系统的控制过程可归纳为以下3个步骤:1 实时数据采集:即对被控参数的瞬时值进行测量。2 实时决策:对表征被控对象状态的测量值进行分析,并按已定的控制规律座车型赢的控制决策。3 实时控制:根据决策,实施对控制机构发出控制信号。控制程序的运行必须满足以上控制过程,同时控制算法是使被控参数尽快达到给定值,并能将被控参数随时间的变化情况在屏幕上显示出来。参考程序流程图如图2 所示。该程序由初始化和数据采集,数据滤波,标度变换,屏幕显示,D/A输出,控制局测和屏幕描点等子程序构成。初始化程序主要完成:屏幕上显示“R_SET(mV)=”的字样,待输入完设定值后,在屏幕上显示一个坐标轴和有关操作提示符。并在屏幕上开辟一个显示区,用于显示采样值,设定值,控制输出值等闲管信息。各子程序功能为:(1)数据采集:连续采集20个数据,没采集一个数据,跳一次采样程序SAMP0。(2)数字滤波:具体方法是对20个数据有大到小进行排序(子程序名SAMP1),去掉两个最大值,去掉两个最小值,将中间16个数据取平均值(子程序名SAMP2)。(3)标度变换:将数字滤波后的采样值X比那换成与实际输入对应的模拟电压毫伏制Y,然后存放在数据缓冲区。子程序名BTOD和SDATA。(4)屏幕显示:利用计算机屏幕显示采样值,设定值和输出值等相关信息。由于数据缓冲区的存放格式是二进制数,而送屏幕显示的必须是ASC2码,所以子程序DISPH是完成二进制转换为BCD码,在转换为ACS2码,存放在显示缓冲区的相应的地址单元中。子程序DISPL是将显示缓冲区的内容送到屏幕上显示。(5)控制决策:根据控制标志,判断是否调用控制算法子程序CT。该子程序根据设定值和采样值计算出误差值,根据误差大小确定是否采用积分计算,同时将误差值进行比例运算,计算出本次计算的结果,存放在输出缓冲区。(6)D/A输出:D/A输出程序DAOUT,是将当前输出缓冲区数据输出到D/A转换器端口。(7)屏幕描点:子程序POINT是将采样值对应的坐标描绘在屏幕对应的位置上。(8)检查按键:当一个数据从采集到处理最后送屏幕显示完毕后,进行适当延时,检查是否有键按下,如有键按下,读取键值,是“Q”键就退出程序;是“S”键就设置控制字为1;是“T”键就设置控制标志位0;若不是动作键或没有建按下,重复执行以上(1)-(7)程序。3 原理分析3.1A/D转换 AD转换就是模数转换,顾名思义,就是把模拟信号转换成数字信号。模拟信号到数字信号的转换包含信号的采样和量化两个过。模拟信号到采样信号的变换过程称为采样过程,将采样信号转换为数字信号的过程称为量化过程,执行量化动作的装置是A/D转换器。其主要技术指标有:1)分辩率(Resolution) 指数字量变化一个最小量时模拟信号的变化量,定义为满刻度与2n的比值。分辩率又称精度,通常以数字信号的位数来表示。 2) 转换速率(Conversion Rate)是指完成一次从模拟转换到数字的AD转换所需的时间的倒数。积分型AD的转换时间是毫秒级属低速AD,逐次比 较型AD是微秒级属中速AD,全并行/串并行型AD可达到纳秒级。采样时间则是另外一个概念,是指两次转换的间隔。为了保证转换的正确完成,采样速率 (Sample Rate)必须小于或等于转换速率。因此有人习惯上将转换速率在数值上等同于采样速率也是可以接受的。常用单位是ksps和Msps,表 示每秒采样千/百万次(kilo / Million Samples per Second)。 3)量化误差 (Quantizing Error) 由于AD的有限分辩率而引起的误差,即有限分辩率AD的阶梯状转移特性曲线与无限分辩率AD(理想AD)的转移特 性曲线(直线)之间的最大偏差。通常是1 个或半个最小数字量的模拟变化量,表示为1LSB、1/2LSB。介绍其主要器件AD574:AD574是美国AD公司生产的12位高速逐次逼近型模数变换器,如上图片内自备时钟基准源,变换时间快(25 s),数字量输出具有三态缓冲器,可直接与微机的总线接El,又可直接采用双极性模拟信号输入,有着广泛的应用场合,供电电源为1 5 V,逻辑电源为+5 VCS :片选,低有效CSCE :片允许,高有效8031的WR和RD相与非后接CE,以确保AD574A在被启动变换或读出变换结果的操作时,CE有效RC :读变换,高为读AD变换结果,低为启动AD变换128 :数据格式,高为12位并行输出,低为8位(或4位)并行输出本设计令其接地A0 :字节地址短周期,高为8位变换输出低4位,低为12位变换输出高8位STS :变换状态,高为正在变换,低为变换结束STS总共有三种接法:(1)空着:只能在启动变换25 s以后读AD结果;(2)接静态端口线:可用查询方法,待STS为低后再读AD变换结果;(3)接外部中断线:可引起中断后,读AD变换结果本设计夸其接P1oREFIN :基准输入REFOUT :基准输出BIP OFF :双极性方式时,偏置电压输入端DBIIDB0:12位数据总线10VSPAN :单极性010 V模拟量输入;双极性0 5 V模拟量输入该设计采用双极性0 5 V模拟量输入20VSPAN :单极性020 V模拟量输入;双极性0 10 V模拟量输入3.2标度变换生产过程中的各个参数都有着不同的量纲,例如压力的单位是Pa,温度的单位是等。这些参数先由测量仪表转换成模拟电信号,再经过A/D转换后成为相应的数字量。这些数字量仅仅代表参数值的大小,并不一定就是原来带有量纲的参数值。为了能直接显示被测工程量值,必须把它们转换成有量纲的数值,这种转换成为标度变换,也称为工程转换。对于一般的线性仪表来说吗,参数值与A/D转换结果之间是线性关系,其标度变换公式为:式中 A0测量仪表的下限; Am测量仪表的上限; Ax标度变换后的测量值; N0仪表下限所对应的数字量; Nm仪表上限所对应的数字量; Nx测量值对应得数字量。如果被测参数的起点A0所对应的A/D转换值为0,即N0=0,上式可以简化为:3.3D/A转换 DA转换就是数模转换,顾名思义,就是把数学信号转换成模拟信号。 其主要性能指标有: 1、分辨率 分辨率是指输入数字量的最低有效位 LSB)发生变化时, 是指输入数字量的最低有效位( 分辨率是指输入数字量的最低有效位(LSB)发生变化时, 所对应的输出模拟量(电压或电流)的变化量。 所对应的输出模拟量(电压或电流)的变化量。它反映了 输出模拟量的最小变化值。 输出模拟量的最小变化值。 分辨率与输入数字量的位数有确定的关系,可以表示成FS 分辨率与输入数字量的位数有确定的关系,可以表示成FS FS表示满量程输入值 表示满量程输入值, 为二进制位数。对于5V / 2n 。FS表示满量程输入值,n为二进制位数。对于5V 的满量程,采用位的DAC DAC时 分辨率为5V/256 19.5mV; 5V/256 的满量程,采用位的DAC时,分辨率为5V/25619.5mV; 当采用12位的DAC 12位的DAC时 分辨率则为5V/4096 1.22mV。显然, 5V/4096 当采用12位的DAC时,分辨率则为5V/40961.22mV。显然, 位数越多分辨率就越高。 位数越多分辨率就越高。 2、线性度 线性度(也称非线性误差) 线性度(也称非线性误差)是实际转换特性曲线与理想 直线特性之间的最大偏差。 直线特性之间的最大偏差。常以相对于满量程的百分数 表示。 表示。如是指实际输出值与理论值之差在满刻度 以内。 的以内。 3、绝对精度和相对精度 、 绝对精度(简称精度)是指在整个刻度范围内, 绝对精度(简称精度)是指在整个刻度范围内,任 一输入数码所对应的模拟量实际输出值与理论值之 间的最大误差。绝对精度是由DAC的增益误差(当 的增益误差( 间的最大误差。绝对精度是由 的增益误差 输入数码为全1时,实际输出值与理想输出值之差)、 输入数码为全 时 实际输出值与理想输出值之差)、 零点误差(数码输入为全 DAC的非零输出 零点误差(数码输入为全时,DAC的非零输出 )、非线性误差和噪声等引起的 绝对精度( 非线性误差和噪声等引起的。 值)、非线性误差和噪声等引起的。绝对精度(即 最大误差)应小于1个 最大误差)应小于 个LSB。 。 相对精度与绝对精度表示同一含义, 相对精度与绝对精度表示同一含义,用最大误差相 与绝对精度表示同一含义 对于满刻度的百分比表示。 对于满刻度的百分比表示。 4、建立时间 、 建立时间是指输入的数字量发生满刻度变化时 是指输入的数字量发生满刻度变化时, 建立时间是指输入的数字量发生满刻度变化时, 输出模拟信号达到满刻度值的 输出模拟信号达到满刻度值的1/2LSB所需的时 所需的时 是描述D/A转换速率的一个动态指标。 转换速率的一个动态指标。 间。是描述 转换速率的一个动态指标 电流输出型DAC的建立时间短。电压输出型 的建立时间短。 电流输出型 的建立时间短 电压输出型DAC 的建立时间主要决定于运算放大器的响应时间。 的建立时间主要决定于运算放大器的响应时间。根 据建立时间的长短,可以将DAC分成超高速( 分成超高速( 据建立时间的长短,可以将 分成超高速 1S)、高速(101S)、中速(10010S)、 )、中速 、高速( )、中速( )、 低速( 低速(100S)几档。 )几档。 应当注意,精度和分辨率具有一定的联系, 应当注意,精度和分辨率具有一定的联系,但 概念不同。 的位数多时, 概念不同。DAC的位数多时,分辨率会提高,对 的位数多时 分辨率会提高, 应于影响精度的量化误差会减小。 应于影响精度的量化误差会减小。但其它误差 如温度漂移、线性不良等)的影响仍会使DAC (如温度漂移、线性不良等)的影响仍会使 的精度变差。 的精度变差。 常用的DA转换器有很多,但在使用当中DAC0832十分普遍。 DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。3.4PI控制 D/A 给定进行1: 1 比例放大电路反向输出, 与电流采样板输出的电流反馈进行比较, 形成电流闭环, 调节PI 控制器的比例放大系数, 使DA 输出量和实际采样检测值之间保持线性关系。系统电流闭环消除了由运放引起的非线性误差, 并有效抑制模拟电路部分的非线性对AD 转换电路的干扰, 简化了软件部分的设计。比例(P)控制 比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-state error)。 积分(I)控制 在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的 或简称有差系统(System with Steady-state Error)。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积 分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。 4程序清单.486DATA SEGMENT DATAH_PORT EQU 200H ;读取数据高8位口地址L_PORT EQU 201H ;读取数据低4位口地址CH_PORT EQU 205H ;通道选择端口地址IN_PORT EQU 202H ;输入寄存器地址DAC_PORT EQU 204H ;DAC寄存器地址X_P DW 10R_SET DW 1000O_SET DW 40960DATAA DW 8 DUP(0)BUFF DW 9,8,7,6,5,4,3,2,1,0,0,1,2,3,4,5,6,7,8,9MES1 DB playskey to star,tkey to stop,qkey to exit,rkey to set,0ah,0dh,$DISP DB CH0 R_SET: V,0AH,0DH,$DISP1 DB CH0 000000V,0DH,$KONG DB ,0DH,$CHAO DB ,0DH,$CBUFF DW 4 DUP(0)MESS0 DB +5.000VMESS1 DB 0.000VCH_NUM DB 0OUTDA DB 0FLAG1 DB 0FLAG2 DB 0KEYBUF DB 25COUNT DB ?KEYNUM DB 25 DUP(?)MES2 DB R_SET(mV)=,$EK DW 0EK1 DW 1KP DW 5KI DW 2M1 DW 1PMAX DW 0DATA ENDSSTCK SEGMENT PARA STACKSTACK DB 256 DUP(0)STCK ENDSCODE SEGMENTMAIN PROC FAR ASSUME CS:CODE,DS:DATA,SS:STCKSTART: PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AXs1: LEA DX,MES2 ;显示输入提示信息 MOV AH,09H INT 21H LEA DX,KEYBUF MOV AH,0AH INT 21H ;从键盘输入系统设定值 MOV BX,0 ;将从键盘接收的数据转换成二进制数 MOV DI,0LLP: MOV AL,KEYNUMDI AND AL,0FH MOV AH,0 XCHG AX,BX MOV CX,10 MUL CX ADD BX,AX INC DI MOV AX,DI CMP AL,COUNT JZ LLP0 JMP LLP LLP0: MOV R_SET,BX ;存放设定值 LLP00:MOV BX,R_SET MOV DATAA4,BX MOV CH_NUM,2 ;设定值送显示缓存区 CALL DISPH1 MOV CH_NUM,0 CALL TT ;在屏幕上画坐标 LEA DX,MES1 ;送操作提示符屏幕上显示 MOV AH,09H INT 21H LEA DX,DISP MOV AH,09H INT 21H PL: LEA DX,CHAO MOV AH,09H INT 21H LEA DX,DISP1 ;送显示缓存区数据屏幕上显示 MOV AH,09H INT 21H LP: MOV DI,0 MOV CX,20 LP00: CALL SAMP0 ;读20次A/D转换结果 LOOP LP00 CALL SAMP1 ;20个数据由大到小排列 CALL SAMP2 ;求中间16个数据平均值 CALL BTOD ;标尺变换,将采集样变换为电压毫伏值 NEXT: CALL SDATA ;传送到内存 CALL DISPH ;送显示预处理,将电压值转换成ASCII码 CALL DISPL ;送屏幕显示 CALL CT ;调控制算法程序 CALL DAOUT ;送数到D/A转换CMP FLAG1,0JZ LP03 CALL POINT ;将当前采集样在屏幕描点 LP03: MOV ECX,300000H LP02: LOOPD LP02 MOV AH,01H INT 16H ;查询是否有键按下 JZ LP ;没有键按下,继续循环 MOV AH,0 INT 16H ;有键按下,读键值 CMP AL,q JZ LPQ ;退出键按下,转退出程序 CMP AL,s JZ LPB ;开始键按下,转置标志程序 CMP AL,t JZ LPP ;停止键按下,转清标志程序 cmp al,r jz s1 ;重设键按下, 转设定值程序 JMP LP ;无操作键按下,转循环程序 LPB:MOV FLAG1,1 ;置系统控制开始标志 JMP LP LPP:MOV FLAG1,0 ;置系统控制停止标志 JMP LP LPQ:MOV AH,4CHINT 21H MAIN ENDPCT PROC NEARMOV AX,R_SETMOV DX,DATAAmov cx,o_setSUB AX,DX ;AX等于EKadd cx,axmov o_set,cxMOV EK,AxMUL KPmov bh,ahmov cx,axmul kimov al,ahmov ah,0mov bl,200div blmov ah,aladd ah,bhMOV OUTDA,AHRETCT ENDPPOINT PROC NEAR MOV AX,DATAA ADD AX,5000 CWD MOV CX,25 DIV CX MOV DX,465 SUB DX,AX ;计算纵坐标值 MOV CX,X_P ;计算横坐标值 INC X_P CMP X_P,640 JNZ POINT0 MOV X_P,10 JMP LLP00POINT0:MOV AH,0CH ;在屏幕上描点 MOV AL,14 MOV BH,0 INT 10H RETPOINT ENDPTT PROC NEAR ;在屏幕上画坐标 MOV AH,0 ;置屏幕显示模式 MOV AL,12H INT 10H MOV BH,0 MOV BL,0 INT 10H MOV CX,10 ;画Y轴坐标 MOV DX,265 MOV AH,0CH YTT:MOV AL,02 INT 10H DEC DX CMP DX,55 JNZ YTT MOV DX,265 ;画X轴坐标 XTT:INT 10H INC CX CMP CX,610 JNZ XTT MOV CX,607 ;画X轴坐标箭头 MOV DX,262 UPX:INT 10H INC DX INC CX CMP CX,610 JNZ UPXDOWNX:INT 10H DEC CX INC DX CMP CX,606 JNZ DOWNX MOV CX,7 ;画Y轴坐标箭头 MOV DX,58UPY: INT 10H INC CX DEC DX CMP CX,10 JNZ UPYDOWNY:INT 10H INC CX INC DX CMP CX,14 JNZ DOWNY MOV DX,65 MOV CX,11MARK:INT 10H ;在Y轴上做标志 ADD DX,40 CMP DX,265 JNZ MARK MOV DX,264 MOV CX,10MARK1:INT 10H ;在x轴上做标志 ADD CX,40 CMP CX,650 JNZ MARK1 MOV BX,000FH MOV BP,SEG MESS0 MOV ES,BP MOV BP,OFFSET MESS0 MOV DL,02 MOV DH,4 MOV BL,1FH MOV AL,0 MOV AH,13H MOV CX,07H INT 10H MOV BP,OFFSET MESS1 MOV DL,02 MOV DH,17 MOV BL,1FH MOV AL,0 MOV AH,13H MOV CX,07 INT 10H RETTT ENDPSAMP0 PROC NEAR ;读A/D转换结果 PUSH CX MOV DX,CH_PORT ;通道选择端口地址 MOV AL,CH_NUM ADD AL,40H ;选择通道0 OUT DX,AL MOV CX,100H LP1:LOOP LP1 ;延时 AND AL,0FH ;给AD574送启动信号脉冲(低电平) OUT DX,AL MOV CX,10 LP2:LOOP LP2 ADD AL,40H ;给AD574送启动信号脉冲(高电平) OUT DX,AL MOV DX,L_PORT LP3:IN AL,DX TEST AL,01H ;测STS信号 JNZ LP3 ;未转换完,继续查询 MOV DX,H_PORT IN AL,DX ;读高8位 MOV AH,AL INC DX IN AL,DX ;读低4位 SHR AX,4 MOV BUFFDI,AX INC DI INC DI POP CX RETSAMP0 ENDPSAMP1 PROC NEAR ;对A/D转换结果排序 MOV BX,19 MOV CX,BXSAMP10:MOV SI,38SAMP11:MOV AX,BUFFSI CMP AX,BUFFSI-2 JAE UNCH EXCH:XCHG BUFFSI-2,AX MOV BUFFSI,AX UNCH:DEC SI DEC SI LOOP SAMP11 DEC BX MOV CX,BX CMP BX,0 JNE SAMP10 RETSAMP1 ENDPSAMP2 PROC NEAR ;求平均值 MOV CX,16 MOV AX,0 MOV SI,4SAMP20:MOV BX,BUFFSI ADD AX,BX INC SI INC SI LOOP SAMP20 RETSAMP2 ENDPBTOD PROC NEAR ;标度变换 MOV CL,4 SHR AX,CL MOV CX,2442 MUL CX MOV CX,1000 DIV CX CMP DX,501 JB BTOD1 INC AX BTOD1:SUB AX,5000 push axCMP AX,PMAXJB UNPASSPMAXMOV FLAG2,1MOV PMAX,AXUNPASSPMAX: POP AX RETBTOD ENDPSDATA PROC NEAR ;读数至内存 MOV CL,CH_NUM ADD CL,CL MOV CH,0 MOV SI,CX MOV DATAASI,AX RETSDATA ENDPDAOUT PROC NEAR ;实现D/A转换 MOV AL,OUTDA MOV DX,IN_PORT OUT DX,AL ;传送输入寄存器 MOV DX,DAC_PORT OUT DX,AL ;传送DAC寄存器 RETDAOUT ENDPDISPH PROC NEAR ;进行显示预处理 MOV AX,0 MOV DI,AX MOV DX,DATAADI LEA DI,DISP1 MOV AH,0 ADD DI,4 ADD DX,0 JNS LP4 NEG DX MOV AL,- JMP LP5 LP4: MOV AL,+ LP5: MOV DI,AL MOV AX,DX CWD MOV CX,1000 DIV CX ADD AL,30H INC DI MOV DI,AL MOV AL,. INC DI MOV DI,AL MOV AX,DX MOV CL,100 DIV CL ADD AL,30H INC DI MOV DI,AL MOV AL,AH MOV AH,0 MOV CL,10 DIV CL ADD AL,30H INC DI MOV DI,AL MOV AL,AH ADD AL,30H INC DI MOV DI,AL RETDISPH ENDPDISPH1 PROC NEAR ;进行显示预处理 MOV AL,CH_NUM ADD AL,AL MOV AH,0 MOV DI,AX MOV DX,DATAADI LEA DI,DISP MOV AH,0 ADD DI,11 ADD DX,0 JNS LP44 NEG DX MOV AL,- JMP LP55 LP44: MOV AL,+ LP55: MOV DI,AL MOV AX,DX CWD MOV CX,1000 DIV CX ADD AL,30H INC DI MOV DI,AL MOV AL,. INC DI MOV DI,AL MOV AX,DX MOV CL,100 DIV CL ADD AL,30H INC DI MOV DI,AL MOV AL,AH MOV AH,0 MOV CL,10 DIV CL ADD AL,30H INC DI MOV DI,AL MOV AL,AH ADD AL,30H INC DI MOV DI,AL RETDISPH1 ENDPDISPL PROC NEAR ;送数据屏幕显示 LEA DX,DISP1 MOV AH,09H INT 21H RETDISPL ENDPCODE ENDS END START 5运行结果及总结运行结果输入值 超调量1000mv 5.20% 2000mv 6.10%3000mv 5.70%4000mv 5.45%蒋全清的心得体会这次课程设计的过程对我来说可谓曲折,一开始拿到课题完全不知道课题的要求,设计思路等,加上这次课程设计时间比较紧急让我们当时好不着急。后来上网查了下资料并问了下试验室的老师才算是弄清楚了我们的设计要求是什么以及设计方法等。在试验过程中我们也是不断地遇到问题,我和王翼铭负责编程设计,刚开始我们就感到很多问题,例如:在软件方面,在我最初的脑子里,上计控的时候关于A/D,D/A转换都是通过ADC0809,DAC0830等芯片直接完成的,但让我们用PC编程实现A/D,D/A转换一时让我们感到毫无办法。后来去看了计算机硬件原理后感到豁然开朗,原来是计算机内部就有这些芯片,我们只需调用相应端口就行。之后就是关于数据采样和滤波,这个部分相对比较简单,上计控时都讲得很清楚。然后最棘手的问题就是计算机控制的算法和其中的Kp,Ki的计算和整定过程。在硬件方面,焊接电路板以及做电路原理图都是牙生江.赛买提和王圻宏他们做的,我遇到的主要问题就是接口连接有点问题,在CRT显示时总是出现问题,在显示一段时间后突然跳变到+5V就一直不变了,当时我对此问题是毫无办法。也换了别人的硬件板子试了试也出现同样的问题,但从程序上看又豪无问题,最后我们想到换电脑试试,结果既让我们欣喜同时又有点苦涩,就因为这个问题让我们整整花了一天时间在那不断地调试,换板子等。经过我们几天的不懈努力终于算是完成了,虽然最后的超调量和调节时间的要求还答不到标准要求,但在短时间内我们能完成到这个地步也算是给了我们一定的信心和安慰。最后我认为这次试验确实给了我们一个锻炼的机会,在这里也得感谢实验室的老师,在试验过程中老师也给了我们很到的帮助,耐心的帮助我们讲解了一些难题发生的可能情况,让我们收货颇多。王翼铭的总结 所谓车到山前必有路,船到桥头自然直,这次的计控课程设计正是应了这句话,曲折总是有的,但是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论