Controller Area 总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性。本文主要探讨基于RS-485与CAN总线的开关磁阻电机远程监控系统的构成。SRD调速系统通常采用传统PID控制策略,系统很难保守良好性能。目前,神经网络控制与模糊控制技术应用于SRD取得了一定的成绩。
卡尔曼滤算法是一种递推算法,对于系统存在过程及测量噪声,状态变量受到污染,可以利用卡尔曼滤波技术进行处理。本文将卡尔曼滤波器与传统的PID控制相结合,使SRD控制效果得到明显改善。
1 系统设计方案
基于CAN总线的开关磁阻电机远程控制系统如图1所示。系统主要包括PC(上位机)、RS-485与CAN结合的通信网络、CAN智能节点与开关组电机四大部分。串行接口标准的选择上位机与CAN智能节点间的距离通常较远,上位机的RS-232C接口的最大传输距离为15m,不能满足要求。而RS-485串行数据通信标准可传送1200m以上,因此宜选用后者。上位机本身具有RS-232C接口,可配备一块RS232-RS485转换板STD5630,实现RS-232电平到RS-485电平的转换。
在该远程监控系统中,采用RS-485与CAN结合通信网络,节省了CAN适配卡与专门的驱动程序,因此可靠性与性价比得到了较大的提高。
CAN总线智能节点在分布式控制系统中起着承上启下的作用。它位于执行机构所在的现场,一方面和上位机进行通信,以完成数据交换;另一方面又可根据系统的需要对现场的执行机构进行控制和数据采集。典型的CAN总线控制节点是由微处理器、CAN控制器、CAN接口构成,如图2所示。
2 硬件电路设计
2.1 RS-485接口电路设计
RS-485接口电路见图3所示。该电路主要由光耦和RS-485芯片组成,光耦能排除由于共地而可能串入的干扰。RS-485芯片采用MAX 491,其作用是实现RS-485串口传输的电气标准。图中MAX491的2个有效电平相反的引脚——接收、驱动器允许脚接在了一起,即使得RS-485工作在半双工方式。
2.2 CAN节点电路设计
系统各节点采用89C51单片机作为微处理器,选用SJA1000作为CAN控制器,并使用CAN控制器接口芯片82C250。为进一步提高抗干扰能力,在两个CAN器件之间使用了由高速隔离器件6N137构成的隔离电路。CAN器件与微处理器的硬件连接图如图4所示。硬件电路中使用82C250的目的是为了增大通信距离,提高系统的瞬时抗干扰能力,保护总线。
3 CAN总线通信软件设计
远程控制系统软件设计包括初始化程序与通信主程序设计。CAN初始化只能在复位模式下进行,初始化主要包括工作方式的设置,波特率参数设置和中断允许寄存器IER的设置。作为软件设计核心部分的是RS-485CAN接口通信编程,其程序流程图如图5所示。
4 基于卡尔曼滤波器的SRD控制器设计
在SRD控制策略上,主要以线性模型为基础,结合传统PI或PID控制器。但是普通PID控制器的参数难以自动调整,由此构建的SRD系统难以获得理想的输出特性。对于SRD系统中存在过程及测量噪声,状态变量受到污染,可以利用卡尔曼滤波技术进行滤波,将卡尔曼滤波器与传统的PID相结合,可以使SRD系统控制效果得到明显改善。
4.1 卡尔曼滤波器原理
卡尔曼滤波是以最小均方差为准则的最佳线性估计,它根据前一个估计值xk-1和最近一个观测数据yk来估计信号的当前值,利用状态方程和递推方法进行估计。设向量非平稳状态序列xk和yk用下面的动态方程描述:
式中:ωk为过程噪声信号,vk为测量噪声信号卡尔曼滤波的递推算法为:
4.2 基于卡尔曼滤波器的PID控制结构与仿真
基于卡尔曼滤波器的PID控制系统的结构图如图6所示。
仿真的被控对象传递函数为
采用常规PID控制+卡尔曼滤波器控制,令过程噪声ωk、νk协方差为1,幅度为0.02,输入信号为阶跃信号。在MATLAB中用随机函数rand()来模拟白噪声。没有加卡尔曼滤波器的常规PID控制仿真结果如图7所示,加入滤波器后PID控制阶跃响应如图8所示。
5 结束语
本文在开关磁阻电机调速系统中引入了CAN智能从站技术,并且将RS-485和CAN总线相结合,使开关磁阻电机摆脱旧的控制模式,为电机实现智能化、网络化、远程化控制提供一种新的思路。在开关磁阻电机调速系统中,将常规PID控制与卡尔曼滤波器相结合,仿真结果表明,基于卡尔曼滤波器的PID控制方法超调量小、控制效果好。
上一篇:基于USB 2.0协议的高速图像传输系统
下一篇:基于CAN总线的通信节点设计
推荐阅读最新更新时间:2024-05-02 21:25