Kazalo:
- 1. korak: Natisnite te dele
- 2. korak: Naložite kodo
- 3. korak: Montaža
- 4. korak: sestavite dele v čelado
- 5. korak: Priključite napajanje
Video: Svetilka na dotik potapljaške čelade: 5 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
V tem navodilu
Boste potrebovali
- Potapljaška čelada ali enakovredna
- LED obroč, združljiv z Neopixel (uporabil sem obroč s 38 LED)
- Plošča Wemos ESP32 (ali enakovredna)
- 3D tiskalnik
1. korak: Natisnite te dele
Te dele bo morda treba prilagoditi, če uporabljate drugo potapljaško čelado, izvedel sem, da je ta, ki jo imam, precej pogosta
2. korak: Naložite kodo
V kodo vnesite svoj ssid in geslo ter jih naložite na svojo desko. To je tam, da OTA lahko naloži novo kodo po sestavljanju projekta. Za uporabo te plošče boste morali namestiti NeoPixelBus podjetja Makuna, ki je na voljo tukaj https://github.com/Makuna/NeoPixelBus. V okolje arduino morate namestiti tudi definicije plošč ESP32.
// Wifi Jazz #include #include #include #include bool wifi_timout = 0; const char* ssid = "SSID"; const char* password = "Geslo"; // Neopixel jazz #include const uint16_t PixelCount = 38; const uint8_t PixelPin = 19; int colorSaturation = 50; int Svetlost = 50; int R = 0; int G = 0; int B = 0; int impulz = 1600; // Pol časa med pulzacijami RgbColor črna (0); // Button Jazz float Button1_total = 0; int glajenje = 50; const int debounce = 5; float Button1 [debounce]; bool PWR = 0; Prstan NeoPixelBus (PixelCount, PixelPin); void setup () {Serial.begin (115200); Serial.println ("zagon"); WiFi.mode (WIFI_STA); WiFi.begin (ssid, geslo); while (WiFi.waitForConnectResult ()! = WL_CONNECTED) {Serial.println ("Povezava ni uspela!"); zamuda (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 (črno); 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"; // OPOMBA: če če posodabljate SPIFFS, bi bilo to mesto za odstranitev SPIFFS z uporabo SPIFFS.end () Serial.println ("Začni posodabljanje" + vrsta);}).onEnd ( () {Serial.println ("\ nEnd");}).onProgress ( (brez podpisa int napredek, brez podpisa int skupaj) {Serial.printf ("Napredek:%u %% / r", (napredek / (skupaj / 100)));}). error) {Serial.printf ("Napaka [%u]:", napaka); if (error == OTA_AUTH_ERROR) Serial.println ("Auth Failed"); else if (error == OTA_BEGIN_ERROR) Serial.println ("Začni Ni uspelo "); 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) Serijsko. println ("Konec ni uspel");}); ArduinoOTA.begin (); Serial.println ("Pripravljeno"); Serial.print ("IP naslov:"); Serial.println (WiFi.localIP ()); } int button1_capture () {for (int i = 0; i <(debounce-1); i ++) {Button1 = Button1 [i+1]; } Button1 [debounce-1] = (touchRead (T0)); plavajoči tok = MaxArray (Button1); float Button1_smooth = Gumb1_skupno/zglajevanje; // plavajoči tok = 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; // deluje kot debounce return 1; } else {Button1_total = current +Button1_total -Button1_smooth; } return 0; } float MaxArray (float MaxMe ) {float mxm = MaxMe [0]; plavajoči mnm = MaxMe [0]; for (int i = 0; imxm) {mxm = MaxMe ; }} return mxm; } float AveArray (float AveMe ) {float skupaj = 0; plavajoča ave = 0; za (int i = 0; i
3. korak: Montaža
Ožičite ploščo, kot je prikazano, in preverite, ali deluje.
Mreža, povezana z ročajem, bo delovala kot gumb na dotik. Na moji plošči je ESP32 T0 pritrjen na D4. To boste morali preveriti, če uporabljate drugo ploščo.
Pritrditev gole žice na ta zatič se bo obnašala enako. Dvakratni pritisk ga prižge kot nočna luč. 3 -krat nekoliko svetlejša in 4 -krat bela.
4. korak: sestavite dele v čelado
Za prižig svetilke bomo kot senzor na dotik uporabljali ročaj čelade. To pomeni, da mora biti izolirana od preostalega dela čelade. Odstranite ročaj in površino kontakta pokrijte z izolacijskim trakom. Za mešanje sem uporabil rjav trak, na sliki je označen modro. Izvrtajte luknje tako, da so vijaki na odmiku in jih znova namestite z nekaj plastičnimi podložkami na drugi strani.
S pomočjo stiskalnega priključka pripnite gumbno stikalo na enega od vijakov ročajev.
Če nameravate uporabiti plavajoči napajalnik (skoraj vsi), boste morali na enak način priključiti zatič GND na telo čelade. Zdaj, da vklopite svetilko, položite eno roko na čelado in se z drugo dotaknite ročaja.
5. korak: Priključite napajanje
Privijte odklopno ploščo mikro USB na 3D natisnjeni pregradni konektor in jo pritrdite z matico.
Namesto tega se lahko uporabi kateri koli 5V DC napajalnik, vendar je v moji hiši polnilnikov USB. S pletenim usb kablom sem oponašal staro fleksibilnost in dopolnil videz.
To je to, da ste končali.
Če želite spremeniti kodo, da preizkusite dodatne barve, učinke ali časovnike, bo vsakih deset minut na voljo kot arduino OTA naprava prvih 10 minut. To se bo nato izklopilo, da prihranite energijo.
Priporočena:
Svetilka za pivo (svetilka): 7 korakov
Svetilka za pločevinke za pivo (bakla): Ko sem uporabil vezje sončne vrtne svetilke za povečanje voltov za mini generator in za spreminjanje naglavne svetilke, sem se vprašal, ali bi lahko pivo uporabili kot reflektor za ustvarjanje svetilke z nizko močjo … Svetilka z nizko porabo energije bi lahko bila koristna
Tri vezja senzorja na dotik + vezje časovnika na dotik: 4 koraki
Tri vezja senzorja na dotik + vezje časovnika na dotik: Senzor na dotik je vezje, ki se vklopi, ko zazna dotik na nožicah na dotik. Deluje na prehodni osnovi, to je, da bo obremenitev vklopljena le za čas dotika na zatičih. Tukaj vam bom pokazal tri različne načine, kako občutiti dotik
STIKALO NA DOTIK - Kako narediti stikalo na dotik s tranzistorjem in ploščico: 4 koraki
STIKALO NA DOTIK | Kako narediti stikalo na dotik z uporabo tranzistorja in tiskalne plošče.: Stikalo na dotik je zelo preprost projekt, ki temelji na uporabi tranzistorjev. V tem projektu je uporabljen tranzistor BC547, ki deluje kot stikalo na dotik. OBVEZNO OGLEDITE VIDEO, KI vam bo dal popolne podrobnosti o projektu
Mikro bitni smerni indikator za kolesarske čelade: 5 korakov
Mikro: bitni smerni indikator za kolesarske čelade: posodobljena različica 2018-maj-12 Spodaj vam podajamo navodila, kako sestaviti preprost smerni indikator na osnovi micro: bit za kolesarske čelade (ali podobno). Za krmiljenje uporablja merilnike pospeška, vgrajene v mikro: bit. Priloženi skripti mikro python so optični
Visoko učinkovita 9-voltna LED svetilka z upravljanjem na dotik: 4 koraki
Visoko učinkovita 9-voltna LED svetilka z upravljanjem na dotik: to preprosto vezje, ki uporablja le 10 delov, ki so na voljo v trgovini, pretvori moč iz 9-voltne baterije v dve beli LED-diodi pri 20 mA, medtem ko v bateriji uporablja le 13 mA, kar je več kot 90% učinkovito