kaiyun官方注册
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于STM32的智能电机保护器设计
基于STM32的智能电机保护器设计
摘要: 采用基于微控制器的电子式电机保护器替代现有热继电器,具有广大的市场。设计采用集成丰富外设的STM32系列ARM芯片为核心的智能电机保护器,具有响应速度快、附加芯片少、生产调试简单、生产及社会效益高等优点。
Abstract:
Key words :

 

       电机是工业生产领域中最主要的驱动源,如何有效地监控电机的运行状态,保护电机回路,提高电机的运行时间,减少电机故障,对工厂整体电网的运行十分关键。

  电动机保护装置有很多种,目前使用得比较普遍的还是基于金属片机械式的热继电器,它结构简单,在保护电动机过载方面具有反时限特性。但它的保护功能少,无断相保护,对电机发生通风不畅、扫膛、堵转、长期过载、频繁启动等故障也不能起保护作用。此外,热继电器还存在重复性能差、大电流过载或短路故障后不能再次使用、调整误差大、易受环境温度影响而误动或拒动、功耗大、耗材多、性能指标落后等缺陷。

  为响应国家节能减排的要求,采用基于微控制器的电子式电机保护器替代现有热继电器,具有广大的市场。设计采用集成丰富外设的STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32" title="STM32">STM32系列ARM芯片为核心的智能电机保护器,具有响应速度快、附加芯片少、生产调试简单、生产及社会效益高等优点。

  1 智能保护器功能及硬件架构

  电机运行中主要发生的故障包括:起动超时、过载、堵转、缺相、不平衡、过热、欠载、过压、欠压等。因此智能保护器需要监测电机的工作电压、工作电流和机壳温度。

  同时,由于电机的类型、容量和负载类型不同,电机保护的参数也不尽相同,所以需要能够针对不同的电机设置保护参数。

  再者,为了使智能保护继电器能够满足当前流行的智能电机控制中心(IMCC)的需求,智能电机保护器还需要具有网络通讯功能。

  图1是智能电机保护器的硬件结构框图。

 

  2 系统硬件设计

  2.1 MCU

  MCU是电机保护器的核心部分,主要负责数据采集、数据处理、输出控制和参数设置。这里采用的是ST公司最新推出的STM32F103xD系列ARM芯片。

  该系列芯片采用ARM公司32位的C0rtex M3为核心,最高主频为72MHz,Cortex核心内部具有单周期的硬件乘法和除法单元,所以适合用于高速数据的处理。

  芯片具有三个独立的转换周期,最低为1μs的高速模数转换器,三个独立的数模转换器带有各自独立的采样保持电路,所以特别适合三相电机控制、电网监测和多参数仪器设备的使用。

  芯片还带有丰富的通讯单元,包括多达5个异步串行接口、1个USB从器件、1个CAN器件、I2C和SPI等模块。

  2.2 模拟量采集单元

  电机保护器主要需要采集电流、电压和温度这三个模拟量来对电机的运行状态进行监测和保护。

  电流传感器类型众多,主要包括磁芯电流互感器、霍尔传感器、分流电阻。而电机保护器所连接的电机容量主要以几千瓦至数十千瓦的电机为主,因此电机相电流主要在数安培至几十安培。因此采用电流互感器为电流采集单元,具有量程宽、发热小、隔离电压高等优点。同时在不改变处理电路的参数的同时,采用不同变比的电流传感器可以方便地改变电机保护器的电流检测量程,从而可以方便地用于更大容量的电机保护。

  电压直接通过电阻分压获得,因此整个电机控制器是共热地的系统。电阻采用的是高阻抗高耐压类型电阻,同时为了提高电压采集回路的过电压能力,电压分压电路采用多电阻串联形式,从而降低每一个电阻上的额定压降,同时提高整个支路的最高耐压。

  温度传感器采用常见的铂电阻传感器或者NTC热敏电阻,保护器硬件上设计有对应的热电阻信号调理电路。由于热电阻都是非线性器件,因此温度采集处理通道都需要进行非线性处理,为了减少硬件电路的复杂程度,因此实际热电阻调理单元只是设计采用一个仪表放大器,而热电阻的非线性处理由MCU完成。另外还有一路MCU芯片内置的开云棋牌官网在线客服温度传感器,用于检测保护器内的温度,从而防止由于系统过热而导致控制出错。

  2.3 液晶显示

  对于独立应用的电机保护器,需要能够设置保护参数,显示当前的运行状态,当发生故障时候还需要显示故障类型。因此电机保护器需要有显示单元。

  系统设计采用点阵形式STN黑白液晶显示(LCD)模块,相比TFT彩色LCD模块,具有使用温度范围宽、寿命长、强光下仍可以阅读的优点。

  LCD模块内置的控制器采用的并行数据通讯接口,包括数据总线、读写控制线、器件选通和复位引脚。系统设计时,使用STM32F103xD芯片的多功能静态存储器控制器(FSMC)与LCD模块相连。

  STM32F芯片的FSMC模块是一个支持静态存储器(SRAM)、NOR F1ash和PSRAM的多功能静态存储器控制器。可以支持8位或者16位宽度的存储器。

  LCD模块的访问时序与SRAM的相同,而且可以通过配置引脚选择为8080或者6800类型的接口时序。图2是STM32芯片的FSMC接口与LCD的电气连接,这里的液晶是采用的8080接口时序。

          2.4 通讯电路

  智能电机控制中心(IMCC)的控制结构大都是总线型分布式网络结构,系统中有中央控制器负责调度和监控所有电机的运行。根据所使用的中央控制器(大多为PLC)的不同,系统的通讯协议有MODBUS、Fieldbus和以太网等。其中最常见的是MODBUS协议。MODBUS协议的物理层是基于RS485的半双工通讯网络,电机保护器在其中是处于从机地位。

  由于电机保护器内部是共热地系统,所以RS485远程通讯需要与控制器主回路隔离。对于RS485收发器的隔离,需要对通讯信号和收发器的供电进行隔离。电机保护器的通讯接口设计的通讯波特率最高需要达到57.6kbps,因此需要使用高速光耦或者数字隔离芯片完成对通讯信号的隔离。

  数字隔离芯片是一种新型的器件,TI、ADI和Silicon Lab等公司都有推出拥有各自专利的数字隔离器件,但各家芯片的引脚封装和引脚功能大部分都是兼容的,可以直接替换。相对传统的高速光耦,数字隔离器件具有功耗低、传输速率高、兼容3V/5V系统和外设简单等优点。实际连接电路如图3所示。

 

  3 系统软件设计

  3.1 监控程序

  智能电机保护器中,MCU只要完成电流和电压的采样、计算、分析来实现各种保护功能,并且实时显示线路的参数和记录故障状态。

  系统软件中,全局监控软件用来循环扫描各个单元子程序的状态,包括模数转换器的数据采样,数据采集完成后对数据进行计算,而后根据计算结果和预先设置的电机参数,结合保护策略判断出当前电机的状态。最后通过LCD显示器和输出控制接口发出相应的状态信息和控制功能。

  3.2  ADC的配置和使用

  由于电机保护器采集的是50Hz工频电压电流,同时为了能够监测到电网中的高次谐波成分(主要是3次谐波),因此在ADC的采样频率需要设置在工频的整数倍,从而使得采样快速傅立叶(FFT)运算时得到最准确的精度。同时,数据采样时,由于计算功率需要同时采集电压、电流值,因此在系统设计时,将三相的参数分别分配到两个模数转换器,而将温度量放置在第三个模数转换器。所有的模数转换均采用内部定时器中断触发。

  对于电压和电流的采集,系统采用同步采样模数,即同时采集同一个通道的电压和电流值;同时在采样通道配置寄存器中,将三个电压电流通道依次排列,使得在一次定时器触发下,一次性完成所有通道的转换。

  由于FFT需要一组数据进行计算,所以为了最低程度的CPU干预,系统设计使用了DMA来完成转换结果的传递。程序设计时,需要设置两块数据存放区,用于采样数据的交替存放;同时DMA传递的字节计数的预置值即为傅立叶转换数组长度乘以采集的通道数。

  3.3  远程通讯

  电机保护器设计为MODBUS从机,所有的电机运行状态、控制状态等参数都是放置在系统约定地址的寄存器中。同时MODBUS从机需要给每一个电机控制器预置一个网络中唯一的从机地址,所以还需要使用按键和LCD屏幕来设置从机地址。

  4 结语

  本文提出一种基于STM32系列新品的智能电机保护器,本设计充分利用了STM32芯片的资源,提供必要的外围器件构成了一个完整的系统。实际应用证明,此系统能有效保护电机,且具有结构简单、功能完善、接口丰富等优点,根据实际需要还可以开发出诸如USB、CAN open等接口,因此此系统可以更广泛地应用于工业生产各个领域。

此内容为AET网站原创,未经授权禁止转载。
Baidu
map