Sadržaj:
- Korak 1: Odštampajte ove delove
- Korak 2: Otpremite kôd
- Korak 3: Montaža
- Korak 4: Sastavite dijelove u kacigu
- Korak 5: Priključite napajanje
Video: Lampa na dodir ronilačke kacige: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:06
U ovom uputstvu
Trebat će vam
- Ronilačka kaciga ili ekvivalent
- Neopixel kompatibilan LED prsten (koristio sam prsten sa 38 LED dioda)
- Wemos ESP32 ploča (ili ekvivalentna)
- 3D štampač
Korak 1: Odštampajte ove delove
Ove dijelove će možda trebati prilagoditi ako koristite drugu ronilačku kacigu, saznao sam da je ona koju imam prilično uobičajena
Korak 2: Otpremite kôd
Unesite svoj ssid i lozinku u kôd, a zatim ih prenesite na svoju ploču. Ovo je tu da omogući OTA učitavanje novog koda nakon sastavljanja projekta. Morat ćete instalirati NeoPixelBus by Makuna dostupan ovdje https://github.com/Makuna/NeoPixelBus Također ćete morati instalirati definicije ESP32 ploče u arduino okruženje da biste mogli koristiti ovu ploču.
// Wifi Jazz #include #include #include #include bool wifi_timout = 0; const char* ssid = "SSID"; const char* password = "Lozinka"; // Neopixel jazz #include const uint16_t PixelCount = 38; const uint8_t PixelPin = 19; int colorSaturation = 50; int Osvjetljenje = 50; int R = 0; int G = 0; int B = 0; int Puls = 1600; // Pola vremena između pulsacija RgbColor crno (0); // Button Jazz float Button1_total = 0; int zaglađivanje = 50; const int debounce = 5; float Button1 [debounce]; bool PWR = 0; NeoPixelBus prsten (PixelCount, PixelPin); void setup () {Serial.begin (115200); Serial.println ("Pokretanje"); WiFi.mode (WIFI_STA); WiFi.begin (ssid, lozinka); while (WiFi.waitForConnectResult ()! = WL_CONNECTED) {Serial.println ("Veza nije uspjela!"); kašnjenje (5000); //ESP.restart (); } OTA_init (); touch_pad_init (); touchSetCycles (0x6000, 0x6000); // touch_pad_set_cnt_mode (0, TOUCH_PAD_SLOPE_7, TOUCH_PAD_TIE_OPT_HIGH); ring. Begin (); ring. Show (); } void loop () {if (millis () <600000) {ArduinoOTA.handle ();} else if (wifi_timout == 0) {ArduinoOTA.end (); wifi_timout = 1; WiFi.mode (WIFI_OFF); btStop (); } if (button1_capture () == 1) {ring. ClearTo (crno); ring. Show (); PWR =! PWR; } if (millis () <1500) {PWR = 0;} if (ring. CanShow () && PWR == 1) {Light (0);} delay (10); } void OTA_init () {ArduinoOTA.onStart ( () {Vrsta niza; if (ArduinoOTA.getCommand () == U_FLASH) type = "sketch"; else // U_SPIFFS type = "datotečni sistem"; // NAPOMENA: ako ažuriranje SPIFFS -a ovo bi bilo mjesto za demontažu SPIFFS -a pomoću SPIFFS.end () Serial.println ("Počni ažuriranje" + tip);}).onEnd ( () {Serial.println ("\ nKraj");}).onProgress ( (bezznačni int napredak, bezznačni int ukupno) {Serial.printf ("Napredak:%u %% / r", (napredak / (ukupno / 100)));}). error) {Serial.printf ("Error [%u]:", error); if (error == OTA_AUTH_ERROR) Serial.println ("Auth Failed"); else if (error == OTA_BEGIN_ERROR) Serial.println ("Begin Nije uspjelo "); else if (error == OTA_CONNECT_ERROR) Serial.println (" Connect Failed "); else if (error == OTA_RECEIVE_ERROR) Serial.println (" Receive Failed "); else if (error == OTA_END_ERROR) Serijski. println ("Kraj nije uspeo");}); ArduinoOTA.begin (); Serial.println ("Spremno"); Serial.print ("IP adresa:"); Serial.println (WiFi.localIP ()); } int button1_capture () {for (int i = 0; i <(debounce-1); i ++) {Button1 = Button1 [i+1]; } Button1 [debounce-1] = (touchRead (T0)); plutajuća struja = MaxArray (Button1); float Button1_smooth = Button1_total/smoothing; // plutajuća struja = AveArray (Button1); Serial.print (Button1_smooth); Serial.print (""); Serial.print (trenutni); Serial.print (""); Serial.println (Button1 [debounce-1]); if (trenutni <(0,85*Button1_smooth)) {Button1_total = 0; // radi kao debounce return 1; } else {Button1_total = current +Button1_total -Button1_smooth; } return 0; } float MaxArray (float MaxMe ) {float mxm = MaxMe [0]; plovak mnm = MaxMe [0]; for (int i = 0; imxm) {mxm = MaxMe ; }} return mxm; } float AveArray (float AveMe ) {float total = 0; float ave = 0; za (int i = 0; i
Korak 3: Montaža
Ožičite ploču kao što je prikazano i provjerite radi li.
Mreža povezana s 'ručkom' djelovat će kao tipka na dodir. Na mojoj ploči ESP32 T0 je pričvršćen za D4. Ovo ćete morati provjeriti ako koristite drugu ploču.
Pričvršćivanje gole žice na ovaj pin će se ponašati isto. Dvaput ga pritisnete uključit će ga kao noćno svjetlo. 3 puta malo svjetlije i 4 puta bijelo.
Korak 4: Sastavite dijelove u kacigu
Za paljenje lampe koristit ćemo ručku kacige kao senzor za dodir. To znači da mora biti izolirana od ostatka kacige. Uklonite ručku i pokrijte površinu kontakta izolacijskom trakom. Koristio sam smeđu traku da se uklopi, na slici je označena plavom bojom. Izbušite rupe tako da vijci budu slobodni i ponovno ih postavite s nekim plastičnim podloškama s druge strane.
Spojite iglu na jedan od vijaka ručke pomoću konektora za presovanje.
Ako namjeravate koristiti plutajuće napajanje (uglavnom sve njih), morat ćete na isti način spojiti GND pin na tijelo kacige. Sada za uključivanje lampe, stavite jednu ruku na kacigu, a drugom dodirnite ručku.
Korak 5: Priključite napajanje
Pričvrstite mikro USB ploču za razbijanje na 3D štampani konektor pregrade i pričvrstite je navrtkom.
Umjesto toga se može koristiti bilo koje 5V DC napajanje, ali USB punjača ima u mojoj kući u izobilju. Koristio sam pleteni USB kabel da oponašam stari fleks i upotpunim izgled.
To je to.
Ako želite izmijeniti kôd kako biste isprobali dodatne boje, efekte ili tajmere, bit će dostupan kao arduino OTA uređaj prvih 10 minuta svaki put kada se uključi. Ovo će se isključiti radi uštede energije.
Preporučuje se:
Arduino ručni ventilator s kapacitivnim prekidačem na dodir .: 6 koraka
Arduino ručni ventilator s kapacitivnim prekidačem na dodir .: U ovom ćemo vodiču naučiti kako uključiti i isključiti ventilator s baterijom pomoću kapacitivnog senzora dodira, relejnog modula i Visuina. Pogledajte demonstracijski video
Led svjetlo kacige na solarni pogon: 3 koraka
Led svjetlo na kacigi sa solarnim napajanjem: napravio sam solarno svjetlo na kacigi, koristeći samo dostupne komponente u HOME! Ovo se može koristiti na bilo kojoj vrsti kaciga, za lov ili ribolov ili u scenarijima preživljavanja, itd … Učinimo naš svijet PONOVO ZELENO! Iz Maroka < 3
Micro: bit pokazivač smjera za biciklističke kacige: 5 koraka
Indikator smjera Micro: bit za kacige za bicikle: ažurirana verzija 2018.-maj-12Ispod vas uputstva kako da napravite jednostavan mikro: bit indikator smjera za kacige za bicikle (ili slično). Koristi akcelerometre ugrađene u micro: bit kao kontrole. Priložene skripte za mikro python su optičke
Hakiranje sovjetske avijacijske kacige SHZ-84: 4 koraka (sa slikama)
Hakiranje sovjetske avijacijske kacige SHZ-84: Nedavno sam kupio kacigu SHZ-84, ali sam ustanovio da joj slušalice ne rade … pa sam ih promijenio
Zagrli & Robot zakrpa osjetljiva na dodir osjetljiva na dodir: 10 koraka (sa slikama)
Zagrli & Robot zakrpa osetljiva na dodir osetljiva na dodir: Uvek sam želeo da napravim jednostavan, ali pristojan projekat sa ovom zakrpom i „džepnom veličinom“Takmičenje je izgledalo kao savršena prilika da se napravi maskota robota. Ovaj momak sjedi u džepu moje majice, baš kao na ikoni takmičenja, i ide