版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、温室大棚设计毕业论文 摘要 随着大棚技术的普及,温室大棚数量的不断增多,对其温度的控制就显得非常重要, 而利用科学技术改善大棚温度监测条件是符合社会主义新农村建设的指导思想的,因此, 开发一种能够实时、准确地处理温度信息的无线测控系统就变得很有必要。 本课题是基于单片机并采用 1-wire 总线技术和无线传输技术,设计一种应用于温室大 棚的温度测控系统。它的原理是利用温度传感器将温室大棚内的温度发给单片机处理,最 后再通过无线传输模块、rs-232 总线将采集的数据传送到计算机,进行温度的显示、处理 和报警。 整个系统设计分为硬件和软件两部分。在硬件方面,对硬件的各个环节都进行了仔细 的分析、
2、选取和设计。系统以单片机 at89s51 为控制核心,采用温度传感器 ds18b20 进行 数据采集,通过无线收发模块进行无线传输。在无线接收端,利用 lcd 液晶显示模块进行 相关数据显示,并且单片机可通过 rs232 接口与计算机通信,进行温度的检测与控制。在 软件方面,分为下位机软件与上位机软件两部分。下位机软件采用了 c51 高级语言进行程 序设计,实现软件编程的模块化和独立性,具有良好的可测试性和可靠性。上位机软件采 用 c+ builder 作为开发环境,实现与下位机通信、数据处理与显示等功能。 经过软件仿真和硬件实验,本设计实现了对大棚温度的监测和控制,监测距离大于 200m。
3、【关键词】:温室大棚; at89s51; ds18b20; 温度监控; 无线传输 装订线 abstract as 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 m
4、onitoring 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 tec
5、hnology 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 bu
6、s 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 syste
7、m 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, achievin
8、g 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
9、 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 con
10、trol of the greenhouses temperature. key words: hothouses; at89s51; ds18b20; temperature monitoring; wireless transmit module 目 录 1 前言 .1 1.1 课题来源 .1 1.2 需求分析 .2 1.3 课题研究内容 .3 2 系统总体设计方案 .4 2.1 系统工作原理 .5 2.2 系统组成 .5 2.3 系统性能指标.6 3 硬件电路设计 .7 3.1 设计原则 .7 3.2 单片机的选择 .7 3.3 单片机的最小系统设计 .7 3.4 温度传感器的选择 .8
11、 3.5 无线收发模块 .11 3.6 串口通信 .12 4 软件设计 .14 4.1 设计原则 .14 4.2 下位机软件设计 .14 4.3 上位机软件设计 .17 5 系统调试及结果分析 .22 5.1 硬件电路的调试 .22 5.2 系统可靠性及抗干扰设计 .25 5.3 系统实时性 .26 6 总结及问题探索 .28 6.1 总结 .28 6.2 问题探索 .29 致谢.30 参 考 文 献.31 附录一:实物图及 pcb .32 附录二:中英文翻译 .34 温室大棚温度无线测控系统的设计 1 前言 1.1 课题来源 温室大棚是农业设施的重要组成部分,利用温室大棚栽培蔬菜可以促进其早
12、熟和丰富 其产量,延长蔬菜的供应期,是扩大蔬菜生产、实现周年供应的一种有效途径,是发展三 高农业、振兴农村经济的组成部分,是我国农业走向现代化、科学化的标志之一。 尤其对于我国北方地区无霜期短,冬天日夜温差大,而长江流域地区虽然冬季能生产 一些耐寒蔬菜,但种类单调,且若遇冬季寒潮或夏秋暴雨,连绵阴雨等灾害性天气,则早 春育苗和秋冬蔬菜生产都可能会受到较大的损失,影响蔬菜的供应。而利用塑料棚进行蔬 菜栽培可利用保护设备在冬、春、秋进行蔬菜生产,以获得多样化的蔬菜产品。 以下将简要地介绍几种温室大棚。第一种是薄膜温室大棚 2,属于连栋温室中造价比 较低的类型,但由于薄膜老化等原因,薄膜质保 3 年
13、,因此,存在薄膜定期更换的问题。 它的优点是保温性能好,运行成本低;缺点是透光率低。适合种植对光照要求不高的植物 品种。 图 1.1 薄膜温室 第二种玻璃温室,它是源于早期引进的荷兰 venlo 温室,由于荷兰属于寡日照地区, 对透光要求高,因此,玻璃的高透光性非常适合于高光作物的种植。另外,玻璃温室的外 型美观,通透性强,因此,非常适合于建造花卉市场。 图 1.2 玻璃温室 在 2009 年 4 月 14 日,辽宁省成功研制出了“内保温组装式温室” 。它一种新的温室类 型,具有环保、造价低、可移动等特点,推广价值大。 温室大棚测控系统是实现温室生产管理自动化、科学化的基本保证。通过对监测数据
14、 的分析,结合作物生长规律,控制环境条件,使作物在不适宜生长的反季节中,可获得比室外 生长更优的环境条件,从而使作物达到优质、高产、高效的栽培目的。 单片机是专为工业测量与控制而设计,具有集成度高、可靠性高、性价比高的优势, 它给人们带来的方便也是不可否定的,采用它制成的监测控制系统非常之多。但人们对它 的要求越来越高,要为现代人工作、科研、生活提供更好的更方便的设施就需要从单片机 技术入手,一切向着数字化控制,智能化控制的方向发展。 无线数据传输广泛地运用在车辆监控、遥控、小型无线网络、无线抄表、门禁系统、 工业数据采集系统、身份识别、小型无线数据终端、安全防火系统、无线 232 数据通信、
15、 数字音频、图像传输等领域中。应用无线技术能够改善监测大棚温度的条件。 1.2 需求分析 (1)国内外大棚温度控制技术的发展 国外采用多数是一种全自控的喷滴灌温室大棚控制系统,它不需要人的看管。比较人 工的控制来说,这种智能自控温室最大的好处就是能够相对恒定的控制温室内部的环境, 对于对环境要求比较高的植物来说,更能避免因人为因素而造成生产损失。 北京的一家公司研制开发了一种应用于温室大棚的环测温控系统 3。它是采用 plc 与 各式的侦测器连线,管理人员需要在现场监控,温室的温度、湿度及亮度侦测器与 plc 连 结,ma8-6 透过 rs-232 与 plc 连结,使用图型化界面来设定与 p
16、lc 之间的资料的交换格式, 透过 gprs 与 internet 将相关数据资料传送到中央控制中心。中央控制中心的监控主机经 由 rs-232 与 ma8-1 连结,当回传资料值超出或低于设定临界值时,监控主机将报警资料经 由短消息系统传送给相关管理人员,管理人员可以及早采取措施解决问题。 图 1.3 环测温控系统 (2)结论 本系统设计和国外的先进设备相比还是存在一定的差距,与上述的环测温控系统相比, 本设计最大的特点是采用无线传输技术,管理人员不需要留在现场也能监测到大棚的温度 情况。而且使用数字温度传感器,这样硬件电路简单,调试起来也方便,还节省成本,测 量和控制的目标都能实现。 1.
17、3 课题研究内容 本课题的任务是设计一个大棚温度无线测控系统,对温室大棚的温度进行监测和控制。 本文将详细地介绍利用单片机制成的测温模块的软硬件设计和无线传输模块的具体应用, 并给出温度传感器接口的软件设计方案以及上位机界面的设计方案。 测量 温度 温度 单片机 数码管 显示 无线发 射模块 通过串口把数 据发送 大棚的温度信息 显示信息 无线接 收模块 rs232 接口 电平转换 电脑 温度 电信号 图 1.4 大棚温度无线测控系统的信息流图 2 系统总体设计方案 本系统主要针对温室内温度,设计了以 pc 机为上位机,单片机为下位机的温室大棚的 温度无线测控系统。综合考虑系统的精度、效率以及
18、经济性要求这三个方面之后,最终确定 下位机以 at89s51 单片机为控制核心,选用性价比比较高的传感器 ds18b20,实现对温度精 确测量与准确控制。当单片机检测到温度超过设定值时,则启动报警措施。下位机可以通过 rs-232 实现和上位机的串行通讯。为了便于系统的调试、移植、修改,软件设计以 c 语言 为基础,采用模块化设计,主要包括单片机的最小系统、数据采集模块、液晶显示模块、无 线收发模块以及串行通讯模块。上位机使用 c+builder 编写温度监控界面。 系统的总体设计分为硬件和软件设计两方面,首先确定系统实现的功能,然后对硬件、 软件分别进行规划,完成这些准备工作之后,就可以开始
19、制作硬件电路,编写软件程序, 在模块化调试结束后,进行软硬件联调,针对出现的问题对软硬件进行相应的修改,直到 调试成功为止。系统的总体设计流程图如图 2.1 所示。 明确功能要求 软件及硬件的功能分配 硬件电路设计 电路细节设计软件设计 硬件调试软件调试 需要开发工具支持 软硬件联调 程序固化 需要程序烧写器支持 运行 有问题? 结束 软硬件修改 y n 图 2.1 系统总体设计流程图 2.1系统工作原理 单片机首先通过温度传感器 ds18b20 采集温室大棚的温度,再通过无线发射模块,利 用单片机的串口进行编程,将测得大棚的温度一位一位地传送到监控室的接收模块中;接 收模块通过 rs232
20、接口与电脑相连,把数据传给电脑。在上位机中,利用 c+builder 编程, 让电脑和单片机正常地进行数据传输,同时上位机界面显示大棚的温度,并对异常的温度 变化进行报警,实现对大棚温度的无线测控,保证了农作物在适宜的温度下生长。 2.2 系统组成 整个无线监测系统主要分为三部分:即温度检测、无线传输和 pc 机对温度的监测环节。 温室大棚 无线传输模块 测温装置 监控室的 电脑 图 2.2 系统的整体连接图 (1)温度检测模块的组成 在温度检测中,由单片机 at89s51 主控制器所组成的最小系统以及外部接口模块主要有 温度传感器(ds18b20)、led 八段码显示器,无线发射模块,各模块
21、连接如下图所示。 温 室 大 棚 无线发射模块 主 控 制 器 时钟控制器 复位单元 电源 温度传感器 数码管显示 图 2.3 单片机温度检测模块 (2)温度无线传输模块的组成 无线传输系统主要有单片机at89s51组成的最小系统以及无线接收模块,液晶1602显示 和串口通讯模块组成。在本设计中,在无线接收端采用1602液晶(16引脚带背光接口)进行 显示。液晶是一种极低功耗的显示器件。在袖珍式仪表或低功耗应用系统中使用较多。 各模块的连接框图如图 2.4 所示。 液晶显示单元 无线接收模块 主 控 制 器 时钟控制器 复位单元 电源 图 2.4 无线传输模块 (3)上位机对温度的监测 实现大
22、棚温度的显示并且实时绘制出曲线,一旦温度有异常变化马上让电脑发出报警 提示。还加以整个系统的介绍和图片,方便使用者了解系统的原理和功能。 电脑 显 示 max232 电平转换单元 rs232 接口 无线接收模块 图 2.5 上位机的监测模块 2.3 系统性能指标 本系统具有良好的可靠性和经济性,能够实现对温室大棚温度的准确测量和控制,在 实际应用中有一定价值。具体性能指标分述如下。 测温范围:0+50; 测温分辨率:0.1; 工作电压:220v; 功耗:600mw; 监测距离:200m 左右; 3 硬件电路设计 3.1 设计原则 (1) 尽可能选择典型电路,并符合单片机的常规用法。为硬件电路的
23、标准化、模块化打下 良好基础。 可靠性和抗干扰设计是硬件设计必不可少的一部分,它包括芯片和器件的选择、去耦电容、 滤波电容、电路板的布线等。 (2) 尽量朝单片方向设计硬件。硬件器件越多,器件之间相互干扰越强,功耗也会越大, 就会不可避免的降低系统的稳定性。 (3) 在速度允许的情况下,尽量使用串行为主的扩展方式。串行扩展具有方便、灵活、电 路简单、占用 i/o 资源少等特点。 (4) 留下一些指示灯或通信口以方便调试和判别系统问题。 3.2 单片机的选择 在此次设计中,采用 at89s51 作为系统的控制芯片。at89s51 是一个低功耗,高性能 cmos 8 位单片机,片内含 4k byt
24、es isp(in-system programmable)的可反复擦写 1000 次 的 flash 只读程序存储器,器件采用 atmel 公司的高密度、非易失性存储技术制造,兼容 标准 mcs-51 指令系统及 80c51 引脚结构,芯片内集成了通用 8 位中央处理器和 isp flash 存储单元。 3.3 单片机的最小系统设计 在本设计中采用了 at89s51 单片机作为核心处理器,因此在电路中首先设计的是 at89s51 的最小系统。 at89s51 单片机的最小系统包含以下几部分。 单片机供电电路:at89s51 需要可靠的 5v 供电,在电路图中的 vcc 和 gnd 为供电网络
25、 标识符; 振荡电路:at89s51 需要一个稳定的振荡电路才能够正常工作,单片机的时钟信号是 用来提供单片机内各种微操作的基准。在该电路中采用了 12mhz 的晶振作为 at89s51 的时钟源;这里采用的是内部振荡方式,在引脚 xtal1 和 xtal2 外接晶振,通过内部 振荡得到的时钟信号比较稳定,在电路中使用较多。在下面的电路图中可以看到在晶 振两侧连了两个电容 c2,c3,它们是起稳定振荡频率、快速起振的作用,电容值一般 为 530pf。本设计中用的是 30pf 的电容。 复位电路:复位电路是单片机正常运行的一个必要部分。复位操作一般有两种基本形 式:上电复位和开关复位。在本设计中
26、采用的是第二种。复位电路应该保证单片机在 上电的瞬间进行一次有效的复位,在单片机正常工作时将 rst 引脚置低。此外通过一 个按键进行手动复位,在单片机运行不正常时使用。上电后,由于电容充电,是 rst 持续一段高电平时间。当单片机已经在运行时,按下复位键也能使 rst 持续一段高电 平,从而实现上电且开关复位的操作。通常我们选择的复位电容为 1050f,电阻为 110k。在本设计中复位电容选的是 47f 的,电阻选的是 10k 的。 at89s51 的最小系统电路如图 3.1 所示。 ea/vp 31 x1 19 x2 18 reset 9 rd 17 wr 16 int0 12 int1
27、13 t0 14 t1 15 p10/t 1 p11/t 2 p12 3 p13 4 p14 5 p15 6 p16 7 p17 8 p00 39 p01 38 p02 37 p03 36 p04 35 p05 34 p06 33 p07 32 p20 21 p21 22 p22 23 p23 24 p24 25 p25 26 p26 27 p27 28 psen 29 ale/p 30 txd 11 rxd 10 u1 at89s51 12 y1 xtal vcc 30pf c2 30pf c3 gnd 10k r1 s1 sw-pb vcc gnd rst rst 47uf c1 图 3.
28、1 at89s51 的最小系统电路 3.4 温度传感器的选择 在选择温度传感器时,应考虑的主要因素有温度的测量范围、精度、测温时间、稳定 性、灵敏度和经济性。 (1)温度传感器的种类 4 温度传感器的发展大致经历了以下三个阶段: 传统的分立式温度传感器; 模拟集成温度传感器; 智能温度传感器; 目前,国际上新型温度传感器正从模拟式向数字式、由集成化向智能化、网络化的方 向发展。 常见的温度传感器有模拟集成温度传感器(ad590、lm334) 、单总线数字温度传感器 (ds18b20) 、标准总线式智能传感器(ds1629) 、多通道智能温度传感器(max6691) 、热电 偶温度传感器、光纤传
29、感器等。 以下将对这些传感器简单介绍一下。 1)模拟集成温度传感器 它是将温度传感器集成在一个芯片上、可完成温度测量及模拟信号输出功能的专用 ic。模拟集成温度传感器的主要特点是功能单一、测温误差小、价格低、响应速度快、传 输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准。 2)热电偶温度传感器 热电偶是工业上最常用的测温检测元件之一,其优点是测量精度高,测温范围广,常 用的热电偶从-50+1600均可连续测量。但是,热电偶的材料一般都比较贵重,成本较 高,而且一般需要冷端补偿。 3)数字温度传感器 数字温度传感器内部都包含温度传感器、a/d 转换器、信号处理器、存储器(
30、或寄存器)和 接口电路。它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现 912 位 的数字值读数方式。这些芯片在检测点已把被测信号数字化了,因此在单总线上传送的是 数字信号,这使得系统的抗干扰性好、可靠性高、传输距离远。 结论 由于 at89s51 单片机内没有 a/d 转换器,为了准确地采集温度,一种方法是在外围电 路中加 a/d 转换器,但是这样就使软硬件设计更加复杂化;还有一种更简单的方法就是使 用数字温度传感器。所以,在本设计中,采用的是单总线数字温度传感器(ds18b20) 。它 能够满足本设计要求,而且它具有体积小、构成的系统结构简单并且成本低等优点,应用 越来越广泛
31、。 (2)单总线协议的介绍 1)单总线的工作原理 近年来,美国的达拉斯半导体公司推出了一项特有的单总线(1-wire bus)技术。该 技术采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的。 顾名思义,单总线即只有一根数据线,系统中的数据交换、控制都由这根线完成。设 备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据 时能够释放总线,而让其它设备使用总线。单总线通常要求外接一个约为 4.7k 的上拉电阻, 这样,当总线闲置时,其状态为高电平。主机和从机之间的通信可通过 3 个步骤完成,分 别为初始化 1-wire 器件、识别 1-wire 器件和交换
32、数据。由于它们是主从结构,只有主机 呼叫从机时,从机才能应答,因此主机访问 1-wire 器件都必须严格遵循单总线命令序列, 即初始化、rom、功能命令。 2)单总线的特点 单总线技术以其线路简单、硬件开销少、成本低廉、节省 i/o 口资源、便于总线扩展 和维护、软件设计简单的优势而有着无可比拟的应用前景。其通信可靠简单,很容易实现, 是值得关注的一个发展领域。 (3)ds18b20 的功能介绍 ds18b20 是 maxim-dallas 公司生产的一款高性能、宽测 温范围的串行数字接口温度传感器。它是一种可组网的高精 度数字式温度传感器,由于其具有单总线的独特优点,可以 使用户轻松地组建起
33、传感器网络,并可使多点温度测量电路 vcc 1 i/o 2 gnd 3 wd ds18b20 4.7k r1 gnd vcc 变得简单、可靠。它具有微型化、低功耗、高性能、抗干扰能力强、易配处理器等优点, 特别适用于构成多点温度测控系统。ds18b20 的 rom 中的 64 位序列号是出厂前被光刻好的, 共分为 8 个字节,字节 0 的内容是该产品的厂家代号 28h,字节 16 的内容是 48 位器件 序列号,字节 7 是 rom 前 56 位校验码。它可以看作是该 ds18b20 的地址序列码, 每个 ds18b20 的 64 位序列号均不相同,这样就可以实现 1 根总线上并接多个 ds1
34、8b20 温度传感 器而互不影响。在单片机容量允许内,最多可以挂接 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 的各引脚功能说明如下:
35、 dq:数据端; vdd:供电电源; gnd:电源供给地; ds18b20 主要有 64 位 rom、温度敏感元件、非易失性温度报警触发器 th 和 tl 及配置 寄存器四部分组成。配置寄存器为高速暂存存储器的第 5 个字节。ds18b20 在工作时按此 寄存器的分辨率将温度转换成相应精度的数值。 ds18b20 对所测数据的转换结果以 16bit 带符号位扩展的二进制补码的形式存放在寄 存器中。ds18b20 通过其内部的数字转换电路将模拟量转换为数字量 ,通过显示模块直接 以数字方式显示温度。其典型的温度值数据如表 3.1 所示。 ds18b20的电源供电方式有2种:外部供电方式和寄生电源
36、方式。工作于寄生电源方式时, vdd和gnd均接地,它在需要远程温度探测和空间受限的场合特别有用,原理是当1wire总线 的信号线dq为高电平时,窃取信号能量给ds18b20供电,同时一部分能量给内部电容充电, 当dq为低电平时释放能量为ds18b20供电。但寄生电源方式需要强上拉电路,软件控制变 得复杂(特别是在完成温度转换和拷贝数据到e2prom时) ,同时芯片的性能也有所降低。 因此,在条件允许的场合,尽量采用外供电方式。 4)ds18b20 的单片机接口电路 当使用 at89s51 控制 ds18b20 进行温度测量时,只需要使用 at89s51 的一个引脚和 ds18b20 的数据端
37、口相连即可,其电路图如图 3.3 所示。 图 3.2 ds18b20 的引脚 使用 4.7k 上拉电阻的作用:因为 ds18b20 是单总线温度传感器,数据线是漏极开路, 如果 ds18b20 没接电源,则需要数据线强上拉,给 ds18b20 供电;如果 ds18b20 接有电 源,则需要一个上拉即可稳定的工作。 3.5 无线收发模块 无线收发模块的一种重要的用途就是配合单片机来实现数据通讯,在本设计中就是利 用它的这个功能。 (1)无线发射模块 电路采用 ask 方式调制,就是用数字调制信号的通断。当数据信号停止时发射电流降 为零,功耗很低。电路本身未设编码集成电路,而增加了一只数据调制三极
38、管 q1,这种结 构使得它可以方便地和其它固定编码电路、滚动码电路及单片机接口,而不必考虑编码电 路的工作电压和输出幅度信号值的大小。模块输出功率由电压决定,电压变化时发射频率 基本不变,发射电压为 3v 时,空旷地传输距离约 20 50m,发射功率较小,当电压 5v 时约 100200m,当电压 9v 时约 300500m,当发射电压为 12v 时,为最佳工作电压,具 有较好的发射效果,发射电流约 60ma,空旷地传输距离 700800m,发射功率约 500mw。 在本设计中,温度的传输距离大于 200m。 主要技术指标: 1)通讯方式:调幅 am 2)工作频率:315mhz 3)频率稳定度
39、:75khz 4)发射功率:500mw 5)发射电流:350ma 6)工作电压:dc 312v 实物图如图 3.4 所示。 (2)无线接收模块 无线接收模块采用的是超外差接收模块,它是一款性能十分优异的高频接收模块,采 用最先进的 rf 集成电路, 超外差工作方式,工作稳定可靠,广泛应用在各种干扰大、环境恶劣的场合。实物图如 图 3.5 所示。 主要技术指标: 1)通讯方式:调幅 am 2)工作频率:316.8mhz 3)频率稳定度:75khz 4)工作电流:5ma 5)工作电压:dc 5v 6)输出方式:ttl 电平 适用范围: 1)车库门无线控制 系统 2) 各类防盗系统 3) 工业遥控、
40、遥测 图 3.3 ds18b20 的接口电路 图 3.4 无线发射模块 4)低波特率的数据 传输 3.6 串口通信 3.6.1 串口的简介及作用 计算机和外部设备进行通信常通过串口和并口两种方式。串行通信是在一根传输线上 一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送,因此, 特别适合于远距离传输。对于那些与计算机相距不远的人机交换设备和串行存储的外部 设备如终端、打印机、逻辑分析仪、磁盘等,采用串行方式交换数据也很普遍。所以串行 接口是微机应用系统常用的接口。许多外设和计算机按串行方式进行通信,这里所说的串 行方式,是指外设与接口电路之间的信息传送方式,实际上,cp
41、u 与接口之间仍按并行方 式工作。 在单片机系统中,串口是一个非常重要的组成部分。通常使用单片机串口通过 rs232 接口和电平转换芯片 max232 与上位机连接,以进行上位机与下位机的数据交换、参数设置、 组成网络以及各种外部设备的连接等。rs232 串行接口总线具有成本低、简单可靠、容易 使用等特点,加上其历史悠久,所以目前应用仍然非常广泛;特别对于数据量不是很大的 场合,串口通信仍然是很好的选择,有着广阔的使用前景。 在单片机编程中,串口占了很 重要的地位。 3.6.2 单片机与 pc 机的串口通信 (1)通信接口的选择 为了便于计算机和各种外围设备的串行通信连接,更广义地来讲是为了各
42、种数据终端 设备(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 被定
43、义为一种 在低速率串行通信中增加通信距离的单端标准。rs-232 采取不平衡传输方式,即所谓单端 通信。典型的 rs-232 信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平 在+5+15v,负电平在-5-15v 电平。当无数据传输时,线上为 ttl 电平,从开始传送数 据到结束,线上电平从 ttl 电平到 rs-232 电平再返回 ttl 电平。完整的 rs-232 接口有 25 根线,采用一种 25 芯(针)的插头座,彼此连接十分方便。现在经常采用一种 9 针的插座来 互相连接,因为 25 条线中最经常使用的只有 9 条线。由于一般的微机中都有 rs-232 接口, 利用 rs
44、-232 通信进行测量,连接、携带、运输方便。在那些临时、快速测量而测量的通道 数又不多的场合下,利用 rs-232 接口的测量模块十分方便。其传送距离最大为约 15m,最 高速率为 20kb/s。 基本的数据传送引脚 txd:数据发送引脚; rxd:数据接收引脚; gnd:信号地线; 在单片机通信中最简单的通信只需连这三根线。 由于单片机的串行发送线 txd 和接收线 rxd 是 ttl 电平,而 pc 机的 com1 或 com2 的 rs-232c 连接器(d 型 9 针插座)是 eia 电平,因此单片机需加接 max232 芯片,通过串行 图 3.5 无线接收模块 电缆线和 pc 机相
45、连接。单片机和 pc 机的连接如图 3.6 所示。 ea/vp 31 x1 19 x2 18 reset 9 rd 17 wr 16 int0 12 int1 13 t0 14 t1 15 p10/t 1 p11/t 2 p12 3 p13 4 p14 5 p15 6 p16 7 p17 8 p00 39 p01 38 p02 37 p03 36 p04 35 p05 34 p06 33 p07 32 p20 21 p21 22 p22 23 p23 24 p24 25 p25 26 p26 27 p27 28 psen 29 ale/p 30 txd 11 rxd 10 u1 80c52 x
46、2 x1 c1+ 1 vdd 2 c1- 3 c2+ 4 c2- 5 vee 6 t2out 7 r2in 8 r2out 9 t2in 10 t1in 11 r1out 12 r1in 13 t1out 14 gnd 15 vcc 16 u2 max232acpe 1 2 3 4 5 6 7 8 9 11 10 j1 d connector 9 104 c2 104 c6 104 c3 104 c8 104 c4 p12 p13 p11 图 3.6 单片机和 pc 机的连接图 2)rs-232 的 eia 标准 它是以正负电压来表示逻辑状态,而 ttl 以高低电平来表示器逻辑状态。目前较广泛
47、 使用的转换芯片很多,但很多需要正负 12v 两种电源,使用不方便。而 maxim 公司的 max232 芯片之需要+5v 电源就可以实现 ttl 和 eia 的双向电平转换,因此得到了广泛应用。 (2)通信协议的设计 在进行数据通信时,必须解决好两个方面的问题:一是可靠性,二是速度。可靠性是 第一位的,速度只是在可靠的基础上的追求。可靠快速传输的实现,需要上、下位机软件 以及通信协议等各个环节的可靠和相互配合。 在串行通信的硬件设计完成后,通信双方(在本系统中指单片机和上位机)必须约定 通信协议,否则将无法保证通信数据的可靠性,从而失去通信的意义。协议一方面要规定 通信的基本参数,如通信波特
48、率、数据位数、停止位数及奇偶校验的方式等,更重要的一 方面是要规定双方传输数据的格式,以及传输数据时控制数据流的方式。现约定系统的通 信协议如下: 1)串行通信波特率为 1.2kbps; 2)数据传送格式为 1 个起始位,8 个数据位,1 个停止位; 3)无奇偶校验; 4)串行通信方式采用查询方式; 4 软件设计 4.1 设计原则 (1) 明确任务,弄清软件所承担的任务细节。 (2) 软件结构设计,合理的软件结构是设计出一个性能优良的单片机应用系统软件的基础。 (3) 模块化程序设计,是单片机应用中最常用的程序设计技术。将一个完整的程序分解成 若干个功能相对独立的较小的程序模块,对各个程序模块
49、分别进行设计、编制和调试, 最后将各个调试好的程序模块进行联调。 (4) 编写程序。根据系统功能和操作过程,列出程序的功能流程图。在完成流程图的设计 之后,便可编写程序了。 4.2 下位机软件设计 下位机采用 c51 在 keil uvision3 的开发环境进行编程,在仿真软件中调试成功后, 再把生成的 hex 文件烧到单片机中,在真实的硬件环境下进行测试。 具体设计主要分两部分,一是温度传感器的驱动和测温程序,另一个是利用单片机串 口编写的无线传输程序。下面将对程序中的关键部分进行阐述。 (1) 温度传感器接口软件设计 主机(单片机)控制 ds18b20 完成温度转换要经过三个步骤:每一次
50、读写之前都要 ds18b20 进行复位操作,复位成功后发送一条 rom 指令,最后发送 ram 指令,这样才能对 ds18b20 进行预定的操作。复位要求主 cpu 将数据线下拉至少 480,然后释放,当 ds18b20 受到信号后等待 1560,然后发出 60240的存在低脉冲,主 cpu 收到此 信号表示复位成功。流程图如图 4.1 所示。 初始化 ds18b20 开始 应答脉冲? 发跳过 rom 的 命令(0xcc) 延时 y n 发转换温度 的指令(0x44) 跳过 rom 读取暂存器中的 数据(0xbe) 读取第一、二字 节即为温度数据 图 4.1 下位机软件设计的流程图 具体操作:
51、 初始化: 总线控制器发出一个复位脉冲(一个最少保持 480的低电平信号) ,然后释放总线, 进入接收状态。单线总线由 4.7k 的上拉电阻拉到高电平。探测到 i/o 引脚上的上升沿后, ds1820 等待 1560,然后发出存在脉冲(一个 60240的低电平信号) 。 图 4.2 ds18b20 初始化时序 复位子程序如下: void reset ( ) ds = 0; delay(90);/ 精确延时大于 480,当总线停留在低电平超过 480,总线 上所以器件都将被复位 ds = 1;/产生复位脉冲后,微处理器释放总线,让总线处于空闲状态 delay(4); rom操作命令 主机收到ds
52、18b20在线信号后,就可以发送四个rom操作命令中的一个,这些命令字均 为8位的16进制数(最低位在前) ,现将这些命令说明如下。 33h:读 rom,通过该命令主机可以读出 rom 中 8 位系列产品代码、48 位产品序列号和 8 位 crc 码; 55h:匹配rom,多片ds18b20在线时,主机发出该命令和一个64位数列,ds18b20内部 rom与主机数列一致者,才响应主机发送的寄存器操作命令,其他ds18b20等待复位。该命 令也可以用在单片ds18b20情况。 cch:跳过 rom 序列号检测命令,对于单片 ds18b20 在线系统,该命令允许主机跳过 rom 序列号检测而直接对
53、寄存器操作,从而节省时间。 存贮器操作命令 44h:开始温度转换 ds18b20 的读写操作 1)写时间片,包括写 0 时隙和写 1 时隙。所有写时隙至少需要 60,且在 2 次独立的 写时隙之间至少需要 1的恢复时间,两种写时隙均起始于主机拉低总线。写时序如图 4.3 所示。 图 4.3 ds18b20 写时序 2)读时间片,1wire 总线器件仅在主机发出读时隙时,才向主机传输数据,所以,在主 机发出读数据命令后,必须马上产生读时隙,以便从机能够传输数据。所有读时隙至少需要 60,且在 2 次独立的读时隙之间至少需要 1的恢复时间。每个读时隙都由主机发起, 至少拉低总线 1。主机在读时隙期
54、间必须释放总线, 并且在时隙起始后的 15之内采 样总线状态。时序图如图 4.4 所示。 (2) 温度无线传输软件设计 此模块的软件设计主要是要确保接收到正确的温度数据,所以在程序中要加一些数据 头进行校验。 1)发送温度程序: while(1) /温度转换,获得温度 sbuf=0 xaa; /以下这段程序是为了防止无线接收模块受到干扰,接到的数据不对 while(!ti); /所以加上两个数据头,只有在正确接收到它俩后,才能开始接收我 们需要的数据 ti=0; sbuf=0 x55; while(!ti); ti=0; sbuf=table3a; /将测得的温度值的各位及小数点逐位的发送出去
55、 while(!ti);/百位 ti=0; /依次发送其他各位 2)接收温度程序 void receive() 图 4.4 ds18b20 读时序 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; /再把百位发
56、送给电脑 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 应用程序开发,尤其是开发界面、数据库等 w
57、indows 应用程序更加快速、高效。borland c+ builder 是一种面向对象的可视化应用程 序开发工具,为程序开发人员提供了十分轻松而快捷的开发环境。它以其友好的界面设计和 方便的编程实现,广泛应用于工程实践中。c+ builder 作为一个开发快、界面友好的应用 软件,已经广泛应用于工程项目的开发中。然而在工程中十分常见的就是实验数据的串行传 输和可视化处理。 4.3.2 关键技术 用 c+builder 具体实现串口的通信,必须掌握 c+builder 中对串口操作的方法,每 种语言都提供了对串口读写操作,方法一般各有不同,在 c+builder6.0 环境下串口的 4 种实
58、现方法有: (1) 采用在 c+程序中嵌入行间汇编,直接对 uart 串口通讯硬件进行操作,实时性最高,但 编程需要了解硬件; (2) 利用 windows 的 api 通信函数,编程较复杂,但灵活性最大,实时性较高; (3) 利用 vb 下高性能的 activex 控件 mscomm,编程简单,实时性不错,二进制接收模式 编程稍有点复杂; (4) 利网上的串口通信控件 tcomm,编程最简单方便,且可靠。但无论用哪种方法来开发 串口通信程序,其实现步骤差不多,如图 4.5 所示。其中使用 api 通信函数实现步骤稍 有不同,它是先打开串口,在得到串口句柄后,再进行串口参数的配置。 打开 串口
59、 接收数据和发 送数据程序 关闭 串口 配置串口 参数 图 4.5 串口通信程序实现步骤 本设计使用的是第四种方法,利用 tcomm 控件实现串口通信。tcomm 控件可以实现 dtr/dsr、rts/cts 硬件流控制,是比较完善的串口控件。tcomm 控件的串口通信参数设置与 mscomm 类似默认情况下。tcomm 控件接收和发送数据支持字符串和字节两种传输模式。在 接收和发送数据前需要初始化串口,用 setportopen()方法打开串口,退出程序时用 closecomm()方法关闭串口。 /打开串口、接收和发送数据的语句 comm1-portopen=true; /打开串口 mrec
60、eive-text = comm1-input; /接收数据 mtransmit-text= comm1-output; /发送数据 / 接收下位机温度及将获得的数据绘制成曲线的程序 c+builder 提供了一个功能强大的可视化控件 tchart,非常便于数据的图形化显示。 通过设置组件属性,可以生成点图、线图、饼图、柱状图、区域图,能够显示一维序列或 二维序列,可以自由设定刻度线和坐标。给序列添加一个数据只需调用 addx、addy、addxy 方法,非常方便。因为需要得到温度的实时曲线图,所以在定时器 timer 的 ontimer 事件中编写程序,关键的语句如下: if (comm1-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 20948:2024 EN Vegetable fats and oils - Determination of aflatoxins B1,B2,G1 and G2 by immunoaffinity column clean-up and high-performance liquid chromatography
- 学校教育服务行业相关项目经营管理报告
- 粪便潜血检测用化学试纸项目营销计划书
- 布料除臭行业经营分析报告
- 去中心化网络服务行业市场调研分析报告
- 兽皮产业链招商引资的调研报告
- 裘皮披肩商业机会挖掘与战略布局策略研究报告
- 废旧汽车回收利用行业经营分析报告
- 自行车测速计项目营销计划书
- 自行车前叉市场分析及投资价值研究报告
- 肠梗阻的业务查房
- 2024-2029年中国医疗卫生十四五期间行业发展分析及竞争格局与发展战略研究报告
- 2024市政工程考试题(含答案)
- 24春国家开放大学《农业推广》调查报告参考答案
- 医院开诊仪式策划方案
- 造口回纳术护理
- 螃蟹水产养殖知识培训课件
- 过敏性休克的急救和处理专题医学知识宣讲培训课件
- 工业自动化中的生产柔性与响应性制造
- JC/T2055-2020 宠物垫圈用颗粒膨润土
- 《西游记》第三回读后感
评论
0/150
提交评论