positions[]

説明

ロボットのモーションフレームを格納する整数配列。各配列要素は、ロボットサーボの位置(単位:µs)に対応します。

ServoFrameVstone の初期化時にモーションフレームファイルが読み込まれていない場合、ユーザーはこの配列の要素を直接設定することでモーションフレームを設定できます。

構文

myframe.positions[channel]

パラメータ

myframe: ServoFrameVstone 型のオブジェクト。

channel: 配列要素を 0 から 44 の範囲で指定します。n 番目の要素の値は、以下の例に示すように、n 番目のサーボに割り当てられる位置を表します。 (注: 86Duino One ではすべての配列要素が有効です。86Duino EduCake では 0 から 25 の範囲のみ、86Duino Zero では 0 から 16 の範囲のみが有効です。)

RobovieMaker2 は 30 軸サーボをサポートしているため、 load() 関数を使用してモーションフレームファイルから指定されたモーションフレームを読み込む場合、positions[0]、positions[1]、…、positions[29] のみが有効な値となり、残りの配列要素は 0 になります。

ポストバック

なし

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

#include <Servo86.h>

  

Servo myservo0;

Servo myservo1;

Servo myservo2;

ServoFrameVstone myframe; //ServoFrameVstone オブジェクトを宣言します

  

void setup()

{

  myservo0.attach(9);

  myservo1.attach(11);

  myservo2.attach(5);

 

  myframe.positions[0] = 1800; // フレームのコンテンツを設定します

  myframe.positions[1] = 1300;

  myframe.positions[2] = 2000;

  // サーボを現在の位置から myframe で指定された位置まで 500ms で回転するように設定します。つまり、以下のようになります。

  // myservo0 は位置[0] まで回転します。

  // myservo1 は位置[1] まで回転します。

  // myservo2 は位置[2] まで回転します。

  myframe.setPositions(500, myservo0, myservo1, myservo2);

 

  servoMultiRun(); // すべてのサーボに回転開始を指示します

}

  

void loop() {

See also

- setPostions()
- playPostions()


ライブラリリファレンスホームページ

86Duinoリファレンスのテキストは、Arduinoリファレンスから引用されており、クリエイティブ・コモンズ表示-継承3.0ライセンスの下で提供されています。リファレンス内のコード例はパブリックドメインとして公開されています。