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

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

色々遊ぶぞ。


スポンサーリンク

関連記事

ドットインストールのWordPress入門レッスン
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 電飾のための工作 その1
モータードライバ
SVM (Support Vector Machine)
OpenMVS:Multi-View Stereoによる3次元復元ライブラリ
クラスの基本
ZBrushで作った3Dモデルを立体視で確認できるVRアプリを作る
HD画質の無駄遣い
OpenMVSのサンプルを動かしてみる
OpenCV 3.3.0-RCでsfmモジュールをビルド
UnityでARKit2.0
Kinect for Windows V2のプレオーダー開始
BlenderでPhotogrammetryできるアドオン
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 身体の電飾
ROSの薄い本
続・ディープラーニングの資料
Math.NET Numerics:Unityで使える数値計算ライブラリ
MPFB2:Blenderの人体モデリングアドオン
ZBrushのZScript入門
世界のトレンドをリアルタイムに把握するサイト 『Googttrer』
Raspberry Piでセンサーの常時稼働を検討する
CGレンダラ研究開発のためのフレームワーク『Lightmetrica (ライトメトリカ)』
Model View Controller
OpenCVで動画の手ぶれ補正
konashiのサンプルコードを動かしてみた
geometry3Sharp:Unity C#で使えるポリゴン操作ライブラリ
Raspberry PiでIoTごっこ
OANDAのfxTrade API
NumSharp:C#で使えるNumPyライクな数値計算ライブラリ
OpenVDB:3Dボリュームデータ処理ライブラリ
PythonのHTML・XMLパーサー『BeautifulSoup』
3分の動画でプログラミングを学習できるサイト『ドットインストール』
今年もSSII
ブログのデザイン変えました
AR (Augmented Reality)とDR (Diminished Reality)
WinSCP
TensorSpace.js:ニューラルネットワークの構造を可視化するフレームワーク
ブログをGoogle App EngineからAmazon EC2へ移行
Twitter APIのPythonラッパー『python-twitter』
ディープラーニングに対応したPythonの機械学習ライブラリ『Pylearn2』
WebGL開発に関する情報が充実してきている
Unityで強化学習できる『Unity ML-Agents』

コメント