1일차
제일 상위 경로: cd/ (Root)
--> 윈도우와 다르게 C, D, E 드라이브가 최상위가 아닌 Root(/)가 최상위 루트
C, D, E 드라이브는 /media에 있음
~/.bashrc: 환경 변수 설정을 위한 터미널 시작 스크립트
권한: drwxrwxrwx
d: direcrory 여부
첫 번째 rwx: 파일의 소유자
두 번째 rwx: 파일의 그룹
세 번째 rwx: 외부인
chmod로 변경 가능하다.
읽기, 쓰기, 실행: rwx면 가능 -면 권한 없음
Copy 명령어: cp {source} {destination} --> source를 destination에 복사
cp -r --> 폴더 안의 내용까지 모조리 복사
CMkaeList.txt 만들기 연습
cmake_minimum_required (VERSION 2.6): Cmake 필요 버전 정의
Project (Tutorial): 프로젝트 이름 정의
add_executable(Tutorial tutorial.cpp): 실행파일 정의(main 함수가 포함된 코드)
cpp파일로 프로젝트를 만들었을 때 구조는 다음과 같이 만든다.
여기에 맞춰 CmakeList.txt도 수정해준다.
ROS2와 ROS1의 차이점: 1. 다른 OS에서 호환이 가능하다.
2. 실시간 정식 제공
3. 보안 이슈 해결
4. roscore가 사라지고 독립적 통신 수행
5. 하나의 프로세서도 여러 노드 실행 가능
6. Cmake를 사용하지 않는 패키지 작성 가능
7. 패키지 개별적으로 빌드 가능
python으로 프로젝트 만들었을 때
장점: 코드가 간결, 빌드하지 않아도 변경사항 적용됨
단점: 실행 속도가 느림, 특정 라이브러리가 python을 적용하지 않아 개발에 어려움 존재
c++으로 프로젝트 만들었을 때
장점: 실행속도 매우 빠름, 기존c++ 라이브러리 사용 가능
단점: 코드가 복잡함, 빌드해야 변경사항 적용됨
2일차
rosbag: ROS의 메시지 데이터를 저장하고 재생시켜주는 도구
퍼블리시되는 모든 데이터 저장 가능
로봇의 센서데이터를 저장 및 재생할 때 주로 사용됨
$ rosbag record -O data.bag /helloros_topic --> 저장하는 파일의 이름을 data.bag으로 설정
$ rosbag play data.bag --> bag데이터 실행하는 명령어
rqt: qt기반 ROS 종합 GUI 도구
rviz: ROS 데이터 시각화 도구, 토픽 데이터를 subscibe해서 시각화 해줌, 각종 센서 데이터 시각화, 로봇 외형 네비게이션 매니퓰레이션 시각화
'정나우 > 코드' 카테고리의 다른 글
[오류해결] Could not find a package configuration file provided by“ddynamic_reconfigure” with any of the following names:ddynamic_reconfigureConfig.cmakeddynamic_reconfigure-config.cmake (0) | 2022.09.16 |
---|---|
Ubuntu 18.04에서 CUDA, Cudnn 설치 (1) | 2022.09.14 |
ANSYS로 CATIA 모델 정적해석 하기 (0) | 2022.06.12 |
[오류해결] model serial has no attribute Serial (0) | 2022.05.11 |
[OpenCV] 동영상에서 이미지 추출하기 (0) | 2022.03.10 |
댓글