All Projects → NicHub → stewart-platform-esp32

NicHub / stewart-platform-esp32

Licence: GPL-3.0 license
https://ouilogique.com/plateforme-de-stewart-esp32/

Programming Languages

G-code
73 projects
c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to stewart-platform-esp32

Platformio Atom Ide
PlatformIO IDE for Atom: The next generation integrated development environment for IoT
Stars: ✭ 475 (+2694.12%)
Mutual labels:  esp32, platformio
Esp32 Paxcounter
Wifi & BLE driven passenger flow metering with cheap ESP32 boards
Stars: ✭ 844 (+4864.71%)
Mutual labels:  esp32, platformio
Guislice
GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL
Stars: ✭ 534 (+3041.18%)
Mutual labels:  esp32, platformio
Deviot
Sublime Text plugin for IoT development based in PlatformIO ecosystem (Arduino IDE)
Stars: ✭ 281 (+1552.94%)
Mutual labels:  esp32, platformio
Dhtesp
Optimized DHT library for ESP32/ESP8266 using Arduino framework
Stars: ✭ 184 (+982.35%)
Mutual labels:  esp32, platformio
Esphome
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Stars: ✭ 4,324 (+25335.29%)
Mutual labels:  esp32, platformio
Arduino Esp32
Arduino core for the ESP32
Stars: ✭ 7,741 (+45435.29%)
Mutual labels:  esp32, platformio
coro2sens
Build a simple device that warns if CO₂ concentration in a room becomes a risk for COVID-19 aerosol infections.
Stars: ✭ 32 (+88.24%)
Mutual labels:  esp32, platformio
Openmqttgateway
MQTT gateway for ESP8266, ESP32, Sonoff RF Bridge or Arduino with bidirectional 433mhz/315mhz/868mhz, Infrared communications, BLE, Bluetooth, beacons detection, mi flora, mi jia, LYWSD02, LYWSD03MMC, Mi Scale, TPMS, BBQ thermometer compatibility, SMS & LORA.
Stars: ✭ 2,413 (+14094.12%)
Mutual labels:  esp32, platformio
Irremoteesp8266
Infrared remote library for ESP8266/ESP32: send and receive infrared signals with multiple protocols. Based on: https://github.com/shirriff/Arduino-IRremote/
Stars: ✭ 1,964 (+11452.94%)
Mutual labels:  esp32, platformio
esp-rgb-led-matrix
Full RGB LED matrix, based on an ESP32 and WS2812B LEDs.
Stars: ✭ 91 (+435.29%)
Mutual labels:  esp32, platformio
Esp8266 React
A framework for ESP8266 & ESP32 microcontrollers with a React UI
Stars: ✭ 193 (+1035.29%)
Mutual labels:  esp32, platformio
SensESP
Universal Signal K sensor framework for the ESP32 platform
Stars: ✭ 83 (+388.24%)
Mutual labels:  esp32, platformio
Platform Espressif32
Espressif 32: development platform for PlatformIO
Stars: ✭ 333 (+1858.82%)
Mutual labels:  esp32, platformio
esp32cam-ready
Plug and Play firmware for the esp32cam. Flash, provision and connect to rtsp.
Stars: ✭ 67 (+294.12%)
Mutual labels:  esp32, platformio
Platformio Core
PlatformIO is a professional collaborative platform for embedded development 👽 A place where Developers and Teams have true Freedom! No more vendor lock-in!
Stars: ✭ 5,539 (+32482.35%)
Mutual labels:  esp32, platformio
esp32-internet-ota
ESP32 + GitHub Actions + Husarnet. A boilerplate project for ESP32 allowing in-field firmware update using GitHub Actions workflow.
Stars: ✭ 28 (+64.71%)
Mutual labels:  esp32, platformio
M5Stack-MultiApp-Advanced
A M5Stack firmware made on PlatformIO
Stars: ✭ 155 (+811.76%)
Mutual labels:  esp32, platformio
Ttgo T Wristband
First steps with TTGO T-Wristband
Stars: ✭ 50 (+194.12%)
Mutual labels:  esp32, platformio
Easybutton
Arduino library for debouncing momentary contact switches, detect press, release, long press and sequences with event definitions and callbacks.
Stars: ✭ 187 (+1000%)
Mutual labels:  esp32, platformio

S T E W A R T    P L A T F O R M    O N    E S P 3 2

ABSTRACT

This is an implementation on the ESP32 of a 6-degrees of freedom hexapod — also called Stewart Platform, Gough-Stewart Platform or Parallel manipulator. The actuators are PWM rotary servo motors and the program is written in Arduino C for PlatformIO Core 4.0. This project is done in the frame of the P19 project at the Microclub.

Currently the platform can be operated:

The kinematics calculation is done in Hexapod_Kinematics.cpp and can be also be compiled in a desktop C++ program to cross check calculations (i.e. without actuating the servos). I managed to compile it with g++ on macOS Mojave and macOS Monterey. See hexapod_desktop_app/hexapod_desktop_app.cpp.

HOME PAGE OF THE PROJECT

The home page is a work in progress, but the video shows what the platform can do. The original implementation used an analog joystick, but the current version uses a Wii Nunchuck.

https://ouilogique.com/plateforme-de-stewart-esp32/

GEOMETRY SETTINGS

Geometry settings are defined in Hexapod_Config_1.h. The meaning of the parameters is also explained in doc/hexapod-parameters.pdf.

REQUIREMENTS

Create a file called src/WifiSettings.h containing:

#pragma once

const char *ssid = "";            // SSID of your WiFi router.
const char *password = "";        // Password of your WiFi router.
const char *ap_ssid = "STEW32-";  // SSID of the ESP32 WiFi network in soft-AP mode (15 char max).
const char *ap_password = "";     // Password of the ESP32 WiFi network in soft-AP mode.
                                  // Must be 8 char min or empty for no password.

COMPONANTS & WIRING

ESP32

WeMos ESP32 WROOM https://www.banggood.com/fr/WeMos-ESP32-WiFi-Bluetooth-Development-Board-Ultra-Low-Power-Consumption-Dual-Core-ESP-32-ESP-32S-p-1175488.html

PCA9685

https://www.mouser.ch/ProductDetail/adafruit/3416/?qs=F5EMLAvA7ICYzX4Av%252bhRHw==

External power supply

I currently use a 5 V / 10 A power supply, but 5 V is not enough. I need to upgrade to 7 V. https://aliexpress.com/af/32810906485.html

Rods

M3x100mm (140mm total) https://aliexpress.com/af/32775630549.html

Servo horn arm

Tritanium color https://aliexpress.com/af/32843432977.html

Servos

Pins are defined in Hexapod_Config_1.h.

servo ESP32 pin
0 13
1 15
2 27
3 14
4 33
5 25

Nunchuck

The Nunchuck library uses Wire.h and standard I²C connections internaly.

Pins are seen from left to right and top to bottom looking at the Nunchuck connector.

Cut the cable extension to connect to the ESP32.

color signal ESP32 pin
white SCL IO22
NC
red GND GND
green VCC VCC
black ATT IO4 (Not required, gives VCC if Nunchuck is connected)
yellow SDA IO21

EXTERNAL LIBRARIES

The external libraries are installed automatically during the first build because they are declared under lib_deps in platformio.ini.

I²C Addresses

Default address New address Device
0x40 0x41 PCA9685
0x70 = PCA9685 (broadcast)
0x40 = Nunchuck (accel)
0x52 = Nunchuck (joystick)
0x68 = GY-91 (MPU9250)
0x76 = GY-91 (BMP280)

CREDITS

Primary source of inspiration

Kinematics

Serial buffer for G-Code

FURTHER READING

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].