본문 바로가기
반응형

ros18

CMakeLists.txt 작성 방법 CMAKE를 계속 작성해야하는데, 매번 찾아보기도 번거롭고 아직 이해도 제대로 안돼서 긁어왔다. 습득할 지식이 산넘어 산이다.. l Make - 항상 유지/보수를 신경써야한다. ( 소스 코드를 수정해서 의존성이 바뀔 때 마다 Makefile에 업데이트 해야한다. ) - 프로젝트 규모가 거대해 질수록 관리해야할 소스 파일이 많아지고, 의존성 관계가 복잡해 진다. - Makefile 자체적으로 의존성을 파악해 주지만, Makefile에 기술된 의존성 (dependencies) 정보가 소스코드의 내용에 부합되게 관리되 있음이 전재 되어야 한다. - 소스코드-결과물 사이를 깔끔하게 추상화 할 수 있다. l CMake : Kitware 사에서 만든 프로그램을 build하기 위한 meta build system으로.. 2023. 7. 5.
[ROS2] ROS를 사용하며 알아야 할 기본적인 내용 https://cafe.naver.com/openrt/24543 1. 설정 스크립트(setup script) 설정 스크립트는 setup.bash, local_setup.bash 등으로, workspace마다 존재하며 workspace의 환경을 설정해 주는 파일이다. 새로운 패키지를 빌드하고 나서 바로 그 패키지를 찾거나 노드를 실행시키려고 하면 오류가 날 수 있다. 새로운 패키지를 빌드하고 나서는 설정 스크립트를 터미널에서 실행시켜주자. $ source ~/ros2_ws/install/local_setup.bash 2. setup.bash와 local_setup.bash의 비교 2.1 underlay와 overlay 먼저 underlay와 overlay의 개념을 이해해야 한다. 둘 다 개발 환경이다. 그.. 2023. 7. 4.
ROS 1과 ROS 2의 차이 & ROS 2의 특징 ROS(Robot Operating System) : 로봇을 위한 오픈 소스, 메타 운영 시스템 독립된 운영체제는 아니고, 기존 운영체제를 이용한다. 우분투와 같은 운영체제 위에 설치해 운영체제에서 제공하는 프로그램 등을 사용한다. 이에 추가로 다수의 이기종 하드웨어 간의 데이터 송수신, 스케줄링 등 로봇 응용 프로그램에 필요한 필수 기능들을 라이브러리 형태로 제공한다. 이러한 콘셉을 미들웨어 또는 소프트웨어 프레임워크라고 한다. ROS의 목적? 로보틱스 소프트웨어 개발을 전 세계 레벨에서 공동 작업이 가능하도록 하는 환경을 구축하는 것 ROS의 장점 : 당연히 최대의 장점은 공개 소프트웨어라는 점이다. 소스코드의 이해와 수정이 필요하다면 ROS2 설치 시, 바이너리 파일이 아닌 소스코드를 받아 빌드하자.. 2023. 6. 27.
왜 ROS? 왜 LINUX? ROS에 대해 공부하다보니 궁금해진 것들이 생겨 정리했다. 굳이 WINDOW를 두고 왜 LINUX를 쓸까? 당연하게도 금액적인 부분이 크다. WINDOW가 하나에 약 20만원 정도라면, LINUX는 무료다. 이는 단지 한 개의 로봇에 해당되는 금액이라면 크지 않지만, 몇 백대씩 되는 경우 금액의 차이는 상당하다. 그럼 ROS 사용 이유는? 1. 개발 시간 단축 노드 간의 데이터를 주고 받을 때 프로토콜이 정의되어야하는데, ROS는 Topic이라는 형태로 이를 진행한다. 노드 간의 프로토콜이 Topic으로 정의되어 있다보니, 이는 개발 속도에 큰 영향을 준다. 또한 Node를 쉽게 모듈화시킬 수 있으며, 타 로봇에 쉽게 이식도 가능하다. 모듈화를 통해 에러가 생긴 봇들을 찾기 수월하기에 이 또한 개발 시간.. 2023. 6. 23.
반응형