




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
成绩优 良 中 及格 不及格课 程 设 计课程名称单片机原理及应用课题名称水塔水位控制设计专 业电气工程及其自动化班 级1202班学 号201201010221姓 名指导老师李晓秀、肖峰、林国汉等2015年7月9日电气信息学院课程设计任务书课题名称单片机水塔水位控制姓 名专业电气工程及其自动化班级1202学号21指导老师课程设计时间2015年6月29日-2015年7月9日一、任务及要求设计任务:利用单片机为核心设计一个水塔水位控制系统,要求为控制水塔水位在规定的范围内。1) 水塔水位处于最高设定点和最低设定点之间。2) 低于最低设定点时控制水泵工作;高于最高设定点时停止工作;处于两者之间时保持先前状态不变。3) 检测水质洁度,低于标准时发出报警信号。设计要求: 1)确定系统设计方案; 2)进行系统的硬件设计; 3)完成必要的参数计算与元器件选择; 4)完成应用程序设计; 5)应用系统的硬件和软件的调试。2、 进度安排3、 第一周:周一:集中布置课程设计任务和相关事宜,查资料确定系统总体方案。周二周三:完成硬件设计和电路连接周四周日:完成软件设计第二周:周一周三:程序调试周四周五:设计报告撰写。周五进行答辩和设计结果检查。三、参考资料1、王迎旭等.单片机原理及及应用M. 2版.机械工业出版社,20122、胡汉才.单片机原理及其接口技术M.3版.清华大学出版社,2010.3、戴灿金.51单片机及其C语言程序设计开发实例M.清华大学出版社,2010 目录第1章 总体方案设计.11.1设计任务与要求11.2设计原理及设计思路11.3总体设计框图3第2章 硬件电路设计4 2.1 水位监测4 2.2 水质监测4 2.3 水位水质信号检测5 2.4 LED显示电路5 2.5 电机控制及水质报警电路6第3章软件设计7 3.1 程序流程图7 3.2 A/D0808转换程序7 3.3 LCD1602显示程序.7第4章 调试9 4.1 调试方法9 4.2 调试结果9第5章 总结12附录.13附录A 水塔水位控制系统原理图13附录B 程序清单14 第1章 总体方案设计1.1设计任务与要求 设计任务:利用单片机为核心设计一个水塔水位控制系统,要求为控制水塔水位在规定的范围内。1)水塔水位处于最高设定点和最低设定点之间(本次假定水深为5M)。2)低于最高设定点时控制水泵工作;高于最高设定点时停止工作;处于两者之间时保持先前状态不变。3)检测水质洁度,低于标准时发出报警信号。 设计要求:1)确定系统设计方案;2)进行系统的硬件设计;3)完成必要的参数计算与元器件选择;4)完成应用程序设计;5)应用系统的硬件和软件的调试。1.2设计原理及设计思路分析课题可知应分两个电路来实现系统的功能,一是水位控制电路,二是水质检测电路。1.2.1水塔水位控制系统思路常见水塔水位控制原理如图1.2所示,图中虚线表示容许水位变化的上下线,单片机检测b、c所连的单片机管脚的高低状态,通过控制电机使保持水位在虚线范围之内。 但在本设计中,更为人性化的加入深度显示,为用户提供了更好的使用体验。具体实施方案如图2所示。水深传感器采用MH1160型投入式液位变送器,深度传感器输出与水深成正比的420mA标准信号电流(可测最深水深为100m),经过电阻后转换为模拟电压值,A/D转换后送入到单片机,得到此时的水深H,并在LCD1602上显示水深值。如果水深H在最高限制之内,则电机工作抽水,如果达到最大水深,则电机停转。水质检测得到的模拟电压值经过A/D转换后,送入单片机,如果其值超过预设值,红灯会亮,表示水质超标。 图1.2 水位感应原理图1.2.2水质监测电路思路 水质监测电路是根据不同的模拟量(本次课设的模拟量是电压)的输入,转换为不同的数字量,经过和设定的值进行比较后,由单片机产生不同的驱动信号,从而使对应的二极管发光,以显示不同的水质状态。一般会检测浑浊度使用光控二极管,根据水质的不同,接受的照强度不同,给出的电压不同来监测。本次模拟电压最高5v,当接收电压0-2.5v,表明水质良好,此时等不显示,当接受电压2.5-5v时。表明水质变坏,LED屏上显示水质的变化程度如下表: 表1.2.2报警灯的工作原理模拟电压LED显示02.5VLED灯暗05VLED灯亮1.3总体设计框图电流信号 模拟电压值 模数转换液晶显示 单片机水深传感器 图1.3.1总设计框图 第2章 硬件电路设计 水塔水位控制系统主要有CPU(AT89C51)、水位和水质检测电路、报警电路、电机控制电路和时钟振荡等部分组成。2.1水位监测图2.1水位监测系统 如图2.1,控制滑动变阻器,输出不同电压给AD转化器,再传给C51单片机,由单片机控制单机的转动,控制显示器显示水位变化。2.2水质监测图2.2.1水位监测系统 调节输出信号,不同的信号传给AD转换器,AD转化器转化成数字信号传给C51单片机后单片机在把水质信号显示在显示器,与此同时当水质超过一定范围警示灯亮。2.3水位水质检测信号图2.3.1 本设计中直接用两个滑动变阻器模拟水位传感器得到的模拟值和水质检测的模拟值。水深传感器出来的信号是与水深成正比的线性模拟电压值,电压变化范围为0到5伏,故在本设计中直接用滑动变阻器模拟水位的无极变化。2.4 LED显示电路 图2.3.2 LCD1602显示电路 LCD1602的管脚定义如表2.3.2所示。LCD1602与51单片机采用并行数据传输,P1口与LCD1602的8位数据口连接,51单片机的P2.5与数据/命令选择端(RS)端连接,P2.6与读/写选择端(R/W)连接,P2.7与使能信号端连接。LCD1602的具体操作具体请见软件设计部分。LCD1602分两行显示,当超过最高值时,第一行后面会由“normal”变成“abnormal”;第二行为水质检测显示,当超过预设值时,同样也会变成“abnormal”。2.5电机控制及水质报警电路 图2.3.3水位检测接口电路、故障声光报警电路 51单片机P3.5口控制灯D1,只要水质检测结果超过预设值,即低于标准,P3.5口就会输出高电平点亮D1。电机在水位没有达到最高之前电机状态不变,一旦到达最大值,P3.4口输出低电平,使电机停止工作。本设计的硬件电路设计说明如下:1.使用8051单片机,数模转换芯片使用ADC0808。2.水位信号输入到ADC0808的IN0口,水质检测输入到ADC0808的IN1口,在Proteus中搭建仿真模型时,用滑动变阻器上的电压值分别模拟水位信号和水质检测信号。3.控制信号由P3.4口控制电机,P3.5输出报警信号,控制灯的亮灭。 第3章软件设计3.1程序流程图如图 图3.1.1程序流程图3.2 A/D0808转换程序 A/D转换可采用查询和中断的方式,查询是指单片机通过不断循环的查询单片机I/O口的是否有数据,有数据就接受AD0808的转换结果。但这种方式实时性不高,耗费的单片机资源多,为了强调更好的实时性,在本设计中采用中断的方式,当AD0808转换完成时,才采集数据。3.3 LCD1602 显示程序 LCD初始化程序: void init() lcden=0; lcdrw=0; write_com(0x38);/LCD显示模式 write_com(0x0c);/打开显示,打开光标 write_com(0x06);/地址自加,整屏不移动 write_com(0x01);/清屏 写数据到LCD1602: void write_data(uchar date) lcden = 0; lcdrs = 1; /表示写入数据 P1 = date; /数据即为P1口数据 delay(5); lcden=1; delay(5); lcden=0; LCD写命令程序: void write_com(uchar com ) lcden = 0; lcdrs = 0;/进入命令写入模式 P1 = com; delay(5); lcden=1; delay(5); lcden=0; 第4章 调试4.1调试方法 本次课设是仿真调试。运用protues软件进行仿真检验。在元件库中找到所需要的元器件,把它们按照原理图依次连接起来,反复检查线路看是否有错。确定无误后就可以开始仿真水塔水位控制系统了。给单片机导入预先编程好的程序“.hex”文件,点击仿真。4.2调试结果下面是使用protues仿真得出的结果:4.2.1水位调试 图4.2.1水位调试最大水位 图为4.2.1显示水满的时候电动机停转,显示器显示4.2.2水位调试 图4.2.2水位调试你水位未满4.2.3水质显示结果 图4.2.3水质调试水质良好 图4.2.4水质系统调试水质变坏 第5章 总结随着科学技术的迅猛发展,单片机被广泛应用于人们生活的各个领域,社会需要大量掌握单片机技术的人才,单片机的使用方法应该是我们熟练掌握的内容,水塔水位的单片机控制系统水塔水位控制在铁路、油田、化工等部门有着广泛的应用。 课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,从理论到实践,在接近四星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。通过这次的课程设计,理论加上实践,我掌握了80C51单片机的基本工作原理和基本编程方法,熟悉了A/D转换器ADC0808的功能和使用方法,还可以根据需要对单片机进行扩展。在此过程中我还熟悉了单片机的软硬件开发环境,提高了综合演练单片机的编程能力,并且亲身体验了单片机的开发成果。此次课程设计之后,我对单片机知识点了解了更多,脑海中能把一个个分离的知识模块联系成整体,让后对其进行分析与比较。在单片机课程中的部分知识学会了融会贯通,也让我深刻认识到“学以致用”的重要性。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,对给过我帮助的所有同学和各位指导老师表示忠心的感谢!附录附录A 水塔水位控制系统原理图附录B 程序清单#include reg51.h #include #define uchar unsigned char #define uint unsigned intuchar code normal=normal ;uchar code abnormal=abnormal;sbit ST_ALE=P30; /START and ALE both connect to P3.0 sbit EOC=P31; /EOC connect to P3.1 sbit OE=P32; /OE conect to P3.2 sbit CLK=P33; sbit lcdrs=P24;sbit lcdrw=P25;sbit lcden=P26;sbit beep=P34;sbit led=P35;unsigned char CHANNEL; /AD channel variable uchar code num=0123456789; void delay(uint x)uint i;for(;x0;x-)for(i=110;i0;i-);void write_com(uchar com )lcden = 0;lcdrs = 0;/P1 = com;delay(5);lcden=1;delay(5);lcden=0;void write_data(uchar date)lcden = 0;lcdrs = 1;/n.1 write into the data;P1 = date;delay(5);lcden=1;delay(5);lcden=0; void init() lcden=0;lcdrw=0;write_com(0x38);/write_com(0x0c);/write_com(0x06);/write_com(0x01);void display(uchar channel) unsigned long temp; unsigned char DATA,count,digit4; unsigned int k=0,i=0; DATA=P0; /save AD data temp=DATA; /the temporary variable temp=temp*1000/51; /AD formula:D=A*5/255 digit0=temp/1000; /the thousands place digit1=temp%1000/100; /the hundreds place digit2=temp%1000%100/10; /the tens place digit3=temp%1000%100%10; /the ones place if(channel=0) write_com(0x80); write_data(m);write_data(1);write_data(=);write_data(numdigit0);write_data(.);write_data(numdigit1);write_data(numdigit2);write_data(numdigit3);write_com(0x80+0x08);if(DATA0x40)for(count=0;count=0xF0) beep=0;else for(count=0;count0x80)for(count=0;count8;count+)write_data(abnormalcount);led=1;else for(count=0;count8;count+)write_data(normalcount); led=0; void main() CHANNEL=0xF8; /AD channel 0 ST_ALE=0; /START and ALE default OE=0; /OE default TMOD=0x02; /T0 operate in mode 2 TH0=0xFF; /auto load value TL0=0xFF; /default value EA=1; /all interrupt enable ET0=1; /T0 interrupt enable TR0=1; /T0 run init(); beep=0; led=0; while(1) P2=0x07&CHANNEL; /choose AD channel ST_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 渔池开发养殖合同范本
- 2025年病理学病理标本解剖鉴定答案及解析
- 公司承包物业合同范本
- 割板合同范本
- 家具邮寄服务合同范本
- 2025年安庆某国有企业公开招聘工作人员13名考试参考试题及答案解析
- 2025年宿州中煤三建二十九工程处项目部副经理招聘备考练习试题及答案解析
- 机械外包加工合同范本
- 内部股份协议合同范本
- 2025年康复医学运动训练方案设计模拟考核卷答案及解析
- 建设工程项目协同作业方案
- GB/T 45972-2025装配式建筑用混凝土板材生产成套装备技术要求
- 变频及伺服应用技术(郭艳萍 钟立)全套教案课件
- 秋冬季安全知识培训
- 2024新译林版英语八年级上单词汉译英默写表(开学版)
- 美的集团工作流程体系
- 2025年中国冷冻治疗仪市场调查研究报告
- 新学期+心动力+课件-2025-2026学年高二上学期开学第一课主题班会
- (2025年标准)出资收车协议书
- 2025-2026学年外研版(三起)(2024)小学英语四年级上册教学计划及进度表
- 《家具与陈设设计》课件(共十章)
评论
0/150
提交评论