2012-03-01 13 views
0

私は自分のオフィスに入るとき(私のiPhone経由で)に感知し、自動的にライトを点灯させるBluetooth式のArduinoライトスイッチを作ることに興味があります。私の理解は、これを行うための最も安全な方法(すなわち、220  Vライトスイッチ電源装置で遊んでいない)は、X10リモートコントロール/電力線システムを使用してライトスイッチをオンにすることです。ArduinoをX10経由でライトスイッチに接続

X10をArduinoに接続するためのライブラリは、X10 Libraryにあります。

Arduinoに接続するボックス(はんだ付けが必要)はConnecting Arduino to Lightswitch via X10です。

X10ライブラリの使い方と、ライトスイッチをオンにするコードの作成方法がわかりません。私はBluetoothがペアになると、X10コマンドを送信する部分を持っています。問題は、送信するX10コマンドがわからないことです。

答えて

1

Arduino X10 ZIPライブラリに含まれている例は非常に役に立ちます。基本的には、次の行を含めるだけです:

// Initialize and create an X10 instance 
x10 myHouse = x10(zcPin, dataPin); // Where these pins are what you connected the X10 transmitter to. 

すべてのX10デバイスには、ハウスコードとユニットコードの2つの識別属性があります。アイデアは、各部屋に関連付けられたハウスコードと各デバイスのユニットを使用して、家のすべての店舗を管理できるということです。実際には、この実験では、1つのデバイスがコード 'A'を格納するように設定されています。 ハウスコード内の複数のデバイスから1つのデバイスだけをアドレス指定するという細かい制御は本当に必要ありません。コマンド「すべてのハウスコード 'A'をオン(またはオフ)」を送信するだけで、うまくいきます。ワイルドカードアドレスのような単一のONコマンドフォーマットだけで、複数のコマンドを送るつもりはありません。 と仮定すると、あなたのスイッチはとそれをオンにした後、「1」のコード「A」とユニットを収容するために設定されている:

myHouse.write(A, ALL_LIGHTS_ON, 3); // The 3 means send the same command three times to overcome any potential noise in the circuit. 

とオフは明らかである:

myHouse.write(A, ALL_LIGHTS_OFF, 3); 

別のFYI X10を使用した場合、あります電力線を介して送信される信号はかなり脆弱であることがわかります。電力サージプロテクタや複数の回路ブレーカを使用するような最新の回路では、家の片側と他の側の間のシングルをフィルタリングすることができます。したがって、最良の結果を得るには、X10トランスミッタとX10デバイスを同じ回路上に、またはできるだけ近くに配置してください。

+0

"明らかにオフです:myHouse.write(A、ALL_LIGHTS_ON、3);"私はそれが実際にあなたが意味するものではないと推測しています –

+0

ありがとう - 本当に明らかに正しいテキストです。 – jdh