3km无线模块WiFi远距离控制智能浇花系统设计
发布日期:2021-12-13
浏览次数:2437
3km无线模块WiFi远距离控制智能浇花系统设计,伴随着科学技术的不断发展,人们的衣食住行也越来越智能化,智能家居这个理念意在提高人们的生活水平,自出现以来,便受到市场的青睐,必然是未来人们居住环境的趋势。现代人们喜欢在家里或办公室摆放一些盆栽,起到净化空气、美化环境的作用。但随着生活节奏的加快,人们不能有效地照顾家中的盆栽。针对这种情况,可采用智能浇花机,传统的基于单片机设计的自动浇花系统多采用蜂鸣器报警,液晶显示器显示温湿度等。鉴于用户使用的灵活性和移动性,本文以较广泛的Android移动终端取代了传统的PC终端,实现了利用Android移动终端在家庭中进行环境监控和喷水控制。实现了用户使用Android智能手机对盆栽进行监控并完成自动浇水。因为不同植物适合生长的温、湿度环境不同,使用者可通过手机APP设定盆栽植物名称及适宜植物生长的温湿下限。在盆栽土壤湿度低于其适宜的湿度值时,可选用自动或手动方式,使泵运转,提高土壤湿度;当湿度达到高湿度时,An-droid移动终端接收到报警提示,控制水泵停止工作。
由硬件设备端和移动控制端两个部分组成。浇花机硬件设备端主要包括电源电路、复位电路、单片机小系统、土壤湿度电路、空气温度和湿度电路、3km无线模块WiFi远距离WiFi通讯电路、继电器驱动电路。手机控制端软件是基于MVC模式的Android手机APP。
用S单片机40针,用DIP40封装。该系统由电源电路、复位电路组成的单片机小系统组成,然后进行外围电路的开发。用Y模块对土壤湿度进行模拟量测定,利用A模块将所采集的模拟量转换为数字量输入单片机,组成土壤湿度电路,除监测土壤湿度外,还增加了空气温度和湿度检测功能,使用D模组,继电器电路只要有相应的正、负极导通,控制线路连接单片机1个I/O口,1个联网模块,WiFi模块电路,仅需将相应的正、负极与数据发送/接收线相结合。
土壤湿度模块电路本设计采用Y土壤湿度传感器,该传感器由敏感元件和转换电路组成,当外部环境湿度发生变化时,将改变其内部元件的电阻值,其范围通常是0~10kΩ。电阻值改变时,输出电路的电压也随之改变。感应器的输出端为A0管脚,但输出的是模拟量,单片机读不出来,需要通过A/D转换模块得到数字量给单片机读出。
空气温湿度模块空温度湿度电路采用D温湿度传感器,D温湿度传感器与单片机之间采用单总线协议进行数据传输,只需在2Pin口与单片机的P3.7口接合,而且通常需要外部的上拉电阻。使用电压范围为3.3~5V,电压过高会造成传感器烧坏,电压过低造成数据传输损失。
WiFi模块考虑到本设计的扩展性,选择采用
WiFi模块,便于系统升级为带有数据中转服务端的远程监控。通过3km无线模块WiFi远距离CV5200WiFi模块,实现了无线AP与安卓手机的双向无线通讯。将CV5200模块的VCC.GND.CH_PD.TX.RX的VCC.GND.3.3V高水平.RXD.TXD.TXD.TX.RXD,3km无线模块WiFi远距离CV5200通过单片机发送一系列AT指令到CV5200,使CV5200成为AP模式,即该模块作为热点,手机连接之后可以实现对局域网的无线控制。
植物数据接口智能浇花系统基于Android系统的开发构建了一个智能浇花APP。在开发一个植物数据接口程序时,基于面向对象的编程思想,首先需要对一个植物类进行定制,并通过实例对组织数据进行划分。接口空间方面,外围布局采用LinearLayout线性布局,RecyclerView控件和一个用来增加Re在cyclerView中的Item按钮控件,它可以将Item的数据适当地适配为RecyclerView,这要求相应的适配器完成编写。
硬件设备监控接口硬件设备监控接口涉及到UI控件的设计以及基于TCP/IP的Socket通信的设计,Android程序设计中的接口UI更新需要在主线程中完成,在主线程中不允许执行网络连接等耗时的操作。所以,新线程需要接收下位机传送的空温湿度和土壤湿度数据,然后用Handle机制在线程间传送数据,把数据传送给主线程,终实现UI的更新。
Data-Discovery对话方块在浇花型APP中添加植物数据增删功能,可对不同植物设定不同的温湿度上限。将对话框设计成一个自定义对话框,其中包含相应数值的存储编辑框,Cancel和OK按钮位于底部。
Socket通信实现本设计利用TCP/IP协议在Android客户端使用Socket套接字进行开发,也就是通信采用TCP方式,需要一个Streamsocket对象。在客户机代码中,首先给定IP地址和端口两个参数,初始化一个Socket对象。在获得Socket对象实例之后,通过isConnected()方法检查服务器是否成功连接。在通讯之前,需要先获得Socket实例的流对象,然后通过I/O流操作读取输入流的数据,并对其进行相应的处理,其中的数据是由服务器端传递的数据。对于服务器来说,您需要创建一个输出流对象,该对象通过输出流的write()方法发送数据,然后记得用flash()方法刷新数据。通讯也要求关闭Socket实例和流对象。因为在Android系统中不允许在主线程中执行网络请求等费时的操作,当想要连接服务器时,需要创建一个新线程,在内部执行网络请求,然后通过线程之间的通信将获得的数据返回给主线程。
3km无线模块WiFi远距离智能浇花系统可实时监控盆栽植物土壤湿度和空气温湿度,用户可通过安卓手机APP选择自动或手动工作方式,控制泵工作,按时按要求完成浇水工作。用户可通过APP在浇花APP中添加、删除盆栽名称,通过APP设置每个盆栽植物的温湿阈值。Android智能手机是一种简单易用的智能手机,采用单片机作为下位机来控制硬件模块。该设计成本低,实用性强,扩展性好,可以应用于水果等其它农作物灌溉的自动化处理。