《基于单片机的模糊逻辑推理.doc》由会员分享,可在线阅读,更多相关《基于单片机的模糊逻辑推理.doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘要:模糊逻辑推理程序的长度和结构具有简洁,实时推理的特点,有数字单片机模糊控制器的性能影响。数字上寻找模糊控制响应表为基础的模糊控制器的控制效果,只是相对的表和在实际控制过程中的模糊控制规则不相同。针对上述问题,并结合模糊逻辑推理的单片机的数字业务特点,二进制运作的模糊子集推理(FFSI),三角形隶属函数中的错误和错误的变化都在控制变量的二进制和单身隶属函数表示的是二进制的,这些规则已经出台。模糊控制器在一个单芯片的电路原理计划相继出台,其硬件的发展,方案的主要结构,模糊逻辑推理子程序,与PC机串行通信子程序和模糊控制器的可靠性设计都已详细讨论。已开始使用试验室热力学系统的模糊控制器控制室内
2、温度。研究结果表明,在二进制的FFSI可以行使在一个简洁的单片机模糊控制器的模糊控制,模糊控制器因此是可靠的和具有高性价比的。关键词:运作模糊子集推理;单片机模糊控制器;测试室热力系统;室内温度;实验中图分类号:TP23 文献标识码:A 文章编号:1005-9113(2003)03-0269-D60 介绍单片机已在实用的领域成为利用模糊控制技术的重要工具,因为它拥有一些优秀的特性,如体积小,集成度高,运行可靠和高性能价格比,等等。基于单片机的模糊控制技术已成功地用于智能仪器仪表,国内电力设备和一些行业的进程。将模糊控制技术与单片机结合有两种模式,一个是模糊的单片机,如模糊芯片,模糊化,模糊推理
3、及解模糊的过程中,按电路完成;另一种是数字SCFC,模糊控制过程中,按计划完成。模糊单片机具有非常高的推理速度适应快速时变过程。然而,模糊单片机在应用上非常有限,因为隶属函数的形状,模糊控制规则的数目和推理方法都是固定的,同时,模糊控制器需要很高的硬件水平和生产条件。与此相反,数字SCFC则因为其易被一般技术人员开发的特点而被广泛采用。成分推理规则(CRI)被广泛应用于数字SCFC中存在。由于成分推理规则的复杂性,模糊决策过程往往通过寻找模糊控制响应表提前获得。其主要问题是,一旦模糊控制响应表被确定,控制过程就只依赖于响应表,而当响应表无法适应于控制过程的变化,就很难调整模糊控制响应表了。为了
4、克服上述问题,FFSI终于被提出来,这是一种比成分推理规则更适用于实时模糊控制过程的方法。FFSI也是比成分推理规则能更简洁,更轻松地执行实时模糊逻辑推理的方法。在SCFC的模糊控制中,域,隶属函数,比例系数和其他参数一般都用浮点数据表示,这将增加模糊控制程序的长度,且使模糊推理过程变得复杂。另一方面,A/D转换的采样结果用无符号二进制或十六进制数表示;应当被送到D/A转换的模糊推理的结果也是二进制或十六进制数据。如果模糊推理过程可以在无符号二进制或十六进制数据的基础上实现,就没有必要将无符号二进制或十六进制数据转变为浮点数据,而且模糊控制程序的长度也将大大缩短(至少浮点数据计算子程序将被省略
5、)。以上提到的单片机在具有数字操作特点的基础上,基于FFSI的二进制或十六进制单片机模糊控制的原理在本文中将被最先提出。然后SCFC在硬件,软件和技术上的问题将作详细讨论。最后,将对SCFC的室内温度模糊控制实验作简要介绍。1 二进制的运作模糊子集推理FFSI的重点,首先是运作的模糊子集和运作的实时测量变量的模糊控制规则,它指出,实时模糊逻辑推理过程,仅仅是相对的模糊控制规则运作的模糊子集和运作。模糊系统的基本结构如图。1、误差e和误差变化EC域是6BH,96H(其中“H”表示十六进制),u的域是20H,E0H,这是对应的D / A转换器DAC0832的输入。假设在所有领域有七个模糊级别,包括
6、NB,NM,NS,ZE,PS,PM和PB(NB:负大,NM:负中,NS:负小,ZE:零,PS:正小,PM:正中,PB:正大),其隶属函数如图2和图3所示。其模糊控制规则是“如果Ai与Bj则Cij”(i,j=1,2, ,7)如表1所示,其中Ai,Bj和Cij分别是e,ec和u的模糊子集。假设实时测量变量e*,ec*的运作模糊子集分别是A1,A2和B1,B2,而且其隶属函数相应的表示为A1(e*),A2(e*)和B1(ec*),B2(ec*).让运作的模糊控制规则是Ri(i=1,2,3,4),则十六进制(二进制)的运作模糊子集推理如下所示。 1.1 真值的生成和转换实时测量变量e*的真值和运作模糊
7、控制规则ec*的前提是(A1B1)(e*,ec*) = A1(e*)B1(ec*) =V1(u*)(A1B2)(e*,ec*) = A1(e*)B2(ec*) =V2(u*)(A2B1)(e*,ec*) = A2(e*)B1(ec*) =V3(u*)(A2B2)(e*,ec*) = A2(e*)B2(ec*) =V4(u*)所有的真值Vi(i=1,2,3,4)将被送入运作模糊控制规则Ri(i=1,2,3,4)的结果中去。1.2 真值的采用假设模糊控制规则的结果是Ci(i=1,2,3,4),且u的隶属函数单独表达如表2所示。则u*的运作模糊子集如式(1)所示。Ci=Ci(u1),Ci(u2),C
8、i(u7), (1)其中Ci(uj)是隶属函数的次数如表2所示,uj(j=1,2, ,7)是第j模糊子集的中值。由u*的运作模糊子集所接受的真值Vi(u*)可以用式(2)来描述。Ci(u*)Vi(u*)Ci(uj),(2)其中当ui是第j模糊子集的中值时Ci(uj)0,且当ui不是第j模糊子集的中值时Ci(uj)0。当u*的一个模糊子集接受多个真值时,则有下列等式Ck(u*)=Cs(u*),(3)其中s是被u*的同一个子集接受的真值的数目。C*(u)=mCk(u),(4)其中m是拥有不同结果的运作模糊规则的数目。1.3 解模糊根据u*的运作模糊子集的中值uk,模糊控制变量就能够用中心平均法来解
9、模糊。2 SCFC硬件系统的发展2.1 SCFC的系统设计在成熟的SCFC中应用的是80C552芯片,因为它比起其他的芯片具有更高的性价比。SCFC的系统结构如图4所示。端口0,端口2,端口SIO0和端口SIO1用来完成SCFC的并行和串行设计。如图5并行系统的设计已经通过,其中27512芯片是程序存储器,6264芯片是数据存储器,DS1216芯片是功率时钟芯片,8279芯片是开关/指示灯的特殊控制芯片。2.2 SCFC的采样通道SCFC的采样通道原理图如图6所示。它包括信号的采样,电流-电压转换器I/V,电阻-电容滤波器RC和A/D转换器。80C552芯片中有一个10位A/D转换器。P5是A
10、/D转换器中一个特殊的8位端口。2.3 SCFC的控制通道SCFC的控制通道如图7所示,其中包括1位模拟变量输出通道和6位开关变量输出通道。模拟变量输出通道由功率驱动器74LS244,光电隔离器TLP521-4,D/A转换器DAC0832和放大器OP07组成。DAC0832和80C552之间的接口以直连的模式设计。DAC0832的参考电源是一个精确可控的电源,其中包括TL431和其他电路,参考电源将为DAC0832提供一个-10V的电压。开关控制通道将由光电隔离器的端口P4.0-P4.5组成如图7所示。2.4 SCFC的人机交互SCFC的人机交互由8位的LED显示器,键盘的9个键和6个指示灯组
11、成如图8。8279芯片是用于控制LED,键盘和指示灯的一个特殊接口芯片。串行通信端口SIO0,RS232通信标准,MC1488芯片和MC1489芯片被用于完成SCFC和PC之间的串行通信系统。3 SCFC软件系统的发展3.1 SCFC的主程序结构SCFC的软件系统包括系统初始化,键盘的功能和程序流控制如图9所示。中断功能已被应用于键盘功能的子程序中。根据键盘按下的值,“JMPA+DPTR”命令已被用来实现程序跳转的功能。3.2 SCFC的数据采样子程序SCFC的数据采样子程序有下列功能,即A/D转换,数字滤波器和尺度转换。采样周期可以用80C552中的定时器T0来设置。如果T0周期结束,则80
12、C552将产生一个中断,且A/D转换器开启并实施A/D转换过程。在A/D转换的过程中,为确认A/D转换器的尺度参数而校准传感器是非常重要的。3.3 SCFC的模糊逻辑推理子程序根据A/D转换的结果,模糊逻辑推理子程序将计算出e*和ec*。基于十六进制的FFSI,子程序将计算出控制变量u*,并将结果送入端口P1来进行控制动作。由于十六进制的FFSI,模糊推理子程序的长度将被大大缩短。此外,模糊推理的结果是直接对应于数字格式的,这是D/A转换所必须的。3.4 SCFC与PC间的串行通信子程序为了成功开展SCFC与PC间的串行通信,有必要建立通信协议,选择通信模式和确认波特率。在通信的过程中,PC作
13、为主机接收来自SCFC的数据,SCFC作为终端送出来自A/D转换器的结果。主机通过向终端送入命令字节来控制和管理终端的通信功能如表3所示。在串行通信过程中,SCFC采用中断通信模式,PC采用查询通信模式。SCFC的波特率由计时器T1产生,它的时钟频率是12.0兆赫兹。当计时器T1以八位数据工作在自装载模式且它的初始值是0F3H时,可以得到的最高标准波特率是4800 B /秒,且它的相对误差是0.16%。与此同时,PC的波特率因子是18H。此外,PC还必须有一个很短的延时来成功地完成SCFC与PC间的通信。4 SCFC的可靠性设计许多硬件和软件技术措施已被用于保证SCFC的可靠性设计。在SCFC
14、的硬件系统中,电阻-电容滤波器和A/D转换器在采样通道中的一个独立参考电源已被投入使用。在控制输出通道中,光电隔离器,独立的数字域,独立的模拟域和双电源都已加以利用。更宽的接地线和许多去耦电容也被用于制造电路板。在SCFC的软件系统中,数字滤波器,NOP命令和看门狗系统以及其他的软件措施都已加以利用。最后,已开发的SCFC如图10所示。5 室内温度的模糊控制实验在热力学系统试验室使用SCFC进行室内温度模糊控制实验如图11所示。试验室的规模为3976mm3976mm2800mm。墙上,屋顶和地上分别有八个空气导管。在测试床上供应了许多空气导管。室内温度将随着供应空气温度的方差而变化,这也将作为
15、试验室的一个扰动。温度传感器将测试室内温度的变化并将其传送给SCFC。在室内温度变化的基础上,SCFC将以十六进制的形式执行FFSI,计算控制变量u*并将它输出到DAC0832来调整电机驱动阀门的行程。阀门行程的变化将导致对试验室加热量的变化。然后室内温度将被调整回到给定值。根据以上的控制原理,基于十六进制FFSI的模糊控制实验得以成功执行,模糊控制实验的结果如图12所示。在图12中,tNC表示不受控的室内温度,tr是模糊控制的室内温度,tg是室内温度给定值,是33.6,Tc是控制周期。6 总结(1)十六进制FFSI在计算上非常简洁明了,它易被用于数字单片机模糊控制的发展中,而且非常适用于SCFC的实时模糊控制过程。(2)本文中SCFC的硬件和软件的设计开发合理。SCFC性能可靠且性价比高以至于它可以被应用在很广泛的实际领域中。(3)根据图12,试验室热力系统的室内温度可以完美地控制在给定值,其精确度误差最大不会超过0.5。然而,模糊控制实验中有稳定误差,这将在进一步的研究中解决。