These are the files developed in Yihan LIU's Final Year Project, a 5-axis vision articulated robot The project is developed into 4 sections
This includes the CAD files of designed robot, whcih is designed base on BCN3D Moveo.
CAD file is designed in the SOLIDWORKS.
The information about BCN3D Moveo could be found in https://github.com/BCN3D/BCN3D-Moveo.
Joint 1 of Moveo has been redesigned to use a planetary reducer replacing the timing belt, which causes the joint 1 could rotate 360 degrees
Diagram of planetary reducer could be demonstrated as
Also, there is a fixator designed on the end effector to install depth camera.
The disgram of designed robot could be shown as
Also, there are some fixators designed to install on each joint to test accuracy of rotational angle of joints, which could be shown as
The processor used in this project is Raspberry Pi Model 4B.
The camera used for vision development is Intel RealSense D435.
These sections includes the MATLAB simulation codes and kinematic codes used in the Raspberry Pi.
Run forward kinematics (joint angles -> coordinates of end effector) using matrix.
Run forward kinematics (joint angles -> coordinates of end effector) using equations.
Run inverse kinematics (coordinates of end effector -> joint angles).
This simulation needs to install the robotic toolbox from Peter Corke.
Details for installation of this could be found: https://petercorke.com/toolboxes/robotics-toolbox/
Simulate the workspace of designed robot using Monte Carlo method.
These following codes require to install the GPIO and Python library in the Raspberry Pi OS.
Code to switch ON/OFF end effector
Code to calcualte forward kinematic equations
Code to calculate inverse kinematic equations
Code to control the rotation of joints
The following codes for computer vision require to build the environment for RealSense Camera.
Detailed procedure for this could be seen in https://github.com/datasith/Ai_Demos_RPi/wiki/Raspberry-Pi-4-and-Intel-RealSense-D435
Also, OpenCV and its controbution libraries should be installed to processing images.
These could be achieved by
Program to detect the values of HSV parameters of a pixel colour
Program to detect and measure the coordinate of object with a specific colour
The procedures to use facial recognition code are
- Recognize the face and save specific facial images into a database
- Train the camera using database to generate trainer.yml
- Recognize the specific face using trainer.yml
This is the classfication file used for recognizing face, which is copied from https://github.com/opencv/opencv/blob/4.x/data/haarcascades/haarcascade_frontalface_default.xml
Code to capture the facial images for training, images will be generated in the database folder
Code to train the camera using facial images in database, output classification file is saved in trainer folder
Code to recognize a specific face
Following codes is for the applications of integrated robot. The demonstration of it could be viewed via https://uniofnottm-my.sharepoint.com/:f:/g/personal/ssyyl20_nottingham_ac_uk/Er96vf4qYWJBqkzvtPdmCy0BttAT07Y9VWQ2YcLCw33cCg?e=NZlaZr
Program to pick and place different colour objects into corresponding platforms. The program has been divided into different fucntions and the control code is in the control_panel.py.
Program to search and classify different colour objects around the robot into corresponding platforms. The program has been divided into different fucntions and the control code is in the control_panel.py.
Program to unlock and bow to specific face.