微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 工业电子 > ARM LPC2101的无刷直流电机控制方案

ARM LPC2101的无刷直流电机控制方案

时间:12-06 来源:互联网 点击:
3.3 MOSFET选择

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


                                                图6 SO669(LFPAK)封装

3.4 MOSFET驱动选择

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


                                             图7 简化的MOSFETMOSFET全桥和半桥驱动电路

3.5 速度控制和方向控制

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

                                                               

                                           图8 电位器模拟速度输入和方向

4 硬件与软件设计

4.1 硬件设计

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



                                                    图9 控制部分电路原理

                                                         

                                                  图10 电源和电机部分电路原理

4.2 软件设计

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



                                                       图11 主程序流程



                                                       图12 状态流程

LPC2101配置使用Keil ARM开发环境中标准的启动代码,设定CCLK时钟为60 MHz,PCLK时钟为15MHz。相关测试代码包括

main.c,adc.c,timer0.c,motor.c,uart.c,bcd.h等。

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

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

网站地图

Top