Codesys#Let’ use EXOR XA5 x Pixsys CPU to build a CANOpen Network

In this Tutorial I will show you how to configure a CANOpen Network with EXOR XA5 panel and Pixsys PLC – Codesys are installed both. EXOR XA5 is the Master side and Pixsys is the slave side.

Let’s start!

Reference Link


The XA5 is an HMI designed for outdoor applications where robust and flexible instrumentation is required. A wide operating temperature range of -30°C to + 70°C is possible for reliable outdoor operation under the harshest environmental conditions.

Advanced power management and software optimization enable fast startup and user-configurable control of standby/wakeup states. Low power consumption in standby mode is an important feature for battery-powered applications.

  • Programmable with JMobile software
  • Optional CODESYS PLC
  • Optional Corvina Platform connectivity
  • CAN FD ports x2
  • Ethernet Interface x 2
  • RS-485, isolated x 1
  • Weight 0.6 Kg
  • IEEE 802.11a/b/g WI-FI


This is the Layout of EXOR XA5.


This is the location of the WI-FI antenna.

Light Sensor/Configurable LED

A=Light Sersnor place where B=for configurable LED place.


This is the meaning of each LED on the back side of XA5.

Power Supply

This is the wiring for the power Supply. Note that the KEY ENABLE PIN must also be powered with 24v.



Power Supply



This is a wiring diagram.

PlxSys Side

DIP Switch

To use the CAN network, first set DIP switch No. 3 to On.

Add CAN Bus

Build a CANOpen Local Slave by clicking the  Device>Right click>Add Device.

Choose Fieldbus>CANbus>CANbus and Add Device.

Done!CANbus Driver is inserted in your project now.

Add Can Bus Local Devices

Then we can Add the local CANbus device with right Click>Local Device>CANOpen Device and Add Device.

Done!CANOpen Slave is inserted in your project now.

IF missing Library

Missing Library errors may occur each time a new device is added.

Go to Library Manger>Download Missing Libraries and download the missing libraries.


Now we can configure the CANbus parameters.


Double click the Canbus(CANbus) and General Tab is displayed.


Please configure the Network to 1(0=Pixsys CPU Local CANBus,1=the CANBus terminal interface of 4 and 5)

Baud rate

Configure the Baud rates to match your applications.

CANopen Device

Then we can configure our CANOpen Device settings.

Node ID

You can configure the NodeID that depends on your application.(Default=1)

Let’s change the NodeID to 10 and you need to match the NodeID settings in the CANOpen Master Side.

Edit I/O Area

Next, we need to set the data size, direction that would be exchanged with the Master.

The Edit I/O Area screen appears.

Add Transmit

Declare a new data exchange area with Clicking the Add Area button.

Set I/O direction to Transmit. In other words, this is the Q data output from Pixsys to XA5.

Data Type allows you to set the data type to be exchanged. In this case, let’s use INT (16 Bit integer) from Drop-List.

Count is the field that allows you to set the number of identical data in a sequence; Count=4 means four 16-bit integers.

Done!Transmit direction (output) data has been defined.

Add Receive

Next, click Add Area one more time and set the I/O direction to Receive; for Pixsys, this data will be input (I). Same as before, let’s define it as four 16-bit integers.


Finally, press the Ok button to save the settings.

CANopen I/O Mapping

When the CANopen I/O Mapping Tab is opened, the Transmit and Receive data defined earlier are also added and can now be mapped.

Object Dictionary

Next, open the Object Dictionary Tab.

Transmit and Receive data for 16#3000 and 16#3800 were also available.

Each Object also has 4 data.

Export EDS File

Next, let’s Export the EDS File.

Set the Export destination.


Add GVL for Mapping by click Application>Right click>Add Object>Global Variable List.

Enter the GVL name.

Define an INT array for Mapping.


The last step is Mapping GVL variables and CANopen I/O.

Let’s link the I/O to the variables defined in GVL earlier.



To check, the program can be checked by putting the appropriate value in each variable.


Login to Download the project.

Select Login with online change>Ok.

Then the Codesys CANOpen Slave side of Pixsys is ready.

XA5 Side

Next, we will do the XA5 side: please choose XA5.when you create a new project in Codesys.

Install EDS File

Install the Exported EDS File from the Pixsys project, open Tools>Device Repository.

The Device Repository screen appears.

Click the Install button to import the EDS File.

Open the EDS File you just exported.

Add CANbus

To add a CANBus Driver, go to Device>Add Device.

Select Fieldbus>CANbus>CANbus and add CANbus Driver in Add Device.

CANbus Driver has been added.

Add CANopen Manager

Next, add CANopen Master to XA5 Driver by CANopen>CANopenManager>CANopen_Manager.

Done!CANopen Master has been added.

Add CANopen Slave

Now insert the Pixsys CANopen Slave into the CANopen network: Go to Fieldbus>CANopen>Remote Device>CANopenDevice is the EDS file you just imported.

Done!Pixsys CANopen Slave has been added.


Open the Tab in PDOs to see the Process Data Object.

Both Transmit and Receive PDOs were Imported!


The next step is to set CANOpen’s network parameters.



Set Network=1.

CANopen Device

The next step is to set the communication parameters for Pixsys’ CANopen Slave.

The General Tab appears.


Node-ID=10,which is the corresponding Codesys project in Pixsys.


Define GVL for I/O Mapping: add Application>Add object>Global Variable List.

Let’s define two INT arrays.

CANopen I/O Mapping

The next step is Mapping the variables and IOs defined in GVL.

Click the … button.

Connect them to the appropriate variables.


Mapping other I/Os in the same way.


Finally, write appropriate values to the output for verification.


Download the program to Codesys Runtime with Login.



It has a green ICON next to CANbus, which means it is working properly now.

You can check the current CANbus status from Status.

From CANopen Mangaer’s Status, we can see that CANOpen Master is now Running.

You can check the detailed operation history in the Log.

Output data from Pixsys was also received.

PixSys Side

The PixSys side also has a green ICON on the CanBus, indicating that the CanBus is working properly.

Data from EXOR XA5 was also received.


Please Support some devices for my blog

Amazon Gift List

Find ME

Email:soup01threes* (* to @)


  • このエントリーをはてなブックマークに追加