ブロックを積みながら(120) Node-RED、自前ノードに層別集計機能追加

TESTFLOW
Joseph Halfmoon

前回は自前ノード data-check に「流れの中で」平均や分散、標準偏差を求めるためのWelford算法を導入。今回は「流れをぶった切って」再初期化するときに、そこまで到来したデータの層別(ランク付け)結果を送出する機能を追加してみたいと思います。「ブロックを」といいつつズルズルJavaScriptが長くなってる。
“ブロックを積みながら(120) Node-RED、自前ノードに層別集計機能追加” の続きを読む

手習ひデジタル信号処理(87) Scilab、前回の続きでNCOした信号をLPF

LPFC0
Joseph Halfmoon

外乱も何もない「理想的な」BPSK変調信号をミキサにかけた後LPFという段で、前回はLPF生成関数に足をすくわれました。トホホのお約束か。まあなんとか乗り越えた(ホントか?)ように見えるので、今回は気を取り直してBPSK変調された信号にNCO(もどき)の信号を乗じたものをLPFしてみたいと思います。計算するだけなら只。
“手習ひデジタル信号処理(87) Scilab、前回の続きでNCOした信号をLPF” の続きを読む

GoにいればGoに従え(21) TinyGo、乱数発生器よみとり、micro:bit v2

mb20rng_results
Joseph Halfmoon

このところBBC micro:bit v2のオンボードペリフェラルを端から見てまわっています。今回はオンボードというよりオンチップペリフェラルです。nRF52833搭載のハードウエア乱数発生器です。Goにはソフトウエアの乱数発生パッケージがありますが、多分ハードウエアで発生した方がより良いのではないかと。知らんけど。 “GoにいればGoに従え(21) TinyGo、乱数発生器よみとり、micro:bit v2” の続きを読む

ぐだぐだ低レベルプログラミング(118)ARM64(AArach64)Floatのロード#1

fldrimmEC
Joseph Halfmoon

ようやく浮動小数の「スカラー演算」命令をあらかた舐めたので次はSIMD命令と思いました。しかし「浮動小数およびSIMDの」ロード・ストア命令の練習を挟んでおきたいと思います。ロード、ストア無にはSIMDの威力も半減以下と。ロード、ストア命令自体は以前やった整数のロード、ストアの以下同文。それでもいろいろありすぎA64。
“ぐだぐだ低レベルプログラミング(118)ARM64(AArach64)Floatのロード#1” の続きを読む

MicroPython的午睡(107) ESP32版、RMT、どこの端子が使えるの?

ESP32_RMT_BB
Joseph Halfmoon

ESP32シリーズ用のMicroPythonに固有の機能の多くがesp32という名のモジュールに格納されています。その中に周辺の制御用にユニークな機能が一つ、RMTです。もともと赤外線リモコン用の送受信のために搭載されているハード機能を制御するためのクラスです。面白そうなのだけれども、だいたいどのピンが使えるの? “MicroPython的午睡(107) ESP32版、RMT、どこの端子が使えるの?” の続きを読む

データのお砂場(84) R言語、treering、約8000年間の年輪幅データとな

treering_rawdata_plot
Joseph Halfmoon

今回のデータはいままで見てきたサンプルデータの中で一番長大なデータかもしれないです。約8000年間の年輪の幅のデータです。カリフォルニアはシェラネバダ山脈の山中に生えている Bristlecone Pine という長寿命の木について調査した結果です。データは長大、でも幅だけ。これだけ見たらばどうしたら良いのという感じ。
“データのお砂場(84) R言語、treering、約8000年間の年輪幅データとな” の続きを読む

Rubyと一緒(9) GR-CITRUS、DHT11、温湿度読み取りOK?、危ういタイミング

DHT11_RubyDUTschematic
Joseph Halfmoon

特価品(見切り品?)のGR-CITRUSボード(ルネサスRX631搭載)で組み込みRuby(mruby)してます。前回は定番の温湿度センサDHT11の読み取りプログラムを作成しましたが、湿度の読み取りまでで止まってました。今回は温度も読み取れるようにしてみました。成り行きで現物合わせのタイミング制御、危ないっす。

“Rubyと一緒(9) GR-CITRUS、DHT11、温湿度読み取りOK?、危ういタイミング” の続きを読む

忘却の微分方程式(98) 反復練習61、ラグランジュの未定乗数法、Maxima

y3px3_plot3d
Joseph Halfmoon

数学不得意の私メはラグランジュ大先生のお名前を聞くだけで恐れ入って逃げたくなりますです。しかし、今回は名高い「ラグランジュの未定乗数法」です。条件付き極値問題とな。まあ実際の計算はMaximaにお任せなので淡々と「未定乗数法」すれば良い、といいつつやっぱりメンドイ。しつこく陰関数も登場。 “忘却の微分方程式(98) 反復練習61、ラグランジュの未定乗数法、Maxima” の続きを読む

オプション沼(18) gccの-Waddressオプション、警告オプションその1

warning
Joseph Halfmoon

「とりあえず」警告は全部載せの -Wall オプション使っておけと言われます。しかし、ここはあえてバラバラに警告オプションをひとつひとつ丁寧に?味わっていきたいと思います。それにしても-Wallに含まれる警告オプションだけでいくつあるんだ?それに警告の裏側には新たな世界が広がってるみたいな兆候も。大丈夫か。
“オプション沼(18) gccの-Waddressオプション、警告オプションその1” の続きを読む

ブロックを積みながら(119) Node-RED、自前ノードにWelford算法追加

VerifyResults
Joseph Halfmoon

前回の自前ノード data-checkは、次々と流れてくるpayloadに載っている数値データの最大、最小、上限、下限をチェックできるものでした。今回は、平均、分散、標準偏差などを計算できるように機能拡張してみます。次々と流れてくるデータの分散を求めるのはどうしたらよいの?そういえばアルゴリズムがあったよな。 “ブロックを積みながら(119) Node-RED、自前ノードにWelford算法追加” の続きを読む

GoにいればGoに従え(20) TinyGo、MICの値を読み取る、micro:bit v2

goMIC_DUT2
Joseph Halfmoon

前回はBBC micro:bit v2搭載のスピーカ(というよりブザーですが)を鳴らしてみました。今回はオンボード搭載のマイクロフォンの瞬時値を読み取ってみます。音声波形として読むためには正確なサンプリング周期で連続読み取りが必要ですが、今回のはある瞬間の1点の出力を読んでいるだけ。音声には程遠いです。 “GoにいればGoに従え(20) TinyGo、MICの値を読み取る、micro:bit v2” の続きを読む

手習ひデジタル信号処理(86) Scilab、GUIつかってフィルタ作ろうとしてハマる

WFIR_GUI_
Joseph Halfmoon

前回、自前版NCOとて単なるSIN波、COS波を生成し、変調された信号に乗じてI/Q分離の第一段階をば実施。次はLPF、ということで今回はLPFを作成することにいたしました。そういえばScilabにはGUIを使ってLPFを生成する関数があったんじゃないだろうか?GUIならお楽ね。と思って使ってみてハマリましたです。
“手習ひデジタル信号処理(86) Scilab、GUIつかってフィルタ作ろうとしてハマる” の続きを読む

MicroPython的午睡(106) ESP32版、DHT11を接続してみる

DHT11_ESP32_DUT
Joseph Halfmoon

別シリーズのRubyちゃん(RX631上のmruby)にラズパイPico用に自前作成のフルMicroPythonのDHT11インタフェース関数を移植しましたが苦戦中です。今回はESP32版のMicroPythonでDHT11接続を行ってみます。ESP32版にはDHT用のモジュール装備されとります。これを使えば一撃と。
“MicroPython的午睡(106) ESP32版、DHT11を接続してみる” の続きを読む

ぐだぐだ低レベルプログラミング(117)ARM64(AArach64)FCSEL

fsel_result
Joseph Halfmoon

前回FCMP命令を練習したので「そこへの道が開いた」のがFCSEL命令であります。比較結果(条件フラグ)に基づいて「ソース1」をデスティネーションに書き込むのか「ソース2」を書き込むのか実行するもの。C言語の3項演算子みたいなものですが、肝心の条件比較は先行する命令、FCMPかCMP(整数比較)などにお任せです。
“ぐだぐだ低レベルプログラミング(117)ARM64(AArach64)FCSEL” の続きを読む