3D 打印和语音识别改装旧赛车:音调变速、口令转弯,重现「四驱兄弟」招牌技能
六一刚过,一大批怀念童年玩具的文章刮起了一阵「怀旧风」。
要说童年玩伴,文摘菌最怀念的要数《四驱兄弟》,这部1996年的日本漫画给无数车迷们种下了「赛车手」的种子。
那句「冲吧,强棒音速!」,成为了当年无数男孩子最爱的口头禅,也带火了一大批「奥迪双钻」类赛车玩具。
▲ 当年奥迪双钻的「梦之队」系列
最近,B站的一位程序员UP主「阿婆主喵咪的哥哥」(以下简称喵哥),就靠着一己之力,把语音识别和3D打印装进了一辆普普通通的四驱车里,将小时候泛黄的四驱车壳改装成声控版的「超强」四驱车。
改装之后,这辆车不仅能通过音量高低控制赛车速度,还能直接发出指令让赛车转弯掉头、转弯,完完全全实现了文摘菌小时候的梦想:声控四驱车。
当喵哥喊出「五点钟」,音速就真的转向了。
不过由于车与人不能离太远,一旦离太远,车就接收不到指令了,所以必须人和车一起跑,简直重现四驱兄弟的场景👇
看看这酷炫的画面,真真馋哭了一票有着「强棒音速」梦的叔叔阿姨们。喵哥也因此被大家称为b站「土屋博士」!
UP主主页:
https://space.bilibili.com/10830226?spm_id_from=333.788.b_765f7570696e666f.2
▲ 土屋博士(感觉神似乔布斯)
据喵哥介绍,目前他手中有三辆四驱车可以启动,跃动冲锋、强棒音速和旋风冲锋。分别是初级遥控板旋风冲锋、声控版跃动冲锋,再就是声控遥控板强棒音速。
最后,喵哥表示不能一个人开心,所有源码,包括需要3D打印的源文件都一并放上了GitHub开源给大家。
源码指路👇
https://github.com/JingYang1124/Acoustic-controlled-Mini-Racer-Beat-Magnum
要拥有一辆升空版「强棒音速」需要几步?
这个项目源于喵哥整理旧物的时候找到了一个泛黄的旋风冲锋车壳,喵哥觉得不能抛弃掉小时候的玩伴,希望能重现旋风冲锋!
喵哥的整个改装过程分为三步,分别是三维模型设计打印、电路链接和组装测试。
文摘菌也带大家一起来看看这个炫酷的改装过程吧。
1.三维模型设计
先来看第一步,设计三维模型。
喵哥是使用Solidworks对四驱车进行设计和建模,由于他找到的儿时四驱车只有一个壳,所以基本上除了壳以外的模块都需要。如果想要实现声控四驱车,有些零件就需要自己画图打印。
Solidworks2020可以连接3D打印机,也是最新版本的功能。不仅如此,还能通过Solidworks对三维几何图形进行切片,还能存储图形的材料、纹理、二维切片数据。
接着采用3D打印技术,打印出车身和轮子还有其它的配件。
打印的车身。
车身打印好后,就可以开始下一步的电路连接了。
2.电路连接
完成了三维打印,就要对车身进行电路改造了。
喵哥表示这部分比较关键,需要使用AltiumDesigner印制电路板(PCB)设计,还有KELLuVision进行单片机编程。
控制方式是挂在胸前的遥控器进行语音识别,基于无线传输,根据不同的语音控制指令发送到车的接收端。
挂在胸前的遥控器,有按钮设计,可以声控,也可以使用按钮。
车身主要有Arduino板,马达驱动电路MX1508,无线模块NRF24101需要设计。
车的接收端有一个STM32单片机,这个单片机是微控制器的角色,有点类似动画片里的GP晶片。
接收端的原理是根据不同的指令去调节四路PWM占空比,由于两路信号对应一个电机,所以车上装了两个电机,靠改变PWM占空比来控制电机转速。
选择使用Arduino Nano。单片机里有51单片机和Arduino,Arduino是一个开源的硬件平台,是一类以AVR单片机为核心控制器的硬件电路板的统称,还有熟悉的STM32,虽然STM32非常强大,但是对新手是不太友好的,所以为了能更好地完成声控赛车重构,所以就采用Arduino来构建,这样的话,丰富的开源和配套软件,可以加大成功的几率。
购买一块LD3320芯片,然后开始绘制PCB电路板。
遥控器端需要连接,在做声控之前,还需要进行按键的调试。
再使用两个NRF24L01无线模块将它们连接,其中的一个Arduino还需要装备上电机驱动芯片和两个电机,最后用面包板、电池、公母头排线就可以组装起来了。
面包板上有孔可以固定Arduino Nano,并用导线和其它器件来连接。
接下来是要下载ArduinoIDE,使用该软件给Arduino进行编程,可以在Arduino的中文社区下载。下载下来后可以用来编程、程序烧录、串口调试一系列操作。
由于需要使用NRF24L01无线模块,所以还需要加装一个Mirf库到Arduino里。
哪怕不会C语言,也不用怕,只用把代码文件里的二十几行代码输入进去,就能运行。如果是人形代码输出机,还可以修改代码,增加模块。
主要是通过Digitalread函数来读取D2-D6上的电平信号,当电平信号为低电平时,就可以发送不同的数字连接。从不同的电机的电平高低来实现转向和前进等运动模式。写好程序后,要接入电脑,下载程序到遥控短、接收端和Arduino板里。
3.组装和测试
最后,就是将配件安装在一起啦。
安装完成后,给控制板写入程序。写入程序后,就可以进行测试了。
从视频中可以看到,当喵哥喊出八点钟方向,四驱车真的转向了,而且音速反应速度挺快的。
「强棒音速,我们走!」话音刚落,没错!车真的飞起来了!
整体来看,这辆四驱车确实成功实现了用声音来控制的功能,不仅可以原地转圈圈,还能转弯加速(老手技能)。
网友评论:童年诚不欺我!
这个项目在b站和知乎上都引发了一波惊呼。网友们纷纷表示,Coding changes the world!
不仅能听懂人话,还想能放绝技,期待跃动炸弹!
以及,小时候的终极谜题终于解决了:「终于找到赛车跟着跑的原因了」,没错,正是因为蓝牙离得太远,车接收不到信号,所以必须像风一样冲,紧跟赛车。
还有同学表示这个技术可以申请专业、一条龙生产售卖,走上人生巅峰了。
如果再加上AI人工智能的学习能力,经过多次训练,寻找最优,菌菌更想要一辆了,最好还能开放算法优化平台,让大家都可以参与进来。
最后,文摘菌也尝试了解视频主角喵哥是何来头,不过除了简介资料上有介绍自己是一个工科男,再就是视频里露脸,其余一概都没提,不过能从这么全的设备看得出来,不是一般人呐。有的网友说已经在短短的视频里看到了一个自动化专业的大部分课程应用,文摘菌只能说实在是宝藏阿婆主。
据说阿婆主还会继续开发有趣的项目,最新预告是手绘打印了一台全新的四驱车,没错,喵哥准备黑化,开始大神博士的巨无霸的精彩改装系列,文摘菌将继续保持关注!
参考链接:
https://space.bilibili.com/10830226?spm_id_from=333.788.b_765f7570696e666f.1
本文来自微信公众号「大数据文摘」(ID:BigDataDigest),作者笪洁琼,爱范儿经授权发布。