Raspberry Pi2で外部から水槽のLEDを点灯する その2
前回でひとまずさくらVPS上のPHPから自宅水槽のLED照明をONにできるようになったので肉付けしていく
subscribe(受信側)のシェルスクリプト
既に実行されてる場合はkillしてからもう一度起動する
vi /usr/local/bin/sango_subscribe #!/bin/sh #実行ファイルからpid取得 exec_file='sango_subscribe.rb' pid=`ps x | grep -v grep | grep "$exec_file" | awk '{ print $1 }'` #echo $pid #既に起動していた場合はkillする if [ -n "${pid}" ] then kill -9 $pid fi #バックグラウンドで実行 nohup `ruby /スクリプトの場所/$exec_file` > /ログの場所/sango.log 2> /ログの場所/sango.error.log < /dev/null &
起動時に実行するよう登録して再起動
sudo vi /etc/rc.local su - 実行ユーザー -c /usr/local/bin/sango_subscribe sudo reboot
再起動後、Sangoのダッシュボードとターミナルで確認
pgrep sango_subscribe 2568 ←pidが出る sango_subscribe ←再実行して確認 pgrep sango_subscribe 3062 ←前回と違うpidになっている事を確認
切断を検知して自動再接続がCOOLなんだけど面倒なので1時間に1回再起動する意識低いマン
crontab -e 3 * * * * /usr/local/bin/sango_subscribe > /dev/null 2>&1
次はLED点灯用のシェルスクリプト
点灯したら20秒後に消灯する ただしLEDが既に点灯していた場合は消灯しない
cronで叩いてる点灯用シェルをコピって作る
sudo cp /usr/local/bin/led-on /usr/local/bin/led-20sec sudo vi /usr/local/bin/led-20sec
この辺見ながら修正する
#!/usr/bin/python import RPi.GPIO as GPIO import time import sys GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) GPIO.setup(23, GPIO.OUT) if GPIO.input(23): sys.exit() else: GPIO.output(23,GPIO.HIGH) time.sleep(20) GPIO.cleanup()
if文の片方が要らない気もするけどpythonの構文がイマイチよく解ってないのでスルーする意識低いマン
点灯時、消灯時で叩いてみて確認
消灯時
sudo led-off sudo led-20sec
点灯時
sudo led-on sudo led-20sec
消えない!OK!!
これでパイ側はOKなので次回はWeb上からスイッチが押せるようにする予定
関連記事
-
Raspberry Pi2で水槽のLEDを自動点灯/消灯する
先日Raspberry Pi2を購入し、自宅からのストリーミング配信する為あれこ …
-
Sangoのメッセージ数について聞いてみた
メッセージ数が足りない! 金魚水槽のページやトップページからライトを点灯するのに …
-
プラ舟はじめました
プラ船買っちゃった 金魚にだだハマりなGW ついにプラ船買ってガレージに設置して …
-
エサやりボタンを撤去しました
寒い! 寒くなってきましね。 水温を10度を切り始めたので、プラ舟ページに配置し …
-
Raspberry Pi2で外部から水槽のLEDを点灯する
外部からネット越しに金魚水槽のLEDを点灯させたい WebIOPiというライブラ …
-
穂竜水槽を引っ越しました
穂竜さん入院 金魚水槽のページで配信していた45cm水槽の穂竜ですが、 どうやら …
-
金魚が病気の為、隔離しました
配信中の金魚水槽ですが、金魚が病気で1匹死んでしまったので隔離しました メイン水 …
-
ベランダ水槽の配信ページを追加しました
配信ページ追加 先日ベランダに引っ越した穂竜たちの配信ページを追加しました。 ベ …
-
RaspberryPi2を使ったリモートのエサやりボタン復活しました
春がきた 春になり水温が上がってきたのでプラ舟ページのエサやりボタンを復活させま …
-
100均のタッパーで投げ込み式ろ過器を自作する
ジャンボタライにろ過器を追加したい ベランダ水槽のジャンボタライなのですが、60 …