草稿本
我们执行的 python 脚本是在树莓派系统上,而 SITL 仿真环境是搭建在笔记本系统上的。
第一步连接网络通过ssh链接到树莓派端
ssh [email protected] -X
切换到对应文件夹
cd test
编辑对应py文件(可选)
sudo vim example2.py
执行对应python程序
//读取无人机的信息(可选)
python connect.py
//执行航点飞行示例(可选)
python example2.py
ubuntu端
切换至对应文件目录下:
cd ~/Workspace/ardupilot/ArduCopter
第一次运行,需要执行下面的命令对仿真环境进行初始化
../Tools/autotest/sim_vehicle.py -w
启动仿真平台
../Tools/autotest/sim_vehicle.py --console --map
使用 output add 命令增加树莓派 IP 接口 ip端口要与py文件中一致
output add 10.42.0.10:14550
切换到树莓派端运行python程序,同时可观察仿真平台变化
python example2.py
PC端和树莓派双向通信功能:
前提条件:了解基本的python代码并能够使用dronekit库进行编码获取和发送数据
实现的基本思路:在ubuntu中使用ssh链接树莓派 编辑并运行对应python代码,使用例如dronekit库实现获取和发送数据。
具体技术路线:
1. 连接无人机wifi,使用ssh链接树莓派端
2. 编写python代码基本指令,例如获取当前状态和运动代码
2.2(可选)在Ubuntu系统下运行仿真平台,模拟数据
3. 执行对应python代码
将上述功能与web连接,使其能够在web端直接实现控制,也就是web端与该模型的通信连接
主要问题:
1. 在Ubuntu上部署ardupilot以便使用一些功能(如启动仿真平台)
2.如何自行设置仿真平台的参数,如起始地点(默认在国外),和飞行参数(如电池电量)
3.学习并熟练使用dronekit库中的方法以便链接和调用无人机通信
4.将编写好的python文件传输到树莓派端以便树莓派端运行
3.
最后效果:
通过运行一些python文件,能够双向通信功能控制无人机的飞行包括航点飞行和获取飞机参数等
标签:仿真,树莓,python,py,通信,派端,无人机 From: https://www.cnblogs.com/q2637250611/p/18277842