首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >伺服电机最初旋转到不同角度的原因是什么?

伺服电机最初旋转到不同角度的原因是什么?
EN

Stack Overflow用户
提问于 2016-04-14 12:08:07
回答 1查看 457关注 0票数 0

在这里,我的电路连接的粗略草图:

8伺服电机是外部供电的直流电源。电源接地,伺服电机和Arduino是通用的。Arduino是用笔记本电脑供电的

代码语言:javascript
复制
#include <VarSpeedServo.h>

VarSpeedServo rot1;    
VarSpeedServo rot2;    
VarSpeedServo rot3;   
VarSpeedServo rot4;

VarSpeedServo grip1;   
VarSpeedServo grip2;   
VarSpeedServo grip3;   
VarSpeedServo grip4;

void setup() {

rot1.attach(11);
grip1.attach(10);

rot2.attach(1);
grip2.attach(2);

rot3.attach(8);
grip3.attach(9);

rot4.attach(5);
grip4.attach(7);

home1();
delay(1000);
home2();
delay(1000);
home3();
delay(1000);
home4();

}

void loop() {
}

void home1()
{
 rot1.write(0, 30, true);
 delay(2000);
 rot1.detach();
 grip1.write(40, 30, true);
 delay(2000);
 grip1.detach();
}

void home2()
{
  rot2.write(0, 30, true);
  delay(2000);
  rot2.detach();
  grip2.write(40, 30, true);
  delay(2000);
  grip2.detach();
}

void home3()
{
  rot3.write(180, 30, true);
  delay(2000);
  rot3.detach();
  grip3.write(160, 30, true);
  delay(2000);
  grip3.detach();
}

void home4()
{
  rot4.write(180, 30, true);
  delay(2000);
  rot4.detach();
  grip4.write(80, 30, true);
  delay(2000);
  grip4.detach();
}
  1. 以上程序用于控制8台伺服电机。我正在建造一个魔方解题机器人。它有4个手臂,每个手臂有2个伺服电机。一个马达打开握把以保持立方体,而另一个马达则以特定的角度旋转立方体。
  2. 当我上传程序时,伺服电机最初会到达不同的位置,然后根据程序移动。我不知道原因是什么。
  3. 我是应该在程序中改变一些东西,还是应该在电路中改变一些东西?
EN

回答 1

Stack Overflow用户

发布于 2018-09-11 09:05:35

我想你使用的是标准伺服电机,而不是“连续旋转”伺服电机?在基本水平上,你所面临的问题并不难解决。

当伺服电机关闭时,它将倾向于保持在默认情况下的最后命令位置(假设轮系上的任何类型的负载在不使用时不会移动它),并且无法首先找到伺服电机的启动位置,因为目前没有从伺服电机返回到arduino的位置反馈信号。

我可以建议的是,如果这是非常重要的,那么你必须机械地将某种罐子连接到伺服机构,并通过模拟输入引脚读取它的真实位置。

希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36622637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档