廢話不多說,我們開始吧!!!
我使用的Ubuntu 18.04的系統,所以安裝的是最新的ROS版本。
以下是ROS版本和Ubuntu系統版本的對照。
安裝ROS
1 配置Ubuntu軟件庫
先配置Ubuntu存儲庫以允許 “restricted,” “universe,” and “multiverse.”
1.2設置sources.list
先將電腦設置爲接受來自packages.ros.org的軟件,然後執行命令:sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
1.3設置密鑰sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
這裏如果遇到連接到密鑰服務器的問題,可以嘗試在前面的命令中替換hkp://pgp.mit.edu:80 或 hkp://keyserver.ubuntu.com:80。
②執行安裝命令
先更新軟件包:apt-get update``` 1
2
3
4
5
6
7
8
9桌面完整版安裝:`sudo apt-get install ros-melodic-desktop-full`
2. 編寫程序
2.1創建工作環境
創建工作目錄:mkdir -p catkin_ws/src
2.2創建第一個軟件包
在工作目錄下的src文件夾下創建一個名爲beginner_tutorials的程序包:
這個程序包依賴於std_msgs、rospy、roscpp.
``` javascript
catkin_create_pkg beginner_tutorials std_msgs rospy roscpp3編寫cpp文件
在程序包的src目錄創建一個talker.cpp文件以及listener.cpp文件。
//talker.cpp
1 |
|
//listener.cpp
1 | #include "ros/ros.h" |
2.4修改Cmakelist配置
在該文件加入各項依賴關係:
1 | add_executable(talker src/talker.cpp) |
- 編譯並運行程序
依次執行下面的操作:
①Cd ~/catkin_ws
②Catkin_make
(編譯完成後,生成的可執行文件會放在
/home/demons/catkin_ws/devel/lib/beginner_tutorials下)
③ 執行roscore
這個命令是你在運行所有ROS程序前首先要運行的命令
④ 打開一個新的Terminal cd ~/catkin_ws並執行:source ./devel/setup.bash
(這個地方執行這句話是讓ROS能夠找到你想要執行的可執行文件,因爲第二步執行完成後,生成的可執行文件並不在/home/demons/catkin_ws/src/beginner_tutorials/src/下,這個時候執行第五步就會報錯: [rosrun]Couldn’t find executable named talker below /home//catkin_ws/src/beginner_tutorials.
每次運行程序前先執行一次這句話)
⑤rosrun beginner_tutorials talk
(命令格式是 rosrun [package_name] [node_name])
⑥ 再打開一個terminal cd ~/catkin_ws 再執行rosrun beginner_tutorials listener