ROBOT board

Plošný spoj je navržen přednostně pro realizaci jednoduchého robotického vozítka. Kromě dvou DC motorků může  ovládat i dva malé přesné krokové motory a tři serva. Ale ukázalo se, že velmi dobře slouží jako univerzální rozhraní pro ESP32 k celé řadě dalších projektů. Zatím testujeme možnost osadit si jí podle potřeby – proto jsou součástky „větší“ (integrované obvody v DILu) – ale předpokládme, že v případě zájmu nabídneme i variantu už osazenou, to pak přejdeme na SMD.

 (Počítáme například i s projektem souřadnicového plotteru – krokové motory x/y / servo pen_up/pen_down, jako jednoduché „kreslítko“).
Je možno jí využít i pro základní projekty s ESP32 (bez nutnosti použití mechatronické části)

Na desku lze osadit: (► návod na osazení)
stabilizátor 7805 – pro řídící elektroniku (při externím výkonovém napájení jiném, než 5V)
řadič H-můstek L293D – pro dva stejnosměrné mororky (5-8V) nebo serva
expandér PCF8574 – 8bit / možno vstupně výstupní
budič sběrnice ULN2803 – pro dva krokové motory
3 pin konektory  pro napojení 3x PWM pro servo i čidla
3 pin konektory – 3x one wire – pro teploměr Dallas / WS RGB LED / …
2x7pin konektor – zprava plný OCTOBUS (napájení/I2c/SPI/D0-D4)
/5pin konektor – zleva I2C a SPI displej (MAX7219)

Samozřejmě také universální sběrnici octoBUS.

Pinout pro Micropython:

oeLAB-esp32 (DoIt) 2x15 pins:                               [ROBOT Board]:
                          -----------     (GPIO)
                      EN -           - D23 (23)  MOSI       [SPI_MOSI_PIN] 
[PIN_ANALOG]    (36)  VP -           - D22 (22)  SCL(I2C)   [I2C_SCL_PIN]
[I39_PIN]       (39)  VN -           - TXD (1)   D2
[I34_PIN]            D34 -           - RXD (3)   D3
[I35_PIN]            D35 -           - D21 (21)  SDA(I2C)   [I2C_SDA_PIN]
[ONE_WIRE_PIN] DEV1  D32 -           - D19 (19)  MISO       [SPI_MISO_PIN]
               DEV2  D33 -  (ESP32)  - D18 (18)  SCLK       [SPI_CLK_PIN]
[MOTOR_12EN]         D25 -           - D5  (5)   CS0        [SPI_CS0_PIN]
[MOTOR_1A]           D26 -           - TX2 (17)             [PIN_PWM1] /Servo1
[MOTOR_4A]           D27 -           - RX2 (16)             [PIN_PWM2] /Servo2
[MOTOR_3A]           D14 -           - D4  (4)              [PIN_PWM3] /Servo3
[MOTOR_2A]           D12 -           - D2  (2)              [BUILT_IN_LED]
[MOTOR_34EN]         D13 -           - D15 (15)             [WS_LED_PIN] //v1(13)     
                     GND -           - GND
                     VIN -           - 3V3 +
                          -----------

Základní blokové zapojení „motorů“ a serv
Na 8-bit za expandérem se dá variantně připojit i klávesnice

Sledovač čáry – jeden z „hello world“ robotických vozítek
Na videu vidíte první hrubý pokus (diskrétní snímání, bez regulace) a další verze už trochu vylepšený FW (při zachování HW)

Prototypy robotických vozítek. Vlevo – k řízení použito Arduino NANO, vpravo ESP32 ►►

https://www.instagram.com/p/BnqAY61nJVR/?taken-by=octopusengine

Proč ESP32?
V současné době se většina jednoduchých malých robotů staví pořád na Arduinu (ATmega328:  16MHz, 32kB flash, 2 kB RAM) – pro srovnání ESP32 má 240Mhz, 16MB flash, 520kB RAM – a cenově je levnější, než Arduino originál. A to se vyplatí 🙂

Na githubu máme přímo pro esp32 a tuto desku přichystáno několik velmi jednoduchých ukázkových programů: (v prostředí C-Arduino ICE, některé části postupně převádíme pod  MicroPython)

https://www.instagram.com/p/BngfARrA4D7/?taken-by=octopusengine

ROBOTboard – ESP32 – testování ultrazvukového dálkoměru ►►

https://www.instagram.com/p/Bn1J88kgP2R/?taken-by=octopusengine


30. září se koná v PP závod robotů – my zkusíme v šibeničním termínu postavit první robotické vozítko – robota, který by to mohl alespoň zvládnout projet ► octopus R01

Další vybrané projekty:
octopus R03 (kovové tělo)
DrawBOT (dvě serva)
PolarGRAPH (dva krokové motory)