ブラウザの JavaScript がオフ(ブロックまたは許可しない)に設定されているため、このページは正常に機能しません。
disklessfun’s Wiki*
[
ホーム
]
一覧
最終更新
バックアップ
ヘルプ
Top
>
remote-sys
>
複製
?
ms
remote-sys をテンプレートにして作成
これらのキーワードがハイライトされています:
開始行:
↓この下の方に掲載の内容は古い方のシステムです。
いまどきの環境にも適用し易い新しいシステムは[[%%%''こちら''%%%>internet-ir-aircon-raspberry-pi]](2014-10-23追加)あるいは[[%%%こちら%%%>internet-ir-aircon]](2011-8-17追加)です。最近のエアコンを携帯からオン・オフするシステムです。
↓下のシステムは有線リモコン式の古いエアコンを対象として構築した例なので最近の状況に合っていない面もあります。↓下のシステムの大部分を活かしたまま、最近のエアコン環境に適合させた構築例が[[こちら>internet-ir-aircon]]です。ただし[[こちら>intern
あと、私は本ページ、[[このページ>internet-ir-aircon]]とは別口で、市販キットを一切利用せず、全部品を自分で集めて作った[[%%%ネットワーク接続遠隔スイッチのページ%%%>network-io_on_universal_circuit_board]]を設けています。そこには[[PICNICを外部
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
----
(2010-12-30)4年余りぶりに更新
TITLE:既設エアコンをPICNICでインターネット対応させて携帯から操作
RIGHT:初出 2006-9-16
RIGHT:最終更新 2013-3-19
RIGHT:製作時期 2005秋
LEFT:
本ページは[[PICNIC>picnic-patch]]を応用した簡単な実用システム(工作)の構築例です。
記述することがらが多いので、各部の説明は簡略化しています。もっと詳しい説明が必要であれば要望を下さい。
#br
(2010-12-30追記)本ページで紹介しているシステムで操作しているエアコンは相当に古いものです。最近のエアコンには標準で付いていると言っても過言ではない''HA''(Home Automation)''端子''(JEM-A端子とも呼ばれる)は付いていませんでした。なので[[''HA端子
「''自宅のエアコンを携帯からON・OFFしたい''」と考えておられる方は、''まず、「自宅のエアコンにHA端子が付いているか」''を確認してみて下さい。HA端子があれば、自分で電子工作しなくても、いろいろな市販品を使って機器を遠隔からON・OFFできます。ただ
#contents
** システム構成図 [#s3f78a63]
[[&ref(remote-sys_1_s.png);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_1_b.png&refer=remote-sys]]
-ルータ兼FireWall兼WebサーバではPICNICの画面を携帯向けに変換するWebサーバ(PICNICのWebサーバのラッパー)を動作させています。
-実際にはFirewallはVPNゲートウェイにもなっていて[[OpenVPN>openvpn]]を動作させています。
-構想時点では[[ここ>#toggle-sw]]と[[ここ>#photo3]]への対応が技術的に不確かでしたので、本格的にとりかかる前に検証を済ませておきました。
-フォトトランジスタを余分に購入したので後で[[これ>rev-cntr]]と[[これ>brht-sense]]を作りました。
&aname(toggle-sw);
** トグル式の電源スイッチを持つエアコンをリモートから操作する方法 [#i55308f9]
&color(Blue){(2016-3-15追記)この項は10年くらい前に書いた記事で、LEDの監視は単純にON・OFFのみです。色や点滅速度まで検出する例が[[&color(Blue){%%%こちら%%%};>aggressive-automation]]にあります。};
#br
トグル式(ボタンを押す度に交互にONOFFの状態が入れ替わる形式)の電源スイッチには"ON","OFF"のステータスがなく、スイッチやリレーの単純な開閉で電源のONOFFを管理できません。そのままではリモートから電源の状態を管理することは困難です。
#br
赤外線インターフェースの有無に関わらず、インターネットに対応していないエアコンの電源スイッチはトグル式が殆どで、設置後の改造でリモートからONOFFする為には、電源ステータスLEDの状態を検出してフィードバック制御するしか方法はないと思います。(エ
#br
|フィードバック制御のケース|
|人間がおこなう指令|CENTER:指令時のパワーLEDの状態|CENTER:処理|h
|CENTER:ON|パワーLEDが消灯している|トグル処理をおこなう|
|CENTER:ON|パワーLEDが点灯している|何もしない|
|CENTER:OFF|パワーLEDが消灯している|何もしない|
|CENTER:OFF|パワーLEDが点灯している|トグル処理をおこなう|
#br
フィードバック制御はマイコンを使うのがやはり簡単でしょう。PICNICに加えてフィードバック制御をおこなう[[補助基板>#kiban]]を使うことにしました。
#br
PICNICは[[これ>picnic-patch]]で改造し、[[補助基板>#kiban]]にプッシュスイッチを取り付けて、[[機器をローカルで直接ONOFFするインターフェース>#photo2]]も設けました。
** 各部の写真 [#y8e27844]
&aname(photo1);
*** コントローラとエアコン全2台のうちの1台 [#me6e5795]
[[&ref(remote-sys_2_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_2_b.jpg&refer=remote-sys]]
[[これ>picnic-patch]]を使っているので、コントローラに設けたスイッチで直接ONOFFすることもできます。
&aname(photo2);
*** コントローラ [#me933eb1]
[[&ref(remote-sys_3_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_3_b.jpg&refer=remote-sys]]
右下は[[PICNIC>picnic-patch]]、左側は補助基板、右上はEthernetコンバータ
#br
補助基板については[[こちら>#kiban]]
&aname(photo3);
*** エアコンの有線リモコン部の改造 [#b39865a1]
[[&ref(remote-sys_4_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_4_b.jpg&refer=remote-sys]]
-電源スイッチ部を"乗っ取っり"ました。
-半田づけして外部に伸ばした2本のリード線を短絡すれば電源がONOFF出来ます。(言い訳になりますが、立った姿勢で鉛フリー半田を使ったので思いっきりイモ半田になってます。)
-リモコン自体の電源・タイマースイッチは操作できないようにカバーしています。(たとえ操作してもコントローラが強制的に変更するので役に立たないから)
&aname(photo4);
*** エアコンの電源ステータスLEDの状態の検出 [#kb70e842]
[[&ref(remote-sys_5_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_5_b.jpg&refer=remote-sys]]
光センサ(フォトトランジスタTPS615)をエアコンの電源ステータスLEDに向けて取り付けました。(電源ステータスLED自体は覆われて見えません)
&aname(photo5);
*** 換気扇のONOFF [#b8687a04]
[[&ref(remote-sys_6_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_6_b.jpg&refer=remote-sys]]
換気扇全2台のうちの一台
#br
長い配線を伝ってやってきたTTLレベルの電流で[[秋月のSSRキット:http://akizukidenshi.com/catalog/items2.php?q=SSR&s=score&p=1&r=1&page=#K-00203]]をONOFFします。
&aname(photo6);
** 携帯画面(PICNICのWeb画面をラップしたもの) [#d60da15a]
[[&ref(remote-sys_7_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_7_b.jpg&refer=remote-sys]]
左が携帯画面、右は同じ画面をPCからアクセスした結果
** PICNICの改造 [#q387063c]
PICNICが手元で操作できない問題に関しては構想時から、[[PICNICでAC電源をON/OFF:http://stada.jp/comp/PICNIC/]]に掲載されている[[PICNICをネットワークを介さずに手元でも操作できるようにするパッチ>picnic-patch]]を使おうと思っていました。
#br
エアコンを少々まわりくどいロジックでONOFFするので、構想時には、もしエラー(定めた回数、エアコンのONOFFをリトライしても全て失敗した状態)が発生した場合の処理も気になりました。
#br
本当はPICNICにエラー処理機能を追加したかったのですが、当時のPIC初心者の私ではそれは敷居が高く断念しました。
従って現在、エラー処理は補助基板内でのみおこなっており、リモート環境(携帯)側ではエラーの有無を知ることができません。ただ一年が過ぎようとする今までのところエラーは一度も発生していませんのでまず問題ないと思っています。
#br
(2010-12-30追記)%%今振り返ってみるとPIC16F84AのRA2とPICNICのRB0、および前者RA3と後者RB1を直結しておき、エアコンON・OFFトグル処理のエラーを取得できるようにしておくべきだったと思います。実際には必要性がなかったにしても、システムとしての見地か
#br
''(2010-12-30追記)手元にPIC16F877Aとピン互換のPIC18F4520を持っているので、「誰か、(エラー発生時の)メール送信機能(※)を実現(追加)したPIC18F4520用のPICNIC後方互換のファームウェアを公開してくれないかなあ」と思っています''。メール送信機能はこれ
※もちろんSMTP認証対応
&aname(kiban);
** 補助基板の役割 [#be36cab7]
|補助基板の役割|
|エアコン電源スタータスLEDのフィードバック処理|PIC16F84Aで処理します|
|直接操作用インターフェースの提供|[[PICNICをネットワークを介さずに手元でも操作できるようにするパッチ>picnic-patch]]を使いました|
|リレー駆動|リレーはPICで直接駆動できませんのでトランジスタで増幅してから駆動します|
|電源ステータスLEDの状態を表すフォトトランジスタ出力の増幅|現在の仕様では増幅の必要はありませんが、当時は将来改造することを考慮して組み込みました|
** 補助基板の回路図 [#r2ec6e09]
[[&ref(remote-sys_circt_s.png);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_circt_b.png&refer=remote-sys]]
(R11が15KΩなのに対し、R12が6KΩである理由)
エアコンBは補助基板から十数m離れており、PTR2とTR2の間には実質的には抵抗が存在する状態です。
その為にR12の値を小さくしないとエアコンの状態を検知することができませんでした。
また同じ理由でエアコンB側は検知能力自体が低く、エアコンの半透明の化粧カバーに穴を開けてLEDの出力光を直接光センサで受けないと検知することができませんでした。
#br
BSch3V形式(zip圧縮)
#ref(remote-sys_circt.zip,nolink);
&br;
** 補助基板のソース [#c89a2e98]
MPASM用
&ref(remote-sys.asm,nolink);
#br
著作権は放棄します。ていうか、私にとって初めてのPICプログラムです。
著作権と言えるほどのレベルのものではありません。でも以外に可読性が良かったりします。
** 携帯用のWebインターフェース(PICNICのWeb画面のラッパー) [#v0eff026]
euc-jp、unix形式テキストファイルをzip圧縮
#ref(onoff.cgi.zip,nolink);
cgiという名前ですが、実際にはmod_perlで使用しています。
** ルータ兼FireWall兼Webサーバの構築 [#q62a044b]
既に他のサイトに豊富な情報があるので省略します。
#br
自作の[[%%これ%%>onecdlin]]を使用しています。
(2013-3-19追記)このWebサーバ(正確には[[&color(Blue){%%%新システム%%%};>internet-ir-aircon]]のサーバ)は現在、「[[&color(Blue){%%%DD-WRT+optware%%%};>add_usb-port_to_dd-wrt]]」で構築しています。以前は[[&color(Blue){%%%CFリードオンリー運用のx
#br
#br
* ご要望、ご意見、質問を下のフォームにどうぞ&br;(でもここより、[[掲示板>board]]や[[書き込みフォーム>form]]のページに書いて頂いた方が気づき易いと思います。) [#q3b05164]
#areaedit(nofreeze,noauth,btn:[修正(書き間違った場合にご利用下さい)])
#comment
#areaedit(end)
終了行:
↓この下の方に掲載の内容は古い方のシステムです。
いまどきの環境にも適用し易い新しいシステムは[[%%%''こちら''%%%>internet-ir-aircon-raspberry-pi]](2014-10-23追加)あるいは[[%%%こちら%%%>internet-ir-aircon]](2011-8-17追加)です。最近のエアコンを携帯からオン・オフするシステムです。
↓下のシステムは有線リモコン式の古いエアコンを対象として構築した例なので最近の状況に合っていない面もあります。↓下のシステムの大部分を活かしたまま、最近のエアコン環境に適合させた構築例が[[こちら>internet-ir-aircon]]です。ただし[[こちら>intern
あと、私は本ページ、[[このページ>internet-ir-aircon]]とは別口で、市販キットを一切利用せず、全部品を自分で集めて作った[[%%%ネットワーク接続遠隔スイッチのページ%%%>network-io_on_universal_circuit_board]]を設けています。そこには[[PICNICを外部
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
----
(2010-12-30)4年余りぶりに更新
TITLE:既設エアコンをPICNICでインターネット対応させて携帯から操作
RIGHT:初出 2006-9-16
RIGHT:最終更新 2013-3-19
RIGHT:製作時期 2005秋
LEFT:
本ページは[[PICNIC>picnic-patch]]を応用した簡単な実用システム(工作)の構築例です。
記述することがらが多いので、各部の説明は簡略化しています。もっと詳しい説明が必要であれば要望を下さい。
#br
(2010-12-30追記)本ページで紹介しているシステムで操作しているエアコンは相当に古いものです。最近のエアコンには標準で付いていると言っても過言ではない''HA''(Home Automation)''端子''(JEM-A端子とも呼ばれる)は付いていませんでした。なので[[''HA端子
「''自宅のエアコンを携帯からON・OFFしたい''」と考えておられる方は、''まず、「自宅のエアコンにHA端子が付いているか」''を確認してみて下さい。HA端子があれば、自分で電子工作しなくても、いろいろな市販品を使って機器を遠隔からON・OFFできます。ただ
#contents
** システム構成図 [#s3f78a63]
[[&ref(remote-sys_1_s.png);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_1_b.png&refer=remote-sys]]
-ルータ兼FireWall兼WebサーバではPICNICの画面を携帯向けに変換するWebサーバ(PICNICのWebサーバのラッパー)を動作させています。
-実際にはFirewallはVPNゲートウェイにもなっていて[[OpenVPN>openvpn]]を動作させています。
-構想時点では[[ここ>#toggle-sw]]と[[ここ>#photo3]]への対応が技術的に不確かでしたので、本格的にとりかかる前に検証を済ませておきました。
-フォトトランジスタを余分に購入したので後で[[これ>rev-cntr]]と[[これ>brht-sense]]を作りました。
&aname(toggle-sw);
** トグル式の電源スイッチを持つエアコンをリモートから操作する方法 [#i55308f9]
&color(Blue){(2016-3-15追記)この項は10年くらい前に書いた記事で、LEDの監視は単純にON・OFFのみです。色や点滅速度まで検出する例が[[&color(Blue){%%%こちら%%%};>aggressive-automation]]にあります。};
#br
トグル式(ボタンを押す度に交互にONOFFの状態が入れ替わる形式)の電源スイッチには"ON","OFF"のステータスがなく、スイッチやリレーの単純な開閉で電源のONOFFを管理できません。そのままではリモートから電源の状態を管理することは困難です。
#br
赤外線インターフェースの有無に関わらず、インターネットに対応していないエアコンの電源スイッチはトグル式が殆どで、設置後の改造でリモートからONOFFする為には、電源ステータスLEDの状態を検出してフィードバック制御するしか方法はないと思います。(エ
#br
|フィードバック制御のケース|
|人間がおこなう指令|CENTER:指令時のパワーLEDの状態|CENTER:処理|h
|CENTER:ON|パワーLEDが消灯している|トグル処理をおこなう|
|CENTER:ON|パワーLEDが点灯している|何もしない|
|CENTER:OFF|パワーLEDが消灯している|何もしない|
|CENTER:OFF|パワーLEDが点灯している|トグル処理をおこなう|
#br
フィードバック制御はマイコンを使うのがやはり簡単でしょう。PICNICに加えてフィードバック制御をおこなう[[補助基板>#kiban]]を使うことにしました。
#br
PICNICは[[これ>picnic-patch]]で改造し、[[補助基板>#kiban]]にプッシュスイッチを取り付けて、[[機器をローカルで直接ONOFFするインターフェース>#photo2]]も設けました。
** 各部の写真 [#y8e27844]
&aname(photo1);
*** コントローラとエアコン全2台のうちの1台 [#me6e5795]
[[&ref(remote-sys_2_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_2_b.jpg&refer=remote-sys]]
[[これ>picnic-patch]]を使っているので、コントローラに設けたスイッチで直接ONOFFすることもできます。
&aname(photo2);
*** コントローラ [#me933eb1]
[[&ref(remote-sys_3_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_3_b.jpg&refer=remote-sys]]
右下は[[PICNIC>picnic-patch]]、左側は補助基板、右上はEthernetコンバータ
#br
補助基板については[[こちら>#kiban]]
&aname(photo3);
*** エアコンの有線リモコン部の改造 [#b39865a1]
[[&ref(remote-sys_4_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_4_b.jpg&refer=remote-sys]]
-電源スイッチ部を"乗っ取っり"ました。
-半田づけして外部に伸ばした2本のリード線を短絡すれば電源がONOFF出来ます。(言い訳になりますが、立った姿勢で鉛フリー半田を使ったので思いっきりイモ半田になってます。)
-リモコン自体の電源・タイマースイッチは操作できないようにカバーしています。(たとえ操作してもコントローラが強制的に変更するので役に立たないから)
&aname(photo4);
*** エアコンの電源ステータスLEDの状態の検出 [#kb70e842]
[[&ref(remote-sys_5_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_5_b.jpg&refer=remote-sys]]
光センサ(フォトトランジスタTPS615)をエアコンの電源ステータスLEDに向けて取り付けました。(電源ステータスLED自体は覆われて見えません)
&aname(photo5);
*** 換気扇のONOFF [#b8687a04]
[[&ref(remote-sys_6_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_6_b.jpg&refer=remote-sys]]
換気扇全2台のうちの一台
#br
長い配線を伝ってやってきたTTLレベルの電流で[[秋月のSSRキット:http://akizukidenshi.com/catalog/items2.php?q=SSR&s=score&p=1&r=1&page=#K-00203]]をONOFFします。
&aname(photo6);
** 携帯画面(PICNICのWeb画面をラップしたもの) [#d60da15a]
[[&ref(remote-sys_7_s.jpg);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_7_b.jpg&refer=remote-sys]]
左が携帯画面、右は同じ画面をPCからアクセスした結果
** PICNICの改造 [#q387063c]
PICNICが手元で操作できない問題に関しては構想時から、[[PICNICでAC電源をON/OFF:http://stada.jp/comp/PICNIC/]]に掲載されている[[PICNICをネットワークを介さずに手元でも操作できるようにするパッチ>picnic-patch]]を使おうと思っていました。
#br
エアコンを少々まわりくどいロジックでONOFFするので、構想時には、もしエラー(定めた回数、エアコンのONOFFをリトライしても全て失敗した状態)が発生した場合の処理も気になりました。
#br
本当はPICNICにエラー処理機能を追加したかったのですが、当時のPIC初心者の私ではそれは敷居が高く断念しました。
従って現在、エラー処理は補助基板内でのみおこなっており、リモート環境(携帯)側ではエラーの有無を知ることができません。ただ一年が過ぎようとする今までのところエラーは一度も発生していませんのでまず問題ないと思っています。
#br
(2010-12-30追記)%%今振り返ってみるとPIC16F84AのRA2とPICNICのRB0、および前者RA3と後者RB1を直結しておき、エアコンON・OFFトグル処理のエラーを取得できるようにしておくべきだったと思います。実際には必要性がなかったにしても、システムとしての見地か
#br
''(2010-12-30追記)手元にPIC16F877Aとピン互換のPIC18F4520を持っているので、「誰か、(エラー発生時の)メール送信機能(※)を実現(追加)したPIC18F4520用のPICNIC後方互換のファームウェアを公開してくれないかなあ」と思っています''。メール送信機能はこれ
※もちろんSMTP認証対応
&aname(kiban);
** 補助基板の役割 [#be36cab7]
|補助基板の役割|
|エアコン電源スタータスLEDのフィードバック処理|PIC16F84Aで処理します|
|直接操作用インターフェースの提供|[[PICNICをネットワークを介さずに手元でも操作できるようにするパッチ>picnic-patch]]を使いました|
|リレー駆動|リレーはPICで直接駆動できませんのでトランジスタで増幅してから駆動します|
|電源ステータスLEDの状態を表すフォトトランジスタ出力の増幅|現在の仕様では増幅の必要はありませんが、当時は将来改造することを考慮して組み込みました|
** 補助基板の回路図 [#r2ec6e09]
[[&ref(remote-sys_circt_s.png);:http://wikiwiki.jp/disklessfun/?plugin=attach&pcmd=open&file=remote-sys_circt_b.png&refer=remote-sys]]
(R11が15KΩなのに対し、R12が6KΩである理由)
エアコンBは補助基板から十数m離れており、PTR2とTR2の間には実質的には抵抗が存在する状態です。
その為にR12の値を小さくしないとエアコンの状態を検知することができませんでした。
また同じ理由でエアコンB側は検知能力自体が低く、エアコンの半透明の化粧カバーに穴を開けてLEDの出力光を直接光センサで受けないと検知することができませんでした。
#br
BSch3V形式(zip圧縮)
#ref(remote-sys_circt.zip,nolink);
&br;
** 補助基板のソース [#c89a2e98]
MPASM用
&ref(remote-sys.asm,nolink);
#br
著作権は放棄します。ていうか、私にとって初めてのPICプログラムです。
著作権と言えるほどのレベルのものではありません。でも以外に可読性が良かったりします。
** 携帯用のWebインターフェース(PICNICのWeb画面のラッパー) [#v0eff026]
euc-jp、unix形式テキストファイルをzip圧縮
#ref(onoff.cgi.zip,nolink);
cgiという名前ですが、実際にはmod_perlで使用しています。
** ルータ兼FireWall兼Webサーバの構築 [#q62a044b]
既に他のサイトに豊富な情報があるので省略します。
#br
自作の[[%%これ%%>onecdlin]]を使用しています。
(2013-3-19追記)このWebサーバ(正確には[[&color(Blue){%%%新システム%%%};>internet-ir-aircon]]のサーバ)は現在、「[[&color(Blue){%%%DD-WRT+optware%%%};>add_usb-port_to_dd-wrt]]」で構築しています。以前は[[&color(Blue){%%%CFリードオンリー運用のx
#br
#br
* ご要望、ご意見、質問を下のフォームにどうぞ&br;(でもここより、[[掲示板>board]]や[[書き込みフォーム>form]]のページに書いて頂いた方が気づき易いと思います。) [#q3b05164]
#areaedit(nofreeze,noauth,btn:[修正(書き間違った場合にご利用下さい)])
#comment
#areaedit(end)
ページ名: