四.开发记录之ubuntu系统安装ROS和开发环境
2022/1/12 7:09:39
本文主要是介绍四.开发记录之ubuntu系统安装ROS和开发环境,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
专栏系列文章如下:
一.开发记录之AHRS、惯导传感器SBG-Ellipse-N传感器配置和使用_goldqiu的博客-CSDN博客_sbg传感器数据格式
二.开发记录之派勤工控机远程使用和ubuntu和ROS环境配置_goldqiu的博客-CSDN博客
三.开发记录之移动硬盘装ubuntu系统的配置、环境、各类软件安装和备份等_goldqiu的博客-CSDN博客
这篇主要是讲在ubuntu18.04安装ros-melodic
安装ROS
选择清华源
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list' sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt update sudo apt install ros-melodic-desktop-full echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc source ~/.bashrc sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential sudo rosdep init rosdep update
sudo rosdep init 出现
ERROR: cannot download default sources list from:
第一步:
首先进入
https://github.com/ros/rosdistrogithub.com/ros/rosdistro
去把这个包下载下来。
第二步:
修改这个包中rosdep/source.list.d/下的文件20-default.list,将这个文件中指向http://raw.githubusercontent.com的url地址全部修改为指向本地文件的地址,也就是该下载好的包的地址,以下是改好的样例:
# os-specific listings first yaml file:///home/xxx/rosdistro/rosdep/osx-homebrew.yaml osx # generic yaml file:///home/xxx/rosdistro/rosdep/base.yaml yaml file:///home/xxx/rosdistro/rosdep/python.yaml yaml file:///home/xxx/rosdistro/rosdep/ruby.yaml gbpdistro file:///home/xxx/rosdistro/releases/fuerte.yaml fuerte # newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
注意:在py语言中:url本地文件地址格式是:file://+文件地址,后面更改其他文件中地址的时候也一样。
第三步:
修改/usr/lib/python2.7/dist-packages/rosdep2该文件夹下面的sources_list.py文件,如下:
# default file to download with 'init' command in order to bootstrap # rosdep DEFAULT_SOURCES_LIST_URL = 'file:///home/xxx/rosdistro/rosdep/sources.list.d/20-default.list' # seconds to wait before aborting download of rosdep data
第四步
修改以下两个文件里面的代码:
/usr/lib/python2.7/dist-packages/rosdep2/rep3.py
/usr/lib/python2.7/dist-packages/rosdistro/init.py
下面是分别修改后的样例:
/usr/lib/python2.7/dist-packages/rosdep2/rep3.py文件:
# location of targets file for processing gbpdistro files REP3_TARGETS_URL = 'file:///home/xxx/rosdistro/releases/targets.yaml' # seconds to wait before aborting download of gbpdistro data
/usr/lib/python2.7/dist-packages/rosdistro/init.py的文件:
# index information DEFAULT_INDEX_URL = 'file:///home/xxx/rosdistro/index-v4.yaml' def get_index_url():
然后进行sudo rosdep init :
安装ros开发环境
官网下载deb
https://code.visualstudio.com/docs/?dv=linux64_deb
sudo dpkg -i xxxx.deb
安装这些插件
创建工作空间:
mkdir -p test_ws/src cd test_ws/ catkin_make code .
vscode 中编译 ros:
快捷键 ctrl + shift + B 调用编译,选择:catkin_make:build
或修改.vscode/tasks.json 文件
{ // 有关 tasks.json 格式的文档,请参见 // https://go.microsoft.com/fwlink/?LinkId=733558 "version": "2.0.0", "tasks": [ { "label": "catkin_make:debug", //代表提示的描述性信息 "type": "shell", //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行 "command": "catkin_make",//这个是我们需要运行的命令 "args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2” "group": {"kind":"build","isDefault":true}, "presentation": { "reveal": "always"//可选always或者silence,代表是否输出信息 }, "problemMatcher": "$msCompile" } ] }
创建 ROS 功能包
选定 src 右击 ---> create catkin package
设置包名 添加依赖
添加cpp
/* 控制台输出 HelloVSCode !!! */ #include "ros/ros.h" int main(int argc, char *argv[]) { setlocale(LC_ALL,""); //执行节点初始化 ros::init(argc,argv,"HelloVSCode"); //输出日志 ROS_INFO("Hello VSCode!!!"); return 0; }
如果没有代码提示:
修改 .vscode/c_cpp_properties.json
设置 "cppStandard": "c++17"
配置 CMakeLists.txt:
add_executable(节点名称 src/C++源文件名.cpp ) target_link_libraries(节点名称 ${catkin_LIBRARIES} )
目前这里好像会出节点tab不到的情况,执行这一句后可以了
rospack list
后面单独出一个ROS或者cmake项目调试的,用QT、Vscode或clion。
QT更常用来qmake做UI,clion则是cmake,Vscode则是cmake和ros比较方便
这篇关于四.开发记录之ubuntu系统安装ROS和开发环境的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-102025 蛇年,J 人直播带货内容审核团队必备的办公软件有哪 6 款?
- 2025-01-10高效运营背后的支柱:文档管理优化指南
- 2025-01-10年末压力山大?试试优化你的文档管理
- 2025-01-10跨部门协作中的进度追踪重要性解析
- 2025-01-10总结 JavaScript 中的变体函数调用方式
- 2025-01-10HR团队如何通过数据驱动提升管理效率?6个策略
- 2025-01-10WBS实战指南:如何一步步构建高效项目管理框架?
- 2025-01-10实现精准执行:团队协作新方法
- 2025-01-10如何使用工具提升活动策划团队的工作效率?几个必备工具推荐
- 2025-01-10WiX 标签使用介绍:打造专业安装程序的利器