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

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

色々遊ぶぞ。


スポンサーリンク

関連記事

海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 頭部パーツの加工
FCN (Fully Convolutional Network):ディープラーニングによるSema...
ROSでガンダムを動かす
iPhone x ロボットハッカソン~RomoのiPhone用SDKで目覚ましアプリを作る~
AR (Augmented Reality)とDR (Diminished Reality)
PythonでMayaのShapeノードプラグインを作る
HerokuでMEAN stack
WordPressのテーマを自作する
組み込み向けのWindows OS 『Windows Embedded』
Unreal Engineの薄い本
OpenCLに対応したオープンソースの物理ベースレンダラ『LuxRender(ルクスレンダー)』
OpenCVで動画の手ぶれ補正
PyTorch3D:3Dコンピュータービジョンライブラリ
openMVG:複数視点画像から3次元形状を復元するライブラリ
OpenCV 3.3.0-RCでsfmモジュールをビルド
海洋堂 20cmシリーズ『デスゴジ』 クリアーオレンジVer. 仕切り直し
ポイントクラウドコンソーシアム
インターフェイスは世界を規定する
オープンソースのStructure from Motionライブラリ『Theia』
Deep Learningとその他の機械学習手法の性能比較
Mechanizeで要認証Webサイトをスクレイピング
OpenCVで顔のランドマークを検出する『Facemark API』
AndroidもopenGLも初心者さ (でもJavaは知ってるよ)
仮想関数
Accord.NET Framework:C#で使える機械学習ライブラリ
複数画像から3次元形状を再構築するライブラリ『Multi-View Environment』
シフトカーを改造してラジコン化する人達
Russian3DScannerのトポロジー転送ツール『WrapX』
Mitsuba 2:オープンソースの物理ベースレンダラ
網元AMIで作ったWordpressサイトのインスタンスをt1microからt2microへ移行した
スクレイピング
python-twitterで自分のお気に入りを取得する
OpenCV3.3.0でsfmモジュールのビルドに成功!
Super Resolution:OpenCVの超解像処理モジュール
DensePose:画像中の人物表面のUV座標を推定する
UnityでOpenCVを使うには?
ZBrushのZScript入門
UnityのMonoBehaviourクラスをシングルトン化する
iOSで使えるJetpac社の物体認識SDK『DeepBelief』
Boost オープンソースライブラリ
Raspberry Piでカーナビを自作できるキット『iCarus』
今年もSSII

コメント