基于CAN 总线的电动机保护装置的设计
扫描二维码
随时随地手机看文章
摘要: 对三相异步电动机保护系统的硬件及软件实现进行了研究, 以Freescale DSP 56F807 微处理器为控制核心,配以CAN 总线、液晶显示以及采样等其他功能模块。而现场总线技术把专用微处理器置于测量控制设备中, 把单个分散的测量控制设备变成网络节点, 将其连接成可以相互沟通信息、共同完成控制任务的网络系统。在算法上由于DSP 有强大的数据处理能力,对瞬时电压、电流和负序电流的幅值进行精确的计算而不需考虑时间的问题, 用软件计算的方法替代硬件逻辑, 减少硬件资源的浪费。
电动机是各行各业应用最为广泛的动力设备, 但由于在使用过程中保护力度不够, 经常出现以下问题: 装置功效低下, 保护装置经常出现拒动从而使电动机烧毁, 由于误动而跳闸。近年来, 随着计算机技术、自动控制理论以及信号处理理论的不断发展, 出现了以微处理器为核心、将继电保护与计算机技术相结合形成的微机继电保护装置。
1 系统硬件设计
系统采用双CPU 结构, 设计并实现了一套由数字信号处理器56F807 加单片机W78E516 构成的微机保护测控装置。FREESCALE 数字信号处理器56F807 ( 此后简称为56F807 ) 作为主芯片完成信号采集、信号处理、保护和通讯等功能。该芯片具有A/D 转换、开入和开出回路以及串行通讯口等功能, 信号输入电压为0 V~3 V, 转换速度最快为每次同时扫描需要5.3 μs, 采集的路数、位数和速率完全满*流采样的要求。单片机W78E516 完成人机接口的所有功能。两个模块之间采用基于MODBUS 协议的RS -485 总线进行实时通讯。这种双CPU 结构具有并行工作、分工合作的优点, 既保证了继电保护的速动性、选择性、灵敏性和可靠性, 又实现了实时测量的高精度。通过CAN 总线实现远程的实时监控与调试。因此, 用户可以根据现场网络灵活选用通讯接口方式。这样真正实现了电动机的智能保护、集中监控和管理。该系统硬件框图见图1。按其功能分为两大模块: 由数据采集模块、开入开出模块、EEPROM 模块和DSP 56F807 组成的保护模块; 由CAN 总线和通过RS-485 总线连接的显示电路组成的监控模块。
图1 系统硬件框图
1.1 保护模块功能
保护模块的主要功能是完成数据的采集、处理、计算、保护逻辑判断和出口逻辑判断及动作。硬件电路图如图2 所示。
图2 系统硬件连接图[!--empirenews.page--]
1.1.1 数据采集模块
该系统的模拟量采集使用56F807 自带的12 bit 、16通道的A/D 转换器, 电压和电流测量中采用定时采样频率为1 600 Hz , 采样间隔约为0.625 ms 。对于50 Hz 的工频交流信号而言, 每个周波的采样值为32 个点。外部电流及电压输入经隔离互感器, 低通滤波器输入至模数变换器, 进行A/D 转换得到若干序列的离散采样值, 然后通过Fourier 算法得到Ia、Ib、Ic、I0、Ua、Ub、Uc和U0的幅值。同时计算推导出电动机的有功功率、无功功率、功率因数等参数。
1.1.2 开入开出模块
开入开出模块根据开发要求, 装置设计了12 路开入量,12 路开出量。开入量用于电机启动、停机和报警状态反馈等信息量的采集。12 路开出量, 主要用于各种故障的跳合闸和报警使用。本系统采用由8 个I/O 口发出4 个开出量信号以及通过8 bit 串行输入, 串/并行输出移位寄存器74HC595 控制8 组输出控制8 个开出量。为了防止干扰引起的误动, 利用两个关联的I/O 口同时输出不同电平时光耦动作, 实现对开出信号的开放与闭锁功能。当开出条件满足时, 开出量再经过TIL113 光电耦离后输出, 驱动外部继电器, 实现保护出口动作。
1.1.3 数据存储单元模块
X5043 芯片是美国XICOR 公司生产的集上电复位、“ 看门狗” 定时器、电压监控和串行E2PROM 四项功能于一体的专用集成芯片, 用以降低系统成本、节约电路板空间。X5043 中上电复位、“ 看门狗” 定时器、电源电压监控功能对系统可以起到保护作用;512×8 bit 的E2PROM可用来存储系统内的重要数据。
1.2 监控模块
1.2.1 CAN 通信模块
当前有很多微控制器将CAN 控制器嵌入到系统之中,DSP 56F807 内部也集成有CAN 控制器, 它支持标准和扩展信息帧, 外围只需连接CAN 收发器即可以方便地将CAN 控制器连接到CAN 总线网络上, 网络上任一节点均可在任意时刻主动向网络上其他节点发送信息,实时接收和发送数据。
1.2.2 其他模块
RS-485 通讯: 通讯采用485 主从网络, 使用MAXIM公司生产的差分平衡性收/发器芯片MAX485 ,MAX485系列芯片采用半双工通讯, 可以实现多台器件综合保护的联网功能。每个IC 芯片包含一个驱动器和一个接收器, 符合RS-485/RS-422 通讯标准。
6N137 光耦合器是一款用于单通道的高速光耦合器, 具有温度、电流和电压补偿功能, 在本次设计中, 使用6N137 光耦合器将DSP 中TXD1 和RXD1 信号与TX和RX 隔离开。
显示电路: 作为电机保护系统的显示模块, 本系统使用的LCD 是TG160128A1, 它已由制造商装配好了液晶显示驱动, 并提供了驱动电路的接口, 通过DSP56F807的I/O 口可以实现对LCD 的读写操作。
电源模块:DSP 的工作电压是3.3 V, 而开发板的供电电压为5 V, 所以必须做一个5 V~3.3 V 电压的转换。
使用了AS1117M5 -33 芯片把5 V 电压转换为3.3 V 电压。数字电源和模拟电源之间用磁珠相连, 数字地和模拟地之间也用磁珠相连。模拟地和模拟电源之间连小电容, 数字地和数字电源之间也连小电容。
2 系统软件设计
在电机保护装置中, 各检测节点定期采集现场的电压电流信号, 然后用傅里叶算法对采集来的数据进行分析处理, 计算出电压、电流的有效值和各次谐波分量值,并进行幅值、相位、正负序等实时参数计算, 判断得到的实时值是否超过限定值, 即判断是否发生故障, 并通过CAN 总线将数据发送到上位机。
2.1 系统总体软件
设计本系统软件设计采用的是模块化设计, 分为三个部分: 初始化模块、系统控制模块和通信模块。初始化模块主要完成DSP 系统、外设部件, 以及系统管理方式的初始化等。由于电机保护系统是实时性要求严格的系统,因而采用主程序模块和中断子程序模块相结合的方法。
中断子程序主要由保护模块和通信模块组成。主程序流程图以及保护模块流程图如图3 所示。
图3 系统流程图[!--empirenews.page--]
2.2 各相电流、电压幅值算法
由于56F807 芯片具有以下优点: 在一个指令周期内可以完成一次加法和一次乘法, 程序和数据空间分开, 可以同时访问指令和数据、支持流水线操作, 使取址、译码和执行等操作可以重叠进行。另外其主频极高,可以为在设计中采用复杂、精确的保护算法提供时间保证。故求取电流与电压的幅值均采用付氏滤波算法。先求出付氏正、余弦系数, 再用平方、开方公式算出幅值。
设输入电量为:
如有离散后一周波内连续N 点采样值Y1、Y2,Y3,Yn, 则可求出全周傅氏正、余弦函数如下:
式中:N 为一周波采样点数,600 Hz 采样频率时,N=12。
k=1 时得到基波的正、余弦系数为:
然后依据(6) 式计算出幅值的精确值, 进行准确、可靠的故障判断。
由(6)式对幅值的计算中有两次平方和一次开方, 计算量比较大, 所以选用有着强大计算功能的DSP, 可以不用考虑时间问题而保证幅值的精确性, 从而保证了保护的可靠性。
2.3 负序电流算法的选择
负序电流作为电机保护中一种判据, 在判断是否有不对称故障和不对称故障的类型时, 有着非常重要的作用。由于选用的DSP 有着非常强大的处理数据的能力,可以考虑用软件计算的方法替代硬件逻辑的方法, 不仅可能减少硬件的连接, 而且能够提高整个保护的可靠性和精确性。
由于三相电流XA、XB、XC可以根据对称分量法分解为正序、负序和零序三个分量, 而对称分量负序与三相基波相量的关系为:
由于采样率为每周12 点, 三相电流采样瞬时值为XA(k)、XB (k)、XC (k), 则通过快速负序算法, 实际中取瞬时负序电流为:
由(8) 式可以看出, 负序电流的瞬时值于A 相第k点采样,B 相第k 和第k-4 点采样值以及C 相的第k-4点采样值有关, 利用电流幅值计算公式就可以精确计算出负序电流的幅值。
2.4 CAN 通讯模块
在各种现场总线中,CAN 总线不仅具有突出的可靠性、实时性和灵活性。而且还具备很多其他总线不具备的特点:
(1) 由报文标识符(11 bit 或者29 bit) 确定的总线访问优先级;(2) 采用非破坏性总线仲裁技术, 当两个节点同时向总线发送信息时, 优先级较低的节点会主动退出发送,优先级较高的节点可以不受影响;(3)采用的是短帧结构, 传输时间短, 受干扰概率低,具有良好的检错效果, 而且CAN 的每帧信息都有CRC校验, 保证了极低的数据出错率;(4) 在CAN 节点严重错误的情况下具有自动关闭输出功能, 以使总线上其他节点的操作不受影响;(5)CAN 只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。
每个发送缓冲区都有14 B 的寄存器结构。这个寄存器结构包括数据帧的标识符、等待发送的数据、发送数据帧的长度和发送缓冲优先级寄存器。[!--empirenews.page--]
2.5 CRC 校验在56F807 中的算法实现
为了能够将信息可靠快速的及时的传给对方, 考虑传输距离、现场状况、干扰等诸多因素的影响, 一般在通信时采用数据校验的方法。循环冗余码校验就是常见的校验方法之一。
循环冗余校验码CRC(Cyclic Redundancy Check Code)是线性分组码的分支, 是一种检错能力很强的循环码。
循环冗余校验对传送数据作错误检测(Error Detecting) 是利用除法及余数的原理。编码和解码方法简单, 容易实现, 检错能力强, 误判概率几乎为零, 而且这种方法取得校验码的方式具有很强的信息覆盖能力, 是一种效率极高的错误校验法。校验基本原理如图4 所示。
图4 CRC 校验基本原理图
CRC 生产多项式G(x)由协议规定, 目前已有多种生产多项式列入国际标准中, 例如:
CRC-12 G(x)=x12+x11+x3+x2+x+1.
CRC-16 G(x) =x16 +x15 +x2 +1 等, 在本次设计中选用的是CRC-16 。
CRC 的编解码用到模2 的多项式除法, 而多项式除法可以采用带反馈的移位寄存器来实现, 因此, 用DSP来实现CRC 编解码的关键是通过DSP 来模拟一个移位寄存器(也就是模拟手写多项式除法)。考虑到56F800 系列DSP 的累加器A 和B 均为32 bit , 因此, 可以用一个32 bit 累加器A 作为移位寄存器。在CRC 的编码和解码中均涉及到码的移位和异或操作, 这可以通过56F800 系列的LSR、LSL( 逻辑移位) 和EOR( 逻辑异或) 两条指令来实现。CRC 校验的流程图如图5 所示。
图5 CRC 校验流程图
本设计是利用DSP56F807 芯片强大的功能, 配以外围功能模块, 实现对电动机的电流、电压信号的整流、滤波并转换为直流信号, 送到DSP 的A/D 口经过保护算法, 判断是否动作、故障处理以及参数设置、液晶显示,并且通过现场总线对网内所有的电动机进行状态实时监测、运行控制、数据处理以及参数调整, 其功能是以前的简单数字保护装置无法相比的。通过对设计成的保护装置样机进行调试和分析表明, 保护动作正常, 其他相关保护测试都满足相关要求, 初步验证了系统硬件部分和软件部分设计的正确性。