ROS

    ROS 프로그래밍 실습(이동, 회전)

    만약 ROS 시뮬레이션 관련 패키지들을 다운받지 못했다면 다음 사이트로 넘어가서 클론하도록 하자. https://emanual.robotis.com/docs/en/platform/turtlebot3/autonomous_driving/#getting-started ROBOTIS e-Manual emanual.robotis.com Wanderbot red_light_green_light.py 3초간 멈춰 있다가 3초 전진을 반복 1. 패키지 생성 cd ~/catkin_ws/src catkin_create_pkg wanderbot rospy geometry_msgs sensor_msgs mkdir scripts 2. python 파일 생성, 권한부여 및 코드 작성 chmod +x red_light_green_..

    ROS 프로그래밍

    ROS 프로그래밍 전에 알아둬야 할 사항 표준 단위: SI 단위 사용 좌표 표현 방식: x(forwoard), y(left), z(up) - 오른손 법칙 프로그래밍 규칙: 패키지, 토픽, 파일, 네임스페이스 명명 규칙을 따라야 한다. (구글링으로 확인) ROS 메시지 통신 이전에 설명했기 때문에 넘어가겠다. 파라미터 서버는 매개변수의 마스터 역할을 한다. 유저가 정해놓은 파라미터를 저장하고 있고, 임의의 명령을 통해 파라미터 값을 바꿀 수 있다. 해당 파라미터에 관련된 노드가 그 값을 참조하게 된다. Topic / Publisher / Subscriber 1) 패키지 생성 ROS에서는 단방향 통신일 때 'Topic'이라는 메시지 통신을 사용한다. 이때 송신 측을 'Publisher', 수신 측을 'Sub..

    ROS 도구

    RVIZ(ROS Visualization Tool) ROS의 3D 시각화툴 - 레이저, 카메라 등 여러 센서 데이터의 시각화 툴 로봇 외형의 표시와 계획된 동작을 표현 Navigation Manipulation 원격 제어 매우 다양한 형태의 데이터를 RVIZ tool에서 시각화가 가능하다. RQT 플러그인 방식의 ROS의 종합 GUI 툴 rqt는 Qt로 개발되어 있기 때문에 유저들이 자유롭게 플러그인을 개발하여 추가할 수 있다. 대표적인 플러그인으로 rqt_image_view, rqt_graph, rqt_plot, rqt_bag 등이 있다. 위 사진은 rqt_graph 플러그인을 실행했을 때이다. 노드 간 통신이 어떤 식으로 이루어지는지를 쉽게 알 수 있다. Gazebo 로봇 개발에 필요한 3차원 시뮬레..

    ROS 명령어

    Commend-Line Tools ROS 셸 명령어 별표는 명령어의 중요도를 나타냄 roscd(★★★) : ros+cd(changes directory) - 지정한 ROS 패키지의 디렉터리로 이동 rosls(★☆☆): ros+ls(list files) - ROS 패키지의 파일 목록 확인 rosed(★☆☆): ros+ed(editor) - ROS 패키지의 파일 편집 roscp(★☆☆): ros+cp(copies files) - ROS 패키지의 파일 복사 rospd(☆☆☆): ros+pushd) - ROS 디렉터리 인덱스에 디렉터리 추가 rosd(☆☆☆): ros+directory) - ROS 디렉터리 인덱스 확인 ROS 실행 명령어 roscore(★★★): ros+core - master(ROS 네임 서비..