Robotics 5

4. rosrun, roslaunch, launch

앞 글에서 ROS는 각 프로세스인 Node들로 구성된다고 말하며, Node를 실행하는 방법에 대해 다뤘다. 이를 더 자세히 공부해보겠다. Node를 실행하는 방법1) 하나의 노드를 실행하는 rosrun$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py하나의 노드 (.py)를 실행한다. 2) 여러개의 노드를 동시에 실행시키는 roslanch$ roslaunch gcamp_gazebo gazebo_world.launchrosmaster를 포함한 launch 파일에 존재하는 여러 가지의 노드들을 실행시킨다. + rosmaster만 구동하는 roscore 함수도 있었다.   launch fileroslaunch 함수를 통해 런치 파일 내 존재하는 노드들을 실행시킨..

Robotics/ROS 2025.02.10

3. roscore, rosmaster, rosnode

이전 글에서 roslaunch 명령어를 통해 로봇이 포함된 gazebo, 시각화를 위한 rviz를 동시에 실행했다. 이후 rosrun 함수를 통해 telpoperation을 추가적으로 실행했었다. 이러한 함수들에 대해 공부해볼 것이다. Node우선  ROS는 각 프로세스들을 Node의 단위로 관리한다는 것을 알아야한다.  각 프로세스 즉 노드들이 서로 데이터를 주고 받기 위해서는 어떤 노드가 존재하며, 이 노드의 정보는 무엇이고 등의 정보 공유가 필요할 것이다. 이를 위해 각 노드들을 관리하는 것이 바로 ROS Master이다. 참고를 위해 launch를 하면 다음과 같은 결과가 터미널에 나올 것이다. 여기서 NODES 부분에서 여러 노드들이 실행된 걸 알 수 있다. $ cd ~/gcamp_ws$ sds..

Robotics/ROS 2025.02.10

2. Gazebo 환경과 사용법

Gazebo 설치 및 사용법ROS는 catkin 빌드 시스템을 이용하기에 우선 catkin workspace를 설치한다. 이를 통해 ROS의 여러 package 소스 파일들을 빌드하게 된다.cd ~/$ mkdir -p gcamp_ws/src$ cd gcamp_ws/src$ catkin_init_workspaceCreating symlink "/home/swimming/gcamp_ws/src/CMakeLists.txt" pointing to "/opt/ros/melodic/share/catkin/cmake/toplevel.cmake"$ cd ../$ catkin_make$ cma$ source devel/setup.bash$ sds 빌드했거나, 클론 했으면 catkin workspace의 최상위파일로 이동..

Robotics/ROS 2025.02.10

1. ROS란?, ROS 설치

ROS란?  로봇 개발을 위해 사용되는 오픈 소스 운영체제. 다양한 로봇의 공통적인 기능인 인지, 판단, 구동을 보다 쉽게 구현할 수 있도록 지원한다.  로봇을 개발할 때 센서, 알고리즘, 엑츄에이터를 개별적으로 구현하는 것은 매우 복잡하다. 이를 해결하기 위해 ROS가 등장한 것이다. 패키지 시스템: 로봇 개발을 모듈화하여 필요한 기능을 조합 가능시뮬레이션 지원: Gazebo, Ignition 등의 시뮬레이션 도구 제공임베디드 지원: Micro ROS, rosserial 등 활용 가능시각화 및 디버깅: Rviz, Rqt 등의 툴 제공연구 및 상용화 지원: 연구자는 공통된 소스로 비교 분석 가능, 사용자는 빠른 상용화 가능 기본 설정 및 ROS 설치해당 강의는 ubuntu 18.04 + ROS Melod..

Robotics/ROS 2025.02.10

1. Introduction to CUDA with Numba

https://learn.nvidia.com/courses/course?course_id=course-v1:DLI+S-AC-10+V1&unit=block-v1:DLI+S-AC-10+V1+type@vertical+block@dd940fadc01947879e8acd2fc12f5707 Course | NVIDIAPrevious Next Previous Nextlearn.nvidia.com CUDA? Nvida GPU에서 대량 병렬 방식으로 코드를 실행할 수 있도록 하는 compute platform. Numba?수치 중심(numerically-focused)의 Python 함수를 가속화하기 위한 함수 컴파일러.특히 Numpy 배열에서 이미 무거운 계산 작업을 수행하고 있을 때 효과적.   Course Stru..

Robotics 2024.09.02