ブロックを積みながら(65) Node-RED、UDPパケットの送受信ノード

UDP_EC
Joseph Halfmoon

Node-REDと先っぽのマイコンの間の通信はMQTTばかり使ってきました。しかしNode-REDの「パレット」には他のNetworkプロトコルのノードも並んでいます。httpなど上位レイヤーもあれば、TCP/UDPなど下位レイヤもあります。今回は下のレベルで「投げっぱなし」で「軽い」UDPを使ってみたいと思います。

“ブロックを積みながら(65) Node-RED、UDPパケットの送受信ノード” の続きを読む

ブロックを積みながら(64) Node-RED、外部プログラムの実行ができるexecノード

execEC
Joseph Halfmoon

今回は execノード、出力が3個ある太っちょ(人のことは言えませんが)のノードです。外部プログラムを起動してその結果をとりこむことができるもの。テスト用の外部プログラムとしてはPythonのスクリプトを使用いたしました。標準出力、標準エラー出力、戻り値の3通りの方法で結果を受け取ることができます。

“ブロックを積みながら(64) Node-RED、外部プログラムの実行ができるexecノード” の続きを読む

ブロックを積みながら(63) Node-RED、流量制限ができる、delayノード

Joseph Halfmoon

今回の delay ノードは、本来到着した msg を一定時間遅延させて送り出すものです。しかしこの遅延機能を使ってメッセージの流量制限もできると。時間あたりのmsgの「流量」を決めると、それを超えるmsgはため込まれ流量制限の範囲で下流に流しだされます。フローの中のまさにダムみたいなもの?

“ブロックを積みながら(63) Node-RED、流量制限ができる、delayノード” の続きを読む

ブロックを積みながら(62) Node-RED、時間経過で引き金を引く、triggerノード

trigger
Joseph Halfmoon

今回はtriggerノードです。到来したメッセージに対して所定の遅延時間後に別なメッセージを送信することができるもの。人感センサが反応したら3分間だけ点灯するとか、所定時間内にメッセージが到来しなかった場合にタイムアウトを知らせるインターバルタイマ的な使用など、設定次第でいろいろな目的に使えそうなノードです。 “ブロックを積みながら(62) Node-RED、時間経過で引き金を引く、triggerノード” の続きを読む

ブロックを積みながら(61) Node-RED、変化の有無でフィルタするfilterノード

filterNodeEC
Joseph Halfmoon

今回はfilterノードです。filterというとついローパスフィルタとか考えてしまう年寄りですが、このノードは違います。データに関してLPFをかけたりする機能は前々回のsmoothノードが持っていました。今回のfilterノードは、条件に当てはまる msg だけを通過させたり、通過させなかったりするもの。

“ブロックを積みながら(61) Node-RED、変化の有無でフィルタするfilterノード” の続きを読む

ブロックを積みながら(60) Node-RED、乱数生成器、randomノード

randomEC
Joseph Halfmoon

前回は一種のフィルタともいえるsmoothノードでした。つい「調子」にのって別投稿にてsmoothノードのフィルタの特性を伝達関数から考察したりもしてしました。今回は乱数生成、randomノードです。乱数生成は伝達関数以上に奥深くて、そこに命を懸けている人も居るとか居ないとか。知らんけど。ここは深みにハマらぬよう「さらっと」行きたいです。

“ブロックを積みながら(60) Node-RED、乱数生成器、randomノード” の続きを読む

ブロックを積みながら(59) Node-RED、統計?信号処理? smoothノード

smoothNodeEC
Joseph Halfmoon

前回は「何もしない」けれど「書けることが多い」commentノードでした。今回は、設定できることは少ない割に奥が深そうな(あまり沼にハマりたくない)smoothノードです。苦手の統計やらデジタル信号処理(もどきですが)も登場。まあ、使ってみている内に慣れる?慣れない?

“ブロックを積みながら(59) Node-RED、統計?信号処理? smoothノード” の続きを読む

ブロックを積みながら(58) Node-RED、コメントノードって何者?

commentNodeIcon
Joseph Halfmoon

風雲急を告げているのに、ブロックを積んでいるのも何だかな~と思うのですが、この年寄りに出来ることも無いと。。。しかし、思い出すに、大昔、旧東独の半導体屋に言われた一言、「お前ら日本人はロシア人を理解できんだろ」と。正確に言えば「ロシアの半導体屋」という文脈だと思いますが。

“ブロックを積みながら(58) Node-RED、コメントノードって何者?” の続きを読む

ブロックを積みながら(57) Node-RED、別タブのStatus変更を観察してみた

ATOM_Lite_Buzzer_flowON_EC
Joseph Halfmoon

前回はエラーをキャッチして別タブに「投げ」てみましたが、今回はノード・ステータスの変更を見つけてやはり別タブに通知してみます。ノード・ステータスは今どんな状態かエディタ画面で確認できて便利ですが、そのままでフローに影響を与えるものではありません。Statusノードを使えば何かのキッカケに使えそう?

“ブロックを積みながら(57) Node-RED、別タブのStatus変更を観察してみた” の続きを読む

ブロックを積みながら(56) Node-RED、catchしてlinkしてみた

atomlite_tab_flow
Joseph Halfmoon

前回はNode-REDから「ネットにつながっているの?」とPingで問いかけました。今回はNode-RED内のあるタブで発生したエラーをキャッチして、別なタブに「飛ばして」しまう、という技?を勉強してみます。これ自体は意味ないけど、別タブのバグが見つかりエラーをFIXっと。副作用ですな。

“ブロックを積みながら(56) Node-RED、catchしてlinkしてみた” の続きを読む

ブロックを積みながら(55) Node-RED、Pingでネットワークへの接続を確認

PingFlow
Joseph Halfmoon

Node-RED側から、「先っぽ」のIoTデバイスがちゃんと繋がっているの?ということを確かめたい、と思いました。だって接続切れてるんだもん。切れた接続の復旧はまた別の話ですが、とりあえず接続の確認ならば、pingうてばいいじゃん、ということでNode-REDの ping をば使ってみました。

“ブロックを積みながら(55) Node-RED、Pingでネットワークへの接続を確認” の続きを読む

ブロックを積みながら(54) Node-RED、ATOMLiteフローにSqlite追加

ATOMLiteAfterEC
Joseph Halfmoon

トンガでの噴火の後、日本時間の夜中の「津波」警報には驚きました。巨大噴火の恐ろしさ。残念だったことがあります。気圧センサを常時動かしていたらもしかすると前兆の気圧変化波形とれていたんじゃないかと。でもATOMLiteに取り付けた気圧センサ動かしてなかったです。それにDBへの記録機能なし。これはイケない。

“ブロックを積みながら(54) Node-RED、ATOMLiteフローにSqlite追加” の続きを読む

ブロックを積みながら(53) Node-RED、csvノードでcsvファイルの変換

readCsvFlow
Joseph Halfmoon

前回は xml(パーサ)ノードを使ってxmlファイルから所望の部分を抜き出せることを確認しました。今回はcsv(パーサ)ノードを使ってcsvから切り出してみます。ネットワーク上でやり取りする場合はXMLやJSONが普通じゃないかと思います。が、伝統のCSV、お手軽なのでローカルには普通に蔓延っている感じもしないでもない

“ブロックを積みながら(53) Node-RED、csvノードでcsvファイルの変換” の続きを読む

ブロックを積みながら(52) Node-RED、xmlノードでxmlファイルの変換

Flow
Joseph Halfmoon

前回 http requestノードを使ってWebサイトにアクセスできることを確かめました。今回はWebサイトから取得したxmlファイルを処理するために xml(パーサ)ノードを使ってみます。なるべくホンマ物のデータを処理したかったのですが、外部のサイトにご迷惑かけぬよう、一端ダウンロードしたファイルをローカルに保存して処理しています。

“ブロックを積みながら(52) Node-RED、xmlノードでxmlファイルの変換” の続きを読む