前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OrangePi Kunpeng Pro 安装 ROS2 + Gazebo

OrangePi Kunpeng Pro 安装 ROS2 + Gazebo

作者头像
小黑鸭
发布2024-06-16 12:12:51
960
发布2024-06-16 12:12:51
举报

1. 初识

1.1 到手开箱

搞来一套OrangePi Kunpeng Pro玩,来感受一下这香橙派和华子联合打造的小板子怎么样,首先开箱:

很简单的一套,相比树莓派和Jetson的包装要好上不少,小盒子方便携带和存放,这点好评;另外还配备了iPhone都不带的先进的电源适配器,真的到手开箱即用,十分nice!

PD65W的电源

接下来看板子主体

秉承着到手即用的良心原则,风扇和硕大的散热块也是出厂自带,拧下来看看:

芯片丝印是Hi1910,具体型号差不多,猜测应该是昇腾某款吧,不纠结这些,针对这种开发板先看看接口:两个HDMI输出、网口、两个MIPI的摄像头CSI信号接口、一个MIPI DSI的显示信号接口、以及大家都熟悉的40pin的引脚,对于常用的像机器人或无人机的硬件开发来说足够了。

1.2 OrangePi Kunpeng Pro

接下来看一下官方文档信息:OrangePi Kunpeng Pro采用4核64位处理器+AI处理器,集成图形处理器,支持8TOPS AI算力,拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,支持双4K高清输出(目前官方固件只支持HDMI0的输出)

对比下树莓派:

1.2 上电

秉承着到手开箱即用的原则,先不去看手册,直接外接显示器上电开机,SD卡内置了openEuler的系统,一次点亮,卡在了密码,查了下手册,密码同用户名:openEuler

缺少了自个探索的过程,有点索然无味,不过后面要折腾机器人和无人机,就得装个ROS,装ROS就得装Ubuntu,开始折腾 =.=

2. 安装Ubuntu

2.1 准备工作

下载烧录软件balenaEtcher,官网下载的比较慢,这里放一个李跳跳网站提供的链接:balenaEtcher蓝奏云from李跳跳,提取码:21ds,解压密码:LITIAOTIAO.COM

第二步就是找到合适的Ubuntu镜像,刷了原版Ubuntu镜像后没有显示器没有图像,查询OrangePi的官网,发现这个和Kunpeng Pro长得一样的兄弟AI Pro,里面有OrangePi官方的Ubuntu镜像,下一个试一下(百度网盘差评,折腾一圈才给下下来)

为了方便,这里直接把AI PRO的Ubuntu22链接贴在这里:Orange Pi AIpro相关下载

2.2 安装

下载好镜像之后使用上面的balenaEtcher烧录即可:

烧录完成后,把SD卡插入香橙派,上电,开机,成功点亮!

查了下AIPro的手册,Ubuntu的初始密码是:Mind@123

切换一下编辑器的战场,换到OrangePi Kunpeng Pro的Ubuntu系统上编辑,令人惊喜的是,系统默认已经装好了miniConda,更惊喜的是,看一下base环境的包,torch、opencv、scipy、numpy、ipython 这些包都已经默认给装好了,果然是“到手即用”,给香橙派点个大大的赞!

查看一下运行状况:

代码语言:javascript
复制
htop

开机只打开一个浏览器,大概内存大概用了1/4,SoC占用15-20%

3. 安装ROS2

3.1 设置支持UTF-8的locale编码

代码语言:javascript
复制
sudo apt update
sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

3.2 添加证书

ubuntu软件源这步可以先跳过,因为香橙派已经帮大家设置好了华为云的镜像,直接添加ROS的证书即可

代码语言:javascript
复制
sudo apt update && sudo apt install curl gnupg lsb-release
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

之后大概率会报错:

url: (7) Failed to connect to raw.githubusercontent.com port 443

别着急,老方法,https://www.ipaddress.com 里查询 raw.githubusercontent.com 的ipv4地址,复制下来,之后打开hosts文件,添加ipv4的地址和raw.githubusercontent.com字样,如图:

代码语言:javascript
复制
sudo gedit /etc/hosts

之后再执行sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg即可

接下来继续添加ROS仓库:

代码语言:javascript
复制
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

3.3 安装ROS

代码语言:javascript
复制
sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop

这一步用OrangePi Kunpeng Pro板子,并且前面按步骤来的话,一般不会出什么问题,耐心等待即可

3.4 设置环境变量

代码语言:javascript
复制
source /opt/ros/humble/setup.bash
echo " source /opt/ros/humble/setup.bash" >> ~/.bashrc

3.5 小海龟来啦

大功告成,用熟悉的小海龟来测试一下o不ok:

代码语言:javascript
复制
ros2 run turtlesim turtlesim_node

再打开一个新终端来控制小海龟

代码语言:javascript
复制
ros2 run turtlesim turtle_teleop_key

大家熟悉的小海龟出来啦!

至此,ROS2已经完毕,整个过程十分顺利,得益于 OrangePi Kunpeng Pro 的到手即玩,新手入门可以少了很多弯路,也省了很多配置的时间。


4. 运行实例

接下来在Gazebo方针环境下跑一下SLAM实例再看看OrangePi Kunpen Pro的负载情况

4.1 安装Gazebo

由于官方没有提供Arm环境下的Gazebo包,直接

代码语言:javascript
复制
sudo apt install gazebo

会提示报错:

代码语言:javascript
复制
E: Unable to locate package ros-humble-gazebo-ros

根据iuuse里官方老哥给的解决方案:

代码语言:javascript
复制
sudo add-apt-repository ppa:openrobotics/gazebo11-non-amd64
sudo apt update

接下来就可以搜索到并安装Gazebo了

代码语言:javascript
复制
sudo apt install gazebo

确实可以打开并运行,那么接下来开始尝试一下装ROS的Gazebo包:

代码语言:javascript
复制
sudo apt install ros-humble-gazebo-*

也可以搜的到了,耐心等待安装完成

4.2 安装turtlebot

接下来把Cartographer和Navigation2都给安装了:

代码语言:javascript
复制
sudo apt install ros-humble-cartographer
sudo apt install ros-humble-cartographer-ros
sudo apt install ros-humble-navigation2
sudo apt install ros-humble-nav2-bringup

1)新建工作空间

代码语言:javascript
复制
mkdir -p ~/orangepi_ws/src

2)安装turtlebot3

代码语言:javascript
复制
git clone -b humble-devel https://github.com/ROBOTIS-GIT/DynamixelSDK.git
git clone -b humble-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b humble-devel https://github.com/ROBOTIS-GIT/turtlebot3.git

3)编译

代码语言:javascript
复制
cd ..

结果想到ros2默认不给装colcon工具,自己装一个:

代码语言:javascript
复制
sudo apt-get install python3-colcon-common-extensions

装完之后再执行build

提示报错:

代码语言:javascript
复制
ModuleNotFoundError: No module named 'catkin_pkg'

那就安装catkin_pkg,顺带着给rospkg也装上,切换到根目录:

代码语言:javascript
复制
cd /
pip install catkin_pkg
pip install rospkg

接下来继续

代码语言:javascript
复制
cd ~/orangepi_ws/
colcon build --symlink-install

4)配置环境变量

代码语言:javascript
复制
echo 'source ~/orangepi_ws/install/setup.bash' >> ~/.bashrc
echo 'export ROS_DOMAIN_ID=30 #TURTLEBOT3' >> ~/.bashrc
echo 'export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:~/orangepi_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_gazebo/models' >> ~/.bashrc
source ~/.bashrc

大功告成!


看一下跑起来后的OrangePi Kunpeng Pro运行状况怎么样

一下子就拉满了,不过作为一个板载小计算卡,能够顺利抛弃了已经完全足够了,后面就可以在仿真环境里跑一些案例了。

总结

OrangePi Kunpeng Pro 的优点很明显,内置openEuler,配备PD电源,做到开箱即用;板子设计也不错,风扇噪音不大,散热良好,昇腾芯片又确保小板子的性能,接口丰富是这类板子共同的优点,也很好的继承了下来,甚至还可以外接固态,可靠性大大提升。使用起来,哪怕不用openEuler的话,也可以很方便的刷Ubuntu来实现一些需要依赖的开发工作,这次没有跑AI模型,所以对算力的优势还没有很明显的感受,下次可以试一下yolo跑跑看。

另外,截至发文这时候,听说 OrangePi Kunpeng Pro 的算力可以通过固件更新的方式最高可从 8TOPS 提升至 12TOPS,一句牛批先敬上,等这阵子忙完一定跑跑模型,到时候再分享(水)下感受。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 初识
    • 1.1 到手开箱
      • 1.2 OrangePi Kunpeng Pro
        • 1.2 上电
        • 2. 安装Ubuntu
          • 2.1 准备工作
            • 2.2 安装
            • 3. 安装ROS2
              • 3.1 设置支持UTF-8的locale编码
                • 3.2 添加证书
                  • 3.3 安装ROS
                    • 3.4 设置环境变量
                      • 3.5 小海龟来啦
                      • 4. 运行实例
                        • 4.1 安装Gazebo
                          • 4.2 安装turtlebot
                          • 总结
                          相关产品与服务
                          腾讯云 BI
                          腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档