前言
首先在wsl2中安装PX4,在windows上安装好UE4和airsim。然后按照Airsim的文档配置好PX4的相关设置,链接如下:PX4 SITL with WSL 2 - AirSim。
1.在Wins中设置防火墙开放端口
具体可以自己百度,或者参考这个链接:window如何设置防火墙开放端口 - 简书
当我按教程设置并开放了端口后,在wsl2中运行:make px4_sitl none_iris,然后运行Airsim中的block.uproject,点Play运行后,等了很久依旧没连成功。
后来自己摸索了一下,发现还是防火墙没设置好!
2.防火墙设置允许应用通过防火墙进行通信
把这里的UE4Editor都勾上,我勾上后再运行就可以正常通信了。
然后可以输入commander takeoff,让Airsim中的无人机起飞:
附:我的Airsim中settings.json中的PX4配置如下:
{
"SettingsVersion": 1.2,
"SimMode": "Multirotor",
"ClockType": "SteppableClock",
"Vehicles": {
"PX4": {
"VehicleType": "PX4Multirotor",
"UseSerial": false,
"UseTcp": true,
"TcpPort": 4560,
"LockStep": true,
"ControlIp": "172.17.9.59",
"ControlPortLocal": 14540,
"ControlPortRemote": 14580,
"LocalHostIp": "172.17.0.1"
}
}
}
#ControlIp为ubuntu子系统的ip;
#LocalHostIP为自己的wsl2的ip;
#"ControlPortLocal": 14540,"ControlPortRemote": 14580,只写一个"ControlPort": 14580好像也可以
#在ubuntu中记得export PX4_SIM_HOST_ADDR=自己的LocalHostIP,写入bashrc中,然后记得要source!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)