基于ARM的直流电机调速系统的研究.docx
- 文档编号:7300902
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:33
- 大小:310.43KB
基于ARM的直流电机调速系统的研究.docx
《基于ARM的直流电机调速系统的研究.docx》由会员分享,可在线阅读,更多相关《基于ARM的直流电机调速系统的研究.docx(33页珍藏版)》请在冰豆网上搜索。
基于ARM的直流电机调速系统的研究
目录
摘要………………………………………………………………………..2
概述………………………………………………………………………..2
1.嵌入式和电机调速原理简介.……………………..…………….……..3
1.1嵌入式系统简介…………………………………………..……………3
1.1.1嵌入式系统定义……………………………………………………3
1.1.2国内外嵌入式系统的发展现状………………………………………3
1.1.3嵌入式系统的特点……………………………………………….…4
1.2PWM脉冲宽度调制简介……………………………………...………5
2.系统总体方案设计.………………….……………..…………….……..5
2.1方案论证…………………………………………………………………………..5
2.1.1系统方案……………………………………………………………………...5
2.1.2方案比较……………………………………………………………………...6
2.2系统基本原理……………………………………………………………………..6
2.2.1S3C2410的PWM定时器概述……………………………………………...6
2.2.2S3C2410的寄存器介绍……………………………………………………...8
2.2.3直流电机驱动芯片介绍……………………………………………………..10
2.3系统方案实现……………………………………………………………………..11
3.系统软硬件实现.……………………..…………….………………….12
3.1系统硬件电路设计……………………………………………………………..12
3.2系统软件设计…………………………………………………………………..15
4.心得体会.……………………..…………….…………………………...24
摘要
本论文主要研究了采用基于ARM嵌入式的直流电机调速的问题。
首先对本论文的主要器件和原理进行了介绍,包括ARM微处理器,直流电机和PWM脉冲宽度调制。
通过不同方案的对比,选择了本论文的主要技术方案为PWM脉冲宽度调制并对该方案进行了逐步验证。
通过proteus软件进行了硬件电路的设计和软件程序的编写,实现了对直流电机速度控制,正传,反转的目的,并进行了电路仿真,最终得到了理想的效果。
论文的最后对这次的研究进行了深刻的总结和反思,总结了本次研究得到的经验,并对研究方案的不足之处进行了反思和改进,使得该方案更加完美。
概述
随着我国国民经济的快速增长,产业结构也随之不断调整。
先进的科学技术的出现为我国工业的快速发展提供了基础。
近些年来,以计算机技术,通讯技术、消费电子技术为主的电子信息技术的高速发展和国际互联网络(Internet)的广泛应用已经改变了人们的生活方式,世界各国都在为发展以计算机技术,通讯技术、消费电子技术为主要内容的信息产业制定宏伟的发展规划,以期望在21世纪的政治、经济和技术竞争中处于主动有利的地位。
信息技术对其他各产业的贡献越来越大,信息产业正逐渐成为其他产业的支柱。
信息产业的发展程度、信息流通、畅通与否已成为评价各个国家的经济发展水平的一个重要标准。
在人类步入全球信息化社会的进程中,全球性电子信息技术正在发挥着巨大的作用。
嵌入式系统是近年来发展最快的技术之一。
嵌入式系统与传统的单片机系统和PC平台相比,融合了两者的优点,既有单片机系统成本低、体积小、功耗低的特点,又具有PC平台的开发环境好、资源丰富、具备操作系统、用户界面友好的特点,因而在应用技术领域就有良好的发展前景。
以32位的ARM芯片和高速大容量FPGA为核心的嵌入式系统不但充分发挥了以上特点,而且大大简化了系统设计,提高了集成度和可靠性。
国家的发展,使得大到工厂企业,小到电子产品都需要电机来进行各种运动的控制,对电机速度的控制也称为了现代数字控制的一大课题。
科技发展至今,主要采用对输入电压的控制来进行电机的控制,而输入电压的控制又广泛采用PWM脉冲宽度调制来实现对电压大小的控制。
ARM嵌入式可直接输出PWM波,通过编程对该波进行占空比和频率的调节,相比电路和单片机实现的PWM波而言,ARM嵌入式具有更好的灵活性,高效率性,精度高,快速响应好,成本低,功耗小等特点,具有很好的应用前景。
1.嵌入式和电机调速原理简介
1.1嵌入式系统简介
1.1.1嵌入式系统定义
国际电气和电子工程师协会(IEEE)对嵌入式系统的定义为:
“用于控制、监视或者辅助操作机器、设备和工厂的装置。
”(devicesusedtocontrol,monitororassisttheoperationofequipment,machineryorplants)。
这里主要是从应用上进行定义的。
国内的一些学者和专家讲嵌入式系统定义为:
“嵌入到对象体系中的专用计算机系统”。
“嵌入性”、“专用型”与“计算机系统”是嵌入式系统的3个基本要素,对象系统则是嵌入式系统所嵌入的宿主系统。
目前国内一个普遍被认同的定义是:
嵌入式系统是以应用为中心,以计算机技术为基础,软、硬件可裁减,满足应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
由于嵌入式系统本身是一个相对模糊的定义,一个手持的MP3和一个PC104的微型工业控制计算机都可以认为是嵌入式系统,因此只要是和具体产品结合在一起并具有嵌入式特点的控制系统都可以成为嵌入式系统。
目前通常把嵌入式系统概念的重心放在“系统”上,及指能够运行稳定系统的软硬件综合体。
总体上嵌入式系统可以分成硬件和软件2部分:
硬件一般由嵌入式微处理器、存储器和外围接口电路组成;软件一般由引导装载程序、操作系统和上层应用程序组成。
软件和硬件之间有中间层。
1.1.2国内外嵌入式系统的发展现状
随着信息化、智能化、网络化的发展,嵌入式系统技术也将获得广阔的发展空间。
以8位单片机(或微控制器,MCU)为核心的嵌入式系统早以广泛应用与各个领域,这些应用大多数还处于单机使用的嵌入式底层次阶段。
其特点是以MCU为核心,与一些简单的传感器及监测、伺服控制、指示和显示等设备配合,实现一定的测量、显示、信息处理及控制等功能。
虽然在一些工业控制、汽车电子和智能家居等多机应用中,为了实现多个MCU构成的系统间的信息交流,通常是利用CAN、RS-232和RS-485等总线将MCU组网。
但这种应用空间有限,相关的通信协议也比较单一,并且孤立于Internet之外。
Internet已成为社会重要的基础信息设施,嵌入式系统必将要与Internet完美结合。
随着嵌入式设备与Internet的结合,手机、PDA、路由器和调制解调器等复杂的高端应用对嵌入式处理器的性能提出了更高的要求。
虽然以8位单片机为核心的嵌入式技术的不断发展,性能也不断提高,但由于其性能的局限性,已无法满足未来高性能嵌入式技术的发展需求。
目前在8位单片机上运行嵌入式操作系统尚有一定困难,因此,以32位处理器作为高性能嵌入式系统开发的核心已是嵌入式技术发展的必然趋势。
嵌入式微处理器具有体积小、重量轻、成本低和可靠性高的优点,是嵌入式系统的核心。
目前比较有影响的32位嵌入式处理器有ARM公司的ARM,Compaq公司的Alpha、HP公司的PA-RISC、IBM公司的PowerPC、MIPS公司的MIPS和Sun公司的Sparc等。
而ARM处理器具有高性能、低功耗和低成本等显著优点,已成为高性能、低功耗嵌入式微处理器的代名词,是目前32位、64位嵌入式处理器中应用最为广泛的一个系列。
ARM微处理器得到了众多半导体厂家和整机厂家的大力支持,全球有100多家IT公司在采用ARM技术,20家最大的半导体厂家有19家是ARM的用户,包括TI、PHILIPS和Intel等公司。
优良的性能和准确的市场定位极大地丰富了ARM资源,加速了基于ARM核的面向各种应用系统芯片的开发应用。
如今,ARM公司已经成为业界的龙头老大,几乎所有的手机、移动设备、PDA都是用基于ARM核的系统芯片开发的。
为了顺应当今世界技术革新的潮流,了解、学习和掌握高性能嵌入式技术已经非常重要。
1.1.3嵌入式系统的特点
嵌入式系统是面向应用的专用计算机系统。
嵌入式系统最典型的特点是与人们的日常生活紧密相关,现在每一个人都拥有形形色色运用了嵌入式技术的电子产品,小到MP3、PDA等卫星数字化设备,达到信息家电、智能电器、车载GIS等,各种新型嵌入式设备在数量上已经远远超过了通用计算机。
1.嵌入式系统通常是面向特定应用的软硬件结合体。
嵌入式系统一般用于特定的场合,其硬件和软件都务须高效,量体裁衣,去除冗余;而计算机则是一个通用的计算机平台。
2.系统精简,关注成本。
嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面有利于控制系统成本,同时也有利于实现系统安全。
3.嵌入式系统有实时性和可靠性的要求。
高实时性的操作系统软件是嵌入式区按键的基本要求,而且软件要求固态存储,以提高速度。
软件代码要求高可靠性和实时性。
在多任务嵌入式系统中,对重要性各不相同的任务进行统筹兼顾的合理调度是保证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的,因此系统渐渐地高实时性是基本要求。
4.产品升级换代和具体产品同步,具有较长的生命周期。
嵌入式系统和具体应用有机地结合在一起,他的升级换代也和具体产品同步进行,因此嵌入式系统产品一点进入市场,便具有较长的生命周期。
5.嵌入式软件开发走向标准化,必须使用多任务的操作系统。
嵌入式系统的应用程序可以在没有操作系统的情况下,直接在芯片上运行。
单位了合理的调度多任务,利用系统资源、系统函数以及和专家库函数接口,必须使用RTOS(Real-TimeOperatingSystem)系统平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。
1.2PWM脉冲宽度调制简介
PWM就是指脉冲宽度调制(pulsewidthmodulation),简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
其方法是通过改变电机电枢电压接通时间与通电周期的比值(即占空比)来控制电机转速。
脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。
PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。
由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。
PWM技术的发展经过了几个阶段。
第一个阶段:
电子发展早期由电路设计产生PWM波,例如由555定时器或者运算放大器产生PWM波。
第二个阶段:
单片机产生后,人们开始采用软件设计产生PWM波,这样的波可以进行数字控制,可以直接使用计算机来设定实现自动控制。
第三个阶段:
使用ARM嵌入式系统的定时器直接输出PWM波,只需简单地编程便可以产生PWM波,不会一直占用处理器,只是在定时器到的时候才用到处理器,所以相对于单片机利用效率非常高。
2.系统总体方案设计
2.1方案论证:
图1方案一采用软件编程输出PWM波控制电机转速
2.1.1系统方案:
方案一:
使用S3C2410的I/O口,定义I/O口为输出引脚端,通过编程使其中一个引脚输出低电平,另一引脚输出高、低交替变化的电平(即PWM波),采用程序改变其中输出频率和占空比。
通过输出的PWM波输入驱动芯片L9110,进而来控制直流电机的旋转。
通过键盘中断来控制PWM占空比的大小。
由LED数码管来显示电机频率和占空比的大小。
图2方案二采用S3C2410定时器的PWM输出功能控制电机转速
方案二:
从电路图上来说方案二和方案一差别不大,仅仅是驱动部分连接引脚功能有变化,但是产生的PWM波的原理差别却很大。
S3C2410有5个16位定时器,其中0、1、2、3具有脉冲宽度调制(PWM)功能。
通过使用S3C2410的GPB0引脚的第二功能TOUT0输出该PWM波。
通过改变定时器技术缓冲寄存器(TCNTBn)和定时器比较缓冲寄存器(TCMPBn)的数值来改变输出频率和占空比。
将输出的PWM波输入到驱动,经由驱动来控制直流电机的旋转。
通过键盘中断来控制PWM占空比的大小。
由LED数码管来显示电机频率和占空比的大小。
2.1.2方案比较:
方案一和方案二均可以输出PWM波,但是使用的方法并不一样。
方案一简单易懂,几乎没有用到ARM的知识。
该方案和单品阿基输出PWM波进行电机调速的思路完全一样,仅仅是使用输出口时要先进行功能定义。
相比较方案二就复杂了,不仅用到I/O口的寄存器使用方法,而且还用到ARM的中断控制,定时器的设置,定时器配置/控制寄存器的使用等等,只有深入了解ARM才可能完成PWM波的输出。
虽然PWM为定时器自带功能,但想要输出PWM波来对直流电机进行控制也要一定的基础,对比而言,方案一在输出PWM波时一直占用CPU,而采用方案二,则在中断产生时才用到CPU,大大节省了资源的使用,使用方案一就显得有些大材小用了,采用方案二则充分运用了ARM的性能,综上所述,本次设计采用方案二。
2.2系统基本原理
2.2.1S3C2410的PWM定时器概述
S3C2410有5个16位定时器,其中定时器0、1、2、3具有脉冲宽度调制(PWM)功能,定时器4具有内部定时作用,但是没有输出引脚。
定时器0具有死区生成器,图3定时器内部电路图
可以控制大电流设备。
定时器T0和T1公用一个8位预分频器,定时器T2、T3和T4公用另一个8位预分频器,每个定时器都有一个时钟分频器,信号分频输出有5中模式(1/2、1/4、1/8、1/16和外部时钟TCLK)。
每个定时器模块都从时钟分频器接收它自己的时钟信号,时钟分频器接收的时钟信号来自于8位预分频器。
当时钟被允许的时候,定时器计数缓冲寄存器(TCNTBn)把计数初值下载到减法计数器中,定时器比较缓冲寄存器(TCMPBn)把初始值下载到比较寄存器中,来和减法计数器的值比较。
这种TCNTBn和TCMPBn双缓冲寄存器特性能使定时器产生稳定的输出,且占空比可变。
TCMPBn的值用于脉冲宽度调制(PWM)。
当定时器的减法计数器的值和TCMPBn的值相匹配时,定时器输出改变输出电平。
因此,比较寄存器决定了PWM输出的开关时间。
定时器输入时钟频率:
fTCLK=[fPCLK/(Prescaler+1)]/分配器分频值
其中,Prescaler为预分频值(0~255);分配器的分频值为2、4、8和16。
PWM输出时钟频率=定时器输入时钟频率(fTCLK)/定时器计数缓冲寄存器值(TCNTBn)
PWM输出信号占空比=定时器比较缓冲寄存器(TCMPBn)/定时器计数缓冲寄存器(TCNTBn)
2.2.2S3C2410的寄存器介绍
S3C2410里有很多寄存器,在使用之前都需要对相关的寄存器进行配置,这里将使用到的寄存器配置及功能列举出来。
(1)S3C2410的I/O口配置:
S3C2410中共有117个多功能复用输入/输出端口(即I/O口),可分为端口A~端口H,共8组。
其中,8组I/O口按照其位数的不同有可分为:
端口A(GPA)是1个23位输出口;端口B(GPB)和端口H(GPH)是2个11位I/O口;端口C(GPC)、端口D(GPD)、端口E(GPE)、和端口G(GPG)是4个16位的I/O口;端口F(GPF)是一个8位I/O口。
为了满足不同系统设计的需要,每个I/O口可以很容易的通过软件对其进行配置。
每个引脚的功能必须在启动前进行定义。
这里主要介绍端口B的I/O口配置情况:
端口B
可选择的引脚端功能
GPB10
输入/输出
nXDREQ0
GPB9
输入/输出
nXDACK0
GPB8
输入/输出
nXDREQ1
GPB7
输入/输出
nXDACK1
GPB6
输入/输出
nXBREQ
GPB5
输入/输出
nXBACK
GPB4
输入/输出
TCLK0
GPB3~GPB0
输入/输出
TOUT3~TOUT0
表1S3C2410端口B的I/O口配置情况
(2)S3C2410的I/O口寄存器:
在S3C2410中,大多数的引脚端都是复用的,所以对于每一个引脚端都需要定义其功能。
为了使用I/O口,首先需要定义引脚的功能。
每个引脚端的功能通过端口控制寄存器(PnCON)来定义(配置)。
与配置I/O口相关的寄存器包括:
端口控制寄存器(GPACON~GPHCON)、端口数据寄存器(GPADAT~GPHDAT)、端口上拉寄存器(GPBUP~GPHUP)、杂项控制寄存器以及外部中断控制寄存器(EXTINTN)等。
这里主要介绍端口B的I/O口寄存器。
寄存器
地址
访问
描述
复位值
GPBCON
0x56000010
读/写
配置端口B引脚端,使用位[21:
0],分别对端口B的11个引脚进行配置
00:
输入;01:
输出;
10:
第2功能;11:
保留
0x0
GPBDAT
0x56000014
读/写
端口B数据寄存器,使用位[10:
0]
未定义
GPBUP
0x56000018
读/写
端口B上拉电阻禁止寄存器,使用位[10:
0]0:
使能;1:
禁止
0x0
Reserved
0x5600001C
─
保留
未定义
表2S3C2410端口B的I/O口寄存器
(3)S3C2410的中断控制器:
S3C2410采用ARM920TCPU内核,ARM920TCPU的中断包含IRQ和FIQ。
IRQ是普通中断,FIQ是快速中断,FIQ的优先级高于IRQ。
FIQ中断通常在进行大批量的复制、数据传输等工作时使用。
这里主要介绍S3C2410的中断控制器的特殊寄存器。
寄存器
地址
访问
描述
复位值
INTMOD
0x4A00004
读/写
终端模式寄存器:
0=IPQ模式;1=FIQ模式。
多个IRQ中断的仲裁过程在优先级寄存器进行
0x00000000
INTMSK
0x4A00008
读/写
中断屏蔽寄存器:
0=允许中断;1=屏蔽中断。
中断屏蔽寄存器的主要功能是屏蔽相应中断的请求,即使中断挂起寄存器的相应位已经置1,也就是说已经有相应的中断请求发生了;但是如果此时中断屏蔽寄存器的相应位置1,则中断控制器将屏蔽盖中断请求CPU不会响应该中断
0xFFFFFFFF
表3S3C2410的中断控制器的特殊寄存器
(4)定时器控制寄存器(TCON)地址:
0x1000008,如下表所示。
含义
位
描述
初始化状态
定时器4自动重载on/off
22
0=定时器4运行1次;1=自动重载模式
0
定时器4手动更新位
21
0=无操作;1=更新TCNTB4
0
定时器4启动位
20
0=无操作;1=启动定时器4
0
定时器3自动重载on/off
19
0=定时器3运行1次;1=自动重载模式
0
定时器3输出倒相位
18
0=倒相关闭;1=TOUT3倒相
0
定时器3手动更新位
17
0=无操作;1=更新TCNTB3
0
定时器3启动位
16
0=无操作;1=启动定时器3
0
定时器2自动重载on/off
15
0=定时器2运行1次;1=自动重载模式
0
定时器2输出倒相位
14
0=倒相关闭;1=TOUT2倒相
0
定时器2手动更新位
13
0=无操作;1=更新TCNTB2
0
定时器2启动位
12
0=无操作;1=启动定时器2
0
定时器1自动重载on/off
11
0=定时器1运行1次;1=自动重载模式
0
定时器1输出倒相位
10
0=倒相关闭;1=TOUT1倒相
0
定时器1手动更新位
9
0=无操作;1=更新TCNTB1
0
定时器1启动位
8
0=无操作;1=启动定时器1
0
保留
7:
5
保留
死区功能允许
4
0=禁止;1=允许
0
定时器0自动重载on/off
3
0=定时器0运行1次;1=自动重载模式
0
定时器0输出倒相位
2
0=倒相关闭;1=TOUT0倒相
0
定时器0手动更新位
1
0=无操作;1=更新TCNTB0
0
定时器0启动位
0
0=无操作;1=启动定时器0
0
表4定时器控制寄存器(TCON)定义
(5)定时器配置寄存器0(TCFG0),地址:
0x51000000,如下表所示。
含义
位
描述
初始化状态
保留
31:
24
0x00
死区长度
23:
16
这8位控制死区的长度。
一个单元时间的长度等于定时器0的一个单元时间长度
0x00
预分频器1
15:
8
这8位数据等于定时器2、3和4的预分频值
0x00
预分频器2
7:
0
这8位数据等于定时器0和1的预分频值
0x00
表5定时器配置寄存器0
(6)定时器减法缓冲寄存器(TCNTBn)和比较缓冲寄存器(TCMPBn)定义如下表所示。
寄存器
读/写状态
描述
初始化状态
TCNTBn
R/W
TCNTBn[15:
0]设置减法缓冲寄存器的值
0x00000000
TCMPBn
R/W
TCMPBn[15:
0]设置比较缓冲寄存器的值
0x00000000
表6TCNTBn和TCMPBn
基本上通过这些寄存器的设置和控制就可以实现S3C2410定时器输出PWM波,然后经过驱动芯片对电机进行控制了。
2.2.3直流电机驱动芯片介绍
本次设计采用的直流电机驱动芯片为L9110。
L9110是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电路集成在单片IC之中,使外围器件成本降低,整机可靠性提高。
该芯片有两个TTL/CMOS兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每通道能通过750~800mA的持续电流,峰值电流能力可达1.5~2.0A;同时它具有较低的输出饱和压降;内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动继电器、直流电机、步进电机或开关功率管的使用上安全可靠。
L9110被广泛应用于玩具汽车电机驱动、步进电机驱动和开关功率管等电路上。
(1)L9110的特点:
1.低静态工作电流;
2.宽电源电压范围:
2.5V-12V;
3.每通道具有800mA连续电流输出能力;
4.较低的饱和压降;
5.TTL/CMOS输出电平兼容,可直接连CPU;
6.输出内置钳位二极管,适用于感性负载;
7.控制和驱动集成于单片IC之中;
图4L9110管脚图
8.具备管脚高压保护功能;
9.工作温度:
0℃-80℃。
(2)管脚定义:
序号
符号
功能
1
OA
A路输出管脚
2
VCC
电源电压
3
VCC
电源电压
4
OB
B路输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM 直流电机 调速 系统 研究