User‘s manual – PHP modul

This modul was developed for neural networks monitor based on the method Optifnet or Z-optifnet.

It consists from next parts:

-NN Monitor configuration

-Controls

-NN parameters

-Limits of NN modul

-Banks usage

-Status window

Minutely will be explain later.

ATTENTION: every adjustable items are located in configuration file and it is possible to change it for your program in PLC(it means your option in which item will be inputs, outputs etc). Config – here is variable from configuration file which you must change to change item from which the value is loading. Change only items by ENABLE FOR USER CHANGE. Don’t change items by DISABLE FOR USER CHANGE in any case!!!!!. Configuration file path is: config/config.php.

Connection to Irulan server

There are 3 items for connection to Irulan server in configuration file:

$irulan_cfg["host"] – DNS(computer name or domain) or IP address of computer where the Irulan server is located

$irulan_cfg["port"] – port, on which is Irulan server listening

$irulan_cfg["timeout"] – timeout set – if program is not able to make connection with Irulan server in this time, it will be terminated with error message

Part NN Monitor configuration

ON - starts neural network learning

config: $irulan_cfg["on_off"] – set to 1

OFF - stops neural network learning

config: $irulan_cfg["on_off"] – set to 0

RESET - resets NN modul – stops(OFF), resets initialize bit, resets weights

config: $irulan_cfg["on_off"] – set to 0

$irulan_cfg["reset"] – initialize bit - set to 0

$irulan_cfg["weights"] - by number of inputs and outputs resets the count of weights;

count = inputs * outputs

Method – you can choose one of the method Optifnet or Z-optifnet when you click on radio button. Optifnet method is set as default

Weights – Status window will show matrix of weights when you click on this button. Reloads every 20 seconds.

config: $irulan_cfg["weights"] – weights are items started with this address

Passed – graph shows how many samples are already learned so how many „passed“

config: $irulan_cfg["l/c"] – there is a number of not learned samples in this item

Picture – LEARNING or COMPLETED – picture shows neural network learning status

LEARNING – neural network is learning yet; COMPLETED – neural network is learned already

Weights graph - Status window will show graph. It is possible to see how is the neural network learning on this graph – number of graphs is computing by inputs and outputs –

number of graphs = 2 * outputs.

There is alegend under the weights graph which describes each line. Data for graph are saved in the buffer – so it’s important to load data to modul, which automaticly save data to buffer; or download data from modul before first load of the graph (see Upload), (see Download from NN modul to buffer). Reloads every 20 seconds.

Passed – see Passed by Weights

Matrix - Status window will show matrix of dynamical system: A, B, C(matrix D will not shown because D = 0). It’s important to choose regular method(click on regular radio button) for correct display of the matrix. Reloads every 20 seconds.

Passed – see Passed by Weights

Value of step response – height of step response

Number of steps – number of steps of step response

Step response - Status window will show picture with step response of dynamical system computed by filled height and number of steps, when you click on this button. It’s important to choose regular method(click on regular radio button) for correct display of step response. config: $irulan_cfg["steps_0"] – how many steps will be value of step input zero

Passed – see Passed by Weights

Get actual status of NN modul – the whole application will be loaded again with actual values when you click on this link

Picture - ON, OFF or Reseted – indicates actual status of NN modul. It will change if you click on some of these buttons: ON, OFF or RESET

Part Controls

Upload this file to NN Modul – you can choose file which you want upload to NN modul when you click on Browse button – but it’s important to set number of inputs and outputs on the base of your data file(see Inputs, Outputs – Set to modul); number of active banks program sets automaticly and learning step gama is not refer with this part of program. Required data will be load to NN modul when you click on Upload button and relevant items will be set.

Upload one of these demo files instead your's: there are 3 files prepared like demo, 1 for Optifnet and 2 for Z-optifnet method. It’s possible to upload one of these 3 files instead yours. But it’s important to set inputs and outputs by legend and limits (seeNN Parameters a Limits of NN modul). ATTENTION: if you choose one of demo files, leave form by Browse button blank.

If you have checked Reset synaps after upload, program will resets weights moreover. Progress of upload is possible to see in Status window.

config: $irulan_cfg["values_separator"] – separator of values in file

$irulan_cfg["bank0"] – start address of the first bank

$irulan_cfg["bank1"] - start address of the second bank

$irulan_cfg["bank2"] - start address of the third bank

$irulan_cfg["bank3"] - start address of the fourth bank

$irulan_cfg["bank_count"] – start address for usage of each bank

Download from NN modul to buffer – data from NN modul will be save to buffer when you click on this button. Buffer is important for Weights graph drawing. So if other user already loads data to NN modul, you don’t need to load it again, but for the correct show of the Weights graph you must save data from NN modul to buffer. Progress of download is possible to see in Status window.

Save data from NN modul to file

Name of file: fill this form with name of file, in which you want to save data from NN modul. Data will be save after you click on this button. Progress of download is possible to see in Status window. File is after download located in: path_to_application/data/ like name.dpl

Part NN parameters:

Inputs – inputs

config: $irulan_cfg["inputs"]

Outputs – outputs

config: $irulan_cfg["outputs"]

Active banks: active banks

config: $irulan_cfg["banks"]

Gama: gama – learning step – this number speed up or slow up learning of neural network

config: $irulan_cfg["gama"]

Set to modul – you can set up number of inputs, outputs, active banks and learning step gama to your values with which you fill the relevant forms when you click on this button. Program change only that items which value was changed.

Get from modul – program loads the following values: inputs, outputs, active banks, gama, limits and graphical representation of usage of each bank when you click on this button (see Part Limits of NN modul and Banks usage).

Part Limits of NN modul:

Set limits to NN modul - you can set upper and lower limits to your required values here when you fill relevant form with values and click on the button. Attention: set up only upper limits. Program will automaticly set up lower limits to values:

lower limit = upper limit * (-1).

Limits will be save to items on the base of the configuration file.

config: $irulan_cfg["lim"] – start address of limits – their count is set by number of outputs: for each outputs is one pair of limit(upper and lower limit)

Upper andLower limits – there are values of upper and lower limits in these forms

config: $irulan_cfg["lim"]

Part Banks usage:

Graphs shows percentual usage of each bank. These values are changed after you upload new data to NN modul and will refresh after you click on Get from modul or Get actual status of NN modul

config: $irulan_cfg["bank_count"] – start address for usage of each bank

Order

It’s important to set up every items in configuration file like your PLC settings. It’s important to set up connection to Irulan server too.

Configuration of NN modul:

The best way how to start is to reset NN modul with RESET button. After that is necessary to set up number of inputs, outputs on the base of your data file or demo file which you want to upload to NN modul. The number of inputs and outputs for demo files is show by radio button. You make this action when you change the relevant values and click on the Set to Modul button. It’s important to set up limits then. Set up only upper limits, lower limits will be changed automaticly. You make this when you change the values in relevant forms and click on Set limits to NN modul button.

When you have finished the configuration, you can load the actual values when you click on link Get actual status of NN modul, which reloads the whole window.

File upload:

Now we can upload file to NN modul. You can choose your file or one of demo files for upload. If you don’t reset the NN modul on the start, you can check the Reset synaps after upload and program for upload will reset the weights too. Program fill the buffer neccesary for Weights graph drawing too.

Start running of NN modul:

If we have correctly configured the NN modul and loaded data, we can start running of NN modul – it means start learning of neural network with the ON button. We can stop learning of neural network with the OFF button anytime.

Monitoring :

Now we can monitor how the neural network is learning. There are 4 possibilities what we can monitor:

1, weights matrix – Weights button

2, weights graph – Weihts graph button

3, matrices of dynamical system – Matrix button

4, step response – Step response button after we fill the forms Value of step response andNumber of steps

ATTENTION: if data are loaded in NN modul already, for the correct show of the Weights graph you must save data from NN modul to buffer – Download from NN modul to buffer button

ATTENTION: it’s important to choose a regular method(click on regular radio button) for correct show of the matrix of dynamical system and step response.

It’s possible to see how many samples are learned already on the Passed graph and status of learning – it indicates picture LEARNING or picture COMPLETED. Also is possible to change learning step gama and limits during the monitoring.

Learning result :

Weights matrix, matrices of dynamical system A, B, C and step response computed by the end of learning of neural network – COMPLETED status.

Save data to file:

If data are loaded in NN modul already, you can download them to file with name you want. This file you can use for next using this application or for another program.