SG90舵机怎么接线?Arduino控制舵机角度转动0到180度教程

写launch的皮皮硬件DIY 2026-10-16 12:57:03 4阅读 举报

想给小车加个转向、给云台加个抬头低头、或者做个摇头扇、机械臂,绕不开的就是舵机。SG90是最常见的一颗微型舵机,便宜、小巧,能转0到180度,接Arduino一个引脚就能控制。这篇文章把接线和控制讲清楚。

三根线先分清:信号、电源、地

SG90引出三根线,颜色和功能要记牢:橙黄色是信号线(控制它的角度),红色是电源正(接供电正极),棕色或黑色是地线。接线顺序别看错——方向反了轻则不转,重则可能烧舵机。

信号线接Arduino一个PWM数字脚(带波浪号~的),比如9号脚,因为舵机是靠PWM脉冲宽度来控制角度的:脉宽约1ms对应0度、1.5ms对应90度(中位)、2ms对应180度。Servo库帮我们把这些脉冲细节封装好了。

供电是关键:别让主板硬扛

很多人踩的头号坑是供电。SG90堵转时瞬间电流能到几百毫安甚至更高,长时间或带负载时,从Arduino的5V脚直接供,容易把板载线性稳压器拖到发热、甚至把板子搞重启。稳妥做法是:一个SG90轻载可以从Arduino的5V取电;但做多舵机、或带较重负载时,一定要外接一个5V供电(比如4节AA电池或5V电源),让它的地和Arduino地共地即可。

如果发现舵机接上就抖、一启动板子就重启,先怀疑供电——这就是典型的“靠主板供不起”的症状。加个大点的滤波电容(数百uF)在舵机电源两端,也能缓解瞬时拉低电压的抖动。

用Servo库控制角度:几行代码

Arduino控制舵机的入门写法很固定:引入Servo库,创建一个Servo对象,初始化时attach到9号脚,然后调用write(角度)就能让舵机转到指定角度,比如write(0)、write(90)、write(180)来回扫动。库内部自动把角度换算成对应的PWM脉宽。

拿到“能转指定角度”这个能力,就能叠功能:接个电位器读角度实时控制舵机(做一个手动云台);配合时延让舵机左右摇头做成摇头扇/监控云台;多颗SG90就能拼简单机械臂的关节。

抖动、角度边界和三个坑

舵机“卡卡”抖动,多半是供电不足或PWM频率/时序不稳;静止时嗡嗡响但不动,可能是负载过大或供电临界。先上外部电源,很多抖动问题就没了。

还有两个坑:一是别超过机械行程——标准SG90是0到180度,写超过范围或往死里顶,会顶到限位齿轮,长期可能扫齿损坏,控制时留点余量更稳;二是信号线接的是PWM脚,接成普通数字脚或不支持PWM的脚,有些板子能通过软PWM勉强工作但不稳,最好用真正的PWM脚。

SG90是把“直线电信号”变成“角度动作”最便宜直接的方式。三根线、一个PWM脚、一个Servo库,从转向到云台到机械臂,它都是最常被用到的“手”。

版权声明:
作者:写launch的皮皮
链接:https://www.aiddithome.com/p/422560373e107.html
来源:硬件DIY
实践版权归作者所有,未经允许请勿转载,若此实践存在违规行为,您可以点击 “举报”。


登录 后发表评论
4条评论
入门没多久的新手
1楼 · 12小时前

Servo库几行就能控制0到180度,上手很快

线比代码多
2楼 · 12小时前

堵转电流不小,多舵机还是外接5V稳

拆开看看再说
3楼 · 12小时前

供电那个坑真的是头号,从主板直供一抖就重启

刷着刷着入坑了
4楼 · 12小时前

橙红棕三根线方向接反轻则不转,看丝印最重要