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

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

色々遊ぶぞ。

関連記事

Google Colaboratoryで遊ぶ準備

C++ 標準テンプレートライブラリ (STL)

Python拡張モジュールのWindows用インストーラー配...

Connected Papers:関連研究をグラフで視覚的に...

Arduinoで作るダンボーみたいなロボット『ピッコロボ』

オープンソースの取引プラットフォーム

DensePose:画像中の人物表面のUV座標を推定する

Faceshiftで表情をキャプチャしてBlender上でM...

Deep Learningとその他の機械学習手法の性能比較

OpenGVのライブラリ構成

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

Accord.NET Framework:C#で使える機械学...

ポリゴンジオメトリ処理ライブラリ『pmp-library (...

OpenCV3.3.0でsfmモジュールのビルドに成功!

Google App Engine上のWordPressでA...

PyDataTokyo主催のDeep Learning勉強会

Unity MonoBehaviourクラスのオーバーライド...

WordPressのテーマを自作する

VCG Library:C++のポリゴン操作ライブラリ

ヒーローに変身なりきりアーケードゲーム『ナレルンダー』

Point Cloud Utils:Pythonで3D点群・...

Blender 2.8がついに正式リリース!

KelpNet:C#で使える可読性重視のディープラーニングラ...

機械学習手法『Random Forest』

海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer...

OpenCV 3.1とopencv_contribモジュール...

Kinect for Windows V2のプレオーダー開始

Google App EngineでWordPress

動的なメモリの扱い

IronPythonを使ってUnity上でPythonのコー...

MythTV:Linuxでテレビの視聴・録画ができるオープン...

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

無料の英文チェックWebサービス『PaperRater』

オープンソースのロボットアプリケーションフレームワーク『RO...

OpenAR:OpenCVベースのマーカーARライブラリ

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

R-CNN (Regions with CNN featur...

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...

Unreal Engineの薄い本

書籍『データビジュアライゼーションのデザインパターン20』読...

仮想関数

Boost オープンソースライブラリ

コメント