微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 通过优化PWM算法提高智能微控制器控制性能解析方案

通过优化PWM算法提高智能微控制器控制性能解析方案

时间:06-20 来源:互联网 点击:

随着电力电子技术和微电子技术的飞速发展,变频调速技术也在日新月异地进步。智能微控制器的不断完善和智能功率模块(IPM)的更新换代更加促进了变频调速技术的进步。近十多年来,以半导体功率器件为基础的PWM变频及脉宽调速技术在各个领域得到了广泛的应用。如何在普通环境中应用最新的电子技术成果,通过优化PWM算法提高控制性能,一直是技术人员的不懈追求。

本文介绍三菱公司最近推出的一种16位专用变频调速微处理器M37906及三菱公司第四代智能功率模块DIP-IPM的性能特点,并结合不对称规则采样PWM算法,对微处理器M37906和智能功率模块PS21245组成的变频器的软硬件进行说明。

1 M37906微处理器

1.1 M37906微处理器的功能和特点

M37906微处理器采用高性能硅栅CMOS工艺,具有42脚塑料表面粘贴(SSOP)和42脚塑窄脚双列直插(SDIP)两种封装形式,提供FLASH芯片和掩膜ROM芯片两种供货方式,其基本特点如下:

基于指令 203条

指令执行时间 50ns(系统时钟20MHz)

存储器容量

片内ROM 32K byte

片内RAM 1024 byte

可编程输入/输出口 30 (P1,P2,P5,P6,P7)

串行通行口 2路

多功能定时器

AT0~TA9 10路16位

TB0~TB2 3路16位

看门狗定时器 1路12位

中断源 23

外部中断(INT3、INT4、INT5、INT6、INT7)

内部中断(TA0~TA9)(TB0~TB2)

(UART0、UART1、A/D)

中断优先级 7

A/D转换 5路10位

D/A转换 2路8位

供电电源 5V±0.5V

工作环境 -20℃±85℃

功耗 255mW(20MHz)

1.2 M37906单片微处理器[2]

M37906 单片微处理器是M7900系列16位单片机中专为三相电机驱动而设计的微处理芯片,特别适合于三相直流无刷电机的控制,结构封装如图1所示。其所有的 I/O口除了具有双向输入/输出功能外还具有其它复合功能。其中DA0和DA1为D/A转换口,可用于系统模拟量的输出;AN0~AN4是A/D转换接口,可用于模拟量的采集;WN、VN、UN和W、V、U是产生三相PWM控制信号的接口,可用于对三相电机的驱动;IDU、IDV、IDW为三相位置检测口,用于三相无刷电机控制中对转子位置的实时检测;其余的定时器输入、定时器输出、串行通信接口等与普通单片机基本相同。下面着重介绍M37906处理器中三相PWM波形的生成和与此相关的定时器的工作方式。

M37906处理器内部具有TA0~TA9和TB0~TB2共十三个16位的多功能定时器。定时器之间相互独立,每个定时器都可以选择其独立的工作方式。定时器TA0~TA9有四种工作方式:

定时工作方式:定时器对内部计数源计数。有普通、带门控功能、带脉冲输出三种方式。

事件计数方式:定时器对一个外部脉冲计数,可对单相或两相外部信号计数。

单次脉冲方式:定时器输出一个给定宽度的脉冲信号,该方式只触发一个,解发后停止记数。

脉冲宽度调制(PWM)方式:定时器输出给定宽度的连续脉冲。

定时器TB0~TB2有三种工作方式:

定时工作方式:定时器对内部计数源计数。工作情况与定时器TA相同。

事件计数方式:定时器对一个外部脉冲计数,只能对单相外部脉冲信号计数。

脉冲周期/脉冲宽度测量方式:定时器测量外部脉冲的周期或宽度。

联合使用定时器TA0~TA3和定时器TB0可以产生驱动三相马达的电压波形。M37906内部集成的三相马达驱动的工作方式答为三相波模式,用于实现三相波形的输出。三相正相波形(U相、V相、W相)和三相负相波形(UN相、VN相、WN相),分别从P65、P65、P64、P63、P62、P61和 P60输出,P6OUTcut/INT4作为智能模块的故障检测口。定时器TA3按定时方式工作,用于控制载波周期;定时器TA0~TA2按单次脉冲方式工作分别控制各输出相。其中定时器TA0控制W和WN相,定时器TA1控制V和VN相,定时器TA2控制U和UN相。

定时器TA3用于控制三角调制波或锯齿波的周期。当定时器TA3记数器向下溢出时,产生中断请求,发出一个短脉冲使定时器TA0~TA2开始记数;同时三相输出极性设置寄存器(00A8H)的相应位分别触发各自对应的输出极性设置翻转触发(toggle flipflop)器,设置其输出的极性,触发器的内容在定时器TA0~TA2触发时反向;定时器TA0~TA2在触发极性设置翻转触发器的同时也触发死区时间定时器使之开始工作。此时正相和负相输出波形并不能马上从高电平转到低电平,只有死区时间定时器溢出后,所发出的反向触发信号才使输出从高电平转到低电平。

在输出波形时,设置死区时间的目的是防止正向波形(U相、V相、W相)输出低电平和负相波形(UN 相、VN相、WN相)输出低电平时互相重叠,因为正相和负相同时为低电平时会造成驱动电路短路。M37906内部提供了3个以单次脉冲有方式工作的八位定时器完成对死区时间的控制。它们共用一个设

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top