0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PWM信号是如何控制舵机的?

jf_72272044 来源:jf_72272044 作者:jf_72272044 2025-09-29 10:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

PWM(脉冲宽度调制)信号控制舵机的核心原理是通过固定周期内高电平的持续时间(脉宽)对应舵机的旋转角度,舵机内部电路根据检测到的脉宽驱动电机转动到目标位置并保持。以下是具体实现过程:

一、核心控制逻辑

舵机的控制依赖于特定频率和脉宽的 PWM 信号,关键参数如下:

PWM 信号频率:固定为 50Hz(周期 20ms),这是舵机的标准接收频率,频率过高或过低会导致舵机无响应或角度偏差。

高电平脉宽与角度对应关系:舵机通过检测一个周期内高电平的时长来确定目标角度,典型对应关系为:

0.5ms 脉宽 → 0°(占空比 2.5%,即 0.5ms/20ms)

1.0ms 脉宽 → 45°(占空比 5.0%)

1.5ms 脉宽 → 90°(占空比 7.5%,中位角度)

2.0ms 脉宽 → 135°(占空比 10.0%)

2.5ms 脉宽 → 180°(占空比 12.5%)

二、舵机内部工作流程

当 PWM 信号通过信号线输入舵机后,内部电路会执行以下步骤:

信号检测:舵机内部的控制电路接收 PWM 信号,解析高电平持续时间,确定目标角度。

电压比较:将检测到的脉宽转换为对应的偏置电压,与舵机内部电位器(随输出轴同步转动)的电压进行比较,产生电压差。

电机驱动:电压差触发电机转动,通过减速齿轮组带动输出轴旋转,同时电位器也随之转动,改变自身电压。

位置锁定:当电位器电压与目标偏置电压相等(电压差为 0)时,电机停止转动,舵机保持在目标角度。

三、硬件连接与实现步骤

Arduino 控制器为例,具体操作如下:

硬件准备:

控制器:Arduino UNO(需支持 PWM 输出,引脚标有 “~”)。

舵机:如 SG90(3 线制:红色 VCC、棕色 GND、黄色信号线)。

电源:小舵机可直接接 Arduino 的 5V 电源,大扭矩舵机需外接独立电源(避免烧毁控制器)。

接线方式:

舵机 VCC → Arduino 5V(或外接电源正极)。

舵机 GND → Arduino GND(必须共地,否则信号紊乱)。

舵机信号线 → Arduino PWM 引脚(如~9)。

软件编程

使用 Arduino 自带的Servo.h库简化控制,示例代码如下:

若需更精准控制,可使用writeMicroseconds()直接指定脉宽:

四、关键注意事项

共地原则:控制器、舵机、电源的 GND 必须连接在一起,否则 PWM 信号无法正常传输。

电源匹配:大扭矩舵机(如 MG996R)需外接 6V/12V 电源,避免直接使用控制器 5V 供电导致过载。

角度校准:不同舵机的脉宽 - 角度对应关系可能存在差异,需通过实际测试微调(如某些舵机 180° 需 2.2ms 脉宽)。

机械保护:避免强行让舵机转动超过物理极限角度(如部分舵机最大角度为 120°),防止齿轮损坏。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 舵机
    +关注

    关注

    17

    文章

    373

    浏览量

    42852
  • PWM信号
    +关注

    关注

    3

    文章

    107

    浏览量

    21035
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【瑞萨RA6E2】PWM 驱动舵机

      本篇使用 RA6E2 的 PWM 输出,来驱动舵机转动,使用 RA6E2 驱动舵机非常方便,只要配置好 GPT PWM 模块,就能轻松实现角度
    发表于 11-04 00:03

    舵机伺服编码器

    舵机伺服编码器是用于实时检测舵机输出轴位置、速度或角度的核心反馈元件,它能将机械运动转化为电信号,让控制系统实现对舵机的精准闭环
    的头像 发表于 10-30 10:05 97次阅读

    电动舵机和直线舵机的区别?

    ,输出旋转运动。通常转动角度范围有限(常见 0°-180°,部分可达 360° 连续旋转),例如 1.5ms 的 PWM 脉冲信号对应 90° 中位位置,电机带动输出轴转动到指定角度后保持静止,即使受外力也能通过闭环反馈维持位置。 直线
    的头像 发表于 09-28 18:25 447次阅读

    【RA4E2开发板评测】PWM 驱动舵机

      本篇使用 RA4E2 的 PWM 输出,来驱动舵机转动,使用 RA4E2 驱动舵机非常方便,只要配置好 GPT PWM 模块,就能轻松实现角度
    发表于 09-09 15:13

    【RA4M2-SENSOR】+PWM舵机控制

    舵机是一种靠占空比来控制摆动位置伺服电机,因此以PWM控制它是恰如其份的选择。它之所以可以由占空比来控制摆动位置是与它的结构密不可分的。当
    发表于 09-04 11:34

    什么是舵机舵机的种类有哪些?

    什么是舵机舵机的种类有哪些? 舵机(Servo Motor)是一种 集成电机、减速器、位置传感器与闭环控制系统的高精度执行元件 ,核心功能是根据输入
    的头像 发表于 08-26 11:08 4999次阅读

    舵机PWM信号介绍!

    舵机 PWM 信号介绍 PWM(Pulse Width Modulation,脉冲宽度调制)信号舵机
    的头像 发表于 08-22 10:59 1461次阅读

    舵机怎么控制正反,舵机怎么使用?

    一、舵机怎么控制正反? 舵机的 “正反” 本质是 旋转方向的控制 ,但其方向逻辑与直流电机不同(并非通过电源正负极切换),而是通过 目标角度与当前角度的偏差 由内部电路自动
    的头像 发表于 08-19 10:52 1596次阅读

    舵机的原理

    一、舵机控制的核心原理 舵机内部集成了 直流电机、减速齿轮组、电位器(角度传感器)和控制电路 ,形成闭环控制系统:  
    的头像 发表于 08-15 10:25 1172次阅读

    舵机如何控制

    舵机是一种高精度的角度控制执行器,广泛应用于机器人、遥控模型、自动化设备等场景。其控制核心是通过 PWM(脉冲宽度调制)信号 调节角度,配合
    的头像 发表于 08-15 10:23 1434次阅读

    PWM 型号舵机控制方法!

    一、PWM 舵机控制原理 PWM 舵机的核心是 脉冲宽度与旋转角度的对应关系 : 舵机接收周期性
    的头像 发表于 08-12 18:37 1535次阅读

    【RA-Eco-RA6M4开发板评测】+PWM舵机控制

    舵机是一种靠占空比来控制摆动位置伺服电机,因此以PWM是恰如其份的选择。它之所以可以由占空比来控制摆动位置是与它的结构密不可分的。当信号进入
    发表于 07-26 21:53

    【RA-Eco-RA6M4开发板评测】+01+开箱测评+UART+PWM+LED

    +控制舵机运转的占空比指令,开发板接受指令后解码控制灯闪烁、输出PWM信号控制
    发表于 07-17 23:43

    舵机与电动机的比较分析

    能够将电信号转换为精确角度控制的电机。它通常由一个直流电机、一个减速齿轮组和一个位置反馈装置(如电位计)组成。舵机的工作原理是通过接收控制信号
    的头像 发表于 01-09 09:12 3260次阅读

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】+02+舵机控制+串口通讯

    组成部分为伺服电机,给舵机输入不同的信号,来控制其旋转到不同的角度。舵机接收的是PWM信号,当
    发表于 12-18 11:06