10 加速度(2009.07.26_AM_01_31)

Download Report

Transcript 10 加速度(2009.07.26_AM_01_31)

CH10 無線加速度感測節點
設計與實驗
大綱






10.1 實驗目的
10.2 原理說明
10.3 實驗設備材料及軟體
10.4 實驗步驟
10.5 問題與討論
10.6 參考程式
10.1、實驗目的

本章透過ZigBee無線感測網路,以加速度感測器來
量測其X、Y與Z軸輸出數值,來瞭解加速度計各軸
變化的情形。

除了利用ZMConfig軟體以AT命令來實現外,亦可利
用VB 2005來撰寫的AT命令程式碼來建置出一具備
擷取加速度計X、Y與Z軸的無線感測網路的量測系
統。
10.2、原理說明
g-Sensor實際應用案例(freescale)

線性加速度感測器又稱重力感測器(g-Sensor),主要
是提供速度和位移的資訊

速度感測器(g-Sensor)應用,可以劃分為6大感應功能:






墜落
傾斜
移動
定位
撞擊
震動
g重力感測單元與控制單元
(左:分開安置、右:疊放) (freescale)
各同軸數、軸向之加速度感測器(freescale)
加速度感測器原理

g-Cell(重力感測單元)感測器將偵測到的加速度信號送
往電荷積分器做積分運算,接著經過取樣電路、保持
電路及信號放大處理。最後經由低通濾波器過濾高頻
雜訊,再經溫度補償後輸出,即是類比加速度信號。

此輸出的類比電壓與偵測之加速度值會維持線性比例
的特性,不會受到溫度的影響。
加速度感測器原理圖(freescale)
加速度計算公式
X與Y軸g-Cell感測原理示意圖(freescale)
X與Y軸g-Cell(重力感測單元)感測原理



電容值的大小和電極板的面積大小成正比,和電極板
的間隔距離成反比,g-Cell就是利用電容的原理設計而
成。
如課本圖10.5所示,藍色的部份表示可移動的電極板,
而在藍色電極板的周圍則是固定的左、右電極板,藍
色電極板與固定的左右電極板形成了兩個電容。
當藍色電極板受到加速度的影響而改變與左右電極板
之間的間隔,電容值會因而改變,同時電容電壓值也
會隨之改變,藉由此特性就可計算出加速度之大小。
表面微機電感測單元的組成元件
g-cell的實體模型示意圖
傾斜角和重力感測器ADC輸出位元的關係
Z軸g-Cell(重力感測單元)感測原理
Z軸g-Cell感測原理示意圖(freescale)
MMA7260QT產品規格及特性

MMA7260QT 加速度感測晶片特色:










可選擇的靈敏度:1.5g/2g/4g/6g
低電源消耗:500 μA
睡眠模式:3μA
低操作電壓:2.2 V – 3.6 V
6mm x 6mm x 1.45mm QFN包裝,面積小
高靈敏度 (800 mV/g @ 1.5g)
快速連接上電源執行的時間
具備低通濾波器的整合信號狀態
穩定性設計
低單價
MMA7260QT Top View腳位
MMA7260QT簡化功能方塊圖(freescale)
腳位功能表
Pin No.
Pin Name
功能說明
1
g-Select1
邏輯輸入腳,選擇加速度感測器,g-Range範圍
2
g-Select2
邏輯輸入腳,選擇加速度感測器,g-Range範圍
3
VDD
電源輸入,3.3V
4
VSS
電源輸入,接地
5~7
N/C
沒有內部連結,空接腳
8~11
N/C
工廠調整使用
12
Sleep Mode
邏輯輸入腳
13
ZOUT
Z軸類比電壓輸出
14
YOUT
Y軸類比電壓輸出
15
XOUT
X軸類比電壓輸出
16
N/C
沒有內部連結,空接腳

MMA7260QT加速度感測器之輸出為類比電壓,在使
用時必需將測得之電壓換算為加速度g值,其計算方法
如課本公式10.3。
Acceleration = ( Xout Voltage – Zero-g Voltage ) / Sensitivity
10.3、實驗設備材料及軟體



PC主機含螢幕
ZigBee無線感測網路實驗載板(一組以上) (CC2430
無線感測模組綠色標籤)
加速度感測模組









輸入電源電壓:DC2.2 ~ 3.6V
待機電流:500uA
最高靈敏度:800mv/g
可選擇靈敏度:(1.5g/2g/4g/6g)
最大加速度偵測值:±5000g
操作溫度:-40 ~ 105°C
USB-ZigBee Dongle (擔任協調者工作紅色標籤)
ZmConfig軟體
Virtual Basic 2005軟體開發環境
加速度感測模組
10.4、實驗步驟
(實驗模組連接)

步驟1、三軸加速度感測模組接至ZigBee無線感測網路
的實驗載板上。三軸加速度感測器接法可參照附錄之中
的照片。
加速度感測模組



步驟2、如同前幾章,需將USB-ZigBee Dongle連接至
PC主機的USB埠上,此時,請讀者開啟裝置管理員,
並確認虛擬COM埠編號。
步驟3、透過軟體ZMConfig與三軸加速度節點連線,
並透過超級終端機觀看節點回傳的數據。
步驟4、透過Virtual Basic 2005自行撰寫一個接收顯示
的AP應用程式。
10.4.1、ZMConfig軟體&
超級終端級測試流程



步驟1、如同第七章的ZMConfig軟體測試流程1至4。需
注意確定Max Child必須大於1,以及Max Router設定須
小於Max Child。
步驟2、將PC與三軸加速度節點上之UART連接。並將
三軸加速度節點的指撥開關調成00001100b也就是只將
開關5與開關6 ON,其餘OFF。
步驟3、在ZMConfig軟體中”網路”中按下查詢按鍵。找
出三軸加速度節點之MAC與Dongle之MAC,滑鼠左鍵
連點兩下並按下<Ctrl+C>複製至剪貼簿之中。如課本圖
10.16與圖10.17所示。
ZMConfig軟體
之"三軸加速度
節點"網路查詢
之操作示意圖
ZMConfig軟體之
"USB-ZigBee
Dongle”網路參數
查詢圖

步驟4、 IO設定分頁中,將Dongle與三軸加速度節
點RS232加入IO表中。如課本圖10.18所示。因此,
能達到自動傳送的功能。
ZMConfig軟體之“三軸加速度節點”IO設定之
”RS232”選項,並按下”加入”按鍵操作示意圖

步驟5、接著將三軸加速度節點上之指撥開關調成
00110000b,也就是開關3與開關4 ON,其餘都是OFF。
如此可將MSP430與CC2430的UART連線。

步驟6、 ZMConfig軟體中”AT模式”中,AT命令中輸入
AT+TXT D=<Ctrl+V> P=RSV<CR>,按下Send按鍵,
開啟三軸加速度自動傳值回PC。如課本圖10.19所示。
ZMConfig軟體之下達AT命令操作示意圖

步驟7、關閉ZMConfig軟體,開啟超級終端機,終端
機設定方式,如課本圖10.20所示。
虛擬COM埠測試之操作示意圖

步驟8、拿起板子左右上下移動,觀看數據的變化量,
如課本圖10.21所示。
超級終端機加速度節點接收畫面之操作示意圖

步驟9、若要關閉自動接收,請再超級終端機中輸入
AT+TXT D=<Ctrl+V> P=CRS<CR>,亦可透過
ZMComfig軟體中AT模式中,關閉自動更新後,輸入
AT+TXT D=<Ctrl+V> P=CRS<CR>,如課本圖10.22所
示。

註:由於ZMConfig軟體自動更新為每1秒更新一次,
速度不夠快速,常因資料量過多導致軟體嚴重Lag,在
此資料量大的模式下,建議用超級終端機關看資料。
ZMConfig軟體的關閉加速度節點
自動傳輸之操作示意圖
10.5、問題與討論








在讀者測試過程中,請以單一方向擺動加速度感測器,然後以
ZMConfig軟體的AT命令量測所讀取的數值是否有差異。
同第一題,但請讀者再以稍前方向的垂直方向來擺動,然後以
ZMConfig軟體的AT命令量測所讀取的數值是否有差異。
根據第四章的內容,請讀者以ZMConfig軟體的AT命令建置以加速度
量測為主的ZigBee無線感測網路的星狀拓樸架構。
根據第五章的內容,請讀者以ZMConfig軟體的AT命令建置以加速度
量測為主的ZigBee無線感測網路的樹狀拓樸架構。
根據第六章的內容,請讀者以ZMConfig軟體的AT命令建置以加速度
量測為主的ZigBee無線感測網路的網狀拓樸架構。
同第3題,請讀者以VB程式設計,並測試整體無線感測網路的效能。
同第4題,請讀者以VB程式設計,並測試整體無線感測網路的效能。
同第5題,請讀者以VB程式設計,並測試整體無線感測網路的效能。
10.6、參考程式
Private Sub Button22_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles G_Buttom.Click
Static B22 As Boolean
If B22
False Then '當關閉狀態時,按下按鍵則開啟Timer與傳送自
Private
Sub=Timer_int_ValueChanged(ByVal
sender As System.Object,
動回傳資料指令RSV
ByVal e As System.EventArgs) Handles Timer_int.ValueChanged
B22 = True
Timer1.Interval
= Timer_int.Value
‘當更變
G_Buttom.Text = "關閉接收"
Timer_int數值時,以此數值為中斷時間
SP1.Write("AT+TXT D=" + MAC_address.Text + " P=RSV" +
End Sub
Chr(13))
Status
= "GSN"
Private
Sub Timer1_Tick(ByVal
sender As System.Object, ByVal e As
Timer1.Enabled
= True
System.EventArgs)
Handles
Timer1.Tick
testtest
= ""As String
Dim
ElseSelect Case Status
B22 Case
= False
"GSN" '當開啟狀態時,按下按鍵則關閉Timer與傳送自
動回傳資料指令CRStest = Convert.ToString(SP1.ReadTo("X"))
‘讀取資料
Timer1.Enabled = False
直到讀到”X”
SP1.Write("AT+TXT
+ MAC_address.Text + " P=CRS" ‘讀取之資
+
test = "X" D="
+ SP1.ReadTo("X")
Chr(13))
料放入test直到讀到下一個X
test = ""
G_X.Text = test.Substring(2, 3)
‘資料為
G_Buttom.Text
=
"開啟接收"
X=***Y=***Z=***
Status =G_Y.Text
""
= test.Substring(7, 3)
‘取出2~5為
End
If
X資料 取出7~10為Y資料
End Sub
G_Z.Text = test.Substring(12, 3)
‘取出12~15
為Z資料
SP1.DiscardOutBuffer()
End Select
End Sub