wall_following_robot 실행하기 전에..
** ROS 기본 단축키들
1) Ctrl + Alt + t 입력 = cmd 창이 생성됨
2) 복사 붙여넣기 할 때엔 Ctrl + v가 아니라, Ctrl + shift + V를 눌러야 함
3) 터틀봇 실행 시 매번 $ export TURTLEBOT3_MODEL=burger 입력하기 귀찮은 사람들
: $ gedit ~/.bashrc
.bashrc 파일이 오픈되면 맨 아랫줄에 'export TURTLEBOT3_MODEL=burger'입력해두자.
앞으로는 ros 명령어를 실행시키기 전에 새 창 띄워서 $ gedit ~/.bashrc 만 입력하면 됨
(새 창 띄울 때마다 $ export TURTLEBOT3_MODEL=burger 를 입력할 필요 없음)
** Wall_following_robot 실행
** 새 창을 띄워야 할 경우 매번 언급함.
1. Ctrl + Alt + t 입력 -> 새로 생성된 첫 번째 창에
$ git clone https://github.com/Octanas/Reactive-Wall-Following-Robot
깃허브에서 파일들을 내려받는다.
2. 폴더를 이동시킨다.
- 첫번째 줄을 입력하면 Home -> catkin_ws 폴더 안에 Reactive-Wall-Following_Robot이라는 폴더가 설치될 것이다.
Home -> catkin_ws -> Reactive-Wall-Following_Robot -> catkin_ws -> src 안에 있는 wall_following_robot
폴더를 잘라내어, Home -> catkin_ws -> src 폴더 안으로 붙여넣는다.
- 그 다음 Home -> catkin_ws 안에 들어 있는 build, develop 폴더 2개를 삭제한다.
3. 1번 창에 그대로 입력
$ cd
$ cd catkin_ws/
$ catkin_make
$ source devel/setup.bash
- 1~3번째 줄을 창 하나에 순서대로 입력하면 지워진 build, develop 폴더가 다시 catkin_ws 폴더 안에 생겨날 것이다.
- 이 명령어들은 다시 빌드해주는 명령어라고 생각하면 된다.
4. wall_following_robot 실행시키기
$ clear
$ gedit ~/.bashrc
- clear : 창의 이전 명령어 전체를 삭제하는 명령어
- gedit -- 관련 명령어는 위쪽에 설명해둠.
[터틀봇 실행 시 매번 $ export TURTLEBOT3_MODEL=burger 입력하기 귀찮은 사람들 참고]
5. Ctrl + Alt + t 입력 -> 새로 생성된 두 번째 창에 python 파일의 mod를 바꿔주자.
$ cd catkin_ws/
$ ls
$ cd src/
$ ls
$ cd wall_following_robot/
$ ls
$ cd scripts/
$ ls
$ chmod u+x follow_wall.py
$ cd ..
$ cd ..
$ cd ..
$ source devel/setup.bash
$ cd ..
cd 를 이용하여 디렉토리 안으로 들어간다.
중간에 ls는, 해당 디렉토리 안에 어떤 디렉토리들이 들어있는지 알려주는 명령어다.
ls를 활용하여 원하는 디렉토리까지, follow_wall.py가 나올 때까지 cd 명령어를 실행한다.
-> ls에 follow_wall.py가 등장하면, chmod u+x follow_wall.py 명령어를 작성한다.
(그런 다음, 5번 명령어를 실행하기 위해 cd ..를 여러 번 실행, 최상위 디렉토리로 돌아간다.)
6. 두 번째 창에 그대로 roslaunch를 실행시키자.
$ roslaunch wall_following_robot single_uniform_letter_b_world.launch
- gazebo가 실행됨.
- Home -> catkin_ws -> src -> wall_following_robot -> launch 파일 들어가면 실행할 수 있는 다른 launch파일들도 존재
7. Ctrl + Alt + t 입력 -> 새로 생성된 세 번째 창에 rosrun를 실행
$ rosrun wall_following_robot follow_wall.py
- py 안에 있는 코드에 맞게 터틀봇이 스스로 움직임.
(ex- 내재된 속도, 벽과의 거리 등의 숫자에 따라 터틀봇이 움직임)
- 실행되지 않는 경우 세 번째 창에서도 5번 코드를 실행하여 mod를 바꿔준 다음 다시 rosrun -- 해보자.
<실행되는 가제보 화면>
<rqt_graph>
파이썬 py파일의 알고리즘을 알고 싶다면 여기를 클릭 ..^^ 나의 첫 세미나 내용..
출처 및 참고하기 좋은 링크
https://github.com/Octanas/Reactive-Wall-Following-Robot
GitHub - Octanas/Reactive-Wall-Following-Robot: Algorithm for solving the robotics wall-following problem and a setup simulated
Algorithm for solving the robotics wall-following problem and a setup simulated environment for testing. - GitHub - Octanas/Reactive-Wall-Following-Robot: Algorithm for solving the robotics wall-fo...
github.com
'LAB > ROS' 카테고리의 다른 글
ROS(4) Turtlebot machine learning(DQN) (0) | 2024.02.05 |
---|---|
ROS(3) simple driving code (0) | 2024.02.01 |
ROS(2) Wall following algorithm python (0) | 2023.02.06 |
ROS(1) ROS 명령어 정리 (0) | 2023.01.02 |