ModuleInterface ModuleInterface

智能家居, ESP32 ⭐☆☆☆☆ (1/5) 已发布
fredilarsen 72 Stars NOASSERTION BOM 完整度: /5 教程完整度: /5

项目简介

Easy config与IoT模块、数据库及网页间的值同步。


ModuleInterface 是一个面向物联网与自动化场景的开源通信总线框架,旨在帮助开发者用低成本、低代码的方式快速搭建由多个设备(模块)组成的本地控制系统。项目基于 PJON 通信库构建,支持通过单线(最长2000米)、以太网、WiFi、LoRa、RS485、光脉冲等多种物理介质连接设备,兼容 Arduino、ESP8266、Raspberry Pi 等主流平台,无需额外通信扩展板即可实现多设备组网。

标签

项目特点

**多介质通信**:基于 PJON 协议,支持单线、以太网、WiFi、LoRa 等多种通信方式,无需额外硬件即可实现长达2000米的单线连接。
**自动同步**:自动在主控和模块之间传输设置和数值,支持事件驱动的即时传输和定时轮询。
**Web 界面**:提供动态的 Web 界面用于配置、查看趋势图和历史数据,可自定义扩展。
**MQTT 集成**:支持纯 MQTT 模式或 HTTP+MQTT 混合模式,方便与 Home Assistant、OpenHAB 等外部系统双向交互。
**边缘智能**:模块支持 EEPROM 持久化,断电重启后能自主运行,无需依赖主控持续在线。
**粗粒度时钟同步**:主控从数据库获取时间并同步到所有模块,支持本地时区偏移,使模块能基于本地时间执行定时任务。
**协议分析器支持**:提供 PulseView/sigrok 协议解码器,方便调试和分析通信数据。

技术规格

通信协议
支持平台
数据类型
变量名长度
主控推荐
通信距离
时钟同步精度
持久化

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
Arduino Mega 或 ESP8266 1 运行主控程序,推荐 Mega + 以太网扩展板
Arduino Nano 或 ESP8266 1+ 每个传感器/执行器一个模块
单线(普通导线) 1 用于 PJON SoftwareBitBang 通信,最长2000米
运动传感器 (如 HC-SR501) 1 示例中使用
5V 电源适配器 1+ 为每个设备供电
USB 逻辑分析仪 (如 FX2LP CY7C68013A) 1 用于调试协议,约$4

所需工具

工具用途是否必需
Arduino IDE 编写和上传代码到 Arduino/ESP8266 ✅ 是
3D打印机 打印外壳和支架(可选) ▢ 推荐
焊台 焊接传感器和连接线 ✅ 是
万用表 测试电路连接 ✅ 是
USB 逻辑分析仪 调试 PJON 通信协议 ▢ 推荐
PulseView/sigrok 协议解码和分析 ▢ 推荐

能力画像

记忆与知识检索
2/5
逻辑推演
3/5
表达与交流
1/5
感知与观察
2/5
数理与计算
2/5
动手与操作
4/5
狂热与坚持
3/5
创造与创新
3/5

所需技能

🔧 **动手能力**:需要焊接传感器和连接线,搭建硬件电路,连接 Arduino 和传感器。 💻 **编程能力**:需要 C/C++ 编程基础,能使用 Arduino IDE 编写和上传代码,理解 PJON 和 ModuleInterface 库的 API。 ⚡ **电子电路**:需要了解基本电子元件(传感器、电阻、电源)的连接方式,能使用万用表测试电路。

适用场景

**智能家居**:控制灯光、窗帘、温度传感器等,通过 Web 界面或 MQTT 与 Home Assistant 集成。
**温室自动化**:监控温度、湿度、土壤湿度,自动控制灌溉和通风。
**工业监控**:远程采集传感器数据(如振动、温度、压力),在 Web 界面显示趋势图。
**教育实验**:用于教学演示分布式系统、IoT 通信协议和嵌入式编程。
**原型开发**:快速搭建 IoT 系统原型,验证概念后再迁移到更专业的平台。