【发布时间】:2018-12-04 01:41:12
【问题描述】:
我正在使用以下代码来生成脉冲幅度 通过使用正弦波和之间的布尔运算调制信号 脉冲宽度调制(PWM)信号。我正在使用矢量化方法 以便在 PWM 信号低(零或假)的情况下获得零值,并且 正弦波,其中 PWM 值很高(真或一)。请参考 下面是所需输出的屏幕截图。除此之外怎么做 当我遇到问题时,您可以自动生成 PAM 波 x 值的间距?
import numpy as np
import matplotlib.pyplot as plt
from pylab import *
percent=50.0
TimePeriod=10.0 #Frozen Value Do not change
Cycles=10 #Frozen Value Do not change
dt=0.01 #Frozen Value Do not change
t=np.arange(0,Cycles*TimePeriod,dt);
pwm= t%TimePeriod<TimePeriod*percent/100
x=np.linspace(-10,10,10000) #Frozen Value Do not change
y=(np.sin(x))
y[(pwm =='False')] = 0 #Vectorisation for zero values
y[(pwm =='True')] = (y-pwm) # #Vectorisation for sine wave
plt.plot(t,y)
plt.ylim([-3,3])
plt.grid()
plt.show()
【问题讨论】:
标签: python numpy matplotlib pwm