AirSim无人机仿真——手柄操作

本文介绍了作者在使用AirSim进行无人机仿真的经历,包括下载Windows预编译版本,尝试使用旧BETOP手柄进行控制。在遇到手柄按键映射问题后,通过x360ce工具解决了控制器与软件的兼容性问题。作者还提到了AirSim不支持键盘控制无人机,主要依赖API或XBox控制器,并计划研究DJI遥控器的兼容性。文章详细描述了手柄校准和设置过程,对手柄控制无人机的初步体验进行了分享。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于工作中有无人车仿真需求,了解到了AirSim,据了解AirSim可以仿真无人机,这个还是引起了我很大兴趣。早在5年前就飞丢过一只phantom3,目前只剩下遥控器了。。。

由于开始以操控体验为主,决定下载windows预编译的二进制版本

https://github.com/Microsoft/AirSim/releases

我下载的是v1.7.0 - Windows版本,来自github下载很慢。有

  1. AbandonedPark
  2. Africa (uneven terrain and animated animals)
  3. AirSimNH (small urban neighborhood block)
  4. Blocks ——几个方块没啥效果
  5. Building_99 ——办公楼里
  6. CityEnviron ——城市环岛,有人,车,应该不是无人机的场景,用于车仿真
  7. Coastline
  8. LandscapeMountains —— 雪山,有圆环,像是无人机比赛地图
  9. MSBuild2018 (soccer field) —— 一个足球场周边建筑,我觉得是微软的办公园区
  10. TrapCamera
  11. ZhangJiajie ——张家界,云山雾绕的仙境一般,但是山下面啥也没有
    ​ 

 下载后,可直接运行启动AirSim试飞了。

这里要注意,AirSim对于无人机,不支持键盘,键盘只能操作view。

Controlling Vehicles#

Most of our users typically use APIs to control the vehicles. However you can also control vehicles manually. You can drive the car using keyboard, gamepad or steering wheel. To fly drone manually, you will need either XBox controller or a remote control (feel free to contribute keyboard support). Please see remote control setup for more details. Alternatively you can use APIs for programmatic control or use so-called Computer Vision mode to move around in environment using the keyboard.

这里我把20年前买的BETOP手柄翻出来尝试一下,年代太久了,按键有些不灵了,拆开拿酒精擦拭了一下接触点,好使了。

起飞后发现只有Z向控制,XY向没有控制。猜测是手柄键位映射不对。

没找到配置按键的方法,就找了几个JoyStick工具,最后只有这个x360ce比较好用。它能把键盘和手柄映射为X360手柄,并在驱动中生成一个虚拟X360手柄。

 这里要注意的是

1,BETOP手柄太老,摇杆值0~255,映射的X360摇杆值是0~65535,就会导致无操作时,有偏差值 ,不在正中间。当仅操作Z向飞行时,有XY向的运动。在控制面板中各种校准也没达到0,后来在DXTweak中设置了中间值才可以。

2,生成这个虚拟X360手柄是第二个手柄,第一个是BETOP手柄,需要让AirSim选中X360手柄。一种方法是在控制面板中修改默认手柄为X360手柄,另一种方法是配置AirSim指定第2个手柄。

方法:修改Documents/AirSim/settings.json,如下,指定RemoteControlID为第2个手柄

{
  "SeeDocsAt": "https://github.com/Microsoft/AirSim/blob/master/docs/settings.md",
    "SettingsVersion": 1.2,
    "SimMode": "Multirotor",
    "Vehicles": {
        "SimpleFlight": {
            "VehicleType": "SimpleFlight",
            "RC": {
              "RemoteControlID": 1
            }
        }
    }
}
 

 看文档支持DJI摇控器,后续拿到我的摇控器再研究一下。现在的效果

AirSim

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值