基于ZigBee无线光照检测_第1页
基于ZigBee无线光照检测_第2页
基于ZigBee无线光照检测_第3页
基于ZigBee无线光照检测_第4页
基于ZigBee无线光照检测_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机科学与技术学院ZigBee无线网络原理课程设计报告设计题目:基于ZigBee光照检测系统的设计 设计人员:学号:学号:学号:学号:指导教师:2015年4月 目录TOC o 1-3 h u HYPERLINK l _Toc418628428 目录 PAGEREF _Toc418628428 h 2 HYPERLINK l _Toc418628429 摘 要 PAGEREF _Toc418628429 h I HYPERLINK l _Toc418628430 ABSTRACT PAGEREF _Toc418628430 h II HYPERLINK l _Toc418628431 1设计目

2、标 PAGEREF _Toc418628431 h 1 HYPERLINK l _Toc418628432 2设计内容 PAGEREF _Toc418628432 h 1 HYPERLINK l _Toc418628433 3设计方案 PAGEREF _Toc418628433 h 3 HYPERLINK l _Toc418628434 4实验所需器材 PAGEREF _Toc418628434 h 3 HYPERLINK l _Toc418628435 5实验各个模块的相关电路设计 PAGEREF _Toc418628435 h 3 HYPERLINK l _Toc418628436 5.1

3、 光照传感器相关参数及特点 PAGEREF _Toc418628436 h 3 HYPERLINK l _Toc418628437 5.2光照传感器图 PAGEREF _Toc418628437 h 4 HYPERLINK l _Toc418628438 5.3消息推送原理图 PAGEREF _Toc418628438 h 5 HYPERLINK l _Toc418628439 6实验软件设计 PAGEREF _Toc418628439 h 5 HYPERLINK l _Toc418628440 6.1 基于java语言上位机控制程序: PAGEREF _Toc418628440 h 5 HY

4、PERLINK l _Toc418628441 6.2 ZigBee核心板下位机核心部分 PAGEREF _Toc418628441 h 9 HYPERLINK l _Toc418628442 6.3 安卓手机终端推送 PAGEREF _Toc418628442 h 11 HYPERLINK l _Toc418628443 7作品实物图展示 PAGEREF _Toc418628443 h 12 HYPERLINK l _Toc418628444 8实验小组成员分工 PAGEREF _Toc418628444 h 16 HYPERLINK l _Toc418628445 9实验总结 PAGERE

5、F _Toc418628445 h 16 HYPERLINK l _Toc418628446 10.小组成员评分 PAGEREF _Toc418628446 h 17ZigBee光照检测摘 要随着物联网的兴起,ZigBee技术以其独有的优势正在为我们提供更多优质便捷的技术成果。本课题研究的是基于ZigBee技术,设计和实现了一种无线光照检测的解决方案。设计以电脑控制端、智能手机终端、ZigBee技术、光照感应器模块等硬件模块组成的光照检测通知系统。实现对环境光照的时时检测,通知等功能。为对于环境光照的检测提供了一种新思路,同时可以为将来智能家居的遥控设计提供一定的参考意义。【关键词】ZigBe

6、e核心板 光照感应 ABSTRACT With the rise of the Internet of things, ZigBee technology with its unique advantage is to provide more quality and convenient for our technological achievements. This research is based on the ZigBee technology, design and implementation of a wireless light detection solution. The

7、 design of control terminal, computer terminal, intelligent mobile phone with ZigBee technology, light sensor hardware module and etc. the light detection notification system. Can always detect light on the environment, notification and other functions. As for the detection of light environment prov

8、ides a new way of thinking, and can provide some references for the future design of intelligent remote control Home Furnishing.key words ZigBee Light induction Wireless control1设计目标 本次设计要求实现PC端和智能手机终端对环境光照的时时检测,报告。PC端控制软件可以用java语言,对java串口控件要熟悉的掌握。同时要求学生对CC2530芯片编程和zigbee协议栈有相当程度的理解以及熟练的应用,安卓手机软件的开发

9、使用java语言,熟悉ZigBee串口以及中断的使用,会基本的C语言熟练掌握IAR FOR 8051软件的使用与程序下载以及手机软件开发环境。2设计内容利用ZigBee核心板 ,光照传感器,建立无线控制系统。自行设计光敏传感器电路并配备ZigBee模块,电脑,安卓用做终端设备,采用广播方式接入到ZigBee协调器网络,实现对环境光照的时时感应和对安卓手机的推送启动ZigBee核心板主控软件,对光照时时检测。并向电脑发生送光照状态,单片机收到指令后进行相关处理,并通过网络给安卓推送信息 图2.1 系统组成框图3设计方案CC2530芯片做接收信息设备和控制设备。ZigBee终端设备和协调器组网成功

10、通信。自制光照传感器的电路(根据实验材料的具体情况) 。上位机发送状态。 4实验所需器材此处用CC2530芯片用作接收信息和控制芯片,实现环境光照时时检测,推送,L298N驱动模块(驱动电机)光照感应器ZigBee核心板和JLINK下载模块及其相关的驱动杜邦线若干,电池若干(最好是可以充电的)5实验各个模块的相关电路设计5.1 光照传感器相关参数及特点1、采用灵敏型光敏电阻传感器2、比较器输出,信号干净,波形好,驱动能力强,超过15mA3、配可调电位器可调节检测光线亮度4、工作电压3.3V-5V5、输出形式 :数字开关量输出(0和1)6、设有固定螺栓孔,方便安装7、小板PCB尺寸:3.2cm

11、x 1.4cm8、使用宽电压LM393比较器5.2光照传感器图图5.2 光照传感器图说明:1、光敏电阻模块对环境光线最敏感,一般用来检测周围环境的光线的亮度,触发单片机或继电器模块等; 2、模块在环境光线亮度达不到设定阈值时,DO端输出高电平,当外界环境光线亮度超过设定阈值时,DO端输出低电平; 3、DO输出端可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的光线亮度改变; 4、DO输出端可以直接驱动继电器模块,由此可以组成一个光控开关。5.3消息推送原理图说明:终端节点采集数据后,发送到协调器,然后协调器通过串口发送给Publisher,Publisher发布消息到代理服务器B

12、rkoer,消息代理服务器讲消息发送到订阅此主题的Subcribe。图5.3 电路图6实验软件设计 6.1 基于java语言上位机控制程序:package Uart;import java.io.IOException;import java.io.InputStream;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Enumeration;import java.util.HashMap;import java.util.Hashtabl

13、e;import java.util.TooManyListenersException;import gnu.io.CommPortIdentifier;import gnu.io.PortInUseException;import gnu.io.SerialPort;import gnu.io.SerialPortEvent;import gnu.io.SerialPortEventListener;import gnu.io.UnsupportedCommOperationException;public class MyUart implements Runnable,SerialPo

14、rtEventListener/定义串口管理类 public static CommPortIdentifier portId = null; public static Enumeration portList = null;/枚举类 /定义输入流 InputStream inputStream = null; /定义输出流 SerialPort serialPort = null; /定义一个读的线程 Thread readThread = null; /定义日期时间对象 Date date = null; /定义D时间格式化类 DateFormat format = null; Stri

15、ng time = null; public static Hashtable msg = new Hashtable(); / public static void main(String args) / portList = CommPortIdentifier.getPortIdentifiers();/ while (portList.hasMoreElements() / portId = (CommPortIdentifier) portList.nextElement();/ if (portId.getPortType() = CommPortIdentifier.PORT_S

16、ERIAL) / /* 找Windows下的第一个串口*/ if (portId.getName().equals(COM4) / /if (portId.getName().equals(/dev/term/a)/*找Unix-like系统下的第一个串口*/ MyUart uart = new MyUart();/ / / / public MyUart() try /打开一个串口serialPort = (SerialPort) portId.open(SimpleReadApp, 2000); catch (PortInUseException e) / TODO Auto-genera

17、ted catch blocke.printStackTrace(); try /*获取串口的输入流对象*/ inputStream = serialPort.getInputStream(); catch (IOException e) try /给串口添加监听 serialPort.addEventListener(this); catch (TooManyListenersException e) /串口有数据到达时,通知 serialPort.notifyOnDataAvailable(true); try /串口基本设置 serialPort.setSerialPortParams(

18、9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);/*设置串口初始化参数,依次是波特率,数据位,停止位和校验*/ catch (UnsupportedCommOperationException e) /创建读线程对象 readThread = new Thread(this); /启动线程 readThread.start(); /msg的初始化 msg.put(time, 0); msg.put(numOfGroup, 8); msg.put(status, 0); /获取当前时间的函数

19、public void time() date = new Date(); format = new SimpleDateFormat(yyyy-MM-dd HH:mm:ss); time = format.format(date); /延时函数Overridepublic void run() / TODO Auto-generated method stub try Thread.sleep(2000); /线程休眠20000毫秒 catch (InterruptedException e) Overridepublic void serialEvent(SerialPortEvent e

20、vent) / TODO Auto-generated method stub switch(event.getEventType() case SerialPortEvent.BI:/*Break interrupt,通讯中断*/ case SerialPortEvent.OE:/*Overrun error,溢位错误*/ case SerialPortEvent.FE:/*Framing error,传帧错误*/ case SerialPortEvent.PE:/*Parity error,校验错误*/ case SerialPortEvent.CD:/*Carrier detect,载波

21、检测*/ case SerialPortEvent.CTS:/*Clear to send,清除发送*/ case SerialPortEvent.DSR:/*Data set ready,数据设备就绪*/ case SerialPortEvent.RI:/*Ring indicator,响铃指示*/ case SerialPortEvent.OUTPUT_BUFFER_EMPTY:/*Output buffer is empty,输出缓冲区清空*/ break; case SerialPortEvent.DATA_AVAILABLE:/*Data available at the seria

22、l port,端口有可用数据。读到缓冲数组,输出到终端*/ byte readBuffer = new byte8; try while (inputStream.available() 0) /从输入流读取数据 int numBytes = inputStream.read(readBuffer); /获取当前时间 time(); /msg清空 msg.clear(); /更新msg消息 msg.put(time, time); msg.put(numOfGroup,+(readBuffer0-48); msg.put(status, +(readBuffer2-48);/ System.out.print(time+: );/ System.out.print(msg.get(numOfGroup);/ /System.out.print(readBuffer0-48+ );/ /System.out.print(readBuffer1-48+ );/ System.out.print( );/ System.out.print(msg.get(status);/ /System.out.print(readBuffer3-48+ );/ System.out.print( );/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论