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

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

色々遊ぶぞ。


スポンサーリンク

関連記事

VCG Library:C++のポリゴン操作ライブラリ
Netron:機械学習モデルを可視化するツール
Unity Scriptコーディング→Unreal Engine Scriptコーディング
Kubric:機械学習用アノテーション付き動画生成パイプライン
C++の抽象クラス
UnityでTweenアニメーションを実装できる3種類の無料Asset
サンプルコードにも間違いはある?
trimesh:PythonでポリゴンMeshを扱うライブラリ
Mayaのプラグイン開発
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 電飾のための工作 その4
UnityからROSを利用できる『ROS#』
MPFB2:Blenderの人体モデリングアドオン
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 仕切り直し
AfterEffectsプラグイン開発
粘土をこねるようなスカルプトモデリング
書籍『仕事ではじめる機械学習』を読みました
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 身体の電飾
機械学習に役立つPythonライブラリ一覧
AR (Augmented Reality)とDR (Diminished Reality)
書籍『ゼロから作るDeep Learning』で自分なりに学ぶ
Mask R-CNN:ディープラーニングによる一般物体検出・Instance Segmentatio...
OpenFace:Deep Neural Networkによる顔の個人識別フレームワーク
C++ 標準テンプレートライブラリ (STL)
Theia:オープンソースのStructure from Motionライブラリ
Math.NET Numerics:Unityで使える数値計算ライブラリ
KelpNet:C#で使える可読性重視のディープラーニングライブラリ
UnityのMonoBehaviourクラスをシングルトン化する
ヒーローに変身なりきりアーケードゲーム『ナレルンダー』
OpenCV 3.1のsfmモジュールを試す
WordPressのテーマを自作する
OpenCVでカメラ画像から自己位置認識 (Visual Odometry)
チャットツール用bot開発フレームワーク『Hubot』
Kaolin:3Dディープラーニング用のPyTorchライブラリ
ブログのデザイン変えました
ドラマ『ファーストクラス』のモーショングラフィックス
OpenCVで平均顔を作るチュートリアル
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 頭部パーツの加工
iOSデバイスと接続して連携するガジェットの開発方法
R-CNN (Regions with CNN features):ディープラーニングによる一般物体...
ツールの補助で効率的に研究論文を読む
BlenderのPython環境にPyTorchをインストールする
ManimML:機械学習の概念を視覚的に説明するためのライブラリ

コメント