乐高是孩子的益智玩具,也是大人手中的得力工具,医生可以用它治疗小乌龟, 女生可以用它织毛衣,男生可以用它开发盲文打字机,当然我们大人也可以用它娱乐。
这不,来自叙利亚大马士革大学机电工程学院的Hadi DARROUS毕业设计用Mindstorms NXT 2.0套件开发了一个会下国际象棋的机器人,名为Charlie。这个即将上市销售的机器人实现了人机对弈,可以陪孩子大人益智娱乐。
这要从单片机的控制上来说了,并不说总线控制或者总线方法就是比较重要的,只是说,我们应该熟练使用总线的方法进行操作,因为,接下来的很多功能都会用到总线,我们在操作时,会不断地去更改某一个端口的数据,或者对数据进行变换,如果每个端口都去重新定义一遍,不仅复杂,而且编程中还要不断地去查找自己对该端口的定义名称,写错后也十分难以查找错误。
这款智能象棋机器人硬件部分以NTX为控制核心,并由3个马达分别驱动X轴,Y轴和拾放机械手臂的运动;软件部分中,用乐高编程语言RobotC编写机械运动程序,用CuckooChess 1.12(开源Java文库)做为象棋引擎,MATLAB则编写图像分析程序以及一些辅助脚本。机器人通过摄像头实时捕捉棋子的位置变动,获得对手的出招,然后输入到象棋算法中得到应招,之后通过蓝牙发送信息到NXT控制器来完成棋子的定位和拾放动作,从而实现了真正意义上的人机对弈,供小伙伴们娱乐!
转自:开源杂志公众号