
安価に手に入る赤外線リモコン受信モジュールを使えば一撃なものを、わざわざ「生波形」から処理しようとしています。前回は包絡線検波(もどき)の自前関数を作製。でもそれ以前に変化する信号の2値化処理も行いたかったです。今回はそのための自前「もどき」関数を作製してみます。「もどき」ばかりで大丈夫か?
デバイス作る人>>デバイス使う人>>デバイスおたく
第107回で赤外線リモコン波形の解読を行いましたが、レシーバモジュールが出力する「検波」済の波形に対してでした。簡単にマイコンでも出来る解読。しかし別件シリーズで「生波形」を取得しつつあります。この「生波形」を検波してレシーバモジュールがやっている仕事相当のことを計算して~と考えました。包絡線検波すればよろしいの?
“手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成” の続きを読む
このところビット列、バイト列の生成、復元などを練習しており、前回は巡回冗長検査(CRC)でした。今回はHDLC(High-Level Data Link Control)などで使われるゼロビット・インサーションとリムーバルを練習してみたいと思います。「原理」実装は動いた、けれども分量が多いとダメだなこれは。どうする?
前々回、赤外線リモコンの波形(NECフォーマット向け)を生成するScilab関数を作製。その一方、別シリーズにて実際にNECフォーマットのIR信号を出力しているらしいリモコンの実機波形をCSVファイルに取得しました。今回は取得した実機波形から01の生データを解読、前回作成の比較関数で期待値と比較してみます。 “手習ひデジタル信号処理(107) Scilab、赤外線リモコン実機波形の読み取りと解読” の続きを読む
前回気づいたことが一つ。テスト用のシーケンス(疑似乱数系列)を生成するのに、prbs関数出力をnrz関数に通してシンボル長を踏まえて「信号」らしく成形しました。しかしNRZ以外の符号化用関数が見当たりません。NRZ以外は使わんだろ~ってこと?今回はNRZI信号を生成する自前関数を作成。他も以下同文で作れると、ホントか?
Scilabのcomm_tbxにはお世話になっているのだけれど、いろいろ問題もあり「代替自前関数」を作ると前回書きました。今回はアイ・ダイアグラム(アイ・パターン)のプロット関数を作成してみました。ぶっちゃけオシロスコープでデジタル信号をシンボルレートの倍数でトリガかけるようなやり方でプロットできそうだし。イイのか?
“手習ひデジタル信号処理(101) Scilab、plot_eyeの代替自前関数、五月蠅い” の続きを読む
前回はFM変調でしたが、今回はBPSK変調です。お世話になっておりますScilabのcomm_tbxですが、当方手元の環境ではシバシバ不具合あり信号処理素人はその度に難渋しております。やはり自前関数を作成していくのが良いかと思い定めました。その割に使えるものは使おうという依存性は抜けませぬ。
Scilab上のFM復調はTokyoFMの実データから音声に復調できたのでOK。しかしFM変調はイケません。過去回で自前のFSK変調関数なども作ってみたのですが「定義通り」に周波数を操作すると「位相がプッツン」な波形でちょっと納得がいきません。ましてやアナログ信号のFM変調はダメね。今回は再挑戦。FM変調出来たのか?
“手習ひデジタル信号処理(99) Scilab、位相連続のFM変調方法を実験” の続きを読む
過去回のRTLSDRからデータ輸入では復調するためにダウンサンプリングに取り組み?ました。今回はアップサンプリングに使えるScilab関数を勉強してみます。実験ターゲットに使うのは前回解析プロットにかけた音声データです。アップサンプリング(インターポレーション)した結果、どうなってしまうのか?意外なような当然なような。
“手習ひデジタル信号処理(98) Scilab、アップサンプリングする方法3つのつもりが。” の続きを読む