基于S7模糊神经网络.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于S7-200 PLC的模糊神经网络算法设计 1 引言 ??? 是模糊逻辑控制和神经网络两者结合的产物。这两者单独使用时存在一定缺陷。模糊逻辑在一定的论域上具有很好的收敛性,并具有模糊量运算优势;而具有强自学习、自适应、并行运算和精确计算的能力。因此,这两者相结合可大大提高综合能力。 ???在中应用广泛,因此,功能强大,使用方便。因此,将模糊神经网络算法应用于PLC中具有实际应用价值,使PLC在机械、民用等领域广泛应用。这里提出一种基于PLC的模糊神经网络算法实现方法。 2 模糊神经网络系统结构 ??? 模糊神经网络具有很多种结构和算法,对于不同控制对象,综合考虑运算速度和精度,模糊神经网络结构也有所不同。由于该实现方法没有实际控制对象,为了说明在PLC上能实现模糊神经网络算法,故选择模糊神经网络,如图1所示。假设其中输入两个变量X1、X2,输出变量为Y。将每个输入因子分为:NM,NS,ZO,PS,PM等5个模糊状态。 3 模糊神经网络的学习步骤 ??? 选择在线学习,在线学习期间学习速度不变。在线学习终止条件是性能指标E小于等于某一数值。这个指标值随控制对象的改变而改变的。当确定控制对象时,该指标值可根据经验确定。但是为了便于说明问题这里设置该指标值为0.002。具体学习步骤是:θji、σji、ωi及η的初始值在[0,1]之间随机选取,η的值为恒定值,根据经验决定。根据模糊神经算法计算出比较理想的θji(k+1)、σji(k+1)、ωi(k+1)值。根据模糊神经算法计算E,若E≤0.002,迭代结束。否则,令θji(k+1)、σji(k+1)、ωi(k+1)为初始值并返回。 4 模糊神经网络算法在PLC的应用 4.1 模糊神经网络学习阶段的实现 ??? 在学习阶段实现过程中,利用上位机向下位机传输样本数据,具体运算过程是由下位机实现。 4.1.1 学习阶段上位机程序实现 ??? 根据模糊神经网络理论知识可知,样本值是根据实际控制对象的需要而定的。为了说明问题,采用含有两个输入值和一个输出期望值的较为简单的样本值。学习过程中上位机程序设计流程如图2所示,具体过程如下: ??? (1)初始化初始化样本值和为后续传输样本值做准备,通过PLC指令把样本值写入PLC的储存地址,再次赋值给发送区的数据区,并把存储第一个样本值地址分别赋给VD712,VD716,VD720地址指针,这样可为再次发送样本值做准备。因为要发送的样本值是不断变化的,但是发送区不能变化,故使用地址指针达到两者同步。 ??? (2)接受请求接收下位机向上位机传送的数据,该数据是告之上位机是否向下位机传送样本值。 ??? (3)判断VB703数据请求标志位VB703,对所接收的数据,判断其值是否等于16#FF。而16#FF是通信协议中规定上位机给下位机传送数据的标志。如果等于16#FF,则向下位机传输数据;否则就再次返回上一步。 ??? (4)发送数据通过上位机通信程序向下位机发送样本值,发送完后就结束第一次传送样本值,启动新接收,等待下位机请求数据传送信号。 4.1.2下位机程序实现 ??? 图3为下位机程序流程,从中可以看到学习阶段下位机程序的基本构想。 ??? 针对下位机程序流程这里需要说明的是: ??? (1)初始化首先随机选取[0,1]内θji、σji、ωi及η的初始值,通过PLC指令把这些值赋给存储单元;其次对学习过程中用到的常数赋值,同样赋给存储单元;最后,要把请求数据传送的标志位VB703置位。 ??? (2)初始值计算由于初始化中请求数据传送,首先通过下位机的通信程序取得数据,并且接收样本数据后.复位VB703,告知上位机不再传送数据。接着利用初始化已赋值的第一组权值,计算第一组样本值为输入时输出值、输出值与期望输出值的差值以及后续计算所要用到的数据。 ??? (3)权值、E(性能指标)值计算在第上一步的基础上计算权值和E值。具体算法可参考模糊神经网络算法.且易于在PLC平台上实现。 ??? (4)E值判断把计算的E值与0.002相比较。如果E≤0.002,说明计算的函数变量、权值已达到预期目标,学习过程结束。结束的同时触发外接设备的开关量,利用外接设备读取这些计算结果。相反,则需继续学习过程。并将不满足性能指标第3步计算出的函数变量、权值赋给下一步重新计算y值所需的地址内,把请求数据标志位VB703置位.并向上位机发送,从而为新y值的计算做好准备。 ??? (5)学习过程中Y值计算由于已把请求数据标志位置位,因此,首先通过通信程序先取样本,取完样本值后复位VB703,告知上位机不再传样本值,接着计算新的Y值,以便计算新的函数变量、权值以及E值。学习过程下位机主程序实现如图4所示。 4.2 模糊神经网络现场工作过程实现 ??? 当学习阶段结束后,

文档评论(0)

lyxbb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档