当被控对象偏离设定的平衡位置时,其偏离误差为:
E=( Ia0-Ib0) -( Ia- Ib)
其中:Ia0和Ib0为设置的平衡位置处两路光敏元件输出电流基准值。Ia和Ib为检测过程中任意检测位置处两路光敏元件电流输出值。
偏离误差的变化为:
△E= [E(nT) -E(nT-T)]/T
定义误差E的语言值模糊子集为:{NL,NB,NM,NS,O,PS,PM,PB,PL}。定义误差变化ΔE和输出U的语言值模糊子集为:{NB,NM,NS,O,PS,PM,PB}。

以上设计主要通过Fuzzy Logic Toolkit 的模糊逻辑控制器设计VI 进行,该VI由模糊集合编辑器、模糊规则库编辑器和输入输出性能测试三部分组成,用户可以直观方便地设计和修改模糊控制器的隶属函数、控制规则、解模糊方法、推理算法及其它相关参数,并对模糊控制器的输入输出性能进行初步检验和测试。通过该VI设计好的模糊逻辑控制器,以后缀名.fc的形式保存于一个数据文件中。
在后台框图程序中,利用模糊控制器VI 将设计好的模糊控制器作为一个图形功能模块同程序其它部分相连,并在运行时通过模糊控制器载入VI将*.fc数据文件中的所有模糊控制器参数加载到模糊控制器VI中,以实现所需的控制功能。
另外,为了同常规控制方法进行比较,程序中还设计了PID控制模块。
自调整因子控制方法的实现
由于LabVIEW 的模糊逻辑工具包只能进行常规模糊控制器设计,当控制对象参数变化时,控制效果受到影响,为此,引入了自调整因子模糊控制方法。
自调整因子模糊控制方法在常规模糊控制的基础上增加了性能测量和参数寻优、调整等功能,而这几个模块计算较复杂,利用LabVIEW 的图形化G语言来编写相对烦琐,程序运行效率受到一定影响。由于LabVIEW 提供了调用库函数节点CLFN(Call Library Function Node)和代码接口节点CIN( Code Interface Nodes) ,可以利用它们来调用如C、FORTURN 等编写的外部程序资源。因此,采用了C 语言来编写以上几个功能模块,通过CIN 方式在LabVIEW环境下调用,从而实现模糊控制器的自调整功能,经实际运行表明,程序执行速度有大幅度提高,并取得了较好的控制效果。
结论
以上基于自调整模糊控制方法的包装机械位置纠偏实验系统设计,充分发挥了LabVIEW 及Fuzzy Logic ToolKit 的强大功能和易用型,开发时间短、效率高,在有关模糊控制及LabVIEW 软件设计的实验教学和包装机械位置纠偏控制的仿真及实际应用中取得了良好效果。
|