When a customer orders at a pizza place, the kitchen monitor displays the order number, table number, and order details. When the employee confirms, the table number is sent to the AMR bot. The AMR bot is in the Waiting state before receiving an order, and when the employee touches the Start button on the AMR bot's display, it starts driving to the predefined table coordinates. Once driving begins, the status changes to Moving, and after delivery is complete, it changes to Completed. Each time the status changes, it is displayed on the AMR bot's display.
cd ~/b3_ws
rm -rf ./install ./build ./log
colcon build
source install/setup.bash
store order infomation and query DB
python3 api_server.py
Save order information to DB (API server operation), send ROS2 service request to kiosk. When [Cancel], execute CancelService, when [Complete], send table target location to AMR bot as service (GoalLoc).
ros2 run pizza_serving_bot kitchen
Send a request to the ROS2 Order Service (OrderService) from the table, and publish a call to the employee topic (CallManager)
ros2 run pizza_serving_bot kiosk
AMR bot displays status value, navigation to the target table, and returns to the original location when you press confirm after arrival.
ros2 run pizza_serving_bot amr