Arduino教程(提高篇)——舵机的驱动-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: 奈何col

Arduino教程(提高篇)——舵机的驱动

  [复制链接]
发表于 2012-7-20 12:38 | 显示全部楼层
13pin 旁边的 GND 和 下面两个 GND 有什么区别呀,我把舵机接 13 pin 旁边那个 GND, 工作不正常
 楼主| 发表于 2012-7-20 12:55 | 显示全部楼层
muye0503 发表于 2012-7-20 12:38
13pin 旁边的 GND 和 下面两个 GND 有什么区别呀,我把舵机接 13 pin 旁边那个 GND, 工作不正常 ...

没区别
发表于 2012-8-6 12:23 | 显示全部楼层
大鹏·Roc 发表于 2012-5-12 23:00
没加 delay
就悲剧了

不是吧,舵机没有保护电路的吗
发表于 2012-8-11 11:00 | 显示全部楼层
奈何col 发表于 2012-7-18 12:56
大舵机电流比较大~~~最好不要直接接到arduino板子上哦~

不直接接在板子上 外接电源该如何接?
 楼主| 发表于 2012-8-11 11:46 | 显示全部楼层
洪雨 发表于 2012-8-11 11:00
不直接接在板子上 外接电源该如何接?

单独给舵机供电
发表于 2012-8-13 21:55 | 显示全部楼层
奈何col 发表于 2012-8-11 11:46
单独给舵机供电

看到坛子里 autumn servo的例子 正在学习 感谢
发表于 2012-8-19 21:18 | 显示全部楼层
版主,我是个自学者,我没有这方面的基础,但是经过我日日夜夜的学习,再加上你的注释,我终于看懂了你写的那个用电位器控制舵机的程序,但是如果要用3个电位器分别控制3个舵机的程序该怎么写呢??
 楼主| 发表于 2012-8-19 23:41 | 显示全部楼层
duanliangcong 发表于 2012-8-19 21:18
版主,我是个自学者,我没有这方面的基础,但是经过我日日夜夜的学习,再加上你的注释,我终于看懂了你写的 ...

如果你理解了这个程序,就很好做3个舵机的控制了,用3个模拟输入IO口读出电位器模拟值,然后分别对3个舵机进行控制,就行了
发表于 2012-8-20 20:28 | 显示全部楼层
奈何col 发表于 2012-8-19 23:41
如果你理解了这个程序,就很好做3个舵机的控制了,用3个模拟输入IO口读出电位器模拟值,然后分别对3个舵 ...

老师,你看看我这个程序正确吗??

#include <Servo.h>

Servo one;   //创建三个舵机控制对象
Servo two;
Servo three;

int potpin = 1;  //该变量用于存储用电位器读出的模拟值(电位器的信号线接口)
int potpin = 2;
int potpin = 3;

int val one;     // 该变量用与存储舵机角度位置
int val two;  
int val three;

void setup()
{
  one.attach(7);     // 该舵机由arduino第七脚控制(舵机的信号线接口)
  two.attach(8);     // 该舵机由arduino第八脚控制
  three.attach(9);    // 该舵机由arduino第九脚控制
    }

void loop()
{
  val one= analogRead(potpin);            //读取电位器控制的模拟值 (范围在0-1023)
  val one= map(val one, 0, 1023, 0, 179);    //这句不懂是什么意思
  one.write(val one);                        // 指定舵机转向的角度                 
  delay(15);                            // 等待15ms让舵机到达指定位置                        

  val two= analogRead(potpin);            
  val two= map(val two, 0, 1023, 0, 179);     
  two.write(val two);                                         
  delay(15);                                                


  val three= analogRead(potpin);           
  val three= map(val three, 0, 1023, 0, 179);   
  three.write(val three);                                       
  delay(15);                                                
}
 楼主| 发表于 2012-8-20 23:25 | 显示全部楼层
duanliangcong 发表于 2012-8-20 20:28
老师,你看看我这个程序正确吗??

#include

应该可以,你试试~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-27 08:15 , Processed in 0.077099 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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