树莓派爆改国际象棋,棋子活了自己动

  克雷西发自凹非寺

  量子位公众号 QbitAI

  现在,跟 AI 玩实体游戏,已经不用“人肉臂”代劳了!

  甚至连机械臂也不需要,在这块特殊的棋盘上,树莓派直接就能控制国际象棋棋子的移动。

  如果不是棋盘下的导轨露出马脚,简直就像是棋子“活”起来了。

  这个设备名叫 Pi Chess Board(简称P板),由一名叫 Tamerlan 的机电一体化工程师设计制作。

  它既可以由计算机控制,让玩家挑战不同难度,也可以由真实用户远程操纵,隔空上演一场国际象棋大战。

  P 板一上线,就迅速冲上了 Hacker News 热榜,网友们纷纷开始猜测起了技术细节。

  国际象棋会自己动了

  在作者展示的这场游戏中,P板为白方,真人为黑方。

  (关于国际象棋的规则,可以参考一下 ChatGPT 的简单介绍)

  开局时,双方各有一兵前进了两个,白方的马也走出了一步(国际象棋中马也走“日”字,但没有类似于中国象棋中“绊马腿”的规则)。

  之后黑方做出了同样的跳马动作,然后P板将先前移动过的马又动了一次,吃掉了黑方的兵。

  之后的几轮厮杀就不一一解说了,总之双方有来有往,P板能够按照正确的规则移动棋子,并根据真人玩家的动作做出响应。

  不过 Hacker News 也有网友指出了P板还存在一些不足。

  比如由于棋子只能在棋盘上滑动而不能“起身”,所以当遇到障碍时会把其他棋子推开,这本身不是问题,但是被推开的棋子不能自动复原。

  另外,如果有棋子被真人方吃掉,被吃掉的棋子也不会自动离开棋盘,需要手动拿走。

  虽然还存在一些不足,但总的来说,P板还算是一个有趣的尝试。

  那么,Tamerlan 是怎样设计出P板来的呢?

  树莓派控制电机,磁吸带动棋子

  首先需要说明的是,P板中棋盘和棋子也属于系统的一部分,并非随便拿来一套棋都能玩。

  P 板上的棋子当中装有磁铁,板子的底下则暗藏了滑轨和步进电机,整个系统由树莓派控制,然后用电机以磁吸的方式让棋子运动

  导轨分为 XY 两个方向,装有两个电机,并被作者划分出了国际象棋棋盘中8×8 的网格。

  这种双导轨设计是在制作过程当中确定的,目的是使步进电机能够轻松地围绕给定的网格移动,让棋盘更加稳定。

  另一方面,虽然作者确定了要用磁吸的方式带动棋子移动,但一开始给棋子装的是电磁铁而不是一般磁铁。

  但在实验中作者发现,电磁铁存在发热、磁极转换不能快速实现、校准结果不理想等诸多问题。

  考虑再三之后,作者用普通的磁铁替换掉了电磁铁,不仅解决了位置难以校准的问题,也降低了电力消耗。

  为了不让步进电机每次执行移动时都需要重新归位,作者添加了一种优化算法,将棋盘每边的长度规定为 2200 步进电机步,电机运动后的位置会在全局位置变量中更新。

  最后,对于马的行进、王车易位等非直线运动,作者还设计了专门的算法。

  不过,作者虽然讲解了P板的核心原理,但系统究竟如何识别不同的棋子,仍然还是个谜。

  棋子识别方式引发猜测

  关于系统识别棋子的方法,网友们给出了很多种猜测。

  有网友表示,如果换做自己来设计一款智能棋盘,可能会考虑这样几种方案:

  首先是RFID(射频识别),也就是给棋子贴上电子标签,一些无人超市识别商品用的也是这种技术。

  类似地,也有可能贴的不是电子标签,而是另外的标记。

  另外还可以利用霍尔效应(当固体导体放置在一个磁场内,且有电流通过时,导体内会产生霍尔电压)设计传感器。

  这种方式不知道具体哪个棋子是哪个棋子,但假设了正常的起始位置,然后通过棋子的位置变化判断哪个发生了移动。

  还有网友说可以利用加速度传感器和超声波来实现。

  总之,在作者揭晓真正的答案之前,这些说法可能都有一定的道理,可以期待一下作者有没有回复。

  那么,你认为在这里最有可能运用了哪项技术呢?

  项目主页:

  https://readymag.website/u2481798807/5057562/