Design of Four-Phase Stepper Motor Drive and Motor Parameter Acquisition System
Stepper motor has the advantages of precise positioning, high repeatability, high stability, high reliability and easy open-loop control, etc., and is widely used in medical devices, consumer electronics and optical equipment and other fields with high precision requirements. The four-phase stepper motor has the advantages of higher resolution, smoothness and dynamic performance compared with the two-phase stepper motor, so it is necessary to strengthen the research on the four-phase stepper motor drive system to cope with the application field of higher demand. This paper designs a four-phase stepper motor drive and parameter acquisition system based on FPGA. The system can flexibly configure the motor drive voltage and stepping mode, and adopts Ethernet transmission protocol and DDR3 memory to provide a large amount of data storage space for the speed curve required by the stepper motor drive. After simulation and testing, the system achieves the corresponding function. Finally, the system realizes the four-phase stepper motor drive, in which the maximum motor drive voltage can reach 20 V and the maximum micro-step subdivision can reach 256 subdivision, and the upper computer can monitor the motor phase voltage, phase current, Hall signal, encoder and other motor related parameters in real time.
Ethernet
步进电机根据输入的脉冲信号转变成角位移或者线位移的开环控制电机,在医疗器械、数控机床以及光学设备等领域实现广泛应用
本设计的系统框图如
在工业控制系统中,基于以太网协议进行数据传输已经得到广泛应用
以太网UDP传输数据帧的格式由
为使FPGA实现UDP通信功能,可通过如下两个方案架构:FPGA + CPU架构和FPGA + PHY + MAC架构,对于这两种方案架构,FPGA + CPU架构是通过CPU将经UDP协议发送来的数据进行解析后再交由FPGA进行数据处理;FPGA + PHY + MAC架构是运用FPGA的内部逻辑资源对UDP传输层协议进行构建,通过PHY芯片进行物理层的传递,并结合MAC实现数据链路层功能,以此实现UDP传输功能
本文设计驱动的电机为四相步进电机,而电机驱动芯片中少有四相步进电机驱动芯片,于是本设计决定采用两片两相步进电机驱动芯片进行组合,搭建相应驱动电路对四相电机进行驱动。电机驱动芯片TMC2590具有5~60 V高驱动电压范围以及微步细分最高可支持256细分,符号本设计的设计需求。如
步进电机作为感应负载,通过控制电机上的电流大小可实现对电机的步进控制。于是根据TMC2590芯片内的SPI驱动模式,为H桥电路提供高、低边的控制信号,结合FPGA主控内存储的微步表以及上位机下发的S型速度曲线,可使步进电机按照整步或微步的方式进行变速转动。如
本系统采用的主控开发板上配有一个型号为MT41J128M16HA-125的2 Gbit (256 MB)的DDR3芯片,为高效的使用DDR3存储器,采用Vivado软件提供的MIG IP核作为存储器的控制器。MIG IP核主要由用户接口块(User Interface Block)、存储器控制器(Memory Controller)和物理层(Physical Layer)这三部分组成
本设计采用降压转换芯片TPS5450与数字电位器MCP41010组合进行可变分压操作,即可提供电机不同的驱动电压。电机驱动电压设置流程:首先由用户在上位机输入设定的电机驱动电压数值,之后由上位机根据降压转换芯片TPS5450数据手册中的计算公式,即公式(1)进行计算数字电位器的阻值大小,再将此阻值大小转换成二进制码值发送给主控,当主控接收到数据后,通过SPI接口将数据发送给MCP41010进行阻值配置。
(1)
式中 为上位机输入的电机驱动电压数值, 为用来串联分压的阻值,大小为10 KΩ, 为数字电位器的阻值大小。
本设计不仅需要对四相步进电机的相电压与相电流的测量分辨率达到毫伏与毫安级别,还需要对多通道进行同步采集,而AD7606C是一款8通道16位同步采样模数数据采集系统(DAS),其每个通道均包含模拟输入箝位保护、可编程增益放大器(PGA)、低通滤波器(LPF)和16位逐次逼近寄存器(SAR)模数转换器(ADC),可满足本文的设计需求,于是本文采用模数转换芯片AD7606C作为数据采集芯片,采集电路如
霍尔信号传感器有三根连接线,+5 V电源线、地线、霍尔信号输出线,霍尔信号输出有效为低电平,为便于主控采集,将其转换成3.3 V电平,如
感栅编码器与光电编码器相比具有更高的抗污染、抗冲击能力,于是本设计采用感栅编码器对电机位置信息进行采集。本设计采用的感栅编码器的传输协议为同步串行接口(Synchronous Serial interface, SSI)协议,而SSI协议是RS422通信协议上的单向串行协议,RS422接口电路如
为实现上位机精准驱动四相步进电机与电机参数实时监测,需设计上位机与主控之间的传输协议,如
为验证主控数据上传的准确性,本设计决定采用信号发生器产生频率为1 KHz,幅值为2 V的正弦信号作为芯片AD7606C采集通道的输入信号,对比经上位机处理后存储的数据绘制的波形来测试数据采集上传的准确性。如
为确定本系统实现相应功能,于是对系统进行测试验证。本次测试设定的电机驱动电压为9 V、微步细分为全步模式,以及电机的目标转速为15 r/min,并设置霍尔信号时间间隔的上限值与下限值。四相步进电机达到匀速状态下四个相线上的相电压与相电流的波形图如
本文基于FPGA设计出四相步进电机驱动及电机参数采集系统,主要具有以下几项优点:1. 电机驱动电压实现4~20 V可调,步进细分最高支持256细分,并且可自由组合,实现步进电机驱动灵活配置;2. 根据UDP协议与DDR3存储器的结合应用,为步进电机控制需要的变速曲线提供大量的存储空间,为实现更精细化的驱动步进电机提供可能;3. 在此基础上,本设计将步进电机相电压、相电流、霍尔信号以及编码器等电机相关参数进行采集、上传后进行实时波形显示,从而可对步进电机运行时的电压、电流、瞬时速度以及平均速度进行实时监测;4. 本设计不仅可对各电机参数进行设置阈值上下限,还有相应的报警方式,在出现异常现象可通过不同的报警方式定位到问题根源,为操作人员排查问题提供便利。本文设计了更加精细化的四相步进电机驱动方式以及对四相步进电机的运行进行实时监测,可实现高精度的四相步进电机驱动控制,并且通过实时监测四相步进电机运行以及相应的报警方式,为安全性提供更多保障,具有较高的工程应用价值。