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

2020-04-17 18:33

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

在机器人机电控制系统中,舵机控制效果是性能的重要影响因素。舵机可以在微机电系统和航模中作为基本的输出执行机构,其简单的控制和输出使得单片机系统非常容易与之接口。

舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在高档遥控玩具,如航模,包括飞机模型,潜艇模型;遥控机器人中已经使用得比较普遍。舵机是一种俗称,其实是一种伺服马达。 1.舵机与控制原理 2.servo类介绍

servo类下有以下成员函数 attach()// write()//

writeMicroseconds()// read()// attached()// detach()//

普通舵机有3根线:GND(黑)、VCC(红)、Signal(黄),一般情况下,我们建议为舵机单独供电,此处实验为了图方便,用arduino为舵机供电。 3.实例1

需要的器材:

arduino控制器、舵机、杜邦线若干 首先将舵机如下图连接:

下载以下例程(程序可以在IDE>File>Examples>Servo>Sweep中找到,我只是做个中文介绍)

1.

2. 3. 4. 5.

#include

Servo myservo; //创建一个舵机控制对象 // 使用Servo类最多可以控制8个舵机

intpos = 0; // 该变量用与存储舵机角度位置

/*~~~~~~~~~~~~~~~~~~~~~~~~~~华丽的分割线~~~~~~~~~~~~~~~~~~~~~~~~~~ */

6. void setup() 7. {

8. myservo.attach(9); // 该舵机由arduino第九脚控制 9. }

10. /*~~~~~~~~~~~~~~~~~~~~~~~~~~华丽的分割线 ~~~~~~~~~~~~~~~~~~~~~~~~~~

*/

11. void loop() 12. {

13. for(pos = 0; pos< 180; pos += 1) // 从0度到180度运动 14. { // 每次步进一度

15. myservo.write(pos); // 指定舵机转向的角度 16. delay(15); // 等待15ms让舵机到达指定位置 17. }

18. for(pos = 180; pos>=1; pos-=1) //从180度到0度运动 19. {

20. myservo.write(pos); // 指定舵机转向的角度 21. delay(15); // 等待15ms让舵机到达指定位置 22. } 23. } 24.

4.实例2

需要的器材:

arduino控制器、舵机、电位器、杜邦线若干 首先将舵机如下图连接:

下载以下例程(程序可以在IDE>File>Examples>Servo>Knob中找到)

1. 2. 3. 4. 5.

#include

Servo myservo;

//创建一个舵机控制对象

6. intpotpin = 0; //该变量用于存储用电位器读出的模拟值 7. intval;

8. // 该变量用与存储舵机角度位置 9.

10. void setup() 11. {

12. myservo.attach(9);

13. // 该舵机由arduino第九脚控制 14. } 15.

16. void loop() 17. {

18. val = analogRead(potpin); //读取电位器控制的模拟值 (范围在0-1023) 19. val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo

(value between 0 and 180) 20. myservo.write(val); 21. // 指定舵机转向的角度 22. delay(15);

23. // 等待15ms让舵机到达指定位置 24. }

5.其他驱动方法: 传送门:

arduino驱动舵机,不调用库函数:http://www.arduino.cn/thread-45-1-1.html


Arduino教程(提高篇) - 舵机的驱动.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:纵览党的历次代表大会,熟知牢记党史 - 党史知识专题党课讲稿(1

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: