ros에서 어떠한 기능을 만들기 위해 NODE를 생성하고 이 NODE를 실행시켜야 한다.

 

그런데 Node ROS Package안에 만들어야 한다. 따라서 원하는 기능을 만들어 보기 위해서는 가장먼저 Package를 생성을 해야 한다. Package를 만들고 그 안에 Node를 만들어 실행해 보자.

 

1.       ROS Package 만들기

A.     새로운 ROS Package를 만들기 위해서 terminal을 열고 아래 명령어

                       i.         cd ~/catkin_ws/src              // 경로 변경
catkin_create_pkg TEST roscpp   // TEST
패키지 생성
catkin_create_pkg [
생성할 패키지 이름] [의존성패키지1 의존성패키지2 ........]

B.     위 명령어를 통해 TEST라는 Package를 생성하고 roscpp 의존성을 설정했다.

                       i.         roscpp ros 내에서 C++ code를 사용하기 위해서 필요한 패키지이다.

C.     위 명령어를 실행하면 아래와 같이 ~/catkin_ws/src/TEST 폴더와 그 아래 [CMakeLists.txt], [package.xml] 파일이 생성된다.

2.      ROS Node 만들기

A.     ROS에서 Node를 만들어 보자
Node
를 만들기 위해서는 기본적으로 node 내용에 해당하는 cpp 혹은 py 파일을 만들고 해당 파일의 정보를 CMakeLists.txt에 추가하여 빌드 하면 Node를 실행 할 수 있다.

3.      ROS Node 기본 형태 (C++)

A.     Node를 만들어 보았으니 이제 Node Code를 추가해 보죠.
추가할 Code의 내용은 "~~~~ WELCOME TO ROS WORLD ~~~~~~" 를 출력

                       i.         #include <iostream>
int main(int argc, char **argv) //c++
의 기본 함수형태
{
    std::cout << "~~~~ WELCOME TO ROS WORLD ~~~~~~" << std::endl; // Print
    return 0;
}

B.     추가로 Build를 위해 CMakeLists.txt package.xml을 작성해 줘야 하는데 지금 당장은 우선 아래 코드를 복사해서 붙여 넣기

                       i.         <CMakeLists.txt>

1.      cmake_minimum_required(VERSION 3.0.2)
project(TEST)
find_package(catkin REQUIRED COMPONENTS roscpp)

################################################
## Declare ROS messages, services and actions ##
################################################

################################################
## Declare ROS dynamic reconfigure parameters ##
################################################

###################################
## catkin specific configuration ##
###################################
catkin_package(

)

###########
## Build ##
###########

include_directories(
include
${catkin_INCLUDE_DIRS}
)

add_executable(tmp src/ros1_node.cpp)
#target_link_libraries(tmp ${catkin_LIBRARIES}) # Libraries Link:

#############
## Install ##
#############

#############
## Testing ##
#############

                      ii.         <package.xml>

1.      <?xml version="1.0"?>
<package format="2">
  <name>TEST</name>
  <version>0.0.0</version>
  <description>The TEST package</description>

  <maintainer email="test1804@todo.todo">test1804</maintainer>

  <license>TODO</license>

  <buildtool_depend>catkin</buildtool_depend>


  <!-- The export tag contains other, unspecified, tags -->
  <export>
    <!-- Other tools can request additional information be placed here -->
  </export>
</package>

C.     위와 같이 Code를 입력 후 Workspace에서 catkin_make를 실행 해보면 아래와 같이 Build가 됨

D.     그리고 rosrun TEST tmp 명령어

ros에서 어떠한 기능을 만들기 위해 NODE를 생성하고 이 NODE를 실행시켜야 한다.

 

그런데 Node ROS Package안에 만들어야 한다. 따라서 원하는 기능을 만들어 보기 위해서는 가장먼저 Package를 생성을 해야 한다. Package를 만들고 그 안에 Node를 만들어 실행해 보자.

 

1.       ROS Package 만들기

A.     새로운 ROS Package를 만들기 위해서 terminal을 열고 아래 명령어

                       i.         cd ~/catkin_ws/src              // 경로 변경
catkin_create_pkg TEST roscpp   // TEST
패키지 생성
catkin_create_pkg [
생성할 패키지 이름] [의존성패키지1 의존성패키지2 ........]

B.     위 명령어를 통해 TEST라는 Package를 생성하고 roscpp 의존성을 설정했다.

                       i.         roscpp ros 내에서 C++ code를 사용하기 위해서 필요한 패키지이다.

C.     위 명령어를 실행하면 아래와 같이 ~/catkin_ws/src/TEST 폴더와 그 아래 [CMakeLists.txt], [package.xml] 파일이 생성된다.

2.      ROS Node 만들기

A.     ROS에서 Node를 만들어 보자
Node
를 만들기 위해서는 기본적으로 node 내용에 해당하는 cpp 혹은 py 파일을 만들고 해당 파일의 정보를 CMakeLists.txt에 추가하여 빌드 하면 Node를 실행 할 수 있다.

3.      ROS Node 기본 형태 (C++)

A.     Node를 만들어 보았으니 이제 Node Code를 추가해 보죠.
추가할 Code의 내용은 "~~~~ WELCOME TO ROS WORLD ~~~~~~" 를 출력

                       i.         #include <iostream>
int main(int argc, char **argv) //c++
의 기본 함수형태
{
    std::cout << "~~~~ WELCOME TO ROS WORLD ~~~~~~" << std::endl; // Print
    return 0;
}

B.     추가로 Build를 위해 CMakeLists.txt package.xml을 작성해 줘야 하는데 지금 당장은 우선 아래 코드를 복사해서 붙여 넣기

                       i.         <CMakeLists.txt>

1.      cmake_minimum_required(VERSION 3.0.2)
project(TEST)
find_package(catkin REQUIRED COMPONENTS roscpp)

################################################
## Declare ROS messages, services and actions ##
################################################

################################################
## Declare ROS dynamic reconfigure parameters ##
################################################

###################################
## catkin specific configuration ##
###################################
catkin_package(

)

###########
## Build ##
###########

include_directories(
include
${catkin_INCLUDE_DIRS}
)

add_executable(tmp src/ros1_node.cpp)
#target_link_libraries(tmp ${catkin_LIBRARIES}) # Libraries Link:

#############
## Install ##
#############

#############
## Testing ##
#############

                      ii.         <package.xml>

1.      <?xml version="1.0"?>
<package format="2">
  <name>TEST</name>
  <version>0.0.0</version>
  <description>The TEST package</description>

  <maintainer email="test1804@todo.todo">test1804</maintainer>

  <license>TODO</license>

  <buildtool_depend>catkin</buildtool_depend>


  <!-- The export tag contains other, unspecified, tags -->
  <export>
    <!-- Other tools can request additional information be placed here -->
  </export>
</package>

C.     위와 같이 Code를 입력 후 Workspace에서 catkin_make를 실행 해보면 아래와 같이 Build가 됨

D.     그리고 rosrun TEST tmp 명령어

+ Recent posts