This GitHub project focuses on the design, analysis, and implementation of a quadruped walking robot. The project involves CAD design, kinematic analysis, and simulation of the robot's movements using Python (PyBullet), ROS, SolidWorks, MATLAB, and SIMULINK (Robotics Toolbox).
As a team lead of four students, the main objectives were to:
- Redesign the robot's legs to increase its workspace and capabilities.
- Implement yaw, pitch, and roll motions for the quadruped robot.
- Analyze various gaits, such as trot, canter, and pace, to assess performance and stability.
- Conduct kinematic workspace analysis and use the kinematics equations to create simulations in PyBullet and SIMULINK.
The project's primary goal was to redesign the quadruped robot's legs to enhance its range of motion and increase its workspace. Quadruped robots have numerous practical applications, such as search and rescue missions, exploration in challenging terrains, inspection of industrial equipment, and agricultural tasks like herding livestock.
The motivation behind this project stems from the growing importance of legged robots in robotics research. Legged robots offer superior capabilities to navigate complex and uneven environments, making them ideal for hazardous scenarios and missions where traditional wheeled robots struggle. Moreover, legged robots show promise in reducing environmental impact, as they have lower ground pressure and consume less energy compared to wheeled vehicles.
The new leg design enhances the robot's workspace and maintains the functionality of the previous design. This increased range of motion allows the robot to manoeuvre in cramped quarters and low-lying areas effectively. Additionally, the improved legs enable the robot to perform backflips, demonstrating its versatility in various scenarios.
Detailed kinematic analysis and mathematical calculations behind the robot's motion can be found on our Notion page.
Simulations demonstrate the robot's capabilities with the redesigned legs, showcasing its ability to maintain functionality while offering increased mobility. The robot can now lower its height significantly by moving its limbs out of the plane, making it even more adaptable to different environments.
The project utilizes the following technologies:
- Python (PyBullet) for simulation and physics-based modeling.
- ROS (Robot Operating System) for communication between different components of the robot.
- SolidWorks for CAD design and mechanical modeling.
- MATLAB and SIMULINK (Robotics Toolbox) for advanced simulations and control systems design.
- GitHub for version control and collaborative development.
To run the simulations or contribute to the project, follow these steps:
- Clone this GitHub repository:
git clone https://github.com/FanFeast/Quadruped_Robot.git
- Set up the required software dependencies: PyBullet, ROS, SolidWorks, MATLAB, and SIMULINK.
- Explore the various files and folders to understand the project's structure.
- Refer to the documentation and Notion page for in-depth analysis and calculations.
- Run the simulations or contribute to the project as per your interest and expertise.
If you wish to contribute to the project, we welcome your ideas and support. Please follow these guidelines for contributing:
- Fork this repository to your GitHub account.
- Create a new branch for your feature or bug fix:
git checkout -b feature/your-feature-name
. - Make your changes and commit them with descriptive commit messages.
- Push your branch to your forked repository:
git push origin feature/your-feature-name
. - Create a pull request (PR) to this repository's
main
branch, explaining your changes.
Let's collaborate to make this quadruped robot project even better!
The project is licensed under the MIT License.
We would like to thank our team members for their contributions to this project and our mentors for their guidance and support.
Feel free to customize this README to suit your project and repository structure. Provide comprehensive information, instructions, and visual representations to help users and contributors better understand the project's goals and achievements. Good luck with your Quadruped Robot Project!