본문 바로가기

반응형

FOSCAR-(Autonomous Driving)/ROS 스터디

(135)
[2024 ROS 스터디] 정주광 #3주차 - ROS 기본 프로그래밍 Chapter 7) ROS 기본 프로그래밍 Contents - 퍼블리셔, 서브스크라이버 노드 작성 - 서비스 섭버와 클라이언트 노드 작성 - 파라미터 사용법 - Roslaunch를 통해 복수의 노드 실행 또는 각 노드의 옵션 변경 방법 1. ROS 프로그래밍 기본사항 A. 표준단위 • SI단위로 통합 B. 좌표 표현 방식 • X: forward, y: left , z: up • 오른손 법칙 C. 프로그래밍 규칙 2. 메시지 통신의 종류 • 토픽 : 퍼블리셔가 서브스크라이버 노드한테 메시지 전송(단방향, 연속성) • 서비스 : 클라이언트가 서비스 서버한테 요청에 대한 결과값을 서비스 클라이언트한테 전송(양방향, 일회성) • 액션 : 서비스랑 비슷하나, 중간 결과물을 피드백 전달 Ros 패키지 생성 후 패키..
[2024 ROS 스터디] 이상혁 #2주차 - ROS 명령어 및 도구 1) ROS 용어 정리 - Node: 최소 단위의 실행 가능한 프로세서(하나의 실행 가능한 프로그램) - Package: 하나 이상의 노드, 노드 실행을 위한 정보등을 묶어 놓은 것 - Message: 노드간의 데이터를 주고 받도록 하는 것 - Topic: 노드들 간에 통신을 할 수 있는 채널(두 프로그램 간에 어떤 통신이 발생하고, 어떤 메시지를 주고 받게 되는 경로 ) - Publisher: 데이터를 발생하는 노드 - Subscriber: Publisher가 Topic에 쓴 Message를 받거나 읽는 노드 - Service: 메시지 동기 방식 - Service server - Service client - Action: 서비스처럼 양방량을 요구하나 요청 처리 후 응답까지 오랜 시간이 걸리거나 중간 ..
[2024 ROS 스터디] 변수양 #3주차 - ROS 기본 프로그래밍 ROS 강의 Chapter7. ROS 기본 프로그래밍 - YouTube ROS 강의 Chapter7. ROS 기본 프로그래밍 1) ROS 프로그래밍 전에 알아둬야 할 사항(공개된 패키지를 사용할 때 등등..) 2) 퍼블리셔와 서브스크라이버 노드 작성 및 실행 3) 서비스 서버와 클라이언트 노드 작성 및 실행 4) 액션 서버와 클라이언트 노드 작성 및 실행 5) 파라미터 사용법 6) Roslaunch 사용 - 표준 단위 (SI 사용) - 좌표 표현 방식(x; forward, y; left, z; up) - 프로그래밍 규칙 * 메시지 통신의 종류 - 토픽(연속성, 단방향; 퍼블리셔 -> 서브스크라이버) - 서비스(서비스 서버 ->(응답) (요청) (액션 피드백, 결과 전달) (액션 목표 전달) > 바로 적용..
[2024 ROS 스터디] 성창엽 #4주차 - SLAM과 내비게이션 ROS Courses (한국어) https://github.com/robotpilot/ros-seminar www.youtube.com 이 글은 ROBOTIS OpenSourceTeam의 ROS Courses 강의를 보고 정리한 글이다. 이번 주에는 Chapter 11에 대해 공부해 보았다. 길 찾기에 필요한 것은 4가지이다. 1. 위치 2. 센싱 3. 지도 4. 경로 SLAM & Navigation 실습 1. 라이브러리 설치 (ROS Noetic 기준) sudo apt install ros-noetic-joy ros-noetic-teleop-twist-joy ros-noetic-teleop-twist-keyboard ros-noetic-laser-proc ros-noetic-rgbd-launch ros..
[2024 ROS 스터디] 유민아 #3주차 <워크스페이스 구성하기> - ROS 의 표준 단위 : SI 단위계 사용 각도 : 라디안 주파수 : hz 힘 : 뉴턴(N) 전력 : 와트(W) 전압 : 볼트(V) 길이 : 미터(m) 질량 : kg 시간 : 초 전류 : 암페어(A) 온도 : 섭씨 좌표축 : - 프로그래밍 : 명명규칙이 아래와 같이 정해져 있음 https://wiki.ros.org/CppStyleGuide CppStyleGuide - ROS Wiki ROS C++ Style Guide This page defines a style guide to be followed in writing C++ code for ROS. This guide applies to all ROS code, both core and non-core. For Python, see the PySt..
[2024 ROS 스터디] 손희문 #3주차 - ROS 기본 프로그래밍 7강 목차 - Publisher, Subscriber 노드 작성 - Service, Client 노드 작성 - Roslaunch 실행 Roscore를 실행시키면 3가지의 기능을 한다고 요약할 수 있다. 1. rosmaster 기능 (노드 관련 기능, 노드들의 통신 연결) 2. rosout (로그 기록) 3. parameter 서버를 구동 (각종 파라미터를 기록) 각종 노드를 작성하기 전에 ROS에서 사용하는 메시지들의 표준 단위에 대해 알아야 한다. 좌표 표현방식의 경우 오른손 법칙을 사용하고 표준단위는 SI단위를 사용해서 주의해야 할 부분은 각도를 라디안으로 표현한다는 점 정도이다. 프로그래밍 규칙에 나오는 명명규칙의 경우는 혼자만 개발하고 혼자만 사용한다면 마음대로 사용해도 문제가 없겠지만, 공동작업..
[2024 ROS 스터디] 이강욱 #3주차 - ROS 기본 프로그래밍 1. ROS 프로그래밍 기본 규칙 표준 단위 SI 단위 사용 ROS는 전세계적가 공통적으로 사용하는 소프트웨어이기 때문에 센서를 통해 들어오는 물리량을 표현할 때에는 단위 표준을 지켜야 개발할 때 혼선이 생기지 않는다. 예를 들어 라이다 관련 패키지 A, B 가 있다고 해보갰다. 그런데 A 패키지는 cm 단위로, B 패키지는 in 단위로 값을 다룬다면 사용하는 입장에서 cm, in 간 변환작업을 거쳐야 하며, cm, in 간 값을 혼동하여 잘못 사용할 수도 있다. 따라서 표준 단위인 m 를 사용하면 이러한 혼동은 없어질 것이다. 반대로 이야기 하면 널리 알려진 공개된 패키지에서 다루는 값들은 모두 표준 단위을 지킨 패키지들 이므로 프로그래밍할 때 참고할 수 있는 유용한 정보가 될 수 있다. 다음은 물리량..
[2024 ROS 스터디] 성창엽 #3주차 - ROS 기본 프로그래밍 ROS Courses (한국어) https://github.com/robotpilot/ros-seminar www.youtube.com 이 글은 ROBOTIS OpenSourceTeam의 ROS Courses 강의를 보고 정리한 글이다. 이번 주에는 Chapter 7에 대해 공부해 보았다. Topic ROS에서는 단방향 통신일 때 Topic이라는 메시지 통신을 사용한다. 이때 송신 측을 Publisher, 수신 측을 Subscriber라고 부른다. 1. 패키치 설치 catkin_create_pkg ros_tutorials_topic message_generation std_msgs roscpp 2. 패키지 파일 설정 ros_tutorials_topic 0.1.0 ROS turtorial package t..

반응형