文章目录
- 前言
- 一、概述
- 二、开发环境搭建
- 三、多旋翼MAVROS自主控制接口
- 四、无人船(车)MAVROS自主控制接口
- 五、二次开发基础
- 六、控制LED灯
- 七、自定义串口驱动
- 八、Guided控制接口
- 九、输出自定义PWM信号
- 十、添加自定义MAVLINK消息和QGC通信
- 十一、自定义日志
- 十二、自定义参数
前言
ArduPilot是一个多功能和开源的自动驾驶系统,支持多种车辆类型:多旋翼、传统直升机、固定翼飞机、船只、潜水器、无人车等。其源代码是由一大群专业人士和爱好者开发。
官方wiki:
https://ardupilot.org/ardupilot/ https://ardupilot.org/dev/
本教程主要是讲解基于ArduPilot固件的二次开发,适用于没有任何相关开发经验的朋友。
硬件:
超维USV-M系列无人船
pix2.4.8飞控
软件:
ArduPilot 4.4
QGC4.2
课程内容暂时包括下面这些,后面有空了会继续补充
一、概述
二、开发环境搭建
文档地址:
三、多旋翼MAVROS自主控制接口
源码地址:
https://gitee.com/Mbot_admin/hyper-drone.git
四、无人船(车)MAVROS自主控制接口
源码地址:
https://gitee.com/Mbot_admin/hyper-drone.git
先下载源码:
然后编译
然后启动仿真,在ardupilot/Rover目录下执行:
打开仿真后,新建apm.launch如下:
然后启动apm.launch
启动成功后如下:
然后启动guided控制节点:
在~/hyper-drone工作空间路径下打开终端执行:
执行成功后打印如下:
仿真中的无人船(车)会自动切换到Guided模式,然后按指令自主的运动
五、二次开发基础
六、控制LED灯
七、自定义串口驱动
八、Guided控制接口
九、输出自定义PWM信号
十、添加自定义MAVLINK消息和QGC通信
十一、自定义日志
十二、自定义参数