微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 在PSoC4平台上开发步进电机控制系统

在PSoC4平台上开发步进电机控制系统

时间:11-09 来源:互联网 点击:

图6为基于PSoC4的步进电机控制架构框图。


图6:步进电机控制框图

对电机的两相电流分别进行采样,经放大和高频滤波后与IDAC产生的电流基准由PSoC4的内部比较器 进行比较,当实际相电流超过基准值时,将由PSoC4关闭驱动电机的PWM输出一个周期,这样就可以迫使电机的实际相电流跟踪IDAC产生的电流基准,实现正弦波细分驱动。

对比PSoC4控制架构于前述的商用方案可以发现,由于PSoC4内部集成了IDAC、可编程的CPLD(UDB)和比较器,因此具备CPLD方案的所有性能与优势,同时其内部的高性能Cortex-M0核又使其可以完成MCU的控制功能,并具有其低成本的特点。因此,基于PSoC4的步进电机控制方案在性价比上有很大的提高。

5. 基于PSoC4 的步进电机控制设计实例

①控制原理图设计

图7为PSoC Creator环境下的步进电机控制原理图,虚线框内的部分即为依据图4构建的电机相电流细分驱动电路。两路电流独立控制,相位相差90。。内部低功耗比较器的同向端接电机向电流经采样、放大和滤波后的电压信号;反向端节内部IDAC输出的细分正弦信号。比较器输出高电平将关闭TCPWM一个周期,迫使电机相电流跟踪IDAC的电流基准波形,实现步进电机的细分驱动控制。

图中的定时器用于设计细分步长,通过在软件中修改其周期值可以实时改变电机的转速。图中的ADC可以读入模拟的速度输入信号,作为电机的给定转速。


图7:步进电机控制原理图

②控制系统软件设计


1)主程序设计

控制主程序首先初始化和配置PSoC4的内部资源,在主循环中检测用户的起停命令和速度给定,决定运行或锁定步进电机。图8为控制主程序的流程图。


图8:主程序流程图


2)中断函数设计

本文的细分步进驱动算法主要在设定细分步长的定时器溢出中断函数中完成。中断函数处理正弦波1/2周期判断,绕组驱动区间推进,两相绕组电流细分基准值更新和细分微步推进等。图9为中断函数的流程图。


图9: 中断函数流程图③控制系统实验结果

在PSoC Creator环境编译步进电机控制工程,连接PSoC4开发板,双全桥驱动板与两相HB型步进电机,电机可正常运行。图8显示电机运行时的三个关键波形。通道2为相电流实际波形,通道3为相电流经采样放大滤波后的信号波形,通道4为IDAC输出的相电流基准波形。

由图可以看出,电机相电流为平滑的正弦波,且能很好的跟踪细分正弦电流基准。


图10: 电机运行时的三个关键波形

6. 小结

本文主要介绍了如何在PSoC4平台上开发步进电机控制系统。作为PSoC家族的最新成员,PSoC4保留了PSoC系列丰富的片内资源和高度的灵活性,而且提供了针对电机控制的富有特色的外设。本文开发完成的实例显示了在PSoC4平台上开发步进电机控制系统不仅直观快捷,而且具有优越的性能和较低的成本。用户可以使用PSoC4设计出优秀的步进电机控制系统和产品。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top