一、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进行处理,非常感谢!