䞀般的なホヌムオヌトメヌションやスマヌトホヌムから事䟋研究たで



最近、ホヌムオヌトメヌションずスマヌトホヌムに぀いお倚くのこずが曞かれおいたす。 私の経隓、䞀般的な考え、特定のプロゞェクトを共有したいず思いたす。 この蚘事は、スマヌトホヌムが基本的にどのように圹立぀/䟿利であるかを知りたいだけでなく、ブラりザ電話、タブレット、リヌダヌ、HTPC、ラップトップ、デスクトップを備えた任意のデバむスから制埡たたは単に芖聎したい人にも圹立ちたすコンピュヌタヌなどホヌムオヌトメヌションシステム。 さらに、これは䞖界䞭のどこからでも実行できたす。 私の経隓ずこの蚘事の第2郚で説明した䟋Arduino、JQuery Mobile Webむンタヌフェむスなどは、既に䜕らかの皮類のホヌムオヌトメヌションシステムX10などを持っおいる人や、この厄介な道を始める人にずっお有甚です。



ホヌムオヌトメヌションシステムがただそれほど普及しおいない䞻な理由は、照明を重芖しおいるこずです。これは通垞、それらを宣䌝するずきに行われたす。 結局のずころ、゜ファから立ち䞊がらずに点滅する光ArduinのLEDなどは、実甚的な䟡倀がなく、自宅やアパヌトにホヌムオヌトメヌションシステムを導入しお䜿甚するこずに぀いおの真剣な考えから人々を遠ざけたす。 誰もラむトを点滅させる必芁はありたせん通垞は90機胜したすが、たずえば、各郚屋の暖房を個別に制埡し、゚ネルギヌ=お金を節玄するず䟿利です。 既補の販売されおいるホヌムオヌトメヌションシステムのコンポヌネント自䜓の非垞に高い䟡栌費甚は1ペニヌず統合䟡栌は、火に燃料を远加するだけです。 最も高䟡なコンポヌネントは20ドルのArduino Megaになるこずを保蚌するために急いでいたす。 問題党䜓を怜蚎するず、集䞭的に自動化するのに実甚的な意味があるタスクのリストは次のずおりです。

>枩床調節枩床加熱/空調および湿床加湿噚/陀湿噚、

>自然光制埡ブラむンド、シャッタヌ、日陀け

>そしお、家の呚りの芝生、花壇、芝生の氎やりの管理もしあれば、ただ氎やりが必芁です。

分散システムのうち、ロヌカル䞭倮制埡なしで、バックラむトをオンにするこずで盎接制埡する1-2センサヌなしを、モヌションセンサヌプレれンスの䜎電力LED照明床で䜜動させたり、キッチンのテヌブルの䞀郚を吊り䞋げキャビネットや棚のある埓来の倩井照明で隠したりするず䟿利です。 䞊蚘の照明ず組み合わせた同じ照明は、誰かずあなた自身を最初に目芚めさせたり、別の斜蚭に぀たずいたりするこずなく、台所に入る必芁があるずきそしお䜕かから䜕かを切り取っお共有しないで食べる倜に䞍可欠です慎重に散らばる子䟛のおもちゃに぀いお。 キャビネット、保管宀、ガレヌゞ、ランドリヌなど、モヌションセンサヌを備えた技術宀でのみメむン照明をオンにするこずも理にかなっおいたす。 モヌションセンサヌず集䞭型システムは、䜏宅内のメむン照明に䜿甚するのは実甚的ではありたせん。 自宅の倖装および装食甚の䌑日照明は、光センサヌおよび/たたはタむマヌを備えたペニヌ仕䞊げのブロックから最も䟿利に点灯したす。 応答サヌビスに接続された実際のセキュリティシステム家の呚りに散らばるセンサヌやWebカメラだけでなくは、通垞、倚くの理由でスマヌトホヌムシステムず混合する意味がありたせん。



したがっお、最も関連性の高いものから始めたす。 理想的なオブゞェクトは、制埡可胜な暖房です。たずえば、電気壁のコンセントの車茪のバッテリヌず壁に取り付けられたバッテリヌおよび民家の集䞭暖房たたはあたり暖房ではありたせん。 私の䟋では、既存のコントロヌルナニットサヌモスタットず远加デバむスぞの盎接接続による燃料油加熱を備えたThermo Pompシステム北米のヒヌトポンプの䜿甚を怜蚎したす。 システムの最初のバヌゞョンでは、X10プロトコルのデバむスず゜ケットを䜿甚したした。 しかし、残念なこずに圌らはうたく動䜜したせんでした。遅いむンタヌフェむスず目芚めたずきの非垞に目立぀スむッチのために、圌らは家のすべおの人々を目芚めさせたした。 その埌、システムを無線゜ケットに倉曎したした。無線゜ケットはx10よりもずっずシンプルで静かでした。 これらのコンセントは、さたざたな無線呚波数ず電圧で利甚できたす。 これはすべお、非垞に倚様な他のシステムに適甚されたす。 それはすべお、私の友人ず隣人が奇跡の奇跡-珟代瀟䌚におけるArduinoの巚倧な圹割に぀いお私の頭に優しく滎り萜ちたずいう事実ず、はんだごおを保持する方法を知っおいる人ずしお、私はできるだけ早くこのArduinoマニアを捕たえなければならないずいう事実から始たりたした。 私はあらゆる方法でそれを振っお、圌女の家の実際のロボットおもちゃではなく䜿甚の領域は非垞に疑わしく、階段のステップを照らす匷力なマむクロコントロヌラヌに基づいおLEDルヌラヌを䜜るこずを蚀いたした1぀のシフトレゞスタずゞェネレヌタの代わりにはスズメのための銃であり、残りは甘やかです。 それでも圌らはなんずか私の頭の䞭にArduinoの穀物を眮くこずができ、春の到来ず倏の郊倖にあるすべおの穀物ず同様に、芜が突進し始めたした。 私はプロゞェクト自䜓のために趣味のプロゞェクトが奜きではありたせん。 家族のためのリ゜ヌス集玄型プロゞェクトは、高いWAFWife Acceptance Factorを維持する必芁があるため、たたは私の父が蚀うように、それは簡単に合法化できるため、実甚的な偎面が存圚する必芁がありたす。



そしおい぀ものように、怠inessは進歩の゚ンゞンでした。 少し遅れお午埌にベランダに座っお、倪陜が心地よく焌けおいたず同時に、私の小さな息子が最䞊階の寝宀で寝おいお、䞭囜の枩床蚈で2ドルで刀断したしたあなたはただあなたの息子を起こさずに行っお芋なければなりたせんでした 枩床は26を超えおいたので、今床はリビングルヌムに行き、セントラル゚アコンをオンにする必芁がありたす。その埌、枩床が少し䞊がるたびにオンにならないようにオンずオフを切り替える必芁がありたす。 倜の倏にこれを行うのは特に䞍愉快です。軜い毛垃の䞋で凍るず、家族党員を目芚めさせずにコン゜ヌルに向かっおリビングルヌムに走り蟌んで、前䞖玀のこの成果を削枛するために、䜕床もゞャンプする必芁がありたす。 それから、私はそのような怒りを止め、「あなたの自慢のArdunyaはどこにいるのか、今ここに来お、圌女ができるこずを芋おみたしょう」ずいう蚀葉で友人を呌ぶ時だず気づきたした。 私はそれをたったく遞択せず、あたりにも䟡倀がないずは思わなかったずすぐに蚀わなければなりたせんたずえば、匊を扱う堎合、怒りず無力さからさえ、STM32のプロゞェクトの途䞭でそれを続けたした。 最埌に、圌はただ圌女ず䞀緒にいたしたが、最初のものが最初です。



すべおがこのように行われた理由ず、パンに関する私の経隓ずベストプラクティスをどのように広めるこずができるかを理解しやすくするために、私たちは私の指先に䜕があるかを説明したす

1カナダの民家私は私のものず蚀いたいが、もちろん銀行に属し、どんなにばかげおいるように聞こえるが、珟圚の料金で党額払うこずは利益を生たない 2フロアですが、その半分はフロアのフロアに察しお他の半分に察しお垂盎にシフトされたす。

2Arduino Uno埌で、Mega X10ずラゞオのI / Oの数が少ないため、必芁でした

3高䟡でネむティブなむヌサネットShild。 なんずか始めおENC28J60に適したラむブラリを芋぀けるこずができたせんでした

4欲望、時間、そしおいくらかのお金。

ここで慣習的であるように、寝宀は最䞊階にあり、私にずっおは、これはリビングルヌムの䞊半分の床であり、冷暖房システムの䞍気味なコントロヌルパネルが壁にねじ止めされおいるこずがわかりたす。 ここでは、そのようなシステムはHVAC暖房、換気、および空調ず呌ばれ、実際には通垞の巚倧なもの数䞇BTUたたはそれらをトン単䜍で枬定したすスプリット゚アコン、路䞊および熱亀換噚の内郚にある倖郚熱亀換噚およびコンプレッサヌが組み蟌たれおいたす1.5ポンドのファンで2぀の熱亀換噚䞀方ぱアコンに、もう䞀方は燃料油たたはガスバヌナヌからを䜿甚しおリビングルヌムの床から空気を吞い蟌み、ダクトシステムを介しお各郚屋に送り蟌む䞭倮換気システム。 ヒヌトポンプの䟿利さず名前は、このデバむスがフロンを䞡方向に駆動し、それに応じお家の空気を冷やすだけでなく加熱するこずができるずいう事実によるものです。 倖の熱が0たたは-5モデルず蚭蚈に応じおよりも十分に倧きい堎合にのみ、圌はそれをあたり効率的に加熱できないこずに泚意する必芁がありたす。 寒い堎合、ヒヌトポンプは機胜したせん。このためには、燃料油たたはガスを入れたタンクだけが必芁です。



私は自分のプロゞェクトず野心を小さなものから始めたので、このHVACがどのように䜜成され、どのように管理されるかを分析したしょう。 実際、悪魔はそれほどひどいものではありたせん。 利䟿性の1぀は、米囜ではなく囜内のすべおのものの液䜓暙準化です。これにより、オヌプンでシンプルな堎合によっおはよく知られた通垞は叀代のコンドミニアムプロトコル/暙準に埓っお、ハリネズミずヘビを亀差させるこずができたす。 私たちの堎合、システム自䜓バヌナヌファン、熱亀換噚は1぀のメヌカヌ、2番目の゚アコン、3番目の加湿噚、4番目の加湿噚から賌入できたす。正盎に蚀うず、このようなデバむスがペヌロッパでも呌ばれる/制埡されるかどうかはわかりたせんが、すべおがスリムであるか非垞に䌌おいるず思いたす私の知る限り、そのようなシステムはすでにロシアに存圚し、どこからでも/より安く茞送されおいるので、そのようなシステムに出䌚う​​チャンスがありたす。開始する前に兞型的なシステム接続の図を芋おみたしょう システムにクラッシュしたす。

ご芧のように、ほずんどすべおが䞀目瞭然です。 説明する必芁があるのは、コントロヌルナニットに電源が䟛絊され、24ボルトの亀流によっお熱自䜓が制埡されるこずだけです。 入力トランスRおよびCから䟛絊されたす。ラむンCは共通であり、垞に接続されおいたす。 したがっお、R短絡をそれぞれY、O、WたたはGに適甚するず、スむッチがオンになりたす。 ブロック。 これから構築したす。 それで、もしそれらが含たれおいるなら、私たちはさらに悪いのですか 新しいシステムに既存のシステムを補完させたしょう。 これらの制埡は以前のように叀いリモヌトコントロヌルずコントロヌラヌから実行できたすが、必芁な堎合にのみ、Arduinoは叀いシステムをコントロヌルから切断し、溝を自分の手に取り戻しお戻すこずができたす。



そしお、電力が䟛絊されず、䞀般的に接続が切断されおも、以前の蚭蚈を保持するように配眮したす。 R-0は暙準制埡モゞュヌルを無効にし、Arduinに制埡を転送したす。 R-1-4は適切なラむンに目的の電圧を䟛絊したす。 この制埡電圧Rは、緑のワむダによっお各リレヌに䟛絊されたす。 もちろん、管理するのは良いこずですが、システムは深刻であり、誀っお、たたは実際に䜕か間違った組み合わせや間違った組み合わせで電源を入れた堎合です。 たずえば、熱亀換噚は暖たり、ファンは空気を流しお熱を陀去せず、過熱しお火灜を匕き起こす可胜性がありたすが、たったく必芁ありたせん。 そのような状況を避けるために、䞉重の防埡を䜜ろう。 したがっお、最初の芁塞は各ラむンS1-4の電圧センサヌになりたす4pにする必芁がありたす。



それらは、2぀の抵抗分圧噚ず小さな電解質を備えたダむオヌドです。 写真のように、ヒンゞ匏アセンブリにするこずができたす。 その結果、Arduinで各制埡ラむンに実際に電圧があるかどうかを知るこずができたす。 したがっお、制埡線Y、O、W、Gの珟圚の状態が本来あるべき状態に察応しおいない堎合、゚ラヌコヌドを衚瀺しおシステムをオフにしたす。 次の芁塞はオプションのプレナムセンサヌです。 枩床が高すぎたり䜎すぎたり0Cに近い堎合は、再床コヌドを出力しおシス​​テムの電源を切りたす。 明らかに、arduino出力からリレヌに盎接電力を䟛絊するこずは䞍可胜であるため、各リレヌのトランゞスタを積み重ねるか、1぀のボヌドに耇数のリレヌずトランゞスタを備えた既補のモゞュヌルを賌入する必芁がありたす。 私はibeiでコンポヌネントの99を賌入したす。 たずえば、井兵衛は玄8ドルの8チャネルモゞュヌル8チャネル電子リレヌモゞュヌルでいっぱいです。 たたは、4 + 2を賌入できたす実際には5぀ず1぀のスペアしか必芁ないため





枩床ず湿床のセンサヌずしお、䞭囜のデゞタルDHT22を䜿甚したした 誰が自分自身をよく蚌明しおいたす。 必芁なのは、+ 5、GNd、およびデヌタの3本のワむダヌのみです。 ワむダは、粟床ず信号を損なうこずなく十分に長くするこずができたす。 1぀のセンサヌは、日陰で盎接の湿気からキャノピヌの䞋で通りに投げ蟌たれたす。 家の䞭の1぀のセンサヌ。 䜕幎も前に既に建おられた家では、通垞、最倧の問題は新しい電線を敷蚭するこずなので、珟圚の配線を最倧限に掻甚しようずしたした。 DHT22にはいく぀かのラむブラリがありたす。 これ以倖の人には問題がありたした。 壁に取り付けられたリモコンの隣に内郚DHT22を眮きたす。 HVACコントロヌルシステムを私の家のように家に蚭眮しおいた堎合、コントロヌルナニットからむンゞケヌタヌずボタンを備えたリモコン自䜓がぶら䞋がっおいる堎所たで6芯ケヌブルが既にあるはずです。 珟代のリモヌト私のようなに必芁なのは2本のワむダヌだけです。 したがっお、4本の配線枈みのワむダを自由に䜿甚できたす。 それらで、+ 5V、GND、内郚DHT22およびArduinaからの最埌のシリアルUARTTxのデヌタを実行しお、ディスプレむに情報を衚瀺したす。



ディスプレむずしお、 シリアルむンタヌフェヌスを備えた小さな2.5 cmOLEDスクリヌンを䜿甚したした 。 はい、それは少し高䟡ですが、利甚可胜なものずはいく぀かのナニヌクな違いがありたすシリアルUARTむンタヌフェヌスは、それを接続するために1本のワむダのみを䜿甚するこずを可胜にしたす最埌に、コンパクトさずコントラスト、そしお明るい光ず倜間の優れた読みやすさを兌ね備えおおり、倜間に垞時バックラむトが点灯しおいるLCDのように廊䞋党䜓を照らしたせん。



その埌、配線、電源、無線モゞュヌルを远加せずに、各郚屋に枩床センサヌを配眮する方法の問題が発生したした。 センサヌずしお、デゞタルDS18B20を遞択したした。 良奜な粟床+-0.5Cこれは2本のワむダグランドず信号のみを必芁ずしたす。 これらは、これらの2本のワむダヌに䞊行しおたくさん吊るこずができたすそれぞれに固有のMACアドレスがありたす。 しかし、すべおの郚屋で2本のワむダヌを䌞ばすこずさえ、地獄のような劎力です。 ここで私は倜明けしたした。 結局のずころ、すべおの郚屋に電話ケヌブルが敷かれおおり、それは4芯であり、最良の堎合、電話通垞は赀ず緑に2本のワむダヌが䜿甚され、残り黄色ず黒は私が必芁ずするすべおの堎所を通過し、自由なたたです。 したがっお、ワむダを切断せず、必芁な2本だけを露出させお、DS18B20に埓っお各郚屋でそれらにはんだ付けしたした。 ワむダの党長は非垞に長く、掚奚される4.7 kOhmで信号線が+ 5 Vで支えられおいる堎合、私の堎合、センサヌは事実䞊読めず、バッキング抵抗を半分に2.3 kOhmに削枛し、すべお正垞に機胜したした。



それから圧力センサヌに混乱し、高䟡なBMP085で停止したした ただし、I2Cむンタヌフェむスを備えおいるため、脚ず配線の数を節玄できたす。 圌はただ自分の枩床を読み取るこずができるので、地䞋宀に入れたした。地䞋宀では、新しいワむダヌを匕っ匵るのが簡単でした4皋床。 私は、蚭蚈が分解されお修理されるように、暙準の電話ケヌブルずコネクタRJ11を最倧限に掻甚しようずしたした-適切なものに亀換したした。 このバロメヌタヌをRTC䞍揮発性クロックモゞュヌルず同じI2Cバスに接続するず、それほど明確な問題は発生したせんでした。 圌らは互いに干枉し、バロメヌタヌを読み取る前にわずかな遅延を蚭定するたで、すべおが䞍安定に動䜜したした。 短時間の䞀時的な停電はそれほどたれではないため、RTCモゞュヌル 私は䞍揮発性の時間のためにそれを远加したした。 x10を䜿甚するずきに基本的に必芁です。 それを䜿甚しお、むンタヌネットを介しおNTPず自動的に同期したいずいう芁望がありたした既にあるためが、webduinoサヌバヌずNTPを暪断するこずができたせんでした。 その結果、Webむンタヌフェヌスで蚭定やモヌドを倉曎するたびに、NTP時間Unix゚ポックがArduinoに送信されRTCが曎新されたす。 これは、珟圚のコンピュヌタヌたたはモバむルデバむスの時間からJavaScriptによっお取埗され、垞に正確で正しいタむムゟヌンではないずいう欠点がありたす。



ペニヌ$ 2トランスミッタヌを䜿甚しお、無線゜ケットArduinaをオン゚アでコマンドを送信したす モゞュヌル。 圌らは、䌊兵衛「RFトランスミッタヌ315 Mhz ..」で怜玢および任意の店舗で1ダヌスです。 あなたのコンセントに合った適切な無線呚波数を遞択する必芁がある唯䞀のもの。 残念ながら、私の゜ケットは暙準のRCswitchラむブラリで正しくサポヌトされおいたせんでした。 ラむブラリの説明には、サポヌトされおいるチップのリストがありたすが、リストにない堎合でも動揺しないでください。ブロヌドキャストを手動で分析し、ラむブラリなしで機胜したした。 同様の゜ケットに぀いお倚くのこずが曞かれおおり、ラむブラリで動䜜したす。 特に、ここ http : //habrahabr.ru/post/213425 http://habrahabr.ru/post/212215 110V゜ケットを䜿甚したした 。 無線制埡には非暙準の゜リュヌションが必芁であるずいう事実にもかかわらず、それは問題に察する最も単玔で費甚察効果の高い゜リュヌションです。 ぀たり、バッテリヌたたはその他のデバむス必ずしも抵抗性ではないを適時たたは手動でオンおよびオフにし、時には倖郚ラむトをオンたたはオフにしたす。 Insteon、Zwaveなどには倚くの堎合䞍必芁な远加機胜がありたすが、それらははるかに高䟡であり、むンタヌフェヌスのオヌプン性に問題があるため、Arduinoは簡単なコマンドをデバむスに送信できたす。 ゜ケットx10、Insteonなどの唯䞀の問題は、切り替え䞭に非垞に倧きな音でクリックするこずです。 これは特に静かな倜に迷惑です。 別のニュアンスx10は北米で投獄され、人気があったため、110ボルト未満でした。 ここでは、誰もが自分で遞択したす。 たたは、次の料金を支払う

Z-Wave — , -, - , , – /. USB . ( ) OS ;

Insteon — , x10 - 110;

5-10 . 110 . , , () ( ) 1-Wire . 




( ). 1 . +5 ( 0 1) ( 5 +5). . () . . . () ( ).



( 2 ) , HVAC . : ? . ( ). . - . . . , , . FreeBSD Mac OS, BSD. / -2-4. .



RF, RTC, Uno( ). Mega . .



html Ajax Arduino web server (webduino) JQuery Mobile. , .



, , ( ) . . . , . . , . ( AUX 10). () . ぀たり 21 , 20 . , 10 , . , . . . 10 html(JS) , HTML . . . ( 1-2 ) . . . 24 (x-, - ). .



SET. /. . ,

. SET OFF . . heat_temp html(JS) , .



10 . : ON — ( ), OFF ( ), Split — . . Apply . . . . ON — , OFF ( ), Split( )- , Day — ( ), Day&Night — . Split. Apply .



Override. . . . Overrride. OFF Override. upd_interval ( html ) . = 60 . .



(pool). -5 . RF / . . pool x10pools[17]={0,0,0,0,0,12,0,0,13,0,0,0,0,0,0,0,0}. . poolt ( html ) delta_temp * poolf ( html ). delta_temp ( html ) . +-. ( — delta_temp) ( + delta_temp). 0.5 .



. . (JS Ajax html ) (Arduino) . HTML , . ( ) ( ) . Arduino web server IP , . HTML Web . HTTPS . , Arduino ( Dinamic DNS Port Foewarding). http://myhosting.com/index.html?http://myhome.slyip.net:8081/hvac. Arduino . , . ( HTTPS ) Arduino Web Shield - . TP-LINK TL-WR703N wifi bridged web Serial(UART) Arduine, ( ) . STM32 ( ) .





B 1.0.1, HTML GUI .



All Articles