본문 바로가기

Ros17

Turtlebot3 : Camera Imaging 이전 포스트에서 카메라를 작동시켰다. 이번에는 Single Board Computer(RPi)의 카메라 이미지를 ROS를 이용하여 제어 PC에서 확인해본다. SBC Configuration : Raspberry Pi 4B 4Gb(8Gb는 Ubuntu server가 불안정하다) Ubuntu Server 20.04 + ROS Noetic Ninjemys PC Configuration : Samsung 9 always 900X5N Ubuntu Desktop 20.04 + ROS Noetic Ninjemys(on Orico portable SSD) 아래 ROBOTIS 사의 eManual을 따른다. ROBOTIS e-Manual ROBOTIS e-Manual emanual.robotis.com Raspberry .. 2022. 10. 3.
Mapping with hector_slam Hector Slam 패키지를 이용하여 지역을 mapping하는 작업을 해보겠다. 패키지 설명은 아래에서 볼 수 있다. Wiki 이제 패키지를 설치하고 테스트를 돌려본다. 온라인에 많은 가이드들은 RPi Lidar나 YDLidar X4 모델을 기반으로 하나 본인은 앞서 사용한 YDLidar G4 모델을 이용한다. # YDLidar package 있는 ros workspace에서 git clone 패키지를 빌드하기 전 일부 설정을 수정해주어야 한다. mapping_default launch file 수정 cd ~/ydlidar_ws/src/hector_slam/hector_mapping/launch sudo nano mapping_default.launch아래 두 줄을 # line no 5,6 #line .. 2022. 9. 2.
Turtlebot Simulation : Navigation 아까 SLAM으로 만든 map을 이용해 Navigation을 시행해본다. 다 끄고 다시 켜준다. export TURTLEBOT3_MODEL=burger # 이거는 어차피 계속 쓸거면 bashrc파일에 저장하는게 편하다 roslaunch turtlebot3_gazebo turtlebot3_world.launch 여기부터는 아까 만들어둔 map.yaml파일이 필요하다. 다른 터미널에서 navigation node를 켜준다. sample map.yaml roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml 이런 화면이 뜰거다. 이 또한 RVIZ에서 돌아간다. 제대로 navigation을 하려면 Initial P.. 2022. 8. 23.
Turtlebot Simulation : SLAM 이어서 다시 gazebo에 turtlebot burger 모델을 구동하고 시작한다. 환경은 world로 한다. export TURTLEBOT3_MODEL=burger roslaunch turtlebot3_gazebo turtlebot3_world.launch 조금 전과 같은 육각형의 맵이 나올 것이다. 여기서 다른 터미널에서 SLAM 노드를 킨다. export TURTLEBOT3_MODEL=burger roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping 이러면 오른쪽과 같은 mapping 이 rviz를 통해 나타난다. 현재 12시 근방에 위치한 터틀봇이 당장 라이다로 읽을 수 있는 map을 나타낸 것이며 여기서 다른 터미널을 켜.. 2022. 8. 22.
Turtlebot Simulation : Setup 이번에는 SLAM을 적용하기 위한 turtlebot simulation을 진행한다. 당장 터틀봇이 없기 때문에 시뮬레이션으로 시도 이후 동방에서 가져올 예정이다. ROBOTIS e-Manual 위 공식 매뉴얼을 참고하였다. 여기서 하드웨어와 관련된 부분 제외하고 정리한다. 가장 먼저 기본적으로 필요한 패키지를 다운로드받고 catkin_make로 환경을 구축한다. 하나라도 빼먹으면 이런 오류가 뜨니까 전부 다 하도록 한다. sudo apt-get install ros-noetic-joy ros-noetic-teleop-twist-joy \ ros-noetic-teleop-twist-keyboard ros-noetic-laser-proc \ ros-noetic-rgbd-launch ros-noetic-ros.. 2022. 8. 22.
ROS Noetic : Server & Client 앞서서 ROS service를 활용해보았다. 이는 서버-클라이언트 구조와 흡사함을 알 수 있다. 이번에는 실제로 서버-클라이언트의 구조를 만들어본다. 일단은 앞서 만들었던 closed_loop의 turtle_controller를 이용하며 화면의 좌측에 있으면 붉은 색, 우측에 있으면 녹색의 자취를 나타내는 형태를 만들 것이다. 이전 코드를 가져와서 bold 처리된 줄들을 추가해준다. #!/usr/bin/env python3 import rospy from turtlesim.msg import Pose # output of turtlesim from geometry_msgs.msg import Twist # input for turtlesim class TurtleControl: def __init__(s.. 2022. 8. 11.
반응형