なんでも作っちゃう、かも。

Arduino/Make/フィジカルコンピューティング/電子工作あたりで活動しています。スタバの空きカップを使ったスタバカップアンプなど製作。最近はもっぱらArduinoと3Dプリンタの自作に興味があります。

Arduinoで遊ぼう - 自動スリープ&復帰

Posted by arms22 on 2009年07月19日 2  0

Arduinoと赤外線距離センサ

赤外線距離センサを使って、人が席を離れたら自動的にPCをスリープさせ、戻ってきたら自動的に復帰させる装置を作ってみた。

ArduinoとPCはUSBシリアルで接続されている。PC上ではArduinoから送られてきた赤外線距離センサの値を一定周期で確認して、赤外線距離センサの値が80cm以上の時、5秒後にスリープするプログラムが動作している。
※スリープの方法はOSによって異なるので、個別で対応が必要。

Arduinoには赤外線距離センサの値が70cm以下の時、PCを復帰させるスケッチが書き込まれている。PCの復帰にはFT232RLのRI#端子を使用する。RI#端子はUSBホストコントローラをサスペンドからレジュームさせる端子だ。20msのLowパルス与えることでPCをスリープから復帰させることができる。



接続
IMGP2559.jpg

Analog 4 -> Vo(赤外線距離センサ)
Digital 2 -> 抵抗1K -> RI#(FT232RL)

FT232RLのRI#端子とArduinoのDigital 2の間には1KΩの抵抗を入れる。RI#端子はArduinoボードのX3ランドの4番に繋がっている。

スケッチとPCプログラムのダウンロード
http://xfind.hp.infoseek.co.jp/electric/arduino/asap001.zip

スケッチのアップロード
1. Distanceライブラリをarduino-00xx/hardware/libraries/以下にコピー
2. asap.pdeを開く
3. Verify -> Upload to I/O Board

PCプログラムを実行する
スケッチを書き込んだらasapコマンドを実行する。USBシリアルポートとスリープコマンドをオプションに指定してコマンドを実行する。


$ ./asap -d /dev/cu.usbserial-A8004IrI -s "osascript -e 'tell app \"Finder\" to sleep'"


asapコマンドのオプション
d デバイスパス。USBシリアルポートを指定する。
s スリープコマンド。Mac OSXの場合、アップルスクリプトを使ってFinderにSleepコマンドを送る。

Ads by Google

Leave a reply






管理者にだけ表示を許可する

該当の記事は見つかりませんでした。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。