毕业设计(论文)-基于ARM的直流无刷电动机的驱动器设计.doc_第1页
毕业设计(论文)-基于ARM的直流无刷电动机的驱动器设计.doc_第2页
毕业设计(论文)-基于ARM的直流无刷电动机的驱动器设计.doc_第3页
毕业设计(论文)-基于ARM的直流无刷电动机的驱动器设计.doc_第4页
毕业设计(论文)-基于ARM的直流无刷电动机的驱动器设计.doc_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京工程学院自动化学院本科毕业设计(论文)题目:基于ARM的直流无刷电动机的驱动器设计专 业: 自 动 化 班 级: 自动化102 学 号:学生姓名: 指导教师: 起讫日期: 2014.22014.6 设计地点: 工程实践中心4-101 南京工程学院自动化学院本科毕业设计(论文)摘 要随着电子技术的迅速发展,无刷直流电机的应用领域不断扩大,其具备一般电机的全部优点,同时又取消了碳刷结构,已然成为21世纪最有发展前景的新型电机之一。现如今,由于电机控制要求不断提高,使用普通单片机控制器已经不能达到更高的要求。然而,ARM技术凭借其强大的运算处理能力,为复杂的控制、完成控制精度等技术指标以及机电一体化设计提供了强有力的支持。而基于Cortex-M3内核的STM32微处理器在ARM器件中更具特点,本设计中采用意法半导体(ST)公司STM32F10系列中的STM32F103ZET6芯片作为主控制器。全套设计加扣 3012250582本设计包括硬件设计与软件设计。针对无刷直流电机的机械特性以及控制原理,有感无刷直流电机的驱动由电机本体、驱动电路和控制电路组成。硬件电路分别从控制电路以及功率驱动电路两个方面进行分析与设计阐述。主控硬件包括主控单元、LED和按键电路、LCD驱动电路、SD卡电路和JTAG下载仿真电路;功率驱动的硬件单元包括MOSFET换相电路、电压电流检测电路和霍尔传感器调理电路。软件设计主要包括霍尔信号的采集、PWM波控制转速、以及电压电流的ADC处理程序。经过系统联合调试,设计方案可行,电机运行正常,实现启停、正反转、调速要求。关键词:无刷直流电机;霍尔传感器;ARM/STM32;PWM;MOSFETABSTRACTWith the rapid development of electronic technology, the application field of Brushless DC motor expands unceasingly. The Brushless DC motor not only has all the advantages of the traditional motors but also cancels the graphite brush structure, which has become one of the most promising novel motors in the 21st century. Nowadays, with the increasing requirement of motor control, it cannot reach higher requirements to use normal single chip microcomputer. However, ARM technology, with its powerful processing ability, provides a strong support for finishing the complex control, the technical indexes such as control precision and electromechanical integration design. Whats more, the STM32 microprocessors based on Cortex-M3 have the distinguishing features in the ARM device, STM32F103ZET6 designed by the ST Microelectronics (ST) is used in this design as main controller chip. This design includes hardware design and software design. According to the mechanical features and control principle of the brushless DC motor, Brushless DC motor control system is composed of motor, drive circuit and control circuit. The hardware circuit is analyzed and designed respectively from two aspects of control circuit and power drive circuit in this paper. Main control hardware circuit includes main control unit, LED and buttons circuit, LCD driver circuit, SD card circuit and JTAG download and simulation circuit. Power drive hardware includes MOSFET commutation circuit, voltage and current detection circuit and hall sensor conditioning circuit. Software design mainly includes the hall signal acquisition, PWM wave to control speed, and electric current and voltage of ADC handler program. Through joint debugging of the system, the design scheme is feasible, the motor running, and realizing the start-stop, positive &negative and speed control requirements.Key words: BLDC; Hall sensor; ARM/STM32; PWM; MOSFETII目 录第一章 绪论11.1 引言11.2 无刷直流电机工作过程21.2.1 换相原理21.2.2 工作原理31.2.3 换相控制方式31.3 STM32F103ZET6选择41.4 本文结构5第二章 方案设计与论证62.1 系统整体框架设计62.2 电机参数72.3 位置传感器的选择72.4 功率驱动选择82.5调压调速策略选择82.6 PWM换相调压方案选择10第三章 系统硬件设计113.1 硬件设计框架113.2 主控板硬件设计113.2.1 STM32最小系统113.2.2 电源电路设计133.2.3 LED和按键电路设计143.2.4 LCD液晶屏电路设计143.2.5 USB串口电路设计153.2.6 JTAG下载仿真电路设计163.2.7 SD卡硬件设计163.2.8 引出I/O口173.3 功率板硬件设计173.3.1 电源电路设计173.3.2 驱动及功率电路设计183.3.3电流检测与保护电路设计193.3.4 母线电压监测电路设计203.3.5 调速功能和引出引脚功能20第四章 系统软件设计214.1 I/O功能分配214.2 软件设计框架224.3 PWM输出程序244.4 霍尔信号捕获程序254.5 ADC转换程序254.6 启停、换向功能按键程序26第五章 系统联合调试285.1 硬件调试仿真285.1.1 硬件调试285.1.2 硬件仿真285.2 软件调试305.2.1 模块调试305.2.2 软件仿真305.3 联合调试结果32第六章 结论356.1 论文总结356.2 感想36致谢37参考文献38附录A:硬件设计原理图与PCB图39附录B:软件程序清单41附件:毕业论文光盘资料南京工程学院自动化学院本科毕业设计(论文)第一章 绪 论1.1 引言无刷直流电机(Brushless Direct Current Motor, BLDCM)是一种无换向电刷机械构造而直接使用电子换向器的新式电机。无刷直流电机的这种结构使其区别于其他电机,也使其在使用中兼具直流电机与三相异步电机的特点,比如:无换向火花、紧凑精巧、能获取更高的扭矩转速特性、高速动态响应、效率高、寿命长、低噪声和易于控制维护等。因此,无刷直流电机被广泛运用于家用电器、日常生活用具、计算机、航空、自动办公设备、医学及消费电子等领域,甚至工厂自动化机器人以及许多精密电子仪器的驱动中都有其应用311。无刷直流电机最大的特征便是没有换向器和电刷构成的机械结构,其运行时无换向火花,转速也不受换向限制。但为了取代电刷和换向器,无刷直流电机驱动需要一个逆变电路(逆变器)和一个位置传感器。其中,位置传感器检测转子的位置,为逆变器驱动提供正确的通断时序。这种由位置传感器的状态控制电机换相的控制方式也称为有感无刷直流电机的驱动控制。近年来,许多专家学者提出关于带传感器的无刷直流电机控制策略以提升有感无刷直流电机的运行性能,许多关于无刷电机的研究文章也为无刷直流电机的控制奠定了理论基础。但随着技术的发展,特别是计算机技术的发展,控制的手段和方法也在不停地升级。这就使得对于无刷电机的控制核心也有很多种选型方法,有普通的C51单片机,也有高处理速度与处理精度的DSP,同时,也有基于ARM内核的各大处理器。在本设计中,主要介绍采用ARM控制的无刷电机的控制方案的选择与设计论证。目前,ARM内核微控制器凭借其优异的处理运算能力,具有性能高、耗电少、成本低,具备16/32位双指令集等众多优点,发展迅速,已然成为微控制器中的佼佼者。本设计中选用基于ARM Cortex-M3内核、意法半导体公司的STM32F103ZET6大容量芯片(以下简称STM32),该芯片集高性能、低成本、低功耗于一体,具有丰富的外围设备,适用于高性能、低功耗的嵌入式应用领域,同时它的定时器能够同时输出多至30路的脉冲宽度调制(简称PWM)信号,并且高级定时器产生的PWM信号可产生互补波形并可以配置死区时间,使得电机的调速精确,且运行速度快,同时其丰富的用于控制电机的接口满足无刷直流电机的控制需求。随着电子技术的飞速发展和对电机控制要求的日益提高,ARM内核微控制器将在电机控制领域中发挥越来越重要的作用2。1.2 无刷直流电机工作过程无刷直流电机主要由用转子(永磁材料制造)、定子(带有线圈绕组)和位置传感器组成。根据无刷直流电机的定子绕组的不同连接方式,产生的反电动势可分梯形与正弦波形两种形式。转子由28对永磁体根据S极、N极交替分列在转子四周形成,这样的形式为内转子型;若永磁体贴在转子内壁,就称为外转子型。1.2.1 换相原理如图1.1左图所示,当两边的绕组通上电流时,根据右手螺旋定则,在左边绕组右端产生N极,右边绕组左端产生S极,这样就会在两个绕组之间产生方向向右的外加磁感应强度B,而中间的转子永磁体会在外在磁感应强度下,使自身产生的磁力线方向与绕组产生的磁力线方向尽可能保持一致,形成一个最短的、紧闭的磁力线回路,这样,转子就会按顺时针方向扭转。当转子转过90时,由于自身磁力线方向与外加磁力线方向相同,此时转子虽仍受到力的作用,且受到的磁力达到最大,而此时的力臂为0,这就使得转子不受力矩作用,转子由于惯性的作用,转子还会继续旋转,越过90后,这时改变两边绕组的电流方向,如图1.1右图所示,转子就会继续顺时针转动。图1.1 换向原理图由以上分析可知,一旦转子自身磁力线方向与外加磁场磁力线方向相同时就立即改变两边绕组的电流方向,转子就会不停地转动。改变电流方向的这一机械变化就叫做换相(Commutation),同时,我们会发现换相时刻只与转子所在位置有关,而与转子的转速大小无关。1.2.2 工作原理直流供电电源电子换相电路转子位置检测无刷直流电机由换相原理可知,要使无刷直流电机连续转动,需要在转子转到特定位置进行换相,这就需要根据转子位置传感器的输出信号来确定转子的确切位置,作为换相的依据。电子换相电路再通过转子位置检测的信号不同状态来驱动电机本体使得绕组依次通电,在定子上产生旋转磁场,用以驱动转子连续转动。无刷直流电机的工作原理框图如图1.2所示。图1.2 直流无刷电机工作原理框图1.2.3 换相控制方式对于一般的BLDCM,定子绕组是相差120对称分布的,并且三相绕组按星型连接,通过转子位置传感器的信号开通或关断相应的功率器件。所以,通过控制电路控制VT1VT6 6个功率管的开关顺序,改变定子绕组的通电顺序,使电机能够不停地旋转。如图1.3所示。图1.3 无刷直流电机的控制原理框图对于BLDCM的换相电路亦称为逆变电路。当VT1、VT4导通其他器件截止时,电流从U相流入V相流出;VT1、VT6导通其余的器件截止关断时,电流从U相流入W相流出,以此类推。值得注意的是,任意时刻不能同时导通上下两个功率器件,否则会有烧坏功率管的危险。对具体的换相控制方式通常有两种:二二导通方式和三三导通方式。二二导通方式是每次只导通两个开关管工作。在图1.3中,导通顺序依次是:VT1、VT4VT1、VT6VT3、VT6VT3、VT2VT5、VT2VT5、VT4,依次循环。每隔60改变一次状态,而且每个状态只切换一个功率管,每个功率管导通120。在每组绕组导通区间都有另外一个绕组未通电,因此二二导通方式也被称为六步换相控制方式。三三导通方式是每次同时导通三个开关管工作。有:VT1、VT5、VT4VT1、VT4、VT6VT1、VT3、VT6VT3、VT6、VT2VT3、VT5、VT2VT5、VT2、VT4,共六个状态。同样,这种方式也是每隔60改变一次状态,而且每个状态只切换一个功率管,但每个功率管连续导通180。二二导通方式能够很好地利用方波的气隙磁场的平顶部分,这就使得电机产生的输出转矩比三三导通方式大,即出力大,并且转矩平滑过渡。因此,本毕业设计中采用的是二二导通方式。通常情况下,VT1VT6在低压电路中采用MOSFET器件,在高压器件中采用IGBT器件。在本设计中采用的是MOSFET,其型号为IRFR1205S。1.3 STM32F103ZET6选择目前,对无刷直流电机的控制芯片大都采用单片机DSP处理器。但是,低性能单片机虽价格便宜但性能微弱,DSP处理器存在价格高、体积大的缺陷。本毕业设计采取折中的方案,提出基于STM32F103的带位置传感器(HALL传感器,后续讨论)无刷直流电动机控制系统。STM32系列微控制器采用ARM公司设计的低功耗、低成本、高性能的嵌入式Cortex-M3内核。Cortex-M3具有更强劲的性能、更高的代码密度、位带操作、可嵌套中断等众多优势,Cortex-M3内核的芯片中,STM32必是设计开发的首选。STM32有FSMC、TIMER、ADC、DAC、RTC、USB、SPI、CAN、IIC、IIS、SDIO、DMA等众多外设及功能,具有84个中断,16个可编程优先级,具有极高的集成度。同时,STM32的性价比很高,开发成本低,调试方便,在市场上占有很大的份额。STM32时钟频率达到72MHZ,电压范围为2.03.6V,保证了工作超低的功耗,有512K字节的大容量闪存,64K RAM,足够用户使用;其144脚除了部分引脚外,用户都可以自定义使用,而且大多引脚都具有复用功能。同时,STM32拥有非常多的寄存器,ST官方提供了固件库函数,不需要直接操作寄存器而直接调用固件库函数即可实现操作寄存器。当然,要了解一些外设的原理,必须对寄存器有一定的了解。在本设计中的软件程序采用调用固件库实现。1.4 本文结构本文以无刷直流电机的驱动器的研发工程项目作为应用背景,对技术进行了研究。全文共分为六章,各章的主要内容如下:第一章简明扼要地介绍了无刷直流电机的应用背景及其发展现状,以及对无刷直流电机的特点、工作原理以及控制器的特点做了简介;第二章研究了设计方案的选择与论证,给出了各重要模块的方案分析;第三章对硬件设计进行了研究,并讨论了主控部分以及功率驱动部分的设计方法;第四章给出了控制系统的软件设计,包括PWM产生、定时器捕获以及ADC转换等等模块设计;第五章主要介绍系统的联合调试过程与思路,包括硬件仿真、软件调试以及联合调试结果。第六章内容总结全文的研究工作,给出了存在的问题和进一步研究的方向。第二章 方案设计与论证对于无刷直流电机的驱动器的设计,首先需要确定控制对象的参数,明确系统的功能要求。根据要求,进行总体方案设计,确定MCU型号,电路拓扑结构和I/O分配等等。2.1 系统整体框架设计STM32主控电路电源电路信号调理电路显示电路状态指示启停按键以及调速电位器主电源电路功率逆变桥PWM波驱动位置传感器无刷直流电机人机接口主控单元电机驱动根据功能要求,针对安装位置传感器的无刷直流电机,本设计内容包括电机启停控制、电机调速、人机界面显示、保护功能。设计系统总体方案如图2.1所示。图2.1 BLDCM控制系统总体方案框图由图2.1设计总体方案可知,系统主要包括四个部分:人机接口单元、STM32主控单元、电机驱动单元和电机本体。其中,人机接口单元主要包括指示灯、按键、液晶屏电路以及电位器等部分。这些作为人机交互接口,指示灯显示系统的工作状态;按键实现电机的启停、变向功能;液晶屏显示速度值等一些辅助信息;电位器则用来根据电位器的值来进行实时调节无刷直流电机的速度。主控单元中STM32F103ZET6及其基本的外围电路是控制板的核心。主控芯片通过I/O口进行基本的人机交互,通过定时器的PWM输出功能以及输入捕获功能实现与驱动单元的交互。同时通过获取位置传感器的信号并进行信号调理来实现电机的换相。电机驱动单元由主电源电路、MOSFET逆变电路、驱动模块以及位置传感器信号电路几个部分组成。如前所述,驱动模块接收MCU的PWM波信号驱动6个功率开关管,给电机三相施加正确的线电压,以实现电机的运转。2.2 电机参数本设计中采用的是日本进口的NR901系列无刷直流电机,普遍用于磁盘驱动、电子产品领域,由于其体积小,工作电压小,具有易于携带与试验安全的特点,特别适用于进行调试与试验。主要参数如下:极对数:6;额定工作电压:12 V;额定电流:0.55 A;空载电流:0.15 A;最大空载转速:9550 r/min(转/分);带120霍尔传感器(HALL),HALL由5V电压供电。具体参数见表2.1。表2.1 无刷直流电机详细参数表型号电压/V空载最大效率点起动范围额定值转速电流转速电流转矩功率转矩电流RPMARPMAg.cm mN .mWg.cmmN .mANR901JTDR00110.8-13.21295000.15873840.55329.862.922.2613413.11.932.3 位置传感器的选择如前所述,转子位置传感器是无刷直流电机换相的重要依据。虽然现在有很多利用反电动势检测技术计算转子的位置,但位置传感器可以为换相电路及时准确的提供转子位置,不会增加硬件电路以及软件电路的复杂度。因此本设计中采用带位置传感器的驱动器设计。常见的转子位置传感器有电磁式、光电式、磁敏式这几种。在此讨论方案的选择。方案一:电磁式位置传感器为开口变压器、接近开关电路等。这类传感器输出信号大、寿命长、抗干扰能力强、工作可靠,但这种传感器体积大、信噪比低,同时输出信号为交流信号,一般需经整流滤波才再进行使用,电路复杂。方案二:光电编码器是常见的光电式位置传感器,绝对式、增量式以及复合式为常见三大类。它工作的原理为光电效应,通过固定的光源和固定在电机转子并跟随转子一起旋转的遮光部分等部件组成。一般的光电编码器定位精度高,但对恶劣环境的适应能力较差,抗干扰能力不强。方案三:旋转变压器一般用在多相电机的控制中,它可以输出多路位置信号,满足多相电机控制的要求。但价格较昂贵,安装不易,普通的控制很少用旋转变压器。方案四:磁敏式位置传感器类型有磁敏二极管、磁敏电阻和霍尔元件等。它对环境适应能力较强、成本低廉、输出信号好,相对其他位置传感器精度不高。经比较,方案三不适用于普通的无刷直流电机;方案一的信号需要复杂的硬件电路,而且体积较大,不适用于本设计所选择的电机;价格上相比方案二中的光电编码器比霍尔传感器较贵,同时抗干扰性差,而霍尔传感器体积小,安装方便,输出信号不需经过模数转换而可以直接送入STM32处理。由分析综合比较,选择较为常用的开关型霍尔传感器作为本设计的位置传感器,并以120安装,其供电电压为5V。2.4 功率驱动选择作为驱动器的核心,6个MOSFET场效应管及驱动构成驱动器主体模块。也称作三相桥式逆变电路。对功率驱动电路的设计直接关系到整个系统的性能。一般会有如下方案:方案一:采用专用的无刷直流电机驱动模块,此模块一般集成功率、驱动电路以及保护电路于一体,这种模块的可靠性高,适用于高电压、大功率的场合,但成本较高。方案二:6个功率器件均为N沟道MOS管,其驱动电路由专用驱动芯片构建。上桥臂通过独立电源驱动或者由自举升压电路驱动。由于MOSFET技术成熟,可以选择的方案较多,而且设计的电路应用范围宽,适用于各种电压与功率的电路中。方案三:下桥臂采用N沟道MOS管,但上桥臂采用P沟道MOS管。驱动电路由分立元件搭建。虽然这种电路不需要特别的方式驱动,但分立元件搭建较为复杂,同时P-MOS管由于制造工艺原因价格相对较高。通过比较,很明显方案二在性价比上以及适用范围上都占有很大的优势。本设计采用专用MOS驱动芯片IR2103驱动6个型号为IRFR1205 N-MOS管。2.5调压调速策略选择在忽略电枢电阻以及功率开关管压降时,无刷直流电机的转速只与电枢电压与磁场强度有关,故无刷直流电机可以通过调压与弱磁两种方式调速。其中,调压调速适用于恒转矩负载基速范围内调速,并且易于实现、方法简单,得到广泛应用。对无刷直流电机的调压调速方案有:晶闸管移相调压调速、直流到直流(DC/DC)调压调速、脉宽调制PWM调压调速。方案一:晶闸管移相调压适用于交流电供电系统,经过整流电路获得直流母线电压,如图2.2所示。在此电路中采用晶闸管构成整流桥,利用调相的方法来调节直流母线电压的大小。此控制方法适用于对系统的动态性能要求不高的应用场合。图2.2 晶闸管移相调压示意图直流电源DC/DC变换器换相电路无刷直流电机HALL传感器方案二:DC/DC变换器调压适用于直流电供电的方案,如图2.3所示,直流供电电源通过变换器调节电压的值,即电枢电压的值,换相电路适时切换通电绕组使电机旋转,达到BLDCM的调速作用。图2.3 DC/DC变换器调压调速示意图功率晶体管就是常见的DC/DC变换器,实际应用时将其串接在直流母线上,晶体管工作在放大状态使得控制器的电压连续变化。此电路虽然简单但系统功率低、在功率晶体管上的损耗较大,通常只适用于小功率的控制系统。方案三:对脉宽调制技术,即PWM技术,适用于直流电供电系统。对PWM调速系统中,一个重要的参数为PWM波的占空比,如图2.4所示的PWM波形:图2.4 电枢电压占空比图 (2-1)其中,t1表示一个周期T内高电平的时间,t2表示低电平的时间。用PWM波驱动逆变电路的功率开关管,电枢两端电压的平均值取决于占空比的大小,从而通过改变的值可以达到调速的目的。实际应用时,一般都保持频率不变,改变占空比,这也叫做定频调宽方式。对于以上三种方案,很显然方案一对交流电系统适用,方案二中系统利用效率低,而方案三是最常用的方式,同时STM32定时器可以产生多路PWM,使用起来非常方便,因此采用PWM调压方式。2.6 PWM换相调压方案选择2.5节讨论了调压方式的选择,但对于功率逆变桥电路的6个功率管并非都需要PWM模式驱动。二二导通方式下可采用一个开关管工作在PWM方式下调压,另一个处于常开状态,这样既起到调压调速的目的,又降低了开关损耗。常见的PWM换相调压策略见图2.5。图2.5 常见PWM换相调压模式图2.5中,(a)为上管常通、下管PWM方式调压,称为H_ON-L_PWM模式;(b)为下管常通、上管PWM方式调压,称为H_PWM-L_ON模式;(c)中任意时刻工作的两个功率管都用PWM波驱动,称为H_PWM-L_PWM模式6。本设计采用(b)中所示的H_PWM-L_ON模式,这样可以减少开关损耗。同时,通常采用的调制频率在130KHZ之间选择,这样电机电流接近连续,运行波动较小。本设计采用的频率为8KHZ。第三章 系统硬件设计由第二章描述可知,进行一个完整的BLDC驱动控制设计,需要设计具体的设计方案,本章对选择的方案从硬件电路上设计完成整个系统。各个电路的设计都从工程实际考虑,作了较细致的分析。3.1 硬件设计框架图2.1中已经介绍,系统主要包括四个部分:人机接口单元、STM32主控单元、电机驱动单元和电机本体。而对于这些功能,人机接口(LED、LCD、按键)与STM32主控单元构成主控板硬件,电机驱动与信号接收处理电路构成功率板硬件,两个硬件通过引出引脚相连,同时功率板引出线与电机相连接。3.2 主控板硬件设计主控板以STM32F103ZET6为中心,具有电源、时钟电路、按键、指示灯、液晶屏、JTAG下载仿真接口、SD卡电路等模块,并部分引脚引出与功率板连接。3.2.1 STM32最小系统要使主控板能够正常工作,STM32的最小系统是不可或缺的。最小系统包括时钟、启动模式、复位等部分。只有具备这些模块系统才能够正常工作。对STM32的时钟系统,有3个不同时钟源可用来驱动系统的时钟(SYSCLK),分别为HSI振荡器时钟、HSE振荡器时钟和PLL时钟。HSE振荡器为高速外部时钟,本设计采用8MHZ频率的晶振;LSE晶体为实时时钟或者其他定时功能提供一个低功耗且精准的时钟源,是一个振荡频率为32.768kHZ的晶振;STM32内部的PLL可倍频HSI RC或HSE晶体输出时钟。时钟源设计选择如图3.1所示。图3.1 STM32时钟系统设计STM32的选择启动模式电路设计如图3.2所示。图3.2 BOOT选择电路通过设置STM32的BOOT0与BOOT1引脚可以设置STM32的不同启动模式,对应启动模式以及说明见表3.1,通常情况下我们只设置BOOT0=0、BOOT1=0,用于FLASH启动程序。表3.1 STM32启动模式启动模式选择引脚启动模式备注BOOT0BOOT10X主闪存存储器FLASH启动10系统存储器用于串口下载11内置SRAM用于在SRAM中调试代码对STM32最小系统的复位电路如图3.3所示。图3.3 复位电路由于STM32是低电平复位的,因此设计复位电路也是低电平复位,这里的R5和C19构成了上电复位电路。同时,把用于TFT_LCD液晶屏复位的RST引脚也接在RESET上。当按下复位按钮后,不但复位MCU,也复位LCD。3.2.2 电源电路设计STM32的实际工作电压(VDD)可为2.03.6V,经过内置调压器转换1.8V电源。当主电源VDD掉电后,后备电池CR1220为备份寄存器和实时时钟(RTC)供电。如图3.4所示,设计VDD电压时需要11个100nF和1个4.7uF的瓷片电容,且设计时使用VDD电压为3.3V;对144脚的芯片的ADC,为保证更高的精度,需要在STM32的VREF+和VREF-脚上加一个独立的外部参考电压VDDA。VREF+的参考电压范围为2.4VVDDA。设计中使用VDDA=3.3V。图3.4 STM32供电方案框图设计的原理图如图3.5所示。在图中,K1为自锁开关,控制整个功率板的通电情况;F1为500mA的自恢复保险丝,用来保护电源电路,防止因电流过大而烧坏MCU;VUSB引脚由外部供电5V电压,连接计算机的USB口就可以直接使用5V电压,方便调试;5V电压经过电压转换芯片AMS1117转换成3.3V电压给MCU供电,其中C31、C32起到稳压滤波作用。如前所述,设计时还增加了3V纽扣电池(CR1220)作为后备电池。其中,当由外部供电时,二极管D1截止、D2导通给VBAT引脚供电;外部断电时,D1导通使得后备电池给VBAT引脚供电。另外,USB供电在后面描述。图3.5 主控板电源电路3.2.3 LED和按键电路设计对于一个系统的设计,肯定会包含LED、按键这些必要的人机接口。如图3.6所示,PWR_BLUE为电源指示灯,为蓝色;LED0与LED1为系统状态指示灯,用于显示系统的工作状态,同时可以用于测试程序与硬件调试,是显示信息的关键,分别接在STM32的PE.2与PE.3接口上。一般的发光二极管驱动电流为5mA20mA,故有下式: (3-1)因此本设计选择R23、R24、R25为510。KEY0KEY2用作普通的按键输入,分别接在STM32的PE.4PE.6引脚上,作为电机的启停与换向按钮功能按钮。这里,使用按键时设置STM32的I/O口为上拉输入(GPIO_Mode_IPU)为按键提供上拉,使得低电平时按键有效。图3.6 LED与按键电路原理图3.2.4 LCD液晶屏电路设计本设计采用的TFT_LCD为2.8寸TFT_LCD触摸屏,由ALIENTEK开源电子网设计,是一个通用的液晶模块接口。如图3.7所示,TFT_LCD模块接在STM32F103ZET6的FSMC(灵活的静态存储器控制器)上,能够提升LCD刷屏速率。图3.7 LCD液晶屏电路设计图中LCD_BL控制LCD的背光。如前所述,TFT_LCD液晶屏复位信号RST接在RESET上,共用一个复位电路。3.2.5 USB串口电路设计本设计加入USB串口电路,既可以为主控电路供电,同时也可以进行串口通信,为调试程序提供了极大的方便。图3.8 USB串口电路如图3.8所示,USB_232为mini USB座,与电脑或者5V电源接口连接,并经过USB转串口芯片CH340G与MCU的串口进行通讯。3.2.6 JTAG下载仿真电路设计JTAG作为一个专用ARM仿真器,用于硬件调试具有很大的实用性,它既可以进行单步硬件仿真,测试程序功能,同时能够下载程序到MCU中,非常方便。如图3.9所示为标准20针JTAG/SWD接口电路,然而,使用JTAG会大量占用MCU的I/O口,然而,STM32带有SWD模式,与JTAG接口公用,只需要SWCLK和SWDIO两根线就能进行代码下载与调试,使用SWD模式不仅节省I/O口,而且速度非常快。本设计采用JLINK V8仿真器,使用时在软件修改部分设置就可以使用SWD模式。图3.9 JTAG下载仿真接口3.2.7 SD卡硬件设计SD卡支持两种通讯模式,分别为SDIO驱动模式和SPI模式。SPI驱动方式比较简单,SDIO传输的速率比较快,但驱动方式比较复杂。SPI模式可达到18Mbps高通信速度,达到2M字节/秒以上,能够达到一般的控制要求。在本设计中对SD卡的读写没有特殊要求,非常适合采用SPI模式。需要注意的是,SD卡只能使用3.3V的IO电平,恰好STM32的工作电压3.3V,完全兼容。同时,在SPI模式下,所用的CS/MOSI/CLK/MISO四个引脚需有10100K左右的上拉电阻,本设计选用47K的电阻,如图3.10所示。图3.10 SD卡电路3.2.8 引出I/O口对于主控系统的设计,需要与功率板之间进行信号交换,就需要引出相应的I/O口,进行定义并完成相应的功能,才能设计具体的电路与程序。引脚定义主要包括6路PWM、霍尔信号(HALL)捕获、调速(VbADC)、母线电压(RWADC)、紧急停车(BKIN)等信号接口,具体见表4.1。3.3 功率板硬件设计由于控制对象的参数以及控制板的要求,驱动系统的设计应以安全为原则,主要包含电源电路、驱动及功率电路、母线电压采集电路、电流监测和保护电路、霍尔信号调理电路和引出接口电路等。其中,所选用的NR901系列电机集成了120霍尔传感器,因此功率板上不再添加此硬件电路。3.3.1 电源电路设计对于功率板,为DC 12V输入电源。对设计的电机、驱动芯片IR2103、运算放大器LM358都采用12V的供电电压,同时需要给霍尔传感器5V电源供电,因此设计中采用开关电源,+12V、-12V、+5V和GND四路集成。并且系统工作时有电源指示灯,见图3.11。图3.11 功率板电源电路3.3.2 驱动及功率电路设计功率驱动电路是功率板设计的重心,由6个MOSFET功率开关管以及驱动构成三相全桥逆变电路。对于此电路的方案设计,第二章第2.4节已经讨论分析过,采用专用驱动与6个N-MOS功率管的结构实现。对于设计采用的驱动芯片为IR2103芯片,工作电压高达600V,栅极驱动电压范围为1020V,并且能够与3.3V、5V和15V电压逻辑兼容。其真值表见下表。表3.2 IR2103输入输出真值表输入输出HINHOLO0001010010001110由表3.2可知,引脚低电平有效,控制LO输出;HIN引脚高电平有效,控制HO输出。当HIN和都有效时不输出,可以起到保护的作用。设计的W相驱动及功率电路如图3.12所示。图3.12 W相驱动及功率电路图由图3.12看出,由于STM32输出电压3.3V与IR2103兼容,默认为高电平。当WH高电平信号到来时,HO输出高电平导通上管;当WL低电平信号到来时,LO输出高电平导通下管。其中,C38为自举升压电容,抬高高压侧浮动电压,确保上管能够导通;R45、R47电阻接在栅极与源极之间,为场效应管提供偏置电压,同时,场效应管的G-S极有很大的电阻,极少量静电就会使得栅源极间的等效电容两端出现极高的电压,这样G-S极间需通过电阻泻放静电,防止G-S极间的高压会使MOSFET产生误动作、击穿G-S极,从而起到了保护场效应管的作用。本设计中电阻取值为22k。本设计中采用的N-MOS管型号为IRFR1205,具有先进工艺技术、快速开关时间等特点,基本规格为:TO-252封装形式,VDSS=55V,ID= 41A,导通电阻RDS(on)= 0.027。另外两相的驱动电路驱动原理与W相相同,不再赘述。3.3.3电流检测与保护电路设计作为电机控制的重要环节,电监测保护的设计是重要的设计部分。在本设计中,采用集成两路运算放大器LM358芯片完成相应功能设计,具体电路如图3.13所示。在图3.12中,电机的电流通过检流电阻(R50)到地,通常R50的值很小,在1内,可以避免电阻上消耗的功率以及发热问题。得到检测电阻上的电压降就得到电机的工作电流,同时得到的电压值很小,经放大电路放大电压后再输入到STM32的ADC转换接口。图3.13 电流检测与保护电路对于图3.13中的U8A及其电容电阻可以看成同相加法电路,起到电压放大的作用。如式3-1: (3-1)代入R31=10k,R32=68k,可得,即电压约被放大8倍。对于U8B主要起到电压比较器的作用,用作过流保护。其中,R49为10K的精调电位器,用于调节过流保护的电压比较器的极限值。3.3.4 母线电压监测电路设计一般电机驱动的母线电压都比较高,不可以直接输入到STM32的ADC接口,因此需要设计分压电路,如图3.14所示,R34和R35构成母线分压,约为3.16V, C45电容滤波,D7二极管限幅,防止电压过大,损坏MCU。图3.14 母线电压监测电路3.3.5 调速功能和引出引脚功能实现电机的调速功能,使用10K的精调电位器,调压范围为03.3V,但STM32的ADC电压范围为2.43.3V,因此调压的时候需要注意。如图3.15的最左图所示。对于引出接口,分为与电机的连接口和与主控板的连接口两个部分。其中,P4、P5是电机的连接口,P4为输出的U、V、W三相,P5为霍尔传感器的接口,A、B、C三个信号端加上51的电阻进行信号调理,再输入到STM32的定时器接口,其中TIM4定时器兼容5V。P6、P7引出脚与STM32主控板相连接。图3.15 调速功能和引出引脚功能接口对于具体的I/O引出功能分配,见表4.1。第四章 系统软件设计使用STM32F103ZET6控制核心,其强大的外设功能不仅简化了硬件设计,同时也增大了控制策略的灵活性。精确优良的软件设计也是本课题设计的一个重要环节。采用模块化的设计思想,对于每个硬件以及功能都采用单独的子程序,方便调用与修改。主要包括PWM、HALL、ADC、RTC、LED、KEY、LCD和SD子程序。同时,使用STM32官方提供的固件库编程,通俗易懂,易于实现。4.1 I/O功能分配对于电机的驱动控制的重点是分配每个使用端口的功能,根据系统的框架设计,详细的I/O功能分配见表4.1。表4.1 I/O功能分配表MCU端口功能分配功能定义说明PE2LED0状态指示灯低电平有效PE3LED1状态指示灯低电平有效PE4KEY0电机启停按键低电平有效PE5KEY1电机方向切换低电平有效PA0UHPWM驱动U相上桥臂高电平有效PA1VHPWM驱动V相上桥臂高电平有效PA2WHPWM驱动W相上桥臂高电平有效PA3UL驱动U相下桥臂低电平有效PA4VL驱动V相下桥臂低电平有效PA5WL驱动W相下桥臂低电平有效PB6TIM4 CH1捕获电机HALLA接功率板,兼容5VPB7TIM4 CH2捕获电机HALLB接功率板,兼容5VPB8TIM4 CH3捕获电机HALLC接功率板,兼容5VPA6VbADC电机调速用ADC1通道6PA7RWADC母线电压监测用ADC1通道7PC0BKIN电机电流采集用ADC1通道10对上述引脚功能的程序设计中,定时器及其中断功能的运用在程序中占有很大的比重,PWM波的发生和霍尔状态的捕获分别使用定时器的PWM输出和输入捕获功能。其他诸如LCD液晶屏(FSMC)以及SD卡接口直接与MCU相连,不再详细描述。4.2 软件设计框架对于STM32的模块化程序设计,若采用单独的主程序处理显示、PWM波驱动和循环扫描HALL信号会浪费MCU的处理时间,同时会使得HALL状态改变时电机不能及时换相,使得电机转动不平稳。禁止PWM输出开始初始化显示Start_Flag=1?ADC处理调速换向按键?启动PWM输出换向YYNNYYN因此,本方案采用主程序与中断服务程序的模块思路进行设计软件。主程序框图如下图所示。图4.1 主程序原理框图上图中,主程序开始执行时,先进行外部变量以及LED、LCD、RTC、ADC等模块程序的初始化,然后进入主循环,在循环里执行显示程序,并判断启停按键以及换向按键的状态,一旦启停按键按下,启停变量Start_Flag取反,进行PWM输出,同时根据HALL状态的改变进入中断处理程序。同时,ADC采集电位器电压,处理进行调速。之前讨论过,一旦主函数中处理的程序过多,采用扫描的方式进行HALL换相时电机运转不及时,存在断断续续、不连续旋转的问题。本设计采用HALL状态变化时就及时进入中断进行处理换相,经实践证明,电机运行流畅。中断处理程序大致流程图如下图所示。上升沿捕获进入中断读HALL状态下降沿捕获高电平?计算换相步序值换相清除中断标志位返回主程序YN图4.2 中断换相程序流程图如上图所示,在电机霍尔信号状态改变时,进入定时器中断函数,在中断程序中根据HALLA、B、C不同的状态得到换相步序值bHallStartStep(bHallStep为二维数组,包括电机正反转的换相步序),并根据霍尔信号的高低电平进行设置上升沿、下降沿捕获模式;完成这些后进入换相子程序,根据换相步序打开相应的功率管,同时清除中断标志位,为下次中断事件做准备。4.3 PWM输出程序除了TIM6和TIM7定时器,STM32的其他的定时器都可输出PWM。本设计采用定时器TIM5的通道1、2、3产生三路由由寄存器TIMx_CCRx控制占空比、寄存器TIMx_ARR控制频率的PWM波形。本设计采用PWM边沿对齐模式,并工作在模式1下,向上计数。在PWM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论