Përmbajtje:
Video: Kontrolli i krevatit pa tela MQTT të krevatit: 5 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:20
Disa vjet më parë ne blemë një shtrat të ri me shkumë memorie dhe, siç ndodh me shumicën e shtretërve, ju duhet të blini gjithashtu një nga "bazat e miratuara" të tyre në mënyrë që të mbani një garanci. Pra, ne zgjodhëm bazën më pak të shtrenjtë që përfshinte gjithashtu aftësinë për të ngritur dhe ulur kokën e shtratit. Disa ditë më vonë, dysheku ynë dhe baza jonë e lirë American Adjustables me kontrolle me tela (një për secilën anë të shtratit) u dorëzua dhe u vendos.
Gjëja e parë që vumë re ishte se litarët në sallë ekspozite që ishin të bukur dhe të gjatë nuk ishin ato që kishim në shtratin tonë! Ato në sallë ekspozite kishin shtesa. Këto shtesa NUK u përfshinë me shtratin tonë dhe mjaft interesante, askush nuk ishte i interesuar të na shiste një palë kabllo shtesë. Kjo na la me kontrolle që mezi arritën në majë të shtratit dhe të cilat, na u desh të ktheheshim për t'i përdorur.
Ju merrni atë për të cilën paguani
Pas rreth 6 muajsh ne vërejmë se jakat e lehtësimit të tendosjes në njërën prej kontrolleve po fillonin të shqyheshin. Disa muaj më vonë - tela të zhveshur. Shpejt përpara rreth një viti, njëra nga kontrollet nuk funksionon më dhe tjetra po bëhet pak e trazuar.
Përsëri, askush nuk ishte i interesuar të na shiste zëvendësues. Pastaj më goditi!
"Prisni një minutë të mallkuar! A nuk po ndërtoj një sistem automatizimi dhe KONTROLLI në shtëpi?!?"
Hapi 1: Zbulimi
Doja të shikoja se çfarë mund të bëja me atë që kisha, kështu që mora pajisjen e kontrolluesit të dëmtuar dhe wow! kishte shume gjera atje! Për çfarë ishin të gjitha këto gjëra? Unë u tërhoqa dhe vetëm shikova linjat që hynin dhe dilnin. Isha në gjendje të shihja se kishte një linjë furnizimi 12 volt dhe një linjë toke. Dy rreshtat e tjerë dukeshin si linja sinjali për dy butonat lart e poshtë. Kështu, unë shfrytëzova një shans dhe sapo hodha furnizimin me 12v në linjën e sinjalit "lart". Shtrati filloi të lëvizë! Pastaj e zhvendosa telan tim të bluzës në linjën e sinjalit "poshtë" dhe krevati u ul!
Në kuti ka kontakte për 4 linja të tjera sinjali dhe 4 butona të tjerë. Supozimi im më i mirë është se kjo bord kontrollues përdoret në të gjitha modelet e tyre bazë me tela dhe ata thjesht vendosin pllaka të ndryshme të fytyrës mbi tabelë sipas nevojës. Pra, unë kisha një teori pune. Kam testuar vijën e furnizimit për të parë nëse është zhytur gjatë përdorimit ose është pikuar në çdo kohë - jo. Kishte shumë pak tërheqje aktuale mbi linjat e sinjalit, por ato kërkonin 12 volt për të aktivizuar motorin.
Hapi 2: Projektimi
Pra, një lidhje e thjeshtë kontakti midis VCC dhe pin sinjalit secila është gjithçka që nevojitet, por si bëhet kjo brenda sistemit tim. Dy rele do të kërkoheshin për kontaktet dhe një ESP8266 do të funksiononte për kontrolluesin pa tel. Meqenëse stafetat mund të kërkojnë më shumë rrymë sesa mund të ofrojnë kunjat dixhitale, është mirë të përdorni një optoizolator midis kontrolluesit dhe stafetës. Kjo do të lejojë që një sinjal i vogël të ndezë një ndërprerës më të lartë të rrymës (në këtë rast një transistor me dritë) dhe të aktivizojë në mënyrë të sigurt spiralën e stafetës. Gjithashtu, një optoizolator izolon kontrolluesin nga çdo goditje që mund të formohet kur spiralja e stafetës lëshohet dhe fusha magnetike shembet. Për fat të mirë, ekzistojnë module stafetë që tashmë përmbajnë të gjithë këtë qark dhe për një çmim mjaft të ulët.
Shtrati do të jetë furnizimi me energji për kontrolluesin dhe për të trajtuar 12 voltët e furnizuar, do të kemi nevojë për një konvertues të ndryshueshëm të monedhës. Një shumë e lirë është lidhur më poshtë dhe funksionon bukur. Linjat 12V dhe linjat GND lidhen me anën hyrëse të konvertuesit dhe ana e rregulluar 5 volt lidhet me VCC të NodeMCU dhe kunjin VCC në modulin e stafetës. Toka (-) në konvertues lidhet me kunjat GND në si moduli stafetë ashtu edhe NodeMCU.
NodeMCU lidhet me IN1 duke përdorur D1 (GPIO5) dhe IN2 duke përdorur D2 (GPIO4). Linja e sinjalit lart në shtrat lidhet me terminalin me vidë normalisht të hapur për stafetën 1 dhe linja e sinjalit poshtë lidhet me stafetën 2 lidhësin e bllokut të terminalit normalisht të hapur. Ju do të duhet të lidhni tela 12v që është e lidhur me anën hyrëse të konvertuesit të dollarit gjithashtu me lidhjen tjetër të bllokut të terminalit për të dy stafetat 1 dhe 2.
Pjesët
- 1 - NodeMCU
- 1 - Modeli i Stafetës Duel me izolimin aktual
- 1 - Konvertuesi i ndryshueshëm i hyrjes/daljes
- 1 - PCB Breadboard
- Teli bërthamor prej bakri i matur me 22 matës
- 2 - vida M3x 8
Hapi 3: Mbyllja
Mbyllja mund të gjendet këtu:
Kam krijuar një mbyllës të thjeshtë me Tinkercad që lejon që kablloja e kontrollit të shtratit të hyjë në kutinë midis kllapave të lehtësimit të tendosjes brenda kutisë. Ka lojëra elektronike për lidhjen e zinxhirit këtu që do të ndihmonin që kablli të mos rrëshqiste, por në rastin tim përshtatja ishte shumë e mirë dhe nuk kishte nevojë për të. Mbulesa është e mbyllur me 2 vida M3x 8. Unë do të rekomandoja ngarkimin e kodit dhe testimin e sistemit para se ta montoni në kuti.
Kam përdorur zam të nxehtë për të mbajtur bordet në vend, por kjo mund të mos jetë e nevojshme.
Hapi 4: Kodi
Kodi mund të gjendet këtu:
SH NOTNIM: Ky projekt përdor bibliotekën pubsubclient, e cila mund të shtohet në Menaxherin e Bibliotekës në Arduino IDE
Kodi këtu është mjaft themelor dhe është projektuar bazuar në llojin Cover MQTT në Home Assistant. Ideja këtu është e thjeshtë: kur shtypni butonin lart ose poshtë në ndihmësin e shtëpisë, stafeta e përshtatshme mbyllet derisa të merret komanda e ndalimit OSE sistemi arrin një kohë maksimale aktivizimi dhe ndalet.
Koha maksimale nënkuptohet si një masë paraprake sigurie në rast se përdoruesi harron ta ndalojë atë ose nëse komanda është dërguar aksidentalisht dhe nuk ka gjasa që dikush ta ndalojë atë. Ne nuk duam që stafeta të ndizet pafundësisht ose ndonjë problem të papritur me shtratin për shkak të mbylljes së zgjatur të kontaktit.
Në kodin tim, ky afat kohor është 20 sekonda dhe mund të rregullohet në bllokun e ndryshoreve globale në krye të kodit.
Një masë paraprake e sigurisë ishte të siguroheshim gjithmonë që nëse aktivizoj njërën stafetë, një çaktivizim i qëllimshëm i tjetrit thirret gjithmonë, edhe nëse gjendja e fundit ishte tashmë e fikur. Unë nuk dua të dërgoj 12v poshtë në të dyja linjat e sinjalit pasi nuk e di se çfarë do të bëjë me shtratin.
Për më tepër, krevati publikon se është në dispozicion çdo 60 sekonda dhe kjo është ajo. Këtu nuk ka zile apo bilbila. Meqenëse krevati nuk ka reagime për pozicionin, nuk mund t'i ktheja asnjë te "Asistenti në shtëpi".
Hapi 5: Shembull Integrimi
Kodi që kam shkruar përdor MQTT për të komunikuar përmes WiFi dhe për këtë arsye mund të komunikojë me çdo qendër automatizimi ose pajisje që përdor MQTT. Unë përdor Home Assistant që ka një ndërmjetës MQTT të integruar. Më poshtë është një shembull i konfigurimit tim HA.
Në HA kam një skedar covers.yaml me përkufizimin e mëposhtëm:
- platforma: mqtt
emri: "Kreu i krevatit të krevatit" command_topic: "master_bed_control/cmd" disponueshmëria_tema: "master_bed_control/disponueshmëria" qos: 0 ruaj: payload_ false hapet: "UP" payload_close: "DOWN" payload_stop: "STOP" payload_available: "online" payload_not_ava offline "optimist: e vërtetë
Kjo më jep një hyrje në ndërfaqen time HA me një buton lart/ndal/poshtë të vendosur me veprimin siç përshkruhet më sipër.
Për më tepër, unë kam përcaktuar dy butona në panelin tim të kontrollit pranë shtratit (Instructable / Blog Post) për të ngritur dhe ulur krevatin. Butonat në panelin e kontrollit përcaktohen si sensorë MQTT:
- platforma: mqtt
state_topic: "bedside_cp1/button5" emri: "Button CP1 Button 5" ikona: mdi: rreth
- platforma: mqtt
state_topic: "bedside_cp1/button6" emri: "Button CP1 Button 6" ikona: mdi: rreth
… Dhe 4 rregulla automatizimi kur çdo buton shtypet dhe lëshohet. Kur shtypet, komanda lart ose poshtë dërgohet në shtrat në varësi të cilës buton u aktivizua, kur butoni lëshohet, komanda ndaluese dërgohet:
- id: '1548308650383'
alias: MBR Bedside CP Button 5a shkaktues: - entiteti_id: sensor.bedside_cp1_button_5 nga: platforma 'Off': gjendja në: 'On' me kusht: veprimi: - të dhënat: unit_id: shërbimi 'cover.master_bed_headboard': cover.open_cover - id: '1548308758911' alias: MBR Bed Button CP Button 5b shkakton: - entiteti_id: sensor.bedside_cp1_button_5 nga: 'Në' platformë: gjendja në gjendjen 'Off': veprimi: - të dhënat: unit_id: shërbimi 'cover.master_bed_headboard': cover.stop_cover - id: '1548308863495' alias: MBR Button CP Button 6a shkakton: - entiteti_id: sensor.bedside_cp1_button_6 nga: platforma 'Off': gjendja në: 'On' kusht: veprimi: - të dhëna: unit_id: ' cover.master_bed_headboard 'service: cover.close_cover - id:' 1548308911467 'alias: MBR Bed Button CP Button 6b shkakton: - unit_id: sensor.bedside_cp1_button_6 nga:' On 'platforma: gjendja në:' Off 'kusht: veprimi: - të dhënat: entiteti_id: 'cover.master_bed_headboard' shërbimi: cover.stop_cover
Recommended:
DIY Drita e natës e krevatit me sensim lëvizjeje automatik LED: 6 hapa (me fotografi)
DIY Automatic Motion Sensing LED Bed Night Light: Përshëndetje, djema jeni të mirëpritur në një tjetër udhëzues që do t'ju ndihmojë gjithmonë në jetën tuaj të përditshme dhe duke shtuar një komoditet për ta bërë jetën tuaj të lehtë. Kjo ndonjëherë mund të jetë një shpëtimtare e jetës në rast të pleqërisë që duhet të luftojnë të ngrihen në shtrat
Ora me shkronja alarmi MP3 pranë krevatit: 6 hapa (me fotografi)
Ora me shkronja alarmi MP3 pranë krevatit: Për këtë projekt doja të bëja një orë fjale alarmi të përshtatshëm dhe plotësisht funksional të shtratit. Parakushtet e mia personale për një orë alarmi pranë shtratit janë: Lexohen në çdo dritë, ndërsa nuk verbojnë gjatë natës meloditë e alarmit MP3 Tërhiq
Kontrolli i Ndriçimit Kontrolli LED i bazuar në PWM duke përdorur butona Push, Raspberry Pi dhe Scratch: 8 hapa (me fotografi)
Kontrolli i Ndriçimit PWM Bazuar në Kontrollin LED duke përdorur Butonat Push, Raspberry Pi dhe Scratch: Unë po përpiqesha të gjeja një mënyrë për të shpjeguar se si punonte PWM për studentët e mi, kështu që i vura vetes detyrën të përpiqesha të kontrolloja shkëlqimin e një LED duke përdorur 2 butona shtytës - një buton që rrit shkëlqimin e një LED dhe tjetri e zbeh atë. Për të përparuar
2 tela 2 Kontrolli i motorit elektrik të boshtit: 6 hapa
2 Tela 2 Kontrolli i Motorit Elektrik të Aksit: Ky projekt propozon një metodë për të drejtuar dy boshte motorësh 'duke përdorur një numërim pulsi për secilin kanal dhe një metodë të fiksimit " ndezje-fikje " kalimi duke përdorur sportelet 4017. Kjo metodë është e përshtatshme për çdo funksion të hyrjes së pulsit (buton shtypi, çelës rrotullues
Kreu i krevatit me ndriçim LED - Prekja aktivizohet: 3 hapa
Kreu i krevatit me ndriçim të ndriçuar LED - Prekja e aktivizuar: Ndriçimi i shiritit LED me kapak postimi të ndjeshëm në prekje. Për të aktivizuar LED -të prek kapakun e bakrit në shtyllën e shtratit. Ekzistojnë tre intensitet të nivelit të dritës, të ulët, të mesëm dhe të ndritshëm të cilët aktivizohen me radhë para se të kthehet prekja e katërt