
radarku/ardupilot-sitl本镜像用于在Docker容器中运行ArduPilot软件在环仿真器(SITL),提供了一个便捷、隔离的环境来测试和开发ArduPilot自动驾驶系统,无需依赖物理硬件。
bashdocker pull radarku/ardupilot-sitl
基本构建命令:
bashdocker build --tag ardupilot github.com/radarku/ardupilot-sitl-docker
指定ArduPilot版本构建:
bashdocker build --tag ardupilot --build-arg COPTER_TAG=Copter-4.0.1 github.com/radarku/ardupilot-sitl-docker
注: 如果未指定COPTER_TAG,构建将使用Dockerfile中定义的默认版本,当前默认版本为Copter-4.0.3
基本运行命令:
bashdocker run -it --rm -p 5760:5760 ardupilot
连接到仿真器(从主机):
bashmavproxy.py --master=tcp:localhost:5760
可通过--env参数或--env-file参数配置仿真环境。例如,运行APMRover2实例并映射到5761端口:
bashdocker run -it --rm -p 5761:5760 --env VEHICLE=APMRover2 ardupilot
使用环境变量文件:
bashdocker run -it --rm -p 5761:5760 --env-file env.list ardupilot
| 变量名 | 默认值 | 描述 |
|---|---|---|
| INSTANCE | 0 | 仿真实例ID |
| LAT | 42.3898 | 初始纬度 |
| LON | -71.1476 | 初始经度 |
| ALT | 14 | 初始高度(米) |
| DIR | 270 | 初始方向(度) |
| MODEL | + | 仿真模型 |
| SPEEDUP | 1 | 仿真加速倍数 |
| VEHICLE | arducopter | 飞行器类型 |
bashdocker run -it --rm -p 5761:5760 \ --env VEHICLE=APMRover2 \ --env MODEL=rover-skid \ --env LAT=39.9656 \ --env LON=-75.1810 \ --env ALT=276 \ --env DIR=180 \ --env SPEEDUP=2 \ ardupilot
支持模型: octa-quad、tri、singlecopter、firefly、gazebo-iris、calibration、hexa、heli、+、heli-compound、dodeca-hexa、heli-dual、coaxcopter、X、quad、y6、IrisRos、octa
支持模型: rover、gazebo-rover、rover-skid、calibration
支持模型: vectored
支持模型: gazebo-zephyr、CRRCSim、last_letter、plane-vtail、plane、quadplane-tilttri、quadplane、quadplane-tilttrivec、calibration、plane-elevon、plane-tailsitter、plane-dspoilers、quadplane-tri、quadplane-cl84、jsbsim
创建docker-compose.yml文件:
yamlversion: '3' services: ardupilot-sitl: image: radarku/ardupilot-sitl ports: - "5760:5760" environment: - VEHICLE=arducopter - MODEL=X - LAT=39.9042 - LON=116.4074 - ALT=50 - DIR=90 - SPEEDUP=1 tty: true stdin_open: true restart: unless-stopped
启动服务:
bashdocker-compose up -d
查看日志:
bashdocker-compose logs -f
停止服务:
bashdocker-compose down
启动仿真器后,可以使用MAVProxy连接:
bashmavproxy.py --master=tcp:localhost:5760
或使用其他地面站软件(如Mission Planner、QGroundControl)连接到localhost:5760端口。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务