YUTO WATANABE / OmniMove
Revision:
7:9b9d488ebcfd
Parent:
6:fac3dcaebe83
Child:
9:91ce72a587ad
diff -r fac3dcaebe83 -r 9b9d488ebcfd OmniMove.h
--- a/OmniMove.h	Mon Mar 29 09:13:27 2021 +0000
+++ b/OmniMove.h	Mon Apr 12 10:38:12 2021 +0000
@@ -36,9 +36,29 @@
 ・マシンの回転速度Vrollについて
  値が正(>0)であれば反時計回り、値が負(<0)であれば時計回りにマシンが回転する
 
-・回転速度の重みroll_ratioについて
-例)roll_ratio=0.5の場合→マシンの直進成分が5割、回転成分が5割になる
-  roll_ratio=0.8の場合→マシンの直進成分が2割、回転成分が8割になる
+・使用例(4輪の場合)
+#include "mbed.h"
+#include "OmniMove/OmniMove.h" //インクルァぁドしてネ
+ 
+OmniMove mekanamu; //TickerやTimerのように宣言
+ 
+int main(){
+    float motor_output0,motor_output1,motor_output2,motor_output3;//それぞれのモータ出力変数を用意
+    
+    mekanamu.setup(4,45); //車輪の個数、位置を設定(1度宣言すればいい)
+    
+    while(1) {
+        
+        mekanamu.input_polar(0.5,90,0); //マシンの走行速度、進行方向、回転速度の入力
+        
+        //それぞれのモータ出力変数に値を入力
+        motor_output0 = mekanamu.output_(0);
+        motor_output1 = mekanamu.output_(1);
+        motor_output2 = mekanamu.output_(2);
+        motor_output3 = mekanamu.output_(3);
+        
+    }
+}
 */
 
 class OmniMove
@@ -52,24 +72,24 @@
     /*
     全方位移動入力関数(極座標)
     r:マシンの速度(0~1),theta:マシンの進行方向(角度deg ex.90,-45)
-    Vroll:マシンの回転速度(-1~1),roll_ratio:回転速度の重み(0~1)    */
-    void input_polar(float r,float theta,float Vroll,float roll_ratio);
+    Vroll:マシンの回転速度(-1~1)     */
+    void input_polar(float r,float theta,float Vroll);
     
     /*
     マシンの傾き角度を考慮した全方位移動入力関数(極座標)
     MachineAng:マシンの現在角度(角度deg ex.90,-45)  */
-    void input_polar(float r,float theta,float Vroll,float roll_ratio,float MachineAng);
+    void input_polar(float r,float theta,float Vroll,float MachineAng);
     
     /*
     全方位移動入力関数(直交座標)
     x:マシンのx方向速度(-1~1),y:マシンのy方向速度(-1~1)
-    Vroll:マシンの回転速度(-1~1),roll_ratio:回転速度の重み(0~1)    */
-    void input_cartesian(float x,float y,float Vroll,float roll_ratio);
+    Vroll:マシンの回転速度(-1~1)    */
+    void input_cartesian(float x,float y,float Vroll);
     
     /*
     マシンの傾き角度を考慮した全方位移動入力関数(直交座標)
     MachineAng:マシンの現在角度(角度deg ex.90,-45)  */
-    void input_cartesian(float x,float y,float Vroll,float roll_ratio,float MachineAng);
+    void input_cartesian(float x,float y,float Vroll,float MachineAng);
     
     /*
     全方位移動出力関数(アドレスよくわからん人用)