RoboCup仿真3D底层通信模块介绍(二)

server和agent之间通信的msg格式 & agent的效应器



效应器用于在仿真中起作用,它们被发送到server以改变比赛状态。即通过效应器来控制机器人的action。

一、General Effectors(一般效应器)

1.Create Effector(创造效应器)

机器人最初连接到server时是不可见的,不能影响仿真器。它只拥有一个所谓的创造效应器。机器人用这个效应器来建议server根据一个传递参数的场景描述文件去创建它。这个文件被用来创建物理表示和所有进一步的效应器和传感器。
消息格式:

Message format: (scene <filename>)
Example message: (scene rsg/agent/nao/nao.rsg)

2.HingeJoint Effector (铰链关节效应器)

第一个参数是铰链关节效应器的名字。第二个参数为指定的关节每个周期角度变化的度数。如果要求的角度变化超出力的最大值所能提供的角速度,则会使用角速度的最大值(7.035deg/cycle)。
消息格式:

Message format: (<name> <ax>)
<name> - the name of the corresponding hinge joint
<ax> - the angular change rate in deg/cycle (max joint speed 7.035deg/cycle)
Example message: (lae3 5.3)

3.UniversalJoint Effector(万向关节效应器)

万向关节效应器可以沿着两个特定的自由轴转动。第一个参数是万向关节效应器的名字,第二、三个参数是两个自由度关节转动的角速度。同样,如果要求的角度变化超出力的最大值所能提供的角速度,则会使用角速度的最大值(7.035deg/cycle)。
消息格式:

Message format: (<name> <ax1> <ax2>)
<name> - the name of the corresponding universal joint
<ax1> <ax2> - the angular change rates in deg/cycle (max joint speed 7.035deg/cycle)
Example message: (lae1 2 -2.3 1.2)

二、Soccer Effectors(足球仿真比赛专用效应器)

1.Init Effector(初始化效应器)

对每个机器人来说初始化命令只在创建效应器发送过场景命令后发送一次。它用合规的队伍和合规的号码将这个机器人注册为一个成员。一个队伍的所有球员必须使用相同的队名和不同的编号。如果机器人发送0作为球员编号,这个号码会被server自动分配为下一个空闲号码。球队开场上在哪边取决于哪只球队先连接上。
消息格式:

Message format: (init (unum <playernumber>)(teamname <yourteamname>))
<playernumber> - the player number of the player
<yourteamname> - the name of the player’s team
Example message: (init (unum 1)(teamname FHO))

2.Beam Effector(传送效应器)

传送效应器允许球员在开场之前和进球之后把自己定位到球场上。x、y坐标定义了球场上的坐标,rot的值允许定义球员的水平角度。0度是指x轴正向,90度指y轴正向。
消息格式:

Message format: (beam <x> <y> <rot>)
<x> <y> - target position on the soccer field in meter
<rot> - Z-rotation angle on target position in degrees
Example message: (beam 10.0 -10.0 0.0)

3.Say Effector(喊话效应器)

喊话效应器允许球员之间通过广播交流。
消息格式:

Message format: (say <message>)
<message> - up to 20 characters, which may be taken from the ASCII printing character subset
[0x20, 0x7E] except the white space character (t) and the normal brackets ( and )
Example message: (say helloworld)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值