본문 바로가기

Robot/Robot Program - ROS

(64)
ROS 카메라 캘리브레이션 수행하기 오늘은 ROS melodic에서 카메라를 calibration하는 과정을 설명하려고 합니다. 카메라 영상을 어떻게 사용하는지에 따라 캘리브레이션이 필요할 때가 있는데요. 어떻게 하는지 간단히 보여드릴까 합니다. roscore를 실행하고~ 사용하시는 카메라를 기동하면 됩니다. 저는 최근에 개발에 참여한 R1mini의 ROS 패키지에서 카메라를 기동하는 명령을 사용하면 됩니다. 아무튼 카메라를 기동하구요~ 카메라 영상이 잘 들어오는 rqt_image_view로 확인합니다. 그리고 rostopic list로 영상의 토픽이름을 확인합니다. 제 경우는 jetson 카메라를 실행했기 때문에 /main_camera/image_raw가 토픽 이름입니다. 이제 위 링크에서 체크보드를 받습니다. 저 체크 보드 파일은 RO..
ROS 토픽을 터미널에서 그래픽하게 보여주는 rosshow 오늘은 터미널에서 토픽을 그래픽하게 보여주는 매우 재미있는 패키지를 소개해드릴려고 합니다. 요즘 제가 로봇에 탑재된 젯슨나노 같은 보드에 원격으로 접속할때가 많은데요. 그런 상황에서 정말 간단히 토픽- 특히 라이다나 이미지 토픽을 확인하고 싶을때 ssh로 접근한 경우는 힘든데요. 그때 바로 확인할 수 있습니다. 먼저 rosshow의 공식 github에서 설치 안내를 볼 수 있습니다. 먼저 python-pip를 설치하고 pip 명령으로 pip를 업그레이드 합니다. 이제 git clone 명령으로 소스를 받아오는데, 왠만하면 catkin_ws가 아니라 다운로드같은 다른 폴더에 받습니다. 이유는 빌드가 안되는 다른 폴더를 포함하고 있기 때문입니다. 이제 패키지를 받아보면 rosshow라는 폴더가 또 그 안에 ..
ROS에서 odom 정보를 기초로 로봇에 위치 명령 인가하기 ROS에서 주행로봇을 움직이게 하는 유명한~ 토픽(topic)은 바로 cmd_vel입니다. 그 이름에서도 나타나 있지만, velocity 속도 명령입니다. 주행로봇을 만약 내가 원하는 어떤 지점으로 보내고 싶다면 보통 많이 하는 절차는 SLAM을 이용해서 지도를 만들고, 그 속에서 amcl 패키지로 맵 안에서 로봇의 위치를 추정하고, move_base를 이용해서 이동 명령을 주게 됩니다. [Theory/Lecture] - ROS move_base를 이용한 주행 - python 편 - ROS move_base를 이용한 주행 - python 편 - 최근에 저는 국민대학교에서 주행로봇을 이용해서 겨울방학 특강을 진행했었는데요. 그리고 그 강의가 원격으로 진행되다 보니 수강하는 학생들에게 부족한 부분을 보완하기..
Ubuntu 20.04에서 ROS1 Noetic과 ROS2 Foxy 같이 설치하기 언제나 그렇듯 저는 Ubuntu 20.04 Focal (실제 저는 Mint 20.1 Ulyssa에서지만)에서 ROS1 Noetic 버전과 ROS2 Melodic 버전을 설치하는 과정을 이야기 해보려고 합니다. 물론 이런 글이 없어도 되는 분들도 있지만, 저는 여러 이유에서 이런 글을 올리는 것을 좋아합니다. 일종의 설치기~라고 생각해주세요^^ 요즘 제 컨셉인데 이 글도 동영상으로 그 과정을 보여드리고 있습니다. Ubuntu 20.04 Focal과 Mint 20.1 Ulyssa는 몇몇 이슈를 빼면 동일하다고 생각하시면 됩니다. 일단 구글에서 ROS1 Noetic 설치 페이지를 찾습니다. 매우 쉽게 찾아질겁니다. 저는 항상 설치할때는 공식 설치 안내페이지에서 합니다. 뭐 그게 혹시 모를 여러 변경 사항들을 ..
Noetic에서 catkin tools 설치 및 alias 설정 본 내용은 제 평상시 저의 ROS 스승님으로 생각하고 있는 ahnbk.com님의 도움을 매우~ 받았습니다.^^. 지난번에 Noetic을 설치하는 과정을 이야기했는데요. 그리고 catkin tools를 이번에는 설치하기 어렵다고 생각했는데 아니었습니다. 그 과정을 짧지만 정리해 둡니다. 요즘 유투브에 동영상을 올릴때 사용하는 첫화면인데.. 아직까지는 마음에 듭니다.^^ 넵. 지난번 Noetic 설치에서 이어지는 내용입니다. 먼저 sudo apt install python3-osrf-pycommon을 설치합니다. 그리고 sudo apt insall python3-catkin-tools를 설치합니다. 음.. 이게 끝입니다.^^ 이제 워크 스페이스에서 catkin init을 하고 아무런 소스코드가 없어서 그냥 ..
SSH로 접근할때 remote identification 에러 대응 SSH를 사용해서 원격 PC에서 외부 장비로 접근하는 경우가 많은데요. 만약 IP가 동일한데 장비가 바뀐다든지, 혹은 해당 장비를 포맷과 같은 과정을 거쳐서 재설정을 해버리는 경우 만나게 되는 에러가 REMOTE Identification 에러입니다. 이렇게 나타나는데요. 이럴때는 해결 방법이 간단합니다~ 바로 ssh-keygen -R 명령으로 해당 아이피 인증을 초기화하면 됩니다.~~~
라즈베리파이의 라즈비안에 ROS melodic 버전에서 YDLIDAR 설치하기 오늘은 라즈베리파이의 OS인 라즈비안에 ROS melodic 버전에서 YDLIDAR를 설치하는 이야기를 하려고 합니다. 라즈비안은 ROS의 설치나 바이너리 패키지를 추가해야하는 경우 소스를 받아서 빌드하는 과정이 필요했습니다. 그 과정을 지난번에 이야기를 했죠.위에 보이는 라즈베리파이4에 ROS melodic 설치하기를 먼저 따라해야 합니다. 해당 글을 따라한다음~이번에는 라즈베리파이의 OS인 라즈비안에 ROS melodic 패키지 추가하기라는 글에서 한데로 몇몇 패키지를 추가해야 합니다. 이제 라즈베리파이에 ssh로 첩근합니다. 내 라즈베리파이의 ip는 라즈베리파이로 부팅해서 ifconfig 명령으로 확인할 수 있습니다.처음 접근하는 거라면 워크스페이스를 만들어 둡니다.그리고 나서 워크스페이스의 src..
ROS Noetic 우분투 20.04에 설치해보기 우분투가 20.04가 되고 이제 ROS 세계의 화두는 ROS2로 넘어가는듯 합니다. 그러나 아직 많은 하드웨어들이 ROS2의 지원이 원할하지 않아사 당분간 어쩌면 ROS1과 ROS2가 함께 사용될 수도 있을 것 같습니다. ROS2에서 ROS1의 기능을 사용하기 위해서는 ROS1도 설치는 되어 있어야죠. 또 우분투 20.04가 나왔으니 그에 맞춰 ROS1을 업그레이드 하는 것도 필요할지 모르겠네요. 일단, noetic을 설치하는 과정을 이야기하겠습니다. 여러분들이 관심이 없으면 사용하지 않아도 되구요. ROS 유저는 터미널을 자주 그것도 동시에 많이 사용하게 되는데, 그때 유용한 것이 화면 분할이 되는 터미널입니다. 저는 tilix라는 아이를 좋아합니다.설치한 후에 환경설정에 가서~Color 세팅으로 가서..