查看完整版本: NLX230型模糊控制器及其嵌入式应用研究

liyf 发表于 2014-10-5 10:04:00

NLX230型模糊控制器及其嵌入式应用研究

NLX230型模糊控制器及其嵌入式应用研究

摘要:美国NeuraLogix公司的单片集成NLX230型模糊控制器是一种可编程的超大规模模糊逻辑处理器,处理速度高达30M规则/秒,可广泛应用于过程嵌入式控制、模式匹配、人工智能、机器人及专家系统等。文中介绍NLX230的逻辑设计特点、工作原理、内部结构特性、工作模式和应用接口设计,最后举例说明了NLX230的应用。关键词:模糊逻辑;模糊控制器;NLX230;接口设计;嵌入式应用
1   引言       在自动控制领域,模糊控制理论及其应用的研究取得了很大的进展,美国NeuraLogix公司推出的NLX230型单片模糊控制器是一种可编程的超大规模集成模糊逻辑微处理器FMC(Fuzzy Micro Controller),根据模糊逻辑原理对输入条件进行模糊逻辑运算,得到最优的动作,通过执行并行操作控制输出,其处理速度高达30M规则/秒,具有与计算机的接口电路、与外接EEPROM的接口电路和晶体振荡器接口电路,可广泛应用于过程嵌入式控制、模式匹配,人工智能,机器人及专家系统。

2NLX230的设计特点与工作原理      模糊逻辑在控制领域的应用原理是利用模糊逻辑器件通过"项"和"规则"去构造任意复杂的线性和非线性函数,再根据输入状态经过模糊推理,找到最佳的输出动作值并应用于控制过程,从而使模糊逻辑获得类似于人类专家似然推理的能力。

      NLX230基于条件用模糊逻辑规则计算出优化的输出操作。输入值在用户定义的隶属函数中按适合的程度排序。为了实施有效的数字化,采用1个线性对称隶属函数或最简单的最大/最小模糊参考方法,规则决定了在输入时所需的状态集,每一规则至多包含16个项,每1个项与1个"清晰"输入/模糊隶属函数配对。1个当前值是对用户在某一规则下的输出值合计的修改。对于所有的输入和输出,输入排序与规则处理是并行的。单片式24位宽的规则存储器最多可存64个规则,所有输入都可共享这些规则。根据需要每个输出可以被编程为最多用64个规则,任一个输出所用的规则个数是其他规则所用的规则的剩余数。模糊逻辑原理的高效数字化实现使NLX230在低价格下获得高处理速度(30M规则/秒)。

2.1 距离测量的相似判决原理      NLX230型单片模糊集成控制器利用模糊逻辑元件将输入与隶属度函数结合起来,确定输入对于被选定的隶属函数中心值的距离,通过距离测量进行相似决策。由于最佳隶属函数的形状与系统中传感器特性、控制响应及其他动态特性有关,因而确定最佳隶属函数形状往往是很困难的(当然,在某些情况下可以根据经验确定)。NLX230型单片模糊控制器在设计上采取了一种新的方法,不依赖隶属函数的形状和确值输入与隶属函数的交点,而且测算出输入与选定的隶属函数的中心点的距离,其原理如图1所示。不考虑隶属函数的区间和输入的单调,而测量输出与中间位置的距离,距离用中心位置减去输入,忽略符号。确值输入Xa离中心点越远,其隶属值越低,反之,其隶属值越高。当确值输入Xa正好位于中心点位置时,则隶属值最大。   

    有二种不同类型的隶属函数,对于第一种隶属函数,确值输入离中心点愈近,隶属值愈大,如果确值输入落入隶属函数的宽度范围之外,那么隶属值最小。对于第二隶属函数,当确值输入落入隶属函数的宽度范围之内时隶属值最小。距离测量的优点有二:其一是使设计者在保留重要信息的同时不必决定复杂隶属函数的形状;其二是这种方法提供了相似判决的简单途径。

2.2 确值输入向模糊逻辑量的转换      确值输入向模糊逻辑量的转换是通过测量距离的相似判决模糊逻辑单元实现的,在相似判决模糊逻辑单元内求取隶属值的电路结构如图2所示。模糊逻辑单元内被选定的隶属函数中心点值和确值输入送进减法器计算出差值ac,该差值与隶属函数宽度值相比较,只有当差值在宽度范围内时,隶属值计算器才输出结果(该结果等于从允许的最大隶属值中减去差值ac,如图1所示),否则,隶属值计算器输出将被置零或置最小值。隶属值实际上是1个模糊逻辑量,用μ(或d)表示。

3NLX230的内部结构和引脚功能      NLX230型模糊控制器的内部结构如图3所示,它由模糊输入选择器,16个模糊单元、最小和最大比较器、规则寄存器、输出寄存器和定时控制等部分组成,完成模糊推理运算并作出控制决策。

3.1 模糊输入选择器和模糊单元      8选1多路选择器控制N LX230中16个模糊单元的每个单元的输入。模糊单元求取输入量对用户所定义的隶属函数的隶属度。每个模糊单元从8个外部输入中任选1个作为输入数据(1个模糊单元只能访问1个输入数据)。把模糊单元组态构成输出反馈到输入的形式,可不处理外部输入。把一个输入同1个隶属函数联系起来构成1个项,NLX230最多可支持16个项。每个模糊单元的结构如图2所示,含有1个16位的项寄存器,包括8位的中心值、5位的宽度值及3位的输入选择组态(完成对8个外部输入中任1个输入的选择)。每个模糊单元计算输入值与用户定义的中心点的距离,完成输入确值量到模糊逻辑量的转换。这样,每1个模糊单元与1个8位中心位置相联,计算出距离后,其结果与用户定义的宽度相比较,5位的宽度值代表输入离中心位置的最远距离,如果输入的距离小于或等于此宽度,那么输入被认为是隶属函数的一部分,距离的求补得到隶属函数度。求补就是30减去距离(30是最大宽度,)输入离中心越近,隶属值越高,落在宽度内的隶属值被传到最小比较器来进行规则处理。
      当输入等于中心值时,模糊单元输出最大值31;当输入落在宽度范围以外时,模糊输出值为0,表示完全没有关系。

3.2 最小值比较器和最大值比较器      NLX230的最小值比较器是由高流通量的神经元网路执行的,以适合高速的数据量。64条规则分别存储在64个规则寄存器中,每个规则寄存器字有24位,其前16位分别用来完成每个模糊单元的输出对最小比较器的使能。每个规则位固定对应1个模糊单元。当1个规则位被置1,则此规则包含该项,相应的模糊单元输出可与其他置1的规则位相比较以找出最小项。

      某个规则的最小项一旦被找到,就储存在NLX230最大值比较器的暂存寄存器中,对应被处理的每一规则经处理所得最小项与暂存于最大值寄存器中的值进行比较,去小存大;当处理完所有规则,最大值寄存器中的结果是所有最小项中的最大值,该值对应的规则为取胜规则,代表1个"模糊"逻辑各结果的和。取胜规则的当前值(动作值)送到模糊量与确值量的转换单元(输出寄存器),经转换处理后进行模糊控制。

      当前值定义在每个规则寄存器字的8个保留位,代表输出动作值所需的修正量,动作修正值是1个8位二进制补码值为-128~127。从规则寄存器字来的8位动作修正值与用户定义的初值相加。例如,初始值为100,动作修正值为-5,则输出为95。

3.3 规则寄存器和输出寄存器      规则寄存器用于存放控制规则,NLX230最多可存放64条规则。输出寄存器为总线使能方式,只要处理了所有的规则,规则寄存器的8位补码修正值与初始值之和,饱和算数运算使输出位取模128(当前值使输出高于或低于界限-128和127),输出即由模糊量转换为确值量,模糊控制器在输入下一组数据的同时输出结果数据。


3.4 NLX230的引脚功能      NLX230采用40引脚双列直插式封装,如图4所示。RST是系统复位脚,低电平有效。DI0-DI7是8位数据输入口。VSS是地。SK是串行时钟脚,用于将组态数据打入FMC(M/S=0时,该脚输出)。CS

李小路 发表于 2021-9-12 18:49:08

谢谢分享:D
页: [1]
查看完整版本: NLX230型模糊控制器及其嵌入式应用研究