PX4学习笔记:2. 真正开始入门px4开发

上一篇ROS及PX4环境搭建


1. 前言

这学期有一门机器人导论课程,最近在课程实验中使用了turtlebot,对ROS下机器人应用的开发有了深入的理解,经验在px4开发上也同样适用。
根据turtlebot实验的经验,我开始有能力阅读px4例程源码。根据官方教程的指导,我学会了如何用gazebo仿真环境下运行C++程序。

  • turtlebot和px4的区别
    • 编译方式
      • 前者是工作空间下catkin_make
      • 后者是工作空间的Firmware下“make……”
    • 程序包结构
      • 后者是
        px4程序包结构
    • 运行C++程序的方式
      • 前者是新开一个终端,输入rosrun experiment1 talker
      • 后者是在刚刚那唯一的终端中按下回车,然后输入C++文件名

2. Hello sky

2.1 代码构成

搭建你的第一个应用(Hello Shy)

2.2 运行

  • Step 1
zth@SugoAsurada:~/catkin_ws/Firmware$ sudo make px4_sitl_default gazebo
  • Step 2:在上面的那个终端中按下回车,然后输入cpp文件名,回车。
    在这里插入图片描述

2.3 理解代码

PX4源码初学习(px4_simple_app.c)
关于px4中uorb以及px4_simple_app的终极理解

3. px4在环仿真实验

3.1 参考文献

参考博客:px4在环仿真实践操作

3.2 实验内容

主要验证博客中在gazebo下的在环仿真的部分。

3.3 实验问题解决

过程中碰到的一些问题:

  • 博客中的cmake命令和…之间有个空格。
  • make命令紧接着cmake命令执行,在同一目录下。
  • 如果报错就在这两句命令前加sudo来解决。
  • make posix_sitl_default gazebo该句我没有执行成功,我执行的是zth@SugoAsurada:~/catkin_ws/Firmware$ sudo make px4_sitl_default gazebo

3.4 实验步骤

  1. 首先在QGC中规划路线,点击添加航点,然后在右边的任务一栏中点击添加一些参数。
    在这里插入图片描述
  2. 点击上传。
    在这里插入图片描述
  3. 回到这个页面,开始任务。
    在这里插入图片描述
    飞机起飞,按照设定的路径飞行。
    在这里插入图片描述
  4. 换带有摄像头的无人机,进行上述实验。在这里插入图片描述
  5. QGC控制两架无人机起飞。
  • 存在的问题:环境中共有3架无人机,无人机1无法控制。
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44324181/article/details/111771327