三亚学院理工学院 汪 源 黄文敏
智能黑白棋机器人设计
三亚学院理工学院 汪 源 黄文敏
通过电子技术和机械装置设计智能黑白棋机器人,机器人由电子棋盘模块、机械臂控制装置及计算机控制程序三部分组成。电子棋盘基于霍尔传感器不受环境光线影响,能准确识别黑棋子和白棋子在棋盘上的位置及颜色;提供了实现棋子翻转的解决方案,利用设计的机械臂控制装置可以提高棋子翻转及摆放的效率;计算机控制程序基于LabVIEW环境编写,通过数据采集系统读取霍尔传感器信息来识别棋局,利用程序设计己方的走棋策略,并将走棋策略通过控制机械臂进行实施,保证系统整体正常运行。机器人可以实现自主识别棋局、智能走棋设计和自主棋子翻转和摆放等功能,系统的设计、制作及维护的难度低,系统各部分运行稳定性较高。
人工智能;下棋机器人;霍尔传感器;LabVIEW
机器人(Robot)是自动执行工作的机器装置,一般由执行机构、驱动装置、检测装置和控制系统和复杂机械等组成。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。它的任务是协助或取代人类工作的工作。[1-2]而下棋机器人是机器人在棋类博弈中一种具体的应用,能像人类一样,自主的完成下棋的整个过程。在现有技术中,下棋机器人通常采用摄像头来获取图像,完成棋子识别,使用具有较多关节的机械臂传动来完成棋子摆放,其不仅结构复杂,成本高而且需要占据很大的空间。[3-4]
现有大多数下棋机器人设计复杂,占用空间大,成本高昂,基于图像识别棋子位置,易受环境光线亮度变化而影响识别的准确度,并且以现有的技术,还没有能解决棋子翻转的机械设计方案。本文通过选用霍尔传感器来识别黑白棋子的位置及棋子颜色,提高了棋子识别的可靠性;提供了实现棋子翻转的解决方案,利用设计的机械臂控制装置可以提高棋子翻转及摆放的效率;计算机控制程序基于LabVIEW环境编写,通过数据采集系统读取霍尔传感器信息来识别棋局,利用程序设计己方的走棋策略,并将走棋策略通过控制机械臂进行实施,保证系统整体正常运行。
黑白棋是19世纪末英国人发明的,每颗棋子由黑白两色组成,一面白,一面黑,共64个;棋盘由8*8的正方格组成,共64格,下棋时棋子要落在格内,棋盘可分为“角”、“边”以及“中腹”;正式的比赛中使用棋钟对选手的时间进行限制。
黑白棋的下棋方法:(1)棋局开始时在棋盘正中有两白两黑四个棋子交叉放置;(2)黑方先行,双方交替下棋;(3)一步合法的棋步包括:在一个空格新落下一个棋子,并且翻转对手一个或多个棋子;(4)新落下的棋子与棋盘上已有的同色棋子间,对方被夹住的所有棋子都要翻转过来,可以是横着夹,竖着夹,或是斜着夹,夹住的位置上必须全部是对手的棋子,不能有空格;(5)一步棋可以在数个方向上翻棋,任何被夹住的棋子都必须被翻转过来,棋手无权选择不去翻某个棋子;(6)除非至少翻转了对手的一个棋子,否则就不能落子,如果一方没有合法棋步,也就是说不管下到哪里,都不能至少翻转对手的一个棋子,那这一轮只能弃权,而由对手继续落子直到有合法棋步可下;(7)如果一方至少有一步合法棋步可下,他就必须落子,不得弃权;(8)棋局持续下去,直到棋盘填满或者双方都无合法棋步可下;(9)当双方都没有棋子可以下时棋局结束,以棋子数目来计算胜负,棋子多的一方获胜,在棋盘还没有下满时,如果一方的棋子已经被对方吃光,则棋局也结束,将对手棋子吃光的一方获胜。
黑白棋的规则与其他的棋类有很大的不同,黑白棋涉及到将对方棋子翻转为己方棋子的动作,因此在机器人的机械动作方面有非常高的要求。根据黑白棋的下棋规则,设计智能黑白棋机器人由电子棋盘模块、机械臂控制装置及计算机控制程序三部分组成。其中电子棋盘模块实现对棋子位置及颜色的识别,机械臂控制装置实现棋子的高效率翻转及摆放,计算机控制程序进行走棋策略的设计及控制机械装置正常运行。
电子棋盘的设计目的是为了实现对棋子位置及颜色的识别,在黑白棋中,一枚棋子的两面分别对应两种颜色,一面是黑色,一面是白色,而棋盘则是8*8的方格。
具体的实施方案是:在每个棋子的内部安装有磁铁,磁铁有两级,分别为s极和n极,不同磁极对应棋子的不同颜色面。例如令s极对应棋子的白颜色面,那么n及就对应棋子的黑色面,当然也可以反过来定义。由于棋子中有磁铁,当棋子被移动到某个位置后,该处的磁场就大大增强。在每个棋盘的格点处放置一个具有双极性的霍尔元件[5],从而构成8*8的霍尔元件阵列,这样一来,每个棋格下面都有一个的霍尔元件,当棋格里有棋子时,该棋格处磁场会大大增强,且根据棋子朝上面的颜色不同,在棋子正下方的霍尔元件检测到的磁场的极性不一样,进而霍尔元件会输出不同的电压,通过检测棋盘上每个霍尔元件的输出电压,就可以确定棋格上有没有棋子,若有棋子时可以根据输出电压的不同来判断棋子是黑面朝上还是白面朝上,从而实现棋子的位置识别及颜色识别的任务。棋盘的具体电路由驱动电路、霍尔元件阵列、电压比较电路及信息处理电路四部分组成,如图1所示。图1中具体每个区域的功能划分为A区为增加驱动能力的驱动电路,如图2所示。B区为8*8的霍尔元件阵列,功能是根据棋格里有无棋子及棋子的颜色输出不同的电压,如图3所示。C区主要完成电压的比较功能,对B区霍尔元件输出的电信号进行处理,通过电压比较,将每个棋格的三种状态(1没有棋子,2有棋子且棋子黑面朝上,3有棋子且棋子白面朝上)分别处理成对应的“00,10,01”或“00,01,10”的数字信号对,如图4所示。D区为电子棋盘的信息处理区,如图5所示,该区有一定的计算能力,能完成对C区输出信号的接收和进一步处理,并通过串行口,将最后处理的棋盘信息数据发送到计算机,方便计算机的进一步处理。
图1 棋盘总电路图
图2 A区部分电路图
图3 B区部分电路图
图4 C区部分电路图
图5 D区电路图
机械臂设计的目的是为了实现棋子的落子及翻转,机械臂的整体效果图如图6所示,效果图由CAD软件绘制。为了方便描述,对各个轴向及关键部件进行了标注。从整体上看,是一个三轴运动控制平台,各个轴向相互垂直,且每个轴向都由不同的步进电机来控制,实现在轴向上的直线运动。由于该平台能实现在xyz三维空间上的运动,可以很轻松的将棋子投送到想要落子的棋格里。该机械臂的重点在于能实现棋子的翻转,即能将棋盘上的棋子由原来的一面朝上翻转成另一面朝上,而棋子所在的位置不变。为了实现此目的,在设计中采用了两个Z轴,分别为Z1,Z2,Z1、Z2可以分别带动两个舵机实现上下直线运动,为了方便描述,两舵机分别命名为D1、D2,如图6所示。为了实现棋子的抓取,在D1、D2的支架上有分别放置电磁吸盘(棋子本身内部装有磁铁,电磁吸盘可以吸取带有磁铁的棋子)。在对棋子翻转前,机械臂所处的状态如图所示,假设D1正下方就是待翻转的棋子(这个假设很容易实现,只要通过X轴及Y轴的运动,就可使D1移动到要翻转的棋子上方),实现翻转过程的控制步骤为:(1)Z1轴步进电机带动D1向下运动,使D1支架上的电磁吸盘贴近待翻转的棋子,并使吸盘通电吸取棋子;(2)使D2的支架顺时针旋转90度;(3)Z1轴步进电机带动D1向上运动一定距离,再使D1控制支架逆时针转动90度;(4)Z1轴步进电机继续带动D1向上运动,直到使得D1、D2支架上的吸盘处于同一水平线上,效果图如图7所示,此时棋子就在两吸盘中间;(5)D1带吸盘断电的同时D2所带吸盘通电,将棋子从D1的吸盘交换到了D2的吸盘上;(6)Z2轴步进电机带动D2向下运动一定距离,再使D2控制支架逆时针转动90度,同时通过X轴和Y轴电机的调整,使得D2正下发就是要落子的位置;(7)Z2轴步进电机继续带动D2向下运动,直到D2所带的吸盘上的棋子贴近棋盘,再使该吸盘断电,将棋子落到棋盘上;(8)机械臂恢复原来开始的状态。至此完成了棋子的落子及翻转的全部过程。
图6 机械臂整体效果图
图7 翻转棋子机构细节放大图
电脑程序主要通过对电子棋盘传送的棋盘信息进行接收处理,以此来获取棋盘上棋子的分布信息,进而通过算法,给出计算机下一步要行棋的位置,并将此信息传送到机器臂的控制装置,让机械臂控制装置来控制机械臂的具体操作来完成在棋盘上的行棋过程。在本次设计过程中,电脑程序的开发选用了LabVIEW图形化计算机语言来开发。
通过电子技术和机械装置设计了智能黑白棋机器人,机器人由电子棋盘模块、机械臂控制装置及计算机控制程序三部分组成。电子棋盘基于霍尔传感器不受环境光线影响,能准确识别黑棋子和白棋子在棋盘上的位置及颜色;提供了实现棋子翻转的解决方案,利用设计的机械臂控制装置可以提高棋子翻转及摆放的效率;计算机控制程序基于LabVIEW环境编写,通过数据采集系统读取霍尔传感器信息来识别棋局,利用程序设计己方的走棋策略,并将走棋策略通过控制机械臂进行实施,保证系统整体正常运行。机器人可以实现自主识别棋局、智能走棋设计和自主棋子翻转和摆放等功能,系统的设计、制作及维护的难度低,系统各部分运行稳定性较高。
[1]谭民,王硕.机器人技术研究进展[J].自动化学报,2013,39(7):963-972.
[2]黄永安,熊蔡华,熊有伦.智能机器人与应用的现状与发展趋势[J].国际学术动态,2009(4):38-39.
[3]方园,赵姝颖,闻时光,田祥章,胡彬.人机博弈技术展示——下棋机器人[J].机器人技术与应用,2013(2):39-42.
[4]张韦唯,张永德.下棋机器人操作臂及手爪的计算机辅助设计[J].哈尔滨理工大学学报,2005,10(3):19-21.
[5]邱召运.双霍尔元件组合模型设计与应用研究[J].自动化仪表,2009,30(9):10-13.
[6]CAD/CAM/CAE技术联盟.AutoCAD 2014中文版从入门到精通[M].北京:清华大学出版社,2014.
The paper designed intelligent robot through electronic technology and mechanical devices. The robot consists of three parts: the electronic board module, the manipulator control device and the computer control program. The electronic board is based on hall sensor, and not af f ected by ambient light, it can accurately identify the position and color of chess on the board. The paper provides a solution to the flip of the pieces, and the design of the manipulator can improve the efficiency of the turnover and placement of the pieces. The computer control program is based on LabVIEW environment, and the computer reads hall sensor information through data acquisition system to identify chess board. Using the program to design the strategy of the game, the strategy is to control the manipulator to ensure the normal operation of the system. Intelligent robot can realize autonomous recognition, smart moves turn design and independent pieces and put the function, such as the difficulty of system design, manufacture and maintenance of the low, system running stability of the parts is higher.
Artificial intelligence;chess robot;hall sensor;LabVIEW
2016年度国家级大学生创新创业训练计划项目(No:201613892119)资金资助。
汪源(1984—),男,安徽歙县人,三亚学院理工学院院长助理,副教授,研究方向:电工电子技术、虚拟仪器技术。