创客联盟网

标题: 手把手教你用Arduino玩舵机+视频! [打印本页]

作者: CCFIVE    时间: 2013-7-30 16:21
标题: 手把手教你用Arduino玩舵机+视频!
(, 下载次数: 92)
(, 下载次数: 88)
舵机又称伺服电机;一般是用在人形机器人的关节上
舵机组成:小电机、齿轮减速箱、电路等三部分组成(我们有个概念就可以了)


舵机引脚:从左到右依次是GND(黑色或者棕色)、VCC(红色)、DATE(橙色或者其他颜色)
(, 下载次数: 91)
由于我们的“AI小熊板子”的两边的插针从后面数来,左边是GND、VCC、7,右边是GND、VCC、A0,这时候我们可以直接将舵机的接口直接插到对应的的引脚上(是不是很方便呢?哈哈)看下我是怎么接的,嗖的一声~
左边:
(, 下载次数: 81)
右边:
(, 下载次数: 85)
这样我们硬件连接就OK了!,因为我们的是微型舵机用的电流比较小所以,可以直接接到板子上,如果你用的是大舵机,那你就不能直接接到板子上了,因为大舵机用的电流大,可能烧坏板子呢!
看下我们的程序《MicroServo》

#include <Servo.h>  //舵机函数库
Servo myservo;  //定义舵机名称
Servo myservo1;                 
int pos = 0;    //pos为舵机转的角度,此处定义舵机角度的变量
void setup()   //初始化设置
{
  myservo.attach(A0);  // 舵机数据线连接的引脚
  myservo1.attach(7);
}  
void loop()    //程序循环运行
{
  for(pos = 0; pos < 180; pos += 1)  // 角度从0°到180°
  {                                  // 舵机每走1步是1°
    myservo.write(pos);  
    myservo1.write(pos);  
    delay(15);                       // 15毫秒等待舵机到达对应角度
  }
  for(pos = 180; pos>=1; pos-=1)     // 角度从1800°到0°
  {                                
    myservo.write(pos);           
    myservo1.write(pos);
    delay(15);                       // 15毫秒等待舵机到达对应角度
  }
}


注释已经也得很清楚了,如果不懂的话,自己弄弄程序,改改程序,即使错误的程序是不会弄坏板子和舵机的,请大家放心改!里面的核心语句就是控制舵机角度:myservo.write(X);X填对应0-180的数字,舵机对应转0-180度。
实验现象
https://player.youku.com/player.php/sid/XNTYzMzQ3NzQ4/v.swf


作者: wck963    时间: 2013-8-3 15:07
已测试,此帖方法无问题




欢迎光临 创客联盟网 (https://immaker.org/) Powered by Discuz! X3.3