Skip to content

NSCL/servingbot_ros

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Servingbot

These are packages for mobile manipulator control.

Node Communication

Scenario video

https://youtu.be/7-oHuMfVjQM

Reference site

Mobile robot

Manipulator

Requirements

Mobile robot

$ sudo apt-get install ros-kinetic-move-base
$ sudo apt-get install ros-kinetic-gmapping

If you include the packages about navigation-kinetic-devel, you don't need you install below components

$ sudo apt-get install ros-kinetic-amcl
$ sudo apt-get install ros-kinetic-rosserial-python
$ sudo apt-get install ros-kinetic-map-server
$ sudo apt-get install ros-kinetic-range-sensor-layer
$ sudo apt-get install ros-kinetic-global-planner
$ sudo apt-get install ros-kinetic-dwa-local-planner
$ sudo apt-get install ros-kinetic-sensor-msgs

If you have errors about turtlebot3_msgs, download the package.

$ cd ~/catkin_ws/src
$ git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git

Manipulator

Install Moveit

$ sudo apt-get install ros-kinetic-moveit

This robot used librealsense v2.10.3 and realsense_ros 2.0.4.

Set object image folder location

Modify the objects folder path of find_object_3d_D415.launch

<param name="objects_path" value="~/Pictures/objects" type="str"/>

Application

Download App

Setup for embedded PC

Time synchronization

If this command doesn't work, you will have to fix it manually.

$ sudo ntpdate -u time.bora.net

Power mode setting for Jetson TX2

$ roslaunch servingbot_bringup servingbot_robot.launch

How to run "ServingBot"

Run Mobile Manipulator

  • Mobile robot

Excute the Mobile robot with navigation

  1.  $ roslaunch servingbot_navigation servingbot_navigation_all.launch 
  • Manipulator

Excute the Manipulator with find objects

  1.  $ roslaunch manipulator_moveit_config_second manipulator_all.launch 
  • Simple_navigation_goal

Excute the package that stores location information

  1.  $ rosrun simple_navigation_goals_pose simple_navigation_goals_pose 
  • App communication

Receive order information from Tablet

  1.  $ rosrun rosjava_catkin_package_a my_pub_sub_tutorial com.github.rosjava.rosjava_catkin_package_a.my_pub_sub_tutorial.Talker 

Run only Mobile robot

  • Bringup

Excute the robot

$ roslaunch servingbot_bringup servingbot_robot.launch
  • Mapping

Excute slam with gmapping

$ roslaunch servingbot_slam servingbot_slam.launch

Teleoperation using keyboard

$ roslaunch servingbot_teleop servingbot_teleop_key.launch

Save the map

$ rosrun map_server map_saver -f {file_name}
  • Navigation

Excute the navigation package

$ roslaunch servingbot_navigation servingbot_navigation.launch

Excute the package that stores location information

$ rosrun simple_navigation_goals_pose simple_navigation_goals_pose

Run only Manipulator

  • Bringup

Excute the robot

$ roslaunch servingbot_bringup servingbot_core.launch
  • MoveIt

Direct control of the Manipulator with Rviz

$ roslaunch manipulator_moveit_config_second demo.launch

Etc

  • Excute realsense device

$ roslaunch realsense2_camera rs_camera.launch
  • Excute find objects

Excute only find objects

$ roslaunch find_object_2d find_object_3d.launch

Excute find objects with D415

$ roslaunch find_object_2d find_object_3d_D415.launch
  • Communication between Mobile robot and Manipulator

$ roslaunch serving_bot serving_bot.launch

About

Mobile Manipulator control package for beverage serving automation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 91.2%
  • CMake 4.5%
  • Python 2.4%
  • C 1.6%
  • Other 0.3%