您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 物联网课程设计—基于温湿度传感器物联网应用实时数据处理系统开发46
网络工程(物联网技术)课程设计报告题目:基于温湿度传感器物联网应用实时数据处理系统开发院(系)别:数学与信息工程学院专业:网络工程(物联网技术)班级1班学号:2006099914姓名:小明指导教师:职称博士填表日期:2012年5月11日前言一、选题的依据及意义1.依据物联网是一种新概念和新技术,它使新一代IT技术更加充分地应用于各行各业之中。它的问世打破了过去将基础设施与IT设施分开的传统观念,将建筑物、公路、铁路和网站、网络、数据中心合为一体,是信息化和工业化融合的重要切入点。温湿度与人们的生活关系密切,所以物联网在温湿度实时数据处理系统的开发将有很大的前景。2.意义在我们的日常生活中无处不在,控制好温湿度可以使我们生活、生产的更好。温湿度传感器物联网应用实时数据处理系统开发可以帮我们实现对温湿度以实时数据让我们明了的知道。从而更好的控制温湿度、达到我们所需的标准。二、本课程设计内容简介1.通过ubuntu连接传感器实验箱收集由传感器测得的实时数据存入sqlite3数据库。2.然后通过ubuntu发送到linux、接收并用动态网页显示代表数据变化的曲线。三、要达到的目标1.可以在ubuntu上实现自动接收由传感器取得、传来的实时数据。2.并ubuntu上能边接收边连续往linux发送从传感器取得的实时数据。3.还要确保发送过的数据不会再次发送。4.Linux能接收到ubuntu发过来的实时数据并通过动态网页曲线图实时显示接收过来的数据。实现方案一、开发环境1.硬件(详细介绍所涉及硬件的详细内容)Pc机、温湿度传感器、传感器实验箱、连接所需的各种线。2.软件(详细介绍所涉及软件的详细内容)MDK414(arm平台编译烧录代码软件)、KeilC51v750a_Full(C51平台编译软件)、STC手动下载(C51烧录代码软件)、R340(串口线连接USB驱动)、ubuntu操作系统、linux操作系统。3.其它二、开发内容1.项目开发详细内容(包括传感器的配置、传感器烧录、数据的实时收集、实时数据的存储、实时数据的传输、实时数据在服务器端的接受及存储-TCPServer及MySql、数据库及Web服务器安装、利用JSP曲线动态显示实时数据)首先烧录整合好的温湿度传感器的代码。接着连接传感器取得数据。然后在ubuntu中编译并运行Com_Sensor程序获取传感器实验箱的数据。在Ubuntu11编译并运行senddata.c把数据发送到linux.Linux通过TCPServer服务器接收数据并存入MySQL数据库。最后将接收到的数据通过Linuxweb服务器以jsp曲线动态显示实时数据。2.网络拓扑图(包括传感器、网关、传输网络、TCPServer服务器、数据库服务器、静态及动态Web服务器、Web服务器客户端;并详细标注设备名称及IP地址等详细信息;并详细叙述网络拓扑图流程)三、技术路线1.传感器数据处理(给出详细的传感器烧录代码)代码如下:/*********************************************************///中软吉大信息技术有限公司//物联网传感技术教学实验系统/*********************************************************/#includeintrins.h//Keillibrary(isusedfor_nop()_operation)#includemath.h//Keillibrary#includeLcmdisplay.h#defineFOSC11059200#defineBAUD14400typedefunion{unsignedinti;floatf;}value;//----------------------------------------------------------------------------------//modul-var//----------------------------------------------------------------------------------enum{TEMP,HUMI};#definenoACK0#defineACK1//adrcommandr/w#defineSTATUS_REG_W0x06//00000110#defineSTATUS_REG_R0x07//00000111#defineMEASURE_TEMP0x03//00000011#defineMEASURE_HUMI0x05//00000101#defineRESET0x1e//00011110sbitDATA=P2^2;sbitSCK=P2^1;sbitPOWER=P2^5;sbitflag1=P0^7;sbitflag2=P4^6;sbitflag3=P2^7;sbitflag4=P2^6;voiddelay(unsignedintnTimeDelay){unsignedinti;while(nTimeDelay--)for(i=0;i125;i++);}voidSerial_Init(){TMOD=0x01;TR0=1;EA=1;ET0=0;TF0=0;S2CON=0x50;//8位可变波特率(无校验位)BRT=-(FOSC/32/BAUD);//设置独立波特率发生器的重载初值AUXR=0x14;//独立波特率发生器工作在1T模式//IE2=0x01;//使能串口2中断}voidIO_Init(void){P2M1=P2M1&0xdf;P2M0=P2M0&0xdf;P0M1=P0M1&0x7f;P0M0=P0M0&0x7f;P4M1=P4M1&0xbf;P4M0=P4M0&0xbf;P2M1=P2M1&0x3f;P2M0=P2M0&0x3f;P4SW=P4SW|0x40;}voidPower_Identify(void){while(1){if(POWER==0){delay(4000);LcmPrintf(请给传感器模块上电!\n);}elsebreak;}}voidModule_Identify(unsignedintxuhao){unsignedintabc=0;if(flag4==1)abc=abc+1;abc=abc1;if(flag3==1)abc=abc+1;abc=abc1;if(flag2==1)abc=abc+1;abc=abc1;if(flag1==1)abc=abc+1;if(abc!=xuhao){delay(3000);LcmPrintf(提示:您插入的模块不正确!\n);}while(1){if(abc!=xuhao);else{delay(2000);LcmPrintf(连接的模块是M%u\n,xuhao);delay(5000);break;}}}//----------------------------------------------------------------------------------chars_write_byte(unsignedcharvalue)//----------------------------------------------------------------------------------//writesabyteontheSensibusandcheckstheacknowledge{unsignedchari,error=0;for(i=0x80;i0;i/=2)//shiftbitformasking{if(i&value)DATA=1;//maskingvaluewithi,writetoSENSI-BUSelseDATA=0;_nop_();//observesetuptimeSCK=1;//clkforSENSI-BUS_nop_();_nop_();_nop_();//pulswithapprox.5usSCK=0;_nop_();//observeholdtime}DATA=1;//releaseDATA-line_nop_();//observesetuptimeSCK=1;//clk#9forackerror=DATA;//checkack(DATAwillbepulleddownbySHT11)SCK=0;returnerror;//error=1incaseofnoacknowledge}//----------------------------------------------------------------------------------chars_read_byte(unsignedcharack)//----------------------------------------------------------------------------------//readsabyteformtheSensibusandgivesanacknowledgeincaseofack=1{unsignedchari,val=0;DATA=1;//releaseDATA-linefor(i=0x80;i0;i/=2)//shiftbitformasking{SCK=1;//clkforSENSI-BUSif(DATA)val=(val|i);//readbitSCK=0;}DATA=!ack;//incaseofack==1pulldownDATA-Line_nop_();//observesetuptimeSCK=1;//clk#9forack_nop_();_nop_();_nop_();//pulswithapprox.5usSCK=0;_nop_();//observeholdtimeDATA=1;//releaseDATA-linereturnval;}//----------------------------------------------------------------------------------voids_transstart(void)//----------------------------------------------------------------------------------//generatesatransmissionstart//_____________//DATA:|_______|//______//SCK:___||___||______{DATA=1;SCK=0;//Initialstate_nop_();SCK=1;_nop_();DATA=0;_nop_();SCK=0;_nop_();_nop_();_nop_();SCK=1;_nop_();DATA=1;_nop_();SCK=0;}//----------------------------------------------------------------------------------voids_connectionreset(void)//----------------------------------------------------------------------------------//communicationreset:DATA-line=1andatleast9SCKcyclesfollowedbytransstart//_____________________________________________________________//DATA:|_______|//_______________//SCK:__||__||__||__||__||__||__||__||__||______||___||____
本文标题:物联网课程设计—基于温湿度传感器物联网应用实时数据处理系统开发46
链接地址:https://www.777doc.com/doc-42807 .html