在PSoC4平台上开发步进电机控制系统
本文首先针对电机控制简要介绍了Cypress最新推出的PSoC4产品的主要特性和两相HB型步进电机细分控制原理。然后分析了当前主要的步进电机商用解决方案,详细阐述了在PSoC4平台上开发步进电机控制系统的方法,过程和优势,并给出了实用的工程和实验结果。
1. 引言
PSoC4为Cypress在2013年推出的可编程片上系统PSoC(Programmable System on Chip)系列的最新产品,采用ARM Cortex-M0作为处理核心。PSoC4完全继承了PSoC芯片家族本身的高度可编程的灵活性,并融合Cortex M0高性价比的处理器核架构,使得PSoC4系列产品成为一个具有高度可扩展性的处理器平台,在性价比、功耗等方面优势显著。更值得一提的是,PSoC4针对电机控制提供了完整和极具特色的片内资源,工程师在PSoC4上开发电机控制系统时将更加直观与快捷。
PSoC4产品系列目前推出的是CY8C4100和CY8C4200两个入门级产品系列。本文即以CY8C4200为例,介绍如何在PSoC4上开发两相HB型步进电机控制系统。
2. PSoC4架构及片内资源简介
PSoC 4 是基于ARM Cortex-M0 CPU(处理器)的可编程嵌入式系统控制器家族,为嵌入式应用提供了强大的可编程平台。它集合了可编程模拟资源、可编程内部互联、用户可编程数字逻辑、通用的固定功能外设计以及高性能的ARM Cortex-M0 CPU子系统。
PSoC 4系列包括以下特性:
●高性能Cortex-M0 CPU内核
●固定功能以及可配置的数字模块
●高度可编程的数字逻辑
●高性能模拟系统
●灵活可编程的内部互连
图1是PSoC4的系统框图。限于篇幅,本文将主要概括与电机控制相关的片内资源特性,详细内容可以参考Cypress网站上的PSoC4的数据手册。
●高达48MHz,43 DMIPS的32位Cortex-M0 CPU,支持单周期乘法
●多达32 KB Flash及4KB SRAM内存
●四个独立的可支持中央对齐的TCPWM,支持互补的可编程死区及同步ADC操作
●两个低功耗比较器
●两个电流数模转换器(IDAC),可以输出给内部模块,或通过GPIO输出到外部成为可定制的用户电流源。
●两个支持比较器模式及SAR ADC输入缓冲功能的运算放大器
●四个可编程数字逻辑模块(UDB)
图1: PSoC4芯片系统框图
PSoC4在开发环境方面与PSoC家族的上一代产品保持一致,仍然为PSoC Creator,延续了将片内资源抽象为模块化Component的开发方法,控制系统架构清晰具体,简单快捷。用户可以更多关注产品的功能开发,而较少的注意芯片的硬件结构细节。PSoC Creator的详细信息可以在Cypress网站上获得。
3. 步进电机控制原理及主要商用控制方案分析
① 步进电机控制原理
两相HB型步进电机是步进电机家族中应用最为广泛的一种,具有分辨率高,转矩大和性价比高的优点。其缺点是低速时的振动大和高速时的噪音。采用细分步进驱动是降低振动和噪音的有效手段。
图2表示两相HB型步进电机的4细分微步进的各相电流基准波形。各相电流值的峰值相等,相位偏差90°,电机相电流将跟踪此基准波形,由于电机实际相电流的连续性,其平均曲线将变成正弦波。
图2:4细分微步进的电流基准波形
② 步进电机主要商用控制方案分析
目前市场上比较成熟的步进电机控制方案大致有两种,区别主要在产生细分正弦波的方式上,分别为偏硬件和偏软件的方案。偏硬件的方案由CPLD和DAC产生基准正弦波,偏软件的方案由MCU及其内部PWM产生基准正弦波。
1)基于CPLD的偏硬件方案分析
图3为基于CPLD的偏硬件方案控制框图,CPLD根据双四拍时序控制双全桥驱动电路的开通。其内部存储有基准正弦波的细分值数字表,此细分表有DAC转换成模拟电压与电机相电流的采样值进行比较后控制双全桥驱动电路,可以使电机相电流准确跟踪正弦基准值。
图3:基于CPLD的偏硬件方案控制框图
2)基于MCU的偏硬件方案分析
图4为基于MCU的偏软件方案控制框图,MCU对电机两相电流进行实时采样,进行ADC转换后与细分正弦波的基准值进行比较,根据比较的结果决定PWM的开通,从而使电机产生细分正弦的相电流。
图4:基于MCU的偏软件方案控制框图
综合上述两种方案不难看出,CPLD方案可以产生100K以上的pps(pulse per second),但系统所需器件多,成本较高。MCU方案成本有所降低,但由于ADC采样带来的相位滞后和闭环控制算法耗时较长限制了电机的pps,一般在50K以下,如果要继续提高,需要采用高档的MCU或DSP,也会增加成本。
4. 基于PSoC4的步进电机控制架构及优势
PSoC4片内集成有两个电流数模转换器 (IDAC),分别为最大7位和8位精度。均取为7为精度,因此可以产生最大为128细分的阶梯状正弦波。图5表示由IDAC产生的两路16细分基准正弦波。
图5:16细分基准正弦波
PSoC4 步进电机控制系统 Cortex-M0 相关文章:
- 在PSoC4平台上开发传感器BLDC电机控制系统(12-15)
- 基于单片机的经济型步进电机控制系统(12-12)
- IoT促进了低功耗的发展(12-05)
- 基于Cortex-M0 MCU的捆扎机控制板卡的设计与实现(06-04)
- 《Cortex-M0权威指南》之Cortex-M0编程入门(01-03)
- 《Cortex-M0权威指南》之体系结构---程序映像和启动流程(01-12)