前回はエラーをキャッチして別タブに「投げ」てみましたが、今回はノード・ステータスの変更を見つけてやはり別タブに通知してみます。ノード・ステータスは今どんな状態かエディタ画面で確認できて便利ですが、そのままでフローに影響を与えるものではありません。Statusノードを使えば何かのキッカケに使えそう?
ブロックを積みながら(56) Node-RED、catchしてlinkしてみた
前回はNode-REDから「ネットにつながっているの?」とPingで問いかけました。今回はNode-RED内のあるタブで発生したエラーをキャッチして、別なタブに「飛ばして」しまう、という技?を勉強してみます。これ自体は意味ないけど、別タブのバグが見つかりエラーをFIXっと。副作用ですな。
ブロックを積みながら(55) Node-RED、Pingでネットワークへの接続を確認
Node-RED側から、「先っぽ」のIoTデバイスがちゃんと繋がっているの?ということを確かめたい、と思いました。だって接続切れてるんだもん。切れた接続の復旧はまた別の話ですが、とりあえず接続の確認ならば、pingうてばいいじゃん、ということでNode-REDの ping をば使ってみました。
ブロックを積みながら(54) Node-RED、ATOMLiteフローにSqlite追加
トンガでの噴火の後、日本時間の夜中の「津波」警報には驚きました。巨大噴火の恐ろしさ。残念だったことがあります。気圧センサを常時動かしていたらもしかすると前兆の気圧変化波形とれていたんじゃないかと。でもATOMLiteに取り付けた気圧センサ動かしてなかったです。それにDBへの記録機能なし。これはイケない。
ブロックを積みながら(53) Node-RED、csvノードでcsvファイルの変換
前回は xml(パーサ)ノードを使ってxmlファイルから所望の部分を抜き出せることを確認しました。今回はcsv(パーサ)ノードを使ってcsvから切り出してみます。ネットワーク上でやり取りする場合はXMLやJSONが普通じゃないかと思います。が、伝統のCSV、お手軽なのでローカルには普通に蔓延っている感じもしないでもない
ブロックを積みながら(52) Node-RED、xmlノードでxmlファイルの変換
前回 http requestノードを使ってWebサイトにアクセスできることを確かめました。今回はWebサイトから取得したxmlファイルを処理するために xml(パーサ)ノードを使ってみます。なるべくホンマ物のデータを処理したかったのですが、外部のサイトにご迷惑かけぬよう、一端ダウンロードしたファイルをローカルに保存して処理しています。
ブロックを積みながら(51) Node-RED、http requestノードでpost
今までNode-REDと「先っぽ」のマイコンの間の通信はMQTTのみでした。別件でhttpでアクセスできるマイコンボードが登場、ESP-EYEであります。ESP-EYEもMQTTは出来る筈ですが、現状、httpdが走っています。この機会にNode-REDからhttpつかって、get/postしてみることに。行き当たりばったり。
ブロックを積みながら(50) Node-RED、html(パース)ノードで要素の抽出
前回まででファイルへの入出力ができるようになったので、今回からはパレットのパーサの部?にあるノードを使ってみたいと思います。最初は、htmlノードです。いろいろ出来そうなノードであるのですが、今回はシンプルにタイトルを抽出した文字列の配列を取り出してみたいと思います。
ブロックを積みながら(49) Node-RED、fileノードでファイルへ書き込み
前回は file inノードを使ってバイナリファイル(.wav)を読み出し、audio outノードで音声再生してみました。今回は file ノードを使ってファイルへの書き込みを行ってみます。バイナリでもテキストでも可能ですが、今回はタイムスタンプ付きのテキストを追記モードで書き込んでみます。
ブロックを積みながら(48) Node-RED、play audioノードにwavファイル
前回はDashboardの audio outノードを使って、文字列から「言葉をしゃべる」TTS機能を使ってみました。今回は、NodeREDエディタ上で音声を鳴らす play audioノードに wav形式の「バイナリバッファ」を食わせて音が鳴ることを確かめたいと思います。バイナリファイルからの読み出しには file inノードを使用。NodeREDサーバー機上のローカルファイルシステムから読み出します。
ブロックを積みながら(47) Node-RED、Dashboard、audio out
このところDashboard用のノードを勉強しております。今回は「Dashboardの」audio outノードです(似たものがDashboardの外にもあり。)Dashboard用と言いつつ、Dashboardの表面には見えませぬ。しかし「結構使える」気がします(個人の感想です。)まあ、ちょっと使い方難しいところもあるけれども。
ブロックを積みながら(46) Node-RED、Dashboard、gaugeノード
前回は、1つのノードの中で一度に多数の表示と入力が可能な formノードでした。今回は、単機能なのだけれども4通りの「顔」があり、色の変化で注意を引くこともできる gauge ノードです。今まで何の気なしにお世話になっていましたが、上手く使うと異常値などをアピールするにはもってこいなDashboardノードじゃないかと思います。
ブロックを積みながら(45) Node-RED、Dashboard、formノード
前々回、Node-REDダッシュボードのTemplateノードを使ってみました。表示ができるだけでなくボタンを配置して入力にも使える優れものでした。今回は同じく入出力兼用のformノードを使ってみます。ユーザーとのインタフェースを作るにはバッチリ?なノードです。
ブロックを積みながら(44) Node-RED、Dashboard、Chartノード
Node-REDのDashboardのノード群には、常々お世話になっているのでありますが、よくわからないまま「成り行き」で使ってしまっています。今回はグラフを描くときに使うchartノードについて、使い方を確かめて行きたいと思います。ついでにRandomノードについてもチャッカリとテスト。