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

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

色々遊ぶぞ。

関連記事

株式会社ヘキサドライブの研究室ページ

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

ZBrushのZScript入門

PyMC:Pythonのベイズ統計ライブラリ

OpenMesh:オープンソースの3Dメッシュデータライブラ...

ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...

機械学習手法『Random Forest』

機械学習に役立つPythonライブラリ一覧

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

プログラミングスキルとは何か?

書籍『3次元コンピュータビジョン計算ハンドブック』を購入

C++始めようと思うんだ

konashiのサンプルコードを動かしてみた

HD画質の無駄遣い

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

ROSの薄い本

3D復元技術の情報リンク集

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

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

Math Inspector:科学計算向けビジュアルプログラ...

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

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

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

UnityでOpenCVを使うには?

Iridescence:プロトタイピング向け軽量3D可視化ラ...

Raspberry PiのGPIOを操作するPythonライ...

オープンソースの顔認識フレームワーク『OpenBR』

フィクションに登場するUIデザインのまとめサイト

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

NumSharp:C#で使えるNumPyライクな数値計算ライ...

書籍『ROSプログラミング』

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

CycleGAN:ドメイン関係を学習した画像変換

法線マップを用意してCanvas上でShadingするサンプ...

Kornia:微分可能なコンピュータービジョンライブラリ

Raspberry Pi

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

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

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

OpenGVの用語

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

OpenGV:画像からカメラの3次元位置・姿勢を推定するライ...

コメント