aiservoMultiResume()

描述

同時恢復多顆已暫停的伺服機,讓伺服機繼續往目標位置轉動。呼叫此函式後,每一個伺服機的的行為和呼叫 resume() 的行為相同。

語法

aiservoMultiResume()
aiservoMultiResume(servo1)
aiservoMultiResume(servo1servo2)
aiservoMultiResume(servo1servo2, … , servo64)

參數

servo1 ~ servo64AIServo 型別的變數。

您可以輸入 1 ~ 64 個 Servo 型別的參數,指定要啟動的伺服機,或者不輸入任何參數;當沒有輸入參數的時候,代表要恢復所有暫停的伺服機。

回傳

範例

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

#include <AIServo86.h>

 

AIServoPort(ROBOTIS, AX12) bus;

AIServo servo0;

AIServo servo1;

 

void setup()

{

  bus.begin(Serial1, 1000000);

  servo0.attach(bus, 6);

  servo1.attach(bus, 10);

  servo0.setPosition(150);

  servo1.setPosition(160);

  aiservoMultiRun(servo0, servo1); // 啟動 servo0、servo1 伺服機

  delay(500);

}

 

void loop()

{

  servo0.setPosition(90, 2000);

  servo1.setPosition(200, 2000);

  aiservoMultiRun(servo0, servo1); // 使 servo0、servo1 往新目標位置轉動

  delay(1000);

  aiservoMultiPause(servo0, servo1); // 暫停所有伺服機

  delay(3000); // 暫停 3 秒

  aiservoMultiResume(servo0, servo1); // 所有伺服機恢復轉動

  while(isAIServoMultiMoving() == true); // 等待所有伺服機轉到目標位置

  servo0.setPosition(150, 2000);

  servo1.setPosition(160, 2000);

  aiservoMultiRun(servo0, servo1); // 使 servo0、servo1 往新目標位置轉動

  while(isAIServoMultiMoving() == true); // 等待所有伺服機轉到目標位置

}

See also

- attach()
- setPosition()
- run()
- aiservoMultiRun()
- isAIServoMultiMoving()


函式庫參考主頁面

86Duino 參考資料中的文字修改自 Arduino 參考資料,並根據 知識共享署名-許可證方式共享 3.0 授權相同。參考資料中的程式碼範例已發佈到公共領域。