物联网-传输课程设计-数据采集与显示

  • 1.总结
  • 2.效果展示
  • 3.步骤说明
  • 一、环境准备
    • (1)Arduino、ESP8266 Node MCU的开发环境搭建(没有单片机就略过)
    • (2)JDK、Eclipse、Tomcat插件的环境搭建
    • (3)SQL Server的环境搭建
  • 二、数据采集
    • 1.(第一种方式)在单片机采集数据
    • 2.(第二种方式)利用网络调试助手发送数据
  • 三、数据保存
    • 1.利用套接字接收数据
    • 2.编写web文件保存数据并存入数据库
  • 四、数据展示
    • 1.用单片机采集数据
      • 串口信息
      • 网页效果
    • 2.用网络调试助手采集数据
      • 网络调试信息
      • 网页效果
  • 4.参考链接

1.总结

1.实现方案:通过 UDP 套接字监听硬件装置 ESP8266 NodeMCU 指定的端口 8888,获取采集到的 DHT11 温湿度传感器的温湿度数据(没有单片机就用网络调试助手也可以),实现基于 UDP套接字的数据采集。另一方面,区域数据采集器软件在Tomcat 服务器编写web 文件将采集到的数据(温度、湿度)及采集时间保存到指定的 SQL Server数据库服务器中,保存数据操作周期性为每分钟执行一次。最后,再利用Tomcat 服务器将数据库存储的采集数据在网页中以表格的分页形式展示,每页表格最多显示十条数据。
2.一定要搭建好开发环境并且IP地址及端口号要配置正确,不然运行不出想要的结果。
①开发环境包括:Arduino、ESP8266 Node MCU、JDK、Eclipse、Tomcat插件、SQL Server的环境搭建;
②IP地址及端口号要与代码中定义的一致并且在一个局域网下。
3.没有单片机的话,就用网络调试助手发送采集数据,配置的IP地址及端口与代码中定义的相适应,就能正常发送接收数据了。
4.SQL Server的端口号要与代码中定义的一致,才能访问数据库。
5.Tomcat的IP设置可以用localhost与端口不能被占用,配置的jre要与自己电脑安装的jdk版本一致,否则无法启动。

2.效果展示

注:因为点击更新数据按钮后,因为index.jsp那设置了60秒更新一次数据,所以每隔一分钟才能再次接收到服务的请求数据命令,才能在接到请求数据命令后,发送温湿度数据

  • 点击更新数据按钮后,再点击其它按钮,如下一页上一页,更新数据会失效

3.步骤说明

一、环境准备

(1)Arduino、ESP8266 Node MCU的开发环境搭建(没有单片机就略过)

1.Arduino的开发工具的安装
2.Arduino中ESP8266的环境搭建
3.使用测试

步骤有点多放在另一个链接https://blog.csdn.net/qq_43662263/article/details/106655160

(2)JDK、Eclipse、Tomcat插件的环境搭建

1.JDK的安装
2.Eclipse开发工具的安装
3.Eclipse中Tomcat插件的安装
4.使用测试

步骤有点多放在另一个链接https://blog.csdn.net/qq_43662263/article/details/106655181

(3)SQL Server的环境搭建

1.SQL Server的安装
2.打开TCP/IP端口号

步骤有点多放在另一个链接https://blog.csdn.net/qq_43662263/article/details/106655181

二、数据采集

1.(第一种方式)在单片机采集数据

  • 在Arduin写入以下代码

步骤有点多放在另一个链接https://blog.csdn.net/qq_43662263/article/details/106655160

2.(第二种方式)利用网络调试助手发送数据

  • 更改udpsend.java文件的ip为自己本机的IP
  • 在终端输入ipconfig查看ip

三、数据保存

1.利用套接字接收数据

  • 发送及接收数据的方法(将本方法放入类中,声明一下import,就可以在jsp中调用了)
  • 里面的ip可以是自己开发板的ip,也可以是本机ip
public String udptest( )  throws IOException {/** 1、建立udp socket端点 */DatagramSocket s = new DatagramSocket();/** 2、提供数据,封装打包  ---DatagramPacket(byte[] buf, int length,
InetAddress address, int port)  */byte[] bs = "12345 ".getBytes();               DatagramPacket dp = new DatagramPacket(bs, bs.length, InetAddress.getByName("192.168.43.138"), 8888);/** 3、使用send发送 */try {s.send(dp);System.out.println("发送成功 ");System.out.println(dp);} catch (IOException e) {System.out.println("发送失败: ");e.printStackTrace();}// 2.创建数据报,用于接收客户端发送的数据报byte[] data = new byte[1024];//创建字节数组,指定接收的数据包的大小DatagramPacket packet = new DatagramPacket(data, data.length);//3.接收客户端发送的数据System.out.println("****服务器已经启动,等待客户端发送数据");s.receive(packet);//此方法在接收到数据报之前会一直阻塞//4.读取数据String info = new String(data, 0, packet.getLength());         System.out.println("我是服务器,客户端:" + info);   /** 4、关闭资源 */s.close();return info;        }

具体代码:放在另一个链接https://blog.csdn.net/qq_43662263/article/details/106655181

2.编写web文件保存数据并存入数据库

  • 在eclipse新建一个web项目写入以下代码

有点多放在另一个链接https://blog.csdn.net/qq_43662263/article/details/106655181

四、数据展示

1.用单片机采集数据

串口信息

网页效果

  • 运用index.jsp在Tomcat v9.0 Server at localhost上
  • 注:因为点击更新数据按钮后,因为index.jsp那设置了60秒更新一次数据,所以每隔一分钟才能再次接收到服务的请求数据命令,才能在接到请求数据命令后,发送温湿度数据
  • 点击更新数据按钮后,再点击其它按钮,如下一页上一页,更新数据会失效

2.用网络调试助手采集数据

网络调试信息

注:因为点击更新数据按钮后,因为index.jsp那设置了60秒更新一次数据,所以每隔一分钟才能再次接收到服务的请求数据命令,才能在接到请求数据命令后,发送温湿度数据

  • 点击更新数据按钮后,再点击其它按钮,如下一页上一页,更新数据会失效
  • 必须发送4位int的数字,因为程序里定义了0-1位是温度,2-3位是湿度,输入的数据不符合标准会报错。

网页效果

  • 运用index.jsp在Tomcat v9.0 Server at localhost上

4.参考链接

1.ESP8266 NodeMCU介绍与开发环境搭建
2.arduino—DHT11温湿度传感器的使用
3.eclipse的介绍
4.tomcat的介绍
5.ajax技术
6.java_socket编程
7.通过JSP网页连接Mysql数据库
8.jsp数据库操作之插入

注:遇到之前能打开,后来打不开,没数据的情况,重新启动试试

物联网-传输课程设计-数据采集与显示相关推荐

  1. Python:物联网数据分析课程设计动态新闻标题热点挖掘

    一.设计内容及目的 (一)设计内容 通过爬取学校新闻网页,获取新闻标题,通过词频统计制作出词云并生成图片. (二)设计目的 新闻标题是新闻的主旨,从新闻标题中可以进行多种内容的挖掘,通过对学校新闻网的 ...

  2. RFID防伪设计(物联网工程课程设计)DAY1---开题报告

    1.课程设计目的 无线射频识别是智能感知技术的核心,在未来的智能医疗.智能交通.智慧地球等应用中具有广泛的应用前景.RFID的隐私和安全性问题是影响RFID技术被广泛使用的关键问题之一.本次课程设计旨 ...

  3. 趋肤效应实验报告_无线电能传输(课程设计报告)实验报告

    WORD 完美格式 下载可编辑 实验报告 1. 实验原理 与无线通信技术一样摆脱有形介质的束缚, 实现电能的无线传输是人类多年 的一个美好追求.无线电能传输技术( Wireless Power Tra ...

  4. 趋肤效应实验报告_无线电能传输(课程设计)实验报告

    实验报告 1. 实验原理 与无线通信技术一样摆脱有形介质的束缚, 实现电能的无线传输是人类多年 的一个美好追求.无线电能传输技术( Wireless Power Transfer, WPT )也称之 ...

  5. 物联网传输感知课程设计-提纲

    有一些话子芥写在最前面,这套姑且称作教程的文章,只是子芥对于自己课设过程的整理记录,以便于后期书写课设报告时方便查阅.系统的设计要求来自于老师的课设要求,尽管在子芥看了这样的要求并不合理,而且完成的系 ...

  6. 【毕业设计_课程设计】开源物联网系统设计(源码+论文)

    文章目录 0 项目说明 1 摘要 2 设计内容 2.1 3.1.硬件设计 2.2 软件设计 4 项目源码 0 项目说明 开源物联网系统设计 提示:适合用于课程设计或毕业设计,工作量达标,源码开放 1 ...

  7. 【基于物联网的智能草莓种植系统的设计与实现系列教程】0-项目简介 (课程设计、毕设项目、树莓派、yolov5)

    [基于物联网的智能草莓种植系统]详细实现教程 项目各章节跳转 教程简介 项目简介 系统操作界面展示 系统主要功能概述 系统硬件结构概述 特别致谢 猜你需要 项目各章节跳转 可点击跳转到对应章节 ==& ...

  8. 51单片机综合课程设计多功能电子秤(显示时间、温度、存储、串口、报警装置等)

    51单片机综合课程设计----多功能电子秤 关键词:proteus仿真.51单片机.DS1302时钟芯片.DB18B20温度芯片.AT24C02存储芯片.LCD1602液晶屏.ADC0832芯片等,文 ...

  9. 【通信原理课程设计】基于MATLAB/Simulink的2ASK数字带通传输系统建模与仿真

    基于MATLAB/Simulink的2ASK数字带通传输系统建模与仿真 目录 基于MATLAB/Simulink的2ASK数字带通传输系统建模与仿真 课程设计要求 方法选择 设计步骤 结果显示与性能分 ...

最新文章

  1. 面试官:RabbitMQ本身不支持延迟队列,那你给我实现一个?
  2. linux下安装微信wechat
  3. jenkins上linux-gradle机器对android执行shell签名apk
  4. End User 访问SharePoint URL获取数据流程
  5. 计算机二级考试c语言公共基础知识,全国计算机二级c语言公共基础知识考试内容.doc...
  6. 多图像合成为延时视频的方法
  7. 论文笔记_S2D.55_2019_SLAM综述_Huang B. A Survey of Simultaneous Localization and Mapping
  8. swift -inout关键字
  9. 宋宝华: 一图理解终端、会话、 进程组、进程关系
  10. 公式推导以及仿真代码的修改 11-28
  11. 【白帽子讲Web安全】第一章 我的安全世界观
  12. CTF逆向-[CISCN2018]2ex-WP_mips-32架构以及base64换表
  13. springboot美容院会员管理系统毕业设计源码191740
  14. 《那些年啊,那些事——一个程序员的奋斗史》——66
  15. The Pilots Brothers' refrigerator开灯问题
  16. Cognos集成至portal平台查看报表报错RSV-BBP-0022
  17. 所谓IIS500内部服务器错误
  18. html5 日起区间,excel判断日期在某个区间
  19. win7 64位系统PSD缩略图补丁预览PSD Mystic Thumbs免费版
  20. 凸优化05 详解ADMM算法

热门文章

  1. 三分钟学会如何使用css雪碧图(Sprite)
  2. 用jQuery制作视频弹幕
  3. prometheus+grafana对数据库mysql监控
  4. easyui form 返回html,form(表单) - TopJUI前端框架,不用写JS代码的EasyUI
  5. Bug 11068682 - ORA-7445 [ph2csql_analyze] in active dataguard [ID 11068682.8]
  6. amd建议超频吗_AMD锐龙3 2200G支持超频吗?AMD R3-2200G超频后配什么主板合适?
  7. Git(码云)的下载和安装(Windows)
  8. windows停在欢迎界面进不去的解决办法
  9. 小朋友几岁学机器人编程
  10. 小学生通用计算机在线使用,小学生信息学练习计算机基础.doc