【RK3399Pro学习笔记】三、Debian 9 安装 ROS (Thinker Edge R)
目录
- 配置源
- 设置 Key
- 安装
- 初始化rosdep
- 环境配置
- 测试
- 安装rosinstall
- 卸载
平台:华硕 Thinker Edge R 瑞芯微 RK3399Pro
固件版本:Tinker_Edge_R-Debian-Stretch-V1.0.4-20200615
参考资料:
RK3399(Debian9 - stretch) 安装 ROS Lunar —— WB8933
Debian 9 strech 安装 ROS lunar —— 白菜菜白
更新linux时候提示无法“由于没有公钥,无法验证下列签名 ***”的解决方案 —— sanbo_xyz
rosdep update一定能通过简单方法 —— 不加辣先生
配置源
更换国内源:
sudo sh -c 'echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
设置 Key
sudo apt-cache search -n dirmngr
sudo apt-get install dirmngr
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 421C365BD9FF1F717815A3895523BAEEB01FA116
安装
sudo apt update
若出现如下报错,
则导入其公钥即可
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654 #此处F42ED6FBAB17C654需要是错误提示的key
再次
sudo apt update
后不再报错:
sudo apt install ros-lunar-desktop-full
初始化rosdep
(20220317补充:使用国内源的方法:树莓派Raspbian Buster/Debian 10 安装ROS)
将下面仓库的内容clone到本地
git clone https://hub.fastgit.org/ros/rosdistro.git
记录rosdistro存放地址,例如/home/linaro/rosdistro,linaro为用户名
修改如下文件,其中python2.7视系统默认python版本而定,可通过如下命令查阅,下同
python --version
sudo nano /usr/lib/python2.7/dist-packages/rosdep2/rep3.py
将REP3_TARGETS_URL = ‘https://raw.githubusercontent.com/ros/rosdistro/master/releases/targets.yaml’ 替换成 REP3_TARGETS_URL = ‘file:///home/linaro/rosdistro/releases/targets.yaml’
替换后的/home/linaro 即为第一步clone内容的存放地址
修改如下文件
sudo nano /usr/lib/python2.7/dist-packages/rosdistro/__init__.py
将原来文件中的 DEFAULT_INDEX_URL = ‘https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml’ 替换成 DEFAULT_INDEX_URL = ‘file:///home/linaro/rosdistro/index-v4.yaml’
替换后的/home/linaro 即为第一步clone内容的存放地址
到/etc/ros/rosdep/sources.list.d下创建20-default.list文件
cd /etc
创建ros文件夹
sudo mkdir ros && cd ros
创建rosdep文件夹
sudo mkdir rosdep && cd rosdep
创建sources.list.d文件夹
sudo mkdir sources.list.d && cd sources.list.d
创建20-default.list文档
sudo nano /etc/ros/rosdep/sources.list.d/20-default.list
其内容为
# os-specific listings first
yaml file:///home/linaro/rosdistro/rosdep/osx-homebrew.yaml osx# generic
yaml file:///home/linaro/rosdistro/rosdep/base.yaml
yaml file:///home/linaro/rosdistro/rosdep/python.yaml
yaml file:///home/linaro/rosdistro/rosdep/ruby.yaml
gbpdistro file:///home/linaro/rosdistro/releases/fuerte.yaml fuerte# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
注意的是yaml file://表示固定格式/home…表示文件目录,所以是yaml file:///
在终端中执行
rosdep update
环境配置
echo "source /opt/ros/lunar/setup.bash" >> ~/.bashrc
source ~/.bashrc
测试
参考ROS安装并运行小乌龟
在终端中运行以下命令:
roscore
新开一个终端,运行以下命令,打开小乌龟窗口:
rosrun turtlesim turtlesim_node
新开一个终端,运行以下命令,打开乌龟控制窗口,可使用方向键控制乌龟运动:
rosrun turtlesim turtle_teleop_key
选中控制窗口,按方向键,可看到小乌龟窗口中乌龟在运动
新开一个终端,运行以下命令,可以看到ROS的图形化界面,展示结点的关系:
rqt_graph
至此,测试完成,说明ROS安装没有问题。
安装rosinstall
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
卸载
sudo apt remove ros-*
【RK3399Pro学习笔记】三、Debian 9 安装 ROS (Thinker Edge R)相关推荐
- 【RK3399Pro学习笔记】十六、ROS中的常用可视化工具
目录 测试 rqt_console rqt_graph rqt_plot rqt_image_view rqt rviz gazebo 平台:华硕 Thinker Edge R 瑞芯微 RK3399P ...
- 【RK3399Pro学习笔记】十五、ROS中launch启动文件的使用方法
目录 Launch文件语法 <launch><launch><launch> <node><node><node> 参数设置 & ...
- 【RK3399Pro学习笔记】十四、ROS中tf坐标系广播与监听的编程实现
目录 创建功能包 如何实现一个tf广播器 创建tf广播器代码(C++) 如何实现一个tf监听器 创建tf监听器代码(C++) 配置编译规则 编译并运行 python 编写程序 turtle_tf_br ...
- 【RK3399Pro学习笔记】十二、ROS参数的使用与编程方法
目录 创建功能包 参数命令行使用 YAML参数文件 rosparam C++ 编写程序 配置CMakeLists.txt 编译并运行 python 编写程序 运行 平台:华硕 Thinker Edge ...
- Kubernetes学习笔记三:Docker安装,Docker使用,编写Dockerfile,制作容器镜像,上传docker镜像
文章目录 Docker的安装 Docker的使用:docker run命令 查看本地存在的镜像:docker images命令 编写Dockerfile,制作容器镜像 docker build制作镜像 ...
- linux系统学习笔记6——debian系统分屏操作(亲测)
debian系统分屏 刚插上HDMI链接屏幕后,发现两个屏幕是复制的效果 `步骤` xrandr | grep connecteda 1.查看现有的屏幕型号 由上图可以看到,一个是eDP-1 分辨率1 ...
- 【RK3399Pro学习笔记】十七、Debian安装ORB-SLAM3和单目demo的运行
目录 安装OpenCV 3 注意事项 安装Glew 安装Pangolin 安装boost 安装Eigen 3 安装ORB_SLAM3 试用 平台:华硕 Thinker Edge R 瑞芯微 RK339 ...
- ROS学习笔记三:创建ROS软件包
,# ROS学习笔记三:创建ROS软件包 catkin软件包的组成 一个软件包必须满足如下条件才能被称之为catkin软件包: 这个软件包必须包含一个catkin编译文件package.xml(man ...
- 【RK3399Pro学习笔记】十三、ROS中的坐标系管理系统
目录 TF功能包能干什么? TF坐标变换如何实现? 例程 view_frames tf_echo rviz 平台:华硕 Thinker Edge R 瑞芯微 RK3399Pro 固件版本:Tinker ...
最新文章
- 三目运算符 改变a标签的class属性
- const 和 static 的作用
- XFTP无法将宿主机文件上传到虚拟机的解决方案
- linux tcp在传输数据的时候断网了_选择最合适的协议 让传输数据更灵敏
- 事务的状态(状态模式)
- Git cherry-pick后再merge出现一个“奇怪”的现象
- java程序设置软件界面(jFrame)的最小大小
- 大工18秋计算机文化基础在线测试2,大工18秋《计算机文化基础》在线测试2【答案】...
- zabbix4.0.1中文乱码问题
- 用C++完成华氏温度换摄氏温度
- 深度系统linux deepin如何按装,安装深度Deepin 15.11操作系统的方法
- 阿尔伯塔大学知名计算机工程学教授,阿尔伯塔大学计算机工程硕士解析
- GD32官方固件库(标准外设库)下载
- 做直播能有多赚钱,Python告诉你
- Mysql 与 python 的使用
- LuaBox积木编程开发手册-精编版
- seaweedfs 调研
- 三年的硬件开发转软件开发:
- Eclipse里面web项目上面的小地球消失的原因
- 2020 字节跳动java面试笔试题 (含面试题解析)