knowledge:electronic:pwm
差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版 | |||
knowledge:electronic:pwm [2017/10/05 03:16] – 弘毅 | knowledge:electronic:pwm [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== PWM(Pulse-width modulation)脉宽调制 ====== | ||
+ | PWM是使用数字手段来控制模拟输出的一种手段。使用数字控制产生占空比不同的方波(一个不停在开与关之间切换的信号)来控制模拟输出。 | ||
+ | |||
+ | 脉冲宽度调制(英语:Pulse Width Modulation,缩写:PWM),简称脉宽调制,是将模拟信号 转换为脉波的一种技术,一般转换后脉波的周期固定,但脉波的占空比会依模拟信号的大小而改变。 | ||
+ | |||
+ | 在模拟电路中,模拟信号的值可以连续进行变化,在时间和值的幅度上都几乎没有限制,基本上可以取任何实数值,输入与输出也呈线性变化。所以在模拟电路中,电压和电流可直接用来进行控制对象,例如家用电器设备中的音量开关控制、采用卤素灯泡灯具的亮度控制等等。 | ||
+ | |||
+ | 但模拟电路有诸多的问题:例如控制信号容易随时间漂移,难以调节;功耗大;易受噪声和环境干扰等等。 | ||
+ | |||
+ | 与模拟电路不同,数字电路是在预先确定的范围内取值,在任何时刻,其输出只可能为ON和OFF两种状态,所以电压或电流会通/ | ||
+ | |||
+ | 模拟信号能否使用PWM进行编码调制,仅依赖带宽,这即意味着只要有足够的带宽,任何模拟信号值均可以采用PWM技术进行调制编码,一般而言,负载需要的调制频率要高于10Hz,在实际应用中,频率约在1kHz到200kHz之间。 | ||
+ | |||
+ | 在信号接收端,需将信号解调还原为模拟信号,目前在很多微型处理器内部都包含有PWM控制器模块。 | ||
+ | |||
+ | ===== 基本原理 ===== | ||
+ | 脉宽调制(PWM)基本原理:控制方式就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,即可改变逆变电路输出电压的大小,也可改变输出频率。 | ||
+ | {{: | ||
+ | |||
+ | 在上面的图中,绿线代表一个固定的时间段。此持续时间或周期是PWM频率的倒数。换言之,绿线将测量每2毫秒,在约500Hz的Arduino的PWM频率。函数analogWrite ( )的调用是在0 - 255 ,使得analogWrite (255)请求一个100 %的占空比(常开) ,和analogWrite (127 )是50%的占空比(在一半的时间)。 | ||
+ | |||
+ | |||
+ | ===== 例程参考 ===== | ||
+ | |