nodejs mqtt 智能售貨機系統物聯網控制系統源碼分享

大數據java架構師 發佈 2020-08-21T21:11:41+00:00

cms - 後台管理系統,主要基於開源項目YZNCMS開發,由於YZNCMS開發的快捷性,試我們在後台管理系統上事半功倍。

智能售貨機系統(Mole intelligent vending machine system)是一套物聯網控制系統性的解決方案。 主要涉及到的語言和庫有c,c++,js,nodejs,vue.js,thinkphp。 整套系統主要作用是打通網站後台,網站前端,手機前端,單片機和微型電腦之間的通信和系統的構建。

文件目錄

  1. cms - 後台管理系統,主要基於開源項目YZNCMS開發,由於YZNCMS開發的快捷性,試我們在後台管理系統上事半功倍,YZNCMS開源地址:https://gitee.com/ken678/YZNCMS
  2. database - 主要存儲系統要用到的資料庫,資料庫使用開源軟體mysql,這個就不多介紹了
  3. doc - 安裝和其它需要介紹的文檔,整個系統東西比較多,因此有些安裝過程需要文檔記錄一下
  4. esp8266-arduino - esp32和esp8266的一些測試程序,主要基於arduino開發,當然現在esp主流開發已經基於freertos,但arduino在測試原型開發上依然非常的方便和快捷
  5. f1c100s-rtt - 全志f1c100s系列晶片簡直是性價比之王的存在,如果你的需求有帶螢幕或者帶觸摸的應用,但又需要廉價的晶片,全志將是你可以考慮的選擇。這裡是f1c100s晶片系列rt-thread系統的實現,gpio,pwm,uart,otg等等基本功能都已經實現。
  6. f1c100s-xboot - 全志f1c100s系列晶片的xboot系統實現,總的來說這個系統編譯比較大,但驅動很多,代碼很全,對於學習單片機驅動開發和系統整個架構還是有好處的
  7. mobile - 手機管理系統實現,主要基於vue.js開發,實現了跨域操作數據,mqtt的通信等東西
  8. mosquitto - mqtt開源伺服器,對於不算大型或者巨型的項目,mosquitto足夠好
  9. raspberrypi-nodejs - nodejs版的樹莓派實現,主要實現了nodejs在樹莓派上操作gpio,mqtt,攝像頭,自動系統更新等等東西,如果你想做一些有視頻,有動畫,足夠炫的東西,那你需要這個,當然還有其它派可以選擇,比如荔枝派,香蕉派,香橙派等等。
  10. screen - 一些項目截圖
  11. server - 基於nodejs實現各種伺服器操作,mqtt伺服器,websockets伺服器,tcp伺服器,mysql,redis等等,nodejs讓伺服器開發如此快捷簡單
  12. stm32f103-rtt - stm32f103最低版本的rt-thread實現,已經實現了gpio,pwm,watchdog,uart等等功能,如果你只是搞單片機,這個價格足夠低,功能足夠夠用。
  13. tools - 一些單片機燒錄工具和其它一些需要到的工具

整套系統主要分為4個部分:

  1. MQTT伺服器 - 主要採用開源項目Eclipse Mosquitto™作為整個系統的通信系統;
  2. 後台管理 - 主要基於開源系統YZNCMS開發;
  3. 手機監控和管理端 - 主要基於開源前端框架vue.js開發;
  4. websocket和其它服務相關 - 主要基於開源軟體node.js開發;
  5. 單片機部分主要基於ESP8266,ESP32,f1c100s,stm32
  6. 微型電腦部分主要基於樹莓派,程式語言為node.js

軟體架構

Mosquitto在整個系統中處於最中心的作用,它將連接我們在線的所有設備,包括售貨機,手機,後台管理,伺服器等等。
售貨機通過Mosquitto發送系統到手機或者後台伺服器用於儲存資料庫或者在手機上監控。

未來計劃

  1. 接入百度AI系統,實現和小度音響的交互;
  2. 接入rt-thread物聯網作業系統
  3. 基於神經網絡的機器學習部分

截圖預覽

關鍵字: