<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于MC9S08GB32的便攜式無水阻槳頻船速測量儀

          基于MC9S08GB32的便攜式無水阻槳頻船速測量儀

          作者: 時間:2006-02-21 來源:網(wǎng)絡(luò) 收藏

          摘要:介紹一種以9GB32為核心控制器的便攜式無小阻槳頻船速測量儀的設(shè)計方案,給出方案設(shè)計原理、系統(tǒng)功能特性、硬件及軟件結(jié)構(gòu)。

          關(guān)鍵詞:9GB32 加速度傳感器 槳頻船速測量

          引言

          皮艇、劃艇、賽艇等都是比較重要的水上運動項目。運動員劃槳的槳頻、艇前進的速度等是項目訓(xùn)練中教練員和運動員最為關(guān)注的指標。如果能夠方便、準確地測出這些運動技術(shù)參數(shù),并加以科學(xué)的運算、處理、分析,必會對訓(xùn)練產(chǎn)生很好的指導(dǎo)作用。傳統(tǒng)方法不可避免地增加了水對艇的阻力,對運動員訓(xùn)練帶來額外負擔。由于傳感器要在水中工作,因此訓(xùn)練前后的安裝、拆卸非常不便,由于傳感器和控制、電視教學(xué)部分分離,因此很難做到較小便攜。此外,由于傳感器輸出通常需要放大、濾波等處理,進一步進大了系統(tǒng)功耗,不便利用在電池供電場合。本文提出的測量系統(tǒng)采用Motorola的低功耗芯片9GB32作為信心控制器,通過對MMA6262Q型加速度傳感器的信號處理實現(xiàn)船速、槳頻的測量,克服了傳統(tǒng)儀器的諸多弊端。

          圖1

          1 設(shè)計原理及功能特性

          本系統(tǒng)利用劃艇時每劃一槳,船體動量會有一增量的原理開發(fā)而成。工作時,微控制器不斷采用加速度傳感器二個方向加速度對應(yīng)的輸出電壓,然后通過內(nèi)部A/D轉(zhuǎn)換器得到可運算的數(shù)字量,再經(jīng)過一定算法計算出船速、槳數(shù)和槳頻,最終存儲并顯示這些數(shù)據(jù)。該測量儀具有以下功能特性:

          采用電池供電,系統(tǒng)工作于3.3V電壓,再結(jié)合MC08GB32的低功耗工作模式,使系統(tǒng)具有很好的低功耗特性;

          輕小便攜,外形尺寸為75mm40mm35mm(長寬高),既不會給運動員的劃槳帶來額外阻力,也便于攜帶使用;

          具有自啟動功能,設(shè)置好訓(xùn)練時段后,劃動第一槳時,儀器便自動開始進行測量和記錄,面板的LCD屏將實時顯示訓(xùn)練時間、槳數(shù)、槳頻、速度等信息;

          運動計時范圍為59分59.9秒(00:00.0~59.9),計時精度為0.1秒,計時到59分59.9秒時可自動返回到00:00.0;

          具有自動關(guān)閉功能,若6分鐘之內(nèi)無劃槳操作,MC08GB32將自動轉(zhuǎn)入低功耗模式,同時清LCD屏以節(jié)省電源功耗,直至有按鍵按下時才被喚醒,并繼續(xù)下一時段的測量、記錄工作;

          皮艇槳頻測量范圍為60~180槳/分;劃艇槳頻測量范圍為36~100槳/分;賽艇槳頻測量范圍為12~60槳/分。

          槳數(shù)測量范圍為0~9999槳,若計到9999槳將自動返回0并繼續(xù)計數(shù);

          在每個訓(xùn)練段的計時范圍內(nèi),可以記憶整個運動過程中從劃第一槳至劃完最后一槳的總時間,以及這段時間內(nèi)的平均槳頻和總槳數(shù)??衫冒存I操作依次在LCD屏上顯示整個運動過程的總時間、總平均槳頻、總槳數(shù)。不清屏?xí)r,可按需要多次重復(fù)顯示;

          具有數(shù)據(jù)存儲功能,對于運動時段數(shù)、運動總時間、總槳數(shù)和槳頻的存儲而言,可以存儲4小時的運動數(shù)據(jù);對于槳速存儲而言,可以存儲15分鐘的運動數(shù)據(jù);二種存儲式可以通過按鍵單選擇;

          具有數(shù)據(jù)通信功能,在訓(xùn)練結(jié)束后,可以選擇將存儲的數(shù)據(jù)通過RS-232傳送到PC,進行相應(yīng)的運算、處理、分析;

          PC端配有分析處理軟件,能夠接收儀器傳送的數(shù)據(jù),以直觀、明了的圖形方式繪制各個訓(xùn)練時段的加速度α(t)、速度v(t)、槳頻f(t)等多種參數(shù)曲線,也能將訓(xùn)練數(shù)據(jù)保存以供日后分析使用;

          具有電池報警功能,當電池電量不足時不可報警顯示,提示用戶更換電池。

          2 系統(tǒng)硬件設(shè)計

          整個系統(tǒng)以MC08GB32型微控制器和MMA6260Q型加速度傳感器為核心,系統(tǒng)電路包括微控制器模塊、數(shù)據(jù)采集模塊、電源管理模塊、LCD顯示模塊、按鍵功能選擇模塊和PC串口通信模塊。其硬件框圖如圖1所示。

          2.1 微控制器模塊

          本系統(tǒng)選用的MC9S08GB32型MCU,是Motorola專為智能儀表應(yīng)用設(shè)計的一款高速超低功耗MCU,速度可達20MHz。該MCU最大的特色體現(xiàn)在電源管理上,采用1.8V~3.6V供電,適合于電池供電的應(yīng)用場合,低功耗模式下僅耗電0.7μA,內(nèi)部電源管理支持電池電壓監(jiān)測、低電壓報警等功能。內(nèi)部8路16位定時器可滿足多種定時需求;32kB片內(nèi)Flash支持在系統(tǒng)、在應(yīng)用擦寫而無需再擴展外部存儲器;8通道10位ADC;帶有SCI、SPI、I2C接口;56個通用I/O接口,具有內(nèi)部可編程上拉電阻器、大電流吸收能力和邊沿斜率控制能力。儀表啟動后,MCU可對MMA6260Q型加速度傳感器的信號進行處理,進而實現(xiàn)船速、槳數(shù)和槳頻的測量、計算、存儲和顯示。

          2.2 數(shù)據(jù)采集模塊

          MMA6260Q具有高靈敏度、低噪聲、低功耗等特點。其動態(tài)量程為1.5g,靈敏度為800mv/g,輸出電壓與加速度成正比。該傳感器可與MC9S08GB32直接接口,其輸出直接送至MC9S08GB32的片內(nèi)10位ADC。MC9S08GB32片內(nèi)ADC的工作電壓為3.3V,工作頻率達2MHz,10位ADC對于加速度的分辨率可達4mg。具體連接方法參見圖2。XOUT與ADC引腳之間的RC起濾波作用,用于減小時鐘噪聲。加速度傳感器與微控制器之間不需大電流。電源與地之間的0.1μF電容器是去耦電容器,設(shè)計時應(yīng)盡量減小加速度傳感器與微控制器之間的距離。

          2.3 電源管理模塊

          系統(tǒng)電源管理采用TPS78833型低噪聲、低壓差、低功耗穩(wěn)壓 ,低電電池電壓范圍為2.7V~10V,輸出3.3V穩(wěn)壓,最大輸出電流為150mA,靜態(tài)工作電流僅為0.017mA,采用SSOP小尺寸封裝。

          2.4 LCD模塊

          LCD采用專用字符液晶顯示模塊,通過不同字符組合,可以滿足當前槳頻、當前槳數(shù)、當前船速、平均槳頻、平衡槳數(shù)、航程、記錄通道數(shù)、訓(xùn)練時間、工作方式、電池狀態(tài)等信息的顯示。LCD的電源電壓為3.3V,與MCU的接口采用SPI。

          2.5 按鍵功能功能模塊

          按鍵K2-K0用于設(shè)定儀器工作方式、測量的停止、顯示信息的選擇、系統(tǒng)休眠與喚醒、存儲數(shù)據(jù)擦除與傳送等。按鍵直接由MC9S08GB32管理,MC9S08GB32復(fù)用,KBI1P7-KBI1P0共享同一鍵盤中斷,KBI1P7-KBI1P4引腳還可以通過軟件為其配置內(nèi)部上拉電阻器。

          2.6 PC串口通信模塊

          MAX3221是低功耗電平轉(zhuǎn)換器,實現(xiàn)3.3V TTL電平和RS-232電平之間的轉(zhuǎn)換,完成MC9S08GB32和PC之間通信的物理連接。

          3 系統(tǒng)軟件設(shè)計

          軟件主程序流程如圖3所示。系統(tǒng)初始化后,先判斷加速度傳感器的瞬時輸出電壓值,以決定系統(tǒng)是否進入運動測量狀態(tài)。進入測量狀態(tài)后,由主程序完成加速度的采樣和補償、船速、槳數(shù)和槳頻的換算、數(shù)據(jù)的存儲與顯示刷新。工作狀態(tài)下,若在6分鐘之內(nèi)加速度傳感器的瞬時輸出電壓一直低于某一閾值,MCU將會轉(zhuǎn)入休眠模式。按鍵檢測由按鍵中斷完成,再進入相應(yīng)的功能模塊。系統(tǒng)軟件包括測量儀終端軟件和PC端軟件二部分。

          3.1 測量儀終端軟件

          測量儀終端軟件主要包括以下模塊。

          (1)工作時鐘設(shè)定模塊:用來設(shè)定MC9S08GB32內(nèi)部CPU的工作頻率、ADC、計數(shù)器、SCI等外圍模塊的工作時鐘頻率,同時利用計時器產(chǎn)生1/128ms的ADC采樣時間間隔及0.1s的運動時間最小間隔。

          (2)A/D采樣及船速測量模塊:MCU每隔1/128ms采樣一次MMA6260Q的加速度輸出,同時通過一定的軟件算法得 到一個瞬時速度值。軟件算法基于以下公式。

          其中,v0為t0時刻的瞬時速度,v1(t)為t1時刻瞬過速度,α(t)為t0~t1時段的瞬時加速度值。

          (3)槳數(shù)、槳頻測量模塊:運動員每劃動一槳將對船產(chǎn)生前向加速度,而在回槳過程中又會由水對船產(chǎn)生后向加速度,這種前、后向加速度隨著運動員的不停劃槳出現(xiàn)準周期性的變化,本測量模塊將結(jié)合實測的加速度曲線,通過專門的軟件搜索算法判斷出每一槳的起始點、終止點,從而得到槳數(shù)值和槳頻值。

          (4)MMA6260Q靜態(tài)調(diào)零校準模塊:受工作溫度、供電電壓、電路個體差異等因素的影響,MMA6260Q的0g情況下的電壓輸出值會有一定的波動,故需要通過該模塊進行零點校準,其他處理模塊需要利用此時得到的零點漂移值進行軟件補償。

          (5)系統(tǒng)自啟動模塊和休眠啟動、喚醒模塊:初始狀態(tài)下,當A/D采樣模塊的瞬時輸出超出某一閾值時,系統(tǒng)便自動轉(zhuǎn)入運動測量狀態(tài)直到運動員按下停止鍵或超時為止。工作狀態(tài)下,若在6分鐘之內(nèi)A/D轉(zhuǎn)換模塊的輸出一直低于某一閾值,MCU將在清屏和現(xiàn)場保護后轉(zhuǎn)入休眠模塊以節(jié)省功耗。休眠模式下若有鍵按下,則退出休眠模式并返回休眠前的狀態(tài)。

          (6)按鍵和LCD模塊:按鍵功能選擇模塊通過鍵盤中斷處理、軟件消抖、鍵值譯碼等過程獲取K2-K0的鍵值,產(chǎn)生不同工作狀態(tài)下的各種控制信息。MCU通過SPI接口向LCD顯示不同的數(shù)據(jù)信息。

          (7)Flash擦、寫模塊:測量槳頻和槳速時都需要將測量結(jié)果存儲到存儲器中,以供訓(xùn)練結(jié)束后利用PC進行進一步的分析,F(xiàn)lash擦、寫模塊完成MC9S08GB32片內(nèi)32kB Flash在線擦寫,實現(xiàn)測量數(shù)據(jù)的存儲。擦、寫模塊需要復(fù)制到MC9S08GB32中的RAM來執(zhí)行。

          (8)SCI通信模塊:SCI通信模塊可在通信工作方式下讀取Flash中存儲的測量數(shù)據(jù),并遵循一定的通信協(xié)議將數(shù)據(jù)傳送給PC。

          3.2 PC端軟件

          PC端軟件基于Window界面,利用VisualC++編寫,主要實現(xiàn)測量數(shù)據(jù)的讀取、保存、分析處理和速度曲線α(t)、速度曲線v(t)、槳頻曲線f(t)等的顯示。

          4 結(jié)束語

          皮艇、劃艇、賽艇等是許多運動會的正式比賽項目,也是非常依賴器材的項目,良好的器件能夠幫助運動員改進技術(shù),提高成績。本文設(shè)計的測量儀能夠?qū)崿F(xiàn)船速、槳數(shù)和槳頻的實時顯示;能存儲數(shù)據(jù)以便以后的分析和指導(dǎo);操作簡單,所有功能均由按鍵按制;儀表由電池供電,體積小,便于攜帶和放置;在艇類體育運動領(lǐng)域有著良好的應(yīng)用前景。



          關(guān)鍵詞: MC9 S08 MC 9S

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();