Xadow 3-Axis加速器數值的判斷與應用

 

接著上一篇「Xadow的初體驗」,再來試試加速器的讀取、傳送與判斷。在這邊要先感謝Xadow的nosk,提供了很多的支援與協助,謝謝你 🙂 上面這張圖就是換個方式顯示的圖示,主要就是要表達使用正確的控制介面去控制設備就是了。之前有想要做個車上的行車穩定度偵測裝置,所以就先從現在一堆穿戴式裝置的步行判斷來試試。第一次碰這種東西,一開始還真的有一些撞牆期,不知道問題是什麼?問題在哪?心浮氣躁又懶得靜下來找,實在是一團混亂。下面是試圖抓一些步行行為模式時的錯誤嘗試與分享。

↑ 這個加速器所吐出的資料,在加速度值的0.02誤差區間內的話,有效的參考值約98.95%。(取樣週期為1/6秒)

↑ 因為加速器本身有些許的輕微誤差,所以在小動作時,應該比較不容易觀察出來。

↑ 再來就是要來試試怎麼抓個擺動的動作了。一開始想要透過抓最低點的向量來判斷,然後透過多次的實驗後找出一個最大可容許的誤差角度,這樣就會在一個標準向量為中心的情況下,產生一個類似原錐體的形狀,擺動的向量只要再這個原錐體內,都視為有效的向量。後來發現不一定要找最低點,其實這未必找得到,因為這機率取決於取樣的週期。真正麻煩的地方是在那個「標準向量」,什麼才是標準?這實在很難認定。所以這個方法似乎槓龜了。

↑ 後來想到可以用三個有效的向量或是取樣的點來建立一個擺動的平面,將擺動的向量從三維的空間簡化或視為成二維空間上的平移。然後再針對各個取樣的向量來計算與這個平面的夾角,是否在一個可容許的範圍內。但是如果在一個取樣週期裡,出現幾次的非容許值,那我又能怎辦勒?好像也不能怎辦。

↑ 最後乾脆改為巨觀一點的觀察方式,計算一個短週期內,各平移過的向量點距離這個擺動平面的總和。只要這個總和小於一個實驗出來的可接受界限值,就認為是有效的步行取樣點。結果試了一下,好像還OK。裡面還是有一些問題點,之後有機會再來慢慢試。改天再來換試車行的狀態判斷,感覺又更麻煩了。不知道還能不能用現在的方法來解決,但這個平面似乎不太容易決定出來 。