Ubuntu / ROS 命令合集(自用笔记)

Ubuntu / ROS 命令合集(自用笔记)

本博客内容将整理Ubuntu 操作系统 、 ROS、Arduino单片机等 相关命令,自用笔记,欢迎交流。不定期更新。

1 Ubuntu 相关

1.1 中文输入法(谷歌拼音)安装

1.安装汉语语言包

sudo apt-get install language-pack-zh-hans

执行该命令后,系统就会自动安装所需要的汉语语言包。

2.安装谷歌拼音输入法

sudo apt-get install fcitx-googlepinyin

执行该命令后,系统就会自动安装fcitx和goolgepinyin程序,也同时会安装一些配置fcitx的工具。

3.安装语言包
点击右上角“齿轮”图标,打开SystemSettings–>Language Support,系统会进行语言包搜索,照系统提示安装语言包。

4.选择 “fcitx”
选择“键盘输入方式系统 (keyboard input method system)”为:fcitx。

5.重启
重启电脑或者注销用户。进入界面后可以看到fcitx输入法框架已经运行,系统状态栏的输入法图标已经改变。

6.配置输入法
打开终端,执行fcitx-configtool命令,在如图界面进行输入法配置。点击左下角“+”号增加谷歌拼音输入法,即可完成配置。

7.补充:当输入法无法显示候选词时:
命令行输入sudo apt remove fcitx-module-kimpanel再重启fcitx即可。
(ps.除了KDE环境,其他环境都可以这样操作)

1.2 更换软件源(转载)

https://blog.csdn.net/baidu_36602427/article/details/86551862

1.3 USB转串口驱动设置(原创)

https://blog.csdn.net/weixin_44037313/article/details/108534229

1.4 Ubuntu 命令

(1) 编译xxx.cpp文件,并生成可执行程序.out文件。「在.cpp文件存放目录打开终端」

g++ xxx.cpp -o xxx.out -lstdc++

P.S. 如果是xxx.c文件,g++ 换成 gcc
(2)执行编译好的.out文件。「在.out文件存放目录打开终端」

./xxx.out

(3)检查串口设备列表

ls /dev/tty*

P.S. 如果有类似ttyUSB0这样的设备,说明具备USB转串口的驱动。
(4)检查USB设备列表

lsusb

1.5 设置开机自启动项(转载)

https://blog.csdn.net/qq_41628231/article/details/81367109
https://blog.csdn.net/baidu_34319491/article/details/106456571

1.6 Ubuntu下重置USB端口(即断电后重新上电)(转载)

https://blog.csdn.net/weixin_43935474/article/details/102171095

1.7 ubuntu18.04安装ROS Melodic(最详细配置)(转载)

https://blog.csdn.net/qq_41450811/article/details/99079041?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164281927616780255224736%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164281927616780255224736&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-99079041.pc_search_result_cache&utm_term=ubuntu18.04%E5%AE%89%E8%A3%85ros&spm=1018.2226.3001.4187

1.8Ubuntu18.04安装教程每一步都有、多图。(Win、Ubuntu双系统)(转载)

https://blog.csdn.net/weixin_45915259/article/details/123928722?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166545344116782417075438%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=166545344116782417075438&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_click~default-1-123928722-null-null.142v52opensearch_v2,201v3add_ask&utm_term=ubuntu18.04%E5%8F%8C%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B&spm=1018.2226.3001.4187

实测遇到问题:
(1)sudo rosdep 找不到命令
解决方案:
安装依赖

sudo apt-get install python-rosdep

(2)出现错误

sudo rosdep init 
ERROR: cannot download default sources list from: https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list Website may be down.

反复换网络也不好用,解决方案:

#打开hosts文件
sudo gedit /etc/hosts
#在文件末尾添加
151.101.84.133  raw.githubusercontent.com
#保存后退出再尝试

(3)rosdep update 失败,可尝试增加TIMEOUT的时间:

更改 /usr/lib/python2.7/dist-packages/rosdep2/下的三个文件sources_list.py、gbpdistro_support.py、rep3.py
中的DOWNLOAD_TIMEOUT = 15.0值,改大一点就可以了。

(4)rosdep update 失败,可尝试修改/etc/ros/rosdep/sources.list.d中的20-default.list文件

# os-specific listings first
yaml https://raw.github.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx

# generic
yaml https://raw.github.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://raw.github.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://raw.github.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://raw.github.com/ros/rosdistro/master/releases/fuerte.yaml fuerte

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

1.9 ROS一键安装(转载-鱼香ROS)

wget http://fishros.com/install -O fishros && . fishros

2 ROS 命令

2.1创建工作空间

(1)创建工作空间

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

(2)编译工作空间

cd ~/catkin_ws
catkin_make

(3)设置环境变量(可选)
只在当前终端生效(不建议使用,建议直接将环境变量设置在终端配置文件中)

cd ~/catkin_ws
source devel/setup.bash

(4)将环境变量设置在终端配置文件中
gedit 编辑器方法,常用
使用 gedit 编辑器进入.bashrc

sudo gedit ~/.bashrc

进入.bashrc后,在文件最后加上一行:

source ~/catkin_ws/devel/setup.bash

按save保存即可。
vi编辑器方法,不常用
使用vi编辑器进入.bashrc

vi ~/.bashrc

输入a进入编辑模式,在文件最后加上一行:

source ~/catkin_ws/devel/setup.bash

按esc键退出编辑模式,输入(注意是冒号,要用到shift键)使光标回到最下,输入wq退出编辑器。

(5)生效环境变量

source ~/.bashrc

(6)检查环境变量

echo $ROS_PACKAGE_PATH

得到输出带有/home/<user name>/catkin_ws/src 即为成功。

2.2 ROS主从机通讯

(1)首先主机(Manifold 2)和从机(Jetson Nano)要连接到同一个wifi网络上,并分别设置固定IP。使用ifconfig命令查看本机的局域网IP地址。

以我自己的设备为例:
(主机)Manifold 2的计算机名为DJI,192.168.3.100
(从机)Jetson Nano计算机名为nano01,192.168.1.101

(2)打开hosts文件,在hosts文件中,加入彼此的IP地址和对应的计算机名。

sudo gedit /etc/hosts

主机中加入:

192.168.3.101 nano01

从机中加入:

192.168.3.100 dji

修改完成后,使用ping命令来测试一下是否连通。
(3)Ros Master
在系统中只能有一个Master,需要让从机知道Master的位置在从机中需要对环境变量进行配置具体为两种方法,从机命令如下:

  • 只在当前终端生效:
$ export ROS_MASTER_URI=http://dji:11311

注意:这里的dji是主机名

  • 在所有终端生效(未测试):
sudo gedit ~/.bashrc

在最后添加

export ROS_HOSTNAME=192.168.3.101
export ROS_MASTER_URI=http://192.168.3.100:11311

之后应该再source一下。(暂未尝试)

注意:只修改从机的,主机不用修改!!!

(4)测试

在主机中运行:

roscore
rosrun turtlesim turtlesim_node

在从机中运行:

export ROS_MASTER_URI=http://dji:11311
rosrun turtlesim turtle_teleop_key

用从机的键盘可以实现对主机中小乌龟的控制,则多机通信配置正确。(反过来也可以)

2.3 功能包相关指令

(1)仅编译一个功能包

catkin_make -DCATKIN_WHITELIST_PACKAGES="package_name"

注意:运行该语句之后会一直只编译这个包,如需恢复,需运行:

catkin_make -DCATKIN_WHITELIST_PACKAGES=""

(2)加快编译速度
如果还需要加快编译速度,可以开多线程,比如 catkin_make -j4 就是开 4 个线程。

(3) Clock skew detected 错误解决方法
如果编译报 Clock skew detected 的错误,是因为 linux 系统只能编译 文件修改时间比当前系统时间早的文件。需要联网更新时间或使用 date -s 命令把时间 设置成当前的时间。例:

sudo date -s "2021-6-8 21:47:30"

2.4 查看节点、话题、TF

(1)查看TF树命令:

rosrun rqt_tf_tree rqt_tf_tree

(2)查看节点与话题关系图

rosrun rqt_graph rqt_graph

(3)查看话题列表

rostopic list

(4)查看节点列表

rosnode list

(5)查看话题详细信息:

rostopic info /topic_name

(6)查看节点详细信息:

rosnode info /node_name

2.5 Gazebo仿真

(1)Gazebo中机器人圆柱,球,长方体惯性矩阵推导与代码实现(转载)
https://blog.csdn.net/lzzzzzzm/article/details/119899598

2.6 ros中的TF

详细资料转载自:https://blog.csdn.net/weixin_45088783/article/details/118390611
ros中静态tf坐标关系发布方式: static_transform_publisher
static_transform_publisher工具的功能是发布两个参考系之间的静态坐标变换,两个参考系一般不发生相对位置变化。
命令的格式如下:
static_transform_publisher x y z yaw pitch roll frame_id child_frame_id period_in_ms
static_transform_publisher x y z qx qy qz qw frame_id child_frame_id period_in_ms
以上两种命令格式,需要设置坐标的偏移和旋转参数,偏移参数都使用相对于xyz三轴的坐标位移,而旋转参数第一种命令格式使用以弧度为单位的 yaw/pitch/roll三个角度(yaw是围绕x轴旋转的偏航角,pitch是围绕y轴旋转的俯仰角,roll是围绕z轴旋转的翻滚角),而第二种命令格式使用四元数表达旋转角度。发布频率以ms为单位,一般100ms比较合适。
该命令不仅可以在终端中使用,还可以在launch文件中使用,使用方式如下:

<launch>  
<node pkg="tf" type="static_transform_publisher" name="link_broadcaster" args="0 0 0 0 0 0 1 link_parent link_child 100" />  
</launch>

3 Arduino 相关

(1)安装Arduino 2C实测

sudo apt-get install arduino 

(2)当Arduino IDE 的 Serial Port无法选择时,卸载与其冲突的brltty 2C实测

sudo apt-get remove brltty

4 Jetson Nano 相关

(1)安装QT Jetson Nano实测

sudo apt-get install qt5-default qtcreator -y
sudo reboot

重启之后就可以直接通过命令

qtcreator

打开qtcreator编译器了。
但是并不是所有Qt组件都默认安装了,比如我需要的qt串口库就需要自行安装,命令如下:

sudo apt-get install libqt5serialport5-dev

5 Cartographer算法运行超级详细步骤(待测试)

https://blog.csdn.net/Fredric18/article/details/101521609

6 四元数与欧拉角RPY计算关系

(1)已知RPY求四元数
ow = cos(P/2)cos(R/2)cos(Y/2)-sin(P/2)sin(R/2)sin(Y/2)
ox = cos(R/2)cos(Y/2)sin(P/2)-cos(P/2)sin(R/2)sin(Y/2)
oy = cos(P/2)cos(Y/2)sin(R/2)+cos(R/2)sin(P/2)sin(Y/2)
oz = cos(P/2)cos(R/2)sin(Y/2)+cos(Y/2)sin(P/2)sin(R/2)

特殊——平面移动机器人(R=0,P=0)
ow=1
ox=0
oy=0
oz=sin(Y/2)

(2)已知四元数求RPY
??
在这里插入图片描述

安装ROS指令主要分为以下几步: 1. 添加ROS软件源:首先需要在系统中添加ROS软件源。可以通过下面的指令将ROS软件源添加到 /etc/apt/sources.list.d/ros-latest.list 文件中。 ``` $ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' ``` 2. 添加ROS公钥:接下来需要添加ROS公钥,以确保软件包的完整性和安全性。使用以下命令下载并添加ROS公钥: ``` $ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116 ``` 3. 更新软件包索引:添加ROS软件源和公钥后,需要更新软件包索引以确保可以安装最新版本的ROS软件包。使用以下命令更新软件包索引: ``` $ sudo apt-get update ``` 4. 安装ROS:现在可以安装ROS了。使用以下命令安装ROS完整版: ``` $ sudo apt-get install ros-melodic-desktop-full ``` 5. 初始化rosdep:在使用ROS之前,需要初始化rosdep,它用于管理ROS软件包之间的依赖关系。使用以下命令初始化rosdep: ``` $ sudo rosdep init $ rosdep update ``` 6. 设置环境变量:为了能够正确地使用ROS,需要设置ROS环境变量。可以将以下命令添加到 ~/.bashrc 文件中: ``` $ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc $ source ~/.bashrc ``` 7. 安装ROS工具:最后,可以安装一些ROS工具,以便更方便地使用ROS。例如,可以使用以下命令安装ROS可视化工具rviz和ROS包管理器rosdep: ``` $ sudo apt-get install ros-melodic-rviz ros-melodic-rosdep ``` 完成上述步骤后,ROS就已经安装完成了。可以使用roscore命令启动ROS核心,并开始使用ROS
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Howard-DUT

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值