找回密码
 立即注册
monkey_pro 该用户已被删除
发表于 2019-3-24 21:55:42
22960
  上一次我们讲了上位机控制飞控的神器Dronekit,可以在上位机写Python程序就能直接控制飞控了。但是我们做工程的都知道,仿真是非常重要的,总不能写一个程序就屁颠屁颠去试,结果发现是一个非常小的错误,这就很尴尬了。。。所以一个好的仿真环境是非常重要的!
  这一次我们就讲如何搭建基于Dronekit的仿真系统搭建。我们需要用到的工具有Dronekit-sitl、mavproxy以及任意一个地面站。首先要安装Dronekit-sitl,跟之前讲的Dronekit一样,直接用pip安装就好了,没有什么技术含量。需要注意的是Dronekit-sitl和Dronekit一样也是只支持Python2的。。。真是搞不懂Python2都快被淘汰了他们还不支持Python3,好烦。。。
  好了,然后就按照mavproxy吧,我在我的Windows电脑上按照官网教程装的没遇到什么问题,应该没太有坑。mavproxy被称为开发者的地面站,其本身其实是一个小型地面站的,但是它具有良好的开发性,但是界面话做的不太好,配合其他地面站正好可以互补,简直是绝配啊,连官网都推荐的组合,一定不要错过哦。然后就是任意一个地面站软件,我装的是MissionPlanner,其他的应该也一样的。
  以上三个工具装好之后,就可以开始愉快的开始仿真了。打开一个cmd终端,输入dronekit-sitl rover --home=36.364527,120.684733,10,0 ,因为我们仿真的是小车,因此这里选的参数是rover,如果你要仿真多轴无人机可以改成copter,当然还有很多选项,具体可以查看官网看看都支持什么系统,然后后面是设置home位置,前三个参数分别是纬度、经度、海拔,第四个参数是朝向,如果是第一次用这个命令,会自动下载相应的仿真硬件,我是用过很多次了,输入上面这条命令以后显示的是这样的


这时候再重新打开一个新的cmd终端,然后输入以下命令:mavproxy --master tcp:127.0.0.1:5760 --sitl 127.0.0.1:5501 --out 127.0.0.1:14550 --out 127.0.0.1:14551
然后显示的是这样的

注意这里第一个是mavproxy但是官网是mavproxy.py,我也不知道为什么反正按官网这样就是不行,去掉.py就可以了,当初坑了我好一会呢,所以说官网也不能完全相信啊。这里相当于读入一个tcp端口,然后建立两个新的端口的通信,这里有两个out,一个给地面站用,一个给程序用就可以实现我们最初说的功能了,注意地面站用的时候要选的是UDP方式,怎么样,是不是很简单呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
使用道具 举报 回复
发新帖
您需要登录后才可以回帖 登录 | 立即注册