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

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

色々遊ぶぞ。

関連記事

まだ続くブログの不調

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

OpenCV 3.1から追加されたSfMモジュール

Unityからkonashiをコントロールする

Quartus II

OpenCV

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

ZBrushのZScript入門

OpenCVの超解像(SuperResolution)モジュ...

Math.NET Numerics:Unityで使える数値計...

Unreal Engineの薄い本

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

3Dグラフィックスの入門書

Dlib:C++の機械学習ライブラリ

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

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

Unityで強化学習できる『Unity ML-Agents』

PyTorch3D:3Dコンピュータービジョンライブラリ

OpenMVS:Multi-View Stereoによる3次...

ManimML:機械学習の概念を視覚的に説明するためのライブ...

Pylearn2:ディープラーニングに対応したPythonの...

Amazon EC2ログイン用の秘密鍵を無くした場合の対処方...

手を動かしながら学ぶデータマイニング

HerokuでMEAN stack

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

Unity Scriptコーディング→Unreal Engi...

Kubric:機械学習用アノテーション付き動画生成パイプライ...

Mayaのプラグイン開発

PythonでBlenderのAdd-on開発

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

Human Generator:Blenderの人体生成アド...

Google App Engineのデプロイ失敗

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

OpenCVで顔のモーフィングを実装する

WinSCP

TensorSpace.js:ニューラルネットワークの構造を...

Mitsuba 2:オープンソースの物理ベースレンダラ

TeleSculptor:空撮動画からPhotogramme...

書籍『ゼロから作るDeep Learning』で自分なりに学...

SONYの自律型エンタテインメントロボット『aibo』

SONY製のニューラルネットワークライブラリ『NNabla』

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

コメント