LoginSignup
7
6

More than 5 years have passed since last update.

ハードウェアとの連携

Posted at

Node-RED Advent Calendar 2017 8日目の記事です。
この記事を書いた私は組み込みソフトのエンジニアで、Webサービスやスクリプト言語には詳しくありません。もし間違ったことを書いていた場合はご指摘ください。

ハードウェアとNode-REDの連携

Web上またはローカルマシン上で動作するNode-REDと実物のハードウェアを連携させるには、さまざまな方法があると思いますが、ここではMilkcocoaを使った例を紹介します。
Milkcocoaはリアルタイムにデータのやり取りができるBaaSですが、Node-REDにもノードがありますし、今回題材としたMbedにも私が作ったライブラリがあります。
リアルタイム且つインターネット経由でデータのやり取りができるので、最適だと思いました。
(自社のサービスなので、推してるわけではありませんw)

作ったもの

10月末に社内でハロウィンパーティーがあったので、ドラキュラに仮装したマントにLEDテープを取り付け、Twitterのリツイート数に応じて点灯していくというものを作りました。

image.png

設定したハッシュタグ付きのツイートをすれば点灯するLEDがどんどん増えていく様になっています。
反応を楽しみにツイートしてもらえば、イベントの情報拡散にもなります。

仕組み

ハードウェア側

使ったのはmbed LPC1768と私が設計して、ランニングエレクトロニクスで製造販売されているJKsoft Blue mbed Boardです。
image.png

JKsoft Blue mbed BoardはテープLEDの駆動回路とバッテリー用の昇圧回路等などが搭載されているので、用途にちょうど合いました。(自分が設計したものなので、合わせてるんですがw)
有線LANのインターフェースしかないので、有線LAN-無線LANコンバータを使ってます。そのUSBの電源はJKsoft Blue mbed BoardのUSBコネクタから取れるようになっています。
ハード側のコードは要望があれば公開しますが、Milkcocoaのライブラリを使ってMilkcocoaの通知があったら変数をカウントアップして、その値でJKsoft Blue mbed BoardのライブラリLEDを点灯する数を決めているだけです。

Node-RED側

こちらもシンプルです。次のフローになります。
image.png
Twitterノードをハッシュタグ付きツイートがトリガになるように設定して、Milkcocoaノードに入れられるJSONデータに変換してるだけです。
Twitter側の情報はトリガだけしかいらないので、JSONのデータは固定の値を作るようにFunctionノードに数行書いてあるだけです。

最後に

冒頭にも書きましたが、Webサービスやスクリプト言語には詳しくありません。
しかし、Node-REDを使うと繋ぐだけで簡単に作ることができました。

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6