You are here

BlynkにおけるデータのPULLとPUSH

BlynkでIoTデバイス用のスケッチを記述する際には、アプリケーションがPULL機能で十分なのか、PUSH機能を必要としているのかを確認する必要がある。

Blynkのサンプルを見ると、PULL,PUSHに関連するものが色々と提供されている。
Blynkドキュメントでは以下を参照
http://docs.blynk.cc/#blynk-main-operations

PULL
スマートフォンアプリからのデータのPULLに対するIoTデバイスの応答法の定義
BLYNK_WRITE(VX)
BLYNK_READ(VX)
スマートフォンアプリからPULL要求があった場合のみIoTデバイスがデータを送ったり受け取ったりする
スマートフォンアプリが実行されていなかったり、接続が着れていると、IoTデバイスは何もしない
(代表的な状況では、センサー等での取得値が、継続的にBlynkサーバーに通知されない)

PUSH
IoTデバイスからアプリケーション(直接的にはBlynkサーバー)へのデータの主体的な通知
Blynk.virtualWrite(VX, value);
タイマーによる定期的なデータの通知や、値の変化などのイベントなどによるデータの通知を行う
スマートフォンアプリが実行されていなくても、Blynkサーバーにはデータが蓄積されていき、スマートフォンアプリが起動された時点で[History Graph]などで過去のデータも含めて参照可能になる

IoTデバイスをスマートフォンによって操作するホームオートメーション機器の端末として利用するという形態では、PULLで十分かもしれないが、IoTデバイスで何らかの対象を継続的に監視するという用途では、PUSH機能を利用することが必要。

ただ、PUSH機能を利用しても、Blynkサーバーで送られてきたデータを対象にして何らかの処理を行うという仕組みが用意されていない?ようなので、本格的なIoTサービスの構築には利用できないように思える。

Blynkが力を発揮するのは、スマートフォンを操作機器とするホームオートメーション(もしくは個人的な)IoTシステムの構築だと考えられる。

開発ソフト: 
チップファミリー: 
MCUチップ: 
技術: