模糊神经网络算法与plc学习过程

作者:老电工时间:2020-01-28 07:50:07

有关模糊神经网络算法与plc的学习,模糊神经网络学习阶段的实现,学习阶段上位机程序实现,以及下位机程序实现思路等,一起来了解下。

模糊神经网络算法与plc学习过程

模糊神经网络学习阶段的实现

在学习阶段实现过程中,利用上位机向下位机传输样本数据,具体运算过程是由下位机实现。

一、学习阶段上位机程序实现

根据模糊神经网络理论知识可知,样本值是根据实际控制对象的需要而定的。采用含有两个输入值和一个输出期望值的较为简单的样本值。

学习过程中上位机程序设计流程如图2所示,具体过程

1、初始化初始化样本值和为后续传输样本值做准备,通过plc指令把样本值写入plc的储存地址,再次赋值给发送区的数据区,并把存储第一个样本值地址分别赋给vd712,vd716,vd720地址指针,这样可为再次发送样本值做准备。因为要发送的样本值是不断变化的,但是发送区不能变化,故使用地址指针达到两者同步。

2、接受请求接收下位机向上位机传送的数据,该数据是告之上位机是否向下位机传送样本值。来自:电工技术之家

3、判断VB703数据请求标志位VB703,对所接收的数据,判断其值是否等于16#FF。而16#FF是通信协议中规定上位机给下位机传送数据的标志。如果等于16#FF,则向下位机传输数据;否则就再次返回上一步。

4、发送数据通过上位机通信程序向下位机发送样本值,发送完后就结束第一次传送样本值,启动新接收,等待下位机请求数据传送信号。

模糊神经网络算法与plc学习过程1

二、下位机程序实现

图3为下位机程序流程,可以看到学习阶段下位机程序的基本构想。

模糊神经网络算法与plc学习过程2

针对下位机程序流程的说明

1、初始化首先随机选取[0,1]内θji、σji、ωi及η的初始值,通过PLC指令把这些值赋给存储单元;其次对学习过程中用到的常数赋值,同样赋给存储单元;最后,要把请求数据传送的标志位VB703置位。

2、初始值计算由于初始化中请求数据传送,首先通过下位机的通信程序取得数据,并且接收样本数据后.复位VB703,告知上位机不再传送数据。

接着利用初始化已赋值的第一组权值,计算第一组样本值为输入时输出值、输出值与期望输出值的差值以及后续计算所要用到的数据。

3、权值、E(性能指标)值计算在第上一步的基础上计算权值和E值。具体算法可参考模糊神经网络算法.且易于在PLC平台上实现。

4、E值判断把计算的E值与0.002相比较。如果E≤0.002,说明计算的函数变量、权值已达到预期目标,学习过程结束。

结束的同时触发外接设备的开关量,利用外接设备读取这些计算结果。电工天下:www.dgjs123.com

相反,则需继续学习过程。并将不满足性能指标第3步计算出的函数变量、权值赋给下一步重新计算y值所需的地址内,把请求数据标志位VB703置位.并向上位机发送,从而为新y值的计算做好准备。

5、学习过程中Y值计算由于已把请求数据标志位置位。

因此,首先通过通信程序先取样本,取完样本值后复位VB703,告知上位机不再传样本值,接着计算新的Y值,以便计算新的函数变量、权值以及E值。学习过程下位机主程序实现如图4。

模糊神经网络算法与plc学习过程3

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > plc基础教程