<%@ Page Language="C#" AutoEventWireup="true" CodeFile="home.aspx.cs" Inherits="_Default" %> 以 NB-IOT 智慧單車定位與意外偵測裝置

簡介


本專題旨在開發租借式腳踏車與使用者互動的即時監控系統,避免出現腳踏車遺失及意外發生時卻無人發現等狀況,使用者可透過我們架設的網路平台查看自己的位置、里程數、卡路里消耗及行駛路線,管理者則能從平台上得知每台腳踏車目前狀況、歷史路徑,判斷是否需要進行維護

作品介紹

模組介紹

窄帶物聯網 (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的資料取出, 並顯示剩餘電量以及卡路里的功能在網路平台,以供查看。




流程圖



成果展示


關於我們

未來展望

希望將我們的產品透過測試與以及客戶使用回饋進行優化升級, 本專題是希望可以加強金門觀光運輸,將我們的產品結合金門當地的K-Bike,讓使用者知道目前站點有無腳踏車能提供給使用者,避免到站點卻無腳踏車的尷尬情形,或是騎到目的地卻沒有地方歸還,並在網頁顯示使用者行經路線及計算卡路里,讓想運動的人可以知道消耗多少卡路里。當意外發生時能即時讓管理者知道,從而進行關懷以及腳踏車的維修。在我們GPS定位系統中,希望未來可以應用在失智老人的定位系統、孩童防走失的系統、或是嬰幼兒防意外裝置中,對社會有更多回饋。