极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11824|回复: 3

[苦逼设计师求助各位大神]有关arduino uno 板子控制多个舵机的问题。。。谢谢大家

[复制链接]
发表于 2014-12-25 17:15:54 | 显示全部楼层 |阅读模式
啊 我是一个苦逼设计师 要做一个互动装置。。。。好像我发错了版块 但是太着急了 对不起了版主

我现在的板子是uno r3 有八个舵机(mg995) 一个9v电池外接电源

我想要用这个板子同时让八多舵机一起动。。 但是编好程序之后 用usb供电或者 9v电池供电

舵机都没有办法正常运转 只有一两个可以

请问 我改怎么做? 我查了很多 是需要io扩展板 还是 舵机控制器呢?

自己的程序如下:

#include <Servo.h>//调用舵机库
Servo myservo1;//定义舵机
Servo myservo2;//定义舵机
Servo myservo3;//定义舵机
Servo myservo4;//定义舵机
Servo myservo5;//定义舵机
Servo myservo6;//定义舵机
Servo myservo7;//定义舵机
Servo myservo8;//定义舵机
int pos = 10;//舵机起始角度

void setup() {
  myservo1.attach(3);//舵机io口
  myservo2.attach(4);//舵机io口
  myservo3.attach(5);//舵机io口
  myservo4.attach(6);//舵机io口
  myservo5.attach(7);//舵机io口
  myservo6.attach(8);//舵机io口
  myservo7.attach(9);//舵机io口
  myservo8.attach(10);//舵机io口
}

void loop() {
  for (pos = 20; pos < 90; pos += 1)
  {
    myservo1.write(pos);
    myservo2.write(pos);
    myservo3.write(pos);
    myservo4.write(pos);
    myservo5.write(pos);
    myservo6.write(pos);
    myservo7.write(pos);
    myservo8.write(pos);
    delay(15);
  }
  for (pos = 90; pos >= 1; pos -= 1) // goes from 180 degrees to 0 degrees
  {
   // myservo.write(pos); // tell servo to go to position in variable 'pos'
       myservo1.write(pos);
    myservo2.write(pos);
    myservo3.write(pos);
    myservo4.write(pos);
    myservo5.writer(pos);
    myservo6.write(pos);
    myservo7.write(pos);
    myservo8.write(pos);
    delay(15);
  }

}
回复

使用道具 举报

发表于 2014-12-25 21:43:28 | 显示全部楼层
舵机功耗大,UNO或电池带不动,舵机部分最好外接电源。
回复 支持 反对

使用道具 举报

发表于 2014-12-25 22:22:53 | 显示全部楼层
不能用干电池供电,,需用大功率电池,,或者是开关电源供电,,,,,,,
回复 支持 反对

使用道具 举报

发表于 2014-12-26 19:50:19 | 显示全部楼层
主要是电源问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-8 19:53 , Processed in 0.052966 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表