問題タブ [modulation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - Matlab: 高次 QAM 信号を操作する際のエラー - 行列の次元が一致する必要があります
この問題は些細なことのように思えますが、解決しようとすると頭を悩ませています。64 QAM コンスタレーションに定数モジュラス手法を使用して分数間隔イコライザーを適用しようとしています。プログラムは QPSK または 4 QAM で動作しますが、64QAM に適用するとエラーがスローされます。
通信ツールボックスを持っていないので、前の質問の回答を使用して 64QAM シンボルを生成しました 16 QAM 信号を生成します
誰かがコードを機能させるのを手伝ってくれませんか? ありがとうございました。
matlab - MATLAB での AM 変調: サンプリング周波数?
Fc=10 KHz の搬送波を Fm = 200 Hz (時間領域で 0 から 1) の正弦波メッセージで変調しようとしています。
サンプリング レート Fs = 1 KHz。
これは私のコードです:
ここまでは問題ありません。さて、キャリア信号について:
キャリアとメッセージを時間領域で乗算する必要があります。しかし、キャリアは正しくありません。問題は、Fs << Fc という事実から生じます。
そのため、キャリアの FT を間違えます。
これを修正する方法を教えてください。
注: これは、状況を理解するために使用した単なる例です。私が解決しようとしている実際の問題には、wav オーディオ ファイル (Fs=44.1 KHz) と Carrier Freq (Fc=100 KHz) が含まれています。つまり、Fs << Fc であり、私にはどうすることもできません。
ありがとう、
android - Android PPM デコーダ オーディオ ライブラリ
AndroidにオーディオPPM(パルス位置変調)を実装する必要があります
参照: http://en.wikipedia.org/wiki/Pulse-position_modulation
スマートフォンのオーディオマイク入力を使ってPPMを受信したい。
ラジコン、ドローンなどの無線は、一般に PPM 出力を備えています。トランスミッター (および PC フライト シミュレーター) には、一般に PPM 入力があります。
あなたがこの仕事で私を助けてくれるかどうか知りたいです。
あなたがここで読むことができるように、私はまだppmエンコーダークラスを書いています:アンドロイドPPMエンコーダーオーディオライブラリ
これらは、いくつかの開始ドキュメントとツールです。
1) smartpropplus は、PPM オーディオを受信してデコードする Windows ソフトウェアですhttp://sourceforge.net/p/smartpropoplus/code/HEAD/tree/SPP4/
2) これは PPM の構造です: http://www.aerodesign.de/peter/2000/PCM/PCM_PPM_eng.html#Anker144123
3) これは信号がどのように構成されているかを説明する簡単な画像です: http://www.aerodesign.de/peter/2000/PCM/frame_ppm.gif
4) オシロスコープによる ppm 信号測定: http://www.andrewhazelden.com/blog/2011/08/analyzing-rc-radio-ppm-signals/
編集: あなたのサポートを待っている間、私はサンプルアプリを書き始めました:
これはクラスPPMdecoder.javaで、信号のデコードとキャリブレーションフェーズが欠落しています....しかし、マイクからの信号を正しく取得することができます
注:コード内の「//To Be Done」コメントは、この質問を解決するために不足しているコードを示しています。
クラス PPMdecoder.java
これはインターフェイス IAsyncFetchListener.java であり、デコーダーがチャンネル値で UI を定期的に更新できるようにするために、UI スレッドでリスナーを作成するために必要でした。
これは、サンプル アクティビティ クラス Test.java です。
これは AndroidManifest.xml です
r - FSK 復調とデータ復元
I'm trying to implement a FSK demodulator in R. The audio is some text data, and as an exercise I converted the text to raw binary (0s and 1s) to be able to check the output of the demodulator. So far I've been able to come up with some demodulated data, but something is amiss: the length of the real data is 6720 characters, but the length of the demodulator output is 1345049, about 200 times longer. So basically there's a whole bunch of extra 0s and 1s (e.g. instead of 0101001 or something, it looks like 00000111110000011111000000011111).
This makes sense because the duration of the audio file is 30.5 seconds, and multiplied by the sampling rate (44100), the result is 1345050.
My question is: what's the proper way to recover data from the demodulated signal? Some process like demod[1,200,400,600,800...]; but then do I start with the first bit or the 200th, or in between? Or have I completely missed the target?
c++ - 8 ビット PCM 正弦波 wav ファイルを書き込むと倍音が生成されます
800Hz の正弦波 (1 チャンネル、8 ビット、16000Hz サンプリング、32000 サンプルなので 2 秒の長さ) の .wav ファイルを生成するプログラムを c++ で作成しましたが、Audacity で再生したりスペクトログラムを調べたりすると、倍音。
問題は、正弦波を PCM に変換するアルゴリズムにあると思います。127、127.5、128 などの「ゼロ」変位をどこに置くべきかわかりません。
生成されるファイルは次のとおりです: output.wav
必要に応じて、cpp ファイルを次に示します: wavwriter.cpp
ありがとう!
編集 2: char を uint8_t に変更しました
未定義の動作を避けるため。同じ問題がまだ適用されます。
matlab - Simulink でのマルチチャネル オーディオ出力
Simulink を使用して、オーディオ出力 (ヘッドフォン) の 3.5 mm ジャックから 2 つの正弦波を出力しています。正弦波の 1 つをチャネル 1 から送信し、もう 1 つの正弦波をチャネル 2 から送信したいと考えています。
2 つの「To Audio Device」ブロックに接続された 2 つの正弦波ブロックを使用してみましたが、それぞれに異なるチャネルが指定されており、「指定されたオーディオ デバイスは 1 回だけ開くことができます」というエラーが発生します。
接続されていない単一の「To Audio Device」ブロックに両方のサイン ブロックを配線しようとしました。
Mux、Vector Concatenate、Matrix Concatenate ブロックを使用して正弦波を結合してから、出力を To "Audio Device Block" に送り込もうとしましたが、望ましくない結果になりました。
両方の正弦波を個別に動作させましたが、両方を同時に動作させることはできませんでした。