文档库 最新最全的文档下载
当前位置:文档库 › 基于串口通信的步进电机调速系统设计

基于串口通信的步进电机调速系统设计

题目:基于串口通信的步进电机

调速系统设计

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:

指导教师签名:日期:

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日

导师签名:日期:年月日

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

3)其它

基于串口通信的步进电机调速系统设计

摘要

本设计方案中采用基于串口通信的AT89C51型单片机内部的定时器改变CP脉冲的频率从而实现对步进电机的转速进行控制,实现电机调速与正反转的功能。

在实验室和工业应用中,串口是计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,所以应用广泛。

在VC++6.0的环境下,编写使用C语言,串口通信程序,由单片机控制的步进电动机的转速。当由单片机控制的步进电动机的转速的工作数据由串口传到计算机时,操作人员能够实时监控其工作状态,工作数据,根据情况,并能更改其工作参数。这样,就使得控制步进电机的转速。而电机的转速取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角,所以步进电机每给一个脉冲就转动一个固定的角度,这样就可以通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而实现步进电机的调速。

关键词:步进电机调速;单片机;串口通信;VC++

The stepper motor speed control system based on

serial communication

Abstract

The design of serial communication based on AT89C51 single-chip microcomputer-based timer to change the internal pulse frequency of CP in order to achieve the speed of stepper motor control with the positive realization of motor function.

In the laboratory and industry field, the computer serial port and external serial device data transmission between the channels, as a result of user-friendly serial communication lines, so a wide range of applications.

In VC + +6.0 environment, prepared using the C language, serial communication procedures by the single-chip microcomputer to control the speed of the stepper motor. When controlled by the single-chip stepper motor speed the work of the serial data transmitted by the computer, the operator can work in real-time monitoring of its status, the work of data, depending on the circumstances and can change its operating parameters. This allows control of stepper motor speed. Depends on the speed of the electrical pulse frequency and pulse number, and not subject to the impact of changes in load, that is, to add an electrical pulse signal, a step motor is turned away from the angle, the stepper motor is a pulse on each rotation of a fixed point of view so that you can control the stepper motor through a pulse to pulse the next time interval to change the pulse frequency, the length of delay to a specific angle in order to change control of stepper motor speed, the stepper motor in order to achieve Speed.

Keywords: Stepper motor; Singlechip; Serial communication; V isual C++

目录

摘要 ...................................................................................................................................... I V Abstract ...................................................................................................................................... II 目录 ...................................................................................................................................... I II 第一章概述 (1)

1.1开发背景及发展趋势 (1)

1.2功能要求及功能实现概述 (2)

第二章系统结构的实现与步进电机的驱动 (3)

2.1整体硬件结构 (3)

2.2系统硬件电路设计 (3)

2.2.1硬件的基本组成 (3)

2.2.2电路图 (3)

2.2.2.1晶振电路 (4)

2.2.2.2光电隔离器 (5)

2.2.2.3 MAX232的介绍 (6)

2.2.3 PCB板的生成 (6)

2.3步进电机的结构特点 (7)

2.3.1反应式步进电机的结构 (7)

2.3.2 反应式步进电机的工作原理 (8)

2.3.3 反应式步进电机的步进方式 (9)

2.3.4 步进电动机的主要性能指标 (10)

2.3.5步进电动机的运行特性 (11)

2.3.6步进电机的选型 (13)

2.4步进电机驱动电路 (14)

2.4.1单电压驱动 (14)

2.4.2 双电压驱动 (15)

2.4.3 斩波驱动 (16)

2.4.4 细分驱动 (17)

2.4.5 集成电路驱动 (17)

2.5 基于单片机的步进电机调速 (18)

2.5.1 AT89C51单片机简介 (18)

2.5.2步进电机调速 (22)

2.5.2.1步进电机的正反转 (23)

2.5.2.2步进电机的加减速 (25)

第三章GUI设计 (26)

3.1Visual C++ (26)

3.2步进电机速度控制界面设计 (27)

第四章通信模式 (31)

4.1基本原理 (31)

4.2单片机的串行通信 (31)

4.2.1串口接收数据 (34)

4.2.2通信协议 (36)

第五章结束语 (37)

附录A (39)

附录B (40)

附录C (41)

第一章概述

1.1开发背景及发展趋势

计算机串口编程在通信软件中有着十分广泛的应用,如电话,传真,视频控制等。一般情况下,涉及到远程通信,自动控制的行业,通常也会涉及到串口通信技术。

工业控制领域经常涉及到串行通信问题。为了实现微机和单片机之间的数据交换,人们用各种不同方法实现串行通信,如DOS下采用C语言。

但在Windows环境下却存在一些困难和不足。在Windows操作系统已经占据统治地位的情况下开发Windows 环境下串行通信技术就显得日益重要。在Windows应用程序的开发中,我们常常需要面临与外围数据源设备通信的问题。

计算机和单片机(如MCS-51)都具有串行通信口,可以设计相应的串口通信程序,完成二者之间的数据通信任务。实际工作中利用串口完成通信任务的时候非常之多。

本设计是在WINDOWS XP操作系统下,设计自己的通信协议,借助VC++6.0编程环境,使用C语言,实现串口通信,控制步进电机的调速系统。

步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。

步进电机和普通电动机不同之处是步进电机接受脉冲信号的控制。步进电机经环形分配器、功率放大器使励磁绕组按照顺序轮流接通直流电源。由于励磁绕组在空间中按一定的规律排列,轮流和直流电源接通后,就会在空间形成一种阶跃变化的旋转磁场,使转子步进式的转动,随着脉冲频率的增高,转速就会增大。步进电机的旋转同时与相数、分配数、转子齿轮数有关。

步进电机和普通电机的区别主要就在于其脉冲驱动的形式,正是这个特点,步进电机可以和现代的数字控制技术相结合。步进电机在控制精度、速度变化范围、低速性能方面比传统的闭环控制直流伺服电动机有较好的性能。步进电机的控制精度随着发展在不断提高,而且在很多场合可以发挥其结构简单、可靠性高和成本低的特点。

近年来,随着微电子技术、电力电子技术和计算机技术的发展,数控系统的采用,促进了步进电动机的发展,使步进电动机在机械、电子、纺织、轻工、化工、石油、邮电、冶金、文教和卫生等行业,特别是在数控机床上获得越来越广泛的应用,由于步进

电机不需要A/D转换,能够直接将数字脉冲信号转化成为角位移,被认为是理想的数控机床执行元件。早期的步进电机输出转矩比较小,无法满足需要,在使用中和液压扭矩放大器一同组成液压脉冲马达。随着步进电动机技术的发展,步进电动机已经能够单独在系统上进行使用,成为了不可替代的执行元件。比如步进电动机用作数控铣床进给伺服机构的驱动电动机,在这个应用中,步进电动机可以同时完成两个工作,其一是传递转矩,其二是传递信息。步进电机也可以作为数控蜗杆砂轮磨边机同步系统的驱动电动机。除了在数控机床上的应用,步进电机也可以并用在其他的机械上,比如作为自动送料机中的马达,作为通用的软盘驱动器的马达,也可以应用在工业器材,工业生产装备,复印件,速印机,银行自动柜员机和绘图仪中。

1.2功能要求及功能实现概述

设计适合的串口通信协议,用C语言编写程序,使得计算机能够定时从串口获得数据,按照自己的协议,并按照信息发送到各个Dialog。再由程序将数据正确的分配给每一个控件。当操作人员看见异常的数据,或希望更改工作参数时,可以通过程序把新的更改后的数据通过串口发送给单片机进行步进电机的调速。

由功能要求分析出总体设计方案。

整个系统可以分为三块:

(1)界面设计;

(2)基于单片机的硬件系统设计。

(3)串口通信协议设计;

第二章系统结构的实现与步进电机的驱动

2.1整体硬件结构

步进电机的调速与驱动如图2.1所示,主要包括脉冲信号发生、脉冲分配和功率驱动三大部分。

2.1步进电机的调速与驱动框图

(1)脉冲信号发生部分这是一个频率从几赫兹到几万赫兹连续可调的变频信号源,可用微机来产生,也可以用专门的硬件电路产生。脉冲信号发生部分能够精确输出脉冲数量和频率,因此能够准确地控制步进电机的转角和转速。

(2)脉冲分配部分步进电机的各相绕组必须按一定的顺序通电才能正常工作。这种使电动机绕组的通电顺序按一定规律变化的部分就使脉冲分配部分。

(3)功率驱动部分经脉冲分配部分输出的信号,驱动功率很小,而步进电机绕组的激磁需要相当大的电流,所以还需进行功率放大才能驱动步进电机。另外,为了防止干扰,脉冲分配送出的脉冲还需要进行光电隔离。

2.2系统硬件电路设计

2.2.1硬件的基本组成

该电路是由单片机AT89C51、MAX232、12M晶震、光电隔离器、74LS04、二极管、电容、电阻、电源等组成的。

2.2.2电路图

本电路主要是由以下的器件组成,如图2.2的框图:

图2.2电路框图

其中电路原理图(见附录A )

2.2.2.1晶振电路

·时钟震荡器:AT89C51中有一个构成内部震荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英或陶瓷震荡器一起构成自激震荡器震荡电路如图。外接石英晶体(或陶瓷震荡器)及电容C1、C2接在放大器的震荡回路中构成并联震荡电路。对外接电容C1、C2虽然没有非常严格的要求,但电容的大小会轻微影响震荡频率的高低、震荡工作的稳定性、起震的难易程序及温度稳定性,如果使用石英晶体,推荐使用30pF±10pF ,而如果使用陶瓷谐振器建议选择40pF±10pF 。用户还可以采用外部时钟,采用外部时钟如图2.3所示。在这种情况下,外部时钟脉冲接到XTAL1端,既内部时钟发生器的输入端,XTAL2悬空。

图2.3 内部震荡电路

X2

X1

GND

2.2.2.2光电隔离器

光电耦合器是把发光器件(如发

光二极管)和光敏器件(如光敏三极

管)组装在一起,通过光线实现耦合

构成电一光和光一电的转换器件。图

2.4所示为常用的三极管型光电耦合

器原理图。当电信号送人光电耦合器的输入端时,发光二极管通过电流 图2.4三极管型光电耦合器原理图

而发光,光敏元件受到光照后产生电流,CE 导通;当输入端无信号,发光二极管不亮,光敏三极管截止,CE 不通。对于数字量,当输人为低电子"0"时,光敏三极管截止,输出为高电平"1";当输人为高电平"1"时,光敏三极管饱和导通,输出为低电平"0"。若基极有出线则可满足温度补偿、检测调制要求。这种光耦合器性能较好,价格便宜,因而应用广泛。

光电耦合器之所以在传输信号的同时能有效地抑制尖脉冲和各种噪声干扰,使通道上的信号噪声比大为提高,主要有以下几方面的原因:

(1)光电耦合器的输入阻抗很小,只有几百欧姆,而干扰源的阻抗较大,通常为105~106 。据分压原理可知,即使干扰电压的幅度较大,但馈送到光电耦合器输入端的噪声电压会很小,只能形成很微弱的电流,由于没有足够的能量而不能使二极管 发光,从而被抑制掉了。

(2)光电耦合器的输入回路与输出回路之间没有电气联系,也没有共地;之间的分布电容极小,而绝缘电阻又很大,因此回路一边的各种干扰噪声都很难通过光电耦合器馈送到另一边去,避免了共阻抗耦合的干扰信号的产生。

(3)光电耦合器可起到很好的安全保障作用,即使当外部设备出现故障,甚至输入信号线短接时,也不会损坏仪表。因为光耦合器件的输入回路和输出回路之间可以承受几千伏的高压。

(4)光电耦合器的响应速度极快,其响应延迟时间只有10μs 左右,适于对响应速度要求很高的场合。

正极集电极发射极

2.2.2.3 MAX232的介绍

MAX232是电压转换芯片,将ttl电平转换成可以和电脑串口匹配的电压MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。在传输方面,MAX232内部将+5V的电平提升为-10V~+10V,然后接受TTL/ CMOS的+5V电平,并转化成±10V信号送到线路上。在接受方面,MAX232从线路上接受±10V 信号,经过内部电路转换成+5V电平。实际上MAX232只是一个电平转换器,但是只需要+5V电源与4~5个小电容(10uf即可)就可以同时提供双向电平调整。

内部结构基本可分三个部分:

第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v 和-12v两个电源,提供给RS-232串口电平的需要。

第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。

第三部分是供电。15脚DNG、16脚VCC(+5v)。

2.2.3 PCB板的生成

此硬件部分是建立在protel99的环境下工作的。

PCB基本设计流程如下:前期准备->PCB结构设计->PCB布局->布线优化和丝印->制版。

第一:前期准备。这包括准备元件库和原理图。要做出一块好的板子,除了要设计好原理之外,还要画得好。在进行PCB设计之前,首先要准备好原理图SCH的元件库和PCB的元件库。元件库可以用Peotel 自带的库,但一般情况下很难找到合适的,最好是自己根据所选器件的标准尺寸资料自己做元件库。原则上先做PCB的元件库,再做SCH的元件库。PCB的元件库要求较高,它直接影响板子的安装;SCH的元件库要求相对比较松,只要注意定义好管脚属性和与PCB元件的对应关系就行。PS:注意标准库中的隐藏管脚。之后就是原理图的设计,做好后就准备开始做PCB设计了。

第二:PCB结构设计。这一步根据已经确定的电路板尺寸和各项机械定位,在PCB 设计环境下绘制PCB板面,并按定位要求放置所需的接插件、按键/开关、螺丝孔、装配孔等等。并充分考虑和确定布线区域和非布线区域(如螺丝孔周围多大范围属于非布线区域)。

第三:PCB布局。布局说白了就是在板子上放器件。这时如果前面讲到的准备工作都做好的话,就可以在原理图上生成网络表

(Design->Create Netlist),之后在PCB图上导入网络表(Design->Load Nets)。就看见器件杂乱无章的全堆上去了,各管脚之间还有飞线提示连接。然后就可以对器件布局了。

第四:布线优化和丝印。优化布线后,如果什么需要修改之后,就可以铺铜了(Place->polygon Plane)。铺铜一般铺地线(注意模拟地和数字地的分离),多层板时还可能需要铺电源。时对于丝印,要注意不能被器件挡住或被过孔和焊盘去掉。同时,设计时正视元件面,底层的字应做镜像处理,以免混淆层面。

第五:制版。

PCB布局及布线和生成的PCB板模型如附录B。

2.3步进电机的结构特点

步进电动机的结构分为定子和转子两大部分。定子由硅钢片叠成,装上一定相数的控制绕组,由环形分配器送来的电脉冲对多相定子绕组轮流进行励磁。转子用硅钢片叠成或用软磁性材料做成凸极结构;转子本身没有励磁绕组的叫做“反应式步进电动机”;用永久磁铁做转子的叫做“永磁式步进电动机”。步进电动机的结构形式很多,但其工作原理都大同小异,本设计用的就是三相反应式步进电动机。

2.3.1反应式步进电机的结构

如图2.5所示是一个三相反应式步进电机的结构图。

相关文档
相关文档 最新文档