计算机控制技术毕业课程设计报告.docx
- 文档编号:9319212
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:31
- 大小:118.79KB
计算机控制技术毕业课程设计报告.docx
《计算机控制技术毕业课程设计报告.docx》由会员分享,可在线阅读,更多相关《计算机控制技术毕业课程设计报告.docx(31页珍藏版)》请在冰豆网上搜索。
计算机控制技术毕业课程设计报告
(此文档为word格式,下载后您可任意编辑修改!
)
on二阶环节电压跟踪控制系统的设计
(采用PC机、JK实验装置)
专业:
自动化专业
班级:
2008级8(7)班
组员:
姚亮
刘凤
罗威
李延
孙德林
重庆大学自动化学院
2011年9月
目录
一、序言…………………………………………………………………2
二、设计内容
2.1设计要求…………………………………………………………2
2.2学生应完成工作…………………………………………………2
三、设计步骤
3.1确定基本设计目标………………………………………………3
3.2确定基本实现方案………………………………………………3
3.3硬件设计…………………………………………………………4
3.4软件设计…………………………………………………………5
3.5调试完善程序,完成报告………………………………………7
3.6设计结果展示……………………………………………………8
四、成员分工……………………………………………………………8
五、心得体会
5.1姚亮的心得体会………………………………………………9
5.2刘凤的心得体会………………………………………………9
5.3罗威的心得体会………………………………………………9
5.4李延的心得体会………………………………………………10
5.5孙德林的心得体会……………………………………………11
六、参考文献…………………………………………………………11
七、程序清单…………………………………………………………11
一、序言
自动控制在日常生活中的应用非常广泛,大到航天航空,小到家用电器都会涉及到自动控制。
自动控制系统的任务是使被控对象的被控量跟随给定值的变化而变化。
闭环控制系统是一种最基本的自动控制系统,图1是单回路闭环控制系统的框图。
变送器(含测量元件)对被控量Y进行测量,并将其变换为电信号,经AD转换为数字信号后反馈给控制器。
控制器将反馈信号与给定值R进行比较,并根据指定的控制规律产生相应的控制信号,经DA转换后作用于被控对象,使被控量与给定值保持一致。
图1单回路闭环控制系统框图
二、设计内容
2.1设计要求
(1)已知参数和设计要求
1)搭建一个二阶环节
2)设计一个控制器输出作用于电路输入IN,使得电路输出端能够跟踪0-5V范围内的任意阶跃信号,并能通过CRT显示器画出输出信号曲线。
3)设计人机交互接口,包括键盘、显示器,能通过人机交互接口设置信号参数。
4)控制精度≤±5%,调节时间≤5秒。
(2)实现方法
采用PC机、JK实验装置实现(限≤4人选做)
2.2学生应完成的工作
1)硬件设计:
要求完成控制系统框图;绘制完整的控制系统电路原理图;说明各功能模块的具体功能和参数;搭建并调试一个二阶环节电路;结合实验室现有的JK实验装置进行系统组成,并对整个系统的工作原理尽心全面分析,论述其结构特点、工作原理、优缺点和使用场合。
分析系统采用的主要单元的工作原理和特性。
2)软件设计:
要求合理分配系统资源,完成二阶环节电压跟踪控制系统的程序设计(如:
系统初始化;主程序;AD转换;DA转换;标度转换;显示与键盘管理;控制算法;输出等)。
3)对设计控制系统进行系统联调。
4)编写课程设计报告:
按统一论文格式、同意报告纸和报告的各要素【封面、任务书、目录、摘要、序言、主要内容(包括设计总体思路、设计步骤、原理分析和相关知识的引用等)、总结、各组员心得体会、参考书及附录(包括系统框图、程序流程图、电路原理图和程序源代码)】进行编写,字数要求不少于4000字,要求设计报告论理正确,逻辑性强,文理通顺,层次分明,表达确切。
三、设计步骤
3.1确定基本设计目标
仔细研读了设计任务书后,我们确认了本次课程设计需要实现的基本任务目标有:
(1)搭建一个二阶环节;
(2)CRT显示器能够显示输出;
(3)要求设计人机交互接口,参数可随时设置;
(4)精度要求。
3.2确定基本实现方案
对比着任务要求,我们组员讨论得出了要完成各个基本设计任务的初步实现方案:
3.2.1搭建二阶环节
本次课程设计中,由实验室提供二阶环节系统盒,故不需要我们自己搭建。
3.2.2电路输出跟踪阶跃信号
我们采用电脑键盘作为系统输入,计算机读取按键后,信号通过DA转换送给二阶环节,再进行AD转换后回送给计算机CRT显示信号曲线。
整个过程中需要用的读键程序、DA、AD转换程序、屏幕显示程序(包括屏幕描点、绘坐标轴、刷屏显示等程序)、滤波程序、控制计算程序……
3.2.3设计人机交互接口
由于任务要求信号参数可通过人机交互接口设置,我们讨论后设计在屏幕显示上添加功能按键显示(包括设置键、开始键、退出键)、调节时间显示及误差显示等功能,并设计按下“R”键后可以在屏幕上任意设置信号参数,这样,我们的人机交互功能便实现了。
3.2.4精度要求
对于精度≤±5%,调节时间≤5秒的设计要求,我们决定在软件调试时通过修改各参数来完成。
3.3硬件设计
本次课程设计中最为重要的硬件设计任务是信号数据采集系统的搭建。
数据采集系统是由计算机和硬件接口电路组成,硬件接口电路主要由多路模拟转换开关、采样保持器、AD转换电路、输入接口电路、DA转换电路、控制逻辑电路等组成。
其工作过程是:
由计算机通过控制逻辑电路选通多路模拟信号中的一个通道,该通道的模拟信号送到采样保持电路进行采样;当计算机启动AD转换电路转换时,采样保持电路处于保持状态,并把信号送给AD转换电路实现模拟量到数字量的转换;AD转换结束后,将送出一结束信号,该信号可产生已中断请求或供计算机查询,同时采样保持电路进入采样状态,计算机由输入接口电路读取一个通道模拟信号的一次转换数据。
当计算机向AD转换电路输出数据时,DA转换电路输出一个与输出数据对应的模拟电压。
硬件电路就是选取合适的电子器件和芯片,设计成满足系统速度、精度和可靠性等技术要求的电路接口,是计算机能按要求完成上述工作过程。
本次课程设计需要用到的硬件系统还有闭环控制系统。
其实闭环控制系统硬件组成与数据采集系统基本相同,主要由模拟输入通道、模拟输出通道和被控对象等组成。
图2向我们展示的就是此次设计过程中一个很重要的硬件系统—二阶环节系统:
图2二阶环节
3.4软件设计
相同于硬件设计,软件设计也大体分为两个部分,及采集系统和闭环控制系统。
因为此次课程设计的主要任务是完成闭环控制系统的软件设计,而且采集系统的软件设计可以包括在闭环控制系统的步骤里。
除了必须达到采集系统的要求外,闭环控制系统的软件设计还必须有控制算法程序和更强的数据处理能力。
其实一个控制系统的控制过程可归纳为以下3个步骤:
1.实时数据采集:
即对被控参数的瞬时值进行测量。
2.实时决策:
对表征被控对象状态的测量值进行分析,并按已定的控制规律座车型赢的控制决策。
3.实时控制:
根据决策,实施对控制机构发出控制信号。
控制程序的运行必须满足以上控制过程,同时控制算法是使被控参数尽快达到给定值,并能将被控参数随时间的变化情况在屏幕上显示出来。
参考程序流程图如图3所示。
该程序由初始化和数据采集,数据滤波,标度变换,屏幕显示,DA输出,控制局测和屏幕描点等子程序构成。
初始化程序主要完成:
屏幕上显示“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)DA输出:
DA输出程序DAOUT,是将当前输出缓冲区数据输出到DA转换器端口。
(7)屏幕描点:
子程序POINT是将采样值对应的坐标描绘在屏幕对应的位置上。
(8)检查按键:
当一个数据从采集到处理最后送屏幕显示完毕后,进行适当延时,检查是否有键按下,如有键按下,读取键值,是“Q”键就退出程序;是“R”键就开始设置参数;若不是动作键或没有键按下,重复执行以上
(1)-(7)程序。
图3闭环控制系统流程图
3.5调试完善程序,完成报告
相关硬件及软件设计完成后,最后的主要工作就是调试运行程序,并达到设计任务要求的精度。
整个过程就是不断地修改相关参数并调试运行,已达到理想效果。
调试完善程序之后,我们便开始着手撰写课程设计报告。
3.6设计结果展示
设置电压(mV)
稳定输出(mV)
误差
(mV)
调节时间(s)
+2000
+2001
+1
6
+2500
+2499
-1
7
+3000
+3002
+2
7
+3500
+3498
-2
4
表1实验结果
四、成员分工
班级
学号
姓名
任务分工
自动化8班
姚亮
画流程图,写设计报告,参数调试
自动化8班
刘凤
控制参数调节,算法程序编写
自动化8班
罗威
标度变换、屏幕描点等部分程序编写
自动化8班
李延
AD、DA转换模块子程序编写,求平均值子模块的编译,程序检测
自动化7班
孙德林
编写坐标子程序,编写实验报告
表2成员分工
五、心得体会
5.1姚亮的心得体会
这次的计算机控制课程设计相对于上周的硬件设计要简单一些,因此我们的时间主要都用在了对参数的设置及调试上,为了满足任务的精度要求,我们全组成员调试了近三天时间。
相关的主程序我们很快便编写出来了,但很快地我们便在精度要求这里卡住了,因为影响输出信号精度的参数比较多,而且相互之间又都是相互影响和制约的,所以我们需要在调试的时候修改各个参数多次,以达到最理想的要求。
通过这次课程设计,我也再次复习了计算机控制技术的相关知识,同时也学到了很多新知识。
比如二阶环节的搭建及连接,屏幕刷屏程序的编写等等。
最重要的是在此次课程设计过程中我再一次通过与同学的合作完成了一个任务,这极大地锻炼了我的团队分工与协助能力。
5.2刘凤的心得体会
刚拿到课程设计题的时候有点窃喜,题目是上学期计控实验的最后一次实验,所以很快就找到了需要的程序模块。
我主要负责算法程序的编写和主程序的编写,把所有程序都组合起来后,我们进行了第一次测试,测试结果很不理想,首先测试精度达不到要求,其次是反应时间太长不到要求。
测试的问题主要是在控制算法的编写,开始我使用的是积分分离控制但是不管怎样调节精度都达不到要求,接着我把I控制去掉效果比PI要好点,但还是达不到要求,接着我使用PD控制精度达到了要求,而且精度非常好,但时间达不到要求,后面通过对参数的调节,可以是时间接近要求,但还是达不到要求,最后我还把调节时间和误差都显示在人机界面。
在这次课程设计中,虽然没有全部达到课程设计的要求,但在控制算法参数的调节过程中我学到了不少知识。
比如说P,I,D参数的调节方法,以及时间秒的调用方法。
在程序的编写过程中我对汇编又有了进一步的了解;在课程设计的过程中是我对计控有了更深的理解,以前不太懂的知识在这次课程设计中加深了了解,特别是对控制算法参数的调节;同时此次课程设计还大大的锻炼了我的团队分工和协调能力。
5.3罗威的心得体会
上周的计算机硬件基础课程设计刚完,还来不及回味,马上这周的计算机控制课程设计又开始了。
在本次的课程设计中,,我主要是负责标度变换,即将采样获得的数据由ASCII码转变为输出的电压值。
这次由于小组有五人,所以任务相对上次而言要轻松。
对于12位AD转换器,AD转换结果数据范围是0—4095,实际加载在AD转换器输出端的电压为-5.000V—+5.000V。
标度变换就是将0—4095变换成-5000mV—+5000mV。
其核心就是一个公式:
Y=X×2..但是,为了便于定点数的运算,通常将上述公式变形为:
Y=(X×2442)÷,结果的单位为mV,最后将数据存放在数据缓冲区。
在编写标度变换的程序的过程中,主要参考了计算机硬件基础实验书上得程序,因此写起来相对简单(比自己写简单多了)。
只是单独的程序模块没遇到太多的难度,不过,在遇到困难的时候,小组队友的帮助使我能够很快的解决问题。
总的来说,课程设计能让我们有自己动手的机会,我们在过程中也收获颇丰,通过自己的思考学到了很多东西
5.4李延的心得体会
在这次短暂的一个星期的学习与设计中,我和我的队友们一起合作完成了布置的任务。
计算机控制课程设计相比起计算机硬件的设计来,难点在于其设计中加入了我们未曾涉及到AD-DA转换以及控制算法的设计,而我在本次设计中主要负责AD-DA转换子模块的编译。
在做这个子模块的时候,我遇到了一个小问题。
就是AD转换中要调用求平均值模块,而我最开始在编译此模块的时候忽略了题目的要求,没有舍弃最高值和最低值。
因为对精度和实验结果的影响不大,在调试的过程中我们始终没有发现这个问题。
直到最近几天,我们任务趋于竣工的时候,我们重新检验程序才发现了这一问题,并且及时作出了修正。
如果在以后工作过程中,这些问题肯定都会被测试人员当做BUG给提出来,这是不利于整个程序和项目组的。
总之,在这次的课程设计中,我还是学习到了很多的东西的。
首先,这次是第二次合作用汇编语言做出一个完整的项目,感觉自己能够将所学的理论知识跟实际应用联系到了一起,体会到了一些成就感。
其次,深刻认识到了自己的动手能力以及创造能力的欠缺。
很多的程序只能依照书上的例题依样画葫芦,书上没有的例子就完全想不出自己的程序。
而且往往有时候,自己照着书本例题改动了一部分却始终调试不出来,自己也弄不清楚问题出在哪个地方。
5.5孙德林的心得体会
本次计算机控制课程设计被安排在开学第一个月,也是我们找工作之前,具有很重要的意义,通过这次课程设计我很好的回顾复习了以前所学习的各门课程,较为系统的梳理了各个知识点,对自己的专业知识的认识更加全面系统。
相信着对于我找工作也有很重要的指导意义。
本次课程设计我们组主要完成二阶环节电压跟踪控制系统的设计,我主要完成论文的编写工作,并且参与软硬件设计的讨论工作,通过课程设计的论文编写,无论对控制算法还是反馈控制系统,以及汇编语言都有了更加清晰的认识,我们在课程设计的过程中也遇到了很多困难,在设计报告是我力图把这些困难造成的原因结果等体现出来。
我们的课程设计过程中离不开老师的悉心指导,再次感谢老师们再我们遇到困难的时候给予的帮助。
六、参考文献
【1】《计算机硬件技术基础》—杨天怡等主编—重庆大学出版社
【2】《计算机硬件技术基础实验教程》—黄勤等主编—重庆大学出版社
【3】《单片微型计算机与接口技术》—李群芳等主编—电子工业出版社
【4】《计算机控制技术》—王建华等主编—高等教育出版社
七、程序清单
.486
DATASEGMENT
DAC_OUTDATADB?
;DA输出口
ADC_INDATADW?
BTOD_OUTDW?
;标度变换值
LVBO_OUTDW?
;平均值
DATAADW?
R_SETDW?
;设定值存储器
O_SETDW0
K_SETDW6;比例放大系数
D_SETDW4;微分系数
E_NDW?
;误差
E_LDW?
CNT1DB?
MEMORY1DW?
MEMORY2DW?
SECONDDB?
CNTDB?
CHADB?
X_PDW10
MESS0DB'5.000V'
MESS1DB'-5.000V'
BUFDW16DUP(0)
DISP1DB'^^^^^^','$'
KEYBUFDB51
COUNTDB?
KEYNUMDB51DUP(?
)
MES2DB'R_SET(mV)=','$'
MES3DB'PRESSRTORESET,PRESSQTOQUIT','$'
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVAH,2CH
INT21H
MOVAL,DH
MOVSECOND,AL
LEADX,MES3;显示输入提示信息
MOVAH,09H
INT21H
MNB:
MOVAL,0
MOVCNT1,AL
MOVCNT,AL
MOVAL,0
MOVDAC_OUTDATA,AL
CALLDAC
LEADX,MES2
MOVAH,09H
INT21H
LEADX,KEYBUF;从键盘输入提示信息
MOVAH,0AH
INT21H
MOVBX,0;将从键盘收到的数据转换为二进制
MOVDI,1
LLP:
MOVAL,KEYNUM[DI]
ANDAL,0FH
MOVAH,0
XCHGAX,BX
MOVCX,10
MULCX
ADDBX,AX
INCDI
MOVAX,DI
CMPAL,COUNT
JZLLP0
JMPLLP
LLP0:
MOVDI,0
MOVAL,KEYNUM[DI]
CMPAL,'-'
JNZOO
NEGBX
OO:
MOVR_SET,BX
CALLTT
OP:
MOVBX,0
CALLPOINT
YC:
LEASI,BUF
MOVCX,16
CAIYANG:
CALLADC;读取20次AD转换结果
MOVAX,ADC_INDATA
MOV[SI],AX
INCSI
INCSI
LOOPCAIYANG
CALLLVBO;求取平均值
CALLBTOD;标度变换
CALLCT;调用控制算法
CALLDAC;调用DAC
LEADX,MES3
MOVAH,09H
INT21H
MOVDL,20H
MOVAH,2
INT21H
INT21H
CALLDISPH;调用显示程序
MOVDL,20H
MOVAH,2
INT21H
INT21H
CALLDISPH1
MOVDL,20H
MOVAH,2
INT21H
INT21H
MOVAL,CNT1
SUBAL,20
JALLL3
CALLCOMPARE
CALLTIME
LLL3:
MOVDL,0DH
MOVAH,2
INT21H
INCBX
CMPBX,40
JZOP
MOVAH,01H;查询是否有键按下
INT16H
JZYC;没有按键继续循环
MOVAH,0
INT16H
CMPAL,'Q';退出键按下转退出程序
JZCC
CMPAL,'R'
JZMNB
JMPYC;没有按下继续循环
CC:
MOVAH,4CH
INT21H
;……………………………………………………………………………………………………
ADCPROCNEAR
PUSHA
MOVDX,205H;通道选择端口
MOVAL,40H
OUTDX,AL
MOVDX,205H
ANDAL,0BFH
OUTDX,AL
MOVCX,10
LP1:
LOOPLP1;给AD574送脉冲信号
ORAL,40H
OUTDX,AL
MOVDX,201H
LP2:
INAL,DX
TESTAL,01H;测试STS脉冲信号
JNZLP2
MOVDX,200H;读高八位
INAL,DX
MOVAH,AL
INCDX
INAL,DX;读低四位
MOVCL,4
SHRAX,CL
MOVADC_INDATA,AX
POPA
RET
ADCENDP
;……………………………………………………………………………………………………
DACPROCNEAR;实现DA转换
PUSHA
MOVDX,202H
MOVAL,DAC_OUTDATA
OUTDX,AL
MOVDX,204H
OUTDX,AL
POPA
RET
DACENDP
;……………………………………………………………………………………………………
BTODPROCNEAR;标度变换
PUSHA
MOVAX,LVBO_OUT
MOVCX,2442
MULCX
MOVCX,1000
DIVCX
CMPDX,501
JBBTOD1
INCAX
BTOD1:
SUBAX,5000
MOVBTOD_OUT,AX
POPA
RET
BTODENDP
;……………………………………………………………………………………………………
LVBOPROCNEAR;求平均值
PUSHA
MOVCX,16
MOVAX,0
LEASI,BUF
SAMP:
MOVBX,[SI]
ADDAX,BX
INCSI
INCSI
LOOPSAMP
MOVCL,4
SHRAX,CL
MOVLVBO_OUT,AX
POPA
RET
LVBOENDP
;……………………………………………………………………………………………………
CT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 技术 毕业 课程设计 报告