1. ROS 설치하기 ROS 설치를 위한 과정을 진행한다. 버전에 따라 방법은 조금 달라질 수 있다. 본 게시물에서는 ubuntu 18.04에 melodic 버전을 설치하는 방법에 관하여 다룬다. 다른 버전도 설치는 비슷하며, reference의 링크를 참조하길 바란다
명령어|설명 -----|----- $ rospack list| 시스템에 설치되어 있는 패키지를 확인한다. $ rospack find | 설치된 패키지의 위치를 확인한다. $ roscd | 패키지가 존재하는 디렉터리로 이동한다. $ rosls | Linux의 ls와
node 간 통신 과정에는 두 노드간의 1:1 통신하는 경우 혹은 한 노드가 여러 노드에 대해서 1:N 통신하는 경우 마지막으로, 여러 노드와 여러 노드가 통신하는 N:N 통신이 있을 수 있다.ROS 시스템에서 실행중인 node의 이름은 중복될 수 없다. 위의 예시처럼
node들 간의 데이터 전송을 위한 메시지를 정의하기 위한 방법이다.msg의 내용을 정의하기 위한 파일을 만든다. msg 파일은 위의 구조처럼 package(msg_send) 디렉터리 안의 msg 디렉터리를 만들어서 그 안에 .msg 파일을 생성한다.msg 파일은 데이
노드간의 다양한 통신 시나리오 message 손실이 있는가? 데이터 크기에 따라 전송 속도의 변화? 처리속도가 느린경우 처리하지 못한 데이터는 어떻게 되는가? 타임슬롯을 넘어가면 어떤 문제가 나타나는가? 의존성이 있는 node의 데이터를 순차적으로 적리할 수 있는가?
통신 프로토콜 노드와 마스터 노드 간의 통신은 XMLRPC 프로토콜을 사용한다. 노드와 노드 간의 통신은 TCPROS 프로토콜을 사용한다. 동일한 장치의 노드 간 통신에도 TCP/IP 기반의 인터넷 기반의 통신이 이루어진다(오버헤드 발생). 원격 통신을 위한 환경 설
목표 8자 주행하는 모델을 rviz를 통해 시각화 하기 설명 8_drive.py -> converter.py -> odom.py 순서로 메시지를 전달하고 처리한다. 8_drive.py publish angle message -50 ~ 50 and fixed spee
IMU 센서 직교하는 세 방향의 축에 발생하는 가속도, 각속도 그리고 지자기의 크기를 수집하는 센서이다. std_msgs/Imu 메시지 타입 ROS에서 제공하는 Imu 센서 메시지 타입은 위와 같이 header와 각 축의 각도 정보를 나타내는 quaternion
센서로 측정된 데이터에는 노이즈가 포함되어 있다. 정확한 데이터를 얻기위한 과정으로 다음과 같이 다양한 방법들이 있다.이전 데이터들의 평균을 누적해서 현재 데이터를 추정하는 방법이다. 이전에 계산된 결과를 재귀적으로 사용하기 때문에 현재 데이터만 계산에 사용된다.$$\
basic information sensor VCC: 센서에 전원공급 (DC 5V) GND: 그라운드 Trig: 센서를 동작시키기 위한 트리거 신호 (입력) Echo: 거리 측정 결과를 전달하기 위한 시그널 (출력) 소리는 초당 340m를 이동하기 떄문에 1cm
원격 장치에 실행중인 roscore와의 통신이 가능하여 rostopic list와 같은 명령은 잘 수행되지만, 실제 메시지를 전달하는 과정이 수행되는 않음원격지의 방화벽(ufw)에서 11311번 포트를 개방하고 있어 rostopic list에 관한 정보는 확인이 가능하
명령어 정리 |명령어|설명| |-----|-----| $ rospack list| 시스템에 설치되어 있는 패키지를 확인한다. $ rospack find | 설치된 패키지의 위치를 확인한다. $ roscd | 패키지가 존재하는 디렉터리로 이동한다. $ rosls |