Gmapping, Hector_slam, cartographer
Teleop_Twist_Keyboard
Navigation
SBC
Jetson Nano Developer Kit 4GB, +cooling pan
Micro Controller Unit
Arduino UNO
Motor
JGB37-520 encoder motor x2
Motor Driver
L298N
Battery
18650 battery x7, battery holder, Jetson nano UPS Power Module
Lidar
YDLidar X4 -> change YDLidar X4 Pro
Imu
myAHRS+ Imu
Standoff
M3,M4
Networkcard
ipTIME-N100 (Linux 지원)
캐스터 휠
로봇 CAD 파일
Ubuntu
CAD: Blender
ROS
Distribution: Melodic
ROS Packages: rosserial, rosserial_python, rosserial_arduino, gmapping, hector_slam, navigation, myahrs_driver, teleop_twist_keyboard, ydlidar_ros_driver, YDLidar-SDK, urdf, joint_state_publisher, robot_state_publisher, amcl, costmap_2d, robot_pose_ekf,robot_localization,cartographer
roscore, rosrun, roslaunch같은 ROS명령어를 사용하기 위해서는 항상 터미널마다 다음 단계를 따라야 합니다.
$ source /opt/ros/melodic/setup.bash
$ cd catkin_ws
$ source ./devel/setup.bash
만약 catkin_ws 워크스페이스 안에 코드를 추가하거나 변경했을 때 워크스페이스 안의 모든 코드를 컴파일 하는 과정이 필요합니다. 그 때에는 $ cd catkin_ws 다음 명령어를 추가해야 합니다.
$ catkin_make
PID_publish_ticks_teleop.ino -> 아두이노 디렉토리의 arduino.ino는 SLAM, Teleop_twist_keyboard를 할 때 Upload합니다.
navigation.ino -> 아두이노 디렉토리의 navigation.ino는 Navigation을 수행할 때 Upload합니다.
$ roscore
$ roslaunch kwj_slam gmapping.launch
$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py
--> 영상을 찍을때나 테스트를 할 때는 제 편의를 위해 turtlebot3의 teleop_twist_keyboard.py를 빌려썼습니다.
만약 맵을 다 그렸다면 맵을 저장하기 위해서는 터미널을 키고 다음 단계를 따라야 합니다. 기본적으로 맵 이름은 map입니다. map.pgm, map.yaml이 생성됩니다.
$ rosrun map_server map_saver
맵 이름을 따로 지정하고 싶으면 -f [이름]하면 됩니다. 예를들어
$ rosrun map_server map_saver -f obstacle_slam
$ roscore
$ roslaunch kwj_slam hector_slam.launch
$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py
$ roscore
$ roslaunch kwj_slam carto.launch
$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py
$ roscore
$ roslaunch kwj_navigation move_base.launch
rqt_graph는 현재 실행되는 노드,토픽들을 그래프로 보여줍니다.
$ rosrun rqt_graph rqt_graph
현재 로봇의 TF를 그려줍니다.
$ rosrun tf view_frames
https://github.com/mulempyo/my_first_ros_robot -> https://github.com/mulempyo/64robot -> https://github.com/mulempyo/ros_robot