安装依赖
安装 Epic Games Launcher 并至少下载 UE 4.27。
安装 VS2022,勾选“使用 C++ 的桌面开发”和 Windows 10 SDK 10.0.19041(或更高)
获取并编译 AirSim 插件
git clone [https://github.com/Microsoft/AirSim.git](https://github.com/Microsoft/AirSim.git)
cd AirSim
build.cmd // 用 Developer Command Prompt for VS 2022 执行
编译完成后会在 AirSim\Unreal\Plugins 生成插件二进制文件
生成 Blocks 示例的 UE 工程
cd AirSim\Unreal\Environments\Blocks
update\_from\_git.bat // 生成 Blocks.sln
打开并编译 Blocks 项目
双击 Blocks.sln → VS2022 启动。
将 Blocks 设为启动项目,配置选 DebugGame_Editor + Win64(或 Development_Editor)
按 F5(或“调试→开始调试”)编译并启动 UE 编辑器。
运行仿真
在 UE 编辑器里点击 ▶ Play,选择汽车/无人机后即可开始仿真;此时 Blocks 的可执行文件(Blocks-Win64-DebugGame.exe 等)会输出到
Blocks\Binaries\Win64\ 目录下,可直接双击运行18。
一、JSON 模板(Windows 端)
把文件放到 C:\Users\<用户名>\Documents\AirSim\settings.json
:
{
"SettingsVersion": 1.2,
"SimMode": "Multirotor",
"ClockType": "SteppableClock",
"Vehicles": {
"PX4": {
"VehicleType": "PX4Multirotor",
"UseSerial": false,
"UseTcp": true,
"TcpPort": 4560,
"ControlIp": "remote",
"ControlPortLocal": 14540,
"ControlPortRemote": 14580,
"LocalHostIp": "172.22.208.1", // 换成你 Windows 在 WSL/局域网里的实际 IP
"Parameters": {
"NAV_RCL_ACT": 0,
"NAV_DLL_ACT": 0,
"COM_OBL_RC_ACT": 1,
"LPE_LAT": 47.641468,
"LPE_LON": -122.140165
}
}
}
}
关键字段说明
TcpPort
: 4560 是 PX4 SITL 默认监听口;AirSim 作为 client 去连。LocalHostIp
: 必须写 Windows 网卡上与 Ubuntu/WSL 同一网段的地址,不能写 127.0.0.1。ControlPort*
给 mavros/辅助链路用,不改也行。二、启动顺序(跨机同理)
export PX4_SIM_HOST_ADDR=172.19.160.1
# 与上面 LocalHostIp 一致
b)
bash复制cd PX4-Autopilot make px4_sitl_default none_iris
直到出现 INFO [simulator] Got initial simulation connection
说明连通。三、常见连接失败排查
sudo ufw allow 4560
。echo $PX4_SIM_HOST_ADDR
能 ping 通 Windows 地址才算对。LPE_LAT/LON
改成与场景一致(Blocks 默认 47.641468, -122.140165)。四、纯 Windows 方案(无 Ubuntu)
如果只想在单台 Windows 跑,可直接用
make px4_sitl_default jmavsim
或 gazebo
,再把 JSON 里的 LocalHostIp
改成 127.0.0.1,其余字段不变,QGC 同样能自动接入。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。