1、江苏理工学院毕业设计说明书(论文)电机转速反馈控制系统设计学院名称: 汽车与交通工程学院 专 业: 交通运输工程 班 级: 14 交通 学 号: 2014353105 姓 名: 周瑾遥 指导教师姓名: 蒋科军 指导教师职称: 讲师 二一七 年 四 月JIANGSU UNIVERSITY OF TECHNOLOGY 本 科 课 程 设 计 ( 论 文 )江苏理工学院毕业设计说明书(论文)电机转速反馈控制系统设计摘 要:在生产过程中,电机的应用十分广泛,随着生产的不断发展,对电机转速的测量就显得十分必要,同时对电机转速的测量提出了更高的要求。 本文设计了一种以 51 单片机作为主控制器,使用霍尔传
2、感器进行测量的直流电机转速测量系统。本系统采用集成霍尔传感器敏感速率信号,具有频率响应快,抗干扰能力强等特点。 文章介绍了霍尔传感器的工作原理,阐述了霍尔传感器测速系统的工作过程,利用脉冲计数法实现了对转速的测量,通过 LCD 直观地显示电机的转速值。结合硬件电路设计,采用模块化方法进行了软件设计。编制了电机转速的测量设计了测量模块、转速模块、报警模块、显示模块等的 C51 程序,并通过 PROTEUSE 软件进行了仿真。仿真结果表明所设计的软件程序是正确的。关键词:霍尔传感器;单片机;电机转速测量;液晶显示江苏理工学院毕业设计说明书(论文)目录绪论 .2第 1 章 系统功能分析 .31.1
3、系统功能概述 .31.2 系统模块结构论证 .31.3 转速测量方案论证 .4第 2 章 系统总体设计 .52.1 总体硬件设计 .5第 3 章 软件设计 .73.1 基本步骤 .73.2 程序设计 .8第 4 章 系统调试 .114.1 硬件调试 .114.2 软件调试 .11第 5 章 结论 .13参考文献 .14致 谢 .15第 1 页 共 15 页绪论在实践中,经常会遇到各种需要测量转速的场合。例如在发动机、电动机、卷扬机、机床主轴等旋转设备的试验、运转和控制中,常需要测量和显示其转速。测量转速的方法分为模拟式和数字式两种。模拟式采用测速发电机为检测元件,得到的信号是模拟量。数字式通常
4、采用光电编码器、圆光栅、霍尔元件等为检测元件,得到的信号是脉冲信号。随着微型计算机的广泛应用,特别是高性能价格比的单片机的出现,转速测量普遍采用以单片机为核心的数字式测量方法,智能化微电脑代替了一般机械式或模拟式结构。立题的目的和意义霍尔传感器是利用霍尔效应实现磁电转换的一种传感器,它具有灵敏度高、第 2 页 共 15 页线性度好、稳定性高、体积小和耐高温等特点,在机车控制系统中占有非常重要的地位1 。 测速装置在控制系统中占有非常重要的地位,对测速装置的要求是分辨能力强、高精度和尽可能短的检测时间。在此主要介绍应用霍尔传感器通过测量磁场强度,来得到稳定的脉冲方波信号,实现电机转速的测量转速是
5、电动机极为重要的一个状态参数,在很多运动系统的测控中,都需要对电机的转速进行测量,速度测量的精度直接影响系统的控制情况,它是关系测控效果的一个重要因素。不论是直流调速系统还是交流调速系统,只有转速的高精度检测才能得到高精度的控制系统。第 1 章 系统功能分析1.1 系统功能概述 系统主要功能是:AT89C51 单片机接受霍尔传感器传来的脉冲信号,单片机根据外部中断,以及内部定时器进行计数计算出电机转速送到 LED 并显示,外部装有蜂鸣器电路,在超速时,蜂鸣器发音,从实用角度看,评价一个系统实用价值的重要标准,就是这个系统对社会生活和科技观念有多大的贡献,转速测量系统具有大范围、高精度等优点、测
6、量速度快,这种系统将会有良好的应用。第 3 页 共 15 页1.2 系统模块结构论证 (1)霍尔测速模块论证与选择 采用霍尔元件传感器即霍尔片;霍尔片可分为贴片型和直插型。由于贴片型不常用,因此选择直插型。选型号为 A3144 的霍尔片作为霍尔测速模块的核心,该霍尔片体积小,安装灵活,可用于测速,且与普通的磁钢片配套使用,价格一般为 2.53 元。 (2)计数器模块论证与选择 可以采用片外计数器和片内计数器两个方案片外计数器的方案是指采用 8253 等片外的专用计数芯片进行脉冲计数,单片机控制 8253 的技术过程,并在技术完毕后读取计数值。片内计数方案是指采用单片机的内部计数器完成对脉冲的计
7、数过程。 使用片内的计数器的优点在于降低单片机系统的成本。每到一个脉冲将会产生一个 T1 的计数,在 T0 产生的 100ms 中断完成后,T1 的中断溢出次数就是所需要计的脉冲数。特点在于:使用了内部的 T1 作为外部脉冲的计数器,并且,为了避免计数器的溢出,将 T1 的初值设为 0。 (3) 显示模块论证与选择 采用 LCD 液晶显示器作为显示模块核心。LCD 显示器工作原理简单,编程方便,节能环保。 (4) 报警模块论证与选择 采用蜂鸣器与发光二极管作为声光报警主要器件。该方案不论在硬件和焊接方面还是在编写软件方面都简单方便,而且成本低廉。 (5) 电源模块论证与选择 采用交流 220V
8、/50Hz 电源转换为直流 5V 电源作为电源模块 (6) 单片机模块论证与选择 选用 P89C51 的单片机速度极快、功耗低、体积小、资源丰富,有各种不同的规格,最快的达 100MPS ,引脚还可编程确定功能。1.3 转速测量方案论证 转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有 M 法(测第 4 页 共 15 页频法)、T 法(测周期法)和 MPT 法(频率周期法),该系统采用了 M 法(测频法)。由于转速是以单位时间内转数来衡量,在变换过程中多数是有规律的重复运动。方案(电机轴一侧贴磁片):使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的圆周上粘上一粒
9、磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试5。第 2 章 系统总体设计2.1 总体硬件设计 基于霍尔传感器的速度测量系统工作过程是:测量转速的霍尔传感器和机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路部分输出。经光电耦合后,成为转速计数器的计数脉冲。同时传感器电路输出幅度为12v 的脉冲经光电耦合后降为 5v,保持同 89C51 逻辑电平相一致。控制计数时间,即可实现
10、计数器的计数值对应机轴的转速值。CPU 将该值数据处理后,在LCD 上显示出来。一旦超速,CPU 通过喇叭和指示灯发出声、光报警信号。 第 5 页 共 15 页硬件原理图: 以单片机 AT89C5l 为控制核心,用霍尔集成传感器作为测量转速的检测元件,最后用字符型液晶显示器 1602(HD44780 控制)显示的小型直流电动机转速的方法,是数字式测量方法,智能化微电脑代替了传统的机械式或模拟式结构。系统硬件原理图如图 3-1 所示。仿真图如图所示:第 6 页 共 15 页第 3 章 软件设计3.1 基本步骤电机转速测量需要经过的 4 个基本步骤:1 是控制方式;2 是确定计数方式;3 是信号输
11、入方式;4 是计数值的读取;通过 89C51,单片机完成对电机转速脉冲计数的控制,读取寄存器完成转速频率的确定。 而 SGN 电机脉冲信号连到0INT 引脚。0INT 计数次数为 3 次,将 3 次结果取平均,从而提高计数的稳定性和精确性。 其测量过程是测量转速的霍尔传感器和电机机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路输出。经过电耦合器后,即经过隔离整形电路后,成为转数计数器的计数脉冲。同时霍尔传感器电路输出幅度为12V 的脉冲经光电耦合后降为 5V,保持同单片机 AT89C51 逻辑电平相一致,控制计数时间,即可实现计数器的计数值对应机轴的转速值。主 CPU 将该值数
12、据处理后,在 LCD 液晶显示器上显示出来。 本系统采用 89C51 中的 0INT 中断对转速脉冲计数。定时器 T0 工作于定时方式,工作于方式 1。每到 1s 读一次外部中断 0INT 计数值,此值即为脉冲信号的频率,根据式(4-1)可计算出电机的转速。 第 7 页 共 15 页当直流电机通过传动部分带圆盘旋转时,霍尔传感器根据圆盘上得磁片获得一系列脉冲信号。这些脉冲信号通过单片机系统定时/计数器 0INT 计数,定时器 T0 定时。定时器 T0 完成 100 次溢出中断的时间 T 除以测得的脉冲数 m,经过单位换算,就可以算得直流电机旋转的速度。 直流电机转速计算公式: n=60m/(N
13、1TN)(rpm) (4-1) 其中:n 为直流电机转速,N 为栅格数,N1 为 T0 中断次数,m 为 0INT 在规定时间内测得的脉冲数,T 为定时器 T0 定时溢出时间。 1.主程序流程 先进行初始化设置各定时器初值,然后判断是否启动系统进行测量。如果是,就启动系统运行。如果不是就等待启动。启动系统后,霍尔传感器检测脉冲到来后,启动外部中断,每来一个脉冲中断一次,记录脉冲个数。同时启动T0 定时器工作,每 1 秒定时中断一次,读取记录的脉冲个数,即电机转速。连续采样三次,取平均值记为一次转速值。再进行数值的判断,若数值高于5000rpm 则报警并返回初始化阶段,否则就进行正常速度液晶显示。3.2 程序设计#include /包含头文件,一般情况不需要改,头文件包含特殊功能寄存器的定义#include #include #include#define NOP() _nop_() /* 定义空指令 */long unsigned int S,N;float C=100; /车轮周长 默认 100cmvolatile long unsigned int V; /车轮周长volatile long unsigned int m=0;N1=0; /关于速度的变量