2013年2月23日土曜日

最終的な回路図

最終的な基板の回路図を載せておきます。

こちらがRaspberryPiの上に載せるRP-1基板の回路図。
マウントする部品によって2種類の用途に対応させています。


こちらがXBeeでエアコンやスイッチなどを制御するモジュールのHA-2基板です。
こちらも用途に応じてマウント分けして3種類の基板を作れるようにしています。
回路的にはこちらの方が部品が多いのですが、Friskケースに入れるために小さく作ったため配線に苦労しました。



2013年2月21日木曜日

アートワーク完成



色々忙しくて間が開いてしまいましたが、RaspberryPiに載せる基板のアートワークと、XBeeの制御モジュールの改良版のアートワークが完了しました。

RaspberryPi用の基板の方は赤外線の送受信機能、XBeeモジュール、AVRマイコン、温度センサー、I2Cコネクタと2.1mmの5V電源コネクタを載せています。


XBeeの制御モジュールの方は、HA端子の制御機能、シャッターや電動窓のスイッチのコントロール機能、赤外線の送信機能、センサー接続機能を載せています。

前回の基板からの改良点は、スイッチコントロール機能にスイッチが押されたことを検知出来る機能を追加したこと、エアコンを個別に制御するために赤外線の送信機能を追加したこと、色々な制御に対応するためにAVRマイコンを搭載したことです。
色々追加したため、個別に載せていたコネクタを22pのものに集約しました。

今週末まで検図をして来週早々に出図しようかと思います。

2013年2月4日月曜日

RaspberryPiの上に載せる基板


RaspberryPiの上に載せる基板を設計し始めました。
回路を入力した後、CadlusXでアートワークをして実物大でプリントして薄めのダンボールに貼って大物部品を載せて見ました。



RaspberryPiに位置を合わせて載せてみて大物部品とRaspberryPiの部品のいち関係を確認しています。


ぶつかっているものは無さそうなのでこれでいけそうです。
回路をもう少し確認したら発注しようと思います。

2013年1月27日日曜日

AVRの開発環境

基板を起こす前にAVRマイコンの基板と前回作成したXBeeのHA制御基板、AVRのwriterを組み合わせてテスト環境を作りました。
これで、IR-Bluster機能を実装してみて動作確認していきます。



2013年1月26日土曜日

エアコン用のXBee経由IR-Bluster&HA端子制御


エアコンに組み込むためのXBee経由のIR-Bluster&HA端子制御モジュールを設計し始めました。
エアコンの状態はHA端子経由で監視し、制御は発光強度を弱めにしたIR-Blusterでリモコンコードを送ることで制御するモジュールです。
RaspberryPiで組んでいる赤外線受発光+XBeeコントロールサーバーからコマンドを投げて赤外線を発光するものです。
FRISKケースに組み込むのでこんな感じの基板を想定しています。

回路は前回と違い細かな制御をするためと、IR-Blusterの赤外線コード生成のためにAVRマイコンを一緒に入れています。
まだ、基板設計を始めてないので入りきるか判りませんが、ざっと上の様に部品を並べて見た限りでは入りそうと判断しています。


ちょっと、部品が多くなってきたので2個入りの表面実装部品を多用しています。
あと、コネクタを前回のように個別に置いていては面積が足りなくなりそうなので22pの集合コネクタと電源用の3pコネクタに減らしました。



2013年1月20日日曜日

RaspberryPiの赤外線送受信基板

ユニバーサル基板で組んでいたRaspberryPi用のIR-Remocon回路を基板化しようかと思い、検討をはじめました。
ざっくりRaspberryPiの基板の寸法から上に載せる基板の寸法を拾い、おおまかな配置を検討しています。RaspberryPiの上に部品面を下にした基板を載せて、GPIOの26pinコネクタと、RPi RevBで追加になった8pinコネクタ(no mountですが)で接続します。
また、IR-LEDの側にRPiの電源コネクタがいるので、これを反対側に2.1mm電源コネクタを増設して、こちらから給電出来るようにします。



回路としては、XBeeとIR送受信、BuzzerとAVRマイコンを載せておき、空き領域を2mmピッチ、2.54mmピッチの蛇の目で追加回路を載せられるようにしておきます。


この基板は2通りの用途を考えています。
1つはRPiと組み合わせてXBee Cordinator + IR-Receiver + IR-Bluster機能付きのホームコントロールサーバー
2つ目はこの基板単独でAVR + XBee EndPoint + IR-BlusterのXbee経由のIR-Bluster子機
です。
これからいくつかの部分の回路の動作検証をしつつ基板の設計をしていくつもりです。

2013年1月7日月曜日

MacによるXBeeのFW書き込み

MacでXBeeのFW書き込みをするためにVirtualBox上でWindowsXPを動かしてX-CTUを使っていましたが、これだけのためにWindowsを起動するのが面倒くさくてOS-Xから直接やることができないか検討してみました。
X-CTUで書き込みをしているXBeeのDI/DOのピンからUSB-Serialの基板のRxDに信号を繋いで転送プロトコルの内容を見てみました。

どうもat%pコマンド(ATコマンドモード時)というマニュアルに存在していないコマンドを発行して通信しているようです。このコマンドを発行した後にデータを転送しているようなのですが、この転送しているデータの中身がXBeeのeblファイルやehxファイルの中身とは別物でどうやって生成しているのかが判りませんでした。

で、色々ググっていたのですがmoltosenso Network Manager IRONというFreeのツールがLinuxやMac OS-X用に存在していてFWの書き込みが出来るようなので試してみました。
ちょっとUIに癖がありますが、FWのファイルを用意して書き込みをするとちゃんと書き込み出来ました。書き込みはやはりat%pコマンドで書き込んでいるようです。

X-CTUの場合はModem XBEE, Function Set, Versionという項目を選択するところをファイルを直接指定して書き込みするのが判りにくいですが、ZBのCordinator APIの場合はXB24-ZB_21A7、ZBのRouterAPIの場合はXB24-ZB_23A7を選択することで書き込むことができます。
どのバージョン番号がどのFunction Setに相当するのかはmxiファイルを見ると先頭部分に書かれています。

これでいちいちWindowsを立ち上げる必要がなくなりました。


2013年1月6日日曜日

基板化に向けてユニバーサル基板で組み直し

そのうち基板を起こす準備として、ユニバーサル基板に部品を並べて回路を整理しました。パルス駆動なのでIR-LEDも高出力化しています。



ケースに収まるように部品面を下にしてRaspberryPiのGPIOコネクタに接続しています。


横から見たらこんな感じです。
左からIR-LED、IR-Receiver、XBeeモジュール、IR-LEDの順です。



その他のセンサーI/Fや電源コネクタetcを追加して、XBeeの子機側の回路と合わせて基板を起こそうかと考えています。


2012年12月31日月曜日

コントロールサーバーとリモコン制御

これまではiRemoconをsocket経由で制御してIRリモコン出力を出すようにコントロールサーバーを組んでいましたが、今回コントロールサーバーを置いているRaspberryPiにリモコンの記録、発光機能を追加したのでiRemoconをやめてRaspberryPiでリモコンも制御するようにコントロールサーバーを変更しました。




これで、すべての制御がRaspberryPiとその配下のXBeeコントローラで完結したのでシンプルになりました。




リモコン制御を追加したついでに外出時の一斉shutdownでTVも落とせるようにリモコンコードを追加しました。
普通のリモコンのTV電源はon/offのトグルボタンなのでリモコンコードを変更して電源offのコマンドをだせるようにして対応しています。

IR発光部を強化

回路が検討しているうちに汚くなってきたのと、いまいちLEDの指向性が強すぎるのか角度によっては反応しなかったりするので、LEDを2個に増やしました。
今までもLED点灯時の電流は90mA程度(LEDはMax100mA品)流れているので出力が弱いということはないはずですが。
短時間nパルス発光なので、LEDを2個+Trでほぼ3.3Vになるようにして抵抗を外しました。
デジカメで発光の様子を比べてみましたが、今度のほうが手元のリモコンと同程度の発光強度が有りそうです。リモコンの効きも良くなりました。
これでうまくケースに収まります。


--> RaspberryPiの赤外線リモコン