<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于MMA7260QT三軸加速度傳感器的跌倒探測儀的研制

基于MMA7260QT三軸加速度傳感器的跌倒探測儀的研制

作者:上海復旦光華信息科技股份有限公司 張 鑫 孫新香 時(shí)間:2008-08-01 來(lái)源:世界電子元器件 收藏

  事務(wù)處理及狀態(tài)機
  根據跌倒探測器的設計需求,系統要同時(shí)具備計步器、跌倒檢測、報警處理、系統設置和無(wú)線(xiàn)通信控制等功能。

本文引用地址:http://dyxdggzs.com/article/86529.htm

  事務(wù)處理的方法借鑒操作系統中的線(xiàn)程概念。首先將每項事務(wù)執行的操作明確,確定每種操作的優(yōu)先級、相互關(guān)系和對資源的要求,然后在主循環(huán)中設置各種操作的啟動(dòng)機制,從總體上看,這些事物在主循環(huán)中并行地得到實(shí)現。跌倒探測器事務(wù)處理的調用關(guān)系如圖6所示。


 

  針對某些項事務(wù)處理的實(shí)現,在軟件設計中采用了狀態(tài)機的方法以確保整個(gè)任務(wù)能夠順暢而正確地得以實(shí)現。

  系統設置
  系統設置主要完成一些初始化操作和需要使用者進(jìn)行確認的系統信息的設定操作。
系統初始化工作主要由完成,包括各種配置寄存器的設置、初始化指令和存儲緩沖區的設置,初始化工作將保證系統各功能組件能夠在上電后正常啟動(dòng)。

  初始化--_Init( ):
  通過(guò)設置相應的控制寄存器實(shí)現MCU的啟動(dòng)和對各功能外設(Peripheral)的管理:
時(shí)鐘:MCU工作采用內部時(shí)鐘,通過(guò)設置ICS控制寄存器實(shí)現;

端口:根據系統端口分配方案,結合相關(guān)外設--I2C、SCI的控制寄存器實(shí)現;
I2C控制器:傳輸速率、地址選擇設定;
SCI控制器:波特率設置。

  初始化--LCD_Init( ):
  通過(guò)指令初始化驅動(dòng)控制芯片HT1621B,完成液晶顯示器的初始化。

  存儲緩沖區初始化--RT_Data、 Word_Base[ ]:
  MC9S08QG8內部集成了512字節的RAM滿(mǎn)足程序運行所需。而在跌倒探測器運行過(guò)程中,MCU持續采集的數據,并進(jìn)行處理,因此要為數據分析預先開(kāi)辟好緩存區。同樣,在利用CDMA發(fā)布報警信息時(shí),報警信息文字內容需要在進(jìn)行軟件設計時(shí)預先設定好,并在需要使用時(shí)通過(guò)指針調用。

  需要使用者進(jìn)行確認的系統信息的設定,是指跌倒探測器報警信息的接收方可以根據實(shí)際情況由使用者進(jìn)行設定,例如親屬的移動(dòng)電話(huà)或急救中心的固定座機(要求能夠接收短信)。使用者可以通過(guò)按鍵配合液晶,輸入接收方的號碼即可,必要時(shí)使用者也可以對接收方號碼進(jìn)行修改。

  按鍵功能
  按鍵功能在軟件設計中單獨提出是因為本系統受限于MCU端口數量,無(wú)法按照預先設計的人機交互需求安排足夠端口作為鍵盤(pán)掃描之用。本設計中最終確定使用2個(gè)按鍵,按鍵的功能設定及使用方法設計如下。

  "Alam"鍵(啟動(dòng)報警接收方號碼輸入、手動(dòng)報警):
  跌倒探測器一般工作模式下,長(cháng)按(超過(guò)2秒)"Alam"鍵,啟動(dòng)報警信息發(fā)布功能,適用于除跌  倒情況外其他緊急情況;
  跌倒探測器一般工作模式下,按"Alam"鍵,跌倒探測器進(jìn)入設置報警接收方號碼狀態(tài),配合"Alter"鍵實(shí)現號碼輸入;
  跌倒探測器進(jìn)入報警處理狀態(tài)(蜂鳴器beep)時(shí),按"Alam"鍵,直接發(fā)布報警信息,然后關(guān)閉蜂鳴器;
  "Alter"鍵(計步器啟動(dòng)、暫停、清零、取消報警、設置報警接收方號碼):
  跌倒探測器一般工作模式下,按"Alter"鍵在計步器啟動(dòng)、暫停和清零三項功能之間切換;
  跌倒探測器進(jìn)入報警接收方號碼輸入狀態(tài)時(shí),"Alter"鍵執行液晶顯示的數字加1的操作,數字從0-9循環(huán);
  跌倒探測器進(jìn)入報警處理狀態(tài)(蜂鳴器beep)時(shí),按"Alter"鍵取消報警,然后關(guān)閉蜂鳴器。

  計步器
  MCU始終在分析佩戴者身體姿態(tài)的信息,因此可以將佩戴者的行走動(dòng)作分析作為一項附屬結果輸出,從而使跌倒探測器還具有了計步器的功能。

  參考圖1,在理想狀態(tài)下的步行過(guò)程中,X軸和Z軸都應該能夠檢測到加速度的周期性變化--X軸由前進(jìn)的動(dòng)作引起,Z軸由身體的上下起伏引起,這種周期性的變化可以為步行動(dòng)作的分析提供依據。由于在實(shí)際使用過(guò)程中,身體隨邁步動(dòng)作產(chǎn)生相應的晃動(dòng)同樣會(huì )引起在三個(gè)正交坐標軸方向上的輸出,因此在設計檢測算法時(shí)應設定合適的加速度閾值。只有超過(guò)一定幅度的輸出才被看作是由于邁步動(dòng)作所引起,避免由于正常的身體晃動(dòng)引入的各種偽差。計步器實(shí)現的軟件流程如圖7。


   跌倒檢測
  危險的或者可能已產(chǎn)生較嚴重后果的跌倒發(fā)生后,人體通常處于水平狀態(tài),因此對于這種類(lèi)型的跌倒,要求跌倒探測器都能夠檢測到并實(shí)施報警處理機制。而對于其他較為復雜的跌倒過(guò)程,則需要通過(guò)報警機制的配合,實(shí)現對跌倒探測及危險報警的準確觸發(fā)。跌倒檢測的算法狀態(tài)機如圖8所示,


 

  跌倒檢測算法描述如下:

  1)主循環(huán)等待,監測Z軸加速度變化,如果超過(guò)閾值,進(jìn)入下一步;
  2)等待加速度恢復到正常范圍內,進(jìn)入下一步;
  3)再設置延時(shí)10秒,等待佩戴者狀態(tài)穩定;
  4)數據分析,如果發(fā)現佩戴者身體水平,認為發(fā)生跌倒狀況,觸發(fā)報警處理。

  報警處理
  在本設計中,采用跌倒檢測算法和多種報警模式相結合的方式。跌倒探測器檢測到跌倒發(fā)生時(shí),系統必須能夠準確無(wú)誤地將報警信息發(fā)布出去,才能保證跌倒者獲得救助。跌倒包含很多種類(lèi)型,有些情況下,檢測到的"跌倒"是有意識的行為--或者根本不是跌倒--假陽(yáng)性;另外,有時(shí)跌倒者仍然還保持一定的行動(dòng)能力,為了盡快得到救助,自身可以采取一定的行動(dòng);還有一種情況,跌倒造成比較嚴重的后果,跌倒者已無(wú)法行動(dòng)。

  針對上面提到的幾種情況,報警處理的軟件設計將加以區分對待:

  檢測到跌倒后,系統啟動(dòng)30S的倒計時(shí)器,并打開(kāi)蜂鳴器,每3S響一次,如果沒(méi)有接收到任何輸入,30S結束后,系統自動(dòng)發(fā)布報警信息;

  進(jìn)入30S倒計時(shí)后,蜂鳴器"beep",系統可以響應用戶(hù)輸入,跌倒探測器的兩個(gè)按鍵分別設置為"手動(dòng)報警"和"取消(報警)"的功能,如果用戶(hù)按"手動(dòng)報警"鍵,系統發(fā)布報警信息;

  如果用戶(hù)按"取消"鍵,系統關(guān)閉30S倒計時(shí)和蜂鳴器,不作任何處理,直接返回計步器和跌倒檢測狀態(tài)。

  通信控制

  報警信息通過(guò)CDMA短信的方式發(fā)送給接收方,跌倒探測器采用DTGS-800b型CDMA模塊,通信控制就是使其能夠正常工作的一段例程。DTGS-800b型CDMA模塊提供RS232接口,MCU可以根據需要通過(guò)AT命令實(shí)施對通信過(guò)程的控制。具體通信例程根據設計需求應包括如下內容:

啟動(dòng)CDMA模塊--Comm_Start( );
啟動(dòng)GpsOne?服務(wù)--Gps_Start( );
獲得GPS空間定位信息--Gps_Position( );
發(fā)送短信息報警--Send_SMS( )。
由于通信例程涉及的狀態(tài)不多,基本是按照上面的順序進(jìn)行,因而程序結構比較簡(jiǎn)單,這里就不再贅述。


 

結論

  按照上述方案設計完成的跌倒探測器樣機線(xiàn)路板如圖9所示,左圖為帶有CDMA模塊線(xiàn)路,右圖為不帶CDMA模塊線(xiàn)路,可見(jiàn)其下方是讀SIM卡電路。上電后,該線(xiàn)路板各功能模塊工作正常,能夠完成加速度采集、EEPROM數據存儲和跌倒報警短信發(fā)送(包括自動(dòng)、手動(dòng)和取消模式),按鍵液晶均能夠正常

蜂鳴器相關(guān)文章:蜂鳴器原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: MCU 探測儀 加速度傳感器 液晶

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>