1

位置センサーからの値に基づいてタイヤを回転させる必要があるプロジェクトに取り組んでいます。センサーは、261 (-90 度) から 395 (+90 度) までの値を提供します。私が使用してTransformGroupいるので、センサーからの値がほぼ 327 で、タイヤはまっすぐで直立している必要がありここに画像の説明を入力ます。

値が 395 の場合、タイヤは X 軸に沿って完全に配置されます。値 261 の場合も同様です。タイヤを動かすことはできますが、正確な角度を計算することはできません。
私の計算方法は、特定の角度(たとえば3)のデフォルト値またはゼロ値(327)の間の値の数を計算するようなものです。その角度の値の数を取得します。次に、この数値を角度 (3 度) で割ります。だから私は1つの値の角度を取得します。

float tempangle = value from sensor-zero value which is 327;
                tempangle = Math.Abs(tempangle);
                tempangle /= float.Parse(angle for reference say 3 degree);
                tempangle = 1 / tempangle;

ここでは、既知の角度の物体をセンサーの下に置きます(角度があります)。ある値の角度を見つけたいときは、この角度にその値とデフォルト値(327)の間の値の数を掛けるだけです。だから私は体を回転させる角度を取得します。
計算後に角度が得られたとします

angle for one sensor value =1.14286286 

次のような電卓で角度を計算するとします

1.14286286 *2=2.2857
1.14286286 *3=3.42858
1.14286286 *4=4.57145
1.14286286 *5=5.714314
1.14286286 *6=6.85717

ご覧のとおり、角度は一部の小数値をスキップしています。それに協力する方法はありますか?ありがとう

4

1 に答える 1