资源描述:
《基于cpld的二相步进电机驱动设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2009,36(7)控制与应用技术xEMCA基于CPLD的二相步进电机驱动设计郭能武(广东易美图数码影像科技有限公司,广东广州510663)摘要:在选择合理电源波形的基础上,提出了一种基于复杂可编程逻辑器件(CPLD)的步进电机驱动系统,介绍了其设计原理和特点,并给出了具体的实现方案和应用结果。关键词:步进电机;复杂可编程逻辑器件;微步中图分类号:TM302∶TM383.6文献标识码:A文章编号:167326540(2009)0720027203DriveDesignofTwo2PhaseStepMotorBasedonC
2、PLDGUONeng2wu(GuangdongImettoDigitalImagingTechnologyCo.,Ltd.,Guangzhou510663,China)Abstract:AstepmotordriversystembasedonCPLDtechnologyispresented,itsdesignprinciplesandcharac2teristicisintroduced.Andtheimplementoftheschemeandtheresultofthisapplicationarepresente
3、d.Keywords:stepmotor;complexprogrammablelogicaldevice(CPLD);microstepping旋转力矩,相邻两合成磁场矢量之间的夹角决定0引言了步距角。因此,要实现对步进电机的恒转矩均匀细分控制,必须合理地控制电机绕组中的电流,步进电机是一种将电脉冲转化为角位移的执使步进电机内部合成磁场的幅值恒定,而且每个行机构,具有转矩大、惯性小、响应频率高等优点。进给脉冲所引起的合成磁场角度变化也要均匀。步进电机作为执行元件,是机电一体化的关键产本文介绍的步进电机细分驱动系统,在细分
4、品之一,广泛应用于各种自动化控制系统。由于控制上采用CPLD设计,保证对电机二相电流的其步矩角较大,一般为1.5°~3°,往往满足不了严格控制,实现二相输出电流的相位、方向和大小某些高精密定位、精密加工等方面的要求。实际控制,达到步进电机恒转矩细分驱动的目的。本应用中大多数都对步进角进行细分,这是减小步系统最高细分达到256细分,最大电流达到2.8距角、提高步进分辨率、增加电机运行平稳性的一A,能适应大多数中小微型步进电机的可变细分种有效方法。控制、较高细分步距角精度及平滑运行等要求。本文在选择合理电流波形的基础上,提出了
5、基于Altera公司MAXII系列复杂可编程逻辑器2系统设计件(CPLD)控制和STMicroelectronics的L6207PD系统框图如图1所示,其中:CAN通信接口芯片作为电机驱动的步进电机恒转矩细分驱动方用于和上层软件通信,完成命令数据的接收与发案,该方案特点是集成度高,运行功耗小,可靠性送;MCU控制软件实现系统与上层软件的数据交高,通用性好,具有很强的实用性。换,包括主机命令的接收、执行和响应;步进电机1控制原理控制模块产生电机驱动控制信号,实现对步进电步进电机的细分控制,实质上是通过对步进电机励磁绕组中电流
6、的控制,使步进电机内部形成均匀的圆形旋转磁场,从而实现步进电机步距角的细分。合成磁场矢量的幅值决定了步进电机图1系统框图—27—控制与应用技术xEMCA2009,36(7)机的细分控制;电机驱动电路实现步进电机绕组波,作为电机驱动芯片脉宽调制(PWM)电流控制的电流驱动和控制。电路的参考电压,从而实现步进电机恒转矩斩波恒流细分。3硬件设计3.1.2UFM容量计算硬件设计框图如图2所示。根据最高采用256细分的要求,半个正弦波需要256×2=512个数据,另外半周数据相同,只需切换电流方向;采用8bit数据进行DAC转换;产
7、生一个正弦和一个余弦波需要的数据容量为512×8bit×2=8Kbit。查看EPM240的UFM资源,刚好能够满足要求。设计中选择并行、只读、9位地址宽度,16位数据的Flash,并通过编辑初始化文件,将Flash的内容初始值设置为正余弦波型,16位数据中,bit7~0为正弦,bit15~8为余弦,这样确保每个输出相位一致,从而确保合成图2设计框图后的矢量幅度不变。由于Flash的内容设置后无需更改,所以将其设为只读,内容在编程时写入芯CAN通信接口采用SJA1000+82C250的方片。案实现;MCU控制软件采用宏晶科技
8、的要实现不同的细分,只需改变每次读取数据STC89C54RD+单片机。这两个模块在其他资料的地址间隔即可。如读取地址间隔为1,则实现中有较多的介绍,本文不再详述。下面重点介绍最高的256细分控制;如果间隔为2,则实现128步进电机控制和电机驱动电路两个模块。细分;间隔为3,则实现64细分;依此类推。由于