The Robot...

    holds a device

    such as iPads and phones


    frees your hand

    to do other important things

    follows you

    carrying a device around as you walk

  • \\



    the robot

    The robot Leona is designed to hold electronic devices such as iPads and phones for its users. Its aim is to free people's hands even when one is moving around.


    I got the idea of its function for I need to use electronic devices even when I have no spare hands. For example, I need to look through the recipe on devices from time to time when I am cooking. I also need to walk around the kitchen with my wet hands.


    The robot is driven by Raspberry Pi and Arduino. Its shell is made of acrylic boards. The use of mecanum wheels enables it to move in all directions. It used a camera to detect the position of the user.


    the contributor

    I started to realise my idea of the robot in early August, 2017.


    Before that, I had very little knowledge and experience about coding and robotics.

  • //


    About Learning

    Python and Arduino

    Since I did not know anything about robotics before this project, I needed to acquire coding skills. I did this by attending Python courses. I also learned how to use Arduino and did a bit coding with it, since it is a crucial component in controlling the robot.

    About Designing

    From initial to latest

    My initial design was quite different from my final outcome. It was my initial idea to cover all the wires and components, and the robot was designed to be around 1.5m tall. I first used a illustrator to imitate the design. For the final outcome, I laser cut black acrylic boards and used them for the outer shell of the robot, considering their density and appearance. I also acquired CAD skills to design some special components and 3D printed them to fit the robot.

    About Coding

    OpenCV on Python and testing the code

    My partner did most of the software part of the robot. We used openCV on Python to detect human faces and follow it. After the code was mostly finished, I made a small robot to test the code. This was a robot that only had the electric components and a board made of wood.

    About Hardware

    Centre of mass, motors and wheels

    My work was mainly the hardware part of the robot, and problems did come up frequently.. Since the height of the robot, the centre of mass of the robot was relatively high. Therefore, there was a great chance for the robot to tilt when its acceleration was high. There could also be risks of falling. To solve this problem, I put all the electric components on the bottom of the robot. Also, the thickness of the shell of the bottom part of the robot was increased. The robot does not tilt as much now. Another major problem occurred on the motors and the wheels for not being powerful enough. They were then changed.

    About Debugging

    Adjusting speed

    The main adjustments I did on the code was the speed and angle changes when the robot was on. The tilt of the robot was reduced after changing the speed of the robot on Python.

  • \\

    Future Developments

    The detection of user is not quick enough. The robot easily lose sight of the user when the user's face is moving upward or downward. Adding another camera above the initial one may solve the problem. Mapping may also be added into system in order to let the robot follow the user more fluently. The robot still tilt a bit when it is accelerating. This problem needs to be solved.

  • //


    3 septembre 2017 · About Debugging,About Hardware
    I got rid of the cover of the acrylic boards at this final stage, put the electronic device holder on the top and fix the camera onto it. I did some final adjusts to the code for more fluent movements. And finally, sticked its name "Leona" at the very bottom on its back side. A demonstration was...
    31 août 2017 · About Hardware
    After the robot was assembled, I face a severe problem of the motors and wheels. They were not powerful enough to support the heavy robot, I was forced to go to the market again, and pick motors with smaller rotation speed and wheels with bigger radius. After that, I needed to reconstruct the...
    29 août 2017 · About Hardware
    The electronic device adjustable holder was designed on CAD and 3D printed. To match with the colour of the robot, I sprayed it with black paint. Another component was made to let the linear actuator pull the adjustable box with a bigger contact surface. However, I needed to make the hole of...
  • \\


  • //


    Frank Zheng Xu

    Undergraduate Year 1

    Frank's work mainly focused on the software part of the robot.

    Zhang Zhan


    ZZ helped a lot in all ways. From material collecting to demonstration shooting.

  • \\



  • //