手習ひデジタル信号処理(55) SDR、三上先生ツールで全体動作を納得?

SDR_AM_BLKDiagA
Joseph Halfmoon

前回まででAMラジオ受信のSDR、ひととおり「部品」を手習ひできた感じです。しかし木を見て森を見ず。全体像をどう把握したものか。しかしお見通しでした。全体像が理解しやすくなるPC上のツールを三上先生がご用意くださっとります。三上先生ツールを動かしたら一目瞭然だわ、AMラジオの受信。今回はツールを動かしただけ。
“手習ひデジタル信号処理(55) SDR、三上先生ツールで全体動作を納得?” の続きを読む

手習ひデジタル信号処理(54) SDR、ダウン・サンプラ後段用のFIRフィルタ

downSamplingLowPassBlockDiag
Joseph Halfmoon

前回はCICフィルタを使ったダウンサンプラでした。しかしこれ一発でダウンサンプリングが終わるわけではなかったです。もう一回ダウンサンプリングやってようやく目標のサンプリング周波数まで落ちるんだと。2段目のダウンサンプラではFIRフィルタを使っているのですが、この特性が前段のCICと「補完的」なんだとか。 “手習ひデジタル信号処理(54) SDR、ダウン・サンプラ後段用のFIRフィルタ” の続きを読む

手習ひデジタル信号処理(53) SDR、CICフィルタを使うダウン・サンプリング

CIC_N_1
Joseph Halfmoon

前回は直交信号発生器でした。今回メインはダウン・サンプラです。しかし、ここで前々回「やった」CICフィルタが再登場します。CICフィルタを積分器部分と櫛型フィルタ部分に分け、その中間にダウンサンプラを組み込むことで櫛型フィルタ部分を一挙に簡単化するという大技を繰り出すためです。この定番を最初に考えついた人は誰なのかな?
“手習ひデジタル信号処理(53) SDR、CICフィルタを使うダウン・サンプリング” の続きを読む

手習ひデジタル信号処理(52) SDR、直交信号発生器、linux上のg++で動作確認

594kHzWave
Joseph Halfmoon

前回はCICフィルタの特性だったですが、今回はNCO(Numerically-Controlled Oscillator)、数値制御発振器です。搬送波周波数のSIN波とCOS波を同時生成できればよい、と。今回も朧げな記憶の奥底に最近やったような感じがします。同じことをやっても面白くないのでLinux上のgccで実習。 “手習ひデジタル信号処理(52) SDR、直交信号発生器、linux上のg++で動作確認” の続きを読む

手習ひデジタル信号処理(51) SDR、「CICフィルタ再び」Scilabでgainplot

CIC_SDR_GAIN
Joseph Halfmoon

前回はアンダーサンプリングでした。今回はCICフィルタです。途中までやりかけて気づきました。僅か2か月ほど前にCICフィルタやってました。年寄りの忘却力は強力。既に頭の中から抜けてました。前回とは目的は違いますがCICはCIC、でも微妙に記号など違っていたので「チョイ直し」でお茶を濁しますです。すみません。 “手習ひデジタル信号処理(51) SDR、「CICフィルタ再び」Scilabでgainplot” の続きを読む

手習ひデジタル信号処理(50) SDR、アンダーサンプリング、ナイキスト周波数より高い信号

UnderSamplingEC
Joseph Halfmoon

前回、三上先生のサンプルプログラムで、甲子園中継が受信できたと喜びました。しかし1点疑問あり。サンプリング周波数は900kHz(ナイキスト周波数は450kHz)なのに、受信したNHK第1放送(東京)は594kHzです。なぜ受信できるの?ここで登場するのがアンダーサンプリングとBPF(バンド・パスフィルタ)です。 “手習ひデジタル信号処理(50) SDR、アンダーサンプリング、ナイキスト周波数より高い信号” の続きを読む

手習ひデジタル信号処理(49) SDRで高校野球、甲子園中継(NHK第1)受信OKよ

SDR_DUT
Joseph Halfmoon

前回までに、Arm Cortex-M4コアのSTM32F446マイコンでの「ダイレクト・サンプリングSDR実験」用フロントエンド回路が出来上がりました。これからSDRのお勉強に入りますが、初回は早速AMラジオを受信してみます。なんたって三上先生のサンプルプログラムのバイナリがあるので、書き込めば動く筈。

“手習ひデジタル信号処理(49) SDRで高校野球、甲子園中継(NHK第1)受信OKよ” の続きを読む

手習ひデジタル信号処理(48) 続SDRの準備、RFフロントエンド部組み立て、振幅特性

NJU77701
Joseph Halfmoon

前回は、ダイレクト・サンプリングSDRの準備として、全然RFでない最後の音声出力部分、HT82V739使ったスピーカアンプ回路を組み立てて動作確認しました。今回はRFに向き合う高周波アンプとバンドパスフィルタを組み立てます。まあAMラジオが対象なので526.5kHzから1620kHzですが、ともかくRFフロントエンド。
“手習ひデジタル信号処理(48) 続SDRの準備、RFフロントエンド部組み立て、振幅特性” の続きを読む

手習ひデジタル信号処理(47) 新シリーズSDRの準備はスピーカアンプ回路の組み立てから

HT82V739
Joseph Halfmoon

前回で工学社『「Armマイコン」プログラムで学ぶデジタル信号処理』を読み終わりました(読んでも直ぐに忘却力を発揮する年寄りです。)「その先」ということでCQ出版社『Armマイコンでつくるダイレクト・サンプリングSDR』を読み始めようという魂胆です。同じ三上先生の御本、そしてNucleo-F446ボードで実験できるもの。

“手習ひデジタル信号処理(47) 新シリーズSDRの準備はスピーカアンプ回路の組み立てから” の続きを読む

手習ひデジタル信号処理(46) FFTによるFIRフィルタ、外からみたら結果は同じ

BodeGain
Joseph Halfmoon

今回はFFT使ったFIRフィルタです。以前に「普通に時間領域」でFIRフィルタしていたもの。今回は、入力信号もフィルタ係数もFFTをかけて周波数領域で乗算してから、逆FFTで時間領域の信号に戻すのだ、と。無限の長さの入出力信号を小分けにするためには重複保持法使うんだとか。しかしオンラインコンパイラの件気になるのデス。

“手習ひデジタル信号処理(46) FFTによるFIRフィルタ、外からみたら結果は同じ” の続きを読む

手習ひデジタル信号処理(45) 適応線スペクトル強調器、実験用入力信号フィルタしたら見違えた

ResultTIMyPer
Joseph Halfmoon

前回前々回と適応線スペクトル強調器のサンプルプログラムを動かしていて「波形が不安定」とか「ステップ・サイズ・パラメータも安定せんな~」と気にかかっておったのです。その原因として心に引っかかっていたのが入力波形です。ノイズを「盛る」べく制限波に乱数を重ねているのですが、強調器のナイキスト周波数越えのノイズまで山盛り。
“手習ひデジタル信号処理(45) 適応線スペクトル強調器、実験用入力信号フィルタしたら見違えた” の続きを読む

手習ひデジタル信号処理(44) 適応線スペクトル強調器、学習同定法+Leaky LMS版とな

LeakyLMS_FFT_YES
Joseph Halfmoon

前回、適応フィルタの応用とてALE(Adaptive Line Enhancer)、適応線スペクトル強調器なるものを動かしてみました。まあサンプルプログラムを動かしてみるだけなら簡単っと。今回はさらに「学習同定法」というものが登場し、信号の大きさに応じてパラメータを変化させるのだ、と。ううむ、どんどんムツカシクなっている気がするのだけれど。。。やるしかない。

“手習ひデジタル信号処理(44) 適応線スペクトル強調器、学習同定法+Leaky LMS版とな” の続きを読む

手習ひデジタル信号処理(43) 適応線スペクトル強調器(ALE)、LMSアルゴリズム版とな

ALE_ON
Joseph Halfmoon

ALEというと、私の心の中では40年以上前から不動のAddress Latch Enableであります。しかし今回は、Adaptive Line Enhancer、適応線スペクトル強調器なんであります。適応フィルタの応用であります。信号処理素人の私にとっては適応と聞いただけで恐れいってしまうのですが。大丈夫か。

“手習ひデジタル信号処理(43) 適応線スペクトル強調器(ALE)、LMSアルゴリズム版とな” の続きを読む

手習ひデジタル信号処理(42) アップサンプリング処理をOctaveしてみる

F233HzResampling
Joseph Halfmoon

前回まではダウンサンプリング処理でした。今回アップサンプリングに入るのですが、新たな実習用のサンプルプログラムはありません。毎度お世話になっているDA変換による出力処理のところで4倍アップサンプリングしてきたからです。仕方がないので珍しくOctaveを取り出してきて4倍のアップサンプリング処理をやってお茶を濁した、と。

“手習ひデジタル信号処理(42) アップサンプリング処理をOctaveしてみる” の続きを読む