ROS学习笔记——知识点点点点
Q:安装ROS时(sudo apt install ros-melodic-desktop-full)提示有几个软件包无法下载
A:更新一下软件源(apt-get update)后,再次执行安装命令(sudo apt install ros-melodic-desktop-full),会自动下载余下的软件包。
Q:ROS安装完成后,执行初始化指令(sudo rosdep init)提示找不到rosdep命令
A:首先执行rospack find rosdep,如果提示rosdep尚未安装,执行sudo apt install rospack-tools完成安装后再次执行初始化
Q:ROS安装中文还是英文版?
A:看个人的习惯,目前ubuntu对中文的支持已经很不错了。如果安装英文版可能需要麻烦一点去装输入法,而且浏览器也是默认的英文版,网页的自动翻译也会中英文反过来(这个可以调整)。短暂使用了英文版和中文版后,在网上看到一种比较折中的办法,安装中文版ubuntu,然后调整系统语言为英文,这样既可以保持文件路径为英文,也省去了装输入法和调整浏览器的麻烦。

Q:gazebo报错:[Err] [REST.cc:205] Error in REST request
A:sudo gedit ~/.ignition/fuel/config.yaml
将文件中的url: https://api.ignitionfuel.org用#注释掉,添加url: https://api.ignitionrobotics.org
Q:Gazebo的自带.so、.launch、.world文件路径
A: .so——/opt/ros/melodic/lib
.launch——/opt/ros/melodic/share/gazebo_ros/launch
.world——/usr/share/gazebo-x/worlds
通过环境变量索引。

Q:urdf转sdf
A:gz sdf -p ./name.urdf > ./name.sdf
Q:SolidWorks导出urdf在rviz/Gazebo中显示模型乱了
A:参考:http://wiki.ros.org/sw_urdf_exporter。问题在于SolidWorks版本,wiki上说到了2018版的SolidWorks在导出stl时会出错,应使用更低或者更高的版本。
Q:gazebo加载模型弹出/从高处掉落
A:对于较小的模型,全局初始坐标不是那么有影响,但是大的重的模型全局初始坐标就要注意选取整个模型接触地面的位置附近,不然gazebo的碰撞检测会将模型弹出掉落。

Q:remap使用
A:
Q:ros多机通信
A:ssh配置好的前提下,在主机.bashrc中添加:
export ROS_MASTER_URI=http://主机ip:11311
export ROS_HOSTNAME=主机ip
从机.bashrc添加:
export ROS_MASTER_URI=http://主机ip:11311
export ROS_HOSTNAME=从机ip
Q:bag转pcd
A:
方法1:不播放bag
rosrun pcl_ros bag_to_pcd <input_file.bag> <topic> <output_directory>
eg:rosrun pcl_ros bag_to_pcd 2020-05-23-19-58-35.bag /velodyne_points ./pcd
方法2:播放bag
rosbag play XXX.bag
rosrun pcl_ros pointcloud_to_pcd input:=<topic>
eg:rosrun pcl_ros pointcloud_to_pcd input:=/velodyne_points
Q:ros安装很慢
A:更换官方安装教程中的source.list,替换为国内的:
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'
更多内容参考:http://wiki.ros.org/ROS/Installation/UbuntuMirrors
Q:全局和相对名称
A:相对—— turtle1/pose
全局—— /turtle1/pose
**https://sychaichangkun.gitbooks.io/ros-tutorial-icourse163/content/chapter6/6.5.html
Q:ros参数传递的方式
A:两种方式——main函数(argc argv)+参数服务器


Q:launch详解
A:http://wiki.ros.org/roslaunch/XML
https://www.jianshu.com/p/e55850b87c7d
Q:catkin_make过程
A:

<>
Q:ROS目录文件结构
A:
- src: 源空间,存放功能包等源文件
- build: 编译空间,存放CMake和catkin的缓存信息、配置信息和其他中间文件
- devel: 开发空间,存放编译后生成的目标文件,包括头文件、动态&静态链接库、可执行文件等
- install: 安装空间,开发完成后的安装包,由catkin_make install命令创建
Q:ros-numpy安装
A:sudo apt-get install ros-melodic-ros-numpy
Q:vscode调试ros工程
A:
catkin_make -DCMAKE_EXPORT_COMPILE_COMMANDS=Yes
c_cpp_properties.json添加"compileCommands": "${workspaceFolder}/build/compile_commands.json"
待续。。。。
