KY-023双轴摇杆模块怎么接线?Arduino控制舵机和小车的方法

2026-10-20 23:00:22 42阅读

想给小车、机械臂或云台加一个"手感"控制器,KY-023双轴摇杆是性价比最高的输入模块。它本质上就是两颗互相垂直的电位器加一个按键,拨动摇杆输出X、Y两路模拟电压,按下还能给出一个数字按键信号,Arduino读三个脚就能做直观的方向操控。这篇讲接线、读值和做死区控制。

KY-023模块引脚和工作原理

模块引出5个脚:VCC接电源(推荐5V)、GND接地、VRx是X轴模拟输出、VRy是Y轴模拟输出、SW是按键数字输出。内部两颗10K电位器和摇杆联动组成分压电路,静止时X/Y输出约2.5V(对应Arduino模拟值约512),拨到一边接近0V、另一边接近5V,所以模拟值范围是0到1023。

这是KY-023和Arduino的接线图,VRx/VRy分别接A0/A1两个模拟口,SW接一个数字口。按键平时是高电平,按下去拉低,需要在代码里开内部上拉(INPUT_PULLUP)才能正确检测。

Arduino读X、Y和按键的代码

接线是VRx接A0、VRy接A1、SW接D2、VCC接5V、GND接地。代码里用analogRead(A0)、analogRead(A1)读两个轴,digitalRead(2)读按键,串口就能看到摇杆位置。因为按键按下是低电平,digitalRead返回LOW就代表按下。

有个关键点是"死区"(deadzone):摇杆静止时读数不会正好是512,会有一点点抖动,没处理的话舵机或小车会小幅乱晃。代码里判断读数如果在512附近的一小段范围内(比如±15)就直接当0,超出部分再映射到实际控制的数值范围,这样手不碰摇杆设备就完全静止。

用摇杆控制舵机和小车

控制舵机:把X轴模拟值用map()从(0~1023)映射到舵机角度(0~180),一个摇杆控一个舵机的云台就出来了,拨一下就转头。控制小车:X控制方向、Y控制油门,Y往前推转速加大、往后拉倒车,左右拨转向,配合死区就是一台能"手感"操作的遥控小车。

摇杆模块吃IO少、手感直观,特别适合做遥控器、游戏手柄、机械爪示教器这类需要人来实时操控的设备,很推荐作为人机交互的入门传感器先玩起来。


作者:舵机老炮
链接:https://www.aiddithome.com/p/1c8767f66c6e9e.html
本作版权归作者所有,未经允许请勿转载。若存在违规行为,您可以点击 “举报”。


登录 后发表评论
5条评论
老张装机
1楼 · 2026-10-20 23:00:24

SW是按下去拉低,要开INPUT_PULLUP才能正确检测

深圳打工人Alan
2楼 · 2026-10-20 23:00:24

X控方向Y控油门,一台手感操作的小遥控车就这么出来了

阿伟不emo
3楼 · 2026-10-20 23:00:23

VRx接A0、VRy接A1、SW接D2,三根线就够手感控制的玩法

胶佬憨憨
4楼 · 2026-10-20 23:00:23

配个舵机云台,拨一下就转头,很好玩的输入设备

拆机党
5楼 · 2026-10-20 23:00:22

死区一定要处理,不处理的话摇杆静止舵机也会小幅乱晃