Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

1.

...

OPC UA Setup.

start with the setup described in

Getting started: IoT LFW V2.2 example for netX 90 APP

2. Change OPC UA object

Cread Create OPC UA Hello World Variable in the Actuator object

open the comunicationstudio communication studio project

netXStudio_PNSV5_NetProxy_simple_V3.0.0.0\Components\cifXApplicationDemoNpx\OPCUA_CONFIG_PORT2\CommunicationStudioProject\NetProxy_simple\NetProxy_simple

and go to the object "Actuator"

click on "add new Node" andcreate and create in the "Actuator" object a new variable with the name "HelloWorld"

...

Go to the mapping to connect netProxy with the OPC UA object

navigate to the Hello World HelloWorld variable and choose it and after ok do not forget to click apply.

...

If everthing is ok, it looks now like this

Export now thie this configuration for the OPC UA server

...

CONFIG.NXD

OPC_INIT.TLV

Download this these configuration files to the netX90 like in the getting started guide described.

6. UA Expert

Give the PC a an IP adress address like 192.168.0.40. Set with Ethernet Device Configuration Tool the IP 192.168.0.50 at the device.

Start UAexpert project and configurate the device IP adreesaddress in this project.

netXStudio_PNSV5_NetProxy_simple_V3.0.0.0\Components\cifXApplicationDemoNpx\OPCUA_CONFIG_PORT2\UAexpertProject\NetProxy_simple_UAexpert_config.uap

...

UAexpert is the OPC UA client and connect it to the OPC UA Server on the netX90.

Image RemovedImage Added


move variable with drag and drop in the data acess access view window

7. Application Source Code Changes

Change in the file NpxUserObjects.h the structure of the Actuartor and and add the HelloWorld

Code Block
languagecpp
typedef struct ACTUATOR_Ttag
{
    uint8_t bMode;     /*!< Mode[uint8] */
    uint8_t bState;    /*!< State[uint8] */
    int16_t iValue;    /*!< Value[int16] */
    int16_t iHelloWorld;    /*!< Value[int16] */
} ACTUATOR_T;

Change the file AppNpx_TerminaHandler.c and add HelloWorld handling.

Code Block
languagecpp
case APP_TERMINAL_HANDLER_COMMAND_OPC_WRITE:
    {
      ACTUATOR_T tActuatorObj;
      tActuatorObj.bMode=0x55;
      tActuatorObj.bState=0xAA;
      tActuatorObj.iValue=0x1234;
      tActuatorObj.iHelloWorld=4321;
	...
	}

...

Connect with a tool like hterm to the uart of the netX90. With "help" the possbile possible list of command commands will be returned.

chose choose "opcwr" will activate the function APP_TERMINAL_HANDLER_COMMAND_OPC_WRITE wtich . This means, that the netX90 application will write the netPROXY objects. The netPROXY objects are connected with the OPC UA objects. The UA expert read cyclic the OPC UA object. Here the change can be seen:

Image Added

8. No Uart RS232 Modul

If no RS232 modul is available:

download the change:Image RemovedOPC UA Server configuration files to the netX90

Change the taglist of the firmware:

Image Added

change the hwc

Image Added

download the new hwc and the changed firmware to the netX90. 

Now the terminal is mapped to the ftdi uart (usb of NXHX90 board), but it is no longer possible to reach the marshaller.

For a new OPC UA configuration it is neccessary to change back these settings.