2009-7-20 1
模糊逻辑控制及其应用
( 选 修 )
上海交通大学谢康林
2004-2005学年 第 1学期
2
第七章模糊逻辑控制软件开发工具第七章模糊逻辑控制软件开发工具
3
第七章模糊逻辑控制软件开发工具第七章模糊逻辑控制软件开发工具
7-1 概述
7-2 模糊逻辑控制技术软件的开发工具
( Pop Fuzzy 2.0)
4
设计方法的不同
7-1 概述一.模糊逻辑控制系统开发与传统控制系统开发的不同
1,设计方法,
对于既可用传统线性控制方法,又可用模糊逻辑控制方法实现的控制系统,用模糊逻辑控制方法较容易。
5
内存开销和系统设计
2,内存开销,
用模糊逻辑控制方法软件实现所需的存储容量,大约是传统线性控制方法的一半。
3,系统设计,
模糊逻辑控制方法用语言变量直观地进行设计。依靠经验,容易学习。
传统线性控制方法求助于建立系统的数学模型。
6
可能遇到的问题二.模糊逻辑控制系统开发时可能遇到的问题
1,硬件方面用硬件实现的嵌入式模糊逻辑控制系统:
(1) 需 重新设计印刷电路板 ;
(2) 或 用标准硬件 (如 PC机 )。
7
可能遇到的问题
2,调试方面由于模糊逻辑控制系统的多参数和非线性的特点,对系统进行优化和调试较为困难.通常用试探法。
3,规则和隶属函数在实际应用中最大的难题是如何正确地确定控制规则和隶属函数。
8
软件开发工具介绍三.软件开发工具介绍例:
1.,Freeware”――Motorola 68HC 系列
2.,FID E”――Motorola 与 Aptronix公司
3.,TIL Shell”―― 美国 Togai InfraLogic
(TIL)公司
4.,IFCS”―― 东芝
5.,Pop Fuzzy”――Renesas (Hitachi)
9
Po
p F
uz
zy
概述
7-2 模糊逻辑控制技术软件的开发工具
Pop Fuzzy 2.0
一,概述功能,
为用户提供一个全图形界面、高集成的开发环境,集编辑、调试、仿真、
生成 C和汇编源程序的功能于一体。
软硬件环境,
CPU 为 Intel的 Pentium芯片及其兼容机。
Windows 95 中文版及以上版本。
H8/300 C 编译器。
H8/300 交叉汇编器。
10
建立模糊控制系统一二,在 Pop Fuzzy 2.0中建立模糊控制系统
Pop Fuzzy 2.0提供多种编译器用来創建或编辑模糊控制系统的各部分:
变量、隶属函数、规则以及用于模拟仿真对象的数学模型 。
其中包括:
项目编辑器中变量和规则库的添加或连接,
变量或成员( Member)的隶属函数的编辑;
规则库编辑器中规则的定义等。
11
建立模糊控制系统二设计模糊逻辑控制系统的基本步骤:
1 定义系统的输入变量和输出变量;
2 定义一组规定,给出输入量和输出量之间的关系;
3 在项目编辑器里定义系统结构后,使用变量 /成员编辑器定义隶属函数;
4 使用规则库矩阵编辑器或规则库表格编辑器,在规则库中定义规则;
5 在有需要时:
可在 FCL文本编辑器 (FCL Text Editor)中定义其它处理单元和受控对象( model)。
然后,可使用 C编译器生成 Hitachi—C程序,
并可调试观察运行结果 。
12
建立模糊控制系统三进行静态调试:
静态调试,
可以在给系统的输入变量赋以特定值后,观测输出的值。
也可以用三维立体图形来显示两输入、一输出变量间的关系。
13
建立模糊控制系统四进行动态调试:
动态调试,
系统在最终应用程序形式进行的仿真运行时,可以观察到每一规则、变量、隶属函数的性能,以及它们之间的相互作用。
14
窗口要素三,Pop Fuzzy2.0窗口
1,窗口要素,
( 1)标题栏:
应用程序名 FCI Pop Fuzzy 2.0
( 2)菜单栏,(共有 8个)
File(文件) Edit(编辑)
Debug(调试) Simulate(模拟)
Debug-C( C调试) Generate(产生)
Window(窗口) Help(帮助)
( 3)工具条
15
控制菜单及其命令
2,控制菜单及其命令
( 1) 控制菜单命令
( 2) 选取命令方式
( 3) 关闭控制菜单的方法
16
De
bug
和S
im
ula
te
窗口
3,Pop Fuzzy 2.0中的各种窗口
( 1) 在 Debug(调试)中的窗口
( 2) 在 Simulate(模拟)中的窗口
17
编辑与编译四,Pop Fuzzy2.0中的编辑与编译
1.编辑
( 1)图形项目编辑器
( 2)变量成员编辑器
( 3)规则库编辑器
( 4) FCL文本编辑器
2.编译
(1) 词法和语法检查
(2) 将文本翻译成 C语言(包括 *.C
和 *.H两个文件)和汇编语言。
18
静态调试五.静态调试静态调试工具可以迅速地实现相对于各种输入条件时,模糊逻辑系统的输出反应。对系统的输入变量赋值后,观测输出变量的值。也可以用三维立体图形来显示两输入、一输出变量间的关系。
静态调试手段不能提供控制系统与外部系统相互影响的信息。
静态调试工具包括:
快速测试窗口 ( Debug/Quick test)
控制面图窗口 (Debug/Control Surface )
算子可视化窗口
(Debug/Operator Visualization)。
19
快速测试窗口
1,快速测试窗口主体是两个列表框:
一个显示输入变量,
一个显示中间变量和输出变量。
用户可以改变输入变量的值,观察中间变量和输出变量的值的变化。
20
控制面图窗口
2,控制面图窗口控制面图又称 3D图形观察窗:
两个输入和一个输出的三维立体图。
21
算子可视化窗口
3,算子可视化窗口算子为,OR”或,AND”时的
3D图形。
22
动态调试六.模拟仿真和系统运行动态调试 ( Simulate)能测试与仿真模型相互作用的关系。
系统在最终应用程序形式下进行仿真运行时,可以观察到每一规则、
变量、隶属函数的性能,以及它们之间的相互作用。
23
建立仿真模型动态调试工具 有:
规则库调整窗口、规则窗口、变量 /
成员编辑器、曲线图窗口、监视窗口、
文件记录、仿真控制窗口、规则库矩阵编辑器等 。
动态调试界面及相关菜单进行动态调试建立仿真模型
24
C
调试目的及特点七,C 调试
1.目的及特点
( 1)目的:
为用户构造一个 C语言执行调试的集成环境,并解释执行 C语言源程序。
( 2)特点:
基本上采用标准 C调试方法,
调试 瑞萨 ( 日立 ) C的子集。
25
有关界面
2.有关界面
( 1) C文本调试窗:
用于用户观察程序运行情况。
( 2)变量及错误信息观察窗:
用于用户观察变量变化情况及出错信息。
( 3)申请观察变量的对话窗:
用户申请观察变量的申请对话窗。
( 4)工程函数参数传递窗。
( 5)支持图表。
26
主要功能
3,主要功能有单步运行、
连续单步运行、
断点、
暂停、
连续运行、
增删变量等。
27
C
语言子程序接口
4,支持的标识符、关键字和数据类型
(略)
5.模糊控制 C语言子程序接口由 Pop Fuzzy 自动生成的模糊控制 C语言子程序可以被用户的 C语言主程序调用。
6.特殊规定(略)
28
汇编程序自动生成八,汇编部分
1,汇编程序自动生成
( 1)在 Pop Fuzzy主界面中选择
Generate菜单中的 Compile to
SRC。
( 2)无语法错误时,可将已编辑好的模糊逻辑应用系统生成相对应的 HITACHI / H8 300L汇编程序
*.SRC。并以 *.SRC文件名保存。
29
数据存储格式
2.数据存储格式
( 1)输入变量隶属函数参数存储
① 隶属函数:常取梯形和三角形。
② 存储格式:
梯形隶属函数存储为四个字节;
三角形隶属函数存储为三个字节。
( 2)输出变量隶属函数参数存储
( 3)规则库存储用四个二进制位来代表相应的模糊语言项(如负大、负小、零、正小、正大等)。
30
用户调用接口
3,汇编模糊子程序用户调用接口
31
模糊控制语言FCL
九,模糊控制语言( FCL)
FCL是 Pop Fuzzy用来描述模糊控制系统的一种语言。(略)
32
隶属函数的存放方式十,隶属函数的存放方式
1.梯形隶属函数
(1).四点法
(2).点斜率法
2.三角形隶属函数
(1).三点法
(2).点斜率法
33
第八章模糊逻辑控制集成电路和模糊计算机第八章模糊逻辑控制集成电路和模糊计算机
34
第八章模糊逻辑控制集成电路和模糊计算机第八章
8 -1 模糊逻辑硬件电路
8 -2 模糊计算机
35
模糊逻辑硬件电路
8 -1 模糊逻辑硬件电路一.概述实现模糊逻辑控制有两种方案:
专用模糊芯片;
通用计算机 +软件。
考虑选择专用模糊芯片的情况:
速度需要;
提高系统效率
(不占用 CPU的时间)等。
36
基本模糊逻辑原理电路二.模糊逻辑电路原理基本模糊逻辑原理电路
( 利用二极管和三极管器件 )
“模糊逻辑补”电路;
“模糊逻辑取小”电路;
“模糊逻辑取大”电路 。
37
模糊逻辑补电路
Ui R1
R2
RL
Ucc
Ubb
Uo
T
38
模糊逻辑取小电路
Ui1 Ui2
E
Uo=min(Ui1,Ui2)
RL
39
模糊逻辑取大电路
ERL
Ui1 Ui2
Uo=max(Ui1,Ui2)
40
有源器件模糊逻辑电路有源器件实现的模糊逻辑电路
(采用集成运放器件 )
“模糊逻辑补”电路;
“模糊逻辑取小”电路;
“模糊逻辑取大”电路。
41
集成模糊逻辑电路三.集成模糊逻辑电路及新发展
1,最早商品化的模糊处理器:
Omron公司:
FP-1000(以模拟电路实现,不能编程,
无应用价值。)
FP-3000
(时钟为 24MHZ,
输入模糊化,
模糊推理 min-max法,
解模糊算法:
重心法或最大隶属度法,
隶属函数形状:
主要是三角形和梯形。)
42
模糊计算加速器
2.模糊计算加速器
Togai InfraLogic公司,FC-110。
其开发环境包括:
模糊编程语言 FPL( Fuzzy
Programming Language)
编译器、汇编器、连接器图形模糊模拟工具 TIL Shell。
43
模糊单片机
3.模糊单片机
American NeuraLogix公司:
NLX-230模糊单片机主要用于补充或补偿常规微处理机在实现模糊逻辑控制性能方面的不足,
以取代常规通用微处理机用纯软件实现模糊逻辑控制的方法。
1.25μm COS技术,时钟为 14 MHZ,
40个引脚,DIP封装
8位输入,8位输出
16个模糊化器、最多允许有 64条 16位规则。
44
模糊协处理器
4.模糊协处理器美国加州西门子公司:
SAE81C99模糊协处理器主频 20MHZ,每秒最高可处理 790万条规则。
在 12个输入时,
计算 3000条规则的 8位输出仅需 1Ms。
推理采用 MIN-MAX 法,
解模糊判决有重心法和最大隶属度法。
最多可处理 256个输入,64个输出和 16384条规则。
可用于自动化和工业控制。
45
DS
P
上实现的模糊控制器
5,在 DSP芯片上实现的模糊控制器美国德克萨斯仪器( TI)公司提供软件开发工具,以数字信号处理器
( DSP - Digital Signal Processor)
TMS320系列芯片,加上开发软件工具支持来实现。
46
模糊计算机的特点一
8-2 模糊计算机一.模糊计算机的特点
1,并行工作方式
( 1)狭义模糊计算机接受模糊语言信息、高效地处理模糊信息。
对于非模糊的数据还要用传统的计算机进行处理。
( 2)广义模糊计算机能把上述两项有机地结合在一起。

47
模糊计算机的特点二
2,具有知识性
3,具有个性对同一语句的含义会有不同的理解。
48
模糊硬件器件的特点二.模糊硬件器件的特点
1,无积累误差;
2,动态范围要求不高;
3,精度要求相对较低;
4,温度漂移、偏置调整、电源电压变化的要求较低;
5,响应速度很快。
49
模拟处理方式三.模糊逻辑计算机的结构有不同的结构方案:
模拟处理方式和数字处理方式
1,模拟处理方式用模拟电路 Min-Max逻辑和逻辑积的运算,并以模拟电路实现高速模糊推理。
50
数字处理方式
2.数字处理方式具有更大的灵活性。
例:在传统计算机的基础上,加上模糊逻辑运算器、模糊数据存储器、模糊数据处理器、模糊数据库、模糊数据输入 /输出设备,和模糊数据总线构成。
整体结构模糊逻辑运算器模糊数据处理器模糊数据存储器模糊数据库
51
模糊逻辑数据处理软件四.模糊逻辑数据处理软件一般说来,模糊语言可以分成三个层次:
1,基本模糊逻辑语言层
2,模糊知识表示语言层
3,描述性程序语言的自然语言层
52
基本模糊逻辑语言层
1,基本模糊逻辑语言层该层次中常用的语言有:
汇编语言,C语言,LISP语言和
PROLOG语言;
Fuzzy-C语言,Fuzzy-LISP(FLISP)
语言,Fuzzy-PROLOG(FPROLOG)
语言、以及 FRIL语言等。
引入面向对象程序设计技术
( OOP---Object Oriented Programming)
53
模糊知识表示语言层
2,模糊知识表示语言层该层次中包括:
模糊程序系统、模糊组织系统和模糊推理集成系统。
用来对模糊集合和控制结构,以及组织形式进行有效描述,用,IF —
THEN” 形式来描述知识。
54
描述性程序语言自然语言层
3,描述性程序语言的自然语言层该层次中可以直接用接近人的自然语言程序来描述。
55
展望五.展望对模糊信息进行处理的速度,
目前研制的模糊计算机与传统计算机相比,大约快 20-50倍。
可以期望在不久的将来,模糊计算机愈来愈接近人的思维方式。