This repository contains software for Phoenix Hexapod robot. Software is designed to be reconfigurable, and can be used to control another six legged robots with similar kinematics.
Software includes firmware of the robot and kinematic simulation application.
Short video is available on YouTube.
It uses CGK for geometric computations.
- Phoenix Hexapod Kit
- WeAct BlackPill with STM32F401/STM32F411 MCU (Cortex-M4 @84 MHz, HSE @25MHz)
- 18x DS3218 PRO motors
- 2x PCA9685 PWM/Servo Driver boards to control motors
- 2x relay modules
- PlayStation2 Controller
Software can work on Arduino Due (ATSAM3X8E, Cortex-M3 @84 MHz), however, it doesn't suppot hardware floating point operations and not enough to achieve desired performance of used algoriphms.
- Forward kinematics
- Inverse kinematic solvers
- Algebraic
- Geometric
- Numerical (Gradient Descent and Levenberg-Marquardt)
- Gait transition (fixed step)
- Body trajectry control by the PlayStation/2 controller
- Free gait generator for crab movement and turns
- Trajectory generators of the legs:
- Stance phase
- 3D geometry transformation, generates coordinates of the points and use inverse kinematics of the legs to convert into joint's angle values
- whole body velocity transformation matrix, which transforms 6D velocity of the robot's body into velocities in all joints, and uses integration to produce joint's angle values
- Swing phase
- quintic polinomial interpolation
- Stance phase
- Improvement of free gait generator
There are some notes about use of things. They was done to don't forgot key features, even if they not implemented in robot.
They are written on Russian, I hope Google Translator can translate them to your language.