1、一种步进电机控制系统的方案设计研究摘要:本文主要设计一种由 51 单片机控制的、以 PROTEUS 为平台、用于驱动步进电机运转的控制系统,文中给出了系统的硬件部分设计及软件部分设计,很好地解决了当前对步进电机控制误差的问题。 关键词:步进电机,控制系统,设计 Abstract: in this paper, a design of controlled by 51 single-chip microcomputer, taking PROTEUS as the platform, control system for driving operation of stepper motor, t
2、he design of hardware and software design part of the system are given in this paper, a very good solution to the current on the stepper motor control error problem. Keywords: stepper motor, control system, design 中图分类号:S611 文献标识码:A 文章编号: 一、引言 步进电机作为一种优秀的动力给予设备可以说在当今社会的各个领域中无处不在。随着工业生产水平的不断发展,以步进电机作
3、为控制核心的传动设备在工业控制等领域得到了广泛的应用,包含机器人、工业电子自动化设备、医疗器件、广告器材、计算机外部应用设备等领域,步进电机的影子无处不在。中国作为一个制造业大国,生产车间中的流水线是企业完成产品组装和产品加工的重要场所,而步进电机在流水线设备中起到的动力作用至今仍然无法替代。本文的研究思路即为:采用单片机作为控制核心,实现对步进电机的精确控制。并将这种控制系统应用在生产车间的流水线传动设备中,增加了该控制系统的实效性和操作性。同时,由于单片机的高速性和精确性使得系统的设计在大为简化的同时又能实现精确控制,且应用成本低廉,因此可广泛应用在各行各业领域中。 二、步进电机驱动控制系
4、统模块电路 2.1、稳压电源电路模块 本机使用两种共地电源:+5V, +12V,硬件设计中采用自带电源方式。因为本机有单片机,还有许多逻辑芯片,这些芯片的工作电源电压为+5V,所以电源中必须有+5V 电源。另外由于本机设计需要为步进电机和ULN2003A 提供+12V 工作电源,因此,本系统中需两个输入电压,分别是+5V和+12V。+5V 是单片机、7404、CD4068 和其他一些辅助器件的电压源供入,+12V 则是作为步进电机等器件的电压源输入。根据上述设计需求,我们将系统的电源电路原理图绘制如下: 图 1 系统稳压电路原理图 2.2、复位电路模块 当单片机在运行过程中出现程序错误或者操作
5、失误使系统不能正常运行时,需要进行复位操作,复位操作后,系统重新回到 0000H 处执行。复位信号从单片机的 RST 引脚输入,本电路采用的按键电平复位。 图 2 复位电路 2.3、晶振电路模块 单片机的晶振电路如图 3 所示,其中 XTAU 和 XTAL2 为片内振荡电路的输入和输出端。本系统晶振的振荡频率为 12MHZ,晶振电路产生的脉冲经过内部触发器进行二分频后,成为单片机的时钟脉冲信号。 图 3 晶振点路 2.4、液晶显示接口电路模块 本系统采用 AMPIRE128*64 液晶显示器作为系统的显示模块,具体连接电路如下图所示。该液晶显示器共有 18 个引脚,GND 端接地,VCC 和
6、RST引脚连接+5V 电源信号,DB0-DB7 分别连接单片机的 P2.0-P2.7 端口,US与 P3.2 相连,E 与 P3.5 相连,CS1 和 CS2 分别连接 P3.0 和 P3.1, V0 连接滑动变阻器。在实际调试时,可以通过调节滑动变阻器的阻值来对液晶显示器的背光进行调整。 2.5、电机驱动电路模块 ULN2003 功放芯片作为本系统对步进电机的驱动芯片。在实际设计时,还需要增加一些外围电路共同构成驱动电路,与单片机联合起来进行步进电机的控制。总体来说,采用 ULN2003 功放芯片作为本系统的功放电路,是一种用相对便宜的价格构成的性能不错的步进电机驱动电路的方式,下图为本系统
7、的功率驱动电路。根据电路设计思路,使用功率芯片与单片机进行连接时还需要增加限流电阻,图中的 R1-R4 即为限流电阻,同时,在连接步进电机时,需要根据步进电机的端子接线图进行连接,确保连接的正确性,功放芯片和步进电机的电源电压为+12V,在具体连接的时候,可以与稳压电源的+12V 输出端子相连。 图 4 电机驱动电路 2.6、按键电路模块 本设计需要对步进电机的启动/停止、正转、反转、加速和减速运行给予控制,因此需要 5 个独立按键。在设计中,将这 5 个按键与单片机的P1.0-P1.4 连接并结合一些外围器件实现对步进电机转动的控制。 三、系统软件部分总体设计 在本部分程序中,我们主要的工作
8、量有:对所需要用到的一些函数进行定义、对单片机的一些管脚进行定义,设置定时器的参数以及设置液晶显示器初始显示字符等。由于单片机内部集成了振荡器,因此我们启动其内部振荡器。综上所述,可编单片机初始化及主流程程序如下: #include #include #include #define uc unsigned char #define ui unsigned int #define LCDPAGE OxB8 /设置页指令。 #define LCDLINE 0x40 /设置列指令。 sbit E=P35; sbit RW=P34; sbit RS=P32; sbit CS2=P31 ; /左半平面
9、 sbit CS1=P30; /右半平面 sbit Busy=P27; /忙判断位 uc scan_keyl,scan_key2; /按键功能选择,00 停止,01 正转 10 反转 UC stepl;step2; static step_index; ui count l,count2; /定时 uc butter; /按键 static speed; /速度参数定义 void main(void) P2=0xff; iniLCDO; /初始化 LCD display(0,0x00, / 美 display(0,0xl0, / 的 display(0,0x20, / 空 display(0,
10、0x30, / 调 display(0,0x40, / 公 display(0,0x50, / 司 step2=0; step 1=0; Pl=Oxff; P0=0; EX1=1; EA=1; /开中断 speed=2000; 在单片机初始化后,我们还要对 LCD 进行初始化,由于单片机和 LCD初始化的速率是不一样的,因此我们要在两者之间插如一个足够长时间的延时程序以确保系统正常工作。在单片机,LCD 初始化完毕后,我们即可通过键盘输入,调用中断和步进电机运行脉冲控制程序对步进电机进行控制,至此,我们可将系统工作流程列框图如下: 图 5 主程序流程图 四、结束语 本设计给出了步进电机硬件、软
11、件设计与实现方法。硬件部分主要包括基于 PROTEUS 的系统原理图的设计,软件设计主要包括 C 语言在程序设计中的应用,用键盘输入控制步进电机的运转方式以及将运行状态显示在液晶显示屏上等,经验证,本文所设计的系统符合对步进电机控制的要求。 参考文献 1 唐国栋,高云国.基于 L297/L298 芯片步进电机的单片机控制J.微计算机息.2006(34) 2 章小红,钱志良.步进电机控制系统的设计J.苏州大学学报(工科版).2006(04) 3 曹建东.基于步进电机的转速测试系统J.机电产品开发与创新.2007(05) 4 李晓菲,胡泓,王炜,程云涛.步进电机加减速控制规律J.机电产品开发与新.2006(01)
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。