7

了解舵机以及MG996R的控制方法 - slowlydance2me

 1 year ago
source link: https://www.cnblogs.com/slowlydance2me/p/17151523.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

了解舵机以及MG996R的控制方法

1.舵机基础知识:

舵机是遥控航空、航天模型控制动作,改变方向的重要组成部件,舵机是一种位置(角度)伺服的驱动器。

舵机主要适用于那些需要角度不断变化并可以保持的控制系统,比如人形机器人的手臂和腿,车模和航模的方向控制。舵机的控制信号实际上是一个脉冲宽度调制信号( PWM信号),该信号可由FP-GA器件、模拟电路或单片机产生。

2.舵机的构造:

舵机主要是由外壳、电路板、驱动马达、减速器与位置检测元件所构成。

引脚接线说明

  • 红色:供电;

  • 粽色:地线;必须与控制器, 如SMT32芯片共地;

  • 橙色:PWM信号线;

3.工作原理:

由接收机发出讯号给舵机,经由电路板上的 IC驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回讯号,判断是否已经到达定位。位置检测器其实就是可变电阻,当舵机转动时电阻值也会随之改变,藉由检测电阻值便可知转动的角度。

大多数舵机PWM控制协议,都已经标准化。舵机一般有三根引线,分别为电源线、地线、信号线。通过PWM来控制舵机输出轴的旋转角度,下图是MG996R舵机PWM控制波形。

img
  1. PWM信号周期: 20000 us

  2. 0度时,高电平时长: 500 us

  3. 180度时, 高电平时长:2500 us

  4. 每增加1 °,需增加高电平时长:(2500-500)÷180 = 11.1 us

    (ps: 脉冲宽度(W),简称“脉宽”,是脉冲高电平持续的时间。占空比(D),脉宽除以脉冲周期的值。)
  5. 某角度值A,需要的总高电平时长:(A x 11.1 +500)us

    注意:

    ①PWM波其实就是一种脉宽可连续调节的矩形脉冲波。

    ②占空比其实就是描述脉宽与脉冲周期的比值,是量化值。

    ③占空比调节就是脉宽调节,表达不一样,但本质是一样的。

4.舵机类型:

2986763-20230224150233465-2126953997.png

5.舵机的使用:

使用Arduino编译平台中的servo.h舵机库进行对舵机的控制

2986763-20230224150329954-1358604773.png

将舵机从0°~90°再回转的控制代码如下:

#include <Servo.h>
​
Servo myservo;  // 定义Servo对象来控制
int pos = 0;    // 角度存储变量pos
​
void setup() {
  myservo.attach(9);  // 控制线(橙色)连接数字引脚9接受PWM信号
}
​
void loop() {
  for (pos = 0; pos <= 90; pos ++) { // 角度pos从0°到90°
    // in steps of 1 degree
    myservo.write(pos);              // 舵机角度写入
    delay(10);                       // 等待10ms转动到指定角度
  }
  for (pos = 90; pos >= 0; pos --) { // 从90°到0°
    myservo.write(pos);              // 舵机角度写入
    delay(10);                       // 等待10ms转动到指定角度
  }
}
连接开发板设置好端口和开发板类型,进行验证上传即可驱动舵机。

__EOF__

本文作者: slowlydance2me 本文链接: https://www.cnblogs.com/slowlydance2me/p/17151523.html 关于博主: 评论和私信会在第一时间回复。或者直接私信我。 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处! 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK