基于PLC的模糊控制在船舶舵减摇系统的应用
摘 要: 为了提高船舶在复杂海况下的操作性能,有效地减小船舶的横摇,保持船舶航行的稳定性,针对船舶舵减摇系统存在的非线性和时变性问题,采用基于PLC的模糊控制方法,由施耐德PLC及其常规输入/输出模块组成模糊控制器,利用Unity Pro XL软件采用模块化编程方法实现其控制功能。在实验室条件下对构建的控制器在舵减摇系统中进行了初步测试,试验表明,基于施耐德PLC实现船舶舵减摇系统模糊控制的制定,既保留了可编程逻辑控制器PLC的灵活性、可靠性、适应能力强等特点,又提高了整个控制系统的智能化程度。
关键词: 船舶; PLC; 模糊控制; 舵减摇系统
中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2016)02?0140?03
Application of fuzzy control based on PLC in ship rudder roll stabilization system
ZHOU Ying1, HU Dabin1, JIN Rufeng2, HU Jinhui1
(1. College of Power Engineering, Naval University of Engineering, Wuhan 430033, China;
2. School of Naval Architecture, Dalian University of Technology, Dalian 116023, China)
Abstract: To improve the ship operating performance under complex sea conditions, reduce the ship rolling effectively, and maintain the stability of the ship navigation, for the problems of nonlinearity and time?varying characteristics existing in the ship rudder roll stabilization system, a fuzzy control method based on PLC is adopted. The fuzzy controller is composed of PLC made by Schneider and conventional input/output modules. Its control function is realized by means of modularization programming method with Unity Pro XL software. Under the condition of laboratory, the constructed controller was tested in rudder roll stabilization system. The test results show that the fuzzy control based on PLC made by Schneider for the ship rudder roll stabilization can retain the characteristics of flexibility, reliability and strong adaptability of PLC, and improve the intelligent level of the whole control system.
Keywords: ship; PLC; fuzzy control; rudder roll stabilization system
0 引 言
在现代工业的实际系统中,由于非线性、时变性和滞后性的存在,传统的控制理论难以取得理想的控制效果。对于这样的系统,比如电机的阻力随主轴转速非线性变化,采用模糊控制器能取得更好的效果。所谓的模糊控制器,是基于模糊算法的控制系统进行控制,模拟人的思维逻辑方法,不需要精准的数学模型,只需要把人的经验归纳为定性描述的语句,利用模糊理论,将其定量化,可以完全代替人的手动操作实现自动控制功能。可编程逻辑控制器(PLC)因其可靠性高、编程简单灵活、维护方便等优点,广泛应用于工业控制中。传统的PLC自动控制系统虽然具有开发时间短、设计方便等优点,但却存在着控制精度不高和自动化程度低的缺点。而基于PLC的模糊控制能够回避对复杂被控对象的建模问题,将操作人员的经验转化为模糊控制规则,可以构造出对被控对象进行自动化程度较高的自动控制系统。PLC 上实现模糊控制的基本方式分两种[1]:一是使用专用的硬件模糊控制器,这种方式推理速度快,控制精度高;缺点是其价格昂贵,使用范围受到限制;另一种是在软件上用模糊算法取代数字控制算法,把模糊控制程序作为PLC控制程序中的一个子程序,这种方法组成简单,灵活性高,应用范围广。
本文采用第二种方法,利用Unity Pro XL软件,采用模块化编程的方法,使用语句表编制程序实现模糊控制算法,使预想的模糊控制策略在施耐德PLC上得以实现。并将之运用到船舶舵减摇系统当中进行研究分析。本文研究的目的:将PLC的模糊控制方法应用于舵减摇系统中,提高船舶在复杂海况下的操作性能,有效地减小船舶的横摇,保持船舶航行的稳定性。
1 舵减摇系统模糊控制策略
舵减摇装置可以利用船舶上已有的舵机的操纵系统,只要增添传感器、控制器等少数部件就能实现其相应的功能。舵减摇系统装置的设备质量轻、体积适中,因此在大中型军舰和商船中应用广泛。模糊控制运用模糊理论逻辑方法进行控制,具有判断、推理、决策的功能,不苛求被控制系统要具有精准的数学模型,具有较好的鲁棒性。因此,为了提高控制系统的稳定性和可靠性,在舵减摇系统中采用模糊控制。
1.1 控制系统结构
舵减摇模糊控制系统由两大部分组成:一是操舵控制系统与船舶串联的部分;二是舵机伺服系统与船舶串联的部分。整个系统可由施耐德PLC控制器及相应的传感器构成,其控制原理图如图1所示[2]。
图1 舵减摇系统
1.2 变量自整定模糊控制器的设计
舵减摇控制器的输入语言变量为船舶横摇角Φ和船舶横摇角变化率Φ*,输出语言变量为舵角δ。这样就为舵减摇系统确定了一个双输入/单输出的模糊控制器,并制定相应的模糊控制规则,可以达到减摇效果。按照实际的控制经验,选取横摇角Φ、横摇角变化率Φ*和输出控制量舵角δ的基本论域分别为:
横摇角Φ为[-45°,45°];横摇角变化率Φ*为[-10,10];输出控制量舵角δ为[-50°,50°]。
将横摇角Φ、横摇角变化率Φ*、输出控制量δ所对应的语言变量E、EC以及U分成7档,每一档对应一个模糊子集:
E={PB,PM,PS,ZO,NS,NM,NB};
EC={PB,PM,PS,ZO,NS,NM,NB};
U={PB,PM,PS,ZO,NS,NM,NB}
可用模糊语言状态词正大、正中、正小、零、负小、负中、负大来描述E,EC和U,对应的符号分别为PB,PM,PS,ZO,NS,NM,NB。E和EC的论域定义为[-6,6], U的论域定义为[-7,7]之间,选择三角形函数作为确定模糊语言变量的隶属度。由此,模糊控制器可完成对输入变量的模糊化,求得输入变量的赋值表。模糊输入变量由模糊控制规则进行推理决策,推理决策的结果经过模糊控制器变换成实际的校正量,这样就完成了进一步控制。
基于PLC的模糊控制器,在程序功能的实现上,控制规则采用条件语句形式,即“if…and…,then…”。总结控制经验,因为每一条模糊控制条件语句都决定了一个模糊关系,故共有49条控制规则。可得舵减摇系统模糊控制器的总的模糊控制关系矩阵R为:[R=R1∨R2∨…∨R49],其中[∨]表示取大。应用模糊控制理论合成推理法得到的模糊控制量查询表,见表1。
表1 模糊控制量查询表
1.3 模糊控制程序流程图
整个模糊控制程序的流程图如图2所示[3]。
图2 模糊控制程序流程图
2 Unity Pro XL实现的模糊控制算法
2.1 硬件选型
基于PLC的模糊控制工作的核心是PLC控制站[4?6],其初步配置选型如下:选用电源模块CPS 3020,CPU模块P34 2020,ModBus通信模块NOM 0200、模拟输入模块AMI 0410、离散输入模块DDI 3202、继电输出模块DRA 1505。其各部分的功能如下:电源模块将交流电转化为PLC控制站所需的直流电;CPU模块实现逻辑和计算功能;ModBus通信模块实现ModBus总线的通信连接;模拟输入模块将信号转化成数字代码并转发到CPU模块;离散输入模块处理逻辑输入信号,并将信号转化成数字代码传送到CPU模块;继电输出模块转换来自CPU的信号,驱动执行机构动作,同时将信号发送到报警装置。
2.2 程序设计
在整个程序编程时,将模糊控制量查询表依次存储在PLC的内存%M1000~%M1168中,之后最关键的是如何查询模糊控制量查询表。可以用直接寻址的方法,简单明了,控制性能好,但是缺点是查询表的容量很大时,程序就变得十分冗长,而且占用了大量的内存。为了避免这种情况,可以采用“基址+偏移寻址”的方法。计算法则为:U的地址=%M1000+13(e+6)+(ec+6),e,ec代表E和EC论域中的元素。最终由处理器模块实现模糊量到精确量的转化,将最终计算结果送到输出模块实现控制功能,部分程序语句如下:
%MW56 := ADD (%MW54, 6) ;
%MW57 := ADD (%MW55, 6);
%MW58 := MUL (%MW56,13);
%MW60 := ADD (%MW58,%MW57) ;
%MW62 := ADD (%MW100,%MW60) ;
%MW64 := MOVE(%MW62) ;
3 结 语
在实验室条件下对所构建的控制器在舵减摇系统中进行了初步测试,试验中采用仿真微机+I/O模块的方法模拟生成实际系统待检测信号。实验室模拟的测试中,系统的控制功能正常,在工况变换时响应速度快,能够有效地保持船舶航行的稳定性。模糊控制器的设计和试验表明,基于施耐德PLC实现船舶舵减摇系统模糊控制的制定,既保留了可编程逻辑控制器PLC的灵活性、可靠性、适应能力强等特点,又提高了整个控制系统的智能化程度。对于那些时变的、非线性、难以建立数学模型的被控系统,基于PLC的模糊控制方法应为一种较为理想的控制方案。
参考文献
[1] 蔡军,曹慧英.基于PLC模糊控制的调速系统研究[J].微计算机信息,2008(25):56?57.
[2] 郑明辉,杨松林,王志东.一种采用模糊控制的舵减摇系统的仿真研究[J].船电技术,1997(1):17?20.
[3] 康斌栋,王志新.基于PLC模糊控制软件的设计研究[J].机电一体化,2000(1):57?58.
[4] 苏攀,吴杰长.基于PLC的船舶机舱设备的双层网络控制系统设计[J].船海工程,2015(2):104?106.
[5] 郑阿奇.施耐德PLC应用技术[M].北京:电子工业出版社,2011.
[6] 王兆宇.施耐德PLC变频控制器触摸屏综合应用[M].北京:中国电力出版社,2012.