疫情居家隔离期间,很多人都闲不住,在家拍起了视频。

最近就有这样一位新晋 YouTuber 在他的频道 Stuff Made Here 中因硬核投篮而走红,但其厉害之处不在于投篮技术,而在于动手能力。

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

利用蒙特卡罗法+数控机床,一块智能曲面篮板就做好了,从此百发百中不只是说说而已。

这之后,他更是推出了 v2 版本,对篮板进行优化。因此网友大呼:NBA 要大结局了。

蒙特卡罗法+数控机床

打开他的频道 Stuff Made Here,一行英文首先引入眼帘:

I'm me and i make stuff.(我就是我,做点儿小玩意的我。)

雷锋网注意到,这个频道于 2020 年 3 月 4 日发布了第一条视频,目前总共发了 10 条视频,收获了 16.5 万订阅。在他的频道 Stuff Made Here 中,不乏 3D 打印、等离子切割、点焊、数控机床等硬核技术。

而制作百发百中篮板的视频是 Stuff Made Here 4 月 16 日发布的一条时长 21 分 06 秒的视频,目前播放量已超过 451 万,也是他播放量最高的一条视频。可见这位外国“手工耿”正迅速走红。

那么大神是如何制造篮板的呢?

想造篮板,先得想好要把篮板造成什么形状、角度如何。同时也要考虑,篮球飞过的轨迹是呈抛物线还是直线,篮球飞行速度是快是慢。

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

此刻,小哥正面临着一个“鸡与蛋”式的困境——他需要篮板的形状来算出篮球的轨迹,但同时也需要先知道篮球的轨迹才能算出篮板的形状。

怎么办?直接上代码吧。

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

接下来要做的就是利用蒙特卡罗法不停地模拟了:从不同位置以各种角度和速度投球,在同一位置投 16 次。

用最小二乘法拟合成光滑曲面后,得出的篮板形状大致就是这个样子(关注这个不规则体的上表面即可)。

接下来,利用数控机床开始实际的篮板零部件制造过程。

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

到这里就只剩下简单的拼接、安装流程了。

来试一试!啊,真香!

如上所述,小哥利用到了蒙特卡罗法暴力求解,模拟了从球场的不同位置投篮、接触到篮板不同位置的很多次(据说是成千上万次)进球。

那么何为蒙特卡罗法?

根据百度百科,蒙特卡罗法(Monte Carlo method)也称统计模拟法、统计试验法,属于计算数学的一个分支,于 1950 年提出,是一种把概率现象作为研究对象的数值模拟方法。

而其中的蒙特卡罗其实是摩纳哥的著名赌城,该模拟法为表明赌博的本质是随机抽样而得名。

据悉,这一方法在金融工程学,宏观经济学,生物医学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域也得到了应用广泛。

下图为用这一方法估算 π 值。

此外,想要做出百发百中的篮板谈何容易。

视频中,这位博主并不是一下子就成功了——发现用智能篮板也投不中的时候,小哥才发现忘了考虑篮球的半径,这也就意味着篮球比原定的路线向前靠了 5-7.5 厘米。因此,小哥把篮筐往前调整了大约 6.3 厘米,即篮球的半径长度。这样问题就解决了。

值得一提的是,小哥还将他用到的一些材料、工具、零部件的亚马逊购买链接全都 po 了出来,其中就包括他最得力的生产力工具 12.9 英寸 256 GB 深空灰色 iPad Pro。

v2:真正的智能篮板

在最新一期视频中,小哥 cue 到了他的“成名作”。小哥表示,篮球能否直接投进,还是需要一定的人为控制,投平飞球时,并不能保证一定就会投进,因此 v2 版本来了。

v2 明显要更为灵活一些。

这次小哥打开了思路:一块智能篮板不一定非得是曲面的,一块能实时识别出球方向和速度、立即调整角度、保证进球的平面篮板,才能称得上是智能。

要做到这些,篮板要能追踪房间里的一切,判断出是否有球向它飞来、球在什么轨道上,然后利用这些信息来规划如何移动篮板、将球引向篮筐。从把篮球投出去到击中篮板,只有 600 毫秒的时间,因此这一系列动作要在 600 毫秒内完成。

要实现这一目标,小哥就得有三个层面的考虑。

第一,机械设计层面,要让篮板移动到尽可能多的位置、反应也要尽可能快,小哥用到了马达和传动轴:

三个马达:因为不在一条直线上的三个点能确定一个平面,所以小哥用了三个马达,每个马达控制一条机械臂;

一条精密滑轴:为了避免篮板过于随意地摇晃,无法精准移动,小哥在三个马达中间加了一条光滑的传动轴,而连接传动轴和篮板的,是一个 3D 打印的万向节。

值得一提的是,小哥特地将整个装置做了轻质设计,其中零部件的制造与连接过程还用到了等离子切割和点焊技术,看来小哥此前发的视频也都是在为 V2 做准备了。

另外,Kinect(Xbox 360 体感设备)也派上了用场。

第二,视觉识别层面,小哥使用了投射轨迹测算,从房间中一切可能是圆形的图像中找到篮球(Kinect 可能会将小哥的头、甚至房间里的垃圾识别成篮球)。

第三,测算层面,小哥解了一个一元二次方程(即弹道的轨迹)。

最后的效果就是这样的。

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

v2 视频一出,网友惊呼这位小哥简直就是《生活大爆炸》里的霍华德,还有网友直接艾特了手工耿。

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

当然,博主也坦言,目前的系统还是太落后,有时会突然停止运作,但他也还不能搞清一些 bug 出现的原因。不过,博主也在视频里埋下了彩蛋,再过不久 v3 应该也会发布了。 

而对于接下来的 v3,网友预测:

好了,我知道 v3 是个移动篮筐版本了!!

小米集团副总裁、技术委员会主席崔宝秋也表示:

为什么不再硬核一点,通过视觉识别技术+传动装置,让篮筐上下移动并自动调整角度,使每个投篮都变成空心球?

外国“手工耿”用机床车出智能篮筐 网友:NBA大结局了-冯金伟博客园

那么小哥接下来会做出怎样的优化,我们小小期待一下吧!