描述
動態設定伺服機的偏移角度。 當伺服機正在運轉時,用此函式設定的偏移值會即時加入伺服機目標角度的運算,讓原來的目標角度產生正、負偏差。此函式可讓一些身上帶有感測器(陀螺儀或加速度計)的機器人,用來接收其回饋值,使回饋值能即時反應在機器人的動作中。
語法
servo.setRealTimeMixing(value)
參數
servo:AIServo 型別的變數。 setRealTimeMixing:偏移角度,單位:度。
回傳
無
範例
|
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
|
#include <AIServo86.h>
AIServoPort(ROBOTIS, AX12) bus;
AIServo myservo;
unsigned long _time = 0L;
void setup()
{
bus.begin(Serial3, 1000000);
myservo.attach(bus, 3);
}
void loop()
{
myservo.setPosition(300); // 設定目標角度:300 度
myservo.run(); // 啟動伺服機
delay(1500);
double i = -1;
_time = millis();
myservo.setPosition(125, 3000); // 設定目標角度:125 度,花費時間:3 秒
myservo.run(); // 啟動伺服機
while(myservo.isMoving() == true)
{
if((millis() - _time) < 1000L)
{
i = i*2;
if ( i < -100)
i = -1;
myservo.setRealTimeMixing(i);
}
}
while(1);
|
See also
- attach()
86Duino 参考资料中的文本修改自 Arduino 参考资料,并根据 知识共享署名-相同方式共享 3.0 许可证 授权。参考资料中的代码示例已发布到公共领域。