Web経由でRaspberry PiのGPIOを操作したい

Raspberry Pi 2を買ったので、せっかくだからIoTっぽいことをしたいと思っている。構想としては、Raspberry Piに繋いだセンサーの情報をWebブラウザから閲覧できるような感じ。


ということで、Raspberry PiをWebサーバにして、クライアントからWebブラウザを介してGPIOを操作する方法を調べてみた。

調べてみると、1番お手軽そうなのはWebIOPiというPythonのライブラリを使う方法。

WebIOPi

  • Control, debug, and use your Pi’s GPIO, sensors and converters from a web browser or any app
  • WebIOPi is the perfect Swiss-knife to make connected things
  • Developed and provided by Eric PTAK (trouch)
  • Runs on Raspberry Pi





インストールして実行すれば、Raspberry Pi上にWebサイトが立ち上がり、ブラウザ上からRaspberry PiのGPIOを簡単に操作できるようだ。

Wi-Fiでローカルエリアネットワークを構築すれば、モバイルから操作もできるわけだ。

WebブラウザからRaspberry Pi を操作する(WebIOPi 利用)

ただ、それだけだとできることが狭そうな気もするので、単純にRaspberry PiでのWebサーバの構築方法と、そこからGPIOにアクセスする方法を調べることにした。

そこで見つけたのがlighttpdという軽量なWebサーバフレームワーク。これはメモリ消費量が少なく、CPU負荷の少ない高速動作を目的に作られており、聞くところによると、Apacheの2倍近く速いらしい。Raspberry Piみたいに簡素なPCには最適だね。

ということで、Raspberry PiにlighttpdでWebサーバを構築し、GPIOを操作するインストール例を載せているページを見つけた。↓

ブラウザからGPIOを操作

ブラウザから、GPIOを操作する方法を記載しています。 RaspberryPi上にWebサーバを構築して、Webサーバにアクセスすることで、GPIOを操作することが可能になります。これにより、ブラウザからLEDを点灯したりすることができます。

そして、定期的にセンサーの値を取得して表示、あるいは記録してグラフにするならこの辺の情報かな。↓

色々遊ぶぞ。

関連記事

TorchStudio:PyTorchのための統合開発環境と...

UnityでTweenアニメーションを実装できる3種類の無料...

Unreal Engineの薄い本

機械学習手法『Random Forest』

書籍『OpenCV 3 プログラミングブック』を購入

OpenVDB:3Dボリュームデータ処理ライブラリ

法線マップを用意してCanvas上でShadingするサンプ...

Mechanizeで要認証Webサイトをスクレイピング

オープンソースの顔認識フレームワーク『OpenBR』

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『...

Pythonの自然言語処理ライブラリ『NLTK(Natura...

UnityでPoint Cloudを表示する方法

OpenGVの用語

定数

Unity ARKitプラグインサンプルのドキュメントを読む

Python.NET:Pythonと.NETを連携させるパッ...

Rerun:マルチモーダルデータの可視化アプリとSDK

Javaで作られたオープンソースの3DCGレンダラ『Sunf...

Mask R-CNN:ディープラーニングによる一般物体検出・...

OpenCVの顔検出過程を可視化した動画

Google App Engineのデプロイ失敗

オープンソースの人体モデリングツール『MakeHuman』の...

網元AMIで作ったWordpressサイトのインスタンスをt...

3Dモデルを立体視で確認できるVRアプリを作っている

第1回 3D勉強会@関東『SLAMチュートリアル大会』

ドットインストールのWordPress入門レッスン

BGSLibrary:OpenCVベースの背景差分ライブラリ

ROSの薄い本

頭蓋骨からの顔復元と進化過程の可視化

Pythonのソースコードに特化した検索エンジン『Nulle...

viser:Pythonで使える3D可視化ライブラリ

Mitsuba 3:オープンソースの研究向けレンダラ

uGUI:Unityの新しいGUI作成システム

ミニ四駆を赤外線制御したりUnityと連携したり

ミニ四駆を改造してBluetoothラジコン化する

NeuralNetwork.NET:.NETで使えるTens...

ArUco:OpenCVベースのコンパクトなARライブラリ

iPhoneアプリ開発 Xcode 5のお作法

スクラッチで既存のキャラクターを立体化したい

2D→3D復元技術で使われる用語まとめ

機械学習に役立つPythonライブラリ一覧

Caffe:読みやすくて高速なディープラーニングのフレームワ...

コメント