Гексопод
Первая статья из цикла по проектированию/реализации гексопода
ESP32-S3R8
Года 2 назад попал в руки микроконтроллер ESP32-S3R8, он же Lilygo T-display-s3, написал часы на TinyGO и… забросил.
И вот на дворе 2026 и опять чешутся руки и хочется что-то поинтересней очередного API/GRPC и уж точно не telegram-bot.
Если ресёчить какие-нибуть проекты на ESP32, то в первую очередь попадаются сканер WiFi:
package main
import (
"time"
"tinygo.org/x/espradio"
)
func main() {
time.Sleep(2 * time.Second)
println("Initializing Wi-Fi...")
if err := espradio.Enable(espradio.Config{}); err != nil {
println("Enable error:", err.Error())
return
}
if err := espradio.Start(); err != nil {
println("Start error:", err.Error())
return
}
for range time.NewTicker(5 * time.Second).C {
println()
println("Scanning Wi-Fi...")
aps, err := espradio.Scan()
if err != nil {
println("Scan error:", err.Error())
} else {
println("Found:", len(aps))
for _, ap := range aps {
println("SSID:", ap.SSID, "| RSSI:", ap.RSSI, "dBm")
}
}
}
}
прошиваем…
> tinygo flash -monitor -target=esp32s3-generic -serial=usb -port=COM6 .
Но есть же ещё и Ble/Bluetooth - я поигралася с коммутацией ESP32 с велокомпом (ВК), но там случилось ой, всё из-за проприетарности и отсутствия документации API самого ВК, а играть в реверс-инжиниринг я пока не настроен.
Хочу павука
На просторах интернета попалась статья про Шестиногий робот-паук с сервоприводом и Arduino - отдельное спасибо автору за проделанную работу.
Что я хочу:
- 3 сервопривода на каждую ногу и того - 18 сервоприводов
- 3 “правых” ноги подключены к “правому”
PCA9685, 3 “левых” - к “левому” - и того - 2PCA9685- тут нужно будет поработать паяльником для переключения джампера адресации ШИМ - 2 x
PCA9685последовательно подключеныPCA9685->PCA9685->ESP32S3 ESP32S3- это у нас станет контроллер движения- отдельная линия питания для логического блока, отдельная для силового блока
- Orange PI 4 LTS подключается к ESP32 по
UART_RX+UART_TX