Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
n454113兄言之有理。
首先感謝各位的鼎力相助,先前Eigen及cheng100所提供的方法覺得應該可行,試了幾個角度去算,還沒發現那裡會出現錯誤,現在我手邊有很多事要忙,晚點會加以驗証此兩種演算法的正確性,再次非常謝謝各位!
發表於: 2007/5/8 14:21
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
分析:
n1 n2 n3 ~ nx 共 x 個角度 假設 n1 ~nx 為依 大小排列,要能算振動的平均角度,則 nx-n1 < 180度。 w= (n1+n2+n3 +...+nx)/x for(a=0, i =1 ;i <=x i++){ if(ni >=270 ) a+=n+1; if(ni <=90 ) a+=1; } if( a>n+1) w+= 360/n*(a%n+1)
發表於: 2007/5/8 12:55
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
初級會員
![]() ![]() ![]() |
抱歉忘了說清楚,平均偏差定義是各個偏差值取絕對值相加後除以樣本數.
當然樣本數越多,預測會越準確,你的例子只提供3個樣本 計算後數值是359.3333....,誤差約0.2%
發表於: 2007/5/8 12:20
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
w=(x+y+z)/3;
a=0; if(x>=270) a+=1; if(x<= 90) a+=4; if(y>=270) a+=1; if(y<= 90) a+=4; if(z>=270) a+=1; if(z<= 90) a+=4; if(a== 6) w+=120; if(a== 9) w+=240; 這樣應該就能克服了~~
發表於: 2007/5/8 12:02
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
由 cheng100 貼於 2007/5/8 11:14:34
X1=359,X2=0,X3=1 DEV=SUM((359-180),(0-180),(1-180))/3=SUM(179,-180,-179)/3=-60 ANGLE=-60+180=120,但是結果應該要為0 不知道我有沒有試算錯誤?
發表於: 2007/5/8 11:57
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
初級會員
![]() ![]() ![]() |
週期函數的不連續區間,如鋸齒波函數,直覺上(或數學證明)是可以求出平均值的.
公式出奇簡單: mean=(極大值-極小值)/2=180 再求平均偏差DEV: X1,X2,X3.....Xn,共N各樣本. DEV=SUM((X1-mean),(X2-mean),.....)/N (呼叫平均值副程式) 位置值還原: ANGLE=DEV + mean ok! 條件: 取樣率至少是量測物最大抖動率的2倍 角度正規化為0~359
發表於: 2007/5/8 11:14
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
由 Eigen 貼於 2007/5/8 10:13:35
w=(x+y+z)/3; a=0; if(x>270) a+=120; if(y>270) a+=120; if(z>270) a+=120; if(a==120)w+=240; if(a==240)w+=120; x=269,y=270,z=271 w=(269+270+271)/3=270 z>270-->a=120,w=270+240=510=150-->應該要是270才對。謝謝提供意見。
發表於: 2007/5/8 10:49
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
w=(x+y+z)/3;
a=0; if(x>270) a+=120; if(y>270) a+=120; if(z>270) a+=120; if(a==120)w+=240; if(a==240)w+=120;
發表於: 2007/5/8 10:13
|
|||
|
Re: 角度平均計算
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
我不是使用角度電位計,角度是我利用數學公式計算出來的,至於使用的Sensor以及再詳細的內容不便在此多說,因為...這是公司的商業機密。
發表於: 2007/5/8 9:34
|
|||
|