Coder Social home page Coder Social logo

esp32_quadruped's Introduction

ESP32 QuadRuped

An open-source 3D-printed quadrupedal robots with ESP32. (SpotMicro and Kangal)

  • Gait pattern generator using Processing
  • QuadRuped simulation using Processing
  • Balancing using IMU
  • FlyPad, GameSirT1D and Bluetooth LE joystick supported

1.Schematic


  • Essential parts

    part name description unit
    ESP32 LOLIN32 cpu 1
    PCA9658 module servo motor controller 1
    SPT5430HV-180W 8.4V HV servo motor 12
    DC-DC buck converter 7V-28V to 5V 3A 1
    1S3P 18650 battery lithium ion battery 2
    WS2812 RGB LED RGB LED for eyes 2
    Round Rocker Switch Switch with LED 1
  • Optional parts

    part name description unit
    HX-2S-JH20 lithium ion 2S charger 1
    PDC004-PD 9V usb-c PD decoy module 1
    STPS2045C power shottky rectifier 1
    battery indicator Lithium Battery Capacity Indicator 1



2.Hardware Configuration

  • Kangal

    click to youtube video

  • SpotMicro

    click to youtube video

3.Simulation

  • pose and walking simulation with processing.

    moving keys

    key camera key quadruped control
    1 Top View j / l roll- / roll+
    2 Right View k / i pitch- / roll+
    3 Left View u / o yaw- / yaw+
    4 Front View p reset
    up camera up q / e z- / z+
    down camera down w / s y- / y+
    left camera left a / d x- / x+
    right camera right w / s y- / y+
    home camera z up - / = step- / step+
    down camera z down space walk / stop
  • gait pattern generation with processing



4.robot control with BLE(bluetooth le) joystick

key control key control
A walk / stop L2+L1 step interval-
B gait change L2+R1 step interval+
X balance mode L2+X step height-
Y flash ledstrip L2+Y step height+
THUMB-L save settings L2+A step dist-
THUMB-R load settings L2+B step dist+
DPAD-L toe offset- R2+L1 toe offset-
DPAD-R toe offset+ R2+R1 toe offset+

Reference

esp32_quadruped's People

Contributors

pinggusoft avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

esp32_quadruped's Issues

question only

Hello! Thank you for providing the code and wiring diagram! But I have three small questions now: 1. Is the esp32 wiring method in the drawings published by github different from the physical pictures in the videos posted on your youtube? 2. I also saw the mpu accelerometer in the youtube video, and there is no 3. The hardware codes in the drawing are U1, U3 and U4. Why is there no U2? The above are my questions. I don't know programming and wiring; please forgive my ignorance! Thank you

Legs going to random positions

Hello my name is Klaas Schoute and for my minor project in robotics we are creating the kangal quadruped model. We are already at an advanced stage with building, but we are running into a problem that we cannot immediately explain.

Setup

We put the robot on a stand (so it's free in movements) and the ESP32 is directly connected to our laptop, so that we can give serial commands via platformio.

https://youtu.be/XGtyV45Oeas

The Problem

When we flash the firmware on the ESP32 and press the space bar directly, the legs are moving to random positions causing it to get stuck. The big question is why this happened? As far as our knowledge goes, this seems to be mainly a software problem. The PCA9658 could send random position to the servo when there is an energy peak, but I don't think this is an issue in this case.

Workaround

How we've been able to work around this problem so far:

  • Flash the ESP32
  • Check if the walking mode is off
  • Move the robot to a forward position of 1521
  • Press the space bar

When we run it in this order the robot will neatly raise or lower all its legs (switch between normal or transport modes).

Logs

--- More details at https://bit.ly/pio-monitor-filters
--- Miniterm on COM3  115200,8,N,1 ---
--- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
-----------------------
�setup start !!! : heap:245884, psram:0
MPU6050 connection failed
[STEP] x: 30.000, y: 30.000, z: 20.000
setStepsPerSec: 7.00
tipOffsetX:-20.00
user data LOADED !!!
[target] x:  0.000, y:  0.000, z:-45.000
[dir_inc] x:  0.000, y:  0.000, z: -0.045
setup finished !!!
RC: 1500  1500  1500  1500
RC: 1500  1500  1500  1521
Walking: on (1)
Walking: off (0)
[target] x:  0.000, y:  0.000, z:  0.000
[dir_inc] x:  0.000, y:  0.000, z:  0.045
Stand: normal (1)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.