Skip to content

lkhcode/AutoReferee

 
 

Repository files navigation

TIGERs Mannheim 自动裁判盒

前言

本项目是 TIGERs-Mannheim/AutoReferee 的Fork版本,该版本旨在对软件进行汉化,尝试修改软件界面使软件更易操作,此Fork项目暂未在任何场地进行测试,无法保证可用性

原项目汉化后的README.md如下

主页: https://www.tigers-mannheim.de
邮箱: [email protected]

这是 TIGERs Mannheim 团队的自动裁判系统实现。它基于我们的 AI 框架 Sumatra 开发。 我们使用 Gradle 构建应用程序,IntelliJ 作为主要的 IDE。 所有依赖项将自动下载,因此构建时需要网络连接。

系统要求

  • Java JDK (最新的 LTS 版本,具体要求版本可以在 这里找到)
  • 网络连接
  • 对操作系统无特殊要求

构建

首先,确保你已经克隆了 Git 仓库。从 GitHub 下载的 ZIP 文件无法使用,因为构建依赖于 Git 标签。

根据你的系统平台运行 ./build.sh./build.bat

运行

根据你的系统平台运行 ./run.shrun.bat

你可以传入 -h 参数来查看可用的命令行参数。

你也可以通过 docker 运行:

docker run --net host  -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY tigersmannheim/auto-referee-vnc

IntelliJ 配置

IntelliJ 可以读取 Gradle 配置并使用 Gradle 执行构建。 请确保在 Build, Execution, Deployment -> Build Tools -> Gradle 下配置 Gradle 用于构建和测试。

使用说明

图形界面

图形界面由多个可以动态排列的视图组成。如果某个视图没有显示,可以从菜单(Views)中添加。

自动裁判视图

自动裁判视图中,你可以将自动裁判设置为以下模式之一:

  • 关闭: 完全关闭自动裁判
  • 被动: 自动裁判将检测事件并显示在比赛日志中,但不会向游戏控制器发送任何信息
  • 主动: 自动裁判将检测事件并将其发送到游戏控制器

此视图还允许停用某些检测器。

比赛日志视图

Game Log视图显示所有发生的、对自动裁判行为有影响的事件。可以使用表格下方的复选框切换不同类型事件的显示。

球速视图

Ball Speed视图显示场上球的速度。右侧的滑块组件可用于调整图表的时间窗口。如果勾选了非 RUNNING 状态时暂停复选框,当比赛不在 RUNNING 状态时图表将自动暂停。可以使用暂停/恢复按钮覆盖此暂停。请注意,如果用户手动暂停图表,即使比赛状态回到 RUNNING,图表也不会自动恢复。

图表将显示三条线:

  • 最大球速: 规则定义的球速限制
  • 初始球速: 基于球的轨迹估算的初始球速(踢球速度)。随时间推移估算会更准确
  • 球速: 当前估计的球速

配置

所有配置选项都可以通过Cfg选项卡访问。Cfg选项卡本身包含多个子选项卡,用于修改应用程序不同部分的参数。你可以进行必要的修改并Apply它们。要使更改永久生效,请按Save将其写入磁盘。按Reload重新读取所有当前应用的值。

视觉端口

默认情况下,应用程序将尝试从 224.5.23.2:10006 接收视觉帧。 你可以在 config/moduli/moduli.xml 中更改默认地址和端口。

裁判端口

默认情况下,应用程序将尝试从 224.5.23.1:10003 接收裁判消息。 你可以在 config/moduli/moduli.xml 中更改默认地址和端口。

自动裁判检测器

可以通过autoreferee配置部分更改自动裁判的行为。它包含检测器的参数。

规则约束和几何参数

规则定义的参数可以在ruleConst下找到。

默认几何参数从 config/geometry/DIV_A.txt 读取。 可以在 config/moduli/moduli.xml 中更改要读取的文件。

激活内置的 ssl-game-controller

自动裁判系统内置了官方的 ssl-game-controller。要激活它,请在 config/moduli/moduli.xml 中将 gameController 改为 true。 自动裁判系统将在内部启动游戏控制器并连接到其 websocket API,以便能够通过Ref视图发送一些基本命令。 该视图还包含一个启动完整游戏控制器 UI 的按钮。

注意: 嵌入式 GC 默认不包含。建议使用最新可用版本。如果你想使用嵌入式 GC,请使用以下命令启动自动裁判:

./gradlew :run -PcompactBuild=false

About

An automatic referee for the RoboCup Small Size League

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.3%
  • Other 0.7%