项目简介
本项目“Nucleus”是为竞赛设计的核设施安全协议模拟系统,并非用于实际核设施的防御系统。它集成了RFID访问控制、MQ - 2气体传感器、水传感器和DHT11温湿度传感器,对核设施安全协议进行模拟与增强。收集的数据存储在Firebase数据库,并通过Flutter移动应用实现可视化。
项目的主要特性和功能
- RFID访问控制:仅允许授权人员进入安全区域。
- 气体泄漏检测:利用MQ - 2传感器监控并报告气体水平。
- 洪水检测:水传感器在可能发生洪水时发出警报。
- 温湿度监控:DHT11传感器提供实时环境数据。
- 实时数据记录:将所有数据存储在Firebase数据库。
- 移动监控:借助Flutter应用可远程监控设施状态。
安装使用步骤
安装前准备
假设用户已经下载了本项目的源码文件。
安装步骤
- 复制仓库
bash cd nucleus
- 安装Arduino库
- 打开Arduino IDE,进入
Sketch -> Include Library -> Manage Libraries
。 - 搜索并安装以下库:
- Adafruit Sensor
- DHT sensor library
- SPI
- MFRC522
- Deneyap_Servo 或ESP32的Servo库
- Firebase ESP Client
- 打开Arduino IDE,进入
- 设置Firebase
- 创建Firebase项目并配置Realtime Database。
- 获取Firebase API密钥和数据库URL。
- 配置WiFi和Firebase设置
- 在Arduino IDE中打开
electronics/sender
和electronics/alarm
。 - 将占位符值替换为您的WiFi凭证和Firebase配置:
cpp #define WIFI_SSID wifiSSID #define WIFI_PASSWORD wifiPass #define API_KEY apiKey #define DATABASE_URL databaseURL
- 在Arduino IDE中打开
- 上传代码到Deneyap Kart或ESP32
- 将Deneyap Kart或ESP32连接到计算机。
- 在Arduino IDE中选择适当的板和端口。
- 点击
Upload
上传代码。
- 安装Flutter包
bash flutter pub get
- 放置Firebase文件
- 创建Firebase项目后获取文件。
- 将
google-services.json
文件放置到android/app
目录。 - 将
GoogleService-Info.plist
文件放置到ios/Runner
目录。
- 运行Nucleus
bash flutter run
使用方法
- 启动系统
- 确保所有传感器和执行器正确连接。
- 启动Deneyap Kart或ESP32。
- 通过移动应用监控
- 打开Nucleus移动应用。
- 从Firebase数据库监控实时数据和警报。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】