Tartalomjegyzék:

Vezeték nélküli MQTT ágy fejtámla vezérlés: 5 lépés (képekkel)
Vezeték nélküli MQTT ágy fejtámla vezérlés: 5 lépés (képekkel)

Videó: Vezeték nélküli MQTT ágy fejtámla vezérlés: 5 lépés (képekkel)

Videó: Vezeték nélküli MQTT ágy fejtámla vezérlés: 5 lépés (képekkel)
Videó: Zigbee пульт управления для умного дома Moes на 4 кнопки. Обзор, интеграция в Home Assistant 2024, Július
Anonim
Vezeték nélküli MQTT ágy fejtámla vezérlés
Vezeték nélküli MQTT ágy fejtámla vezérlés
Vezeték nélküli MQTT ágy fejtámla vezérlés
Vezeték nélküli MQTT ágy fejtámla vezérlés

Néhány évvel ezelőtt új memóriahabos ágyat vásároltunk, és - mint a legtöbb ágy esetében - a garancia fenntartása érdekében meg kellett vásárolnia az egyik "jóváhagyott alapját". Tehát a legolcsóbb alapot választottuk, amely magában foglalta az ágy fejének emelését és leengedését is. Néhány nappal később a matracunkat és az amerikai állítható olcsó talpunkat vezetékes vezérlőkkel (egyet az ágy mindkét oldalán) szállítottuk és beállítottuk.

Az első dolog, amit észrevettünk, az volt, hogy a bemutatóterem szép és hosszú zsinórjai nem az ágyunkon voltak! A bemutatóteremben lévőknek kiterjesztései voltak. Ezek a hosszabbítók NEM tartoztak az ágyunkhoz, és elég érdekesek, senkit nem érdekelt egy pár hosszabbító kábel eladása. Így olyan kezelőszerveket kaptunk, amelyek alig értek el az ágy tetejére, és amelyeket meg kellett fordítanunk a használathoz.

Azt kapod, amiért fizetsz

Körülbelül 6 hónap elteltével észrevesszük, hogy az egyik vezérlőelem nyúlásgátlója elkezdett szakadni. Néhány hónappal később - csupasz drót. Körülbelül egy év előretekerés, az egyik vezérlő már nem működik, a másik kissé megrándul.

Ismét senkit sem érdekelt az, hogy helyettesítéseket adjon el nekünk. Aztán megütött!

Várj egy rohadt percet! Nem építek otthoni automatizálási és vezérlőrendszert?!?

1. lépés: Felfedezés

Felfedezés
Felfedezés
Felfedezés
Felfedezés

Látni akartam, hogy mit tehetek azzal, amim van, ezért megvettem a hibás vezérlőt, és hajrá! ott sok baromság volt! Mire volt ez az egész? Hátraléptem, és csak néztem a be- és kilépő sorokat. Láttam, hogy van egy 12 voltos tápvezeték és egy földvezeték. A másik két vonal jelzővonalaknak tűnt a két fel és le gombhoz. Szóval, kockáztattam, és csak a 12V -os tápfeszültséget ugrottam át a "fel" jelvonalra. Az ágy mozogni kezdett! Ezután áthelyeztem a jumper drótomat a "le" jelzővonalra, és az ágy lement!

A dobozban további 4 jelvonal és 4 további gomb érintkezői találhatók. A legjobb tippem az, hogy ezt a vezérlőtáblát az összes vezetékes alapmodelljükben használják, és szükség szerint csak különböző előlapokat helyeznek a táblára. Szóval volt egy működő elméletem. Teszteltem a tápvezetéket, hogy nem merült -e el használat közben, vagy nem tüskésedett -e bármikor - nem. A jelvezetékeken nagyon kevés áram húzódott, de a motor aktiválásához 12 volt szükséges.

2. lépés: Tervezés

Tervezés
Tervezés
Tervezés
Tervezés
Tervezés
Tervezés
Tervezés
Tervezés

Tehát egy egyszerű érintkezési kapcsolat a VCC és a jelzőcsap között minden, amire szükség van, de hogyan történik ez a rendszeren belül. Két relé szükséges az érintkezőkhöz, az ESP8266 pedig a vezeték nélküli vezérlőhöz. Mivel a relék több áramot igényelhetnek, mint amennyit a digitális érintkezők képesek biztosítani, a legjobb, ha optoizolátort használnak a vezérlő és a relé között. Ez lehetővé teszi, hogy egy kis jel bekapcsolja a nagyobb áramú kapcsolót (ebben az esetben a fényvezérelt tranzisztor), és biztonságosan aktiválja a relétekercset. Ezenkívül egy optoizolátor elkülöníti a vezérlőt minden olyan tüskétől, amely a relétekercs elengedésekor és a mágneses mező összeomlásakor kialakulhat. Szerencsére léteznek olyan relé modulok, amelyek már tartalmazzák mindezt az áramkört, és meglehetősen alacsony áron.

Az ágy lesz a tápegység a vezérlő számára, és a mellékelt 12 volt kezeléséhez szükségünk van egy változó bak -átalakítóra. Az alábbiakban linkeltünk egy nagyon olcsót, és gyönyörűen működik. A 12 V-os vonal és a GND-vezetékek az átalakító bemeneti oldalához, a szabályozott 5 voltos oldal pedig a NodeMCU VCC-hez és a relémodul VCC-csatlakozójához kapcsolódnak. Az átalakító földelése (-) a GND-csapokhoz csatlakozik mind a relé modul, mind a NodeMCU.

A NodeMCU a D1 (GPIO5) és az IN2 a D2 (GPIO4) használatával csatlakozik az IN1 -hez. Az ágyon lévő felfelé irányuló jelvezeték az 1 -es relé normál nyitott csavaros csatlakozójához, a lefelé irányuló jelvezeték pedig a 2 -es relé normál esetben nyitott sorkapocs -csatlakozójához csatlakozik. Csatlakoztatnia kell a 12 V -os vezetéket, amely a Buck konverter bemeneti oldalához van csatlakoztatva, a másik sorkapocs csatlakozóhoz is, mind az 1., mind a 2. reléhez.

Alkatrészek

  • 1 - NodeMCU
  • 1 - Párbaj relé modul áramszigeteléssel
  • 1 - Változó bemeneti/kimeneti bak konverter
  • 1 - Kenyeretábla NYÁK
  • 22 méteres sodrott rézmagos huzal
  • 2 - M3x 8 csavar

3. lépés: Melléklet

Burkolat
Burkolat

A ház itt található:

Egy egyszerű szekrényt terveztem Tinkercad segítségével, amely lehetővé teszi, hogy az ágyvezérlő kábel belépjen a dobozba a doboz belsejében lévő húzásmentesítő konzolok között. Vannak rések egy cipzáras nyakkendőhöz, amelyek segítenek megakadályozni a kábel elcsúszását, de az én esetemben az illeszkedés nagyon szoros volt, és nem volt rá szükség. A fedelet 2 M3x8 csavarral csavarják le. Javaslom, hogy töltse fel a kódot, és tesztelje a rendszert, mielőtt a dobozba szerelné.

Forró ragasztóval tartottam a táblákat a helyükön, de ez nem feltétlenül szükséges.

4. lépés: Kód

A kód itt található:

MEGJEGYZÉS: Ez a projekt a pubsubclient könyvtárat használja, amely hozzáadható az Arduino IDE könyvtárkezelőjében

Az itt található kód meglehetősen egyszerű, és a Home Assistant Cover MQTT típusa alapján készült. Az ötlet itt egyszerű: amikor megnyomja a fel vagy le gombot az otthoni asszisztensben, a megfelelő relé bezáródik, amíg a stop parancsot meg nem kapja, VAGY a rendszer eléri a maximális aktiválási időt és leáll.

A maximális idő biztonsági óvintézkedés, ha a felhasználó elfelejti leállítani, vagy ha a parancsot véletlenül elküldte, és nem valószínű, hogy valaki leállítja. Nem akarjuk, hogy a relé a végtelenségig bekapcsoljon, vagy hogy váratlan problémák merüljenek fel az ágyban a hosszan tartó kontaktuszárás miatt.

A kódomban ez az időtúllépés 20 másodperc, és a kód tetején lévő globális változó blokkban állítható be.

A második biztonsági óvintézkedés az volt, hogy mindig győződjön meg arról, hogy ha az egyik relét aktiválom, akkor a másik szándékos kikapcsolását hívják fel, még akkor is, ha az utolsó állapot már ki volt kapcsolva. Nem akarok 12V -ot küldeni mindkét jelvonalon, mivel nem tudom, mit fog ez okozni az ágynak.

Ettől eltekintve az ágy közzéteszi, hogy 60 másodpercenként elérhető, és ennyi. Itt nincs harang vagy síp. Mivel az ágyon nincs visszajelzés a pozícióról, nem küldhettem vissza az Otthoni asszisztensnek.

5. lépés: Példa integrációra

Példa integrációra
Példa integrációra
Példa integrációra
Példa integrációra

Az általam írt kód az MQTT -t használja a WiFi -n keresztüli kommunikációhoz, és ezért kommunikálhat bármely automatizálási központtal vagy eszközzel, amely MQTT -t használ. Home Assistant -ot használok, amely beépített MQTT brókerrel rendelkezik. Az alábbiakban egy példa a HA konfigurációmra.

A HA -ban van cover.yaml fájlom a következő definícióval:

- platform: mqtt

name: "Master Bed Headboard" command_topic: "master_bed_control/cmd" saatavuus_topic: "master_bed_control/saatavuus" qos: 0 keep: false payload_open: "UP" payload_close: "DOWN" payload_stop: "STOP" payload_available: "online" payload_not_available: offline "optimista: igaz

Ezzel egy bejegyzést kapok a HA felületen egy fel/le/le gombokkal, amelyek a fent leírt művelettel rendelkeznek.

Ezenkívül két gombot határoztam meg az ágy melletti vezérlőpulton (Instructable / Blog Post) a fejtámla felemeléséhez és leengedéséhez. A kezelőpanelen található gombok MQTT érzékelők:

- platform: mqtt

state_topic: "bedside_cp1/button5" name: "Bedside CP1 Button 5" icon: mdi: circle

- platform: mqtt

state_topic: "bedside_cp1/button6" name: "Bedside CP1 Button 6" icon: mdi: circle

… És 4 automatizálási szabály minden gomb megnyomására és felengedésére. Ha megnyomja, a fel vagy le parancsot az ágynak küldi, attól függően, hogy melyik gombot aktiválták, a gomb elengedésekor a stop parancsot küldi:

- azonosító: '1548308650383'

más néven: MBR Bedside CP gomb 5a trigger: - entitásazonosító: sensor.bedside_cp1_button_5 innen: 'Ki' platform: állapot: 'Be' feltétel: művelet: - adatok: entitásazonosító: 'borító.master_bed_headboard' service: cover.open_cover - id: '1548308758911' alias: MBR Bedside CP Butb 5b trigger: - entity_id: sensor.bedside_cp1_button_5 from: 'On' platform: state to: 'Off' condition: action: - data: entity_id: 'cover.master_bed_headboard' service: cover.stop_cover - id: '1548308863495' alias: MBR Bedside CP Button 6a trigger: - entity_id: sensor.bedside_cp1_button_6 from: 'Off' platform: state to: 'On' feltétel: action: - data: entity_id: ' cover.master_bed_headboard 'service: cover.close_cover - id:' 1548308911467 'alias: MBR Bedside CP Button 6b trigger: - entity_id: sensor.bedside_cp1_button_6 from:' On 'platform: state to:' Off 'feltétel: művelet: - adatok: entitás_azonosító: 'fedő.mester_ágy_fejlap' service: cover.stop_cover

Ajánlott: