SimRobot 用来校准和模拟机器人在比赛中的行为。但是需要注意的一点是,SimRobot 中模拟的场景是不真实的。更具体的我再去看看官方文档。BHumanCodeRelease-coderelease2017/Build/Linux/SimRobot/Release
。
基本的东西
该软件的环境在bhuman的Config/Scenes目录下,后缀为ros2的文件。其中 RemoteRobot.ros2 是远程调试机器人时使用的环境配置,BH2016 为模拟比赛用的环境配置。
点击菜单栏的Scene Graph按钮,可调出各种子模块。
.ros 文件
.ros 文件使用 XML 语言来描述场地信息,可以对场地信息进行修改,包括增加和删除场地中的机器人,增加场地中的球的个数等等。
控制台命令
双击Scene Graph的Console即可调出控制台,可以查看机器人的传感器参数及各种状态。
两个常用命令:
gc
该指令控制仿真的游戏状态。例如输入gc playing
后回车,可以开始比赛,双击Robocup即可看到比赛状态。
vd
该指令用于查看各机器人的representation等其他参数。
例如输入vd representation:BallModel
可以查看机器人自己认为的球模型的各种参数。
可以调用theBallModel.estimate.position.x()
来获得球相对于机器人的位置,可以在角文件中作为条件判断让机器人作出下一行动。