【转载】做个不一样的围棋 视频
时间:2017-05-10 21:51来源:网络整理 作者:haodiy 点击:
次
前言:近年来,围棋运动在青少年中逐渐普及,越来越多的棋院出现在人们的视线中,各种职业和业余的赛事不断举办。选手和棋院都想尽快提高教学水平和比赛成绩。随
前言:
近年来,围棋运动在青少年中逐渐普及,越来越多的棋院出现在人们的视线中,各种职业和业余的赛事不断举办。选手和棋院都想尽快提高教学水平和比赛成绩。随着计算机的普及,很多地方利用计算机进行教学和比赛。然而,观察实际的教学和比赛过程,我们发现如下特点:
一、选手低龄化。学习围棋的人群主要集中在6-12岁,启蒙阶段的孩子有些还不能掌握电脑的用法,有些会把电脑用于游戏,家长也不赞成孩子们长时间使用电脑、智能手机。
二、选手面对真实的棋盘有所谓“手感”,使用真实棋盘和使用计算机屏幕下棋,注意力和思维活跃程度有较大差别。
三、“复盘”是棋类竞技项目提高水平的重要手段,在教学中,老师如果能经常针对学生下过的棋局进行复盘指导,教学质量能得到较好地提高。有鉴于此,我们决心开发一种具有网络功能的电子棋盘,以解决围棋在教学、比赛中出现的一些困难。
一、目标功能
1、棋局的实时自动录入,记录下棋局的整个过程。
2、棋局的复盘功能,能重现棋局的落子步骤。
3、教学功能,实现围棋术语中死活题,定势等不同走法。
4、比赛功能,选手身份录入(RFID卡读入),比赛计时。
5、网络功能,例如用于赛场实时直播(非视频方式)。
二、设计构思(技术要点难点)
曾经有人设计过用磁性传感器(干簧管或者霍尔传感器)配合磁性棋子实现的电子棋盘,这种棋盘是根据围棋中“黑方先落子,之后轮流落子”的规则来记录棋局。由于不能区分黑白棋子,当遇到提子等情形时会发生误记。有时候,低龄的选手在比赛中会有需要让子的情形,这些情况下,不能正确记录。
针对这些问题,我们首先要解决的问题是区分黑白子。
解决的办法是利用黑白棋子对光线有不同反射率的原理,我们可以对棋子发出一束光,然后利用光敏电阻接收反射光线,光敏电阻的内阻变化可以用ADC转换结果判断。
棋盘的交叉点是棋子放置的地方,容易想到如下结构:
另一个问题,在这种结构下,如何区分外部射入的光(无棋子处)和LED发出的光(有棋子处)。解决的方法是进行两次扫描:首先,所有LED不发光,有棋子的地方无光线,无棋子的地方有自然光射入,这样就先区别出有无棋子。然后,点亮有棋子处的LED,由于自然光被棋子遮挡,可以根据反射强度判断黑白子。
LED的存在使我们有了重现棋局的显示功能,一切问题迎刃而解。
四,硬件系统框图
五、设备雏形(如下图)
六、设备调试
由于比赛准备时间过短,一个月时间要完成全部功能没有可能,因此我们选择实现主要功能:
1、PC端程序
用VB语言写电脑程序,这个过程比较顺利,主要的问题是棋子透明叠加到棋盘上的实现以及网络通信协议,这里用到了UDP广播技术来实现未知PC端的接入。
2、设备端调试
用C语言编写MCU程序。
在提交结果时,我们只够时间调试了ESP8266模块的驱动及和PC端的通信、棋子的黑白子检测,实现了正常和异常情况下的棋局实时录入。
硬件系统设计较为成功,除了忘记引电源开机键引线外,基本一次制版成功。
经测试LED选用红光比较好,由于光敏电阻的光谱灵敏度区间在500-800纳米,选用红光LED有较高的灵敏度。
键盘输入和LCD显示屏驱动未按时完成
实物图:
(责任编辑:admin) |
织梦二维码生成器
------分隔线----------------------------