(We won the Encouragement prize!)
Required version(tested):
- Ubuntu 18.04 (ROS Melodic)
Hardware Information:
- Jetson Nano Developer Kit
- OpenCR
- Dynamixel XL430-W250-T
- Project Introduction
- Features
- Related Source
- How to Start
- Team Information
Serving robots that are currently applied to most restaurants are half-automatic. When serving, the robot brings the dishes to the side of the table, and the customer has to move the dishes to the table by himself. or restaurant staff came to serve the dishes from robot to table. The biggest problem is that you absolutely need staff to clean up the table. So, restaurant operators who currently use serving robots nowdays require additional staff even if they have robots.
d2c means that "delivery to(2) customer", we are developing the delivery and serving robot.
the robot uses the usb camera to detect the object(bowl). we use YOLOv3-tiny to detect the object
If the robot detected the object(bowl) and its position. then the robot will calculate inverse kinematics of the manipulator and move the manipulator to the object.
$ roslaunch d2c_robot_description display.launch
$ git clone https://github.com/leggedrobotics/darknet_ros.git
$ git clone https://github.com/ROBOTIS-GIT/DynamixelSDK.git
$ git clone https://github.com/junghs1040/dynamixel-workbench.git
roslaunch the package to turn on the YOLO object detection and use the usb camera
$ roslaunch darknet_ros darknet_ros.launch
$ roslaunch usb_cam usb_cam-test.launch
roslaunch the package to control the robot and dynamixel
$ roslaunch d2c_robot_libs d2c_robot.launch //keyboard control
$ roslaunch dynamixel_workbench_controller dynamixel_controller.launch
$ roslaunch dynamixel_workbench_operator my_operator.launch
you can control the robot by keyboard key (q,w,e) q: initialization (put manipulator aside to detect the object by camera) w: serving motion e: cleaning motion (when he object are detected)
you can see that robot serving motion to pre defined coordinate
Youtube link: https://www.youtube.com/watch?v=FxkeqOVxc3Mfirst the robot detected the object(bowl), then he robot clean the bowl by moving to object's coordinate.
Youtube link: https://www.youtube.com/watch?v=MeFMGXxcLSg- Jung Hwan Seok (Hanyang univ. Mechanical Engineering)
- Nam Yong Jae (Hanyang univ. Mechanical Engineering)