[RaspberryPi] 外部IO端子コントロール #1スイッチング判定

2016年3月30日

IoT RaspberryPi テクノロジー プログラミング 学習

スイッチを使ってON/OFFの切り替わり判定ができると、どこかのスイッチが入っているかどうかの判定やら、何かのON/OFFをラズパイで取得し、WEBでPUSHしたり、確認したりできるので、かなり初歩的な処理として対応してみたいと思います。 ラズパイの設定は、以前の記事で確認してもらうとして、OSのインストール後に以下の設定を行うことで、判定が可能になります。 [RaspberryPi] 初期設定を高速で行う手順

準備するもの

当たり前ですが、ラズパイと、スイッチですが、 ラズパイはどのバージョンでも問題ありません。 スイッチは、装置が手元に無くても、配線を接触させるだけでも可能です。 とりあえず、下の写真のような感じで十分

各種設定

ラズパイのOSを起動して、以下の設定を行います。

1. スイッチの接続

図のようにGPIO3にセットします。

2. ラズパイにターミナルでログインして以下コマンドを実行

echo 3 > /sys/class/gpio/export echo "in" > /sys/class/gpio/gpio3/direction echo "high" > /sys/class/gpio/gpio3/direction ※再起動する度にこの設定が消えてしまうので、再実行を行う場合を考えて、「*.sh」ファイルに記述して、ファイル実行するのがいいと思います。

3. ターミナルで確認

watch -n 1 "cat /sys/class/gpio/gpio3/value" これで1秒毎の判定でスイッチのON-OFFが切り替わるはずです。 スイッチが「OFF」の時は「1」、「ON」の時は「0」と表示されます。

仕組みの汎用性

この仕組みを実際に利用する場合は、WEB画面にONーOFFの表示をリアルタイムに表示させる必要があるため、NodeJSでSocketIOを連動させて、行うのがベストでしょう。 もちろんPythonやC言語などで対応してもいいし、shellでそのまま使っても問題ないですが、WEBシステムと連動する事で利便性が高くなると思います。 NodeJSとの連動は後日記事にするので、そちらを参考にしてください。

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。