实验 机器人足球比赛常用工具

1、实验目的

掌握 RoboCup 仿真机器人足球比赛中常用的工具,具体内容如下:
(1)胜率测试器
(2)阵型修改器
(3)查看球员与球的速度,位置。

2、实验设备

硬件环境:PC 机
软件环境:操作系统 Linux

3、实验内容

1.胜率测试器

  • 打开: 打开tools中的“autotest2d” 在autotest2d中新建终端,并且执行运行'./test.sh',此时打开soccerwindow2会看到正在进行的比赛。在命令行中运行

    soccerwindow2 --port 7000
    

    会看到有另一场比赛在运行。对了,我们是同时启动了两个进程,在进行比赛。这样测试胜率的效率会提高很多。
    查看胜率: 在终端中输入 './result.sh' 就能看到当前比赛的结果。
    在test.sh中比较重要的代码:

    PROCES=2                    # 同时运行的服务数
    ROUNDS=100                  # 每个服务运行的比赛场数
    l_teams=(hfut hfut729)      # 左侧球队(可以多个
    r_teams=(yushanprov mtprov) # 右侧球队
    GAME_LOGGING="false"        #是否记录RCG日志
    TEXT_LOGGING="false"        #是否记录RCL日志
    SYNCH_MODE="0"              # 是否为同步模式
    

    注意 shell中的数组中间是以空格为隔断的,不是其他语言中的,
    如上代码,会启动两个测试服务器,每个服务器会进行100场,总共就是200场。
    l_teams 为左侧球队,r_teams为右侧球队。如上代码会先将start_hfut与 start_yushanprov 中的球队进行比赛,打200场。然后start_hfut与 start_mtprov 打200场,然后start_hfut729与 start_yushanprov ...
    SYNCH_MODE 为同步模式。将其改为1 试试效果(部分球队(如fractals)不支持此模式)

  • 查看运行的多个测试服务器:

服务器端口从7000开始,每一个server + 1000,也就是说第二个server的端口为8000,第三个server的接口为9000。使用soccerwindow2 --port 端口号 就可以指定端口查看其他的server。

  • 查看比赛结果 

测试中会生成一个 result.d的文件夹,里边放有运行日志以及比赛统计结果 index.html 打开可以查看胜率,进球数,进球球员等(查看胜率变动的图片需要安装gnuplot软件).比赛后会生成 left_teamVSright_team 的文件夹,result.d 以及 log.d会移动到此处.这样便于分类查看.

  • 终止测试以及清理数据
    ./kill.sh  #杀死服务
    ./clear.sh #删除测试产生的数据
    
  • 添加新的球队
    一.将球队复制进teams文件夹
    二.参照start_xxx中的内容 更改球队位置
    三.更改test.sh 将xxx 添加到l_teams或者r_teams

2.阵型修改器

  • 打开:在终端中运行 ./fedit2 就可以打开阵型修改器。

在阵型修改器中打开阵型文件(src下的formation-dt文件夹下)主要是defense-formation、offense-formation以及normal-formation。 拖动白色小球就可以看到球对应位置时球员在阵型点上的位置,拖动球员在右下角可以看到拖动后球员的位置,然后将位置写入左侧对应index的对应球员的位置就可以保存,拖动小球就可以看到保存后的阵型效果了。其他功能可以自己探索。

3.查看球员信息

soccerwindow2 不仅可以观看比赛和录像,也可以查看球员与球的信息。点击monitor-> moveDialog 然后勾选所需要查看的信息。点击readField 就可以查看当前周期球员与球的信息了。soccerwindow2还有其他功能,可以自己探索。

Copyright@Njupt-Apollo-2d-2021 all right reserved,powered by Gitbook该文件最新修订时间: 2022-02-26 09:05:41

results matching ""

    No results matching ""