加载中…
正文 字体大小:

Arduino与32路舵机控制器通信实例

(2009-05-08 12:06:53)
标签:

arduino

舵机控制器

蓝牙

舵机

分类: Arduino

    Arduino与32路舵机控制器通信实例

    今天用Arduino与机器人基地32路舵机控制器通信来控制几个舵机,早就说过要写这么一篇博文的,总是因为各种原因一直被搁置着,现在来做个试验,嘻嘻。Arduino与32路舵机控制器通信实例

    熟悉Arduino的人都知道Arduino有一个缺点就是I/O口较少,要想做个智能机器人,一两个舵机再加几个传感器是不行的,若想用Arduino控制十几个甚至二十几个舵机来做各种机器人的话,硬件资源就显得有些力不从心了,我发现32路舵机控制器很好的解决了这个问题,研究明白它与Arduino的通信,控制多个舵机也就变得简单多了。

    首先来介绍一下这个32路舵机控制器,下面是该控制器的功能图解。

Arduino与32路舵机控制器通信实例

    这个控制器使用起来还是蛮简单的,接上电源(这里要注意,伺服电机供电,绿端子要接入+4V到+6V电压,控制部分,红端子供电要接入+7V到+12V电压),红绿指示灯就会亮起,再插好舵机,若单独使用控制器的话,可以用PC机做上位机通过自带的调试软件控制舵机转动角度以及速度。

    这是我看到的上位机界面。

Arduino与32路舵机控制器通信实例

    它与Arduino配合连接也很简单,接线如下图,只要将Arduino的TX与控制器的RX连接,再共地(GND)就OK了。

Arduino与32路舵机控制器通信实例

我的实物连线图

Arduino与32路舵机控制器通信实例

Arduino与32路舵机控制器通信实例

    这里我先控制两个舵机,做个试验,当然你想控制几个都行,只要不超过限定数量,下面是程序代码,只要发送控制器指令就可以达到控制指定舵机的位置与速度啦!

int val;

void setup()
{
  Serial.begin(115200);

}
void loop()
{
  val=Serial.read();
  if(val=='r')
  {
   Serial.println"#0 P1600 #4 P1700S500 T2500 ");

   delay(500);

   Serial.println"#0 P1000S1000 #4 P2000S500  ");

   delay(500);

  }
}

注:#舵机号 P脉宽数(500-2500) S速度 T动作完成时间

   0号舵机是使用2.5S完成转动,4号舵机看它以速率 500us/s完成转动,实际使用时间由速度确定,T 可以对前面所有舵机有效除了有S的舵机号。

    下载完程序,输入"r",0号舵机和1号舵机就会转到指定角度了。这个程序比较简单,我们也可以根据我们自己的机器人的需要,根据传感器返回的信号控制舵机。

    拿到32路控制器不得不让我想起前一阵子玩的蓝牙,今天可以体验一下,脱机控制的快感了。

Arduino与32路舵机控制器通信实例

    配上上位机软件果然像群友说的很好用,不用串口线,一插即可,很棒Arduino与32路舵机控制器通信实例!期待机器人基地的动作存储卡尽快推出~

0

阅读 收藏 转载 喜欢 打印举报
已投稿到:
  

新浪BLOG意见反馈留言板 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有