Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 22755|回復: 51
打印 上一主題 下一主題

請問Wii裡頭的ADXL330加速度計

[複製鏈接]
跳轉到指定樓層
1#
發表於 2010-1-20 14:22:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問Wii裡頭的ADXL330加速度計
是如何利用得到的加速度和傾角
進而得到使用者的動作的
2#
發表於 2010-1-20 18:46:05 | 只看該作者
三軸會傳回類比訊號
就可以利用單晶片的訊號腳去讀取並處理這些訊號
AX330我正好有一顆

使用arduino的控制也很簡單
const int xpin = 3;                   // x-axis of the accelerometer
const int ypin = 2;                   // y-axis
const int zpin = 1;                   // z-axis (only on 3-axis models)

void setup()
{
   Serial.begin(9600);
}

void loop()
{
   int a,b,c;
   a=analogRead(xpin);
   b=analogRead(ypin);
   c=analogRead(zpin);
   Serial.print(a);
   Serial.print("\t");
   Serial.print(b);
   Serial.print("\t");
   Serial.print(c);
   Serial.println();
   delay(500);
}

wii裡面應也是類似的方式
3#
 樓主| 發表於 2010-1-20 19:57:18 | 只看該作者
那得到的訊號是它個別的G值囉
是利用這些G值 得到傾角 加速度
再來得到動作嗎
4#
發表於 2010-1-21 02:47:46 | 只看該作者
就是這樣
5#
 樓主| 發表於 2010-1-21 09:30:08 | 只看該作者
瞭解了
我做一做實驗
有問題再詢問囉

感謝
6#
發表於 2010-1-21 12:24:15 | 只看該作者
我之前測試是借示波器
直接勾在他腳位上
搖動晶片去觀察波動的樣子來記錄規則
寫程式去讀取
7#
發表於 2010-1-21 23:04:55 | 只看該作者
樓上的大大好~~~

最近也剛好在玩wii控制三軸加速度計

不知道您們如何求"傾角"和"速度"呢~@@??

傾角我試著用atan[X/Sqr(Y2+Z2)]*180/pi

速度的話是代Sqr(X2+Y2+Z2)~~~不過出來的值從"1"開始

不知道這兩方面要怎嚜算@@??

剛在摸索而已~~~請前輩們指教一下~~謝謝了^^
8#
發表於 2010-1-21 23:45:07 | 只看該作者
我只是單純用來看加速度往哪邊
以便控制馬達

傾角目前還是靠陀螺儀比較準確和快

速度代那個公式
算出來變成"加速度純量", 每隔固定時間計算則是速度純量
已經失去方向性參考了, 畢竟加速度計主要是為了姿態控制用途
這部份計算速度有什麼用途嗎?
不過我總覺得我的330似乎壞了, 有點怪怪的
9#
 樓主| 發表於 2010-1-22 10:25:32 | 只看該作者
我之前是利用H48C三軸加速度計做實驗
求出三軸個別的G值
再利用三角關係求出

X軸 Y軸與水平是asin的關係
Z軸與垂直線是acos的關係

只是皆要在靜止情況下求得G值
結果蠻準確
10#
發表於 2010-1-22 11:55:11 | 只看該作者
所以直接用三軸在靜止下量傾角喔?
我後來得用陀螺儀才真的量的出來
看來那顆330真的是壞了, 根本從來沒量出來過
不過他對加速度的變化會有反應哩
好吧 , 再買一顆好了
11#
 樓主| 發表於 2010-1-23 13:47:58 | 只看該作者
靜止才能測量傾角
現在才正要開始試試330呢
12#
 樓主| 發表於 2010-1-23 16:28:40 | 只看該作者
請問mzw2008 大大
請問您得到330的G值後
有利用甚麼濾波嗎
因為我只用中值濾波
可能還是不夠準
就有點卡住了
13#
發表於 2010-1-23 20:59:10 | 只看該作者
我的330是故障的
後來借人家的用才有比較正常

不過所謂不夠準是怎樣的情況呢?
14#
 樓主| 發表於 2010-1-23 21:54:45 | 只看該作者
不準的情況是
我將它放置水平
然後換算傾角
每十筆取中值再加以平均
結果出來會再正負5度內跳動
大致是這樣的情形

而且
G值越大 角度越高的情況下
類比輸出的 非線性非常明顯
電壓較高的時候 角度跳動蠻大的
15#
發表於 2010-1-23 22:48:01 | 只看該作者
這種情況似乎多少會有
我借來那顆約是+-3度
感覺是周邊的雜訊或是環境干擾
但測試貴一點的版本就比較少, 這顆我現在有進一批, 兩百塊一顆,拿來胡搞的

另外類比的解析度也有關係
這顆好像是8~10bit的樣子
且他電壓只能3.3喔
你說較高是什麼意思, 通5V進去嗎, 小心燒掉啊, 哈哈
16#
 樓主| 發表於 2010-1-24 11:49:19 | 只看該作者
我是用3.3V沒錯
我的意思是 類比都會有非線性的狀況
它到了大約60度以上就會跳動的很快
電壓上升一點點 它就會在60到90度之間跳動
不會像小角度一樣 正負5度慢慢的變化
會變化很快
17#
發表於 2010-1-24 20:27:12 | 只看該作者
可是數位的很貴喔!!!
18#
 樓主| 發表於 2010-1-25 09:53:13 | 只看該作者
那如果是330
它大角度的非線性情況有辦法解決嗎?
謝謝
19#
發表於 2010-1-25 11:39:15 | 只看該作者
如果是非線性的問題而已很好解
自己先量出各種角度的值
然後在程式裡面做索引表格
讀到值以後直接查表就好了
不然有些時候太不線性, 沒公式可以利用
20#
 樓主| 發表於 2010-1-25 14:51:32 | 只看該作者
在角度大的時候
它的G值一改變 角度就會變化很大
像是0.98時 角度為10.61
       1時 角度為2.53

因為類比容易受到雜訊干擾
就會在0到10幾度間跳動
就會很不準

所以我就會很疑惑 為什麼Wii可以做得那麼的好
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-11-22 01:39 , Processed in 0.154726 second(s), 7 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表