基于单片机实现的四相步进电机控制器设计论文_第1页
基于单片机实现的四相步进电机控制器设计论文_第2页
基于单片机实现的四相步进电机控制器设计论文_第3页
基于单片机实现的四相步进电机控制器设计论文_第4页
基于单片机实现的四相步进电机控制器设计论文_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

四相步进电机控制器 第 1 页 共 52 页 基于单片机实现的四相步进电机控制器设计 摘要 :本设计采用 司 装的 片机实现对四相步进电机的手动和遥控控制。由单片机产生的脉冲信号经过脉冲分配后分解出对应的四相脉冲,分解出的四相脉冲经驱动电路功率放大后驱动步进电机的转动。 转 速的调节和状态的改变由按键进行选择。通过键盘扫描把选择的信息 反馈给单片机,单片机根据反馈信息做出相应的判断并改变输出脉冲的频率或转动状态信号。电机转动的不同状态由 码管显示。红外信号的发射由 另一块单片机和红外线 成,用红外万能接收头接收红外信号,可以实现对电机的控制进行红外遥控。 关键字 :四相步进电机 单片机 功率放大 红外 遥控 to by by to to to to is by to 相步进电机控制器 第 2 页 共 52 页 目录 前言 . 3 . 3 能介绍 . 3 体设计方案 . 3 体设计思路 . 3 案论证与比较 . 3 机的参数 . 7 统组成 . 7 . 8 率放大驱动电路方案设计 . 8 示电路方案设计 . 9 片机电源电路设计 . 9 外发射电路设计 . 10 . 10 程语言 . 10 件实现方法 . 10 四拍正转 . 11 四拍反转 . 11 双八拍正转 . 11 双 B 八拍反转 . 11 序流程图 如下所示: . 12 相步进电机程序清单 . 15 . 15 附录 1 . 16 附录 2 . 17 四相步进电机控制器 第 3 页 共 52 页 前言 一般,电动机都是连续旋转,而步进电动机却是一步一步转动的,故 称为 步进电动机。每输入一个脉冲信号,该电动机就转过一定的角度(有的步进电动机可以直接输出线位移,称为直线电动机)。因此步进电动机是一种把脉冲变为角度位移(或直线位移)的执行元件 。它有两个工作:其一是传递转矩,其二是传递信息。 步进电动机的转子为多极分布,定子上嵌有多相星形连接的控制绕组,由专门电源输入电脉冲信号,每输入一个脉冲信号,步进电动机的转子就前进一步。由于输入的是脉冲信号,输出的角位移是断续的,所以又称为脉冲电动机。随着数字控制系统的发展,步进电动机的应用将逐渐扩大。步进电动机的种类很多,按励磁方式可分为反应式、永磁式和感应子式;按相数分则可分为单相、两相和多相三种。 这里使用的是反应式四相步进电机,它的工作方式有单四拍正转,单四拍反转,双四拍正转,双四拍反转,单双八拍正 转,单双八拍反转六种。针对这些状态,设计的控制器能很好地实现状态的转换及转速的改变。 能介绍 一、基本功能 ( 1)步进电机能够在双四拍和单双八拍两种工作方式间切换。 ( 2)能够实现步进电机单步和连续运行。 ( 3)能实现步进电机正 反转及速度变换。 ( 4)显示工作状态 二、扩展功能 红外线遥控实现电机的各种状态之间的启动和转换 体设计方案 体设计思路 用于控制的电机是 司生产的 四相反应式步进电机。为满足手动和红外遥控相 互独立,采用两块 片机分别 控制 手动模块和红外遥控模块 。 手动模块完成所有基本功能以及红外接收 ,遥控模块用来发射红外遥控信号。 案论证与比较 方案一、用逻辑电路实现。用 时器芯片产生脉冲,用 74成的电路实现脉冲的分配。用组合和时序 电路 实现频率的调节。整个电路要用到的分立元件太多,电路联接复杂,而且抗干扰能力不强,稳定性和精确度不高。 方案二、用单片机实现。由于单片机集成了运算器电路、控制电路、存储器、中断系统、定时器 /计数器以 及输入 /输出口电路等,所以用单片机设计控制电路省去了很多分立元器四相步进电机控制器 第 4 页 共 52 页 件。对于脉冲的产生及分配,频率的调节,转速及状态的改变都可以由单片机实现,不必再分别用分立元器件实现。由于单片机的可编程特性,应用单片机程序对四相步进电机进行控制,不仅功能易于实现,而且精确度高,稳定性好,抗干扰能力强 。 方案三、用 现。众所周知, 控制 核心, 外围电路简单,整体性能好,有更好的稳定性,更高的精度,更强的抗干扰能力。但是其价格昂贵,用于本设计的电机控制性价比不高。 综上所述,选择方案二 。 利用单片机实现主要控制,按 键进行选择。 单片机端口输出的电流只有几个毫安,不能直接驱动步进电机。为了给步进电机提供足够的电流,必须设计驱动电路。考虑到本次驱动的电机所带负载和功率不大,对电源的要求也不是太高,故采用单一电压型电源供电。 由于绕组 是 感性的,功率放大器必须设计得能保护晶体管不受电感 在接通和断开 瞬间 时的 尖峰信号的冲击。同时,为了使绕组在断电时能够加快电流的衰减,以免断开的相绕组中的衰减电流对电动机起制动效应,还必须为放大电路设计抑制电路或是泄放回路。这里对抑制电路有三种方案如下: 方案一:二极管抑制电路 二极管抑制电路如图 示。当绕组通电时,二极管承受反向电压,不导通。当三极管转变为截止状态或是绕组断电时,绕组将产生一个与原来承受的电压极性相反的感应电势,使二极管导通,形成绕组 L 和二极管构成的回路。假设绕组电阻为 R,则回路中电流的衰减时间常数为 T=L/R 。由于 R 一般较小,因而 T 一般较大,只适用于步进电机低速运行。 图 极管抑制电路 图 极管 方案二:二极管 二极管 所示。在这个抑制电路中,增加了一个与二 极管串联的电阻 绕组断电时泄放回路的时间常数为 T=L/( R+这就加快了断电绕组中电流的衰减,减小了泄放回路时间常数。但由于 存在,使三极管在绕组断电时承受较大的反向电压。 方案三:稳压二极管抑制电路 这种电路是用一个稳压二极管代替串联电阻,其电路如图 示。当绕组断电时,由于稳压管的稳压特性,给三极管的反向电压也不会太大,泄放回路电流衰减得更快。当断电相绕组的感应电势升高到使稳压二极管击穿并导通时,断电相绕组中的储能以热能形式在稳 压二极管内消散。 四相步进电机控制器 第 5 页 共 52 页 图 压二极管抑制电路 综上所述,考虑达到设计要求选择方案二 。 利用二极管 9014 三极管组成驱动电路。 方案一、采用 态显示。 码管的公共端 选控制信号)接电源(而对于共阴数码管是接地),数码管的段码分别和 I/O 口相连,这样 N 位数码管就需要占用 位(共 8N 位) I/O 口线。特点是占用较多的硬件资源,控制简单方便。 图 态显示 方案二、采用 态显示。 码管的所有段码连接在 同一个 8 位的 I/O 口线上,每 个 码管的位码则单独使用一个 I/O 口,这样 N 位动态显示的 码管只需占用8+N 位 I/O 口线;特点是占用较少硬件资源( I/O 口),功耗相对于静态显示来讲大大降低,但编程较复杂并需要占用系统的软件资源。 1A M B E R C 2A M B E R C 选图 态显示 四相步进电机控制器 第 6 页 共 52 页 单片机的 I/O 端口较少,且系统要用 8 个 码管,若选静态显示则需占用太多 I/用动态显示不仅可以减少占用硬件资源,降低功耗,而且本系统单片机能提供足够的软件资源。综上所述,选择方案二。 由于本次设计中单片机工作电源为 5V,所以需要稳压,对于 5V 电源这里有以下两种方案。 方案一 : 用固定式三端稳压器 ,例如 7805 系列稳压器输出固定 的正电压 5V,输入端接电容 以进一步滤除纹波 ,输出端接电容 改变负载的瞬态影响 ,使电路稳定工作 2 最好采用漏电流小的钽电容。如果采用电解电容,则电容要比图中数值增加 10 倍。 1 2 3 4 5 6i t l eN um be r R e vi s i i z a t e : 15- S e 001 S he e t F i l e : F : M y D oc um e nt s 电子设计竞赛 电子设计 - 小车 r a w n B y :V i +5V+-+9V 定式三端稳压器图 固定式三端稳压器 方案二 : 虽然 7805 三端集成稳压管内部有过流、过热和安全区的保护电路,但其输出仍有可能发生过压的危险。因此本电路加了过压保护电路,该电路由稳压管 阻 S 组成。 另外由于 7805 的最大输出电流为 以通过在 7805 的 1 脚与 基极相连,7805 的 2 脚与 集电极相连,这样就可输出 2A 的电流。如需更大的电流,可再并联几个大功率三极管。 1 2 3 4 5 6i t l eN um be r R e vi s i i z a t e : 15- S e 001 S he e t F i l e : F : M y D oc um e nt s 电子设计竞赛 电子设计 - 小车 r a w n B y :V i 588525 12S B 683+流过压的55 可扩流过压保护 5V 稳压电源 四相步进电机控制器 第 7 页 共 52 页 综上所述,基于单片机电源只使用到 5V 的电源,所以不必考虑去调节它的稳压值,再加上第二种方案所用元件较多,性能价格比不高,因此我们采用了第一种方案。 红外线是波长约大于 770不可见光。将发射红外线的发光二极管( 感知红外线的接受模块组合在一起就可以实现红外线通信。设计采用基于 红外线通信方式。应用红外线接收模块通信时 ,将所使用的红外线设置成如图所示的频率 40方波形式,即 1 秒钟内断续地发送红外线 4 万次。这种调制方式被称为脉冲周期调制( 方案一、采用脉冲个数编码。不同的脉冲个数代表不同的码,最小为两个脉冲,最大为8 个脉冲。为了使接收可靠,第一个码宽为 3余为 1控码数据帧间隔大于 10种方式易于实现,可靠性佳。 方案二、采用 8 位数字组成的代码编码。第一个数字为 1 代表起始位,接下来的三位为遥控码,剩下的 4 位为停止码。 综上所述,采用方案一的编码实现红外通信。 机的参数 转 速 n=60f / 其中 转子齿数, N 为运行拍数, f 是控制脉冲的频率 。 由此可见,反应式步进电动机转速取决于脉冲频率、转子齿数和拍数,而与电压、负载、温度等因素无关。当转子齿数一定时,转子旋转速度与输入脉冲频率成正比,或者说其转速和脉冲频率同步。改变脉冲频率可以改变转速,故可进行无级调速,调速范围很宽。 此设计使用的电机步距角 b=以 60o/ b=360o/8。 故 n=60f/48。由于可调频率为 16500以转速为 20625r/ 统组成 经过方案比较与论证,最终确定的系统组成框图如图 示。其中单片机作为主控设备控制系统的输入和输出。红外发射和接收模块实现对四相步进电机的较远距离的遥控控制。功率放大驱动电路放大单片机分配的控制脉冲,显示模块则能显示电机当前的运行状态。 图 8 系统组成方框图 按键输入 功率放大驱 动电路 四相步进 电 机 控制开关 单 片 机 单片机电源 状态显示 红外接收 单 片 机 红外 发射 四相步进电机控制器 第 8 页 共 52 页 率放大驱动电路方案设计 设计电路图如图 示。该单元电路 采用 两 级 9014 三极管达林顿接法,能很好的满足放大要求。泄放回路采用二极管 方案,发光二极管通过一级三极管放大用来显示通电的相。根据本次采用的步进电机参数,使用 9014 三极管两极放大能满足驱动要求。参数计算如下: ( ) / ( 5 0 . 7 * 2 ) / 3 3 0 0 . 0 1 11* * 2 5 0 * 2 5 0 * 0 . 0 1 1 6 8 7 . 52 1 2* 2 5 0 * 0 . 0 1 1 2 . 7 5116 8 7 . 5 2 . 7 5 6 9 0 . 2 50 1 2I U U R m Ab i b m m I m 理论计算的最大输出电流为 际值并没这么大,且电机每一相的运行是断续的,不会给三级管带来太大的负担, 所以此 方案基本 满足步进电机的驱动要求。 0 0 0 01 0000R 2 2 4 7 34 7 44 71 41 41 41 41 41 41 41 4R 2 14 70 19 01 3V T 29 01 3V T 39 01 3V T 49 01 3R 3 11 00R 3 21 00R 3 31 00R 3 41 00 1I N 2I N 3I N 4 30 驱动电路电路图 四相步进电机控制器 第 9 页 共 52 页 示电路方案设计 采用动态显示的方法实现状态 的显示: 44 P(双四正转), 44 N(双四反转), 48 (单双八拍正转), 48 N(单双八拍反转),以及频率的显示。本设计单片机系统的状态显示电路如图 示。 H C 3 7 3R 2 0 1 0 1 1 0 2 1 0 3 1 0 D 7 1L E D 7 D 7 0L E D 7 1 21 21 21 2R 1 0 4 70R 1 1 4 70R 1 2 4 70R 1 3 4 70R 1 4 4 70R 1 5 4 70R 1 6 4 70R 1 7 4 701 21 21 21 2R 2 4 1 0 5 1 0 6 1 0 7 1 0 C V C C V C C V C C V C C V C C V C C V C I T 1K B I T 2K B I T 3K B I T 4K B I T 5K B I T 6K B I T 7K B I T 82 4 6 8图 示电路电路图 该单元电路主要采用总线来扩展 I/O 单元,其中有 8 个共阴 码管和一个数据锁存器 数码管的位选控制信号, 键盘输入检测信号。 数码管在系统中是分时扫描控制的,当控制数码管显示时, 制八个数码管的位码, 低电平,三极管 通,数码管点亮,显示段码的数据。当键盘控制时, 连在单片机的 上的(该口内部有上拉电阻),给 入高电平,控制单片机扫描 ,如果键盘有键按下,与键盘相连的二极管导通,将电平钳制在 以只要扫描到 为高电平,就可以判断有键按下了。 片机电源电路设计 该电路主要由 1 个 7805 芯片 1 个整流桥 D 以及一些电阻和电容组成。输出固定的正 5V 电压 ,输入端接电容 以进一步滤除低次纹波 ,出高次谐波。 改变负载的瞬态影响。输出 端接电容 次滤波,使输出电压更稳定。电路如图 示。 1 2 3 4 5 6i t l eN um be r R e v i s i i z a t e : 11 - A 2 00 5 S he e t o f F i l e : F : 下载文件 学习期的设计与制作 M c u .d r a w n B y :+ C 1247 0 u+C 1147 0 i 5 78 N 2 W E R ( + 9V )V C I D G S P S 单片机电源电路图 四相步进电机控制器 第 10 页 共 52 页 外发射电路设计 此电路用单片机和矩阵式按键实现控制电机运行方式转换及加减速的脉冲发射,单片机采用 采用最小化应用系统设计。发光二极管显示红外发射管是否发射出红外信号。采用了两个红外发射管同时发射红外信号,实现大范围,宽角度发射,保证接收的可靠性。采用矩阵式按键便于扩展功能。电路图如图 示。 E A / V S E T 012I N T 11301P 112P 123P 134P 145P 156P 167P 178P 0039P 0138P 0237P 0336P 0435P 0534P 0633P 0732P 2021P 2122P 2223P 2324P 2425P 2526P 2627P 2728P S E E / 89 S 5 1 Y 6 Y 8 Y 7 Y 4 Y 5p p 1K B 2K B 3K B 4K B 5X T A L 1X T A L 2K B 6K B 7K B 8K B 1K B 2K B 3K B 4K B 5123456789 N 9K B 1K B 2K B 3K B 4K B 5K B 6K B 7K B 8V C A L 1X T A L 2V C Y 3 Y 2 Y 1K B 6K B 7K B 81234561 _ I S S S S E S S S E 2 7 19 01 3u S E 1T T 1 Y 9S 10K E Y 10S 11K E Y 11S 12K E Y 12S 13K E Y 13S 14K E Y 14S 15K E Y 15S 16K E Y 16R 1 14 R 1 24 R 1 34 R 1 44 V C 7 29 01 3V C 2T T 2 u+C 1 1 1 00 N 2V C 红外发射电路图 程语言 本设计中采用汇编语言对单片机进行编程。采用的是自下而上的设计方式,先设计出每一个模块(子程序),然后再慢慢扩大,最后组成整个系统。采用汇编语言编程对编程者有着特殊的要求,它不如用 C 语言编程轻松,它要求编程者对单片机的内部结构和外围电路非常了解,尤其是对指令系统必须非常熟悉,而且用汇编语言开发软件是比较辛苦的,程序量也比较大,方方面面都需要考虑,一切问题都需要编程者安排。但是使用汇编语言进行编程所占的资源较少,产生代码质量高,且执行完成情况佳。 件实现方法 软件的设计主要是通过按键查表控制 步进电机的转速,并用按键来切换电机的正反转与运行状态,同时,用两个数码管分别显示频率与电机运行状态。本设计可实现对电机转速的调节,运行状态双四拍正转,双四拍反转,单双八拍正转,单双八拍反转之间进行转换。其设计原理框图如图 3示。 四相步进电机控制器 第 11 页 共 52 页 图 程序设计原理框图 由于所用的晶振为 12以此作为步进电机的脉冲信号的话电机会出现失步甚至不能启动,且作为运行的频率也太高。因此首先对该晶振进行分频,得到频率比较小的脉冲作为电机的步进脉冲信号。经验证, 方波的频率为 1500能很好的驱动电机运行。通过分频的信号叠加产生不同频率的脉冲,这些频率( 16转换成相应的定时器基值,然后以表的形式存储在单片机程序存贮器中。通过按键查表更新定时器基值,从而实现电机的调速。 四拍正转 双四拍正转运行方式是 应的功能如表 示。 四拍反转 双四拍反转运行方式是 应的功能如表 示。 表 四拍正转 表 四拍反转 输出代码 通电绕组 输出 00001001 09H 00001100 00000110 6H 00000011 3H 双八拍正转 单双八拍正转运行方式是 A B C D A。其功能如表 示。 双八拍反转 单双八拍反转运行方式是 A C B A。其功能如表 示。 表 双八拍正转 表 双八拍反转 输出代码 通电绕组 输出 00000011 03H 00000110 06H 00001100 0001001 9H 输出代码 通电绕组 输出 00000001 A 01H 00000011 03H 00000010 B 02H 00000110 3H 00000100 C 06H 00001100 00001000 D 08H 00001001 9H 输出代码 通电绕组 输出 00000001 A 01H 00001001 09H 00001000 D 08H 00001100 00000100 C 04H 00000110 06H 00000010 B 02H 00000011 3H 12振 不同频率脉冲 控制电机 的转速 单 片 机 四相步进电机控制器 第 12 页 共 52 页 序流程图 中断开始 接收并对低电平脉冲计数 按脉冲个数至 对应程序 中断返回 低电平脉宽 2高电平脉宽 3N Y N Y 遥控接收程序流程图 开始 初始化 遥控 程序 手控键扫描 ? 遥控键扫描 ? 否 否 是 是 返回 主程序流程图 手控 程序 四相步进电机控制器 第 13 页 共 52 页 换拍键扫描 手控开始 换拍标志 =0? 正反键扫描 正反转标志 1=0? 显示“ 44” 正反转标志 1=1? 显示“ 44 显示“ 44 正反转标志 1=2? 正反键扫描 正反转标志 2=0? 显示“ 48” 正反转标志 2=1? 显示“ 48 显示“ 48 正反转标志 2=2? Y Y Y Y N N N N Y N Y N N 停止 执行键扫描 加速键扫描 减速键扫描 电机状态输出 停止 执行键扫描 加速键扫描 减速键扫描 电机状态输出 返 回 Y 手控程序 四相步进电机控制器 第 14 页 共 52 页 遥控发射程序流程图 开始 初始化 调用键扫描 处理子程序 扫键开始 逐列扫描 查键号 按键号转至相 应的发 射程序 键按下 ? 返回 N Y 发射开始 装入发射脉冲个数 (发 3冲 停发 1 1冲 停发 1 1= 0 ? 返回 N Y 四相步进电机控制器 第 15 页 共 52 页 相步进电机程序清单 三相步进电机程序清单见附录 2。 控制器能完成以下功能: ( 1) 通过调节单片机输出脉冲频率控制电机加速和减速; ( 2) 改变电机运行状态; ( 3) 实现手动和红外遥控控制两种控制方式 ; ( 4) 显示电机运行状态和脉冲频率; 在软硬件的结合下,控制器能达到设计要求。主要采用单片机实现对系统的控制。软件方面采用汇编语言编程实现 ,并下载到自制的实验板上测试通过。 参考文献 1 杜坤梅 M. 哈尔滨:哈尔滨工业大学出版社, 2002 年第二版 2 美 丹尼斯 克尔 译 宗光华 机器人设计与控制 M学出版社, 2004 年第一版 3 日 船仓一郎,土屋尧,掘桂太郎, 译 宗光华 唐伯燕 M学出版社, 2004 年第一版 4美 迈克 译 宗光华 机器人控制器与程序设计 M 科学出版社,2004 年第一版 5 陈隆昌 刘新正 M安电子科技大学出版社, 2000 年第三版 6 陈永甫 M民邮电出版社, 2004 年第一版 7 童诗白 模拟电子技术基础 M等教育出版社, 2001 年第三版 8 张洪润 张亚凡 M 科学出版社, 2002 年第一 四相步进电机控制器 第 16 页 共 52 页 附录 1 元器件清单 名称 型号 参数 数量 单片机 1 数码管 四位一体共阴 2 锁存器 741 发光二极 管 7 二极管 12 三极管 9013, 9014 4, 8 红外线发射管 红外 1 红外线万能接收头 1 整流电桥 2 稳压管 7805 2 排阻 10K 2 电阻 若干 晶振 12M 1 下载口 2 电源接口 2 电解电容 100 f 470 f 1 4 电容 104 30 f 30 4 插座 单片机插座 所存器插座 40 引脚, 24 引脚 2 1 按键 电源按键 普通按键 2 24 四相步进电机控制器 第 17 页 共 52 页 附录 2 程序清单如下: ; 基于单片机 四相步进电机控制程序 ; 作者: 凌鑫华 肖远青 谭辉 ; ;伪定义 08H ;遥控键 1 标志 09H ;遥控

温馨提示

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

评论

0/150

提交评论