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 オープンソースライブラリ
コメント