手習ひデジタル信号処理(115) Scilab、RCフィルタ(LPF)をエミュレート?

butNplot
Joseph Halfmoon

前回はASK変調を「深掘り」するとBPSK変調になる件?を計算。変調できるじゃんと思っていた無線素人の老人デス。しかし西村先生の御本を読んでいてホンマの無線ならサイドローブを抑えなければ使い物にならんだろ~とのご指摘。想定の赤外線通信ならありで押し通せる、とは思ったのですが、これもまた手習ひと。 “手習ひデジタル信号処理(115) Scilab、RCフィルタ(LPF)をエミュレート?” の続きを読む

手習ひデジタル信号処理(114) Scilab、自前ASK変調関数でBPSK変調?

ask_bpsk
Joseph Halfmoon

元より信号処理も無線も素人なので常識がありませぬ。今回、あるご本を読んでいて、ASK変調で100%変調を超えた過変調200%とすると、なんとBPSK変調となることに気づきました。ASK変調自前関数とは別にBPSK変調関数を作った私の努力は水の泡?でもま、気づいたからには「手習ひ」してみるのであります。いつもの泥縄。 “手習ひデジタル信号処理(114) Scilab、自前ASK変調関数でBPSK変調?” の続きを読む

手習ひデジタル信号処理(113) Scilab、クロックリカバリ?ASK信号を復調

demodulatedSignal
Joseph Halfmoon

信号処理素人の老人が勝手に自前関数など作っているのは他でもありません、手元のScilabにインストールしたツールボックスcomm_tbxが思うように動作してくれない、というその一点のため。個別に追及していくと何とか動いたりもするので初期設定の何かがオカシイ?しかしま、拙い自前関数を作ることも手習ひであると。ホントか?

“手習ひデジタル信号処理(113) Scilab、クロックリカバリ?ASK信号を復調” の続きを読む

手習ひデジタル信号処理(112) Scilab、自前関数の更新、2件

updateResults
Joseph Halfmoon

とっとと先に進めるべしとて、前回前々回で作成の自前関数2つを組み合わせて次のテストパターンを作ろうとしてハマリました。自前関数の相性とても悪かったです。単独では動いている振りをしているのに、組み合わせると意外なところでエラーを起こしてくれます。トホホ。なんとかFIXできた感じがあるので今回はそれだけ。まだ怪しい? “手習ひデジタル信号処理(112) Scilab、自前関数の更新、2件” の続きを読む

手習ひデジタル信号処理(111) Scilab、2値化の自前関数作成

binwaveEC
Joseph Halfmoon

安価に手に入る赤外線リモコン受信モジュールを使えば一撃なものを、わざわざ「生波形」から処理しようとしています。前回は包絡線検波(もどき)の自前関数を作製。でもそれ以前に変化する信号の2値化処理も行いたかったです。今回はそのための自前「もどき」関数を作製してみます。「もどき」ばかりで大丈夫か?

“手習ひデジタル信号処理(111) Scilab、2値化の自前関数作成” の続きを読む

手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成

envelopPLOT1
Joseph Halfmoon

第107回で赤外線リモコン波形の解読を行いましたが、レシーバモジュールが出力する「検波」済の波形に対してでした。簡単にマイコンでも出来る解読。しかし別件シリーズで「生波形」を取得しつつあります。この「生波形」を検波してレシーバモジュールがやっている仕事相当のことを計算して~と考えました。包絡線検波すればよろしいの?
“手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成” の続きを読む

手習ひデジタル信号処理(109) Scilab、ゼロ・ビット・インサート、リムーブ

zeroBitInsertionEC
Joseph Halfmoon

このところビット列、バイト列の生成、復元などを練習しており、前回は巡回冗長検査(CRC)でした。今回はHDLC(High-Level Data Link Control)などで使われるゼロビット・インサーションとリムーバルを練習してみたいと思います。「原理」実装は動いた、けれども分量が多いとダメだなこれは。どうする?

“手習ひデジタル信号処理(109) Scilab、ゼロ・ビット・インサート、リムーブ” の続きを読む

手習ひデジタル信号処理(108) Scilab、CRC8の計算、Pythonから移植

scilab_crc8
Joseph Halfmoon

ここ数回ビット列の生成、復元などコチョコチョしたことをやっており。その中でCRC(Cyclic Redundancy Check、巡回冗長検査)の計算をせにゃならんことがあり。CRC計算といえば多項式の割り算デス。そういえばScilabは多項式の計算出来たな~そいつを使ってなんとからなんのか?ダメか?

“手習ひデジタル信号処理(108) Scilab、CRC8の計算、Pythonから移植” の続きを読む

手習ひデジタル信号処理(107) Scilab、赤外線リモコン実機波形の読み取りと解読

rawData
Joseph Halfmoon

前々回、赤外線リモコンの波形(NECフォーマット向け)を生成するScilab関数を作製。その一方、別シリーズにて実際にNECフォーマットのIR信号を出力しているらしいリモコンの実機波形をCSVファイルに取得しました。今回は取得した実機波形から01の生データを解読、前回作成の比較関数で期待値と比較してみます。 “手習ひデジタル信号処理(107) Scilab、赤外線リモコン実機波形の読み取りと解読” の続きを読む

手習ひデジタル信号処理(106) Scilab、cmp_bits()の代替自前関数

Error_cmpbits
Joseph Halfmoon

このところ「バイナリシーケンス」の操作に関する低レベルな関数を作製したりしてきておるのですが、ちょっと困ったことがあります。comm_tbx内のバイナリシーケンスの比較(ビットエラーの検出)をするための関数cmp_bits()がエラーで落ちます。今回はこの回避の仕方および「より低レベルな」代替関数作成。低レベル指向。

“手習ひデジタル信号処理(106) Scilab、cmp_bits()の代替自前関数” の続きを読む

手習ひデジタル信号処理(105) Scilab、comm_tbx、赤外線リモコンの波形

irPulses0
Joseph Halfmoon

ここ数回、NRZとかNRZIとか「バイナリシーケンス」の操作を行ってきました。通常はこのバイナリシーケンスを変調・復調して搬送波に載せたり取り出したりするのがメンドクセーわけです。しかしそこを簡単に済ませている奴を思い出しました。赤外線リモコンのあれね。今回はScilab上で赤外線リモコンのバイナリシーケンスを作製してみます。

“手習ひデジタル信号処理(105) Scilab、comm_tbx、赤外線リモコンの波形” の続きを読む

手習ひデジタル信号処理(104) Scilab、comm_tbx、NRZIからバイナリ復元

NRZI2BINARY
Joseph Halfmoon

Scilabのcomm_tbxにはバイナリシーケンスをNRZ信号化する関数はあれども他の符号化関数がないです。そこで前回、自前NRZI関数を作成。しかし生成した信号から元のバイナリシーケンスに戻す逆方向の関数も欲しいです。動作確認のためなんだけれども。ついでにNRZ信号をバイナリに戻す関数も作成。どちらもテスト用っす。

“手習ひデジタル信号処理(104) Scilab、comm_tbx、NRZIからバイナリ復元” の続きを読む

手習ひデジタル信号処理(103) Scilab、comm_tbx、NRZはあるNRZIはない

NRZI_plot
Joseph Halfmoon

前回気づいたことが一つ。テスト用のシーケンス(疑似乱数系列)を生成するのに、prbs関数出力をnrz関数に通してシンボル長を踏まえて「信号」らしく成形しました。しかしNRZ以外の符号化用関数が見当たりません。NRZ以外は使わんだろ~ってこと?今回はNRZI信号を生成する自前関数を作成。他も以下同文で作れると、ホントか?

“手習ひデジタル信号処理(103) Scilab、comm_tbx、NRZはあるNRZIはない” の続きを読む

手習ひデジタル信号処理(102) Scilab、シンボル(疑似乱数系列)生成用関数のおさらい

plot_xN01
Joseph Halfmoon

Scilabのcomm_tbx(コミュニケーション・ツール・ボックス)にはいつもお世話になっておりますが、諸般の問題もあり「代替自前関数」を作ることを含めて何をどこまで使えるのか、勉強をかねておさらいしておる最中でございます。今回はテスト用にシーケンス(疑似乱数)を生成する関数についてです。急がば回れ、ホントか?

“手習ひデジタル信号処理(102) Scilab、シンボル(疑似乱数系列)生成用関数のおさらい” の続きを読む