单片机的直流电机调速系统设计1 精品.doc_第1页
单片机的直流电机调速系统设计1 精品.doc_第2页
单片机的直流电机调速系统设计1 精品.doc_第3页
单片机的直流电机调速系统设计1 精品.doc_第4页
单片机的直流电机调速系统设计1 精品.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

基于单片机的直流电机调速系统设计第1章 引言 现代工业的电力拖动一般都要求局部或全部的自动化,因此必然要与各种控制元件组成的自动控制系统联系起来,而电力拖动则可视为自动化电力拖动系统的简称。在这一系统中可对生产机械进行自动控制。 随着近代电力电子技术和计算机技术的发展以及现代控制理论的应用,自动化电力拖动正朝着计算机控制的生产过程自动化的方向迈进。以达到高速、优质、高效率地生产。在大多数综合自动化系统中,自动化的电力拖动系统仍然是不可缺少的组成部分。另外,低成本自动化技术与设备的开发,越来越引起国内外的注意。特别对于小型企业,应用适用技术的设备,不仅有益于获得经济效益,而且能提高生产率、可靠性与柔性,还有易于应用的优点。自动化的电力拖动系统更是低成本自动化系统的重要组成部分。 在如今的现实生活中,自动化控制系统已在各行各业得到广泛的应用和发展,其中自动调速系统的应用则起着尤为重要的作用。虽然直流电机不如交流电机那样结构简单、价格便宜、制造方便、容易维护,但是它具有良好的起、制动性能,宜于在广泛的范围内平滑调速,所以直流调速系统至今仍是自动调速系统中的主要形式。现在电动机的控制从简单走向复杂,并逐渐成熟成为主流。其应用领域极为广泛,例如:军事和宇航方面的雷达天线、火炮瞄准、惯性导航等的控制;工业方面的数控机床、工业机器人、印刷机械等设备的控制;计算机外围设备和办公设备中的打印机、传真机、复印机、扫描仪等的控制;音像设备和家用电器中的录音机、数码相机、洗衣机、空调等的控制。 随着电力电子技术的发展,开关速度更快、控制更容易的全控型功率器件 MOSFET和IGBT成为主流,脉宽调制技术表现出较大的优越性:主电路线路简单,需要用的功率元件少;开关频率高,电流容易连续,谐波少,电机损耗和发热都较小;低速性能好,稳速精度高,因而调速范围宽;系统快速响应性能好,动态抗扰能力强;主电路元件工作在开关状态,导通损耗小,装置效率较高;近年来,微型计算机技术发展速度飞快,以计算机为主导的信息技术作为一崭新的生产力,正向社会的各个领域渗透,直流调速系统向数字化方向发展成为趋势。沈阳航空航天大学课程设计说明书 第1章第2章 系统方案论证2.1系统方案论证与选择 方案一:直接加直流电源来控制电机的转动速度;根据电动机在其额定电压时,电动机有一定的额定转速。根据其输入电压的减小,其转动速度也相应的减小。从而在传统的改变电动机的转速问题中,就是利用所给电动机的电压的不同,而达到人们所需要的大约速度。 方案二:以单片机89C52为核心通过控制电机两端电压的方波信号的脉冲宽度来达到控制电机转速的方法显示器89c52单片机键盘输入H桥驱动电路直流电机 图2.1系统框图2.2直流电机的工作原理直流电动机,多年来一直用作基本的换能器。绝大多数的直流电动机都是由电磁力形成一种方向不变的转矩而实现连续的旋转运动的。图2-1为直流电机的物理模型图,其中,固定部分(定子)由磁铁(称为主磁极)和电刷组成;转动部分(转子)由环形铁心和绕在环形铁心上的绕组组成,定子与转子之间有一气隙。在电枢铁心上放置了由A和B两根导体连成的电枢线圈,线圈的首端和末端沈阳航空航天大学课程设计说明书 第1章分别连到两个圆弧形的铜片上,此铜片称为换向片。换向片之间互相绝缘,由换向片构成的整体称为换向器。换向器固定在转轴上,换向片与转轴之间亦互相绝缘。在换向片上放置着一对固定不动的电刷B1和B2,当电枢旋转时,电枢线圈通过换向器和电刷与外电路接通。图2.2直流电机的物理模型图直流电动机的工作原理如图2.3所示。给两个电刷加上直流电源,如图2.3(a)所示,有直流电流从电刷A流入,经过线圈abcd,从电刷B流出,根据电磁力定律,载流导体ab和cd收到电磁力的作用,其方向可由左手定则判定,两段导体受到的力形成了一个转矩,使得转子逆时针转动;如果转子转到图2.3(b)所示的位置,电刷A和换向片2接触,电刷B和换向片1接触,直流电流从电刷A流入,在线圈中的流动方向是dcba,从电刷B流出。此时载流导体ab和cd受到电磁力的作用方向同样可由左手定则判定,它们产生的转矩仍然使得转子逆时针转动。电枢一经转动,由于换向器配合电刷对电流的换向作用,直流电流交替地由线圈边ab和cd流入,使线圈边只要处于N极下,其中通过电流的方向总是由电刷A流入的方向,而在S极下时,总是从电刷B流出的方向,这就保证了每个磁极下线圈边中的电流始终是一个方向,这样的结构,就可使电动机连续旋转。沈阳航空航天大学课程设计说明书 第1章图2.3直流电机原理图2.3 H桥驱动电路采用PWM进行直流电机调速,其实就是把波形作用于电机驱动电路的使用端,因此有必要对电机驱动电路进行介绍。 图2.4H桥式电机驱动电路上图所示为一个典型的直流电机控制电路。电路得名于“H桥式驱动电路”是因为它的形状酷似字母H。4个三极管组成H的4条垂直腿,而电机就是H中的横杠(上图及随后的两个图都只是示意图,而不是完整的电路图)。电路中,H桥式电机驱动电路包括4个三极管和一个电机。要使电机运转,必须导通对角线上的一对三极管。根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。沈阳航空航天大学课程设计说明书 第1章图2.5 H桥式驱动电机顺时针转动 如上图所示,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经Q4回到电源负极。按图中电流箭头所示,该流向的电流将驱动电机顺时针转动。当三极管Q1和Q4导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)。当三极管Q2和Q3导通时,电流将从右至左流过电机,从而驱动电机沿另一方向转动(电机周围的箭头表示为逆时针方向)。图2.6H桥式驱动电机逆时针转动 驱动电机时,保证H桥上两个同侧的三极管不会同时导通非常重要。如果三极管Q1和Q2同时导通,那么电流就会从正极穿过两个三极管直接回到负极。此时,电路中除了三极管外没有其他任何负载,因此电路上的电流就可能达到最大值(该电流仅受电源性能限制),甚至烧坏三极管。沈阳航空航天大学课程设计说明书 第1章2.4单片机引脚功能说明 VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8个TTL门电流。当P0口的管脚第一次写“1”时,被定义为输入。P0能够用于外部程序数据,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序或16位地址存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据进行读写时,P2口输出其的内容。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口作为AT89C51的一些特殊功能口,管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(0) P3.3 /INT1(1) P3.4 T0(计时器0外部输入) P3.5 T1(计时器1外部输入) P3.6 /WR(写选通)沈阳航空航天大学课程设计说明书 第1章 P3.7 /RD(读选通) 图2.7单片机引脚图2.5 12864LCD工作原理1、使用前的准备 先给模块加上工作电压,再按照下图的连接方法调节LCD的对比度,使其显示出黑色的底影。此过程亦可以初步检测LCD有无缺段现象。2、字符显示 带中文字库的128X64-0402B每屏可显示4行8列共32个1616点阵的汉字,每个显示RAM可显示1个中 文字符或2个168点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。带中文字库的128X64-0402B内部提供1282字节的字符显示RAM缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及沈阳航空航天大学课程设计说明书 第1章CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:00000006H(其代码分别是0000、0002、0004、0006共4个)显示自定义字型,02H7FH显示半宽ASCII码字符,A1A0HF7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如LCD汉字显示表2.8库表所示。 80H81H82H83H84H85H86H87H90H91H92H93H94H95H96H97H88H89H8AH8BH8CH8DH8EH8FH98H99H9AH9BH9CH9DH9EH9FH 表2.8 LCD汉字显示表库3、图形显示 先设垂直地址再设水平地址(连续写入两个字节的资料来完成垂直与水平的坐标地址) 垂直地址范围 AC5.AC0 水平地址范围 AC3AC0 绘图RAM 的地址计数器(AC)只会对水平地址(X 轴)自动加一,当水平地址=0FH 时会重新设为00H 但并不会对垂直地址做进位自动加一,故当连续写入多笔资料时,程序需自行判断垂直地址是否需重新设定。4、应用说明 用带中文字库的128X64显示模块时应注意以下几点: 欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示沈阳航空航天大学课程设计说明书 第1章地址,再写入中文字符编码。 显示ASCII字符过程与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置。 当字符编码为2字节时,应先写入高位字节,再写入低位字节。 模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。指令执行的时间请参考指令表中的指令执行时间说明。 “RE”为基本指令集与扩充指令集的选择控制位。当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。2.6 PWM调速原理 由于单极性工作制电压波开中的交流成分比双极性工作制的小,其电流的最大波动也比双极性工作制的小,所以我们采用了单极性工作制。将H桥一端置于高电平另一端连接单片机的I/O口当单片机处于低电平时直流电机开始转动。通过中断来控制低电平的持续时间,从而控制输出脉冲的占空比来控制电机的转速和启停。沈阳航空航天大学课程设计说明书 第1章第3章 硬件仿真模块3.1 H桥驱动电路图3.1 H桥驱动电路 图中为没有信号时的驱动电路,通过八个三极管组成对称机构。Q4连接单片机的脉冲输出口Q8连接高电平,当接收到脉冲时电机会开始转动。3.2 按键模块图3.2 按键输入电路 通过按键来控制外部中断0。当启动键按下时外部中断0打开,加速键和减速键可以调节电机的转速,当暂停键按下时,外部中断0关闭,此时加速键和减速键不能控制电机的转速。图3.3 加速键按下输出波形 本次课设由于采用的是单极性控制,且一端恒接高电平,只有在脉冲输出端输出低电平时电机两端才有电势差电机才能转动,所以图中的占空比是指低电平占整个周期的比值。图3.4减速键按下输出波形减速速键按下脉冲输出口的信号占空比减小电机开始加速。3.3 显示模块图3.5 显示模块电路图通过LCD显示器显示器实时显示电机的工作状态。当启动按键按下时屏幕会显示启动的汉字,加速减速和暂停的状态也同样会在显示器上显示出来。第4章 程序模块4.1 主程序流程图Cho=2 ET=0 PWM=1Chg=0设置工作方式初始化开始 否是否Freq u=0Freq d=0Cho=1 ET=1LCD显示暂停否 是 是LCD显示启动Cho=3 Cho=4 LCD显示加速LCD显示减速定时器工作Sqr num+Sqr num-中断次数nnsqr num否PWM=1是PWM=0占空比变小占空比变大n=nn=0n13 图4.1 主程序流程图 程序启动LCD开始显示暂停,此时外部中断0关闭,PWM输出高电平电机两端电势差为0此时电机不转动。按下启动键外部中断0打开,定时器开始工作,定时器的定时时间为10ms,每次中断则n加一,当减速键按下时sqr num也会加一此时比较n与sqar num的大小,当nsqar num则PWM输出低电平,当sqar num的值越大则低电平持续的时间越短占空比也就越小,电机的转速越低,此时会在LCD显示器上显示减速。当nsqar num时,PWM输出高电平原理与上相同。加速键的原理与减速键的原理相同。4.2按键控制开始Cho=2 ET=0 PWM=1Chg=0Freq d=0Cho=4 sqrnum+Cho=1 ET=1Freq u=0Cho=3 sqrnum- 图4.2按键控制流程图 子程序外部中断0主要是控制按键中断程序。当暂停键(stop=0)按下时外部中断0的关闭即ET0=0此时加速键与减速键按下电机无响应,cho=2在LCD显示器上显示暂停的汉字。当启动键(chg=0)按下时中断打开,cho=1在显示器上显示启动的汉字,中断打开后加速键与减速键才能控制电机的状态。 4.3 PWM产生程序流程图定时器工作初始化设置工作方式开始比较n与sqarnum大小中断次数nPWM=0PWM=1 图4.3 PWM产生程序流程图 该信号周期为13个定时中断时间。定时器产生中断的次数被n记录下来通过比较n与sqar_num的大小来确定方波信号的占空比,从而控制电机的转速。4.4 LCD延时it输入i,j,t开始是i+ j+j10是否 图4.4 LCD延时流程图 该程序的延时时间为650微秒,主要作用是为了保证LCD有足够的时间去显示汉字。4.5 LCD显示程序框图初始化 清除LCD内存程序 判断按键 启动按下暂停按下加速按下减速按下显示加速显示减速显示暂停 图4.5LCD显示流程图 该框图时程序的流程图。首先需要进行LCD屏幕的初始化,然后将LCD的内存程序清除掉以防止对后面的显示造成干扰。当有按键按下时通过对cho赋值来确定是哪个按键按下,根据cho的值去文字库中去查找,将查找的字符输送到显示器上显示。第5章 总结通过两周的课程设计使我了解了89c52单片机的功能,了解了其电路的工作原理和其外围芯片的功能,学习并掌握了直流电机的基本工作原理,了解了PWM的基本工作原理并学会使用了KILE和proteus软件,通过KILE编程单片机所要执行的软件,通过proteus仿真模拟单片机真实工作的过程。在两周的学习工作中,通过查阅相关资料了解了直流调速系统,加深了对直流电机调速控制系统的认识,熟悉了单片机在控制系统中的运用。并且在所学知识的基础上,利用已有的直流调速系统设计,尝试了自己的一些研究。并且,使我将原来所学的知识系统化,理论化,实用化。对如何使用已有知识及获取相关资料方面的能力又有了提高。通过本次设计,我的知识领域得到进一步扩展,专业技能得到进一步提高,同时锻炼了自己独立完成任务的能力,并掌握了很多软件、硬件开发方面的知识。另外,我还认识到无论做什么工作,都需要踏实,勤奋,严谨的态度,这对我以后的工作将会产生深远的影响。同时,也培养了自己认真的科学态度和严谨的工作作风,为将来能更好的适应工作岗位打下了良好的基础。附录 #include /头文件#define LCDLCDDisp_Off 0x3e/ 液晶12864关闭开启宏定义#define LCDLCDDisp_On 0x3f #define Page_Add 0xb8/页地址#define LCDCol_Add 0x40/列地址#define Start_Line 0xC0/行地址/*液晶显示器的端口定义*/sbit LCDMcs=P21 ; /*片选1*/sbit LCDScs=P22 ; /*片选2*/sbit RESET=P23 ; /*复位信号*/sbit LCDDi=P24 ; /*数据/指令 选择*/sbit LCDRW=P25 ; /*读/写 选择*/sbit LCDEnable=P26 ; /*读/写 使能*/#define uchar unsigned char /宏定义#define uint unsigned intuchar n,sqar_num=5; /设置电机初始占空比uchar cho=0; uchar zc=0;sbit chg= P33;/启动sbit stop= P20;/停止 sbit freq_u=P34;/减 速 与按键相连sbit freq_d=P35;/加 速sbit PWM =P37;/脉冲输出引脚/*- 由于protues中12864液晶显示模块不带中文字库,需要用软件生成字库代码 以下为所用到的显示汉字数字及字符的代码;-*/uchar code dai= 0x00,0x02,0x10,0x01,0x88,0x00,0xC4,0xFF,0x33,0x00,0x40,0x02,0x48,0x0A,0x48,0x32,0x48,0x02,0x7F,0x42,0x48,0x82,0xC8,0x7F,0x48,0x02,0x48,0x02,0x40,0x02,0x00,0x00/待0;uchar code ji= 0x10,0x04,0x10,0x03,0xD0,0x00,0xFF,0xFF,0x90,0x00,0x10,0x83,0x00,0x60,0xFE,0x1F,0x02,0x00,0x02,0x00,0x02,0x00,0xFE,0x3F,0x00,0x40,0x00,0x40,0x00,0x78,0x00,0x00/机1;uchar code qi= 0x00,0x40,0x00,0x20,0x00,0x18,0xFC,0x07,0x44,0x00,0x44,0xFC,0x44,0x44,0x45,0x44,0x46,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x7C,0xFC,0x00,0x00,0x00,0x00/启;uchar code dong= 0x40,0x10,0x44,0x3C,0xC4,0x13,0x44,0x10,0x44,0x14,0x44,0xB8,0x40,0x40,0x10,0x30,0x10,0x0E,0xFF,0x01,0x10,0x40,0x10,0x80,0x10,0x40,0xF0,0x3F,0x00,0x00,0x00,0x00/动; uchar code zan= 0x82,0x00,0x9A,0x01,0x96,0x00,0x93,0xFE,0xFA,0x93,0x52,0x92,0x52,0x93,0x80,0x92,0x7E,0x92,0x12,0x92,0x12,0x92,0x12,0xFE,0xF1,0x03,0x11,0x00,0x10,0x00,0x00,0x00/暂;uchar code ting= 0x80,0x00,0x60,0x00,0xF8,0xFF,0x07,0x00,0x00,0x03,0x04,0x01,0x74,0x05,0x54,0x45,0x55,0x85,0x56,0x7D,0x54,0x05,0x54,0x05,0x74,0x05,0x04,0x01,0x00,0x03,0x00,0x00/停;uchar code jia= 0x10,0x80,0x10,0x40,0x10,0x30,0xFF,0x0F,0x10,0x40,0x10,0x80,0xF0,0x7F,0x00,0x00,0x00,0x00,0xF8,0x7F,0x08,0x20,0x08,0x20,0x08,0x20,0xF8,0x7F,0x00,0x00,0x00,0x00/加;uchar code su= 0x40,0x00,0x40,0x40,0x42,0x20,0xCC,0x1F,0x00,0x20,0x04,0x48,0xF4,0x44,0x94,0x42,0x94,0x41,0xFF,0x5F,0x94,0x41,0x94,0x42,0xF4,0x44,0x04,0x48,0x00,0x40,0x00,0x00/速1;uchar code jian= 0x00,0x02,0x02,0x02,0x0C,0x7F,0xC0,0x80,0x00,0x40,0xF8,0x3F,0x08,0x00,0x48,0x1E,0x48,0x92,0x48,0x5E,0x08,0x20,0xFF,0x17,0x08,0x38,0x09,0x46,0x8A,0xF1,0x00,0x00/减;/*函数功能:LCD延时程序入口参数:t出口参数:*/void LCDdelay(unsigned int t)unsigned int i,j;for(i=0;it;i+);for(j=0;j10;j+); /*状态检查,LCD是否忙*/void CheckState() unsigned char dat,DATA;/状态信息(判断是否忙) LCDDi=0; / 数据指令选择,D/I(RS)=L ,表示 DB7DB0 为显示指令数据 LCDRW=1; /R/W=H ,E=H数据被读到DB7DB0 do DATA=0x00; LCDEnable=1;/EN下降源 LCDdelay(2);/延时 dat=DATA; LCDEnable=0; dat=0x80 & dat; /仅当第7位为0时才可操作(判别busy信号) while(!(dat=0x00); /*函数功能:写命令到LCD程序,RS(DI)=L,RW=L,EN=H,即来一个脉冲写一次入口参数:cmdcode出口参数:*/void write_(unsigned char cmdcode) CheckState();/检测LCD是否忙LCDDi=0;LCDRW=0;P0=cmdcode;LCDdelay(2);LCDEnable=1;LCDdelay(2);LCDEnable=0; /*函数功能:LCD初始化程序入口参数:出口参数:*/void init

温馨提示

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

最新文档

评论

0/150

提交评论