Skip to content
/ ROS101 Public
forked from swcho84/ROS101

ROS101 class - from basic to advanced

License

Notifications You must be signed in to change notification settings

jiohLee/ROS101

 
 

Repository files navigation

ROS101

  • ROS101 class - from basic to advanced
  • 강의명: ROS와 Carmaker 기반 자율주행의 인지,판단,제어 구현(이론, 실습, 프로젝트 10일)​
  • 강의일시: 2월 10일(4일차), 09:00-13:00, 14:00-18:00
  • 강의장소: 충북대학교
  • 수강대상: 학부생 및 대학원생, 재직자 (자율주행관련)
  • 강의주제: ROS 활용 및 예제

Pre-requirement

  • Ubuntu 16.04
  • ROS kinetic
  • Git pkg: "-" 사용, ROS pkg: "_" 사용

Install Clang

sudo apt-get install clang, clang-format

Build

catkin build

with alias

cb

hello_world_ros

  • hello world 를 terminal 또는 ros log file 에서 확인하도록 하는 pkg
  • ros pkg 의 기본구조 학습

pub_test

  • ros 의 publisher 예제
  • basic: string data 와 float32 multi-array data 를 publish 하는 pkg
  • advanced: custom msg 를 publish 하는 pkg

sub_test

  • ros 의 subscriber 예제
  • basic: string data 와 float32 multi-array data 를 subscribe 하는 pkg
  • advanced: custom msg 를 subscribe 하는 pkg

srv_test

  • ros 의 service server/client 예제
  • (basic)calc_add_srv server: 2개의 int number 를 받아서 더하는 연산
  • (basic)calc_add_srv client: 2개의 int number 를 param 으로 읽어서 server 호출
  • (advanced)set_mission_info_srv server: 1개의 int number 를 받아서 임무를 선택하는 연산 (switch-case)
  • (advanced)set_mission_info_srv client: 1개의 int number 를 param 으로 읽어서 server 호출하여 임무를 받아 실행하는 연산

custom_msg_srv_param_ros

  • custom message file 과 custom service file 을 생성하는 pkg (이들 모두를 단일 pkg 하면 관리하기 용이함)
  • yaml file 에서 parameter 를 읽어오는 예제 node

autostart_service

  • roscore 와 roslaunch 를 컴퓨터 시작 프로그램에 등록하기 위함
  • 각종 시연/대회/상용화/실운용 또는 반복된 실험수행 때 더 이상 디버깅이 필요하지 않은 node 를 실행할 때 용이함
  • 해당 폴더의 readme 참고

imgproc101

  • "자율주행을 위한 영상처리 기초: 캠시스 이윤희 박사님"의 강의용 코드를 ROS 환경으로 통합한 결과
  • 기존 코드는 ROS 환경이 아닌 상태에서만 컴파일 후 사용하도록 되어있었음
  • ROS 환경으로 통합하면서 parameter 로 사진파일 관리 가능하도록 하였음
  • 핵심 함수는 그대로 사용하였음
  • OpenCV 1.x 스타일로 코딩한 결과물이므로 최신 스타일로 변경해둘 필요 있음

About

ROS101 class - from basic to advanced

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 55.6%
  • CMake 43.5%
  • Other 0.9%