吐吲蚶嘲■—邑≈睡-—————~,毒号匣■设■ 世写茧孽 ”} l }
8和二三口:j~丽“鼍孚冀五磊鬲一
邕,l}方,cnn方一一,一~!!一l。了;—E迸 }… 一L—-・・・一k.....,.........-一
-e倒r异,僻■待口号“矗遗树ri一・
:埘:啊0缯鸯ltt’■嚣]o柏 {上j eJ l媛目敏t! :,锵
逗璺曩舞~轴咄蓦■————一般i鲁I●墨髓
‘…
够^蠢厂1ii]o晡 1号囊色j吁订i—鼍r1西F]
j困口困:
图5-10教练机程序操作控制整体界面图
5.4机器人通信子系统程序设计
根据第四章和第五章中的功能分析与设计,使用Visual Studio C++.net 2003和应用 程序框架MFC编写机器人通信子系统程序。由于机器人通信子系统只是整个机器人比 赛系统的一部分,因此,设计程序包括的文件主要为相应的头文件、实现文件及XML 配置文件。
(1)头文件(.h)。
◆ClientSocket.h
这是客户端套接口类的头文件,是实现机器人的通信功能的重要文件,声明客户端 套接口与通信相关的成员函数和成员变量。
令ServerSocket.h
这是服务端套接口类的头文件,与ClientSocket.h类似,是实现机器人的通信功能 的重要文件,声明服务端套接口与通信相关的成员函数和成员变量。
冷CommunOutput.h
这是信息输出类的头文件,声明相应的成员函数和成员变量。 、
夺CommunicatiOn.h
这是信息交流类的头文件,声明相应的成员函数和成员变量。
83
(2)实现文件(.cpp)。
长安大学硕士学位论文
if(footballPlayerID!=pCommunication一>footbaUPlayerID)
长安大学硕士学位论文
<X——TO—.HOME——DOOR>400</X——TO——HOME—.DOOR>
<!~左后卫入场位置中X坐标与己方球门线的距离一>
<Y-TO—MID—AXIS>250</Y—TO—MID—AXIS>
<!..左后卫入场位置中X坐标与x中轴线的距离.->
</Le怂ack>
</FootballPlayerPos>
程序中分别存储了机器人角色为前锋、中场和左后卫时的上场位置坐标值。
5.5本章小结
RoboCup中型组机器人通信网络系统的设计是使用相应的软硬件编写所需要的应 用程序,从而实现所需的功能。本章首先介绍了机器人相关程序的编程环境和编程语言,
然后说明了Wmdows Sockets通信网络编程的基本知识和基本函数,最后分别讲述教练 机程序和机器人通信子系统程序的程序文件。
第六章RoboCup中型组机器人通信网络系统实验验证
6.1通信网络系统比赛模式实验
所谓比赛模式实验,是指让机器人和教练机按照真实比赛的规定和要求的前提下进 行实验。通过实验,检测教练机和机器人的通信、裁判盒与教练机的通信、机器人与机 器人间的通信状况是否达到设计要求。
通过实验,可以验证RoboCup中型组机器人网络通信系统的可行性和通信系统传 输信息的可靠性和准确性。
(1)实验过程
在光线均匀的RoboCup中型组机器人比赛场地上进行实验,实验设备包括两台计 算机(都装有Windows XP操作系统和Microsoft Visual C++.NET2003,分别用于运行 裁判盒应用程序和教练机应用程序)、两台RoboCup中型组机器人、一个TP.Link无线 路由器和两条网线。
按照RoboCup中型组机器人比赛规则,操作裁判盒发送比赛指令,根据教练机收 到的信息次数和信息内容,记录教练机和机器人的通信状况,分析教练机程序和机器人 通信予系统运行情况以及通信系统的可行性、可靠性和准确性。首先,两台计算机分别 使用网线与路由器连接。然后,在两台计算机上分别运行裁判盒程序和教练机程序,两 台RoboCup中型组机器人通过无线方式与路由器建立连接,并运行机器人比赛程序,
使机器人进入比赛状态。操作裁判盒计算机,给教练机发送不同的比赛命令,记录教练 机和机器人的接收情况。
(2)实验结果
经过实验,教练机收到裁判盒命令显示的截图,如图6.1,6.2,6.3所示。
降i改qj粤“一1‘泓置T湫矗]一溺叩1甄q讶瓯『