「雕爷学编程」Arduino动手做(38)——joystick双轴摇杆模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。
【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
实验三十八:joystick双轴XY按键摇杆模块(PS2游戏航模控制杆)
摇杆电位器
安装了两个10K高精度电位器和一个按键开关,功率0.015W,最高使用电压100V A.C,能垂直位置自动复位,用于控制键盘等, 可自由地控制方向,直观地监控机器的运转状况。
一、MECHANICAL CHARACTERISTIC 机械特性
1、Operating force of lever 摇杆作动力 :120±70 gf
2、Operating angle 操作角度:26° Max
二、ELECTRICAL CHARACTERISTIC 电气特性
1、Rating power 额定功率:0.0125W
2、Maximum operating voltage最高使用电压:AC 50V DC 5V
3、Voltage divider error 分压误差:44%~56%
4、Insulation resistance 绝缘阻抗:100M? 1 Minute at DC 250V
5、Dielectric voltage 耐电压:1 Minute at AC 250V
三、SWITCH CHARACTERISTICS 开关规格
1、Operating force 开关按压力:740±300gf
2、Contact resistance 接触阻抗:100mΩ Max
3、Rating power 额定功率:DC12V 50mA
四、ENDURANCE CHARACTERISTIC 耐久特性
1、Rotational life 旋转寿命:2000,000 cycles Min
2、Push operating life 开关按压寿命:1,000,000 cycles Min
工作原理
摇杆电位器在直流电路中作为电流调节使用时,将有电流通过摇杆电位器的滑动臂,此时由于阳极氧化的原因会导致电阻值异常增加。在这种情况下,建议将连接电阻体的端子接负极,滑动臂接正极。如果直流电流直接通过摇杆电位器,摇杆电位器的阳极就会受到氧化损伤,从而让摇杆电位器的阻抗变大,因此最好是将电流的负极接在跟碳膜片接触的端子上,正极接在跟刷子(摇杆电位器接触片)的端子上。摇杆电位器作为可变电阻器时,建议作调整电压的分压器使用,同时摇杆电位器的负载电阻RL应不小于摇杆电位器公称阻值RT的10倍。在稳压器中用来调节输出电压,故设计摇杆电位器应满中顺时针调节时输出电压升高,反时针调节器节时输出电压降低;在可调恒流充电器中摇杆电位器用来调节充电电流折大小,设计摇杆电位器时应满中顺时针调节时,电流增大。IC座,设计印刷板图时,在使用IC座的场合下,一定要特别注意IC座上定位槽放置的方位是否正确,并注意各个IC脚位是否正确。
双轴XY按键摇杆模块
由两个滑动变阻器和一个按键组成,当拨动摇杆时,滑动变阻器的阻值就发生变化,对应的X/Y电压值也随之变化,而用力按下摇杆就会触发按键按下,对应的SW信号变为低电平。
摇杆双联电位器实拍:通常是将两个规格相同的电位器装在同摇杆电位器结构一转轴上,调节转轴时,两个电位器的滑动触点异步转动。这个结构被称为同轴异步双联动的电位器。
还有一位高精度按钮开关
X和Y轴,一个按键
2.54mm排针接口,接线方便,通用性强
PCB尺寸(mm):24X32
工作原理
模块特设二路模拟输出和一路数字输出接口,输出值分别对应(X,Y)双轴偏移量,其类型为模拟量;按键表示用户是否在Z轴上按下,其类型为数字开关量。模块集成电源指示灯,可显示工作状态;坐标标识符清晰简明、准确定位。为了更加方便地配合扩展板等标准接口,在设计上把 X,Y轴的电路都单独引出,以控制输入这个操纵杆模块的 x、y的值以及在特定的值下实现某种功能。
引脚说明
名称 描述
GND 地
5V 电源5V
SW 按键(数字量)
VRX X轴 (模拟量)
VRY Y轴 (模拟量)
模块性能
1.输入电压范围:直流3.3V 至 5V。
2.输出信号:模块特设二路模拟输出和一路数字输出接口,输出值分别对应(X,Y)双轴偏移量,其类型为模拟量;按键表示用户是否在Z轴上按下,其类型为数字开关量。
3.可以通过Arduino控制器编程,传感器扩展板插接,完成具有创意性遥控互动作品。
4.十字摇杆为一个双向的10K电阻器,随着摇杆方向不同,抽头的阻值随着变化。本模块使用5V供电,原始状态下X,Y读出电压为2.5V左右,当随箭头方向按下,读出电压值随着增加,最大到5V;箭头相反方向按下,读出电压值减少,最小为0V。
一些应用场合
接线方式
GND、VCC(+5V)这两个不用说了。
VRx,VRy (X、Y轴)为模拟输入信号,连接到模拟IO口A0~A7。
VRx,VRy 的值:从 0 ~ 1023 分别代表 左~右,上~下。中间值为512。
SW (Z轴)是数字输入信号,连接到数字端口,并启用上拉电阻。
SW 的值:1代表未按下,0代表按下。
实验这里VRx接A0,VRy接A1,SW接D6
/* 【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真) 实验三十八:joystick双轴XY按键摇杆模块(PS2游戏航模控制杆) */ int value = 0; void setup() { pinMode(6, INPUT_PULLUP); Serial.begin(9600); } void loop() { value = analogRead(A0); Serial.print("X:"); Serial.print(value, DEC); value = analogRead(A1); Serial.print(" | Y:"); Serial.print(value, DEC); value = digitalRead(6); Serial.print(" | Z: "); Serial.println(value, DEC); delay(1000); }
初始状态
/* 【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真) 实验三十八:joystick双轴XY按键摇杆模块(PS2游戏航模控制杆)之二 */ int JoyStick_X = A0; int JoyStick_Y = A1; int JoyStick_Z = ; void setup() { pinMode(JoyStick_Z, INPUT); Serial.begin(); } void loop() { int x,y,z; x=analogRead(JoyStick_X); y=analogRead(JoyStick_Y); z=digitalRead(JoyStick_Z); Serial.print(x ,DEC); Serial.print(","); Serial.print(y ,DEC); Serial.print(","); Serial.println(z ,DEC); delay(); }
「雕爷学编程」Arduino动手做(38)——joystick双轴摇杆模块的更多相关文章
- 「雕爷学编程」Arduino动手做(9)——火焰传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(10)——敲击传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(14)——倾斜角度模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(12)——霍尔磁力模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(11)——金属触摸模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(8)——湿度传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 「雕爷学编程」Arduino动手做(7)——旋转电位器模块
37款传感器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐一做做实验 ...
- 「雕爷学编程」Arduino动手做(41)---激光接收管模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
- 「雕爷学编程」Arduino动手做(40)——旋转编码器模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
- 「雕爷学编程」Arduino动手做(32)——雨滴传感器模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
随机推荐
- Liunx常用操作(二)-vim中删除命令
VIM简介 Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是自由软件.Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Ema ...
- 如何快速地恢复你的win10
win10清单 这份List不会介绍如何安装系统,而是当面对一个新系统,如何最快的搭建,或者说恢复到一个生产力环境. 必备习惯 备份软件安装包和常用内容上云是高效恢复的两点关键. 备份软件安装包 我的 ...
- linux--配置开发环境 --Nginx篇
安装: 安装好了话,我们的nginx的目录在: /etc/nginx 启动: sudo service nginx start 然后访问我们的页面就可以看到了我们的界面 然后我们配置我们的域名: 我 ...
- CG-CTF(4)
CG-CTF https://cgctf.nuptsast.com/challenges#Web 续上~ 第十六题:bypass again 代码分析: 当a不等于b,且a和b的md5值相同时,才会返 ...
- [SVN] Couldn't perform atomic initialization
svn: Commit failed (details follow): svn: Couldn't perform atomic initialization It was because the ...
- Zabbix数据库表分区
zabbix的监控主机数量将近300,且运行了一年时间了,最近zabbix server服务监控历史数据等服务不断自身告警.查询性能也变得很低 关于历史数据的两个参数,在zabbix server的配 ...
- Scala的存在类型
Scala的存在类型 存在类型也叫existential type,是对类型做抽象的一种方法.可以在你不知道具体类型的情况下,就断言该类型存在. 存在类型用_来表示,你可以把它看成java中的?. 下 ...
- SaltStack的数据系统
一.SaltStack数据系统的分类 1.Grains(收集的是静态数据) 官方使用文档:https://www.unixhot.com/docs/saltstack/topics/targeting ...
- 动态调用webSerivce-简易方法
大家对webservice已经不再陌生了,涉及到的通信大部分都是用webservice.不过我还是看好wcf,因为毕竟是微软推出的新技术,各个方面还是蛮不错的,特别是你可以利用多种通信方式, ...
- JSP、ASP、PHP Web应用程序怎么这么多P!
之前我们说完了计算机网络应用程序的两种结构:C/S,B/S(传送门)今天我们详细说一说B/S开发中的这么多P是干什么的. 1.什么是Web应用程序 一个Web应用程序是由完成特定任务的各种Web组件( ...