黃秋紅 王霄 張譯
摘 要: 為實時了解騎行者的騎行狀態,便于其調整騎行舉動,設計了基于物聯網平臺的自行車多功能碼表。選用AT89C52作為主控芯片,結合傳感器技術、WiFi技術、物聯網平臺實現了包含計算騎行速度、單次里程、總里程、時間、所耗卡路里、檢測環境溫濕度等功能的自行車碼表設計。進一步地,通過在LCD顯示屏及物聯網平臺顯示所得數據實時監測騎行者的騎行狀態,以及時調整騎行舉動。運行結果顯示本次設計的多功能碼表具有使用方便、結構簡單、價格便宜等優點,增加的卡路里消耗計算進一步豐富了碼表功能。此外,此設計能合理地計算騎行數據并及時將數據傳送至物聯網平臺,更加方便騎行者了解騎行實時信息。
關鍵詞: 單片機最小系統; 卡路里消耗; 物聯網平臺; LCD液晶顯示; 霍爾傳感器; 溫濕度傳感器
文章編號: 2095-2163(2021)03-0052-05 中圖分類號:TP29 文獻標志碼:A
【Abstract】In order to know the status of the cyclists in real time and they can adjust their behavior, this paper proposes a design of bicycle multi-function meter based on the Internet of Things platform. Taking AT89C52 as the main control chip and with the help of sensor technology, WiFi technology, and the Internet of Things platform, this paper achieves the design of bicycle multi-function meter, which includes functions such as calculating riding speed, single mileage, total mileage, time, calories consumed, and detecting environmental temperature and humidity. Furthermore, the status of cyclists could be understood in real time so that they can timely adjust their behavior by displaying those data on LCD and the Internet of Things platform, respectively. The result shows that there are some advantages of convenient use, simple structure, and low price for the multi-function meter designed in this paper. The added capacity of acquiring the calories enriches its functions. Besides, it can reasonably obtain the riding data and transmit these data to the Internet of Things platform in time, making it easier for users to understand the real-time information while riding.
【Key words】 single chip minimum system; calories consumption; Internet of Things platform; LCD liquid crystal display; Hall sensor; temperature and humidity sensor
0 引 言
隨著人們生活質量的不斷提高,自行車已經不只是一種簡單的交通方式了。在方便日常出行的同時,自行車已逐漸地演變成一種運動方式。而作為自行車最重要的輔助工具之一,自行車的碼表系統能盡可能準確反映每位騎行者的狀況,方便騎手及時調整自己的騎行舉動,也已然得到了迅速的發展及廣泛應用。
碼表應該在正常穩定的基礎上盡可能多地顯示騎行者所需信息,方便騎行者調整自身。文獻[1]介紹了基于霍爾元件的自行車速度里程表的設計方法,以AT89C52單片機為主控芯片,自行車車輪實時轉數的測量采用A3144E霍爾傳感器,來對自行車里程、速度進行測量,采用STC單片機內部自帶EEPROM保證系統掉電不丟失里程信息,系統中加入時鐘芯片DS1302實現實時顯示時間日期,并將自行車的里程數、速度通過LCD1602加以實時顯示,但卻并未拓展出新功能。文獻[2]研發的速度與里程表設計以單片機和光電傳感器為核心,通過傳感器將不同車速轉變成的不同頻率的脈沖信號輸入到單片機進行控制與計算,再采用LED模塊進行顯示,使得電動自行車的速度與里程數據能直觀地顯示給使用者。LED數碼管顯示比較清晰,但能源消費更高,軟件編程更復雜,工作負荷也比較大。在計算機技術飛速發展的大環境下,物聯網技術也得到了飛快的進步。文獻[3]對智能電表進行了設計,實現了實時顯示電氣量、用電量等信息的功能,且能夠通過WiFi傳輸用戶用電信息,方便用戶實時查詢。
因此,本次設計以AT89C52為主控芯片,實現了含計算騎行速度、單次里程、總里程、時間、所耗卡路里、檢測環境溫濕度等功能的自行車測量碼表設計。進一步采用LCD顯示器顯示所得數據,借助WiFi技術及物聯網平臺實時監測騎行信息,以便用戶及時做出騎行調整。
1 系統總體框架設計
通過對自行車多功能表設計的整體分析,本文以51單片機為處理核心,將數據發送到TLINK物聯網平臺實現數據的云端儲存,并顯示騎行及環境信息。
利用霍爾傳感器和51定時/計數器計算騎行速度和里程,根據所得的騎行里程和時間可以計算出騎行所消耗的卡路里。同時,采用DHT.11數字式溫度傳感器實現環境溫濕度測量。最后將所有結果通過LCD顯示屏顯示,數據也將發送至物聯網平臺實現數據的云端存儲以及實時顯示,方便用戶實時觀看查詢,并做出及時的反饋與調整。
假設車輪環的周長為L,在車輪環上安裝m個永磁體,則測量里程值的最大誤差為L/m。經過總體分析,本次設計選擇m=1。當車輪每次旋轉時,霍爾傳感器收集到脈沖信號,并將信號輸入單片機。傳感器獲取的每個脈沖信號都為系統提供一個計數中斷。每次中斷表示輪子轉了一圈,中斷次數n及周長L的乘積,即為里程值s。根據計數器T1計算每次旋轉的時間t,結合s進一步計算出瞬時速度v。里程、用戶的體重以及指數K(K=1.05)的乘積即為所消耗卡路里C。所需指標及實現方法可分述如下:
(1)速度、里程數的脈沖信號:在車輪旋轉靠近霍爾傳感器時傳感器會發送一個脈沖信號到單片機。
(2)對脈沖信號進行計數:霍爾傳感器產生的脈沖信號由單片機T1計數器計數。
(3)對數據的處理:由keil軟件編程獲得所需的值并用LCD顯示里程總數、即時速度、運行時間、卡路里、環境溫濕度等。
(4)與物聯網平臺連接:用WiFi技術將所測量數據發送至物聯網平臺實現數據的云端儲存,方便用戶實時觀看、查詢騎行狀況,以及時做出反饋與調整。
根據設計要求,碼表應擁有顯示當前速度、單次里程、消耗卡路里、循環時間、環境溫濕度、總里程和電子時鐘以及用WiFi技術把數據發送至云端儲存等功能。因此,本設計包含信號采集、信號處理、數據顯示、WiFi技術、物聯網平臺、按鍵控制和時鐘處理等模塊??傮w設計框架如圖1所示。
2 系統硬件設計
2.1 主控芯片
AT89C52是低電壓、高性能的CMOS 8位單片機,器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元。設計中是將通用的微處理器和Flash存儲器結合在一起,特別是可反復擦寫的Flash存儲器可有效地降低開發成本。單片機內部結構如圖2所示。
2.2 傳感器及其測量系統
2.2.1 信號的獲取
霍爾傳感器是基于霍爾效應的磁傳感器,具有結構堅固、體積小、重量輕、壽命長、安裝簡單、耗電量低、高頻、耐振動、不怕灰塵、油、水蒸氣、煙霧污染或腐蝕等諸多優點,可以用來檢測磁場及其變化,可以在與磁場相關的各種場合使用。
借助霍爾傳感器進行速度測定原理如圖3所示?;魻杺鞲衅鞅还潭ㄔ谲囕喼Ъ苌希囕嗇棗l上固定小磁鐵。當小磁鐵隨著車輪旋轉靠近霍爾傳感器約4~5 mm時,傳感器就會輸出脈沖信號到單片機。這樣,測量速度需要的信號就被轉換為相應的脈沖信號,并通過單片機處理獲得速度信息。
2個脈沖間距就是自行車轉動一圈車輪生成的長度,如式(1)所示:
其中,S表示車輪轉動一圈生成的長度;PI表示圓周率;D表示車輪直徑。
因此,在測量中輸入輪胎的實際直徑即可正確地獲得自行車的速度S/T、行駛里程S*(N-1)。其中,T是2個脈沖之間的時間間隔,N是驅動中產生的脈沖的數目。
2.2.2 環境溫濕度測量
本次設計中環境的溫濕度測量采用DHT.11數字溫濕度傳感器。該傳感器與單片機的通信十分簡潔方便,無需外接時鐘信號。此外,DHT.11能同時對相對濕度和溫度進行測量,并以數字信號輸出,從而減少用戶對信號的預處理負擔且其獨特的單總線數據傳輸線協議使得讀取傳感器更加便捷,工作電壓幾乎與AT89C52的電壓相同,而且功耗較低。其簡要的性能參數見表1。
從表1可以看出,該傳感器測量范圍較小,但對實驗或民用已經足夠了,DHT.11硬件連接如圖4所示。
2.3 按鍵控制部分
系統按鍵設計如圖5所示。本設計中需要1個復位獨立開關按鍵以及手動調節控制部分的5個獨立開關按鍵。按鍵A:時鐘設置時確認更改“時”,直徑設置時確認更改“十位”,體重設置時確認更改“十位”;按鍵B:時鐘設置時確認更改“分”的十位,直徑設置時確認更改“個位”,體重設置時確認更改“個位”;按鍵C:時鐘設置時確認更改“分”的個位;按鍵OK:確認更改系統設置;按鍵Menu:正常工作時確認更改顯示的模式,在總里程、速度、時間、騎行時間、消耗卡路里、環境溫濕度等進行切換。
2.4 輸出顯示模塊
顯示模塊設計如圖6所示。顯示模塊主要顯示里程、速度、消耗卡路里、環境溫濕度等信息。LCD顯示器非常節能,輻射指標較低,沒有幾何上的失真,其可視區域更大,畫質更高,更精細。1602采用了標準的16腳接口。由圖6可知,VSS接電源地;VDD接5 V的電源正極;RS為寄存器的選擇,高電平1時選擇的是數據寄存器、低電平0時選擇的是指令寄存器;RW是讀寫信號線,高電平1時是進行讀操作,低電平0時進行寫操作;E(或EN)端可作為數據使能端;D0~D7是8位雙向數據端。
2.5 WiFi模塊
WiFi模塊屬于物聯網傳輸層,符合WiFi無線網絡標準的嵌入式模塊,內置無線網絡協議IEEE802.11a.b.g.n.ac協議棧以及TCP/IP協議棧,可將串口或TTL電平轉為符合WiFi無線網絡通信標準的嵌入式模塊。WiFi設計模塊如圖7所示,設計中選用ESP8266芯片,WiFi芯片連接時VCC引腳接電源,GND接地,UTXD接單片機的RXD,URXD接單片機的TXD,將采集到的數據傳送至WiFi模塊,再由WiFi模塊將數據傳送至云端進行儲存。
3 軟件設計
整個系統設計的過程中,軟件設計需要與硬件設計緊密結合。軟件部分主要通過模塊化的設計方式完成,即按照系統以及其硬件要求將系統的功能劃分成一個個單獨的功能模塊,再根據這些功能模塊分別編寫程序的一個過程。因此,系統的整體功能以及各模塊的具體功能均更加明確,當系統出現問題時可以根據功能設定找出問題的原因,進而更快地解決問題。
軟件主程序流程如圖8所示。由圖8可知,先初始化LCD以及ESP8266,程序進入一個有歡迎字樣的界面;接著,單片機從DS1302時鐘芯片中讀取車輪累積行駛的總里程數據,同時,設定時鐘和轉動車輪的直徑以及體重。然后,接通系統中斷程序,單片機開始用定時器進行計時。調用顯示子程序即可切換顯示不同騎行信息,若繼續使用碼表,則更新騎行信息,繼續顯示,否則結束碼表的使用。
4 物聯網平臺的設計
TLINK物聯網平臺基本涵蓋了所有工業行業所需通訊協議,支持接入的傳感器種類基本涵蓋工業應用的所有場景,與單片機實現數據的傳輸比較簡單,可行性高,將單片機處理的數據通過WiFi模塊上傳至物聯網平臺即可。登錄TLINK平臺后即可創建設備并定義其上傳協議,定義好所創建設備協議后就可以連接到設備。圖9是物聯網平臺連接設備后數據上傳界面,該界面便于騎行者了解自己的騎行數據,進而對自己的騎行狀態進行調整。
云組態界面如圖10所示,通過添加云組態方便用戶直觀地看到數據變化。云組態搭建場景提供豐富的工業場景素材,拖拽組件,點擊快捷發布,即可創建個性化、場景化的物聯網監控中心畫面,可分享多人,同時管理查看。
5 結束語
本次設計基于keil軟件平臺,借助物聯網建立遠程監測系統,加入運動消耗卡路里的計算與顯示,實現了包括騎行速度、單次里程、總里程、卡路里、環境溫濕度以及時間顯示等功能的碼表設計。對傳感器采集到的數據與實際數據進行對比,結果表明本次設計基本達到預期要求。
參考文獻
[1]楊陽. 自行車速度里程表的設計[J]. 信息通信,2015(3):58-59.
[2] 黃天辰,李楠,陶炳坤,等. 自行車多功能里程表的設計與實現[J]. 自動化技術與應用,2017,36(6):124-127.
[3] 田猛. 基于51單片機的智能電表設計[J]. 中國新通信,2020,22(4):65.
[4] 周家婕,安長俊. 智能抄表系統設計[J]. 冶金管理,2020(19):174-175.
[5] 吳超瓊,許鐘華,陸曉興,等. 基于物聯網的門禁系統設計[J]. 智能計算機與應用,2020,10(6):155-157.
[6] 陶冶. 基于單片機的自行車測速儀[J]. 儀表技術,2019(7):25-27,30.
[7] 劉蔚柯,呂燕敏,張昆倫. 基于物聯網的小區天氣反饋調節智能窗戶系統設計[J]. 物聯網技術,2016,6(12):57-59,63.
[8] 王超,林百順,馮開屏,等. 物聯網智能窗戶系統的設計與實現[J]. 計算機時代,2016(7):12-15.
[9] 何文樂. 基于物聯網和wifi的智能家居移動控制系統[J]. 信息通信,2016(2):90-91.
[10]劉坤. 基于WIFI技術的物聯網智能家居[J]. 無線互聯科技,2014(6):96.
[11]趙小蘭,胡征,王培坤,等. 多功能自行車碼表設計[J]. 電子測試,2013(20):1-2.
[12]劉勇. 基于89C52單片機的多功能自行車碼表[J]. 數字技術與應用,2012(1):70.
[13]馮乙引. 自行車速度表電路[J]. 集成電路應用,2000(5):46-47.
[14]許樹杰,詹宇嫻,凌活龍,等. 基于物聯網的智能家庭機器人[J]. 物聯網技術,2020,10(10):82-83.
[15]談學釗,肖磊. 基于物聯網云平臺的熱水實時監控設計[J]. 計算機與網絡,2020,46(20):67-70.