我会试着问一些具体的问题这里:在
我用python来研究一些相对基本的DSP,我想实现自动增益控制。除非我弄错了,否则采用(简化)形式:
我不太关心输入/输出信号之间的相移,输入信号是由缓慢变化的波调制的1MHz正弦波(如上所述),我以40 MHz的频率采样。我的问题是:
(i)我找不到关于AGC的任何像样的描述,欢迎对此提出建议。
[我有一本关于general DSP的非常好的书,但是AGC只是顺便提一下]
我知道低信号然后高增益的基本思想,反之亦然;我也很欣赏能产生“快速攻击”/“慢衰减”响应的滤波器,但我不确定DSP中AGC算法的细节。在
其次:
(ii)如何在python中实现这一点?我的起始代码如下:
import numpy as np
import pylab as plt
# 1000 samples of a 1MHz signal, sampled at 40MHz
sample_rate = 40e6
fc = 1e6
fm = 1e5
nsamples = 1000
# for now assume an AM type signal
t = np.arange(nsamples) / sample_rate
signal = np.sin(2*np.pi*fc*t) * ( (1 + np.sin(2*np.pi*fm*t))/2 )
plt.plot(t, signal)
plt.grid()
plt.xlabel('time (0 to 25us)')
plt.ylabel('ip signal amplitude')
plt.show()
这类事情通常在Matlab中建模,其语言与Python非常相似。去谷歌看看。你可以开始here。 这是《自动增益控制》一书中的免费章节
相关问题 更多 >
编程相关推荐