装置由信号检测模块、核心控制置板以及输出控制模块三个部分构成,系统的硬件构成如图1所示。
图1
信号检测模块主要包括输入电压过零信号检测,三相异步电动机电流过零信号检测,电动机各项电参数检测。驱动模块包含晶闸管驱动电路,负责接收控制信号,并将控制信号转换为可以驱动晶闸管的控制端。控制模块是本装置的核心,主要功能是获取信号检测模块检测的各种信息,判断电动机是否有故障状态,包括缺相、过流等信息,同时还需要判断电动机的负载状态,调用电压调节的算法,找到一个能让电机工作在效率较高的导通角,进行处理之后,控制器可以通过RS485总线将电机的状态信息传输到上位机。
电流过零检测电路
三相异步电动机是典型的感性负载,所以流过电机的电流信号是滞后于输入的电压信号的,而品闸管是半控型的电力电子器件,通过控制信号只能控制晶闸管的导通,而关断要靠电流信号的过零来实现,考虑到三相异步电动机在运行的过程中会因为所带负载不同导致功率因数不同,面且不同型号的电动机的额定功率因数也不同,为了实现装置的通用性,检测电动机的电流过零信号是必须的。图2所示的电路为第一相的电动机电流过零检测电路,其中A和OUT-A信号是晶闸管的两个瑞点,信号经过限流电阻和整流电路之后变成直流信号,整流后的直流信号通过光耦6N139,将过零信号提供给微处理器检测。当晶闸管没有导通时,电流会通过限流电阻经过整流桥到6N139的控制端,6N139导通,此时6N139的6引脚会输出低电平;当晶闸管导通时,由于晶闸管上的管压降非常小,所以几乎没有电流流过整流桥,所以6N139不会导通,6引脚输出高电平。所以6引脚输出的下降沿便是电动机的电流过零点。
图2
电动机电参数检测
在电动机的运行过程中,需要对电动机的各项电参数进行检测,例如电压电流有效值,有功功率,无功功率等,这些参数通过液晶屏显示,可以直观的看到电动机的运行状态,同时这些参数也通过RS485发送到上位机上便于监控。考虑到通过微处理器直接测量这些参数计算较为麻烦,精度也不会很高,从实用性和精确性的角度触发,本装置选用专门为三相电能计量设计的专用芯片ATT7022b,该芯片内部集成了六路二阶sigma-deltaADC、参考电压电路以及所有功率、能量、有效值等测量电路。该芯片支持纯软件较表,无需对硬件进行改动,经过校准后可以达到较高的测量精度。电动机的三相电压和三相电流信号经过电压互感器和电流互感器之后接到ATT7022b芯片上,该芯片与微处理器的接口通过SPI通信接口实现,微处理器可以很方便的读取到电动机的各项电参数信息。ATT7022b的部分硬件电路如图3所示。
图3 ATT7022b部分硬件电路图
晶闸管驱动电路
本装置的输出模块选用的是双向晶闸管,所以总共只需要三路控制信号即可。晶闸管驱动电路由MOC3052构成,MOC3052是可控硅输出的光电耦合器,在其内部不仅有发光二极管,还有一个小功率的双向可控硅,其中一路的驱动电路如图4所示。每一路的驱动由两个MOC3052级联构成,提高了驱动电路的耐压等级,其中MOCIN-A信号为微处理器发出的驱动信号,光耦隔离放大输出信号为A-G,接到双向晶同管的门级。由于晶闸管在关断时电流的变化很大,会产生过压导致晶闸管损坏,在晶闸管驱动电路中还増加了RC阻容电路和压敏电阻来进行过压保护。
图4 MOC3052晶闸管驱动电路
其他电路
1)通讯电路:通讯部分采用MAX1348(7EESA)实现微处理器TTL电平到RS485差分电平的转换,和普通的485转换芯片相比,该芯片通过硬件自动控制数据流向,不需要通过编程控制,简化了程序的设计。该芯片与微处理器的异步串行通信接口UART相连。
2)人机交互:本装置在人机交互方面使用的是按键+LCD的方式。其中LCD液晶屏采用的是COG12864液晶,控制芯片为ST7565p。该控制芯片在并行数据传输的模式下支持8080总线,鉴于微处理器提供了FlexBus灵活总线接口,可以兼容ST7565p使用的8080总线,因此,可将该液晶的控制线和数据线与微处理器的FlexBus接口对接,通过总线操作液晶屏幕5,数据和命令的传输由硬件实现,和操作GPIO的方式相比数据传输的效率更高。
软件设计
由于系统需要完成电流电压过零信号检测,晶闸管控制信号输出,电动机电参数读取,按键扫描,液晶菜单显示,与上位机通信等多项任务。为了提高系统的可靠性与稳定性,在软件设计的过程中使用了嵌入式实时操作系统MQX,所有的任务都是在MQX操作系统下进行开发的。
MQX是一款主要面向工业控制、消费电子、汽车电子等领域的嵌入式实时操作系统,支持多任务、可抢占,快速中断响应,拥有多种任务同步机制,兼容可移植操作系统接口(Portable Operating System Interface,POSIX),具有可裁剪、组件模块化、运行效率高和实时性强等特点。
系统的层次结构图如图5所示。系统一共调度8个任务,两个中断,主要完成人机交互,与上位机通讯以及电动机的状态检测和调压控制等功能。
图5系统三层结构图