ros 編寫 helloworld 程式

2021-08-21 15:32:09 字數 2853 閱讀 1779

************************************

ros 編寫 helloworld 程式

(參考:

************************************

1,先建立工作空間~/catkin_ws

(參考:

a,ros工作環境檢查

$ export | grep ros

b,將ros的配置文件加入到teminal啟動指令碼裡

$ source /opt/ros/melodic/setup.bash

c,建立工程空間

$ mkdir -p ~/catkin_ws/src

$ cd ~/catkin_ws/src

$ catkin_init_workspace

d,將ros使用者自己的工程目錄配置到bash裡

$ gedit ~/.bashrc

在其最後一行加入

export ros_package_path=~/catkin_ws:$ros_package_path

e,編譯工程

$ cd ~/catkin_ws/

$ catkin_make

f,將catkin_make加入到shell裡

$ source devel/setup.bash

$ echo $ros_package_path

2,在工作空間~/catkin_ws下建立包pkg目錄beginner_tutorials

好處是通過建立包自動生成package.xml和cmakelists.txt

(參考:www.douban.com/note/516843231/)

建立ros包

a,ros包必備的有兩個檔案:cmakelists.txt和 package.xml

基於catkin工程來建立自己的ros包,需要在workspace的src下建立包目錄

再在包目錄裡建立cmakelists.txt和 package.xml檔案。

建乙個包就要在src下建乙個包的目錄,其下也得有這兩個檔案,有關如何先建立catkin的workspace上面1已經介紹,也可參閱

b,切換到catkin工程目錄的src

$ cd ~/catkin_ws/src

c,使用catkin_create_pkg建立包

$ catkin_create_pkg beginner_tutorials std_msgs rospy roscpp

安裝tree命令,檢視目錄樹

$ sudo apt  install tree

$ tree beginner_tutorials/

d,編譯包

$ cd ~/catkin_ws/

$ catkin_make

e,把包加入當前的shell

$ . ~/catkin_ws/devel/setup.bash

f,檢測,看ros檔案系統下是否已經有了這個包

$ cd

$ roscd beginner_tutorials/

可以切換~/catkin_ws/src/beginner_tutorials$路徑,建包完成

g,返回原始碼目錄,檢視下整體目錄樹,準備寫hello world **

$ cd ~/catkin_ws/src

$ tree beginner_tutorials

3,在/beginner_tutorials/src目錄下建立hello.cpp源**檔案

a,進入~/catkin_ws/src/beginner_tutorials/src原始碼目錄

$ cd ~/catkin_ws/src/beginner_tutorials/src

b,安裝vim,建立hello.cpp源**

$ sudo apt install vim

$ vim hello.cpp

c,拷貝下面**到vim編輯器,然後按zz,儲存並退出

#include

int main(int argc, char **argv)

d,修改編譯makefile檔案 cmakelists.txt

$ cd ~/catkin_ws/src/beginner_tutorials

$ gedit cmakelists.txt

檢查下面內容

cmake_minimum_required(version 2.8.3)

project(beginner_tutorials)

find_package(catkin required components roscpp rospy std_msgs)

include_directories($)

add_executable(hello ./src/hello.cpp)

target_link_libraries(hello $)

對比發現缺少最後兩行,所以末尾加入下面**,然後儲存並退出

##add hello.cpp by uunubt ##

add_executable(hello ./src/hello.cpp)

target_link_libraries(hello $)

##e,回到~/catkin_ws編譯程式

$ cd ~/catkin_ws

$ catkin_make

f,測試hello world c++程式

開啟乙個終端裡執行

$ roscore

另外乙個終端裡執行 rosrun beginner_tutorials hello

$ rosrun beginner_tutorials hello

終端有hello, ros!訊息,完成hello例程。

************************************

編寫核心模組hello world

1 準備環境 mkdir src lkm example cd src lkm example 2 建立檔案 lkm example.c include include include module license gpl module author robert w.oliver ii modul...

實驗二 編寫輸出「Hello World 」

二 在eclipse介面中選擇file new,新建乙個j a project 之後在右鍵點選j a project選擇package,起名為lihuitong 在右鍵點選lihuitong,選擇class,起名為hello 輸出 為 package lihuitong public class h...

yaf框架下編寫Hello World程式

假設我的例子的站點目錄為 var www yaf test 我採用的目錄結構如下 index.php 入口檔案 public htaccess 重寫規則 css img js conf controllers index.php 預設控制器 views index 控制器 index.phtml 預...