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を点灯したりすることができます。

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

色々遊ぶぞ。


スポンサーリンク

関連記事

書籍『ゼロから作るDeep Learning』で自分なりに学ぶ
Python.NET:Pythonと.NETを連携させるパッケージ
インターフェイスは世界を規定する
konashiのサンプルコードを動かしてみた
UnityでPoint Cloudを表示する方法
OpenCV
複数画像から3次元形状を再構築するライブラリ『Multi-View Environment』
Russian3DScannerのトポロジー転送ツール『WrapX』
書籍『ROSプログラミング』
スクラッチで既存のキャラクターを立体化したい
UnityプロジェクトをGitHubで管理する
頭蓋骨からの顔復元と進化過程の可視化
PythonのHTML・XMLパーサー『BeautifulSoup』
法線マップを用意してCanvas上でShadingするサンプル
Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』
Webサイトのワイヤーフレームが作成できるオンラインツール
pythonもかじってみようかと
ヒーローに変身なりきりアーケードゲーム『ナレルンダー』
WordPressの表示を高速化する
OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる
TensorSpace.js:ニューラルネットワークの構造を可視化するフレームワーク
人体モデリングできるBlenderアドオン『ManuelBastioniLAB』
網元AMIで作ったWordpressサイトのインスタンスをt1microからt2microへ移行した
AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する
libigl:軽量なジオメトリ処理ライブラリ
OpenFace:Deep Neural Networkによる顔の個人識別フレームワーク
openMVG:複数視点画像から3次元形状を復元するライブラリ
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 発煙ギミックを検討する
SONYの自律型エンタテインメントロボット『aibo』
Raspberry Piでセンサーの常時稼働を検討する
PGGAN:段階的に解像度を上げて学習を進めるGAN
C++の抽象クラス
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 電飾のための工作 その3
PythonでBlenderのAdd-on開発
書籍『3次元コンピュータビジョン計算ハンドブック』を購入
Pythonのソースコードに特化した検索エンジン『Nullege』
AfterEffectsプラグイン開発
ブログの復旧が難航してた話
Unite 2014の動画
WebGL開発に関する情報が充実してきている
Google App Engine上のWordPressでAmazonJSを利用する
チャットツール用bot開発フレームワーク『Hubot』

コメント