模糊控制在基于CAN总线的数据采集与控制系统中的应用
扫描二维码
随时随地手机看文章
1 CAN总线的特点
CAN总线最早由德国的BOSCH公司提出,它具有以下性能:
(1) 多主方式工作,非破坏性的基于优先权的总线仲裁技术;
(2) 采用短帧结构,受干扰概率低,每帧信息都有CRC校验及其它检错措施;
(3) 对严重错误具有自动关闭总线功能,使总线其它操作不受影响;
(4) 灵活的传输介质,多样、快速和远距离的信息传送方式。
基于CAN总线的以上特点,我们设计了一种采用CAN总线技术和模糊控制技术的控制系统,其结构框图如图1所示。
2 模糊控制器的设计
模糊控制器的设计主要是设定各输入与输出变量模糊子集的隶属函数?模糊变量的量化论域、模糊控制规则、输入输出变量的比例变换因子等参数。常规模糊控制器的输入是将连续信息经量化因子量化成几个等级后的数据,但因不能把输入论域无限细分,只能划分为有限的几个等级,且由于系统没有积分环节,所以在系统的平衡点附近容易产生振荡或出现极限环。针对常规模糊控制器不能消除稳态误差的情况,我们设计了一种智能型模糊控制器,其结构图如图2所示。
该模糊控制器与常规模糊控制器的不同之处就是在控制规则库上并联了一积分环节以减少或消除系统的稳态误差。其控制规则可根据系统的控制响应曲线来获得,为了使系统输出尽快跟踪输入且使系统误差在允许的精度范围内,采用了分段引入积分环节。在系统响应曲线偏离平衡点即系统误差趋势增大时,引入积分作用;而在系统响应曲线从偏离点趋向平衡点即系统误差趋势变小时,取消积分作用。并且K值的大小要适中,过大会使系统振荡,过小体现不了积分作用。此设计思想可写成如下表达式形式:
其中,f(e,ec)为模糊控制规则部分的输出,K∫Edt为积分环节的输出。
由图2可知,该模糊控制器的输入为系统的偏差e和偏差变化率ec,输出为控制量的增量Δu;ke、kc为量化因子,ku为比例因子;E、EC、ΔU分别为e、ec和Δu的模糊语言变量。输入、输出变量被划分为正大(PL)、正中(PM)、正小(PS)、零(ZO)、负小(NS)、负中(NM)、负大(NL)7个模糊状态,其相应论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}13个等级。在充分考虑到控制系统的非线性?大时滞等情况下,根据专家先验知识和现场熟练操作者总结出来的操作经验,我们得出如下的控制规则,如表1所示。
[!--empirenews.page--]表1的模糊控制规则可用if—then语句形式表示为:if Ei and ECj then Uij,根据Mamdani推理法则,此控制规则可用模糊关系表达式表示为:
若某时刻的偏差为,偏差变化率为,则得到相应的控制量为:
当式(2)遍历所有的控制规则后可得到总的模糊控制规则表,如表2所示。
系统输入变量的隶属函数采用三角形隶属度函数,模糊判决采用最大隶属度原则,积分环节的加入与否由式(1)决定,若加入积分环节则合并该分量得到相应的控制增量Δu。
3 模糊控制算法实现
3.1 硬件实现
考虑到大规模过程控制系统的分散性和信息的多样性,采用了现场总线中的CAN总线把各个子系统有机地联系起来,实现了集中管理和对各现场设备实时?有效的控制。其硬件电路图如图3所示。
现场控制单元以AT89C51芯片为核心,主要负责对现场设备状态的显示与报警、对采集来的数据进行处理和对SJA1000进行操作、控制。其中SJA1000为CAN总线微控制器,主要把从AT89C51来的信息以CAN总线协议的格式发送到CAN总线上以供其它部分使用,并从CAN总线上接收有用信息提供给AT89C51作进一步的处理。本系统的A/D和D/A转换电路分开设计主要是因为一个大系统下的各个子系统之间是有联系的,某一子系统采集到的数据可能正是另一子系统作进一步处理的依据,而不是自身的需要。这样,就使各智能单元之间数据通信更为方便、快速,也便于上位机管理。该硬件电路中采用了DC-DC转换电路和多种光电隔离器件,采用了看门狗(Watchdog)复位技术,其目的主要是为了防止现场干扰信号过大而破坏核心电路以及保证系统在环境比较恶劣的情况下也能正常运行。
[!--empirenews.page--]3.2 软件实现
系统软件所实现的功能为:采样n时刻A/D转换输出值,与系统设定值和上次采样值e(n-1)比较得n时刻偏差e(n)和偏差变化率ec(n);选择合适的量化因子ke和kc,由相应的模糊化规则得到模糊值E(n)和EC(n);分析E(n)和EC(n)的变化趋势以确定是否加入积分环节。然后,根据E(n)和EC(n)的值直接查程序存储器内的模糊控制总表或进行积分运算得到模糊控制增量。最后,对加入或不加入的模糊控制增量采用最大隶属度原则进行模糊判决,选择适当的比例因子ku得到控制增量Δu,计算Δu+u(n-1)的值,即可得n时刻的控制量。该值可通过CAN总线传送给其它智能单元,进行D/A转换后即可控制现场设备或上位机做进一步的处理以协调整个系统各控制单元的正常、有效的运行。智能控制单元在处理以上任务的同时还要完成与CAN总线数据通信和对现场设备的状态显示与报警。由离线方式计算出的模糊控制总表可以直接以矩阵的形式写入芯片内部程序存储器,其软件设计流程如图4所示。
4 仿真实验
针对以上描述的模糊控制算法和控制系统设计思想,我们选择某一被控系统做了仿真实验。该被控系统的传递函数为:。从系统的传递函数可以看出,该系统非线性较强、纯滞后大(T=1s);对纯PID控制算法和本论文讨论的模糊控制算法的阶跃响应曲线如图5所示。
其中,曲线1是在kp=1、kc=0.2和kd=1.25参数下纯PID控制的系统响应曲线,曲线2是在ke=48、kc=80和ku=7情况下采用模糊控制算法的系统响应曲线。从系统控制响应曲线2来看,由于该模糊控制器采用了纯模糊控制算法和加入积分环节相结合的方案,在系统响应偏离平衡点较远时,只有模糊控制的作用,响应速度很快,曲线斜率大;而当响应接近平衡点且有偏离趋势时,由于加入积分环节,曲线变化速率变慢,几次作用后,系统响应最后在平衡点附近稳定或到达平衡点。与纯PID控制器算法相比,它具有算法简洁、响应速度快等特点。同时要使系统达到快速响应且无超调,在参数选择上是矛盾的,只凭固定的参数ke、kc和ku很难达到要求。因此,ke、kc和ku参数的选择可以根据E和EC的变化而调整以达到提高系统的稳态精度的目的,这样整个控制系统既能达到控制的快速性,同时还能实现减少或消除系统稳态误差的效果。
模糊控制和现场总线是近些年控制领域向智能化、全面化、快速化方向发展而建立起来的两门新技术;把智能控制与现场总线结合起来是以后工程控制中的主要应用方向。从整个控制系统的设计过程和仿真结果来看,系统的硬件结构相对比较简单,软件实现方便,系统控制效果理想,实时性好。