arcXY_Theta()

説明

時計回りまたは反時計回りの円弧を描きます。方向は、円運動が発生するZ軸の正方向からとなります。
このメソッドは、中心点モードを使用して円弧のパスを制御し、回転角度の正負の値を使用して時計回りまたは反時計回りを選択します。
各種モーションメソッドの詳細については、モーションメソッドの説明ページをご覧ください。

構文

machine.arcXY_Theta(cX, cY, theta); machine.arcXY_Theta(cX, cY, theta, feedrate);

パラメータ

machine: Machine オブジェクト。

cX: 円中心モードにおける円の中心のX座標。

cY: 円中心モードにおける円の中心のY座標。

theta: 回転する角度。時計回りの場合は正の値を、反時計回りの場合は負の値を使用します。

feedrate: 送り速度。パラメータが渡されない場合は、最後に記録された送り速度が使用されます。

戻り値

bool:

true: マシンが存在し、正常に作成されました。
false: マシンが存在しないか、作成に失敗しました。

マシンの基本パラメータを設定し、マシンをXY平面上で90度の円弧で移動します。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

#include "Motion86.h"

 

// マシンオブジェクトを生成します。マシン0~2まで、それぞれ3軸のマシンを最大3台使用できます。

Machine machine(0);

 

// ステッピングモーターの有効ピン。

int EnablePin = 4;

 

void setup() {

  while (!Serial);

  pinMode(EnablePin, OUTPUT);

 

  // 必要に応じて、モーション軸の方向を反転できます。

  // この例では、X軸とY軸の方向を反転する必要があります。

  machine.config_ReverseDirection(AXIS_X);

  machine.config_ReverseDirection(AXIS_Y);

 

  // PPU(パルス/ユニット)は、さまざまなニーズに応じた仮想的な長さの単位です。

  // この例では、X軸の単位長さは80パルスに設定されており、これは実際のアプリケーションでは1mmに相当します。

  machine.config_PPU(AXIS_X, 80.0);

  machine.config_PPU(AXIS_Y, 80.0);

  machine.config_PPU(AXIS_Z, 1600.0);

 

  // 制御する前に、マシンを起動する必要があります。

  machine.machineOn();

  machine.setDefaultFeedrate(400);

 

  // ステッピングモーターを起動します。

  digitalWrite(EnablePin, LOW);

 

 

void loop() {

  // 時計回りに90度移動して (10, 10, 0) に移動します。

  machine.arcXY_Theta(0, 10, HALF_PI, true);

 

  // 反時計回りに90度移動して (0, 0, 0) に移動します。

  machine.arcXY_Theta(0, 10, HALF_PI, false);

   

  // 計画された動作が完了するまで待機します。

  while (machine.isMoving());

code>

参照

arcXY()
arcYZ()
arcXZ()
arcYZ_Theta()
arcXZ_Theta()


ライブラリリファレンス

86Duinoの参考資料のテキストはクリエイティブ・コモンズの表示に従っています-Creative Commons Attribution-ShareAlike 3.0 License。参考資料内のコード例はパブリック ドメインにリリースされています。