《花式喷泉的单片机控制系统设计(共24页).doc》由会员分享,可在线阅读,更多相关《花式喷泉的单片机控制系统设计(共24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上 课程名称:自动控制课程设计设计题目: 花式喷泉的单片机控制 院 系: 专 业: 年 级: 姓 名: 指导教师: 西南交通大学峨眉校区 2010年 7 月 22 日专心-专注-专业课 程 设 计 任 务 书专 业 姓 名 学 号 开题日期:2010年 7 月 14 日 完成日期:2010年 7 月 22日题 目 花式喷泉的单片机控制 一、 设计的目的进一步掌握单片机控制系统的软件、硬件设计方法和步骤,提高思 维逻辑判断能力,训练自我综合运用已学课程的基本知识,独立进行单片机应用技 术和开发工作,掌握单片机程序设计、调试和应用电路设计、分析及调试检测。 二、 设计的内容
2、及要求 本课程设计以8051单片机为基础,通过控制程序,实现可选择、可输入 的多种方式的单步、连续自动运行,以实现自动控制的目的。 三、 指导教师评语 四、成 绩 指导教师 (签章) 年 月 日基于MCS51单片机的花式喷泉控制摘要:本设计是一种基于单片机的花式喷泉控制方案,通过单片机实现对喷泉喷水样式的的控制。本方案以单片机作为主控核心,通过编写合理的控制程序实现对多个电磁阀不同方案的顺序控制,从而达到控制喷水阀开关的目的,以此来控制不同喷泉样式的形成。本系统具有体积小、硬件少、电路结构简单及容易操作和阅读等优点,通过更改控制程序,还可形成更多的喷泉样式。该控制器实际应用效果较好,运行模式多
3、。与其他喷泉控制相比,具有体积小、价格低、低能耗等优点。在能源比较匮乏的今天,这种控制装置具有重大的现实意义和深远的历史意义,它不仅能够改善人们的生活质量,还能为节约能源作出重大的贡献。关键字:花式喷泉 控制程序 电磁阀 低能耗 单片机目录摘要-1第一章 绪论-1l 国内外研究状况及选题的意义-1l 单片机的简介 -2n 单片机发展概述-2n 单片机的应用领域-3n MCS-51系列单片机简介-4第二章 喷泉控制设计任务及要求-7l 概述-7l 设计任务及要求:-8第三章 喷泉控制硬件设计-8l 输入输出管理-8l 硬件接线图-8l 喷泉控制系统的控制流程图-8l 操作指示-9第四章 喷泉控制
4、程序设计-10l 主程序-11l 方式1子程序-12l 方式2子程序-12l 方式3子程序-13l 方式4子程序-13l 延时1S程序-14l 延时2S程序-14第五章 调试与模拟- 15l 编译结果- 15l 仿真截图- 19第六章 参考文献- 20第一章 绪论 随着人们生活环境的不断改善和美化,在许多休闲广场、景区、居住小区和游乐场里,经常可以看到喷泉按一定的规律喷水或变化样式,若在夜晚配上各种彩色的灯光显示,更加迷人。喷泉是极富生命力的人工景观,它将水体、灯光、音乐的变化与周围环境(建筑、园林)结合在一起,创造出各种变化多端、风格各异的艺术氛围,给人以无穷的视听享受。此外,音乐喷泉还具有
5、空间层次的分隔、生活环境的美化以及空气的净化等作用1。l 国内外研究状况及选题的意义喷泉作为一项建筑艺术,在国内外均有较悠久的历史。而喷泉的构思及萌生则是本世纪30年代开始的,1930年,德国的OTTOPRZYSTAWIK(奥图皮士特霍)首先提出了喷泉与相结合的设想,并设计成小型装置应用于酒店及商场,其后则逐步发展到大型化及多样化。GUNTER PRZYSTAWIK继承父业使喷泉更为多姿多采,并于l952年夏在西柏林工业展览会上进行展示,经纽约一摄影师将其引进应用于纽约无线电厅,从此,喷泉陆续在世界各地应用推广,目前,西方工业发达国家已有制造喷泉成套装置的专业工厂、如美国的WALTZING,M
6、IDAS加拿大的PEM,意大利的NeonALPina日本的KAWAMURA 等公司2。随着喷泉市场的需求越来越大,国内关于喷泉的研究与开发工作也蒸蒸日上。我国在80年代中期相继引进和自行设计建造了多座喷泉,为美化环境,活跃人民的文化生活起了良好的作用。据不完全统计,2006年整个喷泉行业年总产值也早已达到几十亿元以上。同时我国行政主管和技术监督部门、学术团体和出版界等,也为推动喷泉技术的发展做了不少工作:1989年出版的给水排水设计手册,第一次将“水景设计”以专章列入设计手册;1989年出版、1990年开始施行的建筑给水排水设计规范,第一次将“喷泉设计”以专节列入国家设计规范;1990年出版了
7、第一本专门著作喷泉设计;1991年在中国土木工程学会建筑给水排水委员会和中国标准化协会建筑给水排水委员会的大力推动下,成立了第一届“全国喷泉研讨会”,有关喷泉的专门设计规程和术语标准等也公开发布执行3。喷泉以其水柱绚丽多姿,水柱随着而跳动,给人以视觉和听觉的双重享受。大型的喷泉功能齐全,规模大,有很强的震撼力,适用于大型广场,对软硬件要求高,投资大。随着人民生活水平的提高,对美化住宅小区以及别墅环境的要求越来越高,小型化喷泉成为一个发展方向。大型喷泉的科技含量高,设计和制造难度大。目前,我国的大型喷泉技术已日趋成熟,但对小型喷泉的研究较少,小型喷泉存在着协调性能差等缺点。小型喷泉系统适用于住宅
8、小区和酒店厅堂等场所,一个好的喷泉就是一个精美的艺术品,可以美化环境、愉悦身心。而其控制系统是整个喷泉的关键。对小型喷泉控制系统的研究具有很大的经济效益和社会效益。l 单片机的简介 4 单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算,逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换器及A/D转换器等电路集成到一块单块芯片上,构成一个最小而完善的计算机系统。这些电路能
9、在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。 n 单片机发展概述 1946年第一台计算机诞生至今,只有50年的时间,依靠微技术和半导体技术的进步,从管晶体管集成电路大规模集成电路,现在一块芯片上完全可以集成几百万甚至上千万只晶体管,使得计算机体积更小,功能更强。特别是近20年时间里,计算机技术获得飞速的发展,计算机在工农业,科研,教育,国防和航空航天领域获得了广泛的应用,计算机技术已经是一个国家现代科技水平的重要标志。 单片机诞生于20世纪70年代,所谓单片机是利用大规模集成电路技术把中央处理单元(Center Processing Unit,也即常称的CPU)和数据存储器(
10、RAM)、程序存储器(ROM)及其他I/O通信口集成在一块芯片上,构成一个最小的计算机系统,而现代的单片机则加上了中断单元,定时单元及A/D转换等更复杂、更完善的电路,使得单片机的功能越来越强大,应用更广泛。 20世纪70年代,集成电路属于中规模发展时期,各种新材料新工艺尚未成熟,单片机仍处在初级的发展阶段,元件集成规模还比较小,功能比较简单,一般均把CPU、RAM有的还包括了一些简单的I/O口集成到芯片上。80年代,世界各大公司均竞相研制出品种多功能强的单片机,约有几十个系列,300多个品种,此时的单片机均属于真正的单片化,大多集成了CPU、RAM、ROM、数目繁多的I/O接口、多种中断系统
11、,甚至还有一些带A/D转换器的单片机,功能越来越强大,RAM和ROM的容量也越来越大,寻址空间甚至可达64kB,可以说,单片机发展到了一个全新阶段,应用领域更广泛,许多家用电器均走向利用单片机控制的智能化发展道路。 1982年以后,16位单片机问世,九十年代以后,单片机获得了飞速的发展,世界各大半导体公司相继开发了功能更为强大的单片机。美国Microchip公司发布了一种完全不兼容MCS-51的新一代PIC系列单片机,引起了业界的广泛关注,特别它的产品只有33条精简指令集吸引了不少用户,使人们从INTEL的111条复杂指令集中走出来。PIC单片机获得了快速的发展,在业界中占有一席之地。 199
12、0年美国INTEL公司推出了80960超级32位单片机引起了计算机界的轰动,产品相继投放市场,成为单片机发展史上又一个重要的里程碑。单片机园地里,单片机品种异彩纷呈,争奇斗艳。有8位、16位甚至32位机,但8位单片机仍以它的价格低廉、品种齐全、应用软件丰富、支持环境充分、开发方便等特点而占着主导地位。而INTEL公司凭着他们雄厚的技术,性能优秀的机型和良好的基础,目前仍是单片机的主流产品。n 单片机的应用领域 5单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、
13、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用数字电路更加强大。 2.在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到秤量设备,五花八门,无所不在。
14、4.在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5. 单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。 n MCS-51系列单片机简介6 MCS-51
15、引脚图MCS-51单片机内部逻辑结构图MCS51系列单片机引脚及总线结构下面分别说明DIP封装的40个引脚的功能 1) 电源及复位引脚 (1) VCC(40脚):电源端,接5V。 (2) VSS(20脚):接地端。 (3) RST/VPD (9脚):RST即为RESET, 为备用电源。该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机回复到初始状态。当 电源降低到低电平时,RST/ 线上的备用电源自动投入,以保证片内RAM中的信息不丢失。 (4) EA /VPP (31脚): 为片内外程序存储器选用端。该引脚为低电平时,
16、只选用片外程序存储器;该引脚为高电平时,先选用片内程序存储器,然后选用片外程序存储器。 片内EPROM编程电压输入端,当用作编程时,输入21V编程电压。2) 晶体振荡器接入或外部振荡信号输入引脚 (1) XTALl(19脚):晶体振荡器接入的一个引脚。采用外部振荡器时,此引脚接地。 (2) XTAL2(18脚):晶体振荡器接入的另一个引脚。采用外部振荡器时,此引脚作为外部振荡信号的输入端。 3) 地址锁存及外部程序存储器编程脉冲信号输出引脚 ALE/ PROG(30脚):地址锁存允许信号输出/编程脉冲输入引脚。ALE为地址锁存允许信号输出引脚,当8051单片机上电正常工作时,自动在该引脚上输出
17、频率为fosc/6的脉冲序列。当CPU访问外部存储器时,此信号作为锁存低8位地址的控制信号。 为编程脉冲输入引脚,在对片内ROM编程写入时,作为编程脉冲输入端。4) 外部程序存储器选通信号输出引脚 PSEN(29脚):外部程序存储器选通信号,低电平有效。当从外部程序存储器读取指令或数据期间,每个机器周期该信号两次有效,以通过数据总线P0口读取指令或数据。 5) I/O引脚 (1) P0.0P0.7:8位数据/低8位地址复用总线端口。(2) P1.0P1.7:静态通用I/O口。(3) P2.0P2.7:高位地址总线端口。(4) P3.0P3.7:双功能端口。复位状态复位就是使中央处理器(CPU)
18、以及其他功能部件都恢复到一个确定的初始状态,并从这个状态开始工作。单片机在开机时或在工作中因干扰而使程序失控或工作中程序处于某种死循环状态等情况下都需要复位。MCS51单片机的复位靠外部电路实现,信号由RESET(RST)引脚输入,高电平有效,在振荡器工作时,只要保持RST引脚高电平两个机器周期,单片机即复位。复位后,PC程序计数器的内容为0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。其他特殊功能寄存器的复位状态见下表7第二章 喷泉控制设计任务及要求l 概述8 如下图所示为一花式喷泉,采用单片机控制是比较方便的,在画室喷水时序确定的前提下,可以通过改变时序或者改变控制开关
19、,就可改变控制方式,达到显示各种复合状态的要求。在途中,4为中间喷水管,3为内环状喷水管,2为一次外环状喷水管,1为外环状喷水管。 l 设计任务及要求9:1. 控制器电源开关接通后,按下启动按钮,喷水装置即开始工作。按下停止按钮,则停止喷水。工作方式由选择开关和单步连续开关来确定。2. 单步连续开关在单步位置时,喷泉只运行一次循环,在连续位置时,喷泉运行一直继续下去。3. 方式选择开关用来选择喷泉的喷水花样,14好喷水管的工作方式选择如下: 选择开关在位置“1”时,按下启动按钮,4号喷水,延时2s,3号也喷水,延时2s,2号接着喷水,再延时2s,1号喷水,这样一起喷水15s后停止。若在连续状态
20、下,将继续循环下去。 选择开关在位置“2”时,按下启动按钮,1号喷水,延时2s,2号也喷水,延时2s,3号接着喷水,再延时2s,4号喷水,这样一起喷水30s后停止。若在连续状态下,将继续循环下去。 选择开关在位置“3”时,按下启动按钮,1、3号同时喷水,延时3s,2、4号也喷水,1、3号停止喷水,交替运行5次后,14号全喷水,这样一起喷水30s后停止。若在连续状态下,将继续循环下去。 选择开关在位置“4”时,按下启动按钮,喷泉14号水管的工作顺序为:1-2-3-4接顺序延时2s喷水,让后一起喷水30s,1、2、3、4分别延时2s停水,在延时1s,由4-3-2-1反响顺序按2s顺序喷水,一起喷水
21、30s后停止。若在连续状态下,将继续循环下去。4.不论在什么工作方式下,按下停止按钮,喷泉即停止运行。第三章 喷泉控制硬件设计l 输入输出管理输入P0.0启动按钮P0.1 停止按钮P0.2 单步/连续选择开关P0.3 选择开关在位置1P0.4 选择开关在位置2P0.5 选择开关在位置3P0.6 选择开关在位置4其中 P0.2=1 表示单步 P0.2=0 表示连续 输出 P1.0 喷泉工作指示P1.1 1号喷水电磁阀P1.2 2号喷水电磁阀P1.3 3号喷水电磁阀P1.4 4号喷水电磁阀l 硬件接线图由于设备有限,在此将电磁阀改为发光二极管,以便与模拟和实验。在实际应用中,可将输出口接至晶闸管的
22、门极上,以此来控制晶闸管的通断,从而控制电磁阀得电与失电。 l 喷泉控制系统的控制流程图开始初始化,复位P1口 无 检测有无输入信号有检测单步、连续检测P0.3-P0.6口 无检测启动信号 有 调用子程序子程序 根据P0.3-P0.6口 调用相应的子程序 调用延时程序延时程序 返回 返回 是检查有无停止信号 无检测是否连续 有 否结束l 操作指示首先接通电源,开启单片机,选择单步或是连续开关,若关闭该开关,表示连续,否则表示单步,然后选择方式选择开关,最后关闭启动开关,控制系统则开始运行,并调用相对应的子程序和延时程序。当闭合停止开关时,系统停止工作。第四章 喷泉控制程序设计n 主程序ORG1
23、000HLOOP26:MOVP1,#00H;复位P1口MOVA,#FFHLOOP1:CJNEA,P0,LOOP2;检测有无输入信号SJMPLOOP1;如无,则等待LOOP2:MOV01H,82H;保存单步、连续信号LOOP3:JNBP0.3,LOOP4;检测方式选择信号JNBP0.4,LOOP5JNBP0.5,LOOP6JNBP0.6,LOOP7SJMPLOOP3;如无方式选择信号,则等待LOOP4:JBP0.0LOOP4;检查有无启动信号,若无则等待LOOP8:LCALLP03;调用方式选择1子程序JNBP0.1,LOOP;检测有无停止信号JB01H,LOOP;检测连续与单步,如连续则继续调
24、用子程序SJMPLOOP8LOOP5:JBP0.0LOOP5;检查有无启动信号,若无则等待LOOP9:LCALLP04;调用方式选择2子程序JNBP0.1,LOOP;检测有无停止信号JB01H,LOOP;检测连续与单步,如连续则继续调用子程序SJMPLOOP9LOOP6:JBP0.0LOOP6;检查有无启动信号,若无则等待LOOP10:LCALLP05;调用方式选择3子程序JNBP0.1,LOOP;检测有无停止信号JB01H,LOOP;检测连续与单步,如连续则继续调用子程序SJMPLOOP10LOOP7:JBP0.0LOOP7;检查有无启动信号,若无则等待LOOP11:LCALLP06;调用方
25、式选择4子程序JNBP0.1,LOOP;检测有无停止信号JB01H,LOOP;检测连续与单步,如连续则继续调用子程序SJMPLOOP11LOOP:MOVP1,#00HMOVP0,#FFHSJMPLOOP26END;主程序结束n 方式1子程序ORG2050HP03:MOVR0,#07HSETBP1.0;开启工作指示灯SETBP1.4;4号喷水LCALLS2;调用延时程序SETBP1.3;3号喷水LCALLS2;调用延时程序SETBP1.2;2号喷水LCALLS2;调用延时程序SETBP1.1;1号喷水LOOP20:LCALLS2;延时15SDJNZR0,LOOP20LCALLS1MOVP1,#0
26、0HRET;返回n 方式2子程序ORG2100HP04:MOVR0,#0FHSETBP1.0;开启工作指示灯SETBP1.1;1号喷水LCALLS2;调用延时程序SETBP1.2;2号喷水LCALLS2;调用延时程序SETBP1.3;3号喷水LCALLS2;调用延时程序SETBP1.4;4号喷水LOOP21:LCALLS2;延时30SDJNZR0,LOOP21MOVP1,#00HRET;返回n 方式3子程序ORG2200HP05:MOVR0,#05HMOVR1,#0FHSETBP1.0;开启工作指示灯LOOP22:MOVP1,#0BH;1、3同时喷水LCALLS2;延时3SLCALLS1MOV
27、P1,#15H;2、4同时喷水LCALLS2;延时3SLCALLS1DJNZR0,LOOP22;循环5次MOVP1,#1FH;1-4同时喷水LOOP23:LCALLS2;延时3SDJNZR1,LOOP23MOVP1,#00HRET;返回n 方式4子程序ORG2300HP06:MOVR0,#0FHSETBP1.0;开启工作指示灯MOVP1,#E3H;1-2-3-4接顺序延时2SMOVA,P1LCALLS2RLAMOVP1,ALCALLS2RLAMOVP1,ALCALLS2RLAMOVP1,ALOOP24:LCALLS2;延时30SDJNZR0,LOOP24MOVR0,#0FHRRA;1、2、3、
28、4分别延时2S停水MOVP1,ALCALLS2RRAMOVP1,ALCALLS2RRAMOVP1,ALCALLS2MOVP1,#01HLCALLS1MOVP1,#11HLCALLS2MOVP1,#19HLCALLS2MOVP1,#1DHLCALLS2MOVP1,#1FHLOOP25:LCALLS2;延时30SDJNZR0,LOOP25MOVP1,#00HRETn 延时1S子程序ORG2400HS1:MOV30H,#06HL:MOVR2,#0AHL2:DJNZR2,L2DJNZ30H,LRETn 延时2S子程序ORG2500HS2:MOV30H,#0CHL5:MOVR2,#0AHL3:DJNZR
29、2,L3DJNZ30H,L5RETEND第五章 调试与模拟l 编译结果 安徽工程科技学院 计算机科学与工程系 谢永宁 1ORG1000H 1000 2LOOP26:MOVP1,#00H;复位P1口 1003 74FF 3MOVA,#FFH 1005 B58002 4LOOP1:CJNEA,P0,LOOP2;检测有无输入信号 1008 80FB 5SJMPLOOP1;如无,则等待 100A 6LOOP2:MOV01H,82H;保存单步、连续信号 100D 30830B 7LOOP3:JNBP0.3,LOOP4;检测方式选择信号 1010 8JNBP0.4,LOOP5 1013 9JNBP0.5,
30、LOOP6 1016 30862C 10JNBP0.6,LOOP7 1019 80F2 11SJMPLOOP3;如无方式选择信号,则等待 101B 2080FD 12LOOP4:JBP0.0LOOP4;检查有无启动信号,若无则等待 101E 13LOOP8:LCALLP03;调用方式选择1子程序 1021 30812F 14JNBP0.1,LOOP;检测有无停止信号 1024 20012C 15JB01H,LOOP;检测连续与单步,如连续则继续调用子程序 1027 80F5 16SJMPLOOP8 1029 2080FD 17LOOP5:JBP0.0LOOP5;检查有无启动信号,若无则等待 1
31、02C 18LOOP9:LCALLP04;调用方式选择2子程序 102F 19JNBP0.1,LOOP;检测有无停止信号 1032 20011E 20JB01H,LOOP;检测连续与单步,如连续则继续调用子程序 1035 80F5 21SJMPLOOP9 1037 2080FD 22LOOP6:JBP0.0LOOP6;检查有无启动信号,若无则等待 103A 23LOOP10:LCALLP05;调用方式选择3子程序 103D 24JNBP0.1,LOOP;检测有无停止信号 1040 25JB01H,LOOP;检测连续与单步,如连续则继续调用子程序 1043 80F5 26SJMPLOOP10 1
32、045 2080FD 27LOOP7:JBP0.0LOOP7;检查有无启动信号,若无则等待 1048 28LOOP11:LCALLP06;调用方式选择4子程序 104B 29JNBP0.1,LOOP;检测有无停止信号 104E 30JB01H,LOOP;检测连续与单步,如连续则继续调用子程序 1051 80F5 31SJMPLOOP11 1053 32LOOP:MOVP1,#00H 1056 7580FF 33MOVP0,#FFH 1059 80A5 34SJMPLOOP26 105B 35END;主程序结束 36ORG2050H;方式1子程序 2050 7807 37P03:MOVR0,#0
33、7H 2052 D290 38SETBP1.0;开启工作指示灯 2054 D294 39SETBP1.4;4号喷水 2056 40LCALLS2;调用延时程序 2059 D293 41SETBP1.3;3号喷水 205B 42LCALLS2;调用延时程序 205E D292 43SETBP1.2;2号喷水 2060 44LCALLS2;调用延时程序 2063 D291 45SETBP1.1;1号喷水 2065 46LOOP20:LCALLS2;延时15S 2068 D8FB 47DJNZR0,LOOP20 206A 48LCALLS1 206D 49MOVP1,#00H 2070 22 50RET;返回 51ORG2100H;方式2子程序 2100 780F 52P04:MOVR0,#0FH 2102 D290 53SETBP1.0;开启工作指示灯 2104 D291 54SETBP1.1;1号喷水 2106 55LCALLS2;调用延时程序 2109 D292 56SETBP1.2;2号喷水 210B