电力电子技术
直播中

胖子的逆袭

12年用户 1098经验值
私信 关注
[问答]

如何采用PIC16C621A单片机和线圈实现八细分步进电机驱动器的设计?

如何采用PIC16C621A单片机和线圈实现八细分步进电机驱动器的设计?

回帖(1)

陈秀春

2021-6-16 15:51:06
  引言
  步进电机广泛应用于对精度要求比较高的运动控制系统中,如机器人、打印机、软盘驱动器、绘图仪、机械阀门控制器等。目前,对步进电机的控制主要有由分散器件组成的环形脉冲分配器、软件环形脉冲分配器、专用集成芯片环形脉冲分配器等。分散器件组成的环形脉冲分配器体积比较大,同时由于分散器件的延时,其可靠性大大降低;软件环形分配器要占用主机的运行时间,降低了速度;专用集成芯片环形脉冲分配器集成度高、可靠性好,但其适应性受到限制,同时开发周期长、需求费用较高。
  步进电机控制
  步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(VR)、永磁式步进电机(PM)和混合式步进电机(HB)。 步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。步进电机的驱动威廉希尔官方网站 根据控制信号工作,控制信号由单片机产生。其基本控制如下:
  *控制换相顺序—通电换相这一过程称为脉冲分配。例如:混合式步进电机的工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断,这就是所谓脉冲环形分配器。
  *控制步进电机的转向—如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。
  *控制步进电机的速度—如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。
  PIC16C621A和A3955
  硬件设计
  通常步进电机的脉冲控制是由逻辑威廉希尔官方网站 或专用芯片实现的脉冲环形分配的,因A3955不自带环形分配功能,本设计采用两片A3955驱动步进电机的两个线圈,来实现脉冲环形分配的实现。
  本设计采用脉冲加方向的步进电机控制方式,应用于驱动二相或四相混合式步进电机。电机的出线方式不同,与驱动器的连接也不同,一般有以下几种方式:
  *对于二相四根线电机,可以直接和驱动器相连(见图1);
  *对于四相六根线电机,中间抽头的二根线悬空不接,其它四根线和驱动器相连(见图1)。
  
  具体硬件如图2,CLK 为外部脉冲输入端,DIR为外部方向输入端,步进脉冲信号CLK用于控制步进电机的位置和速度,本驱动器的设计为CLK信号为上升沿有效,要求CLK信号的驱动电流为8-15mA,对CLK的脉冲宽度也有一定的要求,一般不小于5mS。方向电平信号DIR用于控制步进电机的旋转方向。此端为高电平时,电机逆时针方向转,此端为低电平时,电机为顺时针方向转。CLK和DIR信号默认幅值为5V,如果不是5V则须外部另加限流电阻R,如信号幅度为12V时,加680W的电阻。MS0,MS1,MS2 为细分输入端,最多为8细分(见表1)。
  
  软件设计
  为了防止程序进入到非程序区,在非程序区设置拦截措施,使程序进入陷阱,然后强迫程序回到初始状态,从而保护程序的正常运行。程序设计首先判断细分数,其次判断方向信号DIR,最后判断脉冲信号CLK,当没有脉冲信号时,程序进入休眠状态,随时准备接收中断来的信号,进入程序区,根据判断的细分数和方向信号进行电机的驱动。代码如下:
  MAIN CLRF PORTA
  BSF STATUS,5
  MOVLW 0x07 ;整步
  MOVWF ADCON1
  MOVLW 0X06 ;半步
  MOVWF OPTIONREG
  MOVLW 0x04 ;四细分
  MOVWF TRISA
  CLRF PORTB
  BSF STATUS,5
  MOVLW 0X00 ;八细分
  MOVWF TRISB
  BCF STATUS,5
  MOVWF TMR0
  TEST BTFSS PORTA,0
  GOTO CW ;正转
  BTFSC PORTA,0
  GOTO CCW ;反转
  INT MOVLW 0XFF ;中断接收脉冲
  MOVWF TMR0
  BCF INTCON,2
  RETFIE
  结语
  采用此设计的八细分步进电机驱动器,在驱动二相或四相混合式步进电机时运动平稳,速度快,噪音低,控制精高,而且专用芯片细分数可选。在外观采用铝镁合金,散热性好,价格低廉,可广泛应用于需要驱动电流小于1.5A的混合式两相或四相步进电机的系统中。
  (myoschain)
举报

更多回帖

发帖
×
20
完善资料,
赚取积分