本人今年年初才搭好的px4仿真,本来想着能用这个多写几个无人机的算法玩玩,一来能积累项目经验,二来能在日后的比赛中想着直接把之前写好的代码块搬到实机上去,比赛就能省事不少。但贴主本人也是吃了Linux Ubuntu的高开源性以及ros生态的高速迭代好大一亏,经常因为各种文件架构和教程不匹配啊、版本对不上啊种种疑难杂症而整的焦头烂额。而贴主本人大二由于平时学业较为繁忙并没有太多时间投入在不断的纠错改正纠错改正当中去,因此想通过这个在px4仿真上部署单目相机的案例来将贴主平日里积累的经验保存下来,分享出去。

本文章的食用前提是你的px4仿真已经搭的没问题了,能够正常使用;由于本篇文章主要是教大家怎么在px4仿真上搭摄像头的所以大家想知道px4如何搭建可以先移步别的大佬专门讲px4仿真搭建的文章。我后期也会给小伙伴们分享自己的搭建流程滴。

首先,ctrl+alt+t打开终端,在终端输入

roslaunch px4 mavros_posix_sitl.launch

 这时gazebo仿真会被打开,此时能看到一架无人机停在中间。

随后我们来草草验证一下这个仿真能不能正常运作,在刚刚roslaunch px4 mavros_posix_sitl.launch的终端窗口中输入

commander takeoff

 此时无人机会飞行到半空中2.5m左右,如果正常则证明px4仿真搭建的基本上没什么问题。(贴主已经部署过单目摄像头了所以这里会显示四条白线,如果你没有那没关系)接下来我们来部署单目摄像头,首先更改mavros_posix_sitl.launch文件的内容,这里我们直接使用roscd命令快速进入px4的包里

roscd px4

 这里可以先看一下整个PX4源码包的文件架构(熟悉下先)

 随后我们使用vim直接修改mavros_posix_sitl.launch

sudo vim launch/mavros_posix_sitl.launch

这里简单科普一下我们接下来要用的vim的用法,vim打开文件之后是不能直接进行编辑的,需要先按i键进入insert模式,之后再编辑,编辑完内容之后,按esc退出insert模式,再按:(shift+;),输入wq按enter即可保存退出。 

圈出来的是要新加进去的,直接把我圈出来的加进去就可以了;

画线的是要更改的,更改的原来的语句我把它注释在上一行了,意思就是你刚打开这个文件它应该显示的是画线上一行的语句(不带注释),你可以把它删掉或注释掉注释语法,再加上我画线的这一句。也可以在原来的基础上修改成我画线的语句;

圈出来的一定要加在画线的语句上面!!!!!

 编辑完毕保存退出即可,此时我们的无人机上已经添加了相机了,但是默认朝向是朝前的,这时我们需要更改一下朝向。

新开一个终端再次roscd 进入px4包

这时我们需要找一下iris_fpv_cam.sdf这个文件在哪的位置(本人实测有些版本的PX4固件文件架构比较剑走偏锋),我们直接使用find命令

find . -name "iris_fpv_cam.sdf"

 

然后我们直接用vim工具修改这个文件

sudo vim /你的路径

 本来是0 0 0 0 0 0的,这里我们把第五个值修改成1.57,这里是修改了xyz轴基轴的欧拉角

保存退出,再打开仿真commander takeoff把无人机飞起来

roslaunch px4 mavros_posix_sitl.launch

就能看到无人机背着朝下的摄像头啦! 

这时我们新开一个 终端输入

rqt_image_view

就可以查看我们摄像头的内容前提是在rqt里选择了摄像头图像的话题 

 后续还会继续分享贴主的开发过程,祝大家开发顺利!

天津中德应用技术大学  22无人机工程  汪涛

相关链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: