前回は第2のFIRフィルタ設計関数wfirでFIRフィルタを作製してみました。GUI(wfir_gui)はイマイチ(個人の感想です)だけれども「フツーに便利」な感じっす。今回は第3のFIRフィルタ設計関数ffilt関数を使ってみます。こいつが一番シンプル?な関数なんだけれども秘密?、謎?も多い(個人の感想です。)
手習ひデジタル信号処理(120) Scilab、wfirでFIRフィルタを設計
前回、周波数標本法というアルゴリズムでFIRフィルタを設計できるfsfirlin関数の出力でフィルタできることを確かめました。今回はウインドウィング法で線形位相のFIRフィルタを設計できるwfir関数を使ってみます。この関数は「推し」みたい。Scilabには珍しくGUIも完備してます。手放しで喜べないのだけれども。
手習ひデジタル信号処理(119) Scilab、fsfirlinのLPFでフィルタしてみる
前回、FIRフィルタを作ろうとしたら、いくつも設計用の関数が並立?していることに気づきました。その中でfsfirlin関数というものの設計例通りに「手習ひ」しバンドパスフィルタらしきものを生成しました。しかし、実際に信号をフィルタしてません。信号処理素人の老人は実際の波形に適用してみないと納得いかんね。
“手習ひデジタル信号処理(119) Scilab、fsfirlinのLPFでフィルタしてみる” の続きを読む
手習ひデジタル信号処理(118) Scilab、FIRフィルタの設計関数、どれをどうする?
前回までポンコツなベースバンドフィルタ例のアナログ・フィルタの場合を計算するためにIIRフィルタにまで立ち入って大分遠回りをしました。今回からは「ポンコツでない」例を計算するためにFIRフィルタを使ってみたいと思います。しかし信号処理素人の老人はFIRフィルタの設計などできる気がしません。どうしたらよいの?
“手習ひデジタル信号処理(118) Scilab、FIRフィルタの設計関数、どれをどうする?” の続きを読む
手習ひデジタル信号処理(117) Scilab、Analog LPFでベースバンドフィルタ
ASK変調するベースバンド信号をフィルタリングして変調後のサイドローブを落とす実験のポンコツ例としてRC(抵抗とコンデンサで作るフィルタ。レイズド・コサインではないです)フィルタを計算しようとして前回、前々回とかなり回り道をしました。ようやく計算できるようになったので今回はポンコツなベースバンドフィルタしてみます。
“手習ひデジタル信号処理(117) Scilab、Analog LPFでベースバンドフィルタ” の続きを読む
手習ひデジタル信号処理(116) Scilab、Analog LPF等価なIIRフィルタ作成
前回はサイドローブを制限しないのマズいだろ~という中、ポンコツな例ということでRCフィルタを計算することに。それがScilab上でどうやてRCフィルタ(LPF)等価な特性を計算?という疑問になり、何とか計算。しかし実際にデジタル数列をフィルタ処理するにはデジタルフィルタ化せんといかんと。流れ流れて今回はiir関数っす。。
手習ひデジタル信号処理(115) Scilab、RCフィルタ(LPF)をエミュレート?
前回はASK変調を「深掘り」するとBPSK変調になる件?を計算。変調できるじゃんと思っていた無線素人の老人デス。しかし西村先生の御本を読んでいてホンマの無線ならサイドローブを抑えなければ使い物にならんだろ~とのご指摘。想定の赤外線通信ならありで押し通せる、とは思ったのですが、これもまた手習ひと。 “手習ひデジタル信号処理(115) Scilab、RCフィルタ(LPF)をエミュレート?” の続きを読む
手習ひデジタル信号処理(114) Scilab、自前ASK変調関数でBPSK変調?
元より信号処理も無線も素人なので常識がありませぬ。今回、あるご本を読んでいて、ASK変調で100%変調を超えた過変調200%とすると、なんとBPSK変調となることに気づきました。ASK変調自前関数とは別にBPSK変調関数を作った私の努力は水の泡?でもま、気づいたからには「手習ひ」してみるのであります。いつもの泥縄。 “手習ひデジタル信号処理(114) Scilab、自前ASK変調関数でBPSK変調?” の続きを読む
手習ひデジタル信号処理(113) Scilab、クロックリカバリ?ASK信号を復調
信号処理素人の老人が勝手に自前関数など作っているのは他でもありません、手元のScilabにインストールしたツールボックスcomm_tbxが思うように動作してくれない、というその一点のため。個別に追及していくと何とか動いたりもするので初期設定の何かがオカシイ?しかしま、拙い自前関数を作ることも手習ひであると。ホントか?
手習ひデジタル信号処理(112) Scilab、自前関数の更新、2件
とっとと先に進めるべしとて、前回、前々回で作成の自前関数2つを組み合わせて次のテストパターンを作ろうとしてハマリました。自前関数の相性とても悪かったです。単独では動いている振りをしているのに、組み合わせると意外なところでエラーを起こしてくれます。トホホ。なんとかFIXできた感じがあるので今回はそれだけ。まだ怪しい? “手習ひデジタル信号処理(112) Scilab、自前関数の更新、2件” の続きを読む
手習ひデジタル信号処理(111) Scilab、2値化の自前関数作成
安価に手に入る赤外線リモコン受信モジュールを使えば一撃なものを、わざわざ「生波形」から処理しようとしています。前回は包絡線検波(もどき)の自前関数を作製。でもそれ以前に変化する信号の2値化処理も行いたかったです。今回はそのための自前「もどき」関数を作製してみます。「もどき」ばかりで大丈夫か?
手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成
第107回で赤外線リモコン波形の解読を行いましたが、レシーバモジュールが出力する「検波」済の波形に対してでした。簡単にマイコンでも出来る解読。しかし別件シリーズで「生波形」を取得しつつあります。この「生波形」を検波してレシーバモジュールがやっている仕事相当のことを計算して~と考えました。包絡線検波すればよろしいの?
“手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成” の続きを読む
手習ひデジタル信号処理(109) Scilab、ゼロ・ビット・インサート、リムーブ
このところビット列、バイト列の生成、復元などを練習しており、前回は巡回冗長検査(CRC)でした。今回はHDLC(High-Level Data Link Control)などで使われるゼロビット・インサーションとリムーバルを練習してみたいと思います。「原理」実装は動いた、けれども分量が多いとダメだなこれは。どうする?
手習ひデジタル信号処理(108) Scilab、CRC8の計算、Pythonから移植
ここ数回ビット列の生成、復元などコチョコチョしたことをやっており。その中でCRC(Cyclic Redundancy Check、巡回冗長検査)の計算をせにゃならんことがあり。CRC計算といえば多項式の割り算デス。そういえばScilabは多項式の計算出来たな~そいつを使ってなんとからなんのか?ダメか?