<h1>Ubuntu虚拟机下ROS开发环境搭建(运行小乌龟) - <span class="color_h1">(学习笔记2)</span></h1><p>运行环境:Ubuntu 16.04 64位虚拟机</p><h1 style="font-size: 16px;font-weight:bold">ROS配置</h1><p> 要加载一个配置文件,就像在ROS安装过程中使用的以下命令一样,每次打开新的终端窗口时都必须运行它。</p><p>$ source /opt/ros/kinetic/setup.bash</p><p>$ source ~/catkin_ws/devel/setup.bash</p><p><img class="pimg" src="/upload/image/2019031713313253.png"/></p><p> 为了避免这个繁琐的任务,可以设置终端,使得每次打开新的终端窗口时,都读入配置文件。另外,配置ROS网络,还将常用的命令简化为快捷命令。</p><p> 首先,使用文本编辑器gedit程序来加载bashrc文件。本书使用gedit编辑文档,但也可以使用atom、sublime text、vim、emacs、nano和visual studio code等等。</p><p>$ gedit ~/.bashrc</p><p><img class="pimg" src="/upload/image/20190317133140736.png"/></p><p> 打开bashrc文件就可以看到已经有了很多设置。不要修改以前的设置,而是到bashrc文件的最底部添加以下内容(xxx.xxx.xxx.xxx是用户自己的IP地址,请参阅第31页的ifconfig了解IP地址设置)。输入了所有内容之后,保存用户的更改并退出gedit。</p><pre style="overflow-x:auto;font-size: 15px;" class="brush:bash;toolbar:false;"># Set ROS Kinetic
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash
# Set ROS Network
export ROS_HOSTNAME=xxx.xxx.xxx.xxx
export ROS_MASTER_URI=http://${ROS_HOSTNAME}:11311
# Set ROS alias command
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'</pre><p><br/></p><p>快捷命令:</p><p>cw:进入~/catkin_ws,预设的catkin工作目录</p><p>cs:进入catkin工作目录中保存源文件的~/catkin_ws/src目录</p><p>cm:在移动到catkin工作目录~/catkin_ws之后,用catkin_make命令构建ROS功能包</p><p><br/></p><p> 为了让修改了的bashrc文件发挥作用,输入如下命令。或者,如果用户关闭当前正在运行的终端窗口并运行新的终端窗口,用户也将得到相同的效果,因为用户在bashrc中所做的设置会适用于新的终端窗口。</p><p>$ source ~/.bashrc</p><p><img class="pimg" src="/upload/image/20190317133247972.png"/></p><p><br/></p><h1 style="font-size: 16px;font-weight:bold">集成开发环境(IDE)</h1><p>我们这里直接使用常规的代码编辑器进行开发,然后使用catkin_make进行编译。</p><h1 style="font-size: 16px;font-weight:bold">ROS操作测试</h1><p>开启一个命令窗口1,执行指令:roscore</p><p><img class="pimg" src="/upload/image/20190317133309866.png"/></p><p>然后开启命令窗口2</p><p>运行turtlesim功能包的turtlesim_node</p><p>打开一个新的终端并运行以下命令。那么将显示下面的消息,并执行turtlesim功能包的turtlesim_node。可以在一个单独的蓝色窗口中看到一只乌龟</p><p>$ rosrun turtlesim turtlesim_node</p><p>[INFO] [1499182058.960816044]: Starting turtlesim with node name /turtlesim</p><p>[INFO] [1499182058.966717811]: Spawning turtle [turtle1] at x=[5.544445], y=[5.544445], theta=[0.000000]</p><p><img class="pimg" src="/upload/image/20190317133321274.png"/></p><p><br/></p><p>开启窗口3,运行turtlesim功能包的turtle_teleop_key</p><p>打开一个新的终端窗口并执行以下命令。将显示下面消息,并执行turtlesim功能包</p><p>中的turtle_teleop_key。如果您按下该终端窗口上的方向键(←,→,↑,↓),您将</p><p>看到乌龟按照图3-6右侧所示的方向键移动。您必须在终端窗口中输入键盘。这看似只是</p><p>一个简单的仿真,但实体机器人也可以通过这种方式进行远程控制。</p><p>$ rosrun turtlesim turtle_teleop_key</p><p>Reading from keyboard</p><p>---------------------------</p><p>Use arrow keys to move the turtle.</p><p><img class="pimg" src="/upload/image/20190317133332186.png"/></p><p>然后通过鼠标的方向键,就可以控制小乌龟了。</p><p><img class="pimg" src="/upload/image/20190317133351672.png"/></p><p><img class="pimg" src="/upload/image/20190317133402772.png"/></p><p><br/></p><p>查看正在运行的节点(程序)信息图</p><p>在新的终端窗口中执行rqt_graph命令,这将启动rqt_graph功能包的rqt_graph节点。其结果是当前正在运行的节点(程序)的信息图</p><p>$ rqt_graph</p><p><img class="pimg" src="/upload/image/201903171334106.png"/></p>
Ubuntu虚拟机下ROS开发环境搭建(运行小乌龟) - (学习笔记2) 运行环境:Ubuntu 16.04 64位虚拟机
ROS配置 要加载一个配置文件,就像在ROS安装过程中使用的以下命令一样,每次打开新的终端窗口时都必须运行它。
$ source /opt/ros/kinetic/setup.bash
$ source ~/catkin_ws/devel/setup.bash
为了避免这个繁琐的任务,可以设置终端,使得每次打开新的终端窗口时,都读入配置文件。另外,配置ROS网络,还将常用的命令简化为快捷命令。
首先,使用文本编辑器gedit程序来加载bashrc文件。本书使用gedit编辑文档,但也可以使用atom、sublime text、vim、emacs、nano和visual studio code等等。
$ gedit ~/.bashrc
打开bashrc文件就可以看到已经有了很多设置。不要修改以前的设置,而是到bashrc文件的最底部添加以下内容(xxx.xxx.xxx.xxx是用户自己的IP地址,请参阅第31页的ifconfig了解IP地址设置)。输入了所有内容之后,保存用户的更改并退出gedit。
# Set ROS Kinetic
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash
# Set ROS Network
export ROS_HOSTNAME=xxx.xxx.xxx.xxx
export ROS_MASTER_URI=http://${ROS_HOSTNAME}:11311
# Set ROS alias command
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'
快捷命令:
cw:进入~/catkin_ws,预设的catkin工作目录
cs:进入catkin工作目录中保存源文件的~/catkin_ws/src目录
cm:在移动到catkin工作目录~/catkin_ws之后,用catkin_make命令构建ROS功能包
为了让修改了的bashrc文件发挥作用,输入如下命令。或者,如果用户关闭当前正在运行的终端窗口并运行新的终端窗口,用户也将得到相同的效果,因为用户在bashrc中所做的设置会适用于新的终端窗口。
$ source ~/.bashrc
集成开发环境(IDE) 我们这里直接使用常规的代码编辑器进行开发,然后使用catkin_make进行编译。
ROS操作测试 开启一个命令窗口1,执行指令:roscore
然后开启命令窗口2
运行turtlesim功能包的turtlesim_node
打开一个新的终端并运行以下命令。那么将显示下面的消息,并执行turtlesim功能包的turtlesim_node。可以在一个单独的蓝色窗口中看到一只乌龟
$ rosrun turtlesim turtlesim_node
[INFO] [1499182058.960816044]: Starting turtlesim with node name /turtlesim
[INFO] [1499182058.966717811]: Spawning turtle [turtle1] at x=[5.544445], y=[5.544445], theta=[0.000000]
开启窗口3,运行turtlesim功能包的turtle_teleop_key
打开一个新的终端窗口并执行以下命令。将显示下面消息,并执行turtlesim功能包
中的turtle_teleop_key。如果您按下该终端窗口上的方向键(←,→,↑,↓),您将
看到乌龟按照图3-6右侧所示的方向键移动。您必须在终端窗口中输入键盘。这看似只是
一个简单的仿真,但实体机器人也可以通过这种方式进行远程控制。
$ rosrun turtlesim turtle_teleop_key
Reading from keyboard
---------------------------
Use arrow keys to move the turtle.
然后通过鼠标的方向键,就可以控制小乌龟了。
查看正在运行的节点(程序)信息图
在新的终端窗口中执行rqt_graph命令,这将启动rqt_graph功能包的rqt_graph节点。其结果是当前正在运行的节点(程序)的信息图
$ rqt_graph