模組介紹
窄帶物聯網 (Narrow Band Internet of Things, NB-IoT)
NB-IoT 的出現是為了解決在物聯網通訊中某些需要低速率與長距離傳輸的通訊技術,
是由第三代合作夥伴計畫(3rd Generation Partnership Project, 3GPP)所提出的一種基於長期演進技術(Long Term Evolution, LTE)簡化後的通訊技術,
因此可以使用現有4G電信基地台連接網路,透過電信基地台進行通訊不僅可以滿足低速率與長距離的傳輸的需求,
還可以保證傳輸的品質與安全,適合用於更加重視穩定性與即時性的智慧交通與智慧工業領域。
DSI2598+ 開發版
由聯發科技 NB-IoT 的晶片-MT2625 模組,搭配STM32F103核心,
有著PWM、I2C、SPI、ADC、UART等腳位功能,簡單但完整且有極佳運算能力,
可讓使用者無縫接軌大部分的Arduino程式庫,進行各項功 能程式開發,
尺寸僅 6.0x3.0cm,是國內第一款小型 NB-IoT 開發板。
ATGM336H 衛星定位模組
與衛星取得連線並獲取智慧單車的精準位置藉由SIM卡將資料發布至 mqtt broker 再由 Node-Red 訂閱取得資料並將資料傳回 MySQL,
再由 Asp.net 向資料庫索取資料,提供使用者以及管理者方便知道單車所經過的位置或它現在當下的位置。
GY80模組
GY-80是一個九軸模組,它包含了三軸加速度計(ADXL345)、三軸陀螺(L3G4200)、三軸磁場電子羅盤(HMC5883)跟氣壓溫度計(BMP085) 的模組,
只需要連接四個角位(VCC、GND、SCL、SDA)即可獲得當下四個模組的值。
我們在此模組使用到的是陀螺儀、電子羅盤以及三軸加速度計,
陀螺儀方面的使用是防止使用者發生意外時能夠及時的傳送訊息至管理者,讓他們得知此訊息,
方便做後續的單車維修,以及對當時受損地點和關懷受傷人員,電子羅盤方面是能夠判別使用者往那個方向騎行(例如:東、南、西、北)。
電池模組
電池模組方面我們使用 18650 電池座,它滿電壓為 4.7V 最低電壓為 3.2V,我們在 Asp.net 上顯示低於 3.5V 提醒充電,
在充電的部分它具有過衝保護,當它充電過久會產生保護它的電源將無法正常啟動需用 usb 插回充電模式,
它才會解開過衝保護使得電源能夠繼續使用。
它本身還具有省電模式以及放電模式,電壓回傳的部分由於 DSI2598+ 只能接收 3.3V 的電壓,
所以我們採用分壓的方法,將電流經由兩個 220Ω 的電阻分壓後經由mqtt協定資料傳回至 Mysql 後在網頁顯示時在乘回去以保證自己的電壓正確,
也確保後續監測電量是否充足。
系統架構
我們透過 DSI2598+ 提供的多種腳位功能,結合中華電信的 NB-IOT 的 SIM卡,在搭配使用北斗 GPS 模組,
當接收衛星取得連線並獲取三顆以上衛星數,便能夠校正數值,讓我們可以更準確的得知使用者位置,
並提供訂閱者親屬以及授權人士查看使用者定位;18650鋰電提供 DSI2598+ 續行;
GY80 模組則是負責偵測意外、顯示方位資訊等等。
我們利用AI畫稿,再使用 BeamStudio 軟體,連接 FIUX 雷射切割機,進行模型切割,再使用 EMQX 開源版的圖形化介面,
提供使用者有效率的去觀看 broker 上的主題,並判斷發布者跟訂閱者是否有訂閱跟發布,
再使用NOED-RED去跟EMQX訂閱,從 DSI2598+ 晶片發布的 GPS 以及 GY-80 轉換的數值,
藉由這套開發工具把訂閱到的準確數值傳入資料庫,並把取得的資料匯入 MySQL,
最後使用 Asp.net 建立網頁,將MySQL存取的資料顯示到地圖上,
並建立登入及登出的頁面、設立會員系統區分使用者及管理者、歷史資料查詢、繪出行經路線、總卡路里消耗等功能、及使用日期等等。
系統功能
本系統主要架構可以分為雲端物聯網偵測平台、偵測裝置、NB-IoT 網路協定。
使用的裝置晶片是 DSI2598+ 且包含 GPS 模組以及 GY-80 九軸模組,我們將此裝置固定在腳踏車上,
當使用者騎乘腳踏車時,可以透過此裝置讀取 GPS位置、XY軸以及傾斜角度等,
依序變成我們需要的行經路線、方位以及偵測是否跌倒,並利用 MQTT 的方式上傳至 Node-Red,
並在由 Node-Red 將收到的資料傳進 MySQL,我們使用自己架設的平台將MySQL的資料取出,
並顯示剩餘電量以及卡路里的功能在網路平台,以供查看。
流程圖