18岁高中生,自制机器人200天肝爆,250行Python代码“注入灵魂”!
高中生爆肝10个月,自学《我的世界》算电搭建理论上最快的计算器,0.05s完成运算!
最近在哔哩哔哩看了两个视频,不禁感慨,现在的中学生怎么了?大写的牛b,全是天才少年。
我等不及了。让我告诉你第一个。
凌,17、18岁自制机器人,原理确定、外形设计、电路连接、代码编写,所有工作耗时200天。
这个机器人叫跟随机器人,别名魔鬼(D的简称)。创作它的灵感从何而来?
满身工具箱和背包,凌十七灵机一动。“我得找个人帮我弄一下。为什么是人?」
就这样,一个跟随机器人(装载机器人)的想法就出来了。
而且塑料外壳设计,可以跟、跑、装、拉东西,关键是坐.
你有过这种想法吗?
看似普通,要知道制造这个机器人对于一个18岁的少年来说可是一个大工程。
第一步是建模。模型的规模是前所未有的。凌十七说和他之前做的不在一个数量级。
让我们先感受一下这个建模工作量:
仔细看,整个机身的设计并不是粗糙直白的几何形状,而是参考了人体工程学,从稳定性和实用性等方面进行设计:
建模完成后,就迎来了下一步——制壳。
让模型从电脑来到现实。凌选择水洗树脂作为三维建模的材料。
但使用水洗树脂作为打印耗材时,可能会出现开裂,成品外壳过薄时,会出现更严重的变形,导致无法安装。
另外,超大件对装配精度的要求非常高,中间没有捷径可走。只有一次又一次地尝试、调整、尝试和调整。
所以这一步也被凌十七自己形容为“很不熟练,很无聊,浪费时间”。
外壳制造工艺完成后,就是传感器了。
小机器人D的传感器是二维激光雷达,有一定的抗太阳光干扰能力。
两台雷达根据通信规则分别编写了一个包拆包算法。由于太阳光的干扰,小D白天很难在户外工作,于是灵十七换了波长更短的雷达,重写了拆包算法。
好了,下一步就是做机器人的心脏了!
凌十七选择单片机作为主控器件,控制无刷电机和舵机,做出遥控、行驶和跟随速度方向的最终判断:
在这个过程中,使用树莓Pi运行后续程序,然后将结果输出到单片机,控制无刷电机和舵机。
凌十七说,这是他设计过的最大的电路。
单片机与树莓Pi的通讯,选用哪种电机,是用单片机还是树莓Pi作为主控器件,工作电压的确定等。都是他在开发过程中解决的问题。
至于完整的追踪功能,凌十七用了250行代码实现。
相比做外壳,写代码“很有技术含量,很枯燥,很费时间”。
最终,设计图里所提到的功能,已经基本实现了。除了开头提到的功能外,存储东西也完全没问题:
不过机器人并不能做出表情,所有视频中的表情都是后期处理上去的,也就是特效制作。
视频上传不到3天,就斩获百万播放量。
本来,自主导演的机器人故事和硬核DIY机器人全流程已经足够惹眼。
在视频即将结束时,Up主还掏出乐器,为这一项目献曲一首,直接引爆了弹幕:
从程序员,到导演,到音乐爱好者,多种身份无缝切换!
现在18岁的孩子都这么棒的吗?
羡慕,实在是羡慕啊。
好了,废话不多说,我在接着给大家介绍第二位。
这是一位高二学生,因爆肝在B站火了。他从未接触过数电,一切从零开始,仅仅是为了搞清计算器的原理。
然后……然后……
就直接在《我的世界》里肝出了个“理论最快”四则计算器:0.05s完成运算!
这位ID为“ 史蒂夫的骨灰”的Up主,是从去年10月开始这个项目,由于在上高二,只有周末和放假才有时间推进。
瞧瞧,这密密麻麻的零部件,这可都是他“亿点亿点” 纯手工搞上去的。
在上高二……
看完前:我应该是个fw
看完后:我果然是个fw
先来看看这个计算器的实行运行效果是怎么样的:
视频里说的gt也就是“游戏刻”(GameTick),指理论上《我的世界》游戏程序更新一次数据的时间:0.05s。
这里可以看出,加减乘除四种运算全在1游戏刻之内得出结果!
能把《我的世界》玩成这样,是我没想到的!
用《我的世界》制作CPU运行《我的世界》?OMG!
过去在《我的世界》中用红石电路做计算器,或多或少都需要一些运算时间。
这是因为游戏中传输信号的元件会产生0.1秒的延时。与整个游戏的运行速度不同,红石电路是把1秒分成10份,每份称为1红石刻,也就是0.1秒。
这样无论怎么进行优化,都不能在小于1红石刻的时间里完成运算。
于是骨灰君就用另一个元件活塞来实现电路,传递信号,整个电路的运算时间,理论上限就是1游戏刻=0.05s了。
那么这么庞大的工程,到底是怎么肝出来的呢?
当时骨灰君的想法非常的简单,就是想用《我的世界》来研究一下计算器的原理。
所以就先设计了一个加法架构,一段时间之后,还搞出来了个乘法器。
后来一步步研究,开始将数电和械电结合,并把整个过程记录了下来,像在给粉丝们做“工作汇报”一样:进度:XXX。
(感兴趣的朋友可以去Up主的B站动态里看这个“工作汇报”。)
于是,就这么一点一滴像打地基一样,计算器的各个部件就做好了。
最后的工作,用骨灰君的话就是“简单组装一下”。
救命,我看不懂,但我真的大受震撼!
乘法模块:
BCD转binary:
Binary转BCD(整数):
最后是显示器+总控电路:
大功告成!
你敢相信,这个视频其实是Up主给5000粉丝制作的福利!
不过视频一发,五天就涨了一万粉,截止现在,已经有1.9万粉了。
听彼得我一句劝,趁现在粉丝少,赶紧去关注一波,等粉丝多了,你就是老粉了。
还能收获一波真实高中生上网课的日常哦。
以上两个视频,我看完之后脑子里就响起了这一段:
“少年智则国智,少年富则国富;少年强则国强,少年独立则国独立;少年自由则国自由,少年进步则国进步;少年胜于欧洲则国胜于欧洲,少年雄于地球则国雄于地球!”
中国,未来可期啊。
话说,B站天天给我推这些天才“后浪”,上次不是还刚看了一个B站焊武帝手搓CPU的视频嘛,我也专门写一篇文章来介绍,《B站焊武帝手搓CPU,实在太神了!》(感兴趣的朋友可以点击超链接去看文章),这个世界真的随时都在提醒我:我是个fw,老fw!
对这些“肝帝”“后浪”,你有什么想说的吗?欢迎在评论留言进行交流。