DroneKit-Python是一个用于控制无人机的Python库。DroneKit提供了用于控制无人机的API,其代码独立于飞控,单独运行在机载电脑(Companion Computer)或其他设备之上,通过串口或无线的方式经MAVLink协议与飞控板通信。
除了DroneKit-Python以外,还有DroneKit-Android以及DroneKit-Cloud的API供不同的开发者使用。
需要准备:
- 树莓派3B(闪迪16G_A1内存)
- PIX 2.4.8
- 杜邦线&PIX专用连接线
- 键盘&鼠标
- 优质的网络(最好能上外网)
安装镜像:
下载 Ubuntu Mate 建议安装16.04 (因为后面后面 可能要装ros)
下载链接 (可能找不到老版本,注意下载armhf版本)
https://ubuntu-mate.org/download/
利用Balena Etcher写入镜像
首先保证TF卡只有一个分区,并且已经备份了数据(先选择镜像,在选择TF卡,最后按flash,开始烧写)
然后先插入内存卡,键盘鼠标,显示线,最后在插电
启动Ubuntu mate
选择语言
设定好名字和姓名
最重要的一点:(这里不要等,直接取消)
树莓派的相关准备:
1.连接好wifi确保有网络可以使用
2.树莓派换源,更新应用(并且安装vim)先打开 终端 这个软件,先利用 sudo apt-get install vim 安装vim 后在使用vim改变软件源
3.安装相应的扩展包
先安装python的东西
sudo apt-get install python-pip python-dev
在安装编译需要的东西,要不然不能arm交叉编译
sudo apt-get install libxml2-dev libxslt1-dev zlib1g-dev python-py
4.安装安装dronekit (大约要30分钟)
sudo pip install dronekit
这是安装好的样子
现在还不能通信,需要打开树莓派的端口
sudo raspi-config
选择 interfacing options 一栏(一般在第三栏目)
在选择Serial这个选项
然后先 no 在 yes
然后最后保存 esc推出
然后重启!重启!
然后我们开始设置飞控部分
飞控设置:
MP地面站的话就在配置调试->全部参数树->搜索serial2->baud改成921,PROTOCOL=2(这里我看其他帖子写改成1,但我看官方是改成2,都尝试了一下我这里是2)->写入参数->重启飞控即可
如果用QGC的话,在载具设置->参数->搜索serial2->设置baud=921600,protocol=MAVLINK2->保存重启飞控即可
制作数据线(TX插RX RX插TX)
注意:飞控的tx连接rx,rx连接tx 我们这里连接的pix是uart2接口
测试通信
cd touch connect.py sudo vim connet.py
编写程序
from dronekit import connect vehicle = connect('/dev/serial0', wait_ready=True, baud=921600) print "Autopilot Firmware version: %s" % vehicle.version
运行程序
python connect.py
如果成功编译,便会有以下的显示
那么你就成功了! ohhhhhhhh