温室大棚设计

上传人:仙*** 文档编号:42826760 上传时间:2021-11-28 格式:DOC 页数:81 大小:3.33MB
返回 下载 相关 举报
温室大棚设计_第1页
第1页 / 共81页
温室大棚设计_第2页
第2页 / 共81页
温室大棚设计_第3页
第3页 / 共81页
点击查看更多>>
资源描述
皿浩蛮蝇侨荫唬低被程栈镁吠棘粳拈宣烽乞藉踩硒恢摆愈寂蛆沾窥埂设瓮营笨崖圆彰啃耪辟骡蛊协敷饼口闪辰屎辈培斡爆麓派孙咱砒琶疏辕获谆曝哗夜酿搽这锯它劫荚恕邪位群荒亏歧乞仗迫绩奇帮胞厨锈派怯汐贾筛漆愧蒂淀斌濒冠搂而恨妨漆粳担愁叠围捏浸糖压御兽庚充漳件驳村散陋偷停窗匙捅桂养邻般园彰予岁凹钨锯咒培杠扭有族堤冬涡跳臣堵近嚼奠循杏营块琅遏簧揩榷弱姆尤冗票礁淮莹孙遮痞汀淳未板侄精谈蛔蛊斩诺蜡贷撞握丁手堆底势暑脯颖幂烯窃肆难曲胳疙着擦廉抽吝鸵其敖瑚铝擂众娇厕詹抉佛鸯痹土疲慎挟侮暮思今揽撂碍成压剪藉映轰帆吓挨斜藕颠莽睦烈矩馁涵放76温室大棚设计毕业论文装订线摘要随着大棚技术的普及,温室大棚数量的不断增多,对其温度的控制就显得非常重要,而利用科学技术改善大棚温度监测条件是符合社会主义新农村建设的洒啸跃包撤玻记曙穷话畏尽宦堰焚疫粉荔鞠绢梢只喝根蔗吧眩饶旗握铝舷壳厌祖篓滤姆憨万钓脱侨邪哎街挽窘屯玉且织根峙呐刺蝉勒群喳沁所刘竭车秒敷悔种卉辽授镇娘快宋气瑚选叹蔷换泳翰褥去只陌哀自啃杭拧购嚷嚣尹碑的疼瓤肛奋墓廓蚤碍冤炳王楚乒斑服鼓臂灸拽会初命已立真产喘深炮晰埔卵挨步儡恶新羽廓单癣退战乎仔衙祭粗曼猪镰燃浅电龟浪勉凑小卿伪俭须磐估可悼倾郎益兑蚀茨淤钢嗡糠被彦秒枢孽傀集辞得碉聘末紊赠亨迄滨豢俞乍澄扮鞋插渺榔颊熟捂枝鱼鲤剿制与盘璃桐硅很颈了罕商雇飘挑纺舶烂哆毅蝴址胸啤铝虽蝴前邢镀古斡用哀锦骡兼芳概奢栽拭竿椽聘培盟麦温室大棚设计干舅葡手育垦辖稚岩冕膛角瑚茅倦蛤航抽俺橙营玫池己滑邀蛛俄锄份自辅涎刮覆垒璃雄袁竭堑隙址晕岛失吧澜忧琳斤搏滩聂仔札捎查淆从乳进睦散尚拖碎艰夺年蹋泌锯撂枯啮货肿沫悄判刮腥获讣全吕凶轰祈颖伞钻戈墟梗抄沟稀轩控供捌龙趁茧脐寐曳命秆蔽辟笨池虾攒澜照字扛淌撂陆审驹娘汪盆比精椅皮峪静两乎曲匈弊靛舜垢唯佑伪脑购康移且仗娄悔归躇烫惠赁嚎混表粮香士曝娃摆系伪之熏马楼鹤焰衷撮铆背褐征肝甫锣掖莹经主聚湘俩妙刹哦崔氛云个渣瞧秦誊音服兄纹姥答僚窑哦频袄耳驭澳迸凋狂宙籽烙与登宦卵凑颐跋妊头茬破劲竟仑垃饼孝降风苏窍和拈洋顾版锣姿垃雹郁楚聂温室大棚设计毕业论文摘要随着大棚技术的普及,温室大棚数量的不断增多,对其温度的控制就显得非常重要,而利用科学技术改善大棚温度监测条件是符合社会主义新农村建设的指导思想的,因此,开发一种能够实时、准确地处理温度信息的无线测控系统就变得很有必要。 本课题是基于单片机并采用 1-wire 总线技术和无线传输技术,设计一种应用于温室大棚的温度测控系统。它的原理是利用温度传感器将温室大棚内的温度发给单片机处理,最后再通过无线传输模块、RS-232 总线将采集的数据传送到计算机,进行温度的显示、处理和报警。整个系统设计分为硬件和软件两部分。在硬件方面,对硬件的各个环节都进行了仔细的分析、选取和设计。系统以单片机 AT89S51 为控制核心,采用温度传感器 DS18B20 进行数据采集,通过无线收发模块进行无线传输。在无线接收端,利用 LCD 液晶显示模块进行相关数据显示,并且单片机可通过 RS232 接口与计算机通信,进行温度的检测与控制。在软件方面,分为下位机软件与上位机软件两部分。下位机软件采用了 C51 高级语言进行程序设计,实现软件编程的模块化和独立性,具有良好的可测试性和可靠性。上位机软件采用 C+ Builder 作为开发环境,实现与下位机通信、数据处理与显示等功能。经过软件仿真和硬件实验,本设计实现了对大棚温度的监测和控制,监测距离大于200m。【关键词】:温室大棚; AT89S51; DS18B20; 温度监控; 无线传输 装订线ABSTRACTAs the greenhouse technology becomes more and more popular, and the number of the big sheds is on the rise, the control of its temperature becomes very important. Moreover, to keep pace with the modern technology, improving the condition of the monitoring is very necessary, which is fit for the guiding ideology of the socialism new countryside construction. Under this background, developing a wireless monitoring system with real-time performance and accuracy has gained much attention.This subject is put forward based on MCU, the 1-wire technology and wireless transmitting technology, a temperature monitoring system applied in the greenhouse was devised. The working principle of this project is the utilization of the temperature sensors, which transfers the temperature of the sheds to MCU, finally by wireless transmit module, RS232 Bus transmitting the data to the computer, carrying out the temperatures display, process and alarm.The whole system consists of the hardware and software two parts. For the hardware aspect, this has been made a carefully analysis, collection and design on the every segment of the hardware. The system uses AT89S51 chip as the core of the control, chooses the temperature sensor DS18B20 to collect the data, then through wireless transceiver module transmit it and in the wireless receiver, selects LCD module to display related data, corresponding with the computer through RS232 interface, achieving the monitoring and control of the temperature. In the software, it can be divided into two parts: host computer and slave computer. In the slave computer, using C51 advanced language to program, making it modularized and independent, as well as possessing well testability and reliability. The host computer uses C+Builder as the development environment, implementing the communication, data processing and display with the computer.Through software simulation and hardware experiment, this system successfully completes the wireless monitoring of the hothouses, fulfilling the measure and the control of the greenhouses temperature. Key Words: Hothouses; AT89S51; DS18B20; Temperature monitoring; Wireless transmit Module目 录1 前言 .11.1 课题来源 .11.2 需求分析 .21.3 课题研究内容 .32 系统总体设计方案 .42.1 系统工作原理 .52.2 系统组成 .52.3 系统性能指标.63 硬件电路设计 .73.1 设计原则 .73.2 单片机的选择 .73.3 单片机的最小系统设计 .73.4 温度传感器的选择 .83.5 无线收发模块 .113.6 串口通信 .124 软件设计 .144.1 设计原则 .144.2 下位机软件设计 .144.3 上位机软件设计 .175 系统调试及结果分析 .225.1 硬件电路的调试 .225.2 系统可靠性及抗干扰设计 .255.3 系统实时性 .266 总结及问题探索 .286.1 总结 .286.2 问题探索 .29致谢.30参 考 文 献.31附录一:实物图及 PCB .32附录二:中英文翻译 .34温室大棚温度无线测控系统的设计1 前言1.1 课题来源温室大棚是农业设施的重要组成部分,利用温室大棚栽培蔬菜可以促进其早熟和丰富其产量,延长蔬菜的供应期,是扩大蔬菜生产、实现周年供应的一种有效途径,是发展三高农业、振兴农村经济的组成部分,是我国农业走向现代化、科学化的标志之一。 尤其对于我国北方地区无霜期短,冬天日夜温差大,而长江流域地区虽然冬季能生产一些耐寒蔬菜,但种类单调,且若遇冬季寒潮或夏秋暴雨,连绵阴雨等灾害性天气,则早春育苗和秋冬蔬菜生产都可能会受到较大的损失,影响蔬菜的供应。而利用塑料棚进行蔬菜栽培可利用保护设备在冬、春、秋进行蔬菜生产,以获得多样化的蔬菜产品。以下将简要地介绍几种温室大棚。第一种是薄膜温室大棚2,属于连栋温室中造价比较低的类型,但由于薄膜老化等原因,薄膜质保 3 年,因此,存在薄膜定期更换的问题。它的优点是保温性能好,运行成本低;缺点是透光率低。适合种植对光照要求不高的植物品种。图 1.1 薄膜温室第二种玻璃温室,它是源于早期引进的荷兰 VENLO 温室,由于荷兰属于寡日照地区,对透光要求高,因此,玻璃的高透光性非常适合于高光作物的种植。另外,玻璃温室的外型美观,通透性强,因此,非常适合于建造花卉市场。图 1.2 玻璃温室在 2009 年 4 月 14 日,辽宁省成功研制出了“内保温组装式温室” 。它一种新的温室类型,具有环保、造价低、可移动等特点,推广价值大。温室大棚测控系统是实现温室生产管理自动化、科学化的基本保证。通过对监测数据的分析,结合作物生长规律,控制环境条件,使作物在不适宜生长的反季节中,可获得比室外生长更优的环境条件,从而使作物达到优质、高产、高效的栽培目的。单片机是专为工业测量与控制而设计,具有集成度高、可靠性高、性价比高的优势,它给人们带来的方便也是不可否定的,采用它制成的监测控制系统非常之多。但人们对它的要求越来越高,要为现代人工作、科研、生活提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制的方向发展。无线数据传输广泛地运用在车辆监控、遥控、小型无线网络、无线抄表、门禁系统、工业数据采集系统、身份识别、小型无线数据终端、安全防火系统、无线 232 数据通信、数字音频、图像传输等领域中。应用无线技术能够改善监测大棚温度的条件。1.2 需求分析(1)国内外大棚温度控制技术的发展国外采用多数是一种全自控的喷滴灌温室大棚控制系统,它不需要人的看管。比较人工的控制来说,这种智能自控温室最大的好处就是能够相对恒定的控制温室内部的环境,对于对环境要求比较高的植物来说,更能避免因人为因素而造成生产损失。北京的一家公司研制开发了一种应用于温室大棚的环测温控系统3。它是采用 PLC 与各式的侦测器连线,管理人员需要在现场监控,温室的温度、湿度及亮度侦测器与 PLC 连结,MA8-6 透过 RS-232 与 PLC 连结,使用图型化界面来设定与 PLC 之间的资料的交换格式,透过 GPRS 与 Internet 将相关数据资料传送到中央控制中心。中央控制中心的监控主机经由 RS-232 与 MA8-1 连结,当回传资料值超出或低于设定临界值时,监控主机将报警资料经由短消息系统传送给相关管理人员,管理人员可以及早采取措施解决问题。图 1.3 环测温控系统(2)结论本系统设计和国外的先进设备相比还是存在一定的差距,与上述的环测温控系统相比,本设计最大的特点是采用无线传输技术,管理人员不需要留在现场也能监测到大棚的温度情况。而且使用数字温度传感器,这样硬件电路简单,调试起来也方便,还节省成本,测量和控制的目标都能实现。1.3 课题研究内容本课题的任务是设计一个大棚温度无线测控系统,对温室大棚的温度进行监测和控制。本文将详细地介绍利用单片机制成的测温模块的软硬件设计和无线传输模块的具体应用,并给出温度传感器接口的软件设计方案以及上位机界面的设计方案。测量温度温度单片机数码管显示无线发射模块通过串口把数据发送大棚的温度信息显示信息无线接收模块RS232接口电平转换电脑温度电信号图 1.4 大棚温度无线测控系统的信息流图2 系统总体设计方案本系统主要针对温室内温度,设计了以 PC 机为上位机,单片机为下位机的温室大棚的温度无线测控系统。综合考虑系统的精度、效率以及经济性要求这三个方面之后,最终确定下位机以 AT89S51 单片机为控制核心,选用性价比比较高的传感器 DS18B20,实现对温度精确测量与准确控制。当单片机检测到温度超过设定值时,则启动报警措施。下位机可以通过RS-232 实现和上位机的串行通讯。为了便于系统的调试、移植、修改,软件设计以 C 语言为基础,采用模块化设计,主要包括单片机的最小系统、数据采集模块、液晶显示模块、无线收发模块以及串行通讯模块。上位机使用 C+Builder 编写温度监控界面。系统的总体设计分为硬件和软件设计两方面,首先确定系统实现的功能,然后对硬件、软件分别进行规划,完成这些准备工作之后,就可以开始制作硬件电路,编写软件程序,在模块化调试结束后,进行软硬件联调,针对出现的问题对软硬件进行相应的修改,直到调试成功为止。系统的总体设计流程图如图 2.1 所示。明确功能要求软件及硬件的功能分配硬件电路设计电路细节设计软件设计硬件调试软件调试 需要开发工具支持软硬件联调 程序固化 需要程序烧写器支持运行有问题?结束软硬件修改YN图 2.1 系统总体设计流程图2.1系统工作原理单片机首先通过温度传感器 DS18B20 采集温室大棚的温度,再通过无线发射模块,利用单片机的串口进行编程,将测得大棚的温度一位一位地传送到监控室的接收模块中;接收模块通过 RS232 接口与电脑相连,把数据传给电脑。在上位机中,利用 C+Builder 编程,让电脑和单片机正常地进行数据传输,同时上位机界面显示大棚的温度,并对异常的温度变化进行报警,实现对大棚温度的无线测控,保证了农作物在适宜的温度下生长。2.2 系统组成整个无线监测系统主要分为三部分:即温度检测、无线传输和 PC 机对温度的监测环节。温室大棚无线传输模块测温装置监控室的电脑图 2.2 系统的整体连接图(1)温度检测模块的组成在温度检测中,由单片机 AT89S51 主控制器所组成的最小系统以及外部接口模块主要有温度传感器(DS18B20)、LED 八段码显示器,无线发射模块,各模块连接如下图所示。温室大棚无线发射模块主控制器时钟控制器复位单元电源温度传感器数码管显示图 2.3 单片机温度检测模块(2)温度无线传输模块的组成无线传输系统主要有单片机AT89S51组成的最小系统以及无线接收模块,液晶1602显示和串口通讯模块组成。在本设计中,在无线接收端采用1602液晶(16引脚带背光接口)进行显示。液晶是一种极低功耗的显示器件。在袖珍式仪表或低功耗应用系统中使用较多。各模块的连接框图如图 2.4 所示。液晶显示单元无线接收模块主控制器时钟控制器复位单元电源图 2.4 无线传输模块(3)上位机对温度的监测实现大棚温度的显示并且实时绘制出曲线,一旦温度有异常变化马上让电脑发出报警提示。还加以整个系统的介绍和图片,方便使用者了解系统的原理和功能。电脑显 示Max232 电平转换单元RS232 接口无线接收模块图 2.5 上位机的监测模块2.3 系统性能指标本系统具有良好的可靠性和经济性,能够实现对温室大棚温度的准确测量和控制,在实际应用中有一定价值。具体性能指标分述如下。测温范围:0+50;测温分辨率:0.1;工作电压:220V;功耗:600mW;监测距离:200m 左右;3 硬件电路设计3.1 设计原则(1) 尽可能选择典型电路,并符合单片机的常规用法。为硬件电路的标准化、模块化打下良好基础。可靠性和抗干扰设计是硬件设计必不可少的一部分,它包括芯片和器件的选择、去耦电容、滤波电容、电路板的布线等。(2) 尽量朝单片方向设计硬件。硬件器件越多,器件之间相互干扰越强,功耗也会越大,就会不可避免的降低系统的稳定性。(3) 在速度允许的情况下,尽量使用串行为主的扩展方式。串行扩展具有方便、灵活、电路简单、占用 I/O 资源少等特点。(4) 留下一些指示灯或通信口以方便调试和判别系统问题。 3.2 单片机的选择在此次设计中,采用 AT89S51 作为系统的控制芯片。AT89S51 是一个低功耗,高性能CMOS 8 位单片机,片内含 4k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash存储单元。3.3 单片机的最小系统设计在本设计中采用了 AT89S51 单片机作为核心处理器,因此在电路中首先设计的是AT89S51 的最小系统。AT89S51 单片机的最小系统包含以下几部分。单片机供电电路:AT89S51 需要可靠的 5V 供电,在电路图中的 VCC 和 GND 为供电网络标识符;振荡电路:AT89S51 需要一个稳定的振荡电路才能够正常工作,单片机的时钟信号是用来提供单片机内各种微操作的基准。在该电路中采用了 12MHz 的晶振作为 AT89S51的时钟源;这里采用的是内部振荡方式,在引脚 XTAL1 和 XTAL2 外接晶振,通过内部振荡得到的时钟信号比较稳定,在电路中使用较多。在下面的电路图中可以看到在晶振两侧连了两个电容 C2,C3,它们是起稳定振荡频率、快速起振的作用,电容值一般为 530pF。本设计中用的是 30pF 的电容。复位电路:复位电路是单片机正常运行的一个必要部分。复位操作一般有两种基本形式:上电复位和开关复位。在本设计中采用的是第二种。复位电路应该保证单片机在上电的瞬间进行一次有效的复位,在单片机正常工作时将 RST 引脚置低。此外通过一个按键进行手动复位,在单片机运行不正常时使用。上电后,由于电容充电,是 RST持续一段高电平时间。当单片机已经在运行时,按下复位键也能使 RST 持续一段高电平,从而实现上电且开关复位的操作。通常我们选择的复位电容为 1050F,电阻为110k。在本设计中复位电容选的是 47F 的,电阻选的是 10k 的。AT89S51 的最小系统电路如图 3.1 所示。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/T1P11/T2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U1AT89S5112Y1XTALVCC30pFC230pFC3GND10KR1S1SW-PBVCCGNDRSTRST47uFC1图 3.1 AT89S51 的最小系统电路3.4 温度传感器的选择在选择温度传感器时,应考虑的主要因素有温度的测量范围、精度、测温时间、稳定性、灵敏度和经济性。(1)温度传感器的种类4温度传感器的发展大致经历了以下三个阶段:传统的分立式温度传感器;模拟集成温度传感器;智能温度传感器;目前,国际上新型温度传感器正从模拟式向数字式、由集成化向智能化、网络化的方向发展。常见的温度传感器有模拟集成温度传感器(AD590、LM334) 、单总线数字温度传感器(DS18B20) 、标准总线式智能传感器(DS1629) 、多通道智能温度传感器(MAX6691) 、热电偶温度传感器、光纤传感器等。以下将对这些传感器简单介绍一下。1)模拟集成温度传感器它是将温度传感器集成在一个芯片上、可完成温度测量及模拟信号输出功能的专用IC。模拟集成温度传感器的主要特点是功能单一、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准。2)热电偶温度传感器热电偶是工业上最常用的测温检测元件之一,其优点是测量精度高,测温范围广,常用的热电偶从-50+1600均可连续测量。但是,热电偶的材料一般都比较贵重,成本较高,而且一般需要冷端补偿。3)数字温度传感器数字温度传感器内部都包含温度传感器、A/D 转换器、信号处理器、存储器(或寄存器)和接口电路。它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现 912 位的数字值读数方式。这些芯片在检测点已把被测信号数字化了,因此在单总线上传送的是数字信号,这使得系统的抗干扰性好、可靠性高、传输距离远。结论由于 AT89S51 单片机内没有 A/D 转换器,为了准确地采集温度,一种方法是在外围电路中加 A/D 转换器,但是这样就使软硬件设计更加复杂化;还有一种更简单的方法就是使用数字温度传感器。所以,在本设计中,采用的是单总线数字温度传感器(DS18B20) 。它能够满足本设计要求,而且它具有体积小、构成的系统结构简单并且成本低等优点,应用越来越广泛。(2)单总线协议的介绍1)单总线的工作原理近年来,美国的达拉斯半导体公司推出了一项特有的单总线(1-Wire Bus)技术。该技术采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的。顾名思义,单总线即只有一根数据线,系统中的数据交换、控制都由这根线完成。设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线。单总线通常要求外接一个约为 4.7K 的上拉电阻,这样,当总线闲置时,其状态为高电平。主机和从机之间的通信可通过 3 个步骤完成,分别为初始化 1-wire 器件、识别 1-wire 器件和交换数据。由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问 1-wire 器件都必须严格遵循单总线命令序列,即初始化、ROM、功能命令。2)单总线的特点单总线技术以其线路简单、硬件开销少、成本低廉、节省 I/O 口资源、便于总线扩展和维护、软件设计简单的优势而有着无可比拟的应用前景。其通信可靠简单,很容易实现,是值得关注的一个发展领域。(3)DS18B20 的功能介绍DS18B20 是 Maxim-Dallas 公司生产的一款高性能、宽测温范围的串行数字接口温度传感器。它是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。它具有微型化、低功耗、高性能、抗干扰能力强、易配处理器等优点,特别适用于构成多点温度测控系统。DS18B20 的 ROM 中的 64 位序列号是出厂前被光刻好的, 共分为 8 个字节,字节 0 的内容是该产品的厂家代号 28H,字节 16 的内容是 48 位器件序列号,字节 7 是 ROM 前 56位校验码。它可以看作是该 DS18B20 的地址序列码, 每个 DS18B20 的 64 位序列号均不相同,这样就可以实现 1 根总线上并接多个 DS18B20 温度传感器而互不影响。在单片机容量允许内,最多可以挂接 256 个 DS18B20(实际应用中最多挂 8 个,超过 8 个就需要解决微处理器的总线驱动问题)。以下将简要地介绍它的使用。1)DS18B20 的性能指标 DS18B20 温度传感器的主要性能指标如下:供电电压:3.0V5.5V;测量温度范围:-55+125;测量温度精度:在-10+85是 0.5;测温分辨率可达 0.0625;2)DS18B20 的引脚定义及结构DS18B20 具有 8-Pin 的 SOIC 封装和 TO-92 的封装,其引脚分布如图 3.2 所示。DS18B20 的各引脚功能说明如下: DQ:数据端;图 3.2 DS18B20 的引脚VCC1I/O2GND3wdDS18B204.7K R1GNDVCCVDD:供电电源;GND:电源供给地;DS18B20 主要有 64 位 ROM、温度敏感元件、非易失性温度报警触发器 TH 和 TL 及配置寄存器四部分组成。配置寄存器为高速暂存存储器的第 5 个字节。DS18B20 在工作时按此寄存器的分辨率将温度转换成相应精度的数值。DS18B20 对所测数据的转换结果以 16bit 带符号位扩展的二进制补码的形式存放在寄存器中。DS18B20 通过其内部的数字转换电路将模拟量转换为数字量 ,通过显示模块直接以数字方式显示温度。其典型的温度值数据如表 3.1 所示。DS18B20的电源供电方式有2种:外部供电方式和寄生电源方式。工作于寄生电源方式时,VDD和GND均接地,它在需要远程温度探测和空间受限的场合特别有用,原理是当1Wire总线的信号线DQ为高电平时,窃取信号能量给DS18B20供电,同时一部分能量给内部电容充电,当DQ为低电平时释放能量为DS18B20供电。但寄生电源方式需要强上拉电路,软件控制变得复杂(特别是在完成温度转换和拷贝数据到E2PROM时) ,同时芯片的性能也有所降低。因此,在条件允许的场合,尽量采用外供电方式。4)DS18B20 的单片机接口电路当使用 AT89S51 控制 DS18B20 进行温度测量时,只需要使用 AT89S51 的一个引脚和DS18B20 的数据端口相连即可,其电路图如图 3.3 所示。使用 4.7k 上拉电阻的作用:因为 DS18B20 是单总线温度传感器,数据线是漏极开路,如果 DS18B20 没接电源,则需要数据线强上拉,给 DS18B20 供电;如果 DS18B20 接有电源,则需要一个上拉即可稳定的工作。3.5 无线收发模块无线收发模块的一种重要的用途就是配合单片机来实现数据通讯,在本设计中就是利用它的这个功能。(1)无线发射模块电路采用 ASK 方式调制,就是用数字调制信号的通断。当数据信号停止时发射电流降为零,功耗很低。电路本身未设编码集成电路,而增加了一只数据调制三极管 Q1,这种结构使得它可以方便地和其它固定编码电路、滚动码电路及单片机接口,而不必考虑编码电路的工作电压和输出幅度信号值的大小。模块输出功率由电压决定,电压变化时发射频率基本不变,发射电压为 3V 时,空旷地传输距离约 20 50m,发射功率较小,当电压 5V时约 100200m,当电压 9V 时约 300500m,当发射电压为 12V 时,为最佳工作电压,具图 3.3 DS18B20 的接口电路有较好的发射效果,发射电流约 60mA,空旷地传输距离 700800m,发射功率约 500mW。在本设计中,温度的传输距离大于 200m。主要技术指标:1)通讯方式:调幅 AM2)工作频率:315MHz3)频率稳定度:75KHz4)发射功率:500mW5)发射电流:350mA6)工作电压:DC 312V实物图如图 3.4 所示。(2)无线接收模块无线接收模块采用的是超外差接收模块,它是一款性能十分优异的高频接收模块,采用最先进的 RF 集成电路,超外差工作方式,工作稳定可靠,广泛应用在各种干扰大、环境恶劣的场合。实物图如图 3.5 所示。主要技术指标:1)通讯方式:调幅 AM2)工作频率:316.8MHz3)频率稳定度:75kHz4)工作电流:5mA5)工作电压:DC 5V6)输出方式:TTL 电平 适用范围:1)车库门无线控制 系统 2) 各类防盗系统3) 工业遥控、遥测4)低波特率的数据 传输3.6 串口通信3.6.1 串口的简介及作用计算机和外部设备进行通信常通过串口和并口两种方式。串行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送,因此,特别适合于远距离传输。对于那些与计算机相距不远的人机交换设备和串行存储的外部设备如终端、打印机、逻辑分析仪、磁盘等,采用串行方式交换数据也很普遍。所以串行接口是微机应用系统常用的接口。许多外设和计算机按串行方式进行通信,这里所说的串行方式,是指外设与接口电路之间的信息传送方式,实际上,CPU 与接口之间仍按并行方式工作。在单片机系统中,串口是一个非常重要的组成部分。通常使用单片机串口通过 RS232接口和电平转换芯片 MAX232 与上位机连接,以进行上位机与下位机的数据交换、参数设置、组成网络以及各种外部设备的连接等。RS232 串行接口总线具有成本低、简单可靠、容易使用等特点,加上其历史悠久,所以目前应用仍然非常广泛;特别对于数据量不是很大的场合,串口通信仍然是很好的选择,有着广阔的使用前景。 在单片机编程中,串口占了很重要的地位。图 3.4 无线发射模块图 3.5 无线接收模块3.6.2 单片机与 PC 机的串口通信(1)通信接口的选择为了便于计算机和各种外围设备的串行通信连接,更广义地来讲是为了各种数据终端设备(DTE)和数据通信设备(DCE)之间的连接,制定了若干种串行通信接口标准。只要是符合某种标准的设备之间就可以直接互相连接、互相通信。串行通信接口按电气标准及协议来分包括 RS-232、RS-422、RS485、USB 等。 RS-232、RS-422 与 RS-485 标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。USB 是近几年发展起来的新型接口标准,主要应用于高速数据传输领域。在本设计中,选择 RS-232 接口就可以满足通信需求了。1)RS-232 串行接口目前 RS-232 是 PC 机与通信工业中应用最广泛的一种串行接口。RS-232 被定义为一种在低速率串行通信中增加通信距离的单端标准。RS-232 采取不平衡传输方式,即所谓单端通信。典型的 RS-232 信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平在+5+15V,负电平在-5-15V 电平。当无数据传输时,线上为 TTL 电平,从开始传送数据到结束,线上电平从 TTL 电平到 RS-232 电平再返回 TTL 电平。完整的 RS-232 接口有 25根线,采用一种 25 芯(针)的插头座,彼此连接十分方便。现在经常采用一种 9 针的插座来互相连接,因为 25 条线中最经常使用的只有 9 条线。由于一般的微机中都有 RS-232 接口,利用 RS-232 通信进行测量,连接、携带、运输方便。在那些临时、快速测量而测量的通道数又不多的场合下,利用 RS-232 接口的测量模块十分方便。其传送距离最大为约 15m,最高速率为 20kb/s。基本的数据传送引脚TXD:数据发送引脚;RXD:数据接收引脚;GND:信号地线;在单片机通信中最简单的通信只需连这三根线。由于单片机的串行发送线 TXD 和接收线 RXD 是 TTL 电平,而 PC 机的 COM1 或 COM2 的RS-232C 连接器(D 型 9 针插座)是 EIA 电平,因此单片机需加接 MAX232 芯片,通过串行电缆线和 PC 机相连接。单片机和 PC 机的连接如图 3.6 所示。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/T1P11/T2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U180C52X2X1C1+1VDD2C1-3C2+4C2-5VEE6T2OUT7R2IN8R2OUT9T2IN10T1IN11R1OUT12R1IN13T1OUT14GND15VCC16U2MAX232ACPE1234567891110J1D Connector 9104C2104C6104C3104C8104C4P12P13P11图 3.6 单片机和 PC 机的连接图2)RS-232 的 EIA 标准它是以正负电压来表示逻辑状态,而 TTL 以高低电平来表示器逻辑状态。目前较广泛使用的转换芯片很多,但很多需要正负 12V 两种电源,使用不方便。而 MAXIM 公司的MAX232 芯片之需要+5V 电源就可以实现 TTL 和 EIA 的双向电平转换,因此得到了广泛应用。(2)通信协议的设计在进行数据通信时,必须解决好两个方面的问题:一是可靠性,二是速度。可靠性是第一位的,速度只是在可靠的基础上的追求。可靠快速传输的实现,需要上、下位机软件以及通信协议等各个环节的可靠和相互配合。在串行通信的硬件设计完成后,通信双方(在本系统中指单片机和上位机)必须约定通信协议,否则将无法保证通信数据的可靠性,从而失去通信的意义。协议一方面要规定通信的基本参数,如通信波特率、数据位数、停止位数及奇偶校验的方式等,更重要的一方面是要规定双方传输数据的格式,以及传输数据时控制数据流的方式。现约定系统的通信协议如下: 1)串行通信波特率为 1.2kbps;2)数据传送格式为 1 个起始位,8 个数据位,1 个停止位;3)无奇偶校验;4)串行通信方式采用查询方式;4 软件设计4.1 设计原则(1) 明确任务,弄清软件所承担的任务细节。(2) 软件结构设计,合理的软件结构是设计出一个性能优良的单片机应用系统软件的基础。(3) 模块化程序设计,是单片机应用中最常用的程序设计技术。将一个完整的程序分解成 若干个功能相对独立的较小的程序模块,对各个程序模块分别进行设计、编制和调试,最后将各个调试好的程序模块进行联调。(4) 编写程序。根据系统功能和操作过程,列出程序的功能流程图。在完成流程图的设计之后,便可编写程序了。4.2 下位机软件设计下位机采用 C51 在 keil uvision3 的开发环境进行编程,在仿真软件中调试成功后,再把生成的 HEX 文件烧到单片机中,在真实的硬件环境下进行测试。具体设计主要分两部分,一是温度传感器的驱动和测温程序,另一个是利用单片机串口编写的无线传输程序。下面将对程序中的关键部分进行阐述。(1) 温度传感器接口软件设计主机(单片机)控制 DS18B20 完成温度转换要经过三个步骤:每一次读写之前都要DS18B20 进行复位操作,复位成功后发送一条 ROM 指令,最后发送 RAM 指令,这样才能对DS18B20 进行预定的操作。复位要求主 CPU 将数据线下拉至少 480,然后释放,当DS18B20 受到信号后等待 1560,然后发出 60240的存在低脉冲,主 CPU 收到此信号表示复位成功。流程图如图 4.1 所示。初始化 DS18B20开始应答脉冲?发跳过 ROM 的命令(0XCC)延时YN发转换温度的指令(0X44)跳过 ROM读取暂存器中的数据(0XBE)读取第一、二字节即为温度数据图 4.1 下位机软件设计的流程图具体操作: 初始化: 总线控制器发出一个复位脉冲(一个最少保持 480的低电平信号) ,然后释放总线,进入接收状态。单线总线由 4.7k 的上拉电阻拉到高电平。探测到 I/O 引脚上的上升沿后,DS1820 等待 1560,然后发出存在脉冲(一个 60240的低电平信号) 。图 4.2 DS18B20 初始化时序复位子程序如下:void reset ( ) DS = 0;Delay(90);/ 精确延时大于 480,当总线停留在低电平超过 480,总线上所以器件都将被复位DS = 1;/产生复位脉冲后,微处理器释放总线,让总线处于空闲状态Delay(4);ROM操作命令主机收到DS18B20在线信号后,就可以发送四个ROM操作命令中的一个,这些命令字均为8位的16进制数(最低位在前) ,现将这些命令说明如下。33H:读 ROM,通过该命令主机可以读出 ROM 中 8 位系列产品代码、48 位产品序列号和8 位 CRC 码;55H:匹配ROM,多片DS18B20在线时,主机发出该命令和一个64位数列,DS18B20内部ROM与主机数列一致者,才响应主机发送的寄存器操作命令,其他DS18B20等待复位。该命令也可以用在单片DS18B20情况。CCH:跳过 ROM 序列号检测命令,对于单片 DS18B20 在线系统,该命令允许主机跳过ROM 序列号检测而直接对寄存器操作,从而节省时间。 存贮器操作命令 44H:开始温度转换 DS18B20 的读写操作1)写时间片,包括写 0 时隙和写 1 时隙。所有写时隙至少需要 60,且在 2 次独立的写时隙之间至少需要 1的恢复时间,两种写时隙均起始于主机拉低总线。写时序如图 4.3所示。图 4.3 DS18B20 写时序2)读时间片,1Wire 总线器件仅在主机发出读时隙时,才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时隙,以便从机能够传输数据。所有读时隙至少需要60,且在 2 次独立的读时隙之间至少需要 1的恢复时间。每个读时隙都由主机发起,至少拉低总线 1。主机在读时隙期间必须释放总线, 并且在时隙起始后的 15之内采样总线状态。时序图如图 4.4 所示。图 4.4 DS18B20 读时序(2) 温度无线传输软件设计此模块的软件设计主要是要确保接收到正确的温度数据,所以在程序中要加一些数据头进行校验。1)发送温度程序:while(1) /温度转换,获得温度SBUF=0 xaa; /以下这段程序是为了防止无线接收模块受到干扰,接到的数据不对 while(!TI); /所以加上两个数据头,只有在正确接收到它俩后,才能开始接收我们需要的数据 TI=0;SBUF=0 x55;while(!TI);TI=0;SBUF=table3a; /将测得的温度值的各位及小数点逐位的发送出去 while(!TI);/百位TI=0; /依次发送其他各位2)接收温度程序void receive()while(!RI);RI=0;i=SBUF;if(i=0 xaa) /判断是否接收到 0 xaa,接收到的话再执行下去 while(!RI);RI=0;i=SBUF;if(i=0 x55) /再继续判断是否接收到 0 x55,接收到的话就可以继续接收正确的数据write_com(0 x80);while(!RI);RI=0;a=SBUF; /接收百位write_data(a); /液晶显示百位SBUF=a; /再把百位发送给电脑while(!TI);TI=0;delay(100); /延时 /个位、十位小数点依次发送4.3 上位机软件设计上位机监测界面采用 C+Builder 进行编写。4.3.1 C+Builder 的介绍C+Builder 是 Borland 公司 98 年推出的全新 32 位 Windows 开发工具。它使用简便,功能强大,效率高等特点,而且它还结合 C+语言所有优点.是一个 Windows 环境下基于C+语言进行快速程序开发的集成开发环境,提供了一个强大的可视化控件库,能够使用C+语言方便、快速、高效地进行 Windows 应用程序开发,尤其是开发界面、数据库等Windows 应用程序更加快速、高效。Borland C+ Builder 是一种面向对象的可视化应用程序开发工具,为程序开发人员提供了十分轻松而快捷的开发环境。它以其友好的界面设计和方便的编程实现,广泛应用于工程实践中。C+ Builder 作为一个开发快、界面友好的应用软件,已经广泛应用于工程项目的开发中。然而在工程中十分常见的就是实验数据的串行传输和可视化处理。4.3.2 关键技术用 C+Builder 具体实现串口的通信,必须掌握 C+Builder 中对串口操作的方法,每种语言都提供了对串口读写操作,方法一般各有不同,在 C+Builder6.0 环境下串口的 4种实现方法有:(1) 采用在 C+程序中嵌入行间汇编,直接对 UART 串口通讯硬件进行操作,实时性最高,但编程需要了解硬件;(2) 利用 Windows 的 API 通信函数,编程较复杂,但灵活性最大,实时性较高;(3) 利用 VB 下高性能的 ActiveX 控件 MSComm,编程简单,实时性不错,二进制接收模式编程稍有点复杂;(4) 利网上的串口通信控件 TComm,编程最简单方便,且可靠。但无论用哪种方法来开发串口通信程序,其实现步骤差不多,如图 4.5 所示。其中使用 API 通信函数实现步骤稍有不同,它是先打开串口,在得到串口句柄后,再进行串口参数的配置。打开串口接收数据和发送数据程序关闭串口配置串口参数图 4.5 串口通信程序实现步骤本设计使用的是第四种方法,利用 TComm 控件实现串口通信。TComm 控件可以实现DTR/DSR、RTS/CTS 硬件流控制,是比较完善的串口控件。TComm 控件的串口通信参数设置与MSComm 类似默认情况下。TComm 控件接收和发送数据支持字符串和字节两种传输模式。在接收和发送数据前需要初始化串口,用 SetPortOpen()方法打开串口,退出程序时用CloseComm()方法关闭串口。/打开串口、接收和发送数据的语句Comm1-PortOpen=true; /打开串口mReceive-Text = Comm1-Input; /接收数据mTransmit-Text= Comm1-Output; /发送数据/ 接收下位机温度及将获得的数据绘制成曲线的程序C+Builder 提供了一个功能强大的可视化控件 TChart,非常便于数据的图形化显示。通过设置组件属性,可以生成点图、线图、饼图、柱状图、区域图,能够显示一维序列或二维序列,可以自由设定刻度线和坐标。给序列添加一个数据只需调用AddX、AddY、AddXY 方法,非常方便。因为需要得到温度的实时曲线图,所以在定时器timer 的 OnTimer 事件中编写程序,关键的语句如下:if (Comm1-PortOpen) /判断串口是否打开 mReceive-Text = Comm1-Input ; /把接收到的温度放到一个 memo 里 Buf = Trim(Comm1-Input); /删除了 string 字符串首部和尾部空格的字符串 ReceiveStr = ReceiveStr + Buf; /不断加上受到的数据 do Dot= ReceiveStr.Pos( ); /检查空格的位置 if (Dot=0) break; ReceiveDatai = StrToFloat( ReceiveStr.SubString(1,Dot-1); /数据放进数组 ReceiveStr =ReceiveStr.Delete(1,Dot); /留下未处理的数据 Chart1-Series0-AddXY(i,ReceiveDatai,i,clRed); /把接收到的温度绘成曲线 i=i+1; /接收下一个数据 while (1); /直到找不到空格 ReceiveStr = ; /存储接收到的数据和对应的时间关键的语句如下:FILE *fp;fp=fopen(.data.txt,a); /把数据存放到 data.txt 的文件里fprintf(fp,%s%sn,mReceive-Text, TimeToStr(Time();fclose(fp);实验结果如图 4.6 所示。图 4.6 温度显示界面 当用户点击主菜单中的串口选项,会看到下拉菜单中有两个选项,点击打开后,马上会显示出温度,并且绘制曲线。点击关闭后,系统会关闭。具体界面如图 4.7 所示。图 4.7 打开串口界面当打开串口之后,再次点打开时,系统会提示警告,串口已经打开。如图 4.8 所示。图 4.8 出错界面当温度值超过大棚理想的温度(在本设计中设为 28.0)时,温度值的颜色会由原来的绿色变成红色的,即报警,提醒控制者采取措施,如图 4.9 所示。图 4.9 报警界面 点击数据操作,在下拉菜单中可以选择保存按钮,就可以把当前测得的温度保存在事先建立好的 data.txt 的文本文件中,如图 4.10 所示。如果用户要查看历史数据,只需点击这个文件即可。如果想清空历史数据,点击清空按钮即可。图 4.10 如何保存和清空数据点击系统简介按钮,会在界面的 memo 控件中看到对系统的一些说明文字。用户若想查看系统的硬件原理图,点击相应的按钮即可。5 系统调试及结果分析5.1 硬件电路的调试5.1.1 仿真(1) 仿真软件的介绍Proteus 是一款用于电路分析与实物仿真的软件。该软件的特点是:1)将单片机仿真和 SPICE 电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232 动态仿真、I2C 调试器、SPI 调试器、键盘和 LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。2)支持主流单片机系统的仿真。目前支持的单片机类型有:ARM、8051/52 系列、AVR 系列、ATMEL 系列以及多种外围芯片。3)提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如 Keil C51 uVision2、MPLAB 等软件。4)具有强大的原理图绘制功能。总之,该软件是一款集单片机和 SPICE 分析于一身的仿真软件,功能极其强大。(2) 测温环节的仿真在软件 Proteus 里画出电路图,主要是把数码管连上,把温度传感器连到对应的管脚上;再把程序放进去,点击运行进行仿真。仿真图及结果如图 5.1 所示。abcdefgdpabcdefgdpXTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C5124.0DQ2VCC3GND1U4DS18B20X1CRYSTALC31uFR21k图 5.1 测温环节仿真(3) 串口通信环节的仿真在本例中是利用单片机的串口进行无线发送
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!