Social Robot 🤖
Mission Statement
Build the next iteration of healthcare assistance robots form scratch
Table of Content:
1. Objective
The trend of technology today is to develop systems that incorporate the human as a part of their design so that these products could be suitable for human use. It is the same with robots. The aim of this project is to develop a social robot that can assist people in daily mundane tasks, such as delivering stuff, servicing customers, etc. In cooperation with our industry partners, we are designing this product to be used in healthcare environments, such as hospitals or nursing homes. The social robot will have one camera mounted on top as its “eyes”, a speaker, two arms and a mobile base to move around. The main task of this project for the SP Engineering Show 2016 is for the social robot to serve people by taking orders and delivering drinks. 30 students from SMAE and SEEE have been involved in this project. A mini-PC based on AMD processor has been applied to control the robot, including the technology of object recognition, speech recognition, arm motion operation, as well as mobile base navigation. With the integration of all the functions, the robot will be able to autonomously navigate itself, get orders from people and deliver drinks. The main focus of my project is the execution of the two Mico arms using ROS (Robot Operating System). Furthermore, the calculation and designing of the whole body structure including a mobile base for navigation.
2. Technical Summary
This work was conducted in 2016 during a six-month internship period at the Robotics and Autonomous Systems Lab within Singapore Polytechnic in cooperation with various industry partners. As a co-learder of 12 students for different educational backgrounds we developed a 1.5m tall robot from scratch. Including Scope definition, System Design, Implementation, and Verification. Unfortunately, confidentiality rules apply which doesn’t allow me to publish technical details on the software implementation.
2.1 Hardware
2.1 Software
Our entire software stack was developed based of ROS. It is an open-source operative system for robots. It provides the services of including hardware abstraction, low-level device control, implementation of commonly used functionality, message passing between processes, and package management. A ROS system is comprised of a number of independent nodes, each of which communicates with the other nodes using a publish/subscribe messaging model. We developed software for image segmentation and extract catesian coordinates from the given camera feed based on OpenCV. The coordinates are then published to the mico arm. We used Moveit! is a very powerful package to plan motions, manipulation, and collision checking algorithms. We designed the robots skeleton also called urdf (universal robot description file) to use the robot on simulation.