摇杆模块

微信截图_20160128172254

概述

摇杆模块包含一个十字摇杆,可以用在控制小车的移动方向及互动视频游戏等方面。本模块接口是黑色色标,是模拟接口,需要连接到主板上带有黑色标识接口。

技术规格

● 工作电压:5V DC
● 信号模式:2轴模拟输出
● 十字摇杆:由两个电位器及平衡环组成
● 模块尺寸:52 x 24 x 32 mm (长x宽x高)

功能特性

● 模块的白色区域是与金属梁接触的参考区域;
● 平衡环将摇杆位移分为水平移动(X)与竖直移动(Y);
● 模拟采集电位器电压来判断摇杆的推动位置;
● 具有反接保护,电源反接不会损坏IC;
● 支持Arduino IDE编程, 并且提供运行库来简化编程;
● 支持mBlock图形化编程,适合全年龄用户;
● 使用RJ25接口连线方便;
● 模块化安装,兼容乐高系列;
● 配有VCC、GND、X、Y接头支持绝大多数Arduino系列主控板。

引脚定义

摇杆模块有四个针脚的接头,每个针脚的功能如下表:

序号 引脚 功能
1 GND 地线
2 VCC 电源线
3 X X轴模拟量输出
4 Y Y轴模拟量输出

● RJ25连接
由于摇杆模块接口是黑色色标,当使用RJ25接口时,需要连接到主控板上带有黑色色标的接口。以Makeblock Orion为例,可以连接到6,7,8号接口,如图:
微信截图_20160128172516

● 杜邦线连接
当使用杜邦线连接到Arduino Uno主板时,模块X、Y引脚需要连接到 ANALOG(模拟)口,如下图所示:
微信截图_20160128172549

编程指导
● Arduino 编程
如果使用Arduino编程,需要调用库Makeblock-Library-master 来控制摇杆模块
微信截图_20160128172722
函数功能列表

函数 功能
MeJoystick(uint8_t port) 选定接口
int readX() 读取X-轴模拟输出(范围:-490~490)
int readY() 读取Y-轴模拟输出(范围:-490~490)

本程序通过Arduino编程读取摇杆XY轴位置信息并输出到串口显示,周期为10ms:
微信截图_20160128172837
我们可以看到x y 轴数据输出范围为 -490~490。 当你松开joystick, 输出数值将维持在0左右。 当摇杆按照要按模块上箭头标识的方向移动时,数值将会变大。如果反向移动, 数值将会变小。

● mBlock 编程
摇杆模块支持mBlock编程环境,如下是该模块指令简介:
微信截图_20160128172954

下面是让小熊猫说出X/Y坐标的效果.微信截图_20160128173034

原理分析

摇杆 模块包含一个十字摇杆,十字摇杆由两个电位器及一个平衡环组成。当推动摇杆时,电位器阻值发生变化,相应的电压也会发生变化,该模块使用5V电压供电,原始状态下X,Y读出电压为2.5V左右,当沿着X或Y箭头方向按下,读出电压值随着增加,最大加到5V;沿着箭头相反方向按下,读出电压值减少,最小为0V。因此可通过模拟采集电位器电压来判断摇杆的推动位置。

原理图

Joystick