ROS2+PX4开发环境配置

一、ROS2安装

Ubuntu18.04的ros2版本:Eloquent
参考 址:https://docs.ros.org/en/eloquent/Installation/Linux-Install-Debians.html

二、PX4相关环境安装

首先需要安装PX4的编译环境见(主要是编译和下载最新固件,也可用于软件在环)https://docs.px4.io/master/en/dev_setup/dev_env_linux_ubuntu.html
参考 址:

  • FastDDS安装:https://docs.px4.io/master/en/dev_setup/fast-dds-installation.html
  • 使用PX4-ROS2桥接器:https://docs.px4.io/master/en/ros/ros2_comm.html

1、安装JavaSDK8

Java SDK8下载 址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
下载Linux x64 Compressed Archive包
解压软件包到/usr/local,即执行以下命令

然后配置环境变量,在本地用户需要配置~/.bashrc,root用户需要配置/root/.bashrc,我是这两个文件都配置了,在这两个文件中末尾添加如下内容

测试java是否安装成功

2、安装Gradle

构建Fast-RTPS-Gen需要安装Gradle,建议通过sdkman来安装Gradle
首先执行以下命令安装sdkman

然后重新打开一个终端执行以下命令

3、源码安装Foonathan memory

为了构建FastDDS我们需要安装foonathan_memory

**注意:**如果最后一步失败使用sudo来安装

4、源码安装Fast DDS

注意FastDDS的版本需要是1.8.2及以上

5、源码安装Fast-RTPS-Gen

Fast-RTPS-Gen是Fast RTPS(DDS)的IDL生成工具,必须在FastDDS之后安装。

注意:如果提示找不到JAVA_HOME的话,我们回到章节2.1配置一下JAVA的环境变量到/root/.bashrc,然后进入root用户下执行安装指令

三、构建PX4-ROS2桥接器

然后更改其中的RTPS_CONFIG参数将其在Pixhawk4的TELEM2口输出,如下图所示

2、测试

需要USB转串口芯片连接Pixhawk4的TELEM2口(推荐FT232芯片)在电脑终端中执行

软件在环则不需要硬件连接,直接执行下面命令

然后另开一个终端执行ros2 topic list即可看到px4的消息主题,如果订阅消息没有输出或遇到问题,注意检查以下几点

  • 串口设备和串口波特率配置
  • 软件版本,PX4一定是2021年9月3日之前的最新版本。
  • 如果连接的是Pixhawk,注意其是否已经初始化成功,否则订阅不到传感器消息。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年6月11日
下一篇 2022年6月11日

相关推荐