首页 / 一种多功能智能围棋棋盘

一种多功能智能围棋棋盘实质审查 发明

技术领域

[0001] 本发明涉及智能棋盘技术领域,尤其涉及一种多功能智能围棋棋盘。

相关背景技术

[0002] 目前,随着智能硬件和物联网的发展,近年来推出一种可以联网的智能围棋棋盘,它能够实时检测棋子落下的位置并上传到服务器,由服务器记录下棋过程并形成棋谱文件。人们还可以通过它,与服务器中的AI算法下棋,当AI算法计算出下棋位置后,服务器将下棋位置坐标发送给棋盘,由棋盘点亮指示灯指示AI的下棋位置,然后让人帮AI摆放它的棋子。这种智能棋盘,适合学棋孩子用于练棋,避免孩子使用电脑或手机下棋,可以有效地保护孩子的眼睛。目前,有多款智能棋盘在销售,价格都比较高。
[0003] 目前,智能棋盘都采用霍尔器件感应棋子,其原理是,在棋盘内每个交叉点处安装一个霍尔器件,每个棋子中嵌有磁铁,当棋子摆放在交叉点处时霍尔器件感应到磁场,由此可以感应到棋子。以19路棋盘为例,它有19条横线和19条纵线,每个交叉点设置一个霍尔器件,361个霍尔器件按19行、19列矩阵排列。智能棋盘内的CPU控制电路对霍尔器件矩阵行列扫描,最终可以获得每个交叉点上的棋子状态,即是否有棋子。
[0004] 采用霍尔器件的技术方案的缺点是成本高,体现在:1)霍尔器件的单价高,批量采购单价超过0.6元/只;2)棋子需要注塑模具生产,还需要将磁铁封装在棋子中,生产成本高。

具体实施方式

[0027] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028] 为了更加清楚完整的说明本发明的技术方案,下面结合附图对本发明作进一步说明。
[0029] 请参考图1至图7,本发明提出一种多功能智能围棋棋盘,所述多功能智能围棋棋盘包括棋盘本体1,所述棋盘本体1包括电路板2、盖板3、面膜4、光敏二极管6和行棋位置灯9,所述盖板3固定安装在所述电路板2上,所述面膜4固定安装在所述盖板3上,所述盖板3设有通孔10,所述面膜4设有棋盘线11和透光孔12,所述光敏二极管6固定安装在所述电路板2上,所述光敏二极管6安装在所述通孔10内,所述通孔10与所述透光孔12相连通,所述透光孔12位于所述光敏二极管6正上方,所述棋盘线11包括横线13、纵线14和边界线15,所述横线13和所述纵线14交叉形成棋位17和方格16,多个所述方格16将所述边界线15分成多个短线,所述透光孔12设置于所述棋位17上,多个所述行棋位置灯9其中一部分设置在所述方格
16的中心点上,另一部分设置在所述短线的中点上;所述多功能智能围棋棋盘包括棋子5,所述棋子5放置在所述透光孔12上遮挡所述透光孔12。
[0030] 在本实施方式中,孩子在小学和幼儿园学习围棋,需要在家下棋来巩固学到的围棋知识,大部分家长不懂围棋,只能让孩子使用电脑和手机软件下棋。儿童使用电脑和手机下棋,会严重影响他们的视力。
[0031] 为此,我们研发了一款多功能智能围棋棋盘,它内置有围棋AI算法软件,用于陪孩子下棋。以孩子下黑棋为例,第一手棋由孩子落子,孩子使用普通棋子5落子后,学棋机准确地感应到落子位置,然后由AI算法计算白棋的下棋位17置,结果计算出来后,学棋机亮灯指出AI的下棋位17置,然后由家长(或者孩子自己)帮AI摆放白棋。这样,家长不懂棋,也可以陪孩子下棋。由于使用普通棋子5,保留了传统的下棋体验(手拿棋子5在棋盘上摆棋子5),孩子下棋不再看电脑或手机,因此可以有效地保护孩子的眼睛,行棋位置灯9分为两种情况,一种是在AI下棋的棋位17四周的四个行棋位置灯9点亮,进行棋位17定位,另一种是AI行棋棋位17位于四角,此时AI下棋的棋位17被三个行棋位置灯9点亮,进行棋位17定位,在下棋的过程中,棋位17上没有棋子5时,光线透过面膜4经通孔10到达光敏二极管6,此时Test端的电压Vs1;棋位17上摆放黑棋时,棋子5挡住光线,光敏二极管6的受光强度很低,检测到Test端的电压Vs2;棋位17上摆放白棋时,虽然白棋具有一定的透光性,但仍然挡住大部分光线,此时Test端的电压Vs3,一个棋位17至少有两种状态:1)无棋子5状态;2)有棋子5状态。围棋只有黑棋和白棋,而且第一手棋总是黑棋先下,因此,智能棋盘无需判断棋子5的颜色,只需要判断有无棋子5落在棋盘上,例如,下第11手棋时,检测到的棋子5一定是黑棋。只要下棋时,双方没有拿错棋子5,那么通过下第几手棋的顺序编号,可以准确判断棋子5的颜色,棋子5遮挡透光孔12,透光孔12下的光敏二极管6也被遮挡,光敏二极管6,是一种能够将光信号转换成电流信号的感光器件。管芯使用一个具有光敏特征的PN结构,对光的变化非常敏感,且具有单向导电性,光照不同的时候会改变电学特性,因此,可以利用光照强弱来改变电路中的电流,任何单片机都可以直接驱动它工作。
[0032] 进一步的,所述多功能智能围棋棋盘包括黑棋行棋指示灯7和白棋行棋指示灯8,所述黑棋行棋指示灯7设置在所述棋盘本体1的一端,所述白棋行棋指示灯8设置在所述棋盘的另一端。
[0033] 在本实施方式中,黑棋行棋指示灯7亮起,表示黑方行棋,白棋行棋指示灯8设置亮起,表示白方行棋。
[0034] 进一步的,所述电路板2包括单片机U1、供电电路、光敏二极管6阵列的扫描电路、行棋方指示灯的控制电路和位置指示灯矩阵的控制电路,所述单片机U1、所述供电电路、所述光敏二极管6阵列的扫描电路、所述行棋方指示灯的控制电路和所述位置指示灯矩阵的控制电路连接并形成电连接。
[0035] 在本实施方式中,单片机U1的管脚名称及外围电路。该单片机U1拥有大量的I/O管脚,用于控制行棋方指示灯、行棋位置灯9,以及扫描光敏二极管6阵列。标有X0‑X8的管脚连接光敏二极管6负极列电路的X0‑X8线,标有Y0‑Y8的管脚连接光敏二极管6正极行电路的Y0‑Y8线。单片机上电后,执行初始化程序,然后可以通过软件控制Y0‑Y8的输出电压状态,同时控制内部A/D转换器完成对X0‑X8脚的A/D转换,单片机U1内置启蒙学棋机的软件,启蒙学棋机的软件包括:系统初始化模块、指示灯控制模块、数据采集模块、行棋分析模块、行棋计算模块(即围棋AI算法软件),系统初始化模块,执行全局变量初始化、定时器和I/O端口等的初始化,这部分属于单片机的基础知识,无需详细描述。指示灯控制模块,包括行棋方指示灯控制和行棋位置灯9控制,只需要单片机控制相关I/O脚输出低电平即可,也属于单片机的基础知识,无需详细描述。围棋AI算法属于纯软件算法,它超出了本专利的范畴,因此不详细描述。
[0036] 本章重点介绍数据采集模块如何控制光敏二极管6阵列采集数据、行棋分析模块如何分析行棋棋子5的位置。
[0037] 数据采集模块,完成所有光敏二极管6的数据采集,具体控制过程如下:
[0038] 1.定义一个9行、9列的二维数组
[0039] unsigned int SenData[9][9];
[0040] 2.控制第一行Y0脚输出高电平,其他行(Y1‑Y8)输出低电平
[0041] 3.控制A/D转换通道执行A/D转换,将X0‑X8脚的电压值转换成数字,将转换结果记录到SenData[0][0]‑SenData[0][8]中,例如SenData[0][0]存储的就是X0脚的电压转换结果、SenData[0][8]存储的就是X8脚的电压转换结果。
[0042] 4.重复上述步骤2‑3,按Y1‑Y8的顺序,逐次向一行输出高电平而其他行输出低电平,然后控制A/D通道执行A/D转换,将转换结果记录到SenData[][]数组中
[0043] 上述步骤中,如何控制单片机执行A/D转换、如何读取数据写入数组,属于智能终端产品开发者应具备的基本常识,也可以查阅单片机的产品手册了解,这里不详细描述。
[0044] 行棋分析模块,对采集到的二维数组存储的数据进行分析,具体过程如下:
[0045] 1.设置一个判断棋子5的门限值,例如120
[0046] 2.定义一个二维数组,用于存储棋子5状态结果
[0047] unsigned char Status[9][9];
[0048] 3.以循环方式读取数组SenData[][]中的每个数值,如果数值低于120,该棋位17有棋子5,如果数值大于120,该棋位17无棋子5。有棋子5时,将Status[][]数组中对应的元素设置为1,无棋子5时,设置为0。
[0049] 下面以C代码为例,描述棋子5状态分析的过程:
[0050] unsigned X,Y;                        //循环变量
[0051] for(Y=0;Y<=8;Y++)              //搜索二维数组
[0052] {
[0053] for(X=0;X<=8;X++)
[0054] {
[0055] if(SenData[Y][X]<120)      //数值低于门限
[0056] {
[0057] Status[Y][X]=1;         //记录有棋子5
[0058] }
[0059] else                          //数值高于门限
[0060] {
[0061] Status[Y][X]=0;         //记录无棋子5
[0062] }
[0063] }
[0064] }
[0065] 最终,数组Status[][]记录了棋盘上所有棋位17的棋子5状态。
[0066] 以“孩子用黑棋、AI用白棋”为例,描述孩子跟AI下棋时如何检测棋子5的过程:
[0067] 1.学棋机开机后,执行“系统初始化”模块,棋盘自动进入下棋模式,并设置孩子使用黑棋而AI使用白棋
[0068] 2.设置二维数组Prvs[9][9],用于记录每次落棋之前的棋子5状态。开始对局时,Prvs[][]被初始化为没有任何棋子5。
[0069] unsigned char Prvs[9][9];         //定义二维数组
[0070] memset(Prvs,0,81);              //初始化为没有棋子5
[0071] 3.对局开始,单片机控制BLK脚为低电平,点亮行棋方指示灯(黑方)
[0072] BLK=0;                          //BLK管脚输出低电平
[0073] 4.执行“数据采集模块”和“行棋分析模块”,所有棋位17的棋子5状态被记录在二维数组Status[][]中
[0074] 5.将Status记录的棋子5状态与Prvs记录的棋子5状态比较,如果Status记录中多了一个棋子5,则这个棋子5就是孩子下棋的棋子5,它的二维下标就是孩子下棋棋子5的坐标
[0075]
[0076] 6.单片机控制WHT脚为低电平,点亮行棋方指示灯(白方)
[0077] BLK=1;                         //BLK管脚输出高电平
[0078] WHT=0;                         //WHT管脚输出低电平
[0079] 7.执行“围棋AI算法”,由AI算法计算白棋的下棋位17置
[0080] 8.计算完成后,根据计算出的结果坐标控制行棋位置灯999点亮,指示AI的下棋位17置
[0081] 9.家长根据位置灯的指示,帮AI摆放白棋
[0082] 10.再次重复步骤4和5,直到检测到白棋已经摆放在亮灯的棋位17上
[0083] 11.不断重复步骤3‑10,便可以实现一盘棋的行棋检测。
[0084] 进一步的,所述供电电路包括接触开关SW1和稳压管D1,所述接触开关SW1的接脚2和所述稳压管D1的接脚1连接,所述接触开关SW1的接脚4和所述稳压管D1的接脚3连接。
[0085] 在本实施方式中,供电电路采用3.6伏电池,经稳管D1型号为RT9167A‑30PB输出3伏直流电压,给其他电路供电,POWER是接触开关SW1,当按键按下时,稳压管D1的EN脚为高电平,稳压管D1被开启,输出3.0V直流电压。
[0086] 进一步的,所述光敏二极管6阵列的扫描电路包括接脚X和接脚Y,所述单片机U1包括引脚X和引脚Y,所述引脚X和所述接脚X相连接,所述引脚Y和所述接脚Y相连接。
[0087] 在本实施方式中,单片机U1拥有大量的I/O管脚,用于控制黑棋行棋方指示灯、白棋行棋方指示灯、行棋位置灯9,以及扫描光敏二极管6阵列,光敏二极管6阵列的扫描电路的接脚X包括X0‑X8接脚,单片机U1的引脚X包括X0‑X8的引脚,标有Y0‑Y8的引脚连接光敏二极管6正极行电路的Y0‑Y8接脚。单片机U1上电后,执行初始化程序,然后可以通过软件控制Y0‑Y8的输出电压状态,同时控制内部A/D转换器完成对X0‑X8脚的A/D转换。
[0088] 进一步的,所述行棋方指示灯的控制电路包括BLK接脚和WHT接脚,所述单片机U1包括PC1接脚和PC2接脚,所述BLK接脚和所述PC1接脚相连接,所述WHT接脚和所述PC2接脚相连接。
[0089] 在本实施方式中,BLK接脚与单片机的PC1接脚连接,WHT接脚与单片机的PC2接脚连接。BLK接脚控制的两个红色LED灯,用于表示黑方行棋,WHT接脚控制的两个红色LED灯,用于表示白方行棋。单片机控制PC1接脚输出低电平时,黑方行棋的指示灯点亮,PC1接脚输出高电平时,黑方行棋的指示灯熄灭。单片机U1控制PC2接脚输出低电平时,白方行棋的指示灯点亮,PC2接脚输出高电平时,白方行棋的指示灯熄灭。
[0090] 进一步的,所述位置指示灯矩阵的控制电路包括Row接脚和Col接脚,所述单片机U1包括Row引脚和Col引脚,所述Row接脚和所述Row引脚相连接,所述Col接脚和所述Col引脚相连接。
[0091] 在本实施方式中,位置指示灯采用尺寸为0603的LED灯。每一行LED灯的正极相连后连接到单片机U1的I/O脚,例如第一行LED灯的正极相连后连接单片机U1的PA10脚。每一列LED灯的负极相连后串联一个150欧电阻再连接单片机U1的I/O脚,例如第一列LED灯的负极相连后连接单片机U1的PA0脚。单片机U1通过控制这些I/O脚,可以点亮指定棋位17的位置指示灯,例如,控制Row1和Row2输出高电平其他行输出低电平,控制Col1和Col2输出低电平其他列输出高电平,棋位17(1,1)四周的指示灯被点亮。其他LED灯,要么是没有电流输入,要么是反向电压而不能导通。
[0092] 需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0093] 除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。对于相关领域普通技术人员已知的技术、方法和装置可能不作详细讨论,但在适当情况下,所述技术、方法和装置应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0094] 在本申请的描述中,需要理解的是,方位词如“前、后、上、下、左、右”、“横向、竖向、垂直、水平”和“顶、底”等所指示的方位或位置关系通常是基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,在未作相反说明的情况下,这些方位词并不指示和暗示所指的装置或元件必须具有特定的方位或者以特定的方位构造和操作,因此不能理解为对本申请保护范围的限制;方位词“内、外”是指相对于各部件本身的轮廓的内外。
[0095] 为了便于描述,在这里可以使用空间相对术语,如“在……之上”、“在……上方”、“在……上表面”、“上面的”等,用来描述如在图中所示的一个器件或特征与其他器件或特征的空间位置关系。应当理解的是,空间相对术语旨在包含除了器件在图中所描述的方位之外的在使用或操作中的不同方位。例如,如果附图中的器件被倒置,则描述为“在其他器件或构造上方”或“在其他器件或构造之上”的器件之后将被定位为“在其他器件或构造下方”或“在其他器件或构造之下”。因而,示例性术语“在……上方”可以包括“在……上方”和“在……下方”两种方位。该器件也可以其他不同方式定位(旋转90度或处于其他方位),并且对这里所使用的空间相对描述作出相应解释。
[0096] 此外,需要说明的是,使用“第一”、“第二”等词语来限定零部件,仅仅是为了便于对相应零部件进行区别,如没有另行声明,上述词语并没有特殊含义,因此不能理解为对本申请保护范围的限制。
[0097] 尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

当前第1页 第1页 第2页 第3页