产品篇 — STM32G4特别外设助力电机控制

2023-02-08  

STM32G4硬件Cordic单元

Cordic简介

  • Cordic的英文全称为Coordinate Rotation Computer,即坐标转换数字计算机,通过不断旋转坐标最终接近达到计算结果

  • 这是“相位相加”的操作去计算各种函数的经典计算应用

  • 特点是开销小,计算快,广泛应用于各种计算领域

  • STM32G4集成硬核的计算单元

Cordic功能

  • STM32G4 Cordic支持以下的函数

数值表述

Cordic精度

  • 内部字长:Cordic内部采用q1.23数据格式

  • 输入/输出字长:要获取最高的精度,输入与输出都需要采用q1.31格式数据。如果输入采用q1.51格式数据,不管采取何种输出,精度都被限定到q1.15

  • 迭代次数:设置Cordic时可以选定迭代次数,为4的倍数,一个时钟周期可以执行4次迭代。考虑最快的速度,在达到需要精度的情况下,选用最少的迭代次数。在达到最大精度后继续使用迭代将逐渐降低精度

精度 vs 迭代次数

Cordic有三个寄存器:

  • CSR:控制/状态寄存器

  • WDATA:输入寄存器

  • RDATA:输出寄存器

Cordic计算输入与输出

  • 按照每个Cordic函数的设定,输入序列

  • 按照每个Cordic函数的设定,读取序列

计算举例—余弦函数

Cordic应用模式

  • 零开销单次模式:执行单次运算的最快方式

  • 零开销流水线模式:执行多个连续运算的最快方式

  • 查询模式

  • 中断模式

  • DMA模式

缓冲数据转换

  • 将保存在缓冲区中3024个角度值转换为sin值(正弦波周期1KHz,采样频率48KHz)

  • 角度值由CPU提前计算

电机应用中计算速度对比

Cordic软件实现

Cordic在电机控制算法中应用

  • MC SDK V5.4.3中STM32G4计算三角函数

  • MC SDK V5.4.3中STM32G4计算平方根

STM32G4片内比较器

STM32G4内部比较器特色

寄存器说明

比较器基本应用

  • 比较器反向端接固定电平(1V)举例

比较器消隐

  • 比较器消隐特征:消隐信号能够屏蔽比较器输出

  • 应用:屏蔽开关动作电流尖峰

比较器回差电压

STM32G4片内运放

STM32G4内部运放特色

  • 高增益带宽积(GBW)—13MHz

  • 高压摆率(SR)—45V/us

  • 低输入偏置,客户可校准

  • 多达6通道运放

  • 灵活的配置模式

  • PGA增益可调整

  • 内部输出到ADC

运放参数—失调电压

  • 失调电压Vos:运放开环使用时,让运放直流输出为0时在运放输入端的直流电压差;25度时测试的失调电压,单位:uV或者mV;因为温度影响的偏移电压数据,单位: /℃

  • 影响:当放大信号时,输出信号会叠加失调电压的倍数

运放参数—开环增益

  • 理想运放的开环增益为无穷大,实际上都做不到,有一定数据

  • 实际设计运放电路时候要计算增益误差

运放参数—增益带宽积

  • 增益带宽积(GBW):在某频率下开环电压增益与频率的乘积

  • 表征的是运放交流特性

运放参数—压摆率

  • 压摆率(SR):当输入运放一个阶跃信号时,运放输出信号的最大变化速率

  • SR=dv/dt

寄存器说明

独立模式与软件配置

  • 独立模式

跟随模式与软件配置

  • 跟随模式

PGA模式与软件配置

  • PGA模式,无外部VINM模式

  • PGA滤波外置模式

  • PGA带偏置模式

  • PGA带偏置与滤波模式

运放连接到内部ADC模块

  • 方式一:内部连接ADC,无需占用管脚

  • 方式二:管脚复用连接到ADC

STM32G4内部运放实际应用

STM32G4内部运放补充

  • 可选择模式很多,可以根据需要进行配置

  • 熟练后,可以直接写OPAMPx_CSR寄存器进行配置

  • 独立模式下增益以及外部偏置可以外部电路配置


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。