主要内容

添加ADC驱动库块

在示例模型中mcb_pmsm_foc_sim,电流控制器块从工厂模型接收ADC计数中的电机相电流,将电机相电流从安培转换为ADC计数。在目标硬件中,电流控制器从ADC块中读取电机相电流。按照此工作流添加ADC驱动程序块。

在德州仪器™BOOSTXL-DRV8305逆变器硬件中,电机的a相电流从ADC C2通道读取,b相电流从ADC B2通道读取。选择ADC模块C和通道2得到电机的a相电流。选择ADC模块B和通道2,得到电机的B相电流。对于其他目标硬件,请选择ADC模块和电机相电流接口的通道。

选择ePWM1_ADCSOCA作为ADC块中的触发源,因为当PWM计数器等于PWM周期寄存器时,PWM库块触发转换开始事件SOC0。

选择ADCINT1在ADC B模块中。这将在转换结束(EOC)事件时触发ADC中断。当ADC中断发生时,执行FOC电流控制算法。

在仿真软件万博1manbetx®库浏览器,从F2837xD库中选择并添加ADC块嵌入式编码器®万博1manbetx德州仪器C2000™处理器支持包.配置ADC块读取电机的a相和b相电流。

在ADC块参数对话框中,配置ADC C模块和通道2读取电机的a相电流,如下表所示。

在ADC块中的选项卡和参数 设置

SOC触发>ADC模块

C

SOC触发>SOC触发数量

SOC0

SOC触发>SOC触发源

ePWM1_ADCSOCA

输入通道>转换频道

ADCIN2

将块重命名为ADC_C_IN2。

在ADC块参数对话框中,配置ADC B模块和通道2(读取电机B相电流)以及ADC中断(ADCINT1),如下表所示。

在ADC块中的选项卡和参数 设置

SOC触发>ADC模块

B

SOC触发>SOC触发数量

SOC0

SOC触发>SOC触发源

ePWM1_ADCSOCA

SOC触发>在AOC触发后中断

SOC触发>中断选择

ADCINT1

SOC触发>ADCINT1连续模式

输入通道>转换频道

ADCIN2

将块重命名为ADC_B_IN2。