自制的节流阀控制器
发表日期 : 2018/07/10  365 收藏
xukejing
向TA提问
1728
总阅读量
10
作品

大家好,我叫徐珂靖,是个骨灰级航空迷。我知道大家都对各种喷气式战斗机感兴趣。虽然现实世界里不能开,但是虚拟世界里面过把瘾还是可以的。这类游戏叫模拟飞行、

  

我们可以在淘宝上买到各种罗技或者赛钛客品牌的飞行摇杆、脚舵和左手油门杆。对于动手能力强的电子爱好者,也能自己动手做各种外设。今天要介绍的是一个自制的节流阀控制器。

油门杆.jpg

   

我玩过一款电脑游戏,名字叫《Lock On》。

飞行模拟游戏.JPG

  

这款游戏的画面很逼真;而且气动模拟也比较真实,技术高超的玩家甚至能驾驶Su27做出“眼镜蛇机动”。下图是游戏里的战斗机座舱,我特地找的Su27然后截的图。

驾驶舱.JPG

 

这个虚拟座舱场景真实地复现了Su27驾驶舱内的视角。座舱前方玻璃上那个透明的有绿色图像的显示器就是战斗机HUD,它可以把信息投影在驾驶员面前而不影响对前方视野的观察。

   

座舱中部的操纵杆是俯仰和滚转操纵杆,它控制飞机的副翼和升降舵。同时,杆子上有一些控制武器的按钮。

副翼与升降舵.JPG

 

看向驾驶舱左侧,左手处有一个前后推动的滑块,这个就是节流阀控制杆,也可以叫“油门杆”,它是控制发动机推力的。

节流阀.JPG

 

为了让游戏体验更加逼真,我DIY了这个节流阀控制器,它通过USB-HID协议来连接虚拟驾驶舱。杆子前后滑动控制节流阀前后运动。

 推杆.jpg

 我还做了些改进。相较于Su27战机原版节流阀,这个更小巧,握持手感更符合亚洲人手型。另外还在大拇指位置添加了方向舵控制和我自创的“混合刹车控制器”。

  

控制板是STM32F103C8T6,云汉社区的活动送的。

stm32.jpg

 

大拇指握持位置是方向舵控制,左右摇动(大拇指的左右运动在这里是上下方向的)控制方向舵偏转。比如下面这个图,我压了右舵。方向舵是垂直尾翼上的那个舵面。

方向舵.JPG

 

其实方向舵在战斗机的转向动作中并不常用,一般只在起飞降落时候作为辅助的航向矫正。相对来说,减速板就比较重要了,所以我也把它加到了大拇指位置上。大拇指后拉会打开减速板。

开减速板.jpg

 

下面是游戏里的效果,当我向后拉动大拇指时候,机背的减速板打开了。

减速板.JPG

 

大拇指向前推的输出,我给连接到了起落架刹车。降落触地以后,把这个小摇杆往前推,刹车启动。

刹车.jpg

  

控制器的程序,我们节选一部分代码截图介绍一下。

代码.jpg

  

throttlexy这三个变量由ADC采集电位器得到,其中xy来自杆子大拇指控制位的那个两轴摇杆,throttle采集自大杆子下部那个滑动电位器。Xthrottle的参数直接赋值给通道输出了。Y的值是小摇杆的前后拉动,分段输出button信号,用来控制减速板和刹车。

    

杆子上还有很多复杂的按键。比如,我设置了解除迎角限制的开关,在节流阀握持的小拇指位置上。游戏中,正常情况下,机载飞控系统会把飞机迎角限制在安全范围内。但是Su27的气动性能比较好,我们可以突破迎角限制做一些危险的失速动作。过几天我会为它录一期视频,表演一下传说中的“眼镜蛇机动”。


硬件设计 模拟飞行 摇杆 节流阀
【你的赞赏是对原创作者最大的认可】
打赏
4人已打赏
xukejing
向TA提问
1728
总阅读量
10
作品
相关文章推荐
换一批
相关回答
换一批
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
回答问题攒积分送开发板