setRealTimeMixing()

描述

将指定值补偿至伺服机的当前位置控制周期。

对于一些身上带有感测器(例如陀螺仪或加速度计)的机器人,此函式可用来将感测器侦测到的物理量反馈到机器人的动作上。

语法


servo.setRealTimeMixing(value)

参数

servoServo 型别的变数。

value:位置补偿值,单位:us。当伺服机正在运转时,此补偿值会被即时加到伺服机当前位置控制周期所计算出的目标角度上。

回传

范例

#include <Servo86.h> 

Servo myservo;

void setup() 
{ 
  myservo.attach(9);
  myservo.setPosition(1500); // 设定目标角度:1500us
  myservo.run(); // 转动伺服机
  while(myservo.isMoving() == true); // 等待伺服机抵达目标角度

  int i = 0;
  myservo.setPosition(2000, 5000); // 设定目标角度:2000us,花费时间:5 秒
  myservo.run(); // 转动伺服机
  while(myservo.isMoving() == true)
  {
    i = (i + 10) % 400; // 模拟回馈角度的变化
    myservo.setRealTimeMixing(i);
  }
} 

void loop() {} 

See also

write()
writeMicroseconds()
run()


函式库参考主页面

The text of the 86Duino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.