基于CAN 总线的电动机保护装置的设计
常见的校验方法之一。
循环冗余校验码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 口经过保护算法, 判断是否动作、故障处理以及参数设置、液晶显示,并且通过现场总线对网内所有的电动机进行状态实时监测、运行控制、数据处理以及参数调整, 其功能是以前的简单数字保护装置无法相比的。通过对设计成的保护装置样机进行调试和分析表明, 保护动作正常, 其他相关保护测试都满足相关要求, 初步验证了系统硬件部分和软件部分设计的正确性。
- Labview基本常见问题解答(连载四)(05-10)
- CAN总线系统测试技术(05-11)
- 基于CAN总线的GaAs光电阴极制备测控系统(07-27)
- 基于LabVIEW的智能开关综合保护装置的数据获取与处理(03-09)
- 基于双层CAN总线的声纳数据通信系统设计(01-23)
- CAN总线网络测试研究(02-10)