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

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

色々遊ぶぞ。

関連記事

ROSの薄い本

UnityでTweenアニメーションを実装できる3種類の無料Asset

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

cvui:OpenCVのための軽量GUIライブラリ

3DCG Meetup #4に行ってきた

Javaで作られたオープンソースの3DCGレンダラ『Sunflow』

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

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

Math Inspector:科学計算向けビジュアルプログラミングツール

UnrealCLR:Unreal Engineで.NET Coreを利用できるプラグイン

UnityのTransformクラスについて調べてみた

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

ZScript

Polyscope:3Dデータ操作用GUIライブラリ

WordPressのサーバ引っ越し方法を考える

iPhone・iPod touchで動作する知育ロボット『ROMO』

スクラッチで既存のキャラクターを立体化したい

Raspberry PiでIoTごっこ

iOSで使えるJetpac社の物体認識SDK『DeepBelief』

マルコフ連鎖モンテカルロ法

UnityでShaderの入力パラメータとして行列を渡す

OpenCVで平均顔を作るチュートリアル

openMVGをWindows10 Visual Studio 2015環境でビルドする

Google Colaboratoryで遊ぶ準備

ブログをGoogle App EngineからAmazon EC2へ移行

東京オリンピックと案内表示

ドットインストールのWordPress入門レッスン

Arduinoで作るダンボーみたいなロボット『ピッコロボ』

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

Gource:バージョン管理の履歴を可視化するツール

OpenMVSのサンプルを動かしてみる

OpenFace:Deep Neural Networkによる顔の個人識別フレームワーク

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

リニアアクチュエータ

Raspberry Pi 2のGPIOピン配置

Raspberry Piでカーナビを自作できるキット『iCarus』

WordPressプラグインの作り方

Google App Engine上のWordPressでFlickrの画像を貼る

ブログのデザイン変えました

NeuralNetwork.NET:.NETで使えるTensorFlowライクなニューラルネットワー...

Amazon Web ServicesでWordPress

OpenCVでiPhone6sのカメラをキャリブレーションする

コメント