This study aims to develop an autonomous mobile robot (AMR) for accurate positioning in a robot operation system (ROS) architecture. The research method uses the information obtained by the laser rangefinder to cooperate with the Cartographer SLAM algorithm to build a map and position the robot in the environment. In addition, the RGBD camera is used for visual odometry to assist Cartographer SLAM in improving positioning accuracy. For path planning, the global planning method uses the A* algorithm, and through the time elastic band (TEB) local path planning algorithm. After repeating the accuracy test 15 times, the average absolute error of the localization was 4.48 cm, which is more accurate than the result obtained using Cartographer SLAM alone at 9.94 cm. Hence, the positioning accuracy was improved by 55%.