ROS 1, 2, anaconda 같이 사용

  • ROS 2가 새롭게 나왔다고 하고, 앞으로는 ROS 2가 대세로 사용될거라고 한다. 
  • 그래서 공부하다 보니 ROS 1에 비해 아직은 패키지라든가 문서 등이 많지는 않은것 같다. 
  • 그래서 ROS 1을 가지고 스터디할 필요성이 느껴 ROS 1noetic, ROS 2 foxy 를 같이 설치해서 사용하기로 했다.
  • 설정을 잘 해줘야 패스 등이 꼬이지 않는다. 
  • 일단은 ros1 에서 roscore 실행되고, ros2 에서 talker 실행되는 것을 확인했다. 

 

 

ros 1, ros 2 설치

 

noetic/Installation/Ubuntu - ROS Wiki

If you rely on these packages, please support OSRF. These packages are built and hosted on infrastructure maintained and paid for by the Open Source Robotics Foundation, a 501(c)(3) non-profit organization. If OSRF were to receive one penny for each downlo

wiki.ros.org

 

 

Installation — ROS 2 Documentation: Foxy documentation

You're reading the documentation for an older, but still supported, version of ROS 2. For information on the latest version, please have a look at Humble. Installation Options for installing ROS 2 Foxy Fitzroy: Which install should you choose? Installing f

docs.ros.org

 

bashrc 설정

  • 아래 reference를 보면 보다 정확할 듯 싶다. 
  • 아래 ROS_V 를 1 or 2 로 바꾼 후, 아래 명령어를 입력해주고 사용하면된다.
    • source ~/.bashrc 
  • 아래는 내가 설정한 .bashrc 파일이다.
# conda env
alias env_base='conda activate base; echo base env activated'
alias env_ROS1='conda activate ROS1; echo ROS1 env activated'
alias env_ROS2='conda activate ROS2; echo ROS2 env activated'


# Set bashrc command
ROS_V=2 # Select ROS Version 1 or 2

if [ $ROS_V -eq 1 ]; then
    alias cw='cd ~/catkin_ws'
    alias cs='cd ~/catkin_ws/src'
    alias cm='cd ~/catkin_ws && catkin_make'

    source /opt/ros/noetic/setup.bash
    source ~/catkin_ws/devel/setup.bash
    source /usr/share/gazebo/setup.sh

    export ROS_MASTER_URI=http://localhost:11311
    export ROS_HOSTNAME=localhost

elif [ $ROS_V -eq 2 ]; then
    source /opt/ros/foxy/setup.bash
    source ~/robot_ws/install/local_setup.bash
    source ~/robot_ws/ws_moveit2/install/setup.bash

    source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash
    source /usr/share/vcstool-completion/vcs.bash
    source /usr/share/colcon_cd/function/colcon_cd.sh
    export _colcon_cd_root=~/robot_ws

    export ROS_DOMAIN_ID=7
    export ROS_NAMESPACE=robot1

    export RMW_IMPLEMENTATION=rmw_fastrtps_cpp
    # export RMW_IMPLEMENTATION=rmw_connext_cpp
    # export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
    # export RMW_IMPLEMENTATION=rmw_gurumdds_cpp

    export RCUTILS_CONSOLE_OUTPUT_FORMAT='[{severity} {time}] [{name}]: {message} ({function_name}() at {file_name}:{line_number})'
    #  export RCUTILS_CONSOLE_OUTPUT_FORMAT='[{severity}]: {message}'
    #  export RCUTILS_COLORIZED_OUTPUT=1
    #  export RCUTILS_LOGGING_USE_STDOUT=0
    #  export RCUTILS_LOGGING_BUFFERED_STREAM=1
fi

 

 

 

 

Reference

 

ROS1, ROS2, Conda 같이 쓰기

http://wiki.ros.org/noetic/Installation/Ubuntuhttps://docs.ros.org/en/foxy/Installation.htmlhttps://www.anaconda.com/products/individua

velog.io

 

How do I prevent Conda from activating the base environment by default?

I recently installed anaconda2 on my Mac. By default Conda is configured to activate the base environment when I open a fresh terminal session. I want access to the Conda commands (i.e. I want the ...

stackoverflow.com

 

 

'ROS' 카테고리의 다른 글

[ROS] RealSense ROS 설치  (0) 2022.08.12
[ROS] Package 생성  (0) 2022.08.08
  • realsense-ros 설치
sudo apt-get install ros-$ROS_DISTRO-realsense2-camera

 

자세한 것은 홈페이지 참조

https://github.com/IntelRealSense/realsense-ros

 

GitHub - IntelRealSense/realsense-ros: Intel(R) RealSense(TM) ROS Wrapper for D400 series, SR300 Camera and T265 Tracking Module

Intel(R) RealSense(TM) ROS Wrapper for D400 series, SR300 Camera and T265 Tracking Module - GitHub - IntelRealSense/realsense-ros: Intel(R) RealSense(TM) ROS Wrapper for D400 series, SR300 Camera a...

github.com

 

 

  • realsense ros 설치 및 실행 방법

https://doongdoongeee.tistory.com/87

 

ROS에서 Realsense D435i 실행시키기

Intel의 Realsense D435i 카메라를 ROS에서 실행시키는 과정이다. 카메라를 PC에 연결시킨다. 이 때, USB3.0 포트를 사용하여 연결을 진행한다. 가장 먼저 카메라가 잘 작동하는지 확인해보기 위해 Realsense

doongdoongeee.tistory.com

 

'ROS' 카테고리의 다른 글

[ ROS ] ROS 1, 2, anaconda 같이 사용  (0) 2023.03.10
[ROS] Package 생성  (0) 2022.08.08

 

  • CMakeList.txt 
    • cmake 및 catkin_make를 하기 위해 참조하는 파일 
  • package.xml 
    • 패키지에 대한 정보 포함

 

1. 작업공간 폴더로 이동

 

    cd ~/catkin_ws/src

 

 

2. 패키지 생성 

 

  Ex.   catkin_create_pkg  tutorials std_msgs rospy roscpp

      --> catkin_create_pkg <패키지명> [의존 1] [의존 2] [의존 3] .... 

 

3. 패키지 빌드 

  ■ 각각의 패키지가 아닌 workspace에서 빌드하는 것이 권장됨

 

    cd ~/catkin_ws

    catkin_make

 

4. make를 하고 나면 /opt/ros/melodic에서 볼 수 있는 것과 같이 devel 하위 디렉터리에 유사한 구조가 생성된다.

    작업 공간을 ROS 환경에 추가하려면 devel 내의 setup.bash 파일을 source 시켜주어야 한다.

 

    source ~/catkin_ws/devel/setup.bash

 

5. 패키지를 만들때 의존시켰던 패키지들을 rospack 명령어를 통해 확인 가능하다. 

 

    rospack depends1 tutorials

 

6. 패키지를 만들었으니 다시 빌드를 해줌

 

    cd ~/catkin_ws

    catkin_make

 

7. pakage.xml 을 수정해줌

 

   package.xml에는 패키지 이름, 설명, 관리자, 라이선스 등의 정보를 적어 줄 수 있고

   또한 의존성 태그를 통해 종속이 필요한 패키지들을 필요에 맞게 수정할 수 있다

 

참고자료:

https://shkit.tistory.com/5

http://wiki.ros.org/ROS/Tutorials/CreatingPackage

 

ROS/Tutorials/CreatingPackage - ROS Wiki

Using roscreate Before we create a package, let's see how the roscreate-pkg command-line tool works. This creates a new ROS package. All ROS packages consist of the many similar files : manifests, CMakeLists.txt, mainpage.dox, and Makefiles. roscreate-pkg

wiki.ros.org

 

'ROS' 카테고리의 다른 글

[ ROS ] ROS 1, 2, anaconda 같이 사용  (0) 2023.03.10
[ROS] RealSense ROS 설치  (0) 2022.08.12

+ Recent posts