2021-11-26 23:14:46 索炜达电子 887
项目编号:E2469
文件大小:130M
源码说明:带中文注释
开发环境:Verilog
简要概述
实现功能
使用FPGA采集机房的温湿度、烟雾浓度信息,将数据从本地上传到云端服务器,可打开网页实时监控机房信息,也可使手机联网(互联网)打开相应App监控机房信息。当机房环境剧烈变化时,一方面通过蜂鸣器现场报警,另一方面通过手机APP报警,当机房环境平稳后手动使用APP或者是网页将蜂鸣器关闭。
客户端
Fpga
模拟各传感器的时序(单总线协议(DHT11)、IIC协议(pcf8591)),读出温度、湿度、烟雾等等。
编写UART协议实现对esp8266数据的收发。
Esp8266
使用乐鑫Nonos-SDK或Micropython 完成
esp8266的联网
MQTT协议的编写
消息的订阅及收发
UART串口的通信
_注:推荐使用Micropython _
Web
使用python和html作为开发的语言
网页端折线图的绘制
前后台的交互
多线程的创建及线程间消息的传递
Android
使用已有的IoT MQTT Panel
使用Linear-mqtt-dashboard
注:后者可现实实时折线图
服务端
创建服务器 使用开源物联网MQTT消息服务器emq作为通信的服务端
开放相关端口
访问域名+18083完成对控制台的控制
在客户端连接到服务器
目录│文件列表:
└ Graduation-project
├ Client
│ │ EMQ - 客户端.mhtml
│ ├ Android
│ │ │ IoT MQTT Panel.apk
│ │ └ linear-mqtt-dashboard-master
│ │ └ linear-mqtt-dashboard-master
│ │ └ linear-mqtt-dashboard-master
│ │ │ .gitignore
│ │ │ build.gradle
│ │ │ gradle.properties
│ │ │ gradlew
│ │ │ gradlew.bat
│ │ │ README.md
│ │ │ settings.gradle
│ │ ├ .idea
│ │ │ │ compiler.xml
│ │ │ │ encodings.xml
│ │ │ │ gradle.xml
│ │ │ │ misc.xml
│ │ │ │ modules.xml
│ │ │ │ runConfigurations.xml
│ │ │ │ vcs.xml
│ │ │ ├ caches
│ │ │ │ │ build_file_checksums.ser
│ │ │ │ └ gradle_models.ser
│ │ │ ├ codeStyles
│ │ │ │ └ Project.xml
│ │ │ └ copyright
│ │ │ └ profiles_settings.xml
│ │ ├ app
│ │ │ │ .gitignore
│ │ │ │ build.gradle
│ │ │ │ proguard-rules.pro
│ │ │ ├ libs
│ │ │ │ └ mqtt-client-1.13-SNAPSHOT-uber.jar
│ │ │ ├ release
│ │ │ │ └ output.json
│ │ │ └ src
│ │ │ ├ androidTest
│ │ │ │ └ java
│ │ │ │ └ com
│ │ │ │ └ ravendmaster
│ │ │ │ └ myapplication
│ │ │ │ └ ApplicationTest.java
│ │ │ ├ main
│ │ │ │ │ AndroidManifest.xml
│ │ │ │ │ ic_launcher-web.png
│ │ │ │ │ Thumbs.db
│ │ │ │ ├ assets
│ │ │ │ │ └ web
│ │ │ │ │ │ help_application_server_mode.html
│ │ │ │ │ │ help_notifier.html
│ │ │ │ │ │ help_onreceive.html
│ │ │ │ │ │ help_onshow.html
│ │ │ │ │ │ help_push_topic.html
│ │ │ │ │ └ logo135.png
│ │ │ │ ├ java
│ │ │ │ │ └ com
│ │ │ │ │ └ ravendmaster
│ │ │ │ │ └ linearmqttdashboard
│ │ │ │ │ │ BoardFragment.java
│ │ │ │ │ │ ItemAdapter.java
│ │ │ │ │ │ ListFragment.java
│ │ │ │ │ │ Log.java
│ │ │ │ │ │ MySwipeRefreshLayout.java
│ │ │ │ │ │ TabData.java
│ │ │ │ │ │ TabItemAdapter.java
│ │ │ │ │ │ TabListFragment.java
│ │ │ │ │ │ TabsCollection.java
│ │ │ │ │ │ Utilites.java
│ │ │ │ │ ├ activity
│ │ │ │ │ │ │ MainActivity.java
│ │ │ │ │ │ │ OpenFileActivity.java
│ │ │ │ │ │ │ TabsActivity.java
│ │ │ │ │ │ └ WidgetEditorActivity.java
│ │ │ │ │ ├ customview
│ │ │ │ │ │ │ ButtonsSet.java
│ │ │ │ │ │ │ ComboBoxSupport.java
│ │ │ │ │ │ │ Graph.java
│ │ │ │ │ │ │ Meter.java
│ │ │ │ │ │ │ MyButton.java
│ │ │ │ │ │ │ MyColorPicker.java
│ │ │ │ │ │ │ MyColors.java
│ │ │ │ │ │ │ MyTabsController.java
│ │ │ │ │ │ └ RGBLEDView.java
│ │ │ │ │ ├ database
│ │ │ │ │ │ │ DbHelper.java
│ │ │ │ │ │ │ HistoryCollector.java
│ │ │ │ │ │ │ HistoryContract.java
│ │ │ │ │ │ └ TopicsCollector.java
│ │ │ │ │ └ service
│ │ │ │ │ │ AppSettings.java
│ │ │ │ │ │ Autostart.java
│ │ │ │ │ │ CallbackMQTTClient.java
│ │ │ │ │ │ Dashboard.java
│ │ │ │ │ │ DashboardsConfiguration.java
│ │ │ │ │ │ MQTTService.java
│ │ │ │ │ │ Presenter.java
│ │ │ │ │ └ WidgetData.java