基于无线传感器网络的灌溉系统设计论文(编辑修改稿)内容摘要:

秉承了清晰化一的基于无线传感器网络的灌溉系统设计 6 风格,其设计宗旨是对于一个固定的问题,只要寻求一种最好的解决方式就可以了。 更是在脚本语言的 实现方面,达到了用法简洁、使用高效的效果。  Visual Basic 语言: BASIC 语言是高阶程序式的一种语言,是一种为初学者设计的程序设计语言。 它在编写完成后不需要经由编译和链接等过程操作就可以直接进行运行,但若想单独运行时仍需要创建成工程文件。 而在和操作系统方面,它的语言能够配合电脑的操作功能得以充分发挥,使得它收到广大程序员们的喜爱。  C语言: C语言是一种稳定的、优雅的、安全的、简单的、由 C语言和 C++语言衍生出来的计算机编程语言。 并一起强大的操作能力、创新的语法特性、强大的操作能力和便捷的面向组 件编程能力成为 ECMA 与 ISO 标准规范。 它还为自己增加了源代码版本定义等新特性,使得其在开发领域赢得了一席之地。 操作系统选择 对于软件的开发,操作系统的选择也是一个必不可少的问题,目前软件的运行的操作系统大多是 Linux 或者红帽等软件开发系统。 然后现在用户大多都使用的则是微软的windows 操作系统,因此对于操作系统的选择,更需要满足用户的需求。 操作系统 系统简介或配置要求 Linux 免费试用,自由传播的类 Unix 操作系统、多种运行平台、嵌入式系统 Windows XP 配置: CPU 233MHZ、内存 64MB、硬盘 、显卡 4MB 显卡 Windows 7 画面更加美观,搜索和使用信息更加简单,系统更加安全不易遭受攻击 Windows 8 使用统一的可扩展固件界面,支持 ARM 架构的系统 ,支持 NFC 近距离通信 表 2 操作系统简介 系统利用操作系统来运行控制端的软件,对于操作系统的选择有以下几方面需要考虑: ① :对于电脑本身配置的选择,不同的电脑配置适应不同的层次操作系统。 ② :对设计要求的高低,选择出适当类型的操作系统 ③ :考虑用户对操作系统的熟练使用度,选择使用率较高 的系统面向用户。 通信端设计方案 系统的通信端是想把控制端的用户输入的信号,通过通信端给发送出去,由此可知,通信端包括两部分,发送端和接收端。 发送端负责发送控制端用户输入的信号,而接收端则接收发送端发送出来的信号。 因此,通信端的两个部分就因为是一对相互通信的设备。 而现在目前市场上负责通信的模块也很多,比如蓝牙模块, NRF 无线模块,无线 WLAN基于无线传感器网络的灌溉系统设计 7 以及 zigbee 无线模块等。 1. 蓝牙模块简介 无线蓝牙串口模块 HC05 是一种主从一体的模式,无线蓝牙串口分为两个模块,一个是蓝牙适配器,插在电脑上的。 另外 一个是蓝牙模块,插在处理器上的。 在用法上,蓝牙适配器适用于所有蓝牙设备和电脑进行通信,符合 +EDR 的蓝牙标准,理论上可传输距离达到 100 米,属于短距离通信,并且最多允许 7 个蓝牙串口设备同时连接,支持 win win8 等通用 PC 机操作系统。 其模块引出四个引脚分别是 VCC、 GND、 TXD、 RXD,并且从模块的接口可以直接与各种单片机处理器相连接,在使用时,配对之后当作全双工串口使用,根根本不需要了解任何的蓝牙协议。 用法明确,操作简单,对于刚接触无线通信的技术员是个很好的模块选择。 图 5 无线蓝牙串口模块 2. NRF 无线模块 目前 NRF 无线网络在很多领域得到了应用,并在中短距离传输领域占据了一方之地。 在当前使用频率上,属 NRF2401 和 NRF905 最高。 其传输特点属于多频点传输,最多支持 125 个频点,满足多点通信和调频通信的需要。 而 NRF2401 模块更是采用了稳定过的CH340T 芯片作为 USB 转串口,内置的看门狗防司机程序,完全胜任环境恶劣的工业控制现场的稳定运行。 其 NRF2401 无线模块支持 AT 明了对系统进行相关配置,更是支持 Server20xx、 VISTA、win7win8/3264 位各种操作系统。 其与蓝牙相比,可以使传输距离更远,远远操作蓝牙串口 10 米左右的传输距离。 基于无线传感器网络的灌溉系统设计 8 图 6 NRF 无线传感器模块 3. 无线 WLAN 模块 无线 WLAN 串口模块是一种基于 ESP8266 串口的的 WIFI 无线传输模块,其传输距离属于 WIFI 远距离传输类型模块,由于其具有强于其他无线传输模块的穿墙能力,使得其在无线传输中备受关注。 无线 WLAN 传输模块的优势在于价格便宜、体积较小、功能强。 大,其内部跑的是 LWLP 协议,方便嵌入到其它产品中。 其运行模式有三种: AP、 STA、AP+STA 三种模 式,并且三种模式可以共同存在。 无线 WLAN 模块使用完善简洁高效的 AT指令,让使用者更加方便、快捷。 图 7 无线 WLAN 传输模块及其 PCB 图 4. Zigbee 无线传感器模块 Zigbee 技术是一种低功耗、短距离、低成本的双向无线通信网络技术。 Zigbee 联盟开发了一种安全层,用来保证这种便携式设备不会意外的泄露其信息,并且,这种利用网络的远距离传输更是不会被其他节点所获取。 每一个 zigbee 系统网络只有仅有一个zigbee的协调器,它的作用是最开始选择网络通信的标识,并开始这个网络。 然后 zigbee路由 开始允许其它设备加入到这个网络中进行查找、建立、修复网络,并负责转发辛哈指令。 最后 zigbee 的终端节点是出于网络的最边缘,主要任务是发送或者接收信息,并且它是不能转发信息的。 通常在我们用这个模块的时候它是待机状态,不用的时候一基于无线传感器网络的灌溉系统设计 9 般都会进行相应的休眠,以确保节能环保。 图 8 Zigbee 无线网络模块 处理端设计方案 系统的处理端主要负责接收用户传送过来的指令,并根据解析的指令去控制灌溉器进行灌溉。 根据处理端需要完成的任务要求,系统需要在这里设置一个中央处理器来完成对信号的接收和外部设备的控制。 目前中央处理器的种类更是成千上万,考虑到对芯片使用熟练度的问题,因此选择使用课堂上老师讲过的或者使用比较熟练的较为合适。 这里列出 51 单片机和 STM32 单片机的对比。 51 单片机与 STM32 单片机的对比 单片微型计算机成为单片机,是一种大规模集成电路芯片,是 CPU、 RAM、 ROM、 I/O 接口和中断系统于同一硅片的器件。 随着单片机迅速的发展,出现了许多高性能新型机种,已逐渐成为工厂自动化和各控制领域的支柱产业。 下面介绍两款常用的单片机 51 单片机和 STM32 单片机。 单片机类型 简介及优缺点 51 单片机 使用经典的 MCS51 内核 , 拥有灵巧的 8位 CPU 和在系统可编程 Flash,片上集成 512 字节 RAM,用户应用程序空间可达到 64K 字节。 优点:功能齐全、抗干扰能力强、兼容性较好、网上的资料较多,编译环境较为简洁,对于初学者容易接受和使用。 价格低廉。 缺点:功能实现单一、需要增加多种外设、处理器速度较慢。 基于无线传感器网络的灌溉系统设计 10 STM32单片机 使用 ARM 架构内核, 32 位的 CoreM3 处理器。 最高工作频率可达 72MHz,存储器达到 128K 字节的闪存和 20K 字节的 SRAM,外设齐全。 优点:功能高效且齐全,拥 有多种外设,处理器处理数据速度较高。 缺点:指令集过多,需要使用官方库函数。 功能寄存器较多,不适合初学者学习。 价格较贵。 容易大材小用。 表 3 51 单片机与 STM32 单片机简介 灌溉器端设计方案 灌溉器端是处理器控制的外部设备,主要实现灌溉的目的。 图 9 灌溉器及其喷头 正如上图所示,目前灌溉器的种类繁多,并且在大小公园、草地随处可见各种灌溉器。 社会上的灌溉器大多都是利用机械原理进行园地的灌溉。 而作为系统而言,则更倾向于利于控制的灌溉器件。  机械灌溉器:安装简单,易于控制人员操作。 但只能 机械转向,纯自动控制,不能人为控制其转向。  抽水喷水机:实质是一个喷水电机,利用电机的运转进行抽水喷水,价格便宜,利于控制,且可人为控制其灌溉。 系统模块设计和功能实现 控制端设计与实现 系统设计中,在控制端需要接收用户的控制指令,利用客户端软件来完成控制端的要求。 根据上述各种开发语言的比较,这里系统选择 Python 语言编写一个脚本软件,因为它的操作简单,控制容易,解决问题的方法比较明确,用起来较为方便,能够满足对系统控制端的需求。 它主要用来打开串口,并监测键盘的按键,同时对有效按键进行信息采集 并发送。 由于 windows8 的用户量较大,且其具有兼容性好,稳定性高的优点,因此系统选择 windows8 作为客户端软件设计的操作系统。 软件开发流程设计 基于无线传感器网络的灌溉系统设计 11 IDLE(python GUI)是 python 程序开发的基本集成开发环境,继承了 IDE 的功能。 具有语法加亮、基本文本编辑、段落缩进、调试程序等基本功能。 其强大的功能使得它非常实用,没有其内存地址和变量内容,都可以进行同步和其他的分析。 下面是系统设计的软件流程图: 图 10 串口发送软件流程图 驱动的编写 根据软件流程图可知首先需要一个串口,这个串口是发送模块与 PC 机相连接的串口,这个软件需要打开它,在 python中可以调用 serial模块,利用 serial模块中的 Serial()函数进行串口的打开。 其串口传输必须设置相同的波特率,这里我们人为规定所有数据传输都用 9600Mpbs 来进行传输,数据位为 8位,没有校验位,停止位是 1位。 然后我们得知道其状态,就必须有一个状态显示框去显示其是否打开成功,最后就是开始监测用书键盘的输入,但是对于键盘的输入并不是所有的都 是有效信号,因此在这里应该做一下过滤,把有效的信号保存,并通过 write()函数发送出去。 下面是软件的界面: 开始 打开串口 监控按键信息 有效信息 串口发送出去 结束 失败 成功 否 是 基于无线传感器网络的灌溉系统设计 12 图 11 控制端操作界面 由控制界面可知,在这里,用户可以输入需要打开的 COM,这个 COM 串口必须是和发送端模块相连接的串口,不然就算打开也不会发送出去。 输入完串口号点击 Open COM就可以打开串口了,如果打开成功,后面的状态栏就会显示 COM 串口打开成功,若是想关掉就直接点击 Close COM 就可以了,同样状态指示栏会显示当前串口打开情况。 若是状态指示栏显示串口打开成功,则用户就可以按下键盘 相应的信号进行控制灌溉机了。 下图是几个按键含义: 键盘按键 状态显示 操作含义 ‘ W’ ‘ GO UP’ 打开喷水机喷头 ‘ S’ ‘ GO DOWN’ 关闭喷水机喷头 ‘ A’ ‘ GO LEFT 向左旋转喷头 ‘ D’ ‘ GO RIGHT’ 向右旋转喷头 ‘ ESC’ ‘ EXIT’ 退出 表 4 键盘按键操作释义 由操作释义可知,当用户按下键盘“ W” 键时,灌溉器的喷头开关就会打开,灌。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。