All Projects → SovGVD → esp32-robot-dog-code

SovGVD / esp32-robot-dog-code

Licence: MIT license
WIP: ESP32 powered robot dog, quadruped robot. This is just code, hardware in the other repositories

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to esp32-robot-dog-code

Peabot-Library
Peabot: quadruped robot library for Raspberry Pi
Stars: ✭ 18 (-75%)
Mutual labels:  servo, quadruped
DC-Servo
Analog speed control of Brushed DC Motor
Stars: ✭ 16 (-77.78%)
Mutual labels:  servo
sbus
Arduino and CMake library for communicating with SBUS receivers and servos.
Stars: ✭ 277 (+284.72%)
Mutual labels:  servo
EvoArm
An open-source 3D-printable robotic arm
Stars: ✭ 114 (+58.33%)
Mutual labels:  servo
quadruped control
Quadruped control architecture
Stars: ✭ 46 (-36.11%)
Mutual labels:  quadruped
Browserhtml
Experimental Servo browser built in HTML
Stars: ✭ 2,609 (+3523.61%)
Mutual labels:  servo
Servo
The Servo Browser Engine
Stars: ✭ 20,469 (+28329.17%)
Mutual labels:  servo
purple-eye
A web-bluetooth controlled one-eyed robot
Stars: ✭ 26 (-63.89%)
Mutual labels:  servo
pwm-pca9685-rs
Platform-agnostic Rust driver for the PCA9685 I2C 16-channel, 12-bit PWM/Servo/LED controller
Stars: ✭ 19 (-73.61%)
Mutual labels:  servo
pigpio-client
A nodejs client for pigpio socket interface.
Stars: ✭ 24 (-66.67%)
Mutual labels:  servo
pca9685
This software is a devLib extension to wiringPi http://wiringpi.com/ and enables it to control the Adafruit PCA9685 16-Channel 12-bit PWM/Servo Driver http://www.adafruit.com/products/815 via I2C interface.
Stars: ✭ 48 (-33.33%)
Mutual labels:  servo
servonk
Servo on Gonk
Stars: ✭ 84 (+16.67%)
Mutual labels:  servo
pumpkin-pi
Raspberry pi project that controls jack-o-lantern via servo motor and PIR motion sensors
Stars: ✭ 15 (-79.17%)
Mutual labels:  servo
Stanforddoggoproject
Stanford Doggo is an open source quadruped robot that jumps, flips, and trots!
Stars: ✭ 2,016 (+2700%)
Mutual labels:  quadruped
MIT-Cheetah-Note
MIT Cheetah仿真平台源码笔记以及一部分第三方组件
Stars: ✭ 30 (-58.33%)
Mutual labels:  quadruped-robot

Small Robot dog (quadruped)

Disclaimer

This project has been done mostly for fun about a year ago. Some libraries have been updated, so it basically does not work any more. Not every planned feature was released. No PCB is made and it creates a lot of trouble for most of you. I'm sorry to say, but I'm not going to provide any support for it any more. It's exhausting and sometimes just destroys any intentions to continue. This is not comercial project and I'm not going to do something like Donation. Maybe I'm disappointing someone. Sorry. Project closed.

Small robot dog

Hardware

  • ESP32
  • IMU (not implemented)
  • 12 servos TowerPro mg90d
  • Two 18650

Software

  • Arduino IDE compatible

TODO

  • use power sensor and IMU

How to

Calibrate servos (create servoMainProfile)

  • Print servo_calib tool and install servo into it: circle plate with dots, 10deg each from 0 to 180.
  • use tools/servoCalib.ino and connect servo to 14 pin
  • open Arduino IDE terminal and input 1500 (and press Enter) - this should be servo middle and it should point to the middle dot of printed tool
  • decrease value to find minAngle and degMin values for it (start with 800 and decrease it until servo stop move, than return back one step, e.g. set 790 - servo moved, 780 - servo moved, 760 - servo don't move, use 780)
  • do the same to find maxAngle and degMax but make value and start from 2100 and increase values
  • great, now we know our servo limits (or at least what are the limits for lib+servo), time to find more accurate servo positions
  • input values until you will not find proper positions for deg30, deg50...deg130, deg150

Legs

Assembling

  • to assembly legs correctly print leg_calib tool/template one as it is and one mirrored for the other side of robot for Beta and Gamma angles, as also Alpha angle tool
  • power up servo and connect ESP32 to you computer, open Arduino IDE terminal
  • input set servo_to_calib to set all servo to position expected for printer tool
  • assemble legs as closer as possible to expected leg parts positions according to the tool (90deg, 45deg, 90deg)

Calibration

  • repeat steps 2,3 of Legs->Assembling instruction
  • input set help to see the list of available commands, we are interested in XX_HAL_trim_xxxx, e.g. LF_HAL_trim_alpha, where LF - left front leg, and alpha is the angle name
  • put Alpha leg tool on top of the robot legs servo, surface of tool should be (near)perfectly align with servos body, if not, use XX_HAL_trim_alpha value_in_deg command to set servo trim value, e.g. set LF_HAL_trim_alpha -3, it should not be too big, in other cases you need to repeat Assemble step
  • using tool for Beta and Gamma angles, calibrate/trim other servos
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].