[牛人杂谈] 单片机应用中,PWM触发ADC采样一般用于什么场合

[复制链接]
 楼主| xinpian101 发表于 2025-7-16 10:33 | 显示全部楼层 |阅读模式
在单片机应用中,使用 PWM 信号来触发 ADC 采样是一种非常重要的同步技术,主要用于以下场合:

核心目的:实现 ADC 采样时刻与 PWM 控制周期(或负载变化周期)的精确同步。

这种同步至关重要,因为它能确保在每个 PWM 周期内最合适、最稳定、最具代表性的时刻采集关键的模拟信号(如电流、电压),从而获得准确的数据用于闭环控制或状态监测。常见应用场景包括:

电机控制 (Motor Control):

FOC (Field-Oriented Control) / 矢量控制: 这是最主要的应用场景。在驱动三相无刷直流电机或永磁同步电机时:

PWM 驱动功率开关管,控制施加在电机绕组上的电压。

需要精确测量电机相电流 (Iu, Iv, Iw) 或总线电流 (Idc) 来进行磁场和转矩的闭环控制。

为何同步? 功率开关管在开关瞬间会产生巨大的噪声和电压尖峰。如果在这些时刻采样电流,结果会严重失真(毛刺)。通过 PWM 触发 ADC,可以精确地将采样点设置在 PWM 周期的中间(例如,当上管导通下管关断或反之,且开关状态稳定时),避开开关噪声,获取真实的绕组电流值。这对于 FOC 算法的准确性至关重要。

有刷直流电机/步进电机: 同样需要精确测量电流以进行力矩控制或过流保护,同步采样能避免 PWM 开关噪声干扰。

电力电子/功率变换 (Power Electronics / Power Conversion):

DC-DC 变换器 (Buck, Boost, Buck-Boost): 需要测量输出电压 (Vout) 和电感电流 (I_L) 或输入电流 (Iin)。

为何同步?

测量 Vout:在 PWM 周期的末尾(通常在下一个周期开始前)采样,此时电感电流连续,电压相对稳定,更能反映实际输出电压。

测量 I_L:在 PWM 周期的中间点采样(类似电机控制),避开开关噪声,获取更平滑、更真实的电流波形,用于电压环或电流环控制。

逆变器 (Inverter): 将直流电转换为交流电。需要精确测量输出交流电压 (Vac) 和电流 (Iac) 进行波形控制。

为何同步? 采样点需要与 PWM 载波周期同步,确保在每个载波周期内都能在固定的相位点(通常是中间点)采样电压和电流,从而准确计算输出功率、实现并网同步、进行过流保护或精确的波形控制 (如 SPWM, SVPWM)。

整流器 (Rectifier): 类似逆变器,需要同步采样输入交流电压电流。

开关电源 (SMPS): 本质上也是一种 DC-DC 或 AC-DC 变换器。其核心控制环路(电压环、电流环)需要精确测量输出电压和电流(特别是峰值电流模式控制)。PWM 触发 ADC 确保在开关周期内最稳定的时刻采样反馈信号,提高控制精度和稳定性,降低输出电压纹波。

需要精确时间相关或相位相关采样的应用:

当需要同时采集多个与 PWM 事件相关的信号(如三相电流)时,使用同一个 PWM 事件触发多个 ADC 通道(或使用 ADC 的同步注入模式),可以保证这些信号是在完全相同的时刻被采样的,这对于需要相位信息的计算(如 FOC 中的 Clarke/Park 变换)极其重要。

在需要周期性采样但采样率严格受控于 PWM 频率的场景。

减轻 CPU 负担:

虽然这不是主要目的,但利用 PWM 硬件自动触发 ADC,结合 DMA 传输采样结果,可以构建一个几乎不需要 CPU 干预的数据采集流程。CPU 只需要在需要时(如 PWM 周期结束时)处理一组完整的新数据即可,大大提高了系统效率。

总结关键优势:

避开开关噪声: 在功率开关器件导通/关断瞬间,电压电流存在剧烈变化和噪声。同步采样可精确选择开关状态稳定后的“安静窗口”进行测量。

捕捉稳定值: 在 PWM 周期内的特定点(如中点),被控对象(如电机绕组电流、电感电流、输出电压)的状态更稳定、更具代表性。

保证采样时刻一致性: 每个 PWM 周期都在相同相对位置采样,数据具有可比性。

实现多通道同步采样: 对于需要同时刻数据的应用(如三相电流)至关重要。

简化软件控制流程: 硬件自动触发,降低软件复杂度。

提高控制环路的精度和稳定性: 更准确、更及时的反馈数据是高性能闭环控制的基础。

实现方式 :

配置一个定时器 (如 TIM1, TIM8) 产生 PWM 信号。

配置 ADC,选择外部触发源为特定的定时器事件(如 TIMx_TRGO,通常可设置为 PWM 周期开始、周期中间、周期结束、比较匹配等)。

设置 ADC 采样通道。

(可选) 启用 ADC 的 DMA 功能,自动将采样结果传输到内存。

启动定时器 (PWM) 和 ADC。

通过这种方式,每当 PWM 信号达到预设的触发事件(如每个 PWM 周期的中心点),硬件就会自动启动一次 ADC 转换,实现精确的同步采样。

 楼主| xinpian101 发表于 2025-7-16 10:37 | 显示全部楼层
在单片机系统中,除了 PWM 触发 ADC 采样这种重要的同步方式,为了实现精确的时序控制、减少软件干预、提高系统效率和实时性,还存在多种其他类型的“同步触发”机制。这些机制利用硬件本身的信号或事件来自动触发其他外设的操作,形成一个硬件自动化的“触发链”。
旧时光放映机 发表于 2025-7-17 22:54 | 显示全部楼层
在电机控制中,PWM触发ADC采样确实非常重要,特别是在FOC算法中,能够避开开关噪声,获取准确的电流值。
牛奶秋刀鱼 发表于 2025-8-9 21:21 | 显示全部楼层
常用于需要同步采样的场合,如电机控制的电流采样、电源电压调节等场景。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

125

主题

1624

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部