GB/T 15969.7-2008
基本信息
标准号:
GB/T 15969.7-2008
中文名称:可编程序控制器 第7部分:模糊控制编程
标准类别:国家标准(GB)
标准状态:现行
发布日期:2008-06-30
实施日期:2009-01-01
出版语种:简体中文
下载格式:.rar.pdf
下载大小:20072224
标准分类号
标准ICS号:机械制造>>工业自动化系统>>25.040.40工业过程的测量与控制
中标分类号:仪器、仪表>>工业自动化仪表与控制装置>>N18工业控制与计算机应用装置
出版信息
出版社:中国标准出版社
书号:155066·1-33935
页数:52页
标准价格:34.0 元
计划单号:20065459-T-604
出版日期:2008-11-01
相关单位信息
首发日期:2001-02-13
起草人:唐雁、陈映萍、黄巧莉、刘进
起草单位:西南大学、中国四联仪器仪表集团、机械工业仪器仪表综合技术经济研究所等
归口单位:全国工业过程测量和控制标准化技术委员会
提出单位:中国机械工业联合会
发布部门:中华人民共和国国家质量监督检验检疫总局 中国国家标准化管理委员会
主管部门:中国机械工业联合会
标准简介
GB/T15969《可编程序控制器》分为7个部分,本部分为GB/T15969的第7部分。 本部分代替GB/T17165.3—2001《模糊控制装置和系统 第3部分:可编程控制器 模糊控制编程》。 GB/T15969的本部分定义了在可编程控制器中应用模糊控制的编程语言。本部分规定了制造商和用户将模糊控制应用集成于GB/T15969.3—2005规定的可编程序控制器语言中的基本方法,以及在不同编程系统之间交换可移植模糊控制程序的可能性。 本部分与GB/T17165.3?2001相比,主要变化如下:———将“模糊控制装置和系统 第3部分:可编程控制器 模糊控制编程”改为了“可编程序控制器 第7部分:模糊控制编程”;———将标准号由“GB/T17165.3—2001”改为“GB/T15969.7—2008”;———“定义”改为“术语和定义”(GB/T17165.3—2001的第3章;本部分的第3章);———将第3 章中术语的排列顺序,按照IEC 61131?7:2000 中术语的排列顺序进行了调整(GB/T17165.3—2001的第3章;本部分的第3章);———根据GB/T1.1—2000,进行了重新排版。 GB/T 15969.7-2008 可编程序控制器 第7部分:模糊控制编程 GB/T15969.7-2008 标准下载解压密码:www.bzxz.net
标准内容
ICS25.040.40
中华人民共和国国家标准
GB/T15969.7—2008/IEC61131-7:2000代替GB/T17165.3—2001
可编程序控制器
第7部分:模糊控制编程
Programmable controllersPart 7:Fuzzy control programming(IEC61131-7:2000,IDT)
2008-06-30发布
中华人民共和国国家质量监督检验检疫总局中国国家标准化管理委员会
2009-01-01实施
规范性引用文件
术语和定义
模糊控制在可编程序控制器中的集成5模糊控制语言(FCL)
5.1模糊控制程序的交换
5.2模糊控制语言元素
模糊控制语言(FCL)示例
5.4模糊控制语言(FCL)的产生式规则和关键字。6相符性
6.1模糊控制语言(FCL)的相符性等级6.2数据检查清单..
附录A(资料性附录)理论
附录B(资料性附录)
附录C(资料性附录)
附录D(资料性附录)
附录E(资料性附录)
工业实例:集装箱吊车
在规则块中使用变量的例子
符号、缩写、同义词
用功能块图FBD表示的模糊控制功能块示例模糊控制语言(FCL)程序的数据交换次
使用ST语言和FBD语言的功能块接口说明示例上(下)界型示例
隶属函数的变量用法示例
单点集语言项的示例
模糊功能块示例
相符性等级
语言项“法定年龄”和“成年人”的隶属函数GB/T15969.7—2008/IEC61131-7:20003
用语言形描述语言变量“年纪”和其在时间尺度(年龄)上的对应关系常用的隶属函数的形状
两个隶属函数之间运算的算法
模糊控制的结构和功能元素
模糊化原理(示例)
用控制规则形式表示的知识库
两个变量的矩阵表示
推理元索
图A.10a)
图A.10b)
图A.10c)
图A.1la)
聚集原理(举例说明)
激活原理(举例说明)
综合原理(举例说明)
清晰化方法·
GB/T15969.7—2008/IEC61131-7:2000图A.11b)
图A.1lc)
图A.11d)
图A.12a)
图A.12b)
左取大和右取大的区别
面积中心线和重心的区别
清晰化方法
模糊控制器:基本结构
模糊控制器示例
预先控制示例
参数自适应调整举例
直接模糊控制示例
工业实例:集装箱吊车
吊车头与目的地之间的“距离”语言变量集装箱和吊车头形成的“角度”语言变量“功率”语言变量
规则库
“距离”语言变量的模糊化
“角度”语言变量的模糊化
三个规则的子集
聚集的元素
聚集原理·
激活的元素
激活原理
综合的元素
综合原理
清晰化…
FCL应用实例
受控系统原理
烤炉的模糊控制原理
规则块
FCL示例
清晰化方法
清晰化方法的公式
OR和AND对偶算法
激活方法
综合方法
运算符优先级
保留关键字
FCL基本级语言元素(必备)
表9FCL扩展级语言元素(可选)开放级语言元素清单示例
数据检查清单
推理步骤和常用算法
推理步骤和指定的运算符
符号、缩写
同义词
GB/T15969《可编程序控制器》分为以下几部分:第1部分:通用信息;
第2部分:设备特性;
第3部分:编程语言;
-第4部分:用户导则;
—第5部分:通信;
—一第6部分:基于现场总线的可编程控制器通信;—第7部分:模糊控制编程。
本部分为GB/T15969的第7部分。GB/T15969.7—2008/IEC61131-7:2000本部分等同采用IEC61131-7:2000《可编程序控制器第7部分:模糊控制编程》(英文版)。根据GB/T1.1--2000《标准化工作导则第1部分:标准的结构和编写规则》,对IEC61131-7:2000进行了下列编辑性修改:
a)“本标准”改为了“本部分”;b)删除了IEC61131-72000的前言;c)凡有“IEC61131”的地方改为\GB/T15969”;d)用小数点“”代替作小数点的逗号“,”;本部分代替GB/T17165.3—2001《模糊控制装置和系统第3部分:可编程控制器模糊控制编程》。本部分与GB/T17165.3-2001相比,主要变化如下:一将“模糊控制装置和系统第3部分:可编程控制器模糊控制编程”改为了“可编程序控制器第7部分:模糊控制编程”;
——将标准号由GB/T17165.3—2001”改为\GB/T15969.7—2008\;“定义”改为“术语和定义”(GB/T17165.3一2001的第3章;本部分的第3章);将第3章中术语的排列顺序,按照IEC61131-7:2000中术语的排列顺序进行了调整(GB/T17165.3—2001的第3章;本部分的第3章);—根据GB/T1.1一2000,进行了重新排版。:本部分的附录A、附录B、附录C、附录D、附录E都是资料性附录。本部分由中国机械工业联合会提出。本部分由全国工业过程测量和控制标准化技术委员会第五分技术委员会归口。本部分负责起草单位:西南大学、中国四联仪器仪表集团。本部分参加起草单位:机械工业仪器仪表综合技术经济研究所、北京机械工业自动化研究所。本部分主要起草人:唐雁、陈映萍、黄巧莉、刘进。本部分参加起草人:冯晓升、谢兵兵。本部分所代替标准的历次发布情况为:-GB/T17165.3—2001。
1范围
GB/T15969.7—2008/IEC61131-7:2000可编程序控制器
第7部分:模糊控制编程
GB/T15969的本部分定义了在可编程控制器中应用模糊控制的编程语言。本部分规定了制造商和用户将模糊控制应用集成于GB/T15969.3—2005规定的可编程序控制器语言中的基本方法,以及在不同编程系统之间交换可移植模糊控制程序的可能性。为了帮助读者理解本部分内容,附录A简单介绍了模糊控制和模糊逻辑的最基本内容。2规范性引用文件
下列文件中的条款通过GB/T15969的本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。GB/T2900.56—2002电工术语自动控制(IEC60050-351:1998,IDT)GB/T15969.3—2005可编程序控制器第3部分:编程语言(IEC61131-3:2002,IDT)3术语和定义
下列术语和定义适用于本部分。其他有关编程语言的定义由GB/T15969.3—2005确定。注:本章定义的术语在定义主体中以黑体字出现。3.1bzxz.net
综合accumulation
把各条控制规则推理的结果汇总成一个总的推理结果。注:即推理结果的聚集。
聚集aggregation
由一条规则的多个子条件的隶属度计算该条规则条件(前件部分)的满足程度。注:即确定一条规则的激活程度,3.3
激活activation
规则条件的满足程度作用于一个输出模糊集的过程。3.4
结论conclusion
简单或多维模糊条件语句“若………,则………”中的“则…”部分。注:控制规则的输出,也称后件(consequent)。3.5
条件condition
简单或多维模糊条件语句“若………,则……….”中的“若….”部分。注:也称前件(antecedent),由模糊算子AND,OR,NOT结合各子条件组成的一个表达式。1
GB/T15969.7-2008/1EC61131-7:20003.6
清晰集crispset
模糊集的一种特例,其隶属函数仅取两个值,通常规定为0和1。3.7
清晰化defuzzification
将模糊(逻辑)推理后得到的模糊集转变成为用作控制的清晰值的过程3.8
隶属度degreeofmembership
隶属函数的函数值。表示指定元素隶属于一个模糊集合的程度,其取值范围为[0,1]区间。3.9
模糊化fuzzification
将输人量的清晰值转变为可用于模糊(逻辑)推理的模糊集合的过程注:在本部分中具体指求出清晰的输入值对于相应的输人语言变量的每一个语言项的隶属度。3.10
模糊控制fuzzycontrol
用模糊(逻辑)推理方法,模拟人的操作技能、控制经验和知识的一种控制方法。3.11
模糊逻辑fuzzylogic
应用模糊集合理论对模糊的概念、判断和推理进行量化处理和分析的一种非经典逻辑。注:模糊逻辑的狭义理解是指真值在[0,1]区间上取值的无限多值逻辑。3.12
模糊算子fuzzyoperator
在模糊逻辑中所采用的算子。
注:例如AND,OR,NOT等。
模糊集fuzzyset
带有隶属程度(以[0,1]区间上的数表示)的事物(物体、对象或概念)的整体。推理inference
以已知的模糊命题为前提(包括大前提和小前提),提出新的模糊命题作为结论的过程。3.14
语言规则linguisticrule
“IF-THEN”规则\if-then”rule,表征模糊控制策略的模糊条件语句。注:规则是一个形如“若<条件部分>,则<结论部分>”的语句,其中条件部分和结论部分二者之一或全部是语言项。3.15
语言项linguisticterm
语言变量的取值。语言项是以模糊集来定义的。注:即语言值(linguisticvalue)。3.16
语言变量linguisticvariable
以人工或自然语言的词、词组或句子(语言项)作为值的变量。3.17
membershipfunction
隶属函数
表征论域中每一元素隶属于一个模糊集合的程度的函数。2
单点集singleton
隶属函数仅在一点为1而在其余点为0的模糊集。3.19
子条件subcondition
形式为一个变量或“语言变量IS语言项”的基本表达式。3.20
规则库rulebase
为实现某些目标而建立的控制规则的总和。3.21
GB/T15969.7—2008/IEC61131-7:2000加权因子weightingfactor
描述控制规则的重要程度、可信程度和置信程度的、其值介于0~1之间的一个数。模糊控制在可编程序控制器中的集成4
模糊控制应用参照本部分第5章规定的模糊控制语言(FCL)进行编程时,应封装于GB/T15969.3—2005所定义的功能块(或程序)内。GB/T15969.3-2005给出的功能块类型和功能块实例均适用于本部分。
以模糊控制语言(FCL)定义的功能块类型将对输入输出参数、模糊控制具体规则和说明给出规定。相应的功能块实例应包含该模糊控制应用的具体数据。以模糊控制语言(FCL)定义的功能块可以用于按GB/T15969.3给出的任一种语言(如梯形图、指令表等)所编写的程序或功能块。用FCL编写的功能块或程序的输人输出参数的数据类型应与相应的“调用环境”的参数的数据类型相匹配,如图1所示。Value_Control_1
Fuzzy_FB
Pressure
图1用功能块图FBD表示的模糊控制功能块示例Valuel
图1中Valve_Control_1是功能块类型Fuzzy_FB的一个用户定义的功能块实例,功能块类型Fuzzy_FB可以用本部分第5章所规定的模糊控制语言(FCL)编制。本例所示功能块Fuzzy_FB用在以GB/T15969.3一2005的图形语言FBD(功能块图)表示的程序或功能块中。5模糊控制语言(FCL)
5.1模糊控制程序的交换
模糊控制语言(FCL)以GB/T15969.3—2005规定的编程语言的定义为基础。模糊控制算法与程序环境的交互使它在程序中“隐藏”起来。所以,模糊控制算法外部表示成GB/T15969.3一2005规定3
GB/T15969.7—2008/IEC61131-7:2000的模块形式。描述模糊控制功能块内部的语言部分所必需的元素,如隶属函数、规则、算子和推理方法均必须按照本章来定义。
FCL的语言元素把不同厂家的模糊控制组态工具之间的数据交换标准化成通用形式,如图2所示。用这种通用形式,每个生产可编程序控制器的厂家均可保持自己的硬件、软件编辑器和编译器不变。厂家只需在其编辑器中支持数据接口,用户的模糊控制项目就可以在不同厂家的产品之间交换。厂商A的模糊控制
应用编辑器
FCL接口
厂商A的可编
程序控制器
FCL文本文件
数据交换格式
厂商B的模糊控制
应用编辑器
FCL接口
厂商B的可编
程序控制器
图2模糊控制语言(FCL)程序的数据交换5.2模糊控制语言元素
本条通过示例给出模糊控制语言元素,详细的产生式规则将在5.4中给出。5.2.1功能块接口
按照第4章,模糊功能块的格式要求使用GB/T15969.3一2005给出的下列标准语言元素。FUNCTION_BLOOKfunction_block_nameVARINPUT
Variable_name:data_type;
END_VAR
VAR_OUTPUT
Variable_name:data_type;
END_VAR
variable_name:data_type;
END_VAR
END_FUNCTION_BLOCK
(*功能块说明*)
(*输人变量说明*)
(*输出变量说明*)
(*局部变量说明*)
用这些语言元素便可以描述一个功能块的接口。功能块接口由输人输出功能块的参数来定义。这些参数的数据类型应按GB/T15969.3—2005来定义。图3是用结构化文本(ST)语言和功能块图(FBD)语言来描述功能块说明的示例。FUNCTION_BLOCKFuzzy_FB
VAR_INPUT
Temp:
Pressure:
END_VAR
VAR_OUTPUT
Valve:
END_VAR
END_FUNCTION_BLOCK
结构化文本(ST)
GB/T15969.7—2008/IEC61131-7:2000Fuzzy_FB
功能块图(FBD)
图3使用ST语言和FBD语言的功能块接口说明示例5.2.2模糊化
输人变量的清晰值必须变换成定义于该变量论域上的隶属函数的隶属度,这一变换在关键字FUZZIFY和END_FUZZIFY之间说明。FUZZIFYvariable_name
term_name:=membership_function;TERM
END_FUZZIFY
要进行模糊化的变量名称应在关键字FUZZIFY之后列出。该名称应是在前面VAR_INPUT段已定义过的变量名。对该语言变量应赋予一个或多个语言项。由关键字TERM引导的语言项由隶属函数来描述,以用于计算输人变量的清晰量的隶属度。隶属函数一般是分段线形函数,由含有多个点的一张表来定义。
Membership_function..=(point i),(pointj),..每个点由一个数对,即该变量的值及相应的隶属度的值来表示,其间用退号分开。每个数对均用括号括起来,其间也用逗号隔开。point i:value of input i| variable_name of input i, value i of membership degree通过这一定义,所有简单形式的隶属函数如上(下)界型(如图4所示)、三角型等都易于定义。这些点应按输人变量值递升的顺序给出,隶属函数在相邻点之间约定为直线。相对每一语言项的隶属度都可以通过相邻隶属函数点之间的线性插值计算出来。点的数目最小为2,其最大值应受第6章规定的相符性等级所限制。用三个点表示的语言项“warm”的隶属函数示例如下:TERMwarm;=(17.5,0.0),(20.0,1.0),(22.5,0.0);小于第一个点的全部输人变量值的隶属度均取与第一个点同样的隶属度值。大于最后一个点的全部输入变量的隶属度均取与最后一个点同样的隶属度值5
GB/T15969.7-2008/IEC61131-7:2000上(下)界定义:
FUZZIFYtemp;
TERMcold;=(3,1),(27,0);
TERMwarm;=(3,0),(27,1);
END_FUZZIFY
注:隶属函数的点的数据类型未加定义,厂商必须提供适应任何变换需要的编译器。图4上(下)界型示例
为使模糊控制能实现在线自适应调整,隶属函数的基点应可以调整。这种调整可以通过输入到功能块的变量来实现。这些变量必须在功能块的VAR_INPUT部分中加以说明。用变量来定义隶属函数某些点的示例见图5。
注:隶属函数的点的值在运行时,次序可能变化。VARINPUT
temp:REAL;
pressure:REAL;
bp_warml,bp_warm2;REAL;
END_VAR
FUZZIFYtemp
(*该输入应被模糊化*)
(*该输入应被模棚化*)
(*这些输人用于在线调整*)
TERMwarm;=(bp_warml,0.0),(21.0,1.0),(bp_warm2,0.0);END_FUZZIFY
图5隶属函数的变量用法示例
5.2.3清晰化
输出变量的推理结果一般为一个模糊集,必须变换成一个清晰值,这种变换在关键字DEFUZZIFY和END_DEFUZZIFY之间描述。
要清晰化的变量须在关键字DEFUZZIFY之后列出其名称,它应是在前面VAR_OUTPUT部分中已定义过的变量名。
DEFUZZIFY variable_name
RANGE(min..max);
TERMterm_namemembership_function;defuzzification_method;
default_value;
END_DEFUZZIFY
语言项的定义见5.2.2。
为了简化清晰化的过程,输出隶属函数常用单点集,它的每一个语言项仅用一个单值来描述。图6给出了示例。
单点集定义:
DEFUZZIFY
RANGE(-100,100)
TERM drainage:=-100;
TERM closed:=0;
TERMinletl=100;
END_DEFUZZIFY
GB/T15969.7—2008/IEC61131-7:2000drainage
图6单点集语言项的示例
清晰化方法用语言元素METHOD来定义。METHOD:defuzzification_method;允许使用下列清晰化方法(见表1和表2)。表1清晰化方法
关键字
注1:重心法等同于求面积重心。注2:面积中心法等同与求面积平分线的坐标值注3:单点集不能使用CoA,
注4;LM和RM清晰化方法对0点是非对称的。重心(注1)法
closed
面积中心(注2和注3)
左取大(注4)
右取大(注4)
表2清晰化方法的公式
up(u)du
μ(u)du
μ(u)du=
μ(u)du
U= sup(u),p(u) = uE [Min,Mar Jμ(w)U=inf(u),μ(u')=uE[Min,MaxJun)inlet
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。