描述
储存使用者自订的机器人动作帧,即所有 channel 的 Servo 角度。
此阵列中存放所有 channel 的 Servo 角度,其值可由使用者自行指定。 position[] 中第一个元素值,代表第一 channel 的 AIServo 角度,第二个元素值代表第二 channel 的 AIServo 角度,依此类推。
最多可指定 64 channels 的 Servo 角度。
语法
servoframe.positions[channel]
参数
servoframe
:AIServoFrame
型别的变数。 channel
:范围:0 ~ 63,其值代表第 n channel 的 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
|
#include <AIServo86.h>
AIServoPort(ROBOTIS, AX12) bus;
AIServo myservo0;
AIServo myservo1;
AIServo myservo2;
AIServoFrame myframe; // 宣告一个 Frame 物件
void setup()
{
bus.begin(Serial1, 1000000);
myservo0.attach(bus, 9);
myservo1.attach(bus, 11);
myservo2.attach(bus, 5);
myframe.positions[0] = 180; // 设定 Frame 内容
myframe.positions[1] = 130;
myframe.positions[2] = 200;
// 设定以 500ms 的时间将伺服机转动到 Frame 指定的位置 (myservo0 转动到 position[0]
// 位置, myservo1 转动到 position[1] 位置, myservo2 转动到 position[2] 位置)
myframe.setPositions(500, myservo0 , myservo1, myservo2);
aiservoMultiRun(); // 根据设定值转动所有伺服机
}
void loop() {}
|
See also
- setPostions
函式库参考主页面
86Duino 参考资料中的文字修改自 Arduino 参考资料,并根据 知识共享署名-许可证方式共享 3.0 授权相同。参考资料中的程式码范例已发布到公共领域。