前回気づいたことが一つ。テスト用のシーケンス(疑似乱数系列)を生成するのに、prbs関数出力をnrz関数に通してシンボル長を踏まえて「信号」らしく成形しました。しかしNRZ以外の符号化用関数が見当たりません。NRZ以外は使わんだろ~ってこと?今回はNRZI信号を生成する自前関数を作成。他も以下同文で作れると、ホントか?
手習ひデジタル信号処理(102) Scilab、シンボル(疑似乱数系列)生成用関数のおさらい
Scilabのcomm_tbx(コミュニケーション・ツール・ボックス)にはいつもお世話になっておりますが、諸般の問題もあり「代替自前関数」を作ることを含めて何をどこまで使えるのか、勉強をかねておさらいしておる最中でございます。今回はテスト用にシーケンス(疑似乱数)を生成する関数についてです。急がば回れ、ホントか?
手習ひデジタル信号処理(101) Scilab、plot_eyeの代替自前関数、五月蠅い
Scilabのcomm_tbxにはお世話になっているのだけれど、いろいろ問題もあり「代替自前関数」を作ると前回書きました。今回はアイ・ダイアグラム(アイ・パターン)のプロット関数を作成してみました。ぶっちゃけオシロスコープでデジタル信号をシンボルレートの倍数でトリガかけるようなやり方でプロットできそうだし。イイのか?
“手習ひデジタル信号処理(101) Scilab、plot_eyeの代替自前関数、五月蠅い” の続きを読む
手習ひデジタル信号処理(100) Scilab、comm_tbx代替自前関数の計画?
前回はFM変調でしたが、今回はBPSK変調です。お世話になっておりますScilabのcomm_tbxですが、当方手元の環境ではシバシバ不具合あり信号処理素人はその度に難渋しております。やはり自前関数を作成していくのが良いかと思い定めました。その割に使えるものは使おうという依存性は抜けませぬ。
手習ひデジタル信号処理(99) Scilab、位相連続のFM変調方法を実験
Scilab上のFM復調はTokyoFMの実データから音声に復調できたのでOK。しかしFM変調はイケません。過去回で自前のFSK変調関数なども作ってみたのですが「定義通り」に周波数を操作すると「位相がプッツン」な波形でちょっと納得がいきません。ましてやアナログ信号のFM変調はダメね。今回は再挑戦。FM変調出来たのか?
“手習ひデジタル信号処理(99) Scilab、位相連続のFM変調方法を実験” の続きを読む
手習ひデジタル信号処理(98) Scilab、アップサンプリングする方法3つのつもりが。
過去回のRTLSDRからデータ輸入では復調するためにダウンサンプリングに取り組み?ました。今回はアップサンプリングに使えるScilab関数を勉強してみます。実験ターゲットに使うのは前回解析プロットにかけた音声データです。アップサンプリング(インターポレーション)した結果、どうなってしまうのか?意外なような当然なような。
“手習ひデジタル信号処理(98) Scilab、アップサンプリングする方法3つのつもりが。” の続きを読む
手習ひデジタル信号処理(97) Scilab、音声データの入力と解析プロット
前回、音声信号をScilabにロードするために音声関係関数をさらってみました。全体の雰囲気は分かったのだけれど、解析用のプロットまで手が回らなかったです。そこで今回は前回積み残し部分を練習。しかしその前にWindows上での音声データの生成のところでまた一つ悶着あり。音声データなど普段扱わないから無知なのよ。
手習ひデジタル信号処理(96) Scilab、音声データ入出力のための関数類まとめ
前回RTLSDR発のIQデータをPythonプログラムからScilabへ輸入。Scilab上でPythonプログラムと同じ処理行い音声データとして再生しました。今回からは逆方向、音声データで変調してRTLSDRから輸入したデータと同等の信号の生成を試みます。まずはScilab上での音声データの処理関数のお勉強から。
“手習ひデジタル信号処理(96) Scilab、音声データ入出力のための関数類まとめ” の続きを読む
手習ひデジタル信号処理(95) Scilab、Tokyo FMの再生、1秒ちょっと
RTLSDRのデータをPythonにて取得し音声再生、無線データはScilabへも輸出。ScilabにてPythonと同処理を行おうとしてコケました。どこが悪いのか追及するために前回Pythonの途中経過データをゴッソリ出力。今回はScilab処理結果と逐一比較しながらデバッグ。まあ、音は出るようになったんだけれども。
“手習ひデジタル信号処理(95) Scilab、Tokyo FMの再生、1秒ちょっと” の続きを読む
手習ひデジタル信号処理(94) Python、やり直し、中間データもScilabへ輸出。
前回デシメーション処理が「出来た気」がしたので、後はPythonで行っている処理をScilabへ移植していけば音声でるんでないの?しかし、いけません。ザーという雑音。どこが悪いの?もう一度Pythonに戻ってステップバイステップで比較できるよう、中間データもScilabへ輸出することにいたしました。やり直しね。
手習ひデジタル信号処理(93) Scilab、デシメーション処理、実データで動作確認
前回はアリガチなサンプルデータを「でっち上げ」、Scilab上でデシメーション処理をば行ってみました。できて当然?今回はPythonを使ってソフトウエア無線受信USBドングルRTL-SDRから得た「実データ(Tokyo FM様の瞬間的な音声)」についてScilab上でデシメーション処理してみようと思います。大丈夫か?
手習ひデジタル信号処理(92) Scilab、デシメーション処理、サンプルデータで動作確認
前回まで「お求めやすい」ソフトウエア無線受信USBドングルRTL-SDRから取得した信号をScilabへ引き込むべくPythonプログラムなど作成。一応の完成後、間が空いてしまいました。忘却力の年寄はほぼ完全に忘れております。今回からデータを受け取る側のScilabでの処理をやっていこうと思います。また直ぐに忘れる?
“手習ひデジタル信号処理(92) Scilab、デシメーション処理、サンプルデータで動作確認” の続きを読む
手習ひデジタル信号処理(91) PythonでFMラジオデータを音声再生、RTL-SDR
手習ひデジタル信号処理(90) PythonでRTL-SDRデータをデシメーション
前回、ソフトウエア無線受信用USBドングルRTL-SDRのデータをPythonで読み取ったものをScilabへ「輸出」。これでScilabでもRTL-SDRのデータを処理できる(リアルタイムじゃないけど)とほくそ笑みました。今回は「輸出」に使ったPythonスクリプトに手を入れデシメーション機能など追加。益々繁盛?