IT之家 7 月 5 日消息,科技媒体 Tom's Hardware 昨日(7 月 4 日)发布博文,报道称技术爱好者 Mr. Yeester 成功改造 2012 款本田 CR-V,将其打造成为《极品飞车》游戏的外接控制器。
Yeester 改造 2012 款本田 CR-V 掀背车,接入车辆的 onboard diagnostics(OBD)系统,读取传感器数据。然后他利用 Python 库编写了一些代码,成功将车辆的油门踏板当作控制器,可以连接控制《极品飞车》游戏。
IT之家注:自 1996 年起,美国生产的每辆车都配备了一个 OBD2 端口,通常位于仪表盘下方。这是一个通用诊断接口,用于帮助识别和修复车辆问题。
Yeester 借助一个简单的 OBD2 至 USB 适配器电缆,他接入车辆的 ECU(电子控制单元),并在笔记本电脑上直接记录传感器数据。
其中有一个传感器跟踪油门位置,直接与油门踏板相连,但将这个数据映射到任何游戏中并非易事。
首先,需要使用一个名为 pySerial 的 Python 库来读取车辆传感器的数据。下一步是识别特定的 PID(参数 ID),以接入该传感器,并编写脚本将车辆油门踏板的模拟信号转换为电脑能理解的数字信号。
脚本运行后,油门数据实时读取,并将值保存到 JSON 文件中。这个文件由一个独立的自动化工具监控。
在视频中,Mr. Yeester 使用 AutoHotkey 创建了一个脚本,每当文件中的值变化时,该脚本就会模拟一次键盘按键。在他的例子中,当 JSON 文件中的“trigger_value”参数超过 0.2 后,脚本就会模拟按下空格键。
最后,只需打开你选择的模拟器,并配置控制方案,将空格键映射为油门输入。
在他的长视频项目中,Mr. Yeester 甚至可以将车辆的方向盘操作,映射到游戏中控制方向。他使用了一个旧的本田诊断工具,访问到了一些隐藏的传感器,如方向盘,并使用与油门类似的方法在 Dolphin 模拟器中映射。