计算机控制课程设计.docx
- 文档编号:17931803
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:18
- 大小:206.78KB
计算机控制课程设计.docx
《计算机控制课程设计.docx》由会员分享,可在线阅读,更多相关《计算机控制课程设计.docx(18页珍藏版)》请在冰点文库上搜索。
计算机控制课程设计
指导教师签名:
年月日
本科学生课程设计任务书
课程设计题目
二阶环节电压跟踪控制系统的设计(采用单片机教学实验系统)
学院
自动化学院
专业
自动化专业
年级
2008
(1)已知参数和设计要求
1)按下图搭建一个二阶环节。
2)设计一个控制器输出作用于电路输入IN使得电路输出端能够跟踪0—5V范围内的任意阶跃信号。
并能通过示波器显示输出信号曲线。
3)设计人机交互接口,包括键盘、显示器能通过人机交互接口设置信号参数。
4)控制精度≤±5%,调节时间≤5秒。
(2)实现方法采用单片机教学实验系统实现(限≤4人选做)
学生应完成的工作:
1)硬件设计:
要求完成控制系统框图;绘制完整的控制系统电原理图;说明各功能模块的具体功能和参数;搭建并调试一个二阶环节电路;结合实验室现有的单片机教学实验系统进行系统组成,对整个系统的工作原理进行全面分析,论述其结构特点、工作原理、优、缺点和使用场合。
分析和论述系统采用的主要单元的工作原理和特性。
2)软件设计:
要求合理分配系统资源,完成二阶环节电压跟踪控制系统的程序设计(如:
系统初始化;主程序;A/D转换;D/A转换;标度变换;显示与键盘管理;控制算法;输出等)。
3)对设计控制系统进行系统联调。
4)编写课程设计报告:
按统一论文格式、统一报告纸和报告的各要素【封面、任务书、目录、摘要、序言、主要内容(包括设计总体思路、设计步骤、原理分析和相关知识的引用等)、总结、各组员心得体会、参考书及附录(包括系统框图、程序流程图、电原理图和程序原代码)】进行编写,字数要求不少于4000字,要求设计报告论理正确,逻辑性强,文理通顺,层次分明,表达确切。
目前资料收集情况(含指定参考资料):
《计算机硬件技术基础实验教程》黄勤等编著重庆大学出版社
《单片微型计算机机与接口技术》李群芳等编著电子工业出版社
《计算机控制技术》王建华等编著高等教育出版社
课程设计的工作计划:
(1)2011年1月10日熟悉设计任务和要求。
(2)2011年1月11日确定设计方案。
(3)2011年1月12日硬件调试。
(4)2011年1月13、14日软件及系统调试。
(5)2011年1月15日设计答辩。
任务下达日期2011年1月10日
完成日期2011年1月15日
指导教师(签名)
学生(签名)
说明:
1、学院、专业、年级均填全称,如:
光电工程学院、测控技术、2003。
2、本表除签名外均可采用计算机打印。
本表不够,可另附页,但应在页脚添加页码。
1引言
单片机是微型计算机的一种,是将计算机主机集成在一小块硅片上的微机。
它专为工业测量、控制而设计,具有三高优势(集成度高、可靠性高、性价比高),其特点是小而全(体积小、功能全),主要应用于工业检测河控制、计算机外设、智能仪器仪表、通信设备、家用电器等,特别适合于嵌入式微型计算机应用系统。
本设计就是以51系列单片为平台而开发的电压跟踪控制系统。
它具有操作简单、制作成本低、可靠性高、人机界面友好等优点,具有极大的应用价值和广大的市场开发前景。
在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。
PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。
当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。
即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。
PID控制,实际中也有PI和PD控制。
PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。
常规PID之所以至今被广泛应用,其主要原因在于:
第一,PID控制对于大多数过程都具有良好的控制效果和鲁棒性;第二,PID控制算法原理简明,参数的物理意义明确,理论分析体系完整且应用经验丰富;第三,在工业过程中,其控制过程的动态特性大都具有高阶、非线性、大延迟及时变等特性,给以精确数学模型为基础的现代控制理论的应用带来了困难。
但常规PID控制也有许多不足之处,最突出的一点就是有关PID参数的问题。
首先,常规PID无自适应能力。
PID控制器的参数必须相对于某一模型已知、系统参数已知的系统。
而且PID参数一旦整定完毕,便只能固定地实用于一种工况。
但实际的大多数生产过程都具有非线性,且特性随时间的变化而变化,显然固定的一组参数是不能满足这种变化的。
其次,常规PID的参数只能为满足生产过程控制目标的某一方面要求而整定的。
而之中人们要求的“设定值跟踪特性”和“干扰抑制特性”却往往满足不了要求,使控制效果达不到最佳。
在本次课程设计中我们就将采用PID控制法进对二阶系统的控制。
2设计内容
2.1整体设计分析
图1控制结构图
各部分功能介绍:
一输入:
输入也就是设定值。
可以设定0到5v任意值,但由于时间和键盘的限制,我们设定值为0到5v整数值,并由键盘输入。
二单片机:
单片机主要是起控制作用,它既控制A/D,D/A的转换时序,又采用PID控制算法控制被控对象(二阶电路模型),使之的输出跟随系统的输入。
三D/A转换器:
把单片机输出的8位数字量转化为模拟量。
四A/D转化器:
把输出的模拟量转化为八位的数字量,作为反馈信号。
五被控对象:
被控对象是一个二阶模型电路。
主要由两个集成运放组成,是一个放大电路,其本身并不稳定。
2.2设计分工
本次设计共有4人完成,分工如表1所示
表1
任务
完成者
安排分工和程序的编写
周跃
AD应用与报告的排版
曹伟华
硬件焊接与调试
李永洪
学习DA应用及总结
杨建春
2.3控制流程
总程序控制流程图:
键盘程序流程图:
3被控对象分析
被控对象如图2所示,为用运算放大器搭建的一个二阶环节
图2
系统各部分的参数,
R11000K
C21uF
C31uF
R6500K
R8500K
R71000K
R910000K
U1,U4OP07
分析这个对象可知,对象为二阶环节,通过应用PID可以对其进行有效控制。
控制过程的传递函数:
4硬件电路部分的设计
4.1DA转换器部份电路设计
DA转换器部份电路设计如下图所示:
DA转换器的输入信号与单片机的P0口相连,控信号一直有效使DA一直处于工作状态,而且DA的参考电压接的为正五伏,与DA相连的集成运放看不清内部接线不知道是怎么连接的,但根据他的输入输出效果可以得知DA是采用了单极性工作放式,其效果等效于上图所示连接。
由于DA采用单极性接法,而且输入参考电压为五伏,则其只能输出0伏及以上电压,当输入为全零时,输出为零;当输入为全一时,输出为5V。
4.2控制对象部分电路设计
本次课程设计的控制对象为一个二阶环节,结构如上图所示,第一个集成运放与电容电阻构成一个积分环节,第二个集成运放与电容电阻组成了一个惯性环节,控制对象的输入与DA转换器的输出相连,控制对象的输出与AD转换器相连。
因为我们的DA的输出只能是一个正电压,这样一个正电压作为输入作用在积分环节的输入端,不管输出的电压值为多大,只要是一个正的数就会使电容不断充电,积分环节的输出端电压不断升高直到达到集成运放的最大输出值,从而导致对象的输出电压不断升高不能进行有效的控制。
所以我们在不能将DA转换器改为双极性按法的情况下,我将一个负2.5伏的电压通电一个1000听电阻与控制对象的输入端相连,人为的加上一个定值的负输入,这样一来我们的DA输出一个小于2.5伏的正电压时就相当于给对象一个负的输入,从而进行控制。
从最后的实验结果来看我们的坐法是有效的。
4.3AD部分电路设计
AD转换部分电路接线图如上图所示,由于实验箱上的74LS02蕊片不是按实验要求的连接的,我们并没有使用它。
我们的AD转换器工作在十二位转换方式下,采用十二位并行输出,但我们只将AD输出的高八位与单片机的P0口连接,只采集高八位信号,相当于使用一个八位AD转换器。
我们的AD采用的双极性连接方式。
正负五伏以内的电压从10VIN口进入AD,该模拟信号输入接口与控制对象的输出口OUT相连。
AD转换器的启动信号与单片机的P2.7口相连,转换完成信号与单片机的P2.6口相连。
当P2.7口由高变低时,AD转换器开始进行转换。
当转换安成后,AD把转换结果送上数据总线并将P2.6口置高,当单片机接P2.6的信号后读取P0口数据,转换结果进入单片机。
4.4按键部分电路设计
为了在单片机运行时能够调节输出电压,我们在电路中设计了几个按键,按键部分电路连接如上图所示。
我们共用了四个按键,按键一端与地相连接,另一端分别与单片机的P2口的低四位相连接。
当按键没用按下时,P2口由于内接上拉电阻的作用表现为高电平,当按键按下时为低电平,按下按键分别表示设定电压这一伏二伏三伏四伏。
5实验结果分析
实验实际控制效果如下图所示:
首先,电压设定值为1V,2V,3V,4V。
通过键盘选择,应用示波器观察到波形。
从示波器中看到,电压的稳定精度很高,大约在2.5%。
但调节时间较长,有45S左右,整体效果很好。
其中对调节时间过长,分析如下:
1单片机的运行速度比较慢。
还有单片机只能与电脑通信,在线运行,占用了很大部分时间。
2DA的精度为8位,输出的幅值不够宽。
3单片机进行乘,除法运算速度相对较慢。
6个人总结
在本次课程设计中我们组做的是二阶环节电压跟踪控制系统设计(采用单片机教学实验系统),做为我们这组的组长,前期工作是一起讨论题目加深我们对我组的同学对课程设计及其要求的理解,然后分配了各位同学的任务,我们根据每个人所领到任务查阅资料并接出自己的意见,我们再经过小组讨论,确定了系统的设计方案,在以后的实验过程中不断的修正设计方案,并得到了最终的设计。
课程设计一开始我们用半天的时间复习了设计中所要用到的蕊片的所用方法以及KEIL软件的操作及其与实验箱联合调试的方法。
然后在实验上搭建电路使AD与DA转换器工作起来,之后我们将控制对象连接到控制系统中进行PID参数的调节,最后完成设计。
在实验过程我们主要遇到了两个问题,一个是DA转换器由于内部以采用了单极性接法我们不能改为双极性接法,只能输出正的电压不能对控制对象进行有效的控制,而我们采用人为接入一个负的输入信号的方法来解决这个问题;另一个问题是AD转换器的实际连接与资料上的电路不同,使得我们一开始时不能将AD工作起来,我们采用了直接对AD的管脚进行控制的方法来解决了这个问题。
在这次课程设计过程中还有一个重大收获就是学会了PID参数的试凑整定法:
试凑法是通过计算机仿真或实际运行,观察系统对典型输入作用的响应曲线,根据各调节参数(
)对系统响应的影响,反复调节试凑,直到满意为止,从而确定PID参数。
试凑时,可参考PID各参数对控制系统性能的影响趋势,实行先比例、后积分、再微分的反复调整。
1.首先只确定比例系数,将
由小变大,使系统响应曲线略有超调。
此时系统无稳态误差或稳态误差已小到允许范围内,并且认为响应曲线已属满意,那么,只须用比例控制器即可,而最优比例系数
也就相应确定了。
2.若在比例调节的基础上,系统稳态误差太大,则必须加入积分环节。
整定时先将第一步所整定的比例系数略为缩小(如为原值的0.8倍),再将积分时间常数置成一个较大值并连续减小,使得在保持系统良好动态性能的前提下消除稳态误差。
这一步骤可反复进行,即根据响应曲线的好坏反复改变比例系数与积分时间常数,以期得到满意的结果。
3.3.若使用PI控制器消除了稳态误差,但系统动态响应经反复调整后仍不能令人满意,则可以加入微分环节,构成PID控制器。
在整定时,先将微分时间常数设定为零,再逐步增加
并同时进行前面1.2两步的调整。
如此逐步凑试,以获得满意的调节效果和控制参数。
在此次计算机控制技术课程设计中,我主要工作任务是完成程序的编写,学习AD574的应用,通过本次设计,自己AD574有了深刻的了解,更加熟练的掌握C语言的编程,收益甚多!
首先对AD574的学习,了解到。
AD574为12位逐次逼近型ADC芯片,并且
有两种电压输入方式,单极性工作时为0—10V和0—20V,双极性工作时输入-5V—+5V和-10V—+10V。
AD574可选择12位或8位转换。
在实际应用中,一开始AD574总是不工作,而程序的控制并没有错,最后经过我用万用表查看芯片每个脚的电平,才找到AD574的硬件接线与提供的资料不同,CE端并没有高电平,致使芯片不工作。
为了解决这个问题,我用线直接给芯片的6脚(CE)接上高电平。
通过实际应用AD574,我学会了将理论与实际相联系,学会了硬件电路的检查与排错。
其次写论文虽然不需要亲自编写出所有程序,但是对整个系统的结构及框架要有很清晰的认识,为此我与其他三名队员的交流讨论,当他们有了新的进展和突破后我就去向他们咨询,让他们把大概的原理及程序流程讲解给我,使自己与系统的进展保持同步。
在论文结构上我参考了往届的一些论文的结构并且认真阅读了课程设计的任务书及课程设计报告撰写的要求,然后觉得应该按照课程设计内容、课程设计要求、课程设计方案、设计功能说明、任务分工、程序流程图、个人总结、小组总结、源程序清单的结构来展开比较有利于把我们的设计方案的实现阐述清楚,在经过小组讨论确认后我便在其他组员设计程序时认真往各个框架内填充资料,及时把他们的设计思路更新到论文中来。
最后在排版中还遇到不少其它的问题,如页边距,行间距不符合要求,图片的命名不规范等,但是经过大家的多次审阅,这些问题还是得到了有效的解决。
总之,通过本次设计自己的文字编辑能力得到了很大的考验及提高,自己对计算机控制课程也有了深入了解。
通过本次课程设计对我很有感触。
在这次课程设计中有喜悦也有忧愁,但是更多的是忧愁啊!
在这次课程设计中遇到了很多问题。
我们这主的任务是做硬件电路焊接与调试。
主要的问题是在以下几个方面:
一:
在这次任务中需要设计一个控制器输出作用于二阶电路电路输入IN使得电路输出端能够跟踪0—5V范围内的任意阶跃信号。
并能通过示波器显示输出信号曲线。
首先得按照二阶模型电路图焊出电路板来,开始以为电路并不复杂,所以很简单,但我注意到要焊的美观,需要认真布线。
所以我花了半个小时分析电路布线情况,最后选择了一种用链接线最少的方式,这样可以减少因为焊线而引起的短路和断路等情况。
我通过每做一步就用万用表测试,看链接是否正确和是否焊接上。
通过这样认真的焊接每一步,最后板子终于焊接完成,并且非常漂亮!
二:
我负责A/D,D/A以及二阶模型电路的调试工作。
我不得不说这是一个漫长而无聊的过程。
D/A模块调试还算轻松,没有两个接口,并且正确链接上线就能正常工作了。
但是A/D转换模块就没这么听话了,由于以前用的A/D转换芯片和现在不一样,而引脚接发并没有改过来。
但是通过我对照书上的做,和用万用表不断测试其引脚的电压是否正常,最后终于发现有个引脚电压不正常,最后通过直接给这引脚加一个电压,从才使这个模块正常工作起来。
三:
在最后各个子程序结合到一起的时候出现了一些结合的问题,这个就是在我们组成员的相互商量中由组长最后制定了一个相对比较好的程序衔接了各个子程序。
这样就使得我们的各个程序之间能很好的在这个主程序下运行,使得我们能够做出任务的基本功能和扩展功能。
最后在这次课程设计中使我懂得了团队精神是非常重要的。
刚开始做的时候,觉得无从下手,因为书本上的知识学的比较浅,没有完全理解、吃透,根本不知道该做什么,也不知道自己能做什么,一时间茫然了。
随着我们组查资料,问同学,才渐渐的理解深入,才有些明白,但这都没有关系,也许正是因为这些原因我们才更需要做,要从中学到新知识,锻炼自己各方面的能力,为以后的工作,生活和学习奠定一个良好的基础。
从写这次论文中我们学到了很多知识,比如查阅资料,分析问题进而解决问题。
通过这次设计,让我们从被动的接受知识转到了主动学习知识。
我们认为达到了这个目的,这真是让人兴奋的一件事。
当然了,这其中离不开老师给与的教导,正是老师给了我这样一次机会,让我们学会独立解决问题,以及团队合作的重要。
我主要是来解决D/A转换,我选用了DAC0832芯片,DAC0832是8分辨率的D/A转换集成芯片。
与微处理器完全兼容。
这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。
D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
而且它的工作方式是根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:
直通方式、单缓冲方式和双缓冲方式。
DAC0832的主要特性参数如下:
分辨率为8位;
电流稳定时间1us;
可单缓冲、双缓冲或直接数字输入;
只需在满量程下调整其线性度;
单一电源供电(+5V~+15V);
低功耗,200mW。
7总结
通过本次课程设计,我们小组成员各有所获,受益匪浅!
首先这是一个集体协作的设计,要求大家群策群力,集思广益,通过设计大家进一步锻炼,加强了团队协作能力,以后的工作及继续深造打下了良好的社会基础。
然后,通过本次课程设计,使我们对单片机有了深入的认识,同时也明白了计算机控制的难点。
我们把以往学习的知识切切实实的应用到了实践中去,在实践中锻炼大家运用知识的能力,同时更体会到了理论和实践的差距及扎实的理论知识对实践的重要指导作用。
同时也深深领悟了“纸上得来终觉浅,绝知此事要躬行”的真谛。
这次课程设计还培养和加强了大家的信息检索及对新知识的学习能力,从刚开始的分头查找资料,到AD574,DAC0832的学习大家一致感觉到了自己这方面的能力有了显著提高。
还有不仅熟悉了书本上的单片机C语言的语句,把我们书本知识的学习运用到实际操作中,加深对理论知识的理解,提高我们的动手能力,而且对问题有了全面的结构性的认识,增强了自学的能力,为今后的学习和工作打下坚实的基础。
附录一:
源程序
#include
floatkp=0.5,ki=0.001,kd=3;//PID的三个参数值
floate1=0,e2=0,e=0;//误差变量
floatu=0,t;//预设电压给定值
sbitp27=P2^7;//AD的R/C口
sbitp26=P2^6;//AD的STS口
sbitp23=P2^3;//键盘输入口
sbitp22=P2^2;
sbitp21=P2^1;
sbitp20=P2^0;
intout;//数字量输出
intb=0;//积分分离变量
voidmain()
{
while
(1)
{
P2=0Xff;//键盘设置
if(p20==0)//预设值为1V
u=1;
if(p21==0)//预设值为2V
u=2;
if(p22==0)//预设值为3V
u=3;
if(p23==0)//预设值为4V
u=4;
p27=0;//AD574启动转换
p26=1;
while(p26!
=0)//判断是否转换完成
{p26=1;
}
e2=e1;//上次误差值
p27=1;//R/C=1AD574的输出
P1=0XFF;
e1=P1;//读AD574
e1=((e1-127)/127)*5;//计算采样电压值
e1=u-e1;//一次误差
e=e+e1;//误差累积
b=0;
if(e1>-0.5&&e1<0.5)//判断是否用积分项
{b=1;//采用积分分离的PID控制算法
}
t=kp*e1+b*ki*e+kd*(e1-e2);//计算PID输出值
out=(t+2.5)/0.02;//输出数字量计算
if(out>255)//使输出数字量在范围内
out=255;
if(out<0)
out=0;
P0=out;//输出给DA
}
}
附录二:
整体电路图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 课程设计
![提示](https://static.bingdoc.com/images/bang_tan.gif)