You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下Webots R2023b外部控制器无法指定机器人名称及修改端口

解决Webots R2023b多外部控制器端口与机器人名称匹配问题

核心问题分析

你遇到的问题源于两个关键错误:

  • 参数顺序错误:--robot-name 是 webots-controller.exe 的自身选项,必须放在控制器脚本路径之前,否则会被当成Python脚本的参数,Webots无法识别。
  • 引号冗余:Windows环境下不需要给机器人名称加单引号,额外的单引号会让Webots尝试匹配名称为'Abot'(带单引号)的机器人,而你的场景中机器人名称是Abot,导致匹配失败。

正确命令写法

1. Windows CMD 命令(控制Abot)

"D:\Program Files\Webots\msys64\mingw64\bin\webots-controller.exe" --robot-name=Abot "D:\Abot\controllers\robot_run\robot_run.py"

2. Python 脚本中的命令列表

command = [
    "D:\\Program Files\\Webots\\msys64\\mingw64\\bin\\webots-controller.exe",
    "--robot-name=Abot",
    "D:\\Abot\\controllers\\robot_run\\robot_run.py"
]

控制监督者节点(robot)的命令

只需替换--robot-name参数值:

"D:\Program Files\Webots\msys64\mingw64\bin\webots-controller.exe" --robot-name=robot "D:\你的监督者控制器路径.py"

修改端口的方法

方式1:让Webots监听指定端口

启动Webots时添加--port选项,指定自定义端口:

"D:\Program Files\Webots\webots.exe" --port=1235 your_world.wbt

方式2:让控制器连接指定端口的Webots实例

在控制器命令中添加--port选项,放在--robot-name之后、脚本路径之前:

"D:\Program Files\Webots\msys64\mingw64\bin\webots-controller.exe" --robot-name=Abot --port=1235 "D:\Abot\controllers\robot_run\robot_run.py"

验证方法

  1. 确保Webots场景中两个机器人的控制器均设置为extern。
  2. 分别启动两个控制器进程,若Webots界面中机器人节点旁显示控制器已连接(无红色感叹号),则说明配置成功。

内容的提问来源于stack exchange,提问作者ning

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 16:04:51