下面是小编整理的DSP和PBL3717A构成的步进电机的控制系统(共含5篇),欢迎您阅读分享借鉴,希望对您有所帮助。同时,但愿您也能像本文投稿人“今天吸猫了吗”一样,积极向本站投稿分享好文章。
引言
步进电机是数字控制系统中的一种重要执行元件,广泛应用于各种控制系统中。它是一种将电脉冲信号转换为位移或转速的控制电机,输入一个脉冲信号,电机就转动一个角度或前进一步。其机械角位移和转速分别与输入电机绕组的脉冲个数和脉冲频率成比例,可以通过改变脉冲频率在大范围内调速,易于与计算机或其它数字元件接口,适用于数字控制系统。随着超大规模集成电路技术的迅速发展,DSP(Digital Signal Processor数字信号处理器)的性能价格比得到很大提高,使得DSP在电机控制领域的应用愈来愈广泛。本文介绍由美国TI公司的数字信号处理器TMS320LF2407和SGS公司的步进电机驱动芯片PBL3717A构成的两相混合式步进电机的控制系统。
1 DSP性能简介
美国TI公司的TMS320LF2407A是专为马达控制而设计的一款DSP。它采用高性能静态CMOS技术,使得供电电压降为3.3V,减少了控制器的功耗;40MIPS的执行速度使指令周期缩短到25ns(40MHz),从而提高了控制器的实时控制能力。两个事件管理器模块EVA和EVB,每个包括:2个16位通用定时器;CAN总线接口模块;16位的串行外设(SPI)接口模块;基于锁相环的时钟发生器;内置正交编码脉冲(QEP)电路;3个捕获单元;16通道A/D转换器;8个16位的脉宽调制(PWM)通道。它们能够实现:三相反相器控制;PWM的对称和非对称波形;当外部引脚PDPINTx出现低电平时,快速关闭PWM通道;可编程的PWM死区控制以防止上下桥臂同时输出触发脉冲;事件管理器模块适用于控制交流感应电机、无刷直流电机、开关磁阻电阻、步进电阻、多级电机和逆变器。
(本网网收集整理)
2 PBL3717A原理与步距控制方法
2.1 PBL3717A的原理简介
PBL3717A是SGS公司设计生产的步进电动机单相绕组的驱动电路,内部采用的是H-桥脉宽调制电路。利用外部逻辑电路构成的逻辑分配器或微处理器分配信号,由若干片这种电路和少量无源元件可组成一个完整的多相步进电动机驱动程序,可实现整步(基本步距)、半步或微步距控制。控制方式是双极性、固定OFF(关断)时间的斩波电流控制。下面简要介绍一下PBL3717A的各引脚功能。如图1所示,它采用16脚双列直插塑料封装。1脚(OUTPUT B)和15脚(OUTPUT A)为输出端,分别接一相绕组线圈的两端;2脚(PULSE TIME)外接RC定时元件;3、14脚(Vs)是绕组线圈供电电源,可在10~46V的范围内选择;4、5、12、13脚(GND)接地端,可接至热片;6脚(Vss)是IC供电电源接+5V;7、9脚(INPUT 1,INPUT 0)用于选择绕组线圈电流;8脚(Phase)为相位输入端,用于控制转动方向;16脚(Sense Resistor)外部绕组电流采样电阻,采样信号通过RC低通滤波器送至10脚(Comparator Input),与内部电压比较器的基准电压进行比较;11脚(Reference)外接参考电压,改变Reference可实现微步距控制,例如用1片单片机和2片DAC0808 8bit D/A转换电路即可实现256细分控制。在整步、半步、1/4步工作方式下,REFERENCE接固定的+5V,本文仅讨论这种情况。
2.2 PBL3717A的步距控制方法
本文所设计的是两修配混合式步进电机的控制系统,具体驱动电路如图2所示。其中,PHASE、INPUT 1、INPUT 0(图中简写为PH、I1、I0)为输入端,OUTPUT A、OUTPUT B(图中以MA、MB表示)为输出端。因为本文不考虑细分的情况,所以可以把图中的DAC(11引脚)直接接+5V电源。
PHASE的作用是控制步进电动机定子绕组中电流的方向。当PHASE=0时,电流从MB流向MA;当PHASE=1时,电流从MA流向MB。PBL3717A对步距的控制是通过选择I1、I0的不同组合,从而控制绕组电流,达到步距控制的目的。电流的具体数值由VR、RS决定。计算公式如下:Im=(Vr*0.083)/Rs[A],100%级别;
Im=(Vr*0.050)/Rs[A],60%级别;
Im=(VR*0.016)/Rs[A],20%级别。
PBL3717A能实现三种运行方式。在以下讨论中,以A、B表示二相绕组正向电流工作,以A、B表示二相绕组反向电流工作。
(1)
基本步距(整步)工作方式
可用二相激励四拍方式,即AB→AB→AB→AB实现,也可用单相激励四拍方式,即A→B→A→B实现。
(2)半步距工作方式
半步距方式采用二相,单相交替激励的二相八拍方式,即AB→B→AB→A→AB→B→AB→A,这种工作方式是两相激励和单相激励交替出现,每一找不到的转距不相等。在二相激励时的转距是单相的1.4倍,这是因为二相激励时的转距是单相激励时转距的矢量合成。如果两相激励时,采用I1I0=01方式,使电流降到60%,由于磁路原先有饱和效应,此时每相转距可能增大到70%左右,两相合成的转距接近于1。这样电机就可以近似实现恒转距运行。图3示出了在第一象限的转矩矢量图。
(3)1/4步距工作方式
为了实现1/4步距工作方式,要在整步与半步间插入一个1/4步的状态(如图3)。例如上方的`1/4步状态,A相绕组取100%电流,B相绕组取20%电流。在第一象限由半步A状态到半步B状态要经过4步,即A→A0.2B→AB→0.2AB→B。知道第一象限的矢量图不难推出其它三个象限的矢量图,一个循环需6步完成,即AB→0.2AB→B→0.2AB→AB→A0.2B→A→A0.2B→AB→0.2AB→B→0.2AB→AB→A0.2B→A→A0.2B,其中0.2A、0.2B分别表示A相、B相绕组取20%电流。
3 硬件部分
因为DSP采用3.3V供电,而PBL3717A的工作电压是+5V,所以要考虑3.3V和5V的电平转换问题。如图4所示,为5V CMOS,5V TTL和3.3V TTL电平的转换标准。其中,VOH表示输出高电平的最低电平,VIH表示输入高电平的最低电平,VIL表示输入低电平的最高电压,VOL输出低电平的最高电压。从图中可以看出5V CMOS和3.3V TTL的电平转换标准不同,因此,3.3V器件(LVC)引脚不能直接与5V CMOS器件引脚相连接。在这种情况下,可以采用双电压(一边是3.3V供电,另一边是5V供电)供电的驱动器,如TI公司的SN74ALVC164245,SN74LV4245等。而5V TTL和3.3V TTL的电平转换标准相同,所以它们可以直接相连。因为PBL3717A是TTL兼容电路,所以可以直接将DSP的I/O口和PBL3717的相应引脚相连。在这里,我们选DSP的端口B中的IOPB0,IOPB1,IOPB2,IOPB3,IOPB4,IOPB4分别与PBL3717A的I1B,I0B,I1A,I0A,PhaseA,PhaseB相连接(见图5)。
4 软件部分
本文以步进电机工作在1/4步为例设计DSP控制软件。DSP控制软件采用C语言编写。从第一拍到第十六拍的控制字分别为:0x0000、0x0004、0x000c、0x0014、0x0010、0x0011、0x0013、0x0031、0x0030、0x0034、0x003C、0x0024、0x0020、0x0021、0x0023、0x0001。将以上数值存放到数组Run_Table[]中,可通过循环程序调用数组中的相应值赋给端口B的数据和方向控制寄存器PBDATDIR,从而通过DSP的端口B来驱动控制PBL3717A的相应引脚来实现步进电机旋转运行。通过修改run_delay(int count)延时子程序的count的值可改变电机的运转速度。下面给出了两相步进电机1/4步方式下正转的控制程序清单。
/*Filename:Step.c*/
/*IOPB0=I1B,IOPB1=I0B,IOPB2=I1A,IOPB3=10A,IOPB4=PhaseA,IOPB5=PhaseB*/
#include “f2407_c.h”
static int Run_Table[]={0x0000,0x0004,
0x000C,0x0014,0x0010,0x0011,0x0013,0x0031,0x0030,0x0034,0x003C,0x0024,0x0020,
0x0021,0x0023,0x0001};
void main
{int i;
InitCPU();
while(1)
{
for(i=0;i<=15;i++)
{
*PBDATDIR=Run_Table[i]|0xff00;
run_delay(10);
}
}
}
结语
综上所述,利用DSP或者其它微处理器,选用两片或者更多片PBL3717A和少量的无源元件就可组成一个完事稳定的多相步进电机的驱动系统,可实现整步、半步或微步距控制。这样种方法成本低、容易实现、性能稳定,是步进电机驱动系统的一种较好选择。
DSP和PBL3717A构成的步进电机的控制系统
摘要:介绍由美国TI公司的数字信号处理器TMS320LF2407A和SGS公司的步进电机驱动芯片PBL3717A构成的两相混合式步进电机的控制系统。关键词:PBL3717A DSP 步进电机 控制系统
引言
步进电机是数字控制系统中的一种重要执行元件,广泛应用于各种控制系统中。它是一种将电脉冲信号转换为位移或转速的控制电机,输入一个脉冲信号,电机就转动一个角度或前进一步。其机械角位移和转速分别与输入电机绕组的.脉冲个数和脉冲频率成比例,可以通过改变脉冲频率在大范围内调速,易于与计算机或其它数字元件接口,适用于数字控制系统。随着超大规模集成电路技术的迅速发展,DSP(Digital Signal Processor数字信号处理器)的性能价格比得到很大提高,使得DSP在电机控制领域的应用愈来愈广泛。本文介绍由美国TI公司的数字信号处理器TMS320LF2407和SGS公司的步进电机驱动芯片PBL3717A构成的两相混合式步进电机的控制系统。
1 DSP性能简介
美国TI公司的TMS320LF2407A是专为马达控制而设计的一款DSP。它采用高性能静态CMOS技术,使得供电电压降为3.3V,减少了控制器的功耗;40MIPS的执行速度使指令周期缩短到25ns(40MHz),从而提高了控制器的实时控制能力。两个事件管理器模块EVA和EVB,每个包括:2个16位通用定时器;CAN总线接口模块;16位的串行外设(SPI)接口模块;基于锁相环的时钟发生器;内置正交编码脉冲(QEP)电路;3个捕获单元;16通道A/D转换器;8个16位的脉宽调制(PWM)通道。它们能够实现:三相反相器控制;PWM的对称和非对称波形;当外部引脚PDPINTx出现低电平时,快速关闭PWM通道;可编程的PWM死区控制以防止上下桥臂同时输出触发脉冲;事件管理器模块适用于控制交流感应电机、无刷直流电机、开关磁阻电阻、步进电阻、多级电机和逆变器。
2 PBL3717A原理与步距控制方法
2.1 PBL3717A的原理简介
PBL3717A是SGS公司设计生产的步进电动机单相绕组的驱动电路,内部采用的是H-桥脉宽调制电路。利用外部逻辑电路构成的逻辑分配器或微处理器分配信号,由若干片这种电路和少量无源元件可组成一个完整的多相步进电动机驱动程序,可实现整步(基本步距)、半步或微步距控制。控制方式是双极性、固定OFF(关断)时间的斩波电流控制。下面简要介绍一下PBL3717A的各引脚功能。如图1所示,它采用16脚双列直插塑料封装。1脚(OUTPUT B)和15脚(OUTPUT
[1] [2] [3] [4]
DSP和PBL3717A构成的步进电机的控制系统论文
摘要:介绍由美国TI公司的数字信号处理器TMS320LF2407A和SGS公司的步进电机驱动芯片PBL3717A构成的两相混合式步进电机的控制系统。
关键词:PBL3717A DSP 步进电机 控制系统
引言
步进电机是数字控制系统中的一种重要执行元件,广泛应用于各种控制系统中。它是一种将电脉冲信号转换为位移或转速的控制电机,输入一个脉冲信号,电机就转动一个角度或前进一步。其机械角位移和转速分别与输入电机绕组的脉冲个数和脉冲频率成比例,可以通过改变脉冲频率在大范围内调速,易于与计算机或其它数字元件接口,适用于数字控制系统。随着超大规模集成电路技术的迅速发展,DSP(Digital Signal Processor数字信号处理器)的性能价格比得到很大提高,使得DSP在电机控制领域的应用愈来愈广泛。本文介绍由美国TI公司的数字信号处理器TMS320LF2407和SGS公司的步进电机驱动芯片PBL3717A构成的两相混合式步进电机的控制系统。
1 DSP性能简介
美国TI公司的TMS320LF2407A是专为马达控制而设计的一款DSP。它采用高性能静态CMOS技术,使得供电电压降为3.3V,减少了控制器的功耗;40MIPS的执行速度使指令周期缩短到25ns(40MHz),从而提高了控制器的实时控制能力。两个事件管理器模块EVA和EVB,每个包括:2个16位通用定时器;CAN总线接口模块;16位的串行外设(SPI)接口模块;基于锁相环的时钟发生器;内置正交编码脉冲(QEP)电路;3个捕获单元;16通道A/D转换器;8个16位的脉宽调制(PWM)通道。它们能够实现:三相反相器控制;PWM的对称和非对称波形;当外部引脚PDPINTx出现低电平时,快速关闭PWM通道;可编程的PWM死区控制以防止上下桥臂同时输出触发脉冲;事件管理器模块适用于控制交流感应电机、无刷直流电机、开关磁阻电阻、步进电阻、多级电机和逆变器。2 PBL3717A原理与步距控制方法
2.1 PBL3717A的原理简介
PBL3717A是SGS公司设计生产的步进电动机单相绕组的驱动电路,内部采用的是H-桥脉宽调制电路。利用外部逻辑电路构成的逻辑分配器或微处理器分配信号,由若干片这种电路和少量无源元件可组成一个完整的多相步进电动机驱动程序,可实现整步(基本步距)、半步或微步距控制。控制方式是双极性、固定OFF(关断)时间的斩波电流控制。下面简要介绍一下PBL3717A的各引脚功能。如图1所示,它采用16脚双列直插塑料封装。1脚(OUTPUT B)和15脚(OUTPUT A)为输出端,分别接一相绕组线圈的两端;2脚(PULSE TIME)外接RC定时元件;3、14脚(Vs)是绕组线圈供电电源,可在10~46V的范围内选择;4、5、12、13脚(GND)接地端,可接至热片;6脚(Vss)是IC供电电源接+5V;7、9脚(INPUT 1,INPUT 0)用于选择绕组线圈电流;8脚(Phase)为相位输入端,用于控制转动方向;16脚(Sense Resistor)外部绕组电流采样电阻,采样信号通过RC低通滤波器送至10脚(Comparator Input),与内部电压比较器的基准电压进行比较;11脚(Reference)外接参考电压,改变Reference可实现微步距控制,例如用1片单片机和2片DAC0808 8bit D/A转换电路即可实现256细分控制。在整步、半步、1/4步工作方式下,REFERENCE接固定的+5V,本文仅讨论这种情况。
2.2 PBL3717A的步距控制方法
本文所设计的是两修配混合式步进电机的控制系统,具体驱动电路如图2所示。其中,PHASE、INPUT 1、INPUT 0(图中简写为PH、I1、I0)为输入端,OUTPUT A、OUTPUT B(图中以MA、MB表示)为输出端。因为本文不考虑细分的情况,所以可以把图中的DAC(11引脚)直接接+5V电源。
PHASE的作用是控制步进电动机定子绕组中电流的方向。当PHASE=0时,电流从MB流向MA;当PHASE=1时,电流从MA流向MB。PBL3717A对步距的控制是通过选择I1、I0的不同组合,从而控制绕组电流,达到步距控制的目的。电流的具体数值由VR、RS决定。计算公式如下:Im=(Vr*0.083)/Rs[A],100%级别;
Im=(Vr*0.050)/Rs[A],60%级别;
Im=(VR*0.016)/Rs[A],20%级别。
PBL3717A能实现三种运行方式。在以下讨论中,以A、B表示二相绕组正向电流工作,以A、B表示二相绕组反向电流工作。
(1)基本步距(整步)工作方式
可用二相激励四拍方式,即AB→AB→AB→AB实现,也可用单相激励四拍方式,即A→B→A→B实现。
(2)半步距工作方式
半步距方式采用二相,单相交替激励的二相八拍方式,即AB→B→AB→A→AB→B→AB→A,这种工作方式是两相激励和单相激励交替出现,每一找不到的转距不相等。在二相激励时的转距是单相的1.4倍,这是因为二相激励时的转距是单相激励时转距的矢量合成。如果两相激励时,采用I1I0=01方式,使电流降到60%,由于磁路原先有饱和效应,此时每相转距可能增大到70%左右,两相合成的转距接近于1。这样电机就可以近似实现恒转距运行。图3示出了在第一象限的转矩矢量图。
(3)1/4步距工作方式
为了实现1/4步距工作方式,要在整步与半步间插入一个1/4步的状态(如图3)。例如上方的1/4步状态,A相绕组取100%电流,B相绕组取20%电流。在第一象限由半步A状态到半步B状态要经过4步,即A→A0.2B→AB→0.2AB→B。知道第一象限的矢量图不难推出其它三个象限的矢量图,一个循环需6步完成,即AB→0.2AB→B→0.2AB→AB→A0.2B→A→A0.2B→AB→0.2AB→B→0.2AB→AB→A0.2B→A→A0.2B,其中0.2A、0.2B分别表示A相、B相绕组取20%电流。
3 硬件部分
因为DSP采用3.3V供电,而PBL3717A的工作电压是+5V,所以要考虑3.3V和5V的电平转换问题。如图4所示,为5V CMOS,5V TTL和3.3V TTL电平的转换标准。其中,VOH表示输出高电平的最低电平,VIH表示输入高电平的最低电平,VIL表示输入低电平的最高电压,VOL输出低电平的最高电压。从图中可以看出5V CMOS和3.3V TTL的电平转换标准不同,因此,3.3V器件(LVC)引脚不能直接与5V CMOS器件引脚相连接。在这种情况下,可以采用双电压(一边是3.3V供电,另一边是5V供电)供电的'驱动器,如TI公司的SN74ALVC164245,SN74LV4245等。而5V TTL和3.3V TTL的电平转换标准相同,所以它们可以直接相连。因为PBL3717A是T
TL兼容电路,所以可以直接将DSP的I/O口和PBL3717的相应引脚相连。在这里,我们选DSP的端口B中的IOPB0,IOPB1,IOPB2,IOPB3,IOPB4,IOPB4分别与PBL3717A的I1B,I0B,I1A,I0A,PhaseA,PhaseB相连接(见图5)。4 软件部分
本文以步进电机工作在1/4步为例设计DSP控制软件。DSP控制软件采用C语言编写。从第一拍到第十六拍的控制字分别为:0x0000、0x0004、0x000c、0x0014、0x0010、0x0011、0x0013、0x0031、0x0030、0x0034、0x003C、0x0024、0x0020、0x0021、0x0023、0x0001。将以上数值存放到数组Run_Table[]中,可通过循环程序调用数组中的相应值赋给端口B的数据和方向控制寄存器PBDATDIR,从而通过DSP的端口B来驱动控制PBL3717A的相应引脚来实现步进电机旋转运行。通过修改run_delay(int count)延时子程序的count的值可改变电机的运转速度。下面给出了两相步进电机1/4步方式下正转的控制程序清单。
/*Filename:Step.c*/
/*IOPB0=I1B,IOPB1=I0B,IOPB2=I1A,IOPB3=10A,IOPB4=PhaseA,IOPB5=PhaseB*/
#include “f2407_c.h”
static int Run_Table[]={0x0000,0x0004,
0x000C,0x0014,0x0010,0x0011,0x0013,0x0031,0x0030,0x0034,0x003C,0x0024,0x0020,
0x0021,0x0023,0x0001};
void main
{int i;
InitCPU();
while(1)
{
for(i=0;i<=15;i++)
{
*PBDATDIR=Run_Table[i]|0xff00;
run_delay(10);
}
}
}
结语
综上所述,利用DSP或者其它微处理器,选用两片或者更多片PBL3717A和少量的无源元件就可组成一个完事稳定的多相步进电机的驱动系统,可实现整步、半步或微步距控制。这样种方法成本低、容易实现、性能稳定,是步进电机驱动系统的一种较好选择。
2.1单片机程序设计
通过中断脉冲信号,计算步进电机的运转步数以及圈数,并对其进行记录;实现对步进电机运转速速的'控制;采用端口的中断程序关闭其相关程序,将电机控制在停机状态;通过中断电机的开启部位,将其转换到运行状态,实现电机的运行;PMM8713的U和D端口通过输出高电平,达到控制步进电机运转方向的目的;8279将其接口与自身的8个数据连接口进行连接,当单片机运行到键盘部位时,采用相关端口中断其工作状态,进而达到控制步进机的启动、停止、速度以及方向等,并将其反馈给8279,利用LED将其显示,明确其运转的速度以及方向。
2.2PC上位机设计
设计PC上位机的主要目的就是控制步进电机,利用单片机中相关部位,实现人与机的对话,其利用单片机发出执行命令,实现对步进电机的有效控制。其中,单片机接受的执行命令会存储在相关软件中,其与储存在片内的Flash的相关地址进行比较,不冲突的信息就储存在其中,如与其中储存的信息发生冲突,就会自动中断,有效的保护电机的正常运行。同时,此软件在运行的过程中,应该对晶振中的USART模块进行设置,其相关的控制软件由VB6.0对其进行编写,采用MSComm软件实现实时通讯。
3结语
电机控制系统利用单片机实现控制整个机器的工作,其使用的可靠性较高。在其工作的状态下,为其提供较为便捷的控制方案。通过控制步进电机的运转方向。云状速度以及工作状态等,提高步进电机的工作效率具有非常重要的作用。同时,该系统还能够控制三相电机和四相电机,其有PC上位机对整个步进电机的运行进行控制,使该系统在环境恶劣的情况下运行,确保人员的安全状态;此外,该系统还具有使用范围广、操作简单、成本低廉、实用性强等优势,被广泛的应用在实际生活的各大领域中,并能够发挥其独特地作用,进而提高步进电机的工作效率,创造经济效益。
1.1LED和键盘设计
为了能够实现人与机器的对话,单片机的步进电机控制系统设计了3*4键盘以及4*8LED数码管,人们可以直接对其进行控制。该系统通电后,通过键盘输入控制步进机的运转、启动以及转动方向等,由LED管动态清晰显示步进机的转向以及转速。器件8279能够控制系统键盘的输入以及LED的输出,进而减少单片机工作的承载,8279在控制系统工作的过程中,将键盘输入的信息进行扫描,利用其抖功能,避免事故的发生。(下图为LED和键盘模块)
1.2放大和驱动设计
逻辑转换器是步进机控制过程中的脉冲分配器,其是CMOS集成电路,其输出的源电流为20毫安,能够应用于三相以及四相步进机,其工作可以选择以下6种激进方式进行控制;其中,对于三相步进电机有1、2、1-2相;对于四相步进电机有1、2、1-2相,其输入的方式有单、双时钟选择方式,其具有正向控制、方向控制、监视原点、初始化原位等功能。PMM8713器件主要由激励方式判断、控制以及时钟设置等部分组成,所有的输入端都设置有秘制的电路,进而提高抗外界干扰的能力。PMM8713输出能够接受功率驱动电路,其通过驱图1LED和键盘模块动器,输出最大的工作电流,以满足电机工作的需求。单片机通过调节相关端口的脉冲信号,控制步进机的运行状态、运转方向以及运转速度等。