분류 전체보기(84)
-
ROS2 moveit2(1)
전에 만들었던 moveit2 환경에서 첫번째 c++ moveit 프로젝트를 만들어 보겠다.cd ~/ws_moveit/srcros2 pkg create \ --build-type ament_cmake \ --dependencies moveit_ros_planning_interface rclcpp \ --node-name hello_moveit hello_moveitpackage.xml과 CMakeLists.txt에 의존성을 추가하였다. 여기서 새로운 소스파일인 ws_moveit/src/hello_moveit/src/hello_moveit.cpp 를 편집기에서 연다.#include #include #include int main(int argc, char * argv[]){ // Initialize ROS..
2024.11.08 -
ROS2 URDF rb10-1300
launch 파일(gt3armsim.launch.py)import osfrom launch_ros.actions import Nodefrom launch import LaunchDescriptionfrom launch.substitutions import Commandfrom launch.actions import ExecuteProcessfrom ament_index_python.packages import get_package_share_directorydef generate_launch_description(): pkg_path = os.path.join(get_package_share_directory("urdf_tutorial")) xacro_file = os.path.join(pk..
2024.11.08 -
ROS2 URDF doosan robot arm
전에 실습했던 rb10-1300이 Gazebo에서 제대로 작동하지 않았기때문에 기존에 Gazebo에서 돌아가도록 만들어진doosan robot arm을 이용해서 어떤 차이가 있는지 확인하였다.https://github.com/dvalenciar/robotic_arm_environment?tab=readme-ov-file GitHub - dvalenciar/robotic_arm_environment: Doosan robotic arm, simulation, control, visualization in Gazebo and ROS2 for ReinfDoosan robotic arm, simulation, control, visualization in Gazebo and ROS2 for Reinforcemen..
2024.11.08 -
ROS2 nav2(6)
로봇의 footprint 설정이다. footprint는 땅에 투사될 때 로봇의 2D 모양을 윤곽으로 나타내며 Nav2에서 주로 계획 중에 충돌을 피하기 위해 사용된다.이 작업에 관련된 알고리즘은 로봇의 경로나 계획을 계산하는 동안 로봇이 비용 맵의 장애물과 충돌하지 않도록 한다. footprint랑 robot_radius 두 가지 방법 중 하나로 로봇의 footprint를 정의할 수 있다. 둘 다 **글로벌 및 로컬 비용 맵(costmap)**의 footprint나 robot_radius 파라미터로 설정할 수 있다. 각각의 차이점은 아래와 같다:footprint:footprint는 2D 좌표들의 벡터로 구성되고, 로봇의 기본 링크(base_link) 프레임을 기준으로 로봇의 윤곽을 정의한다.예를 들어, ..
2024.11.07 -
ROS2 nav2(5)
센서 설정이다. 센서는 환경 지도를 작성하고 유지하고, 지도에서 로봇의 위치를 파악하고, 환경의 장애물을 확인하는 데 사용할 수 있는 정보를 얻는다. 일반적으로 사용되는 센서의 예로는 lidar, radar, RGB camera, depth camera, IMU, GPS 등이 있다.이러한 센서의 메시지 형식을 표준화하고 공급업체 간의 보다 쉬운 상호 운용을 허용하기 위해 ROS는 일반적인 센서 인터페이스를 정의하는 sensor_msgs 패키지를 제공한다. sensor_msgs를 제외하고 알아야 할 표준 인터페이스가 있다.radar_msgs는 특정 radar 센서의 메시지를 정의하고 vision_msgs는 객체 탐지, 세분화 및 기타 머신 러닝 모델과 같은컴퓨터 비전에서 사용되는 메시지를 정의한다. 이 ..
2024.11.06 -
ROS2 nav2(4)
오도메트리 설정을 해보겠다.오도메트리 시스템은 로봇의 움직임에 따라 로봇의 자세와 속도에 대한 정확한 추정치를 제공한다. 오도메트리 정보는 IMU, LIDAR, RADAR, VIO 및 휠 인코더와 같은 다양한 소스에서 얻을 수 있다. 한 가지 주의할 점은 IMU는 시간이 지남에 따라드리프트하는 반면 휠 인코더는 이동 거리에 따라 드리프트하므로 종종 서로의 부정적인 특성을 상쇄하기 위해 함께 사용된다. odom프레임과 이와 관련된 변환은 로봇의 오도메트리 시스템을 사용하여 시간이나 거리에 따라 정확도가 떨어지지만 연속적인 현지화 정보를 게시한다. (센서 모달리티 및 드리프트에 따라 다름). 그럼에도 불구하고 로봇은 여전히 이 정보를 사용하여 바로 주변을 탐색할 수 있다.(예: 충돌 회피)시간이 지남에 따라..
2024.11.06