isAIServoMultiMoving()
描述
同時檢查多顆伺服機狀態。
語法
isAIServoMultiMoving()
isAIServoMultiMoving(servo1)
isAIServoMultiMoving(servo1, servo2)
isAIServoMultiMoving(servo1, servo2, ... , servo64)
參數
servo1 ~ servo64
:AIServo
型別的變數。
您可以輸入 1 ~ 64 個 Servo 型別的參數,指定要啟動的伺服機,或者不輸入任何參數;當沒有輸入參數的時候,代表要檢查所有伺服機狀態。
回傳
至少有一個伺服機正在轉動,則回傳 true,當所有伺服機狀態為暫停、停止、釋放或到達目標位置,則回傳 false。
範例
#include <AIServo86.h> AIServoPort(ROBOTIS, AX12) bus; AIServo servo1; AIServo servo2; void setup() { bus.begin(Serial3, 1000000); servo1.attach(bus, 9); servo2.attach(bus, 10); servo1.setPosition(150); servo2.setPosition(150); aiservoMultiRun(servo1, servo2); // 將 servo1、servo2 轉到 150 度 delay(1000); } void loop() { servo1.setPosition(280, 2000); servo2.setPosition(80, 2000); aiservoMultiRun(servo1, servo2); // 使 servo1 和 servo2 同時往新目標角度轉動 while(isAIServoMultiMoving() == true); // 等待所有伺服機都轉到目標位置 servo1.setPosition(170, 2000); servo2.setPosition(160, 2000); aiservoMultiRun(); // 使 servo1、servo2 同時往新目標角度轉動 while(isAIServoMultiMoving() == true); // 等待所有伺服機都轉到目標位置 }
See also
- attach()
- setPosition()
- run()
- servoMultiRun()
The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.