需要金币:![]() ![]() |
资料包括:完整论文 | ![]() |
![]() |
转换比率:金额 X 10=金币数量, 例100元=1000金币 | 论文字数:14745 | ![]() | |
折扣与优惠:团购最低可5折优惠 - 了解详情 | 论文格式:Word格式(*.doc) | ![]() |
摘要:本项目设计了一款可进行人机对弈的中国象棋机器人。系统包含上位机算法实现和下位机行棋控制两个主要部分。上位机使用树莓派作为控制器,负责中国象棋走法的解算和图像识别的算法实现。中国象棋走法解算采用中国象棋引擎程序实现,主要由局面表示、走法表示及生成、局面评估和搜索算法四大部分组成。图像识别采用OpenCV函数库实现,通过HSV颜色提取和霍夫圆心检测得到棋子数组,将该数组与棋手下棋前的棋子数组进行比较,得到棋手的行棋位置。下位机使用STM32F103RCT6单片机作为控制器,控制三维运动装置行棋。 下棋者在棋盘上落子后,中国象棋机器人通过摄像头采集图像,将图像信息经串口传送至上位机,由上位机进行图像识别处理,推算出下一步的走法后发送给下位机。下位机控制三维运动装置完成走棋动作,从而实现对弈的全过程。 本项目研发的中国象棋机器人可实现机器人与人之间直接在棋盘上进行中国象棋的对弈,相对于通过电脑显示器进行对弈更有临场感,并且作品的实现无需使用电脑或者联网。在使用过程中系统会播放提示音提示用户进行操作,并有纠错、暂停、难度选择等功能。经测试系统运行稳定,完全实现的了相应的功能。 关键词:中国象棋机器人、树莓派、图像识别、OpenCV、三维运动装置
目录 摘要 Abstract 1. 绪论-7 1.1 研究背景-7 1.2 研究目的与实用性分析-8 2. 系统总体设计-9 2.1 基本任务-9 2.2 总体方案-9 3. 系统硬件设计-11 3.1 系统硬件结构-11 3.2 平面运动结构设计-11 3.3 Z轴运动结构设计-12 3.4 下位机驱动电路板设计-13 3.5 上位机硬件模块介绍-16 4. 系统软件设计-17 4.1 通信协议设计-17 4.2 下位机程序设计-17 4.2.1 下位机软件运行流程-17 4.3 上位机程序设计-19 4.3.1 上位机软件运行流程-19 4.3.2 中国象棋算法设计-20 4.3.3 图像识别算法设计-26 4.3.4 串口通信模块程序设计-28 4.3.5 语音模块程序设计-29 4.3.6 树莓派开机自启动脚本-30 5. 系统调试-32 5.1 测试方案-32 5.2 测试结果-32 5.2.1 下位机控制三维运动平台行棋测试-32 5.2.2 中国象棋算法测试-33 5.2.3 图像识别测试-33 5.2.4 整体测试-34 5.3 分析-34 6. 设计总结与展望-35 6.1 设计特色及创新-35 6.2 总结-35 6.3 展望-36 致谢-37 参考文献-38 |