fotel masujący na bazie esp32 i STONE LCD

Miejsce dobre do dyskusji nad własnymi projektami - pochwal się wszystkim co samodzielnie stworzyłeś.
ODPOWIEDZ
EfrainKenson
-
Posty: 21
Rejestracja: 21 lip 2021, 7:01

fotel masujący na bazie esp32 i STONE LCD

Post autor: EfrainKenson » 23 wrz 2021, 2:54

Przegląd projektu

Tutaj robimy jest domowy fotel masujący aplikacji, gdy ekran szeregowy LCD jest włączony, interfejs startowy pojawi. Po krótkim pobycie, to będzie skakać do konkretnego interfejsu. Ten interfejs jest używany do ustawiania naszego aktualnego czasu. Podczas ustawiania pojawi się klawiatura. Po ustawieniu klikamy OK, aby przejść do interfejsu wyboru trybu masażu. Tutaj mam ustawione trzy tryby: masaż głowy, masaż pleców i tryb kompleksowy. W trybie, intensywność masażu można ustawić, wysokie, średnie i niskie biegi można ustawić, a odpowiednie światło LED będzie używany do wskazania intensywności; czas masażu można również ustawić, po osiągnięciu ustawionej liczby, to automatycznie zatrzymać; w modelu kompleksowym, głowa i plecy będą masowane w tym samym czasie, i można go wyłączyć, gdy nie jest to potrzebne. Te działania są przez STONE Touch Screen szeregowy ekran portu, aby osiągnąć transmisji poleceń.

Moduły wymagane do realizacji projektu

① Ekran dotykowy STONE;

② ESP32;

③ Napęd i moduł silnika krokowego;

④ Moduł matrycy LED;

połączenie

Obrazek

Projekt GUI

Obrazek

część kodu

Kod: Zaznacz cały

//HEAD

uint8_t   HeadGearHigh[9]       = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0E, 0x01, 0x00, 0x03};

uint8_t   HeadGearMiddle[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0E, 0x01, 0x00, 0x02};

uint8_t   HeadGearLow[9]        = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0E, 0x01, 0x00, 0x01};

 

uint8_t   HeadTiming[9]         = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x11, 0x01, 0x00, 0x09};

 

uint8_t   HeadModeStart[9]    = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x19, 0x01, 0x41, 0x61};

uint8_t   HeadModeStop[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x24, 0x01, 0x46, 0x66};

 

//BACK

uint8_t   BackGearHigh[9]       = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1A, 0x01, 0x00, 0x01};

uint8_t   BackGearMiddle[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1A, 0x01, 0x00, 0x02};

uint8_t   BackGearLow[9]      = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1A, 0x01, 0x00, 0x03};

 

uint8_t   BackModeStart[9]      = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0C, 0x01, 0x42, 0x62};

uint8_t   BackModeStop[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0D, 0x01, 0x43, 0x63};

 

//Integrated

uint8_t   IntegratedModeStart[9]= {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0F, 0x01, 0x44, 0x64};

uint8_t   IntegratedModeStop[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1F, 0x01, 0x45, 0x65};
Wyniki pokazują

Obrazek

demo wideo

https://www.youtube.com/watch?v=iTImQIU5hNE

ODPOWIEDZ