반응형

OMOROBOT/ROS2 일반 17

[ros2] 표준 좌표 및 회전 표현

@@ 표준 좌표 1. 기본 3축 오른손 법칙이 기본으로 x forward(red coloer), y left(green color), z up(blue color)를 따름 2. 지리적 위치 (Geographic locations)의 단거리 데카르트 표한의 경우 ENU를 따름 3. 접미사 프레임을 사용하여 1, 2번과 다름을 표현 -. _optical: 이미지의 경우 사용(z forward, x right, y down), TF 필요 -. _ned: 실외에서 동작하는 시스템의 경우 사용하는 센서 및 지도에 따라 NED 좌표계 사용, TF 필요 @@회전 표현 1. 쿼터니언, 회전매트릭스, 고정축 roll, pitch, yaw(각속도 표현) 3가지중 사용 권장 2. 오일러 각도 yaw, pitch, roll ..

[ros2] ros2 기본 명령어_9

1. ros2 interface show: 지정 인터페이스의 데이터 형태 출력 ros2 interface show [토픽, 서비스, 액션 타입] # 터미널 입력 (ros2 run turtlesim turtlesim_node 실행 중) ros2 interface show geometry_msgs/msg/Twist # 터미널 출력 Vector3 linear Vector3 angular # 터미널 입력 (ros2 run turtlesim turtlesim_node 실행 중) ros2 interface show turtlesim/srv/TeleportAbsolute # 터미널 출력 float32 x float32 y float32 theta --- # 터미널 입력 (ros2 run turtlesim turtle..

[ros2] ros2 기본 명령어_8

1. ros2 bag record: 토픽을 파일형태로 bag 기록 # ros2 bag record [토픽 이름] [토픽 이름] ... ros2 bag record /turtle1/cmd_vel [INFO] [rosbag2_storage]: Opened database 'rosbag2_2023_06_29-20_20_20/rosbag2_2023_06_29-20_20_20_0.db3' for READ_WRITE. [INFO] [rosbag2_transport]: Listening for topics... [INFO] [rosbag2_transport]: Subscribed to topic '/turtle1/cmd_vel' [INFO] [rosbag2_transport]: All requested topics ..

[ros2] ros2 기본 명령어_7

1. ros2 param list: 파리미터 목록 확인 ros2 param list # ros2 run turtlesim turtle_teleop_key 실행 시 /teleop_turtle: scale_angular scale_linear use_sim_time 2. ros2 param describe: 파라미터 내용 확인 # ros2 param describe [노드 이름] [파라미터 이름] ros2 param describe /teleop_turtle scale_angular # ros2 run turtlesim turtle_teleop_key 실행 시 Parameter name: scale_angular Type: double Constraints: 3. ros2 param get: 파라미터 읽기 ..

[ros2] ros2 관련 즐겨찾는 사이트 모음

"ROS2로 시작하는 로봇 프로그래밍" 책을 보면서 즐겨찾기 할만한 사이트들을 정리하여 둔다. 실질적으로 난 아직 쪼랩이라 2, 4, 6번 정도만 한번씩 들어가보게 된다. 1. ROS 커뮤니티 게시판: https://discourse.ros.org/ 2. ROS2 문서: https://docs.ros.org/ 3. ROS2 디자인 문서: https://design.ros2.org/ 4. ROS 위키: https://wiki.ros.org/ 5. ROSCon 페이지: https://roscon.ros.org/ 6. ROS2 리포지토리: https://github.com/ros2 7. REPs(ROS Enhancement Proposals): https://www.ros.org/reps/rep-0000.ht..

[ros2] ros2 기본 명령어_6

1. ros2 pkg create: 새로운 ros2 패키지 생성 ros2 pkg create [패키지 이름] # 일반적으로 --build-type 옵션도 같이 사용 # python 패키지 ros2 pkg create --build-type ament_python [패키지 이름] # c 패키지 ros2 pkg create --build-type ament_cmake [패키지 이름] 2. ros2 pkg executables: 지정 패키지의 실행 파일 목록 출력 ros2 pkg executables [패키지 이름] # 터미널 입력 (ros2 desktop 버전 설치 시 turtlesim 자동 설치) ros2 pkg executables turtlesim # 터미널 출력 turtlesim draw_square..

[ros2] colcon build 빌드 옵션

ros2에서 일반적으로 패키지를 빌드할때 워크스페이스로 이동 후 colcon build 명령어를 사용한다. 많이 사용하는 빌드 옵션에 대해서 알아보자. 1. 옵션 없음: 워크스페이스 내의 모든 패키지를 빌드 colcon build 2. --packages-select: 특정 패키지만 선택하여 빌드 colcon build --packages-select [패키지 이름] 3. --packages-up-to: 특정 패키지 및 의존성 패키지를 함께 빌드 colcon build --packages-up-to [패키지 이름] 4. --symlink-install: 빌드 시 install 폴더로 파일을 복사하는 것이 아니라 심볼릭 파일을 생성. 즉 파일을 일부 수정하면 --symlink-install 옵션을 사용하지..

[ros2] ros2가 쉬워지는 .bashrc 설정

ros2를 사용하다보면 setup.bash 파일을 source 해야하는 경우 및 긴 명령어를 사용하는 경우가 많다. 그러나 매번 수동으로 하기에는 귀찮다. 그래서 .bashrc를 사용하여 자동화 해보자. .bashrc에 내용을 추가해두면 terminal이 실행될때 해당 부분이 자동으로 실행된다. 1. 일단 ./bashrc 파일을 열어보자. gedit ~/.bashrc # 터미널을 통한 원격접속인 경우 nano ~/.bashrc를 사용하자. 2. 제일 밑줄에 아래와 같이 추가하자. # ros2 사용을 위한 환경 설정(버전에 따라 foxy 부분 수정) source /opt/ros/foxy/setup.bash # ros2 사용을 위한 환경 설정(workspace 이름에 따라 ros2_ws 부분 수정) sour..

[ros2] ros2 workspace 폴더

우리가 기본적으로 workspace를 정하고 그 내부에 src 폴더를 생성한 후 colcon build를 실행하면 worksapce 내부에 build, install, log 폴더가 생기는 것을 볼 수 있다. 그 생성된 폴더에 대하여 알아보자. 1. build : 빌드 설정 파일이 저장된다. 2. install : 패키지 내에서 생성한 msg, srv, action 관련 헤더파일과 패키지 라이브러리, 실행 파일이 저장된다. 3. log : 빌드 할 때 생성된 로그가 저장된다. 4. src : ros2 패키지의 소스파일이 저장된다. ros2_ws (workspace 이름은 일반적으로 ros2_ws를 많이 쓴다. 필수는 아님) -. build -. install -. log -. src

반응형