XSlave Manual
XSlave Manual
XSlave Manual
User Manual
2015-07-29
NOTE:
Jason Hua has made every reasonable attempt to ensure the completeness and accuracy of this
document. However, the information contained in this manual is subject to change without notice.
Revision Notes
This Manual is for the version of 2.2013.5.15 or higher.
TABLE OF CONTENTS
1
Overview ................................................... 1
1.3.2
Installation ........................................... 2
Start up ................................................... 3
1 Overview
The xSlave is a set of software of Protocol Slave Application that helps you to:
1. Easily and efficiently and quickly set up the Simulation of Protocol Slave devices talking to
the Protocol Master End over Serial Link, MB Plus Network and Ethernet (TCP/IP).
2. Simulate data of Digital Input, Analogue Input and Counter.
3. Monitor control-commands (i.e. Digital Output, Analogue Output, Freezing, etc.) sent by
the Protocol Master End.
4. Record/Log protocol messages.
5. Simulate the PLC program Runtime.
6. Share the point database with Protocol Master Applications to make a PC (Embedded) to
be a RTU.
-1-
Comment
The xSlave for DNP3 executable file.
The xSlave for L&G 8979 executable file.
The xSlave for Modbus executable file.
The xSlave for Modbus Plus executable file.
Readme file.
This manual.
Configuration files.
Logs File.
PLC Program Run-time simulator script file.
-2-
2 Start up
2.1 Making the registration file
If it is the first time to run the xSlave program on the current PC, you will be asked to register the
xSlave software and send the registration file: "software.aut" to the xSlave developer. And the
xSlave developer will send you back two files: "software.aut" and "software.key". You should copy
them into the directory "c:\xMaster". The register window is shown in the screenshot Figure 2-1.
Max. Length =50
Max. Length=60
Figure 2-1
If the xSlave fails in checking the register file, it alerts you that the current installation of
xMasterSlave software has not been registered.
-3-
Running xSlave
Press the button of
[xxx Slave] to run
xSlave software, which
can simulate Slave
protocol/device (i.e.
RTU, Sub-RTU, PLC,
IED, etc.). You can add
xSlave application line
into the list by press
the button of [Add].
Note: you have to save
the xSlave
configuration in xSlave
application by press
the button of [Save
Config].
Note:
Multi-instances of xSlave cannot share the same serial port.
xSlave can handle all polling from via the same comm port (incl: multi-drop -- RS422/RS485 link)
within ONE session.
xSlave can handle all polling from the LAN with sessions (up to 200 DNP server TCP/IP sessionsconnections using same IP port i.e. 20000 -- only in the embedded pc version) respectively.
xSlave can be running multi-instances as many as the PC can handle (if over the LAN TCP/IP,
cannot use the same IP Port, i.e. 20000 for DNP, 502 for Modbus. It means that only one can use
them.).
Each xSlave instance can be respectively tied/bonded IP address assigned in the same PC. You can
assign 200 IPs in a PC to simulate up 200 DNP Slave IEDs.
If you minimize the xSlave window, the window will disappear and you can find it on the task bar
and will appear again after a double-click on it. Refer to the following screenshot.
double-click to
open it.
-4-
-5-
The screenshot Figure 3-1 is the window of Administrator & Setup of MB_Slave.
You can set up either the serial link
based, or TCP/IP link based
communication between the slave end
and the master end.
Figure 3-1
Note:
If the IP Port is 502 and 300-3099, the MB_Slave runs the protocol of Modbus TCP/IP, otherwise
runs Modbus RTU protocol over TCP/IP.
In MB/MBP Slave you have an option to configure how to form 32bit data. [X]Modbus 32Bit Data
If checked, the 2nd Word(16bit) is the Bit31-24 of 32bit data, otherwise is Bit15-00 of 32bit data.
-6-
The data of 1x001 - 1x0ddd is assigned to the data of 3x001 - 3x0(ddd/16). e.g. if 1x001-1x0160 is
assigned, 3x001-3x010 stores the data of 1x001-1x0160 by default.
-7-
3.2
The screenshot Figure 3-2 is the window of Administrator & Setup of LG_Slave.
Figure 3-2
-8-
3.3
The screenshot Figure 3-3 is the window of Administrator & Setup of MB_Plus_Slave.
Figure 3-3
Note:
You have to ensure that MB+ Card driver works and is set up accordingly for MB+ network. You
can use CONCEPT, the MB PLC programming tool, to connect to MB+ network and verify the
existence of MB+ Master End or MB+ Network.
-9-
3.4
The screenshot Figure 3-4 is the window of Administrator & Setup of DNP_Slave.
- 10 -
3.5
The screenshot Figure 3-5 is the List of Client Connection over TCP/IP Link.
xSlave can support up to 32
connections. A special version for DNP
Slave (dnp_slave_200.exe) can
support up to 200 connections
simultaneously.
Figure 3-5
Note:
TCP Connection Silent Timeout is 10 times the setting of Timeout. It means that the TCP/IP
connection between the slave and the master will be terminated after xx minutes the master still
does not talk to the slave.
Right-Click on the current session/connection to determinate how to connect the Slave Point Database. The default is
all Slave sessions/connection share the same point database. You can have the current session/connection link not to
reply any data changes ([Disconnect from Database (Reply with Data-Zero)]) and the rest sessions still share the point
database. You also can have the current session is the only one connected to the point database ([Connect Database
exclusively]) and the rest sessions reply polling with Data-Zero only.
Note: If the current session/TCP IP connection is disconnected you have select another alive session to be connected or
[Restore Database connection for ALL].
EP: Event Poll Interval/ How often the Master End Poll Class 1/2/3.
IP: Integrity Poll Interval/ How often the Master End Poll Class 0.
To expand/restore the window of LAN(TCP/IP) Link-Clients, you can double-click on the "Clients".
- 11 -
4 Point Database
You can set up a default point database after setting the total points of DI/DO/AI/AO/COUNTER.
Refer to the section 3, you can click on the button of AutoConfig DB, which sets the default
actions for DO/AO.
Note: All sessions of xSlave share the same point database. You may save the settings of total
points of DI/DO/AI/AO/COUNTER. Refer to the section 3.1: buttons of Load/Save Config. And
you should enable settings by clicking on the button of Set DB Point.
You can check whether the current point is sharing the data with others. Refer to the screenshot
Figure 4-1.
Figure 4-1
- 12 -
4.1
The screenshot Figure 4-2 to 4-6 is the Point Database of DNP and LG.
The page of DI - Digital Input is shown as follows:
Set up the number of DI point in the Point
Database. You should enable settings by
clicking on the button of Set DB Point.
Double-Click on the DI
points to toggle the state
directly.
Set DI Object
ONLINE/OFFLINE by clicking
on the column of Online.
Figure 4-2
Note: the number of points in DNP and LG is starting from 0. But the number of points in DI/DO modules (LED lights
panel) and Modbus is starting from 1.
- 13 -
Figure 4-3
Note:
You can setup actions after controls by the configuration of the column of Action. Click on the
button of HelpOnAction to get help how the Action works. The default action of DO Control is that
the state of DI OFF/ON is set by the DO control commands of ON/OFF or OPEN/CLOSE.
The 24-Bit Binary Output is sharing with SBO/DO/Pulse Output. It means that Binary-Output
Point/Block #1 uses DO Point #1 to #24, Binary-Output Point/Block #2 uses DO Point #25 to #48,
and so on. The current DO-Script/Control-action will be blocked when its flag of OFFLINE is ON.
- 14 -
- 15 -
Figure 4-5
Note:
You can setup actions after controls by the configuration of the column of Action. Click on the
button of HelpOnAction to get help how the Action works. The default action of AO Control is that
the Value of AI is set by the Setpoint of AO.
- 16 -
Figure 4-6
- 17 -
Variations
0,1,2
0,1,2
0,2
1,2,3
0,1,2,3,4,5,6
0,1,2,3,4,5,6
0,1,2,3,4,5,6
0,1,2,3,4,5,6
0,1,2,3,4,5
0,1,2,3,4,5
0,1,2,3,4
1,2,3
0,1
1,2,3,4
Note
DI
DI Events, with T-Stamp
DO Status
DO Control
Counter 16/32-Bit
Counter Events, with T-Stamp
Frozen Counter
Frozen Counter Events
AI 16/32-Bit(floating)
AI Events, with T-Stamp
AO Status
AO Controls
D&T
Class data (Event-Poll)
The current Counter object var#2 (16-bit) can be changed to var#1(32-bit) when you input the data
string with a suffix:"L".
[ ] Obj_2_1_For_IntegrityPoll
Default is Unchecked. If Checked, the DNP Slave replies the integrity-poll with Obj1-Var2 instead
of Obj1-Var1.
[ ] Enable_DNP Remote Forced Bit
Default is Unchecked. If Checked, the DNP Slave sets the bit of Remote Force when you change
the value of the current point manually.
[X]Enable Frozing Command in DNP Slave so that the DNP Object #20 and #21 can be read
respectively.
[ ] Sync AutoTest with Event-Poll
[ ] LocalForce Generates Events
DNP Muli-SBO points command (multi-points in the same DNP protocol frame - Select &
Operation) is allowed.
- 18 -
4.2
Figure 4-7
- 19 -
Figure 4-8
- 20 -
Figure 4-9
- 21 -
[*])[TAB]LongName[TAB]Scaling-A[TAB]Scaling-B[TAB]
[*])[TAB]LongName[TAB]Scaling-A[TAB]Scaling-B[TAB]
[*])[TAB]LongName[TAB]Scaling-A[TAB]Scaling-B[TAB]
[*])[TAB]LongName[TAB]Scaling-A[TAB]Scaling-B[TAB]
Where [TAB] is the key of TAB and [*] is the Key *. DateTimeString is the time
stamp referring the sample 11/9/2007 8:46:37 PM
Note: above prefix of the file name is defined by the current xSlave configuration file name that is created
when you press the button of [Save Config]. For example, if you save the current configuration into
(c:\xMaster\xSlaveAppl\)ABCD.DAS, the xxxxx_tren_settings.txt will be ABCD_tren_settings.txt and the
xxxxxx_setup.txt will be ABD_setup.txt. The files of Tren-Points are text-based file. User has to create/edit it
manually (i.e. by using NotePad.exe, etc.). It will be loaded/detected/processed by xSlave automatically after
*.DAS/*.SDB is loaded. User program now can run and generates the TheTrenPointFileSmpName
(C:\xMaster\xSlaveAppl\dnpslave_tren_smp.txt) after the TheTrenPointFileName
(C:\xMaster\xSlaveAppl\dnpslave_tren_point.txt) is created. The xSlave will read the data of Tren Point from
dnpslave_tren_point.txt when dnpslave_tren_smp.txt is found and delete dnpslave_tren_smp.txt. User
program start preparing/updating the Tren Point data file when finds dnpslave_tren_smp.txt is deleted. Again
user program creates a new dnpslave_tren_smp.txt when finishes a new data file for all Tren Points.
- 22 -
Figure 5-1
- 23 -
Figure 5-2
Double-Click on the Control-Commands log window to change the size of Font 8 <--> 12.
- 24 -
Figure 5-3
- 25 -
Figure 5-4
- 26 -
Delta data
Figure 5-5
- 27 -