IoT Master 物联大师
生活随笔
收集整理的這篇文章主要介紹了
IoT Master 物联大师
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
IoT Master 物聯大師
https://github.com/zgwit/iot-master
物聯大師是真格智能實驗室推出的一款通用的數據采集和自動控制系統,
集成了Modbus和一些主流PLC的通訊協議,適用于大部分物聯網或工業互聯網數據應用場景。
該產品提供數據采集,歷史存儲,自動控制等功能,可以從一定程度上取代PLC或工控機或MCU。
平臺提供豐富的元件庫和在線模板,可以直接用于大部分物聯網項目后端,快速,方便,高效。
作者曾經接觸多個物聯網實際項目的后端,需求大同小異, 因為團隊不同,實現方式就千奇百怪了,大家其實都在重復地造輪子。
痛定思痛,于是決定提取共同的部分,做成了通用的物聯大師, 并且通過開源的方式免費分享給小伙伴兒們使用。
給誰用?
怎么用?
典型的應用案例
- 項目部署在云服務器,使用數據透傳連接設備(支持大部分DTU和移動通訊模塊)
- 使用485總線連接標準的Modbus設備,比如:傳感器、繼電器(開關)
- 配置定時采集,合法檢查
- 創建工程,配置定時任務,自動控制,異常告警等
- 開放接口對接APP或小程序,實現遠程操控,定時,自動控制,查看歷史曲線等
- 使用大數據屏展示實時數據
如果以上正是您所需的,請聊聊合作(聯系方式在底部)
項目架構圖
【待補充】
技術棧
項目最初使用Golang進行開發,但是實測效果并不明顯,內存占用偏高,故而切換成更熟悉的Node.js。
Node底層使用的是高效的異步IO庫libuv,普通桌面機單核實測5w連接無壓力,云端就看帶寬了。
PS:Golang的協程模型在海量連接時并不理想,gnet庫是個好方案,
但是不支持Windows的IOCP網絡模型,而且實測效果一般,曾經出現過崩潰的情況,
所以棄用,后續考慮使用Rust或C++實現更高性能的版本。
| 后端框架 | Koa、joi-router | Joi用于數據檢驗和在線swagger文檔 |
| 前端框架 | Angular和ZORRO | Angular集成度高,學習成本雖高,但使用方便 |
| 關系數據庫 | MongoDB | 和Node真是天生一對,不解釋 |
| 內存數據庫 | Redis | |
| 歷史數據庫 | InfluxDB2.0 | 2.0比較靈活,后臺也很強大 |
開發目標
- 數據通道
- TCP通道,以及注冊包和心跳包支持
- UDP通道,以及注冊包和心跳包支持
- 串口通道
- 遠程配置DTU(通過網絡AT或config,用來修改串口參數、服務器地址等)
- 協議支持
- Modbus RTU、TCP(ASCII不常用,暫無必要)(推薦RTU轉TCP的網關,可以加速遠程控制)
- Omron PLC(hostlink, fins)
- Mitsubishi PLC (melsec)
- Siemens PLC (S7)
- 設備 & 采集 & 控制
- 定時輪詢
- 濾波(均值,最大,最小等)
- 變量映射
- 控制指令
- 定時任務
- 自動控制
- 存入歷史數據庫
- 報警器
- 插件
- MongoDB
- Redis
- InfluxDB 2.0(新版本比較靈活,操作方便,后臺可以直接檢索數據)
- 語音通知(目前使用騰訊云,阿里云暫停服務)
- 短信通知
- 微信公眾號和小程序
- 開放接口
- 其他功能
- 虛擬串口
- 數據透傳(方便遠程調試)
- 監聽異常(使用WebSocket)
其他
- 項目的早期和支線版本已經在實際的養豬物聯網和養魚物聯網項目中使用,效果良好
- 項目主線還在待續開發中,有興趣的小伙伴可以加入進來
- 開源版本并不適合高頻數據采集(雖然支持),如有需求請移步高性能版:iot-master-pro
- 開源版本限制單機單核,有5W+連接需求請使用商業版(支持多機多核)
聯系方式
- 郵箱:jason@zgwit.com
- 手機:15161515197(微信同號)
總結
以上是生活随笔為你收集整理的IoT Master 物联大师的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 把SATA模式由IDE模式改为AHCI引
- 下一篇: 评分模板html,小程序模板-评分星星