历史上的今天
返回首页

历史上的今天

今天是:2026年03月06日(星期五)

正在发生

2023年03月06日 | ARM LPC2101的无刷直流电机控制设计方案

2023-03-06 来源:elecfans

阐述使用低成本的ARM7 LPC2101微处理器设计无刷直流电机的控制方案;详细地介绍微处理器、MOSFET驱动和MOSFET的原理设计和程序流程,以及与电机保护相关的技术及处理方法,如电机稳定运行状态机,降低电机噪声,软件防止电机陡转等。该方案可以应用在打印机、电动自行车、洁牙机等电机控制产品上。


  LPC2101是基于16/32位 ARM7 CPU嵌入高速Flash闪存的微控制器,具备高性能,小体积封装,低功耗,片上可选择多种外设等优点,应用范围很广。其具备的多种32位和16位定时器、10位A/D转换器和每个定时器上PWM匹配输出特性,尤其适用于工业控制。

  无刷直流电机是一种易驱动电机,适用于变速和启动转矩很高的应用,它的使用范围从大规模的工业模具到调光控制的小型电机(12 V直流电机),外形和尺寸也是各种各样。

1  无刷直流电机的基本原理

按此在新窗口浏览图片
图1  无刷电机组成

  无刷直流电机一般由定子、转子和金属壳体等组成,如图1所示,通过反向极性的吸引产生扭矩使电机运转。一旦转子开始运转,固定的刷子和转子部分将不断反复地连接、断开,电动势和反电动势在转子旋转过程中产生,新的电极总是和定子极性相反。由于这种变换是固定的,因此转子以一种固定的形式运动。通过给电机施加反向电压和反向的转子线圈电流,使南北极性翻转,电机改变其运动旋转方向。


  速度和电机的扭矩大小是依据电机旋转产生的磁场强度来控制的,而电机的旋转能量是依赖于通过电流大小来控制的,因此调整电机转子的电压和电流可以改变电机的速度。本电机速度的控制是根据LPC2101微控制器的PWM信号的变化而产生的。

2  无刷直流电机的控制

2.1  双向旋转

按此在新窗口浏览图片
图2  使用全桥电路双向旋转

  驱动有刷直流电机的双向旋转,可通过全桥驱动电路改变电流来实现完成,如图2所示。这个全桥驱动电路由N通道的MOSFET管组成,当Q2和Q3关闭的时候,Q1和Q4导通电机正相旋转;当Q1和Q4关闭时,Q2和Q3导通电机反相旋转。

2.2  速度控制部分

  无负载的电机速度与加到电机上的电压有一定的比例关系,因此通过采样加载到电机上的电压,可以控制电机的速度。脉宽调制解调用于产生这种电压的变化,如图3所示。脉宽调制是基于占空比的固定频率脉宽波形。加载到电机上的平均电压与PWM占空比成正比关系。

按此在新窗口浏览图片
图3  PWM速度控制

  PWM信号(Q1和Q2)根据LPC2101微控制器定时器2的3个匹配寄存器决定信号的时基频率。电机速度(占空比)和方向通过调整电位器输入及改变LPC2101 ADC的输入数值来控制,如图4所示。

按此在新窗口浏览图片
图4  系统配置

2.3  电机反馈部分

  低功耗电机电流测量是在MOSFET和地之间使用电流传感器(参见图4)。通过电流传感器的采样电阻检测微小电压;通过在微控制器的前端进行滤波和放大,电流采集总是在最高级别,在PWM产生之前。这个操作通过外部定时器匹配中断,中断后先开始A/D转换。转换数值代表了电机的电流。

  低功耗无传感器电机旋转速度反馈是通过反馈的EMF电压测量(参见图4)。反电动势是通过电机转子旋转磁场和外部电磁场产生的。换句话说,电机表现得像一个发电机。RPM和反电动势电压是成直接正比关系的,反电动势测量是通过MOSFET切换完成的(刹车模式)。本文中,BEMF测量用于检测电机是否完全停止。电压分压是用于满足反电动势电压(最高为12 V)在0~3.3 V间的。

3  无刷直流电机的应用

3.1  选用LPC2102

  LPC2102(采用LQFP48封装)是目前LPC2000系列ARM7家族中最小、最便宜的一款总线频率高达70 MHz的32位CPU处理器;有2 KB的静态RAM和8 KB的片上Flash存储区。对于使用USB、CAN总线、Ethernet以太网总线,可以选用LPC2000系列中更高级别的处理器。本文中LPC2101,其CPU使用代码空间为3 KB,CPU负载小于5%。没有使用内部外设资源如下:UART、I2C、SPI/SSP、RTC、2个定时器和4个A/D输入,20个未用的I/O口可供用户扩展使用。

3.2  电机选择

  设计选用150 W MAXON RE40电机。在12 V输入下,无负载的速度是6 920 r/s。最大连续电流是6 A。PWM时基信号对电机噪声有很大的影响(因为人耳一般能听到的声波的频率范围是20 Hz~20 kHz),同时影响电机的表现性能。要防止整个周期中电流过零(就是通常所说的不连续的电流状态,当电机轻载时),如图5(b)所示。这种不连续电流会导致扭矩转速曲线非常陡,在电机中将产生某种脉冲,使电机转子产生更大的噪声,本电路使用MAXON电机,就是为了获得连续的电流模式,所选择的PWM脉冲频率是8 kHz。

按此在新窗口浏览图片
图5  PWM时基频率的影响

3.3  MOSFET选择

  在系统中使用NXP半导体PH1875L N沟道MOSFET,相关的电机电压是12 V,电机启动的最大电流是103 A。作为12 V的电机,MOSFET的电压Vds至少为40 V。需要足够的灌电流来启动电机,可以通过软件控制在系统运行过程中减小电流。PH1875L需要使用的最大灌电流是45.8 A,漏电流是183 A。PH1875L的SMD贴片封装如图6所示。

按此在新窗口浏览图片
图6  SO669(LFPAK)封装

3.4  MOSFET驱动选择

  MOSFET驱动提升了控制器输出信号驱动电机的能力。本设计选择NXP芯片PMD2001D和PMGD280UN,如图7所示。

按此在新窗口浏览图片
图7  简化的MOSFETMOSFET全桥和半桥驱动电路

3.5  速度控制和方向控制

  为了控制方向和电机速度,用10 kΩ的电位器,连接到LPC2101 ADC输入端(参见图4)。由于是10位A/D,实际上只需要8位就可以采用256个步进数值,如图8所示。采用10位A/D可以达到1 024个步进数值。

按此在新窗口浏览图片
图8  电位器模拟速度输入和方向

4  硬件与软件设计

4.1  硬件设计

  控制部分的电路原理如图9所示。电源和电机部分的电路原理如图10所示。

按此在新窗口浏览图片
图9  控制部分电路原理

4.2  软件设计

  软件部分采用C语言编写,使用Keil μVision(ARM7 RealView V3.0)开发环境。主函数实现如下功能: 读取电位器数值来调整速度和电机方向;读取电机反电动势电流;设定PWM占空比和控制Q1~Q4 MOSFET输出;执行RS232通信。图11表示控制系统流程。使用RS232接口每200 ms给PC端计算机发送电机速度和电流、电压信息。电机控制软件部分状态机如图12所示。状态处理是在主程序循环中处理的,LPC2101的定时器2用于产生PWM信号。在每个PWM信号中断子程序进入后,可以通过改变占空比来调整既定电机速度并设置MOSFET输出控制Q1~Q4。定时器0用于10 ms的系统定时。

按此在新窗口浏览图片
图10  电源和电机部分电路原理

按此在新窗口浏览图片
图11  主程序流程

  LPC2101配置使用Keil ARM开发环境中标准的启动代码,设定CCLK时钟为60 MHz,PCLK时钟为15 MHz。相关测试代码包括main.c,adc.c,timer0.c,motor.c,uart.c,bcd.h等。

  相关代码见本刊网站www.mesnet.com.cn——编者注。

5  总结

  使用LPC2101 ARM7内核开发无刷电机控制系统,代码精简,控制系统可靠。经过长时间实际测量证明,系统相关器件的选型设计是稳定的。另外,目前增强型51系列微处理器的价格、性能与LPC21系列相比较,LPC21系列功耗低, 价格与普通8位机价格差不多,但是性能却比增强型51系列好。比如,带Modem的双串口,双I2C接口,带大容量的Flash和RAM存储区,多通道PWM,多个32位定时器,高精度10位A/D转换器等。因此,从芯片设计和系统设计上,该无刷电机产品有一定的推广价值。

按此在新窗口浏览图片
图12  状态流程


推荐阅读

史海拾趣

Alliance Memory公司的发展小趣事

Alliance Memory是一家专注于存储器产品的公司,以下是其发展历程的五个相关故事:

  1. 成立与发展初期: Alliance Memory成立于2006年,总部位于美国南卡罗来纳州。公司专注于提供DRAM(动态随机存取存储器)和SRAM(静态随机存取存储器)解决方案。在成立之初,公司致力于与全球供应链建立紧密的合作关系,以确保产品的质量和可靠性。通过与先进制造厂商合作,Alliance Memory能够提供高品质的存储器产品,满足客户的需求。

  2. 扩大产品线: 随着市场需求的增长,Alliance Memory不断扩大其产品线,涵盖各种容量和类型的DRAM和SRAM产品。公司不断改进和优化其制造工艺,并与全球领先的技术合作伙伴密切合作,以确保产品的性能和稳定性。通过不断提供新的存储器解决方案,Alliance Memory成功吸引了更多的客户,并在行业中树立了良好的声誉。

  3. 全球市场拓展: Alliance Memory的产品销售遍布全球各个地区,包括美国、欧洲、亚洲等市场。公司与全球各地的分销商和代理商建立了稳固的合作关系,以扩大其产品的市场份额。通过在全球范围内提供及时和高效的客户服务,Alliance Memory不断增强了其在国际市场上的竞争力。

  4. 技术创新与研发投入: 作为一家技术驱动型公司,Alliance Memory不断投入研发和创新,以提供最先进的存储器产品。公司的研发团队与业界领先的技术合作伙伴密切合作,不断推出具有竞争优势的新产品。通过持续的技术创新,Alliance Memory得以不断满足客户不断增长的需求,并保持在行业中的领先地位。

  5. 可持续发展与社会责任: 除了致力于业务发展,Alliance Memory还积极履行企业社会责任,关注环境保护和社会公益事业。公司采取了一系列可持续发展的举措,包括节能减排、资源循环利用等,努力降低对环境的影响。此外,Alliance Memory还参与各种公益活动,支持教育、环保和社区发展等领域的项目,为社会做出积极贡献。

台湾富晶(FORTUNE)公司的发展小趣事
根据机床的实际工作情况调整触发器的相关参数,如工作频率、触发方式等。
汇科公司的发展小趣事

随着技术的不断成熟和市场的不断拓展,苏州汇科技术股份有限公司开始在全国范围内进行产业布局。公司通过设立办事处、加强与客户的沟通合作等方式,进一步扩大了市场份额。同时,公司还积极寻求与国际知名企业的合作,共同开发新产品、新技术和新市场,为公司的未来发展奠定了坚实基础。

Dicon Fiberoptics Inc公司的发展小趣事

DiCon Fiberoptics Inc公司成立于1986年,当时的光纤通信技术正处于快速发展阶段。公司创始人凭借对行业的敏锐洞察和坚定信念,决定投身于这一领域。在创业初期,公司面临着资金紧张、技术壁垒高等诸多挑战。然而,通过不懈努力和持续创新,DiCon成功研发出了多款高性能的光纤通信产品,逐渐在市场上获得了认可。

迦美信芯(CanaanTek)公司的发展小趣事

随着智能手机市场的不断成熟和发展,手机射频前端对频段的支持、开关速度的变化以及天线调谐方向提出了更高的要求。迦美信芯紧抓这一市场机遇,早在2014年就开始布局射频前端芯片领域,专注该领域芯片的研发与设计。经过多年的努力和发展,迦美信芯已成为国内领先的手机品牌在天线开关以及天线调谐器方面的主要供应商之一,为全球TOP 5的手机终端客户提供大量优质产品。

BSI公司的发展小趣事

随着科技的不断发展,电子行业的技术创新日新月异。在这个过程中,BSI通过提供最新的技术信息和标准,为企业的技术创新提供了有力支持。BSI建立了庞大的标准数据库,涵盖了电子行业的各个领域,为企业提供了丰富的技术资源和参考依据。同时,BSI还积极参与新技术的研发和推广工作,为电子行业的创新发展提供了动力。

问答坊 | AI 解惑

推荐一份宝贝资料:挠人dB(分贝)及其它

现实中,dB这个单位非常挠人,可能许多高手也不是十分清楚。下面摘录1994年出版的《简明计量单位符号词典》(李慎安)中有关分贝的说明。但如今我不能确定其中说明的“法定计量单位”是否还有效,也就是是否符合目前的标准化要求,我不敢肯定,仅作为 ...…

查看全部问答>

15075011郑海艳

在自己没有电脑的情况下,怎么样能够更好的学习单片机?寻求解决方法.....…

查看全部问答>

基于WINDOWS CE的开放式数控系统设备驱动程序开发.pdf

基于WINDOWS CE的开放式数控系统设备驱动程序开发.pdf…

查看全部问答>

问一个计算机原理的问题?急用,在线等!!!重分!!!

问题是,虚拟存储器的工作原理,我们知道它有页式,段式,段页式!!我在段式这个不太明白,段式把若干个逻辑意义的段(如主程序,子程序,数据段等)组成,问,这些主程序,子程序,数据段,是由哪个机制进行分段,来确定段的大小,按什么依据来分段的,还有这个分段 ...…

查看全部问答>

ST-link连接问题

我使用的是st-linker,jtag连接正确,复位脚通过4K上拉电阻拉高,各电源脚电位正确。连接仿真器的时候,出现了以下问题: Fri Feb 05 10:28:02 2010: Failed to load flash loader: D:\\Program Files\\IAR Systems\\Embedded Workbench 5.4\ ...…

查看全部问答>

fpga处理方面的应用

求教一个问题:用fpga能够实现对低频噪声的检测吗?也就是对无规则、低频,10hz~1k hz的检测,并实现频谱和功率谱的处理和分析,,,处理后可以用上位机进行显示吗?…

查看全部问答>

寻找一种空间定位传感器

我们公司现在在做一个测试,就是要把传感器固定在人的身上,比如说固定在手上、肘部、肩部,这样人体活动的时候,传感器就能记录下这几个位置的空间坐标,找了很久都没找到。 多谢各位大侠了。…

查看全部问答>

Z-stack中,添加MAC地址过滤

大家在用z-stack做应用产品,特别是消费电子产品时,在组网时会很头疼。 通常大家的做法是在程序里设置PANID和信道,来让产品实现组网。比如你卖了1个协调器,10个节点给客户,你要在程序里,把他们的PANID设置好,再发过去。如果客户需要增加一个 ...…

查看全部问答>

【TI首届低功耗设计大赛】空气质量检测_初步完成视频

好吧,闲不住,周末花了点时间搞了下,今天添加了两个AT指令AT+RTCS=--------用于RTC的校准和查询 AT+FRAM=--------用于PM2.5数据的FRAM-LOG日志,支持2880条带时间戳的日志,每隔30s存储一次 录制了一个视频,挺清楚的,大家感兴趣的可以看一下 ...…

查看全部问答>