手習ひデジタル信号処理(24)残響生成器その3、マイクとスピーカつけて残響音を聞いてみる

Reverb_DUT
Joseph Halfmoon

前回アナログ・マイクロフォンを追加、ようやく残響生成器を実際に動かしてみることができるようになりました。スピーカは100円ショップのものを第20回でもつかったスピーカアンプで駆動してみました。確かに残響しています。マイクを叩くと長い地下道でコツコツ歩いているような効果音?つくれました(末尾に音声添付。)

“手習ひデジタル信号処理(24)残響生成器その3、マイクとスピーカつけて残響音を聞いてみる” の続きを読む

忘却の微分方程式(36) ヤバそうな雰囲気、離散数学。MathematicaとMaxima

permutationsEC
Joseph Halfmoon

今回は深みに入らぬように気をつけていたつもりでしたが、Maxima様からきついエラーメッセージいただきました。”game over” とな(詳細は冒頭のアイキャッチ画像ご覧ください。)調子こいているんじゃねえ、という感じでしょうか。やっていることは簡単そうですが、気をつけないとヤバいです。

“忘却の微分方程式(36) ヤバそうな雰囲気、離散数学。MathematicaとMaxima” の続きを読む

お手軽ツールで今更学ぶアナログ(79) LTspiceで学ぶ制御理論、tipsの宝庫?

bPower
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」は前回につづき2020年9月号の勉強2回目です。LTspiceを使って「制御理論を学ぶの回」なのですが、LTspice素人の私メにとっては、LTspiceのTIPSの宝庫かと。制御理論は身についた気がしないけれど、LTspiceは少し上手になった?

“お手軽ツールで今更学ぶアナログ(79) LTspiceで学ぶ制御理論、tipsの宝庫?” の続きを読む

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

ATOM_Lite_Buzzer_flowON_EC
Joseph Halfmoon

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

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

モダンOSのお砂場(37) Mbed OS6、PWMを使う。STM32

PWM_DUT_EC
Joseph Halfmoon

今回はPWM(Pulse Width Modulation)出力をMbed OSのAPIを使って動作させてみたいと思います。前回、外部端子割り込みが使えるようになったので、外部端子割り込みでPWM出力を開始/停止する機能付きとしてみました。簡潔で分かり易いAPIのMbed OSです。サンプルプログラムの作成もお気楽。

“モダンOSのお砂場(37) Mbed OS6、PWMを使う。STM32” の続きを読む

データのお砂場(17) R言語、LifeCycleSavings、各国の貯蓄データとな?

srPOP15
Joseph Halfmoon

今回はデータを眺めて愕然といたしました。「日本も世界も変わってしまった」のだと。今回のデータセットは1960年代の世界50か国の貯蓄率のデータです。貯蓄率を人口分布や可処分所得から説明する、という仮説を検証するためのものなのです。しかしこの年寄りが驚いたのはその人口の割合です。若いです、日本も世界も。

“データのお砂場(17) R言語、LifeCycleSavings、各国の貯蓄データとな?” の続きを読む

ぐだぐだ低レベルプログラミング(51) RISC-V、浮動小数積和演算、4種あるノダ

maixFlash
Joseph Halfmoon

今回は前回と以下同文でラクチンなどと呟いていたら、前回コードにしょうもないバグ発見。天網恢恢疎にして漏らさず、違うか。お詫びして前回分をさきほど修正させていただきました。今回は前回一種しかやらなかった積和演算命令、実は全部で4種もあったという話であります。

“ぐだぐだ低レベルプログラミング(51) RISC-V、浮動小数積和演算、4種あるノダ” の続きを読む

Pico三昧(10) Pico C/C++SDKでinterpその4、クランプモード

interpClampVScode
Joseph Halfmoon

ラズパイPicoのinterpユニットを使ってみる4回目は、Clampモードです。前回Blendモードを使ってみましたが、これは各コアに2個づつあるinterpのうち「0」のみの機能でした。じゃ「1」の方は何かないの?というとClampモードを持っているのです。上下の境界を超える値を「クランプ」してくれる機能です。

“Pico三昧(10) Pico C/C++SDKでinterpその4、クランプモード” の続きを読む

ソフトな忘却力(18) 偶数個のときのmedian、浮動小数のgtest

Octave
Joseph Halfmoon

前回はcsv読み込み用のライブラリの使い方をgtestで確認しました。今回は読み込んだデータの処理です。ふと偶数個のときのmedianってどう計算するんだっけという疑問をもったのです。medianの計算をgtestしようとして今度は、gtestで浮動小数の計算のテストってどうするんだっけ、と。疑問は尽きず。

“ソフトな忘却力(18) 偶数個のときのmedian、浮動小数のgtest” の続きを読む

忘却の微分方程式(35) 行列と線形代数への入り口、MathematicaとMaxima

matrixEC
Joseph Halfmoon

今回は線形代数、といっても入り口だけです。行列の記述の方法と演算子の書き方くらいまで。1回やそこらで線形代数が終わる筈はないです。これまた基本のキなのでMathematicaとMaximaに線形代数に関する同様な機能が無い筈ないのです。しかし両者のお家流、似ているようで違ってました。

“忘却の微分方程式(35) 行列と線形代数への入り口、MathematicaとMaxima” の続きを読む

やっつけな日常(2) Scilab+Xcosで、伝達関数からシミュレーション

WaveForm
Joseph Halfmoon

別記事にてLTspiceで制御理論の回あり、まだ途中ですがLTspiceでも制御理論の勉強できるのは分かりましたです。でも制御理論「向き」のツールあるんじゃないかと。。。今回は、これまた別件の信号処理でお世話になっているScilabとその上のブロックダイアグラム描いてシミュレーションできるXcosで同じことをやってみます。

“やっつけな日常(2) Scilab+Xcosで、伝達関数からシミュレーション” の続きを読む

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

atomlite_tab_flow
Joseph Halfmoon

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

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

MicroPython的午睡(61) M5ATOMLite、ランニングテスト用改良?改悪?

RunningTestDUT
Joseph Halfmoon

前回WatchDogタイマを使ってみたのは、M5ATOMLite用の「環境測定&MQTT報告」スクリプトを長時間走らせているとハングする現象の対策のためでした。しかしWatchDogで復旧を試みるまえに原因に当たりをつけておきたいです。そこで「ダイイングメッセージ」が残るようにスクリプトを改変。

“MicroPython的午睡(61) M5ATOMLite、ランニングテスト用改良?改悪?” の続きを読む

データのお砂場(16) R言語、LakeHuron、ヒューロン湖の水位とな?

LakeHuronMovingAVGPlot
Joseph Halfmoon

前回に続き、今回も時系列データです。北米大陸の巨大な湖、ヒューロン湖の水位のデータ。前回4半期毎の季節変動をトレンドと分離できたので、今回もその手か、と思ったのですが違いました。1年1点のデータであるので季節変動などはありません。長い目でみた長期のトレンドを探れということみたい。

“データのお砂場(16) R言語、LakeHuron、ヒューロン湖の水位とな?” の続きを読む