본문 바로가기
  • AI 개발자가 될래요

로보틱스10

[ROS] Bag file .bag is unindexed. Run rosbag reindex. 에러 [ROS] Bag file .bag is unindexed.  Run rosbag reindex. 에러 ROS에서 .bag파일을 play할 때 나온 에러다.rosbag play $FILE_NAME.bag$ 정상의 경우라면 토픽이 발행되어야 하지만, 나는 다음과 같은 에러메세지를 받았다. 해석하자면 나의 bag파일이 인덱싱 되지 않았다는 것이다.bag파일 안에 있는 토픽들은 마치 파이썬의 딕셔너리와 같이 인덱싱이 되어있는데 이 부분에 문제가 있다는 얘기다. 필자는 ros2로 로깅된 데이터를 convert 패키지를 통해 ros의 .bag파일로 변환한 것이기 때문에아마 그 과정에서 문제가 생겼을거라 짐작된다. 이에 대한 해결 방안은 다음과 같다.rosbag reindex $FILE_NAME.bag$ reind.. 2025. 1. 21.
[ROS2] 토픽의 frame_id 정보 알아내는 명령어 / 토픽은 잘 나오지만 rviz가 안될 때 [ROS2] 토픽의 frame_id 정보 알아내는 명령어 / 토픽은 잘 나오지만 rviz가 안될 때 토픽을 rviz를 이용해 시각화하려면 "Fixed Frame" 값을 토픽의 "frame_id" 값과 일치시켜야 한다.혹시 토픽은 잘 나오고 있는데 rviz에 안나온다면 이 부분을 점검해보자.  토픽의 "frame_id" 값을 알아내려면 어떻게 해야할까? 1. 우선, 시각화할 토픽을 발행한다.토픽을 시각화하려면 발행부터 해야한다.필자의 경우에는 bag파일을 play했다. 이 명령어는 아래와 같다.ros2 bag play  2. 토픽 리스트를 확인하여 시각화할 토픽 이름을 알아낸다.토픽 리스트 확인 명령어ros2 topic list 3. 토픽의 frame_id 정보를 알아낸다.토픽 echo와 grep을 활용하.. 2024. 12. 24.
[ROS/ROS2] ROS2 bag 파일을 ROS .bag 파일로 변환하는 법 [ROS/ROS2] ROS2 bag 파일을 ROS .bag 파일로 변환하는 법 ROS로 구현된 알고리즘을 ROS2로 로깅된 데이터를 이용해 실행하려 할 때 두 버전 차이로 인해 다이렉트로는 ros에서 ros2 bag파일을 읽어오지 못한다. 그럴 때는 ros2 bag파일을 ros 파일로 변환시켜주면 된다. 1. rosbags 패키지 설치먼저 rosbags 패키지를 설치한다. pip install rosbags 만약 설치에 오류가 난다면 아나콘다 안에서의 설치 오류인지 확인해보자. (에러메세지로 확인 가능)필자의 경우 아나콘다 안에서 설치했을 때 오류가 나서 conda deactivate 후 설치했더니 정상적으로 되었다. 2. ros2 -> ros 변환그 후 아래 변수에 적절한 경로와 이름을 넣어 명령어를 .. 2024. 12. 23.
[도커/Docker] 중지된 컨테이너 한번에 삭제하는 명령어 [도커/Docker] 중지된 컨테이너 한번에 삭제하는 명령어 1. 실행 중 혹은 중지된 컨테이너 보는 명령어docker ps -a 명령어 수행 결과 실행 중인 컨테이너는 STATUS 정보가 Up ~~ 식으로 실행된 지 몇시간 지났다 라고 뜰 것이고,중지된 컨테이너는 아래 화면처럼 Exited ~ 라고 뜰 것이다.  2. 중지된 상태의 컨테이너 한번에 삭제 명령어중지된 상태의 컨테이너는 종료된 것이 아니기 때문에 백그라운드 어딘가에서 실행되고 있어 용량을 차지할 것이다.고로 삭제할 필요성이 있다. 2.1. 컨테이너 중지 및 삭제컨테이너를 삭제하기 위해서는 사전에 중지되어야 한다.- 컨테이너 중지docker stop - 컨테이너 삭제docker rm  삭제할 컨테이너가 많을 때, 위의 명령어를 한 줄 한 줄.. 2024. 12. 23.
[도커/Docker] 도커 run 실행 후 실행 중인 컨테이너에 접속하는 명령어 [도커/Docker] 도커 run 실행 후 실행 중인 컨테이너에 접속하는 명령어 1. 도커 실행우선, 도커를 실행하기 위해서는 run 명령을 써주면 된다.docker run -it /bin/bash run을 할 때 각종 args를 넣어주는데, 각자의 환경과 목적에 맞는 인수를 넣어주면 된다.아래 문서 참고.https://docs.docker.com/reference/cli/docker/container/run/ docker run docs.docker.com 2. 실행중인 도커 컨테이너 확인실행 중인 도커 컨테이너는 아래 명령어로 확인이 가능하다.docker ps 명령어를 실행하면 다음과 같이 실행 중인 컨테이너의 정보가 화면에 나온다.  3. 실행중인 도커 컨테이너 접속실행 중인 도커 컨테이너에 접속.. 2024. 12. 23.
[ROS2] sensor_msgs/msg/PointCloud2 Message [ROS2] sensor_msgs/msg/PointCloud2 Message File: sensor_msgs/msg/PointCloud2.msg Raw Message Definition# This message holds a collection of N-dimensional points, which may# contain additional information such as normals, intensity, etc. The# point data is stored as a binary blob, its layout described by the# contents of the "fields" array.## The point cloud data may be organized 2d (image-like) .. 2024. 12. 12.