董雨聲,馬松浩,湯慶威,胡福年
(江蘇師范大學 江蘇 徐州 221000)
綠色出行是當今深入人心的出新方式,選擇自行車作為短途出行方式深受歡迎,自行車運動也是一項十分受歡迎的健身運動,而且在運動過程中可以充分享受到大自然,對于生活快節奏的現代人來說,無疑是一種很好的放松方法。對于自行車運動愛好者來說,一種經濟實惠、簡單便捷的多功能測控系統十分實用,既能實時方便知道車速、環境溫度、行駛里程,也可以知道使用者的血壓、心率,對不適的身體狀況進行報警提醒使用者注意。既可以在室外使用,又適用于室內自行車,滿足不同人群的需求,讓更多人投入到綠色出行的行動中來。
以MSP430F149單片機為微處理器,與速度測量模塊、lcd12864顯示模塊、Ds18b20溫度傳感器測量模塊、心率測量模塊、血壓測量模塊等組成具有實用價值的便攜式自行車功能儀。系統總體結構圖如圖1所示。

圖1 系統總體結構圖Fig.1 The overall structure of the system
以MSP430F149單片機為核心,與集成霍爾元件模塊組成的測速信模塊、與LCD12864組成系統的顯示模塊,按鍵掃描模塊和電源模塊等相結合組成一體式測速系統,與DS18B20傳感器如成溫度模塊。
設計采用MSP430F149單片機為微處理器,msp430系列單片機是由是美國德州儀器(TI)在1996年推出的一種16位超低功耗的單片機[1-2],具有豐富的片內片外接口。通過外接電路包括霍爾傳感器,lcd12864,ds18b20溫度傳感器、心率傳感器模塊、血壓傳感器模塊等組成具有實用價值的便攜式自行車功能儀。
器件選擇:采用3144霍爾傳感器構成的開關量霍爾傳感器,配合磁鋼通過對自行車車輪的旋轉配合磁鋼的作用,使霍爾測速傳感器產生脈沖信號,微處理器MSP430對輸入的脈沖信號進行計數,再根據車輪的半徑,通過編程算出實時的行駛車速。
測量原理:假設某一型號的自行車車輪外徑D為60.00 cm,根據公式C=πd計算可知,輪子的周長為1.884 m。用霍爾傳感器配合微處理器來采集輪子轉一圈的時間T。從而根據C/T,便可以計算出車的速度。在一個計時周期內,當一次觸發時,進入中斷,并開始計時。緊接著第二次進入中斷時,立刻記下計數值,并得出時間差T。設立一個標志位flag即可實現。假設一個計時周期為8 s,也就是最低的計算速度可以達到1.884/8=0.236 m/s=0.8478 km/h,由于msp430f149單片機計數的一個周期為0.000 12 s[3],故最快計時速度也遠遠超過自行車的實際能到達到的時速。所以這種測速方法理論上完全滿足實際要求。
器件選擇:采用8位并行、帶中文字庫LCD12864作為顯示輸出模塊,12864最低至3.0 V電源電壓供電,可以直接其顯示分辨率為128×64,內置8 192個16*16點漢字,足以顯示本設計中需要的全部數據與提示漢字等,12 864與msp430f149單片機接口電路簡單穩定,可以直接連接。
采用集成的DALLAS18B20數字溫度傳感器,全部傳感元件及轉換電路集成在形如一只小三極管的集成電路內。且僅需占用兩個I/O口資源,轉換速度快,抗干擾能力強,測量精度也滿足要求,可編程的分辨率為9~12位[3],對應的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.062 5℃,選擇任意分辨率都能完全滿足系統測量環境溫度的精度要求。由于其可用3.0~5.5 V的寬供電電壓范圍,方便系統的供電電源設計,若用寄生電源供電方式可以直接通過與微處理器I/O口的數據線供電,這樣外接連線更加便捷。
器件選擇:采用圖2所示的HK-2000A型脈搏傳感器,其采用高度集成化工藝,將力敏元件(PVDF壓電膜)、靈敏度溫度補償元件、感溫元件、信號調理電路集成在傳感器內部。具有靈敏度高、抗干擾性能強、過載能力大、一致性好、性能穩定可靠、使用壽命長等特點。該脈搏傳感器還具有完善的信號調理功能,用戶在使用時后級不需要再加濾波等電路。?根據壓電式原理采集信號,將模擬信號輸出,輸出同步于脈搏波動的脈沖信號,脈搏波動一次輸出一正脈沖,可以用于脈率數據的實時采集。心率測量系統結構圖如下圖3所示。

圖2 HK-2000A型脈搏傳感器Fig.2 HK-2000A-type pulse sensor

圖3 心率測量系統結構圖Fig.3 Heart rate measurement system diagram
測量方法:將HK-2000A型脈搏傳感器綁在使用者的食指或中指尖上,綁時要施加一些壓力,手指頭應該會感覺到脈搏的跳動,輸出插頭通過耳機插座轉接,接入到MSP430f149單片機中,通過在設定時間內測到的脈沖次數,計算出心率。
器件選擇:Freescale MPXV5050GP壓力傳感器是最新型的單片式帶信號調節的硅壓力傳感器,集成了片上技術、雙極運算放大器電路和薄膜電阻器網絡,可提供高輸出信號和溫度補償功能,提供與所施壓力成正比、精確的高電平模擬輸出信號。因其體積小巧、可靠性高,適用于血壓測量。
原理:本系統測量血壓采用示波法[4]。測量過程中采用袖帶來阻斷上臂動脈血流。在充氣過程中,壓力增加,檢測靜壓力和袖帶內氣體的振蕩波,振蕩波起源于血管壁的搏動。當袖帶壓力高于收縮壓時,動脈被壓閉,此時因近端脈搏的沖擊而呈現細小的振蕩波。隨著袖套壓力下降,在袖帶靜壓力小于舒張壓之前,動脈管壁在舒張期已充分擴展,管壁剛性增強,因而波幅維持在較小的水平。示波法血壓測量就是根據脈搏波振幅與袖帶壓力之間的關系來估計血壓的。將脈搏波振動信號的幅值與信號的最大幅值相比進行歸一化處理,通過確定收縮壓和舒張壓的歸一化系數來識別收縮壓與舒張壓。血壓測量系統結構圖如圖4所示。

圖4 血壓測量系統結構圖Fig.4 Blood pressure measuring system structure diagram
測量方法:由單片機發出指令,控制氣泵和電磁閥,實現袖帶的充氣和放氣,由袖帶內部的MPXV5050GP壓力傳感器將測量得到的電壓值反饋到單片機中,通過MSP430單片機內部的ADC轉換和經過程序處理,計算出收縮壓和舒張壓,實現血壓的測量。
單片機編程選擇C語言作為編程語言[6],以IAR for msp430作為開發環境。先初始化液晶、定時器、ds18b20等模塊,然后再主程序中調用各個模塊函數,計算結果輸出到lcd12864上顯示。系統總體程序流程圖如圖5所示。
用霍爾傳感器,來采集車輪轉一圈的時間T。從而根據C/T,便可以計算出車的速度。當外部觸發中斷,記錄時間T,計時器清零。然后通過時間T(輪子轉一圈的時間),算出此時車速[5]。采用集成霍爾傳感器,例如3143??梢栽谟写艌龊蜔o磁場兩種狀況下,產生高低電平。
根據ds18b20芯片手冊,因其讀寫數據指令對時序有嚴格的要求,只需嚴格按手冊控制讀寫時間,通過定時器延時能夠得到極為精確的μs級延時可以準確的實現溫度測量。
本文采用MSP430F149為微處理器,并通過霍爾傳感器進行速度測量,用DS18B20溫度傳感器進行溫度測量。速度選取準確,顯示穩定,電路簡單,成本較低,所得數據可靠更加適應各種惡劣的自然環境,不受泥濘道路、光強度等經常出現的干擾因素的影響,達到了設計要求。軟件在IAR for MSP430 IDE環境下采用C語言編寫,模塊化程序設計,結構清晰,方便維護與擴展。設計中也存在的一些不足之處:如顯示器部分占用面積過大,相對比較耗電,批量生產應采用可定制的段式液晶。
[1]李智奇.MSP430系列超低功耗單片機原理與系統設計[M].西安:西安電子科技大學出版社,2008.
[2]秦龍,MSP430單片機C語言應用程序設計實例精講[M].北京:電子工業出版社,2006.
[3]陶 冶,袁永超,羅 平.基于DS18B20的單片機溫度測量系統[J].農機化研究, 2007(10):160-164.
[4]張曉蘭,何琳,胡志剛,王笑一.基于MSP430的防水型電子血壓計設計[J].計算機測量與控制,2013(2):10-19.
[5]董燕飛,董良師,王洪林.基于單片機的自行車測速系統設計[J].科技廣場,2009(9):189-190.
[6]譚浩強.C語言程序設計[M].北京:清華大學出版社,2000.