基于单片机的步进电机控制系统设计

最新更新时间:2013-12-30来源: 互联网关键字:单片机  步进电机  控制系统 手机看文章 扫描二维码
随时随地手机看文章

单片机实现的步进电机控制系统具有成本低、使用灵活的特点,广泛应用于数控机床、机器人,定量进给、工业自动控制以及各种可控的有定位要求的机械工具等应用领域。步进电机是数字控制电机,将脉冲信号转换成角位移,电机的转速、停止的位置取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,非超载状态下,根据上述线性关系,再加上步进电机只有周期性误差而无累积误差,因此步进电机适用于单片机控制。步进电机通过输入脉冲信号进行控制,即电机的总转动角度由输入脉冲总数决定,而电机的转速由脉冲信号频率决定。步进电机的驱动电路是根据单片机产生的控制信号进行工作。因此,单片机通过向步进电机驱动电路发送控制信号就能实现对步进电机的控制。

1 系统设计原理

    步进电机控制系统主要由单片机、键盘LED、驱动/放大和PC上位机等4个模块组成,其中PC机模块是软件控制部分,该控制系统可实现的功能:1)通过键盘启动/暂停步进电机、设置步进电机的转速和改变步进电机的转向;2)通过LED管显示步进的转速和转向等工作状态;3)实现三相或四相步进电机的控制:4)通过PC上位机实现对步进电机的控制(启停、转速和转向等)。为保护单片机控制系统硬件电路,在单片机和步进电机之间增加过流保护电路。图l为步进电机控制系统框图。

2 系统硬件电路设计

2.1 单片机模块

    单片机模块主要由MSP430FG4618单片机及外围滤波、电源管理和晶振等电路组成。MSP430FG4618单片机内部的8 KB RAM和116 KB Flash满足控制系统的存储要求,P1和P2端口在步进电机工作过程中根据按键状态判断是否跳入中断服务程序来改变步进电机的工作状态,USART模块实现单片机和PC上位机之间的通信,实现PC机对步进电机控制。电源管理电路提供稳定的3.3 V和5 V电压,分别给单片机、晶振电路和驱动和功率放大电路供电。32 kHz晶振给单片机、键盘/显示接口器件8279和脉冲分配器PMM8713提供时钟;当采用USART模块时需开启8MHz晶振设置通信模块。图2为单片机模块结构框图。

2.2 键盘/LED模块

   为实现人机对话,该系统设计扩展了3x4按钮矩阵键盘和4片8段LED数码管,可手动直接操作该控制系统。系统上电后,通过键盘输入步进电机的启停、步数转速和转向等,由LED管动态显示步进电机的转速和转向。键盘的输入和LED管的输出由8279进行控制,减少单片机工作负担。8279编程工作在键盘扫描输入方式,读入键盘时具有去抖动功能,避免误触发。图3为键盘LED模块设计结构框图。

 

2.3 驱动/放大模块

    控制系统采用步进电机控制用的脉冲分配器(又称逻辑转换器)PMM8713,该器件是CMOS集成电路,相输出驱动能力(源电流或吸入电源)为20 mA,适用于控制三相或四相步进电机,可选择下列6种激励方式:三相步进电进:1相,2相,1-2相;四相步进电进:1相,2相,1-2相。输入方式可选择单时钟(加方向信号)和双时钟(正转或反转时钟)两种方式,具有正反转控制、初始化复位、原点监视、激励方式监视和输入脉冲监视等功能。器件PMM8713由时钟选通、激励方式控制、激励方式判断和可逆环形计数器等部分构成,所有输入端内都设有施密特电路,可提高抗干扰能力。PMM8713输出需接功率驱动电路,选用功率驱动器PMM2101,最大输出电流为1.4 A,满足驱动步进电机的要求。驱动/放大电路如图4所示。MSP430单片机通过调节PMM8713的端口1~4输入脉冲信号控制步进电机的启停、速度和转向等。


 

3 系统软件设计

3.1 单片机程序

    利用单片机的定时器TIMER_A(TA)中断产生脉冲信号,通过在响应的中断程序中实现步进电机步数和圈数的准确计数,通过PWM实现转速控制;利用P1.0端口的中断关闭TA中断程序,并推入堆栈,停止电机;P1.1中断则开启TA中断,堆栈推入程序计数器(PC),开启电机;P3.1端口输出高电平由PMM8713的U/D端口控制电机的转向;P3.0~P3.7端口接8279的8个数据接口,当单片机扫描到矩阵键盘有键按下时,利用P2端口的中断设置TA,控制启停、调速和转向等,同时单片机反馈给8279控制LED管显示转速和转向。其程序流程如图5所示。

3.2 PC上位机模块

    PC上位机模块实现PC机对步进电机的控制。利用MSP430单片机的USART模块实现与PC上位机的通信,PC机通过串口向单片机发送控制命令,实现电机控制。单片机所接收到控制命令暂存在RXBUFFER中,然后与存储在片内Flash的中断程序的入口地址相比较,相同就进入中断,实现步进电机的控制。操作该模块时需要开启8 MHz晶振为USART模块设置波特率(设置波特率为9 600)。控制软件由VB6.0编写,利用MSComm控件实现串行通讯功能。其控制软件界面如图6所示。

4 系统检测

    为检验该控制系统的实际工作情况,在给定PMM2101输出工作电流的状态下采用能量转化法测得步进电机输出的最大静转矩。选取输出电流间隔0.2 A,测到步进电机最大静转矩与电流之间关系的静特性曲线,如图7所示,说明该控制系统设计较合理。

5 结论

    该系统通过MSP430单片机控制步进电机运转情况,可靠性高,在电机运行时能够方便设定步进电机的启/停、转速和方向,提高步进电机的步进精度;能够控制三相或四相步进电机;由PC上位机完全控制步进电机的各种运行方式,使系统能够应用于恶劣环境中,保证人员安全,适用范围较广,且电路简单,成本较低,控制方便,移植性强,实用价值高。

关键字:单片机  步进电机  控制系统 编辑:神话 引用地址:基于单片机的步进电机控制系统设计

上一篇:印制电路板的最佳焊接方法
下一篇:缓存和RAID如何提高IO

推荐阅读最新更新时间:2023-10-12 20:56

单片机控制的数字触发器
摘要 介绍了8051单片机在晶阐管触发电路中的应用,同时有单片机与上位机进行串口通讯的软件设计。由软件控制可产生不同顺序的6组触发脉冲。 关键词 单片机 VB 晶阐管 数字触发器 电力电子技术研究的内容包括三个方面:电力电子器件、变流电路和控制电路。电力电子变流技术在工业化领域有着广泛的应用。家用电器节能灯、电子拖动、电炉控制系统中已采用相控整流技术。但多数触发装置普遍是模拟的,调节十分的不便,触发精度差、故障率高。采用单片机来控制晶阐管的触发,是晶阐管应用的发展趋势。本文介绍了一种由8051单片机组成的触发控制系统,可实现高分辨率的数字触发器。 1 系统硬件组成及其原理 系统硬件组成如图1,被控对象是三相全
[应用]
为什么PIC单片机的另一个为外部中断进不去
开了两个中断,一个定时,另一个为外部中断, void TIMER0INIT() { T0CON=0B10001000;//1000 0011,PSA=0,分频16; TMR0L=0xDC; TMR0H=0x0B; //INTCON=0B10100000;//GIE=1;TMR0IE=1;TMR0IF=0;(=1须软件清零)这里有两种方式都对的。 GIE=1; TMR0IF=0; TMR0IE=1; } 但是,打开另外一个中断时,为了模块化编程,一般另外建一个函数进行外部中断初始化,然而如果采用寄存器字节形式,编写会带来很大麻烦,不能正常中断。采用位的形式设置中断,为比较好的方式。如下: void key_init() { //
[单片机]
为什么PIC<font color='red'>单片机</font>的另一个为外部中断进不去
pic18单片机在BootLoader中的应用
  引 言   在PIC系列单片机中,只有PIC18系列和PIC16F87X系列的单片机才有IAP功能,才能够使用BootLoader功能。下面只介绍PIC18的BootLoader,PIC16F87X的BootLoader与它类似。   1 BootLoader程序的工作原理   BootLoader是一段引导程序,在单片机上电/复位后在用户程序之前先运行。运行后判断当前是否需要进入升级状态。如果不需要升级,就直接运行Flash中原有的程序;如果需要升级,首先擦除旧的程序,然后从串口接收用户程序,同时写入Flash中。接收数据时,需要进行校验,保证接收到的数据是正确的,避免将错误的程序写入到芯片中。   PIC18单片
[单片机]
pic18<font color='red'>单片机</font>在BootLoader中的应用
51单片机-独立按键控制LED灯
1.硬件设计 轻触按键:相当于是一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开;原理图如下: 2.软件设计 2.1.独立按键控制LED闪烁 功能需求:按下按键,LED点亮;松开按键,LED熄灭;可单个按键控制,也可多个按键控制 程序设计:分析原理图,确定要通过控制哪个按键去决定LED亮灭;单个按键K1,控制LED亮灭的程序如下: #include REGX52.H void main() { while(1) { if(P3_1==0)//通过控制K1按键,去控制LED闪烁 //P3_0==0,即是控制K2 { P2_0=
[单片机]
51<font color='red'>单片机</font>-独立按键控制LED灯
基于单片机和FPGA的远程医疗监控系统
一、设计目的   随着电子信息的飞速发展,近年来,远程医疗监控技术也渐渐成为医疗界的一个热点。重要生命参数的远程监控给年老体弱者带来了方便,也给现代医疗界的发展做出了很大的贡献。   远程医疗监控系统,它是一种集成信息科学、计算机技术和通信应用技术于医疗卫生领域的高科技产业品。系统主要组成部分为:基于微控制器和传感器节点组成体征采集模块,基于GPRS/GSM的无线收发模块,基于FPGA的上位机监控模块。体征采集模块利用各类专用传感器采集人体体征,并由微控制器进行处理打包,经由GPRS/GSM通信网络上传至上位机监控中心,远程医生/监护人可定时/实时监控病患。该系统测量准确,实用创新性强,性价比高,具有很好的推广价值。
[模拟电子]
基于<font color='red'>单片机</font>和FPGA的远程医疗监控系统
51单片机+315M无线射频模块接受程序
用的就是那种最普通的 最便宜的 大约几块钱 的315兆的无线模块接受发射,不带解码的,433m的程序也是一样的不用修改 压缩包中的内容: 上位机以及完整程序在文件夹中,大家可自己下载 地址是: http://www.51hei.com/bbs/dpj-19033-1.html 下面是接受端的源代码: #include AT89X52.H #include string.h //液晶块 #define LCM_RW P3_6 //定义引脚 #define LCM_RS P3_5 #define LCM_E P3_7 #define
[单片机]
51<font color='red'>单片机</font>+315M无线射频模块接受程序
浅谈基于51单片机的反汇编要点
  从一个现有的单片机应用系统中读出目标代码进行反汇编,可以分析原程序的设计思想,然后加以改进和创新,这是单片机爱好者学习单片机、开发新产品的一个重要途径。但是,很多单片机爱好者在反汇编时常会失败,怎样才能正确进行反汇编呢?下面就以51单片机为例,谈谈反汇编的要点。   1.怎样正确获取程序的目标代码   要正确获取程序的目标代码,首先要明确程序代码的存放地点。51单片机的程序存储器最大空间为64KB,在一个实际的应用系统中,程序存储器的分布情况可能有以下几种:   (1)只使用了片内程序空间。而没有使用片外的程序空间。   其硬件特征为:/EA引脚接VCC;/PSEN引脚为空脚。   这种情况比较简单,全
[单片机]
浅谈基于51<font color='red'>单片机</font>的反汇编要点
PLC控制步进电机的速度和角度 PLC控制柜由哪些元件组成
1.首先让你看下为啥电工适合学PLC 2.380V恒压供水线路图 3.PLC控制步进电机的速度和角度 4.最全的电气字母符号 5.PLC的数据传送,BMOV和FMOV 6.自制无线监听器 7.电线截面在不同电压下带动功率数 8.家庭配电箱如何接线 9.三菱PLC控制伺服回原点的过程 10.PLC与步进电机驱动器实物接线图 11.PLC控制柜由哪些元件组成 12.常用电缆安全载流量计算方法 13.一分钟教会你安装监控系统 14.卧室床头三控灯线路 15.双电源自动转换开关接线 16.PLC基本指令之数学函数 17.正反转控制电路 18.门禁如何接线 19.如何根
[嵌入式]
PLC控制<font color='red'>步进电机</font>的速度和角度 PLC控制柜由哪些元件组成
小广播
最新模拟电子文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved