热点:
    高级编辑

    方向盘弱爆了 看牛人用自行车玩极品17

      [  中关村在线 原创  ]   作者:
    收藏文章 分页阅读 暂无评论
    返回分页阅读本文导航

    1看IT达人如何玩转极品飞车?

    编者按:

      不得不说,当下是个达人辈出的年代。电脑DIY的精神已不仅仅局限于硬件超频、改装散热组件、自制机箱等方面,从本身功能用图改造,开始逐渐蔓延到更多与游戏与IT周边设备有关的领域。网络坊间也一直都不缺乏有灵感有创意的人,爱动脑动手的DIYer更是拥有独到的创新意识,改造能力和方式方法也趋于多元化,基本的计算机理论知识再加上一点突发奇想。综合起来,最终也足以能促成下面这位将自行车完美改造成极品飞车控制器的DIY达人。

      本篇DIY的整体改造方案来自于果壳网,作者bohua(码农),个人爱好:喜欢DIY,毕业那年做过一年的码农,喜欢嵌入式系统,不过只学过ARM7和ucos。从简介中不难看出,他是具备较强的动手能力和编程基础知识的。

    --------------------------------------------------

    发扬DIY精神 看神人另类玩转极品飞车

      下面我们就来看看他设计方案是怎么样另类把玩极品飞车的吧!也许大家会惊呼他是“牛人一个”,但这的确是灵感所致的DIY创新成果。

    制作时间: 5小时
    制作难度: ★★☆☆☆
    GEEK指数: ★★★☆☆

      近来有点喜欢玩《极品飞车》,所以买了一个游戏方向盘。快递到后,迫不及待地拆开,才玩了一会,就想把它扔掉,手感实在有点烂,微微地打方向一点反应都没有,再打多点突然间像打鸡血一样猛转方向,还不如键盘来得爽。扔垃圾筒有点可惜,想了想,觉得可以花点心思改造一下,打造一个不错的游戏控制器。

    方向盘弱爆了 看牛人用自行车玩极品17
    废旧自行车是最佳选择 

      家里能与“速度与激情”扯上点关系的,就只有1楼已经废弃了10年的简易跑步机,和一台邻居送的很破的自行车。我选择了自行车,个人觉得把自行车的后轮架起来,操控起来实在很自然。另外还有一个原因,我搬不动跑步机。

    基本设计如下:

    自行车车头 ————> 赛车方向盘
    自行车脚踏 ————> 赛车油门
    自行车左刹车 ————> 赛车脚刹
    自行车右刹车 ————> 赛车手刹或氮气加速

    2采用“拿来主义”控制电路板设计草图

    ● 第 2 步:控制电路板设计草图

      一般游戏方向盘都在方向盘和油门刹车上装有线性电位器,当玩家打方向盘或踩下油门刹车的时候,电位器的阻值改变,通过AD转换测量加到电阻器的变化电压,从而得知方向盘或油门刹车的改变量,再通过MCU或usb芯片与电脑通讯。

    方向盘弱爆了 看牛人用自行车玩极品17  

    方向盘弱爆了 看牛人用自行车玩极品17

      由于我不太懂USB通讯方面的知识,所以就直接采用“拿来主义”,取得方向盘的主电路板来制作。 

    方向盘弱爆了 看牛人用自行车玩极品17

      简单来说,只要输入一个相应电阻给方向盘的主电路板,便可以“骗”它进行工作,发送相应数据给上位机(电脑《极品飞车》),而我们要做的工作,就是使用一些传感器,来测量自行车的一些参数(速度,车头转向,是否刹车),通过MCU处理后,改变数字电位器,接入到方向盘的主电路板中,便可。

    3准备必要模块与工具 拆方向盘控制器

    ● 第 3 步:必备工具

    ●自行车一台,自行车骑行台一只。

    ●霍尔传感器模块,微动开关,LPC2013最小系统模块,电子罗盘模块,加速度传感器模块

    ●ULINK调试器、电脑一台,MDK keil4开发环境,万用表

    ●玩电子的必备工具:电烙铁,锡线,吸锡器,螺丝笔一套,镊子,防水胶布,台钻,扎带等等,反正焊接电路板该有的都要有,不细细述说了。

    ● 第 4 步 :方向盘拆解

    把方向盘拆开,测量一些参数:

    方向盘线性电位器的最大阻值,左右方向方向盘均打尽的阻值,方向盘居中的阻值。

    未踩下刹车时的阻值,踩尽刹车时的阻值。

    未踩下油门时的阻值,踩尽油门时的阻值。 

    方向盘弱爆了 看牛人用自行车玩极品17

      经过测量发现,刹车和油门共用一个线性电位器。 

    方向盘弱爆了 看牛人用自行车玩极品17

      而对于方向盘来说,方向盘居中时,其电位器阻值刚好是最大阻值一半,如此一来,就没有必要过多关注其电阻值了。

      虽然如此,选用的电位器相差不要超过一个数量级为好。

    4全都是细致活 焊接模块与开关指示

    第 5 步:电路设计与焊接

      由于买回来的ARM7 2103模块已经是最小系统,所有管脚直接引出,因此只需要将其管脚用板略为引伸,接上座子,方便安装便可。整个MCU模块所用到的管脚有——SPI0管脚,I2C0管脚,外部中断2个,一些GPIO口接指示LED、触动开关(可有可无),UART0管脚(调试输出数据用,可有可无)等。

      电路图就不需要给出了,如果你以上基本都能看懂或是学过ARM的,那肯定知道怎么接,我只是画了个草图,就开始焊接了,焊好的板子如下。 

    方向盘弱爆了 看牛人用自行车玩极品17

    方向盘弱爆了 看牛人用自行车玩极品17

      把方向盘的主电路板和转接板取出来,焊到一块万用板上,焊上接线座,方便安装。

    方向盘弱爆了 看牛人用自行车玩极品17

    方向盘弱爆了 看牛人用自行车玩极品17

      为了方便安装,我另外还给两个霍尔传感器和加速度传感器、电子罗盘加焊了几块电路板,加上接线座子。全家福一张。

    5让自行车变得更智能 模块详细介绍

    第 6 步:模块详细介绍

    ● 霍尔传感器(测量自行车的速度)

      霍尔传感器模块是这样工作的,3个管脚,VCC脚,GND脚,DATA脚,缺省状态DATA脚输出低电平,若有磁石靠近,产生磁场切割,便会输出一个高电平,当磁石远离传感器,又恢复低电平。所以在自行车的脚踏边上贴上一个磁石,把两个霍尔传感器模块装到脚踏经过的两边位置,在踩自行车时,通过计算两只霍尔传感器的时间差,来获得骑车人踩单车的速度,由此对应赛车油门的深浅。 

    方向盘弱爆了 看牛人用自行车玩极品17

    ● 电子罗盘,加速度传感器模块(测量自行车的转角)

    方向盘弱爆了 看牛人用自行车玩极品17

      我使用的这款电子罗盘的芯片型号为HMC5883L,I2C接口,75HZ的数据读取频率,没太多好说的,上电复位,通过I2C接口设置好工作参数和工作模式,就可以读取数据了。数据的模式是地磁在XYZ轴的分量,还搞得不是非常懂。XYZ轴的基准与芯片的位置有关。不过取出数据按照芯片手册计算,就可以测得与地磁的夹角。

    方向盘弱爆了 看牛人用自行车玩极品17

      模块上还有一个ADXL345加速度传感器,一样是I2C接口,主要是因为自行车的车头旋转平面并不是完全水平的,因为自行车的车头轴(不知道是不是这样称呼)与地平面有一个夹角,所以就导致了——整个模块无法工作在水平面中,也就是说电子罗盘的XY轴形成的平面,不与水平面平行,Z轴的地磁分量肯定不为0,至少大部分时间不为0。

    6氮气加速必不可少 简单编程与调试

    ● 第6步:编程与调试 

      说了这么多ADXL345加速度传感器就是用来测量水平倾角,对电子罗盘的数据进行校正的。

      事实上,我另外还买了一个模块,上面集成了一个加速度传感器和一个角速度传感器,本来是怕一个加速度传感器有误差,可以进行取平均值来校正,后没有使用。

      美中不足的是,因为使用了电子罗盘,所以每次开始玩的时候,都需要校正,因为自行车的位置不同导致了车头居中朝向不一致,因此需要初始化。甚至在玩的时候,玩得太嗨,动作太大,导致自行车位移,也要不断地校正。

      最好的方式,还是在车头上安装一个转动电位器来取代电子罗盘,但是考虑到电位器的安装需要合适的齿轮,安装起来很麻烦,也没有模具,所以就罢了。

    方向盘弱爆了 看牛人用自行车玩极品17

    ● 微动开关(刹车,氮气加速) 

    方向盘弱爆了 看牛人用自行车玩极品17

      在自行车刹车装上两个微动开关,开始的方案是压力传感器,如此一来,刹车的参数便是模拟量,但安装的问题太过于麻烦,所以就采取了开关量的方式来进行。微动开关直接接入了方向盘的电路板中,不通过ARM7 LPC2103电路板。

    ● 数字电位器MCP42050。 

    方向盘弱爆了 看牛人用自行车玩极品17

    方向盘弱爆了 看牛人用自行车玩极品17

      最大量程50K欧姆,SPI通讯接口,2个电位器,精度为50K欧/256,已经是非常够用。在初始设定中,油门深浅(即车速)分10个等级,方向盘每5度设为一个等级,左右各90度便是32个等级。绰绰有余。

    ● LPC2103模块

    方向盘弱爆了 看牛人用自行车玩极品17

      没什么好说的,处理数据用。

    7DIY大功告成,进入驾驶状态,走你!

    ● 第7步:DIY大功告成 

    ● 我使用了小型操作系统Ucos,分成4个任务。

      任务1:指示灯亮灭。 任务2:电子罗盘数据读取,加速度传感器数据读取,进行数据处理得到转角并写入一全局变量中。 任务3:霍尔传感器的数据处理,将时间间隔(车速)写入一全局变量中。 任务4:根据速度和转向2个全局变量的数据,把对应的电阻值写入数字电位器中。 

    方向盘弱爆了 看牛人用自行车玩极品17



    踏上自行车开着心爱的柯尼塞格 就是有点累!

    这个碉堡了啊,话说昨晚在长安街上看见一辆奥迪R8,果然是很销魂啊!不过我们这些吊丝男,只能在电脑上模拟一下了。

    返回分页阅读本文导航
    不喜欢(0) 点个赞(0)

    推荐经销商

    投诉欺诈商家: 010-83417888-9185
    • 北京
    • 上海

    笔记本文章推荐