恩智浦LPC1100实现低成本无电刷直流电机控制
2010年12月08日 20:13 发布者:designer
无刷直流和无刷交流等先进的电机控制技术已广泛用于各种工业应用之中,这种技术与通用交流电机控制技术相比具有多种优势:效率更高、耐用性更佳、电机成本更低。另一方面,用于驱动电机的电子组件变得日益复杂,结果提高了系统总成本。 白电市场作为价格驱动特征十分明显的细分市场,在洗衣机、洗碗机等家电中应用“新型”电机控制方式显得尤为谨慎。目前,广为人知的传统控制仍是市场的首选,但是近几年来,尤其是在半导体价格逐年下降的背景下,该市场所使用的技术已悄然发生变化。
恩智浦作为一家工业应用半导体供应商,其产品覆盖面十分广泛,包括通用应用产品(整流器、齐纳二极管等)、逻辑和电源产品(双向可控硅、电源IC)以及接口和微控制器产品等。
如今,无刷直流电机(BLDC)已取代传统的有刷直流(BDC)电机,广泛用于各种应用之中。
无刷直流电机不但在效率和可靠性方面有上佳表现,而且拥有更低的噪声、更轻的重量和更长的使用寿命,还消除了换向器火花,减少了总体电磁辐射,因而在白电、暖通空调及工业应用领域日益受到追捧。
与多数电机控制相同,无刷直流电机控制器由控制单元和电源单元构成,恩智浦同时为这两个单元提供极具竞争力的解决方案。本文将重点讨论恩智浦针对功率300W、电压12-30V的无刷直流电机开发的演示板。转子定向反馈利用霍尔传感器确定,并通过个人电脑采用CAN或UART方式与外界相连。
图1
Cortex-M0内核是ARM在2009年发布的最新内核之一,也是市场上体积最小、功耗最低、最节能的ARM处理器,能够以8位产品的价格实现32位产品的性能,为从8位架构跳过16位架构、直接移植到32位架构创造了可能。
ARM Cortex-M0内核基于ARMv6-M架构,采用包含Thumb-2技术的所谓Thumb指令集。
Thumb指令集可以基于16位指令实现32位运算,因而为减小代码大小提供了可能。
Thumb ISA(指令集架构)仅包括56条指令,每条指令均保证执行时间。从这个角度来看,Cortex-M0可提供完全可以确定的响应时间。由于采用的是32位架构,因此,即使是16位指令,也可以用一条指令实现8位、16位或32位数据传输。
至于编程模型,Cortex-M0采用的是由13个通用寄存器(r0-r7 低寄存器和r8-r12 高寄存器)、3个特殊寄存器(堆栈指针、链接寄存器和程序计数器)和1个器件状态指示寄存器(xPSR,程序状态寄存器)构成的寄存器集,如下图所示。
图2
如前所述,所有指令均在固定时间内执行完毕。例如,数据处理指令在一个周期内完成,数据传输指令在两个周期内完成,分支指令(branch)则在三个周期内完成。
除内核以外,Cortex-M0集成了一个可以处理中断和系统异常的嵌套向量中断控制器(NVIC)。Cortex-M0内核具有完全确定的中断处理行为,默认值为16个周期,无抖动。NVIC最多能处理32个优先矢量。与Cortex-M3架构相同,这种架构支持尾链中断(Tail chaining)和后到(Late arriving)中断。
2009年,恩智浦半导体发布了LPC1100家族中的第一款产品,也是首款基于Cortex-M0内核的微控制器系列产品。
据Dhrystone测量结果,LPC1100系列可以提供0.9 DMIPS/MHz的运算能力。
根据基于嵌入式器件真实性能的Coremark (http://www.coremark.org)基准测试,恩智浦LPC1100系列取得了1.4 Coremark/MHz的高分,远远超过8位和16位产品市场的同类产品。与此同时,减小的代码尺寸还可以给用户带来性能上的提升。得益于Cortex-M0架构,开发员平均可以节省40%左右的闪存利用空间。
由于极低的门数,基于Cortex-M0的器件可应用于低功耗应用之中,比如医疗设备、电子计量仪器、电机控制、电池供电型传感器等。ARM出品的Cortex-M系列处理器可支持多种功耗模式:睡眠模式、深度睡眠模式和省电模式。
LPC1100系列最高支持50 MHz的时钟速率,属于零延迟架构,集成简单的AHB-Lite接口。框图如下所示:
图3
LPC111x集成了工业、消费、白电应用中嵌入式控制系统所需要的全部外设。闪存容量最高达32KB,价格65美分/片起(适用采用8K闪存的器件)。
针对无刷直流电机控制需要,LPC1100系列产品集成4个计时器(16位和32位各2个),共有13个匹配输出,每个匹配输出都可配置为PWM模式。其中6个PWM信号在演示板中用于驱动MOSFET的高、低端。
LPC1100上的通用输入/输出(GPIO)具有较高的可配置特性,可用作在上升沿和下降沿激活或者两个沿同时激活的外部中断。转子定向反馈通过这些GPIO中断获取。
图4
LPC1100拥有一个8通道10位模数转换器(ADC),其中一个通道用作过流保护,其方法是通过一个分流电阻测量电机电流。
不用传感器,通过在无刷直流电机换向过程中测量浮动相位电压,侦测转子位置。这要求在获取浮动相位电压时精确计时。在LPC1100中,模数转换可通过四个计时器中两个计时器的匹配事件来触发。这样可以减少CPU负荷,并在适当时刻精确捕捉浮动相位。
为了与外界相连,LPC1100集成了UART和/或CAN接口。
为了进一步支持无刷直流电机,恩智浦标准产品事业部于2009年推出了采用Trench技术的新一代(第六代)Mosfet,为工业部门提供了电机控制等多种应用支持。新型Trench 6 Mosfet产品具有以下优势:降低了低导通电阻RDS(ON)器件的Rspec - mΩ / mm2值,为快速开关创造了条件;降低了栅极电荷和开关损耗;低QG(tot)和低FOM,最大限度地提高了效率;将Tj(最大)提升至175C,为高可靠和高性能应用提供了大力支持。不断扩大的产品组合将为电机控制应用提供完美支撑。
今后,我们的Cortex-M产品研发将支持无刷直流电机的磁场定向控制和U/f控制。这是我们微控制器系列研发理念的延续,我们一贯基于ARM7、Cortex-M0、Cortex-M3、新型Cortex-M4等架构提供相似的外设IP、软件兼容支持和轻松移植能力,彰显了我们对这种理念的传承。
这种策略不但使我们能够针对不同电机控制方法在CPU性能和必要外设之间取得最佳平衡,而且能够在各种项目中实现工具和软件的循环利用(例如,为Cortex-M0编写的软件模块可以在Cortex-M3/M4微控制器中重复利用)。如此一来,我们的客户不但可以大幅缩短上市时间,还能最大限度地减少工具投资(相同的IDE、调试和编程工具)。