Functional Overview
S3964R
♦
ProLinx Gateway
Driver Manual
Siemens 3964R Protocol
ProSoft Technology, Inc.
Page 45 of 64
April 14, 2009
Port 0 Receive Database (Results of DB-Fetch)
Word
Value
Description:
0
4
In this example, the Receive Sequence Number will increment from 3
to 4 when the fetched data has arrived. When this location changes
values, then the fetched data has returned and it is ready to be read.
1
8
Transmit Sequence number. This number will update to the Transmit
Sequence Number that triggered the DB-FETCH. When this value
updates to the transmit sequence number it does not mean that the
fetch command has been sent out of the 3864R port. It only means that
the 3964R driver has read the DB-FETCH command from the transmit
database and it is now safe to start writing the next transmit command
to the transmit database. Although in this case, it would be wise to wait
for the fetch response before initiating a new command.
2
0
Reserved.
3
0
Error Code. This error code should be monitored continuously because
sometimes it might take awhile for a communication error to occur
depending on timeout values and the type of error.
4
16
Number of data words in this message block. Modbus TCP/IP multi-
block Block Number (1 word) plus RK512 Header (10 words) plus the 5
words of fetched data.
5
0
Multi-block number should always be 0.
6
0x0045
Returned Job Code ID. 0x0045 = DB-FETCH
7
0
Returned Data Block number.
8
0
Returned Data Word number.
9
5
Number of data words Total. (The 5 words we requested)
10
5
Number of data words Block. Always equal to Number of data words
Total.
11
0
Reserved.
12
0
Reserved.
13
0
Reserved.
14
0
Reserved.
15
0
Reserved.
16
111
1
st
data word value.
17
222
2
nd
data word value.
18
333
3
rd
data word value.
19
444
4
th
data word value.
20
555
5
th
data word value.
Port 0 Transmit Database (After Reading Fetched Data)
After the Fetched data has been read, the transmit database must be updated as
follows:
Word
Value
Description:
300
X
No change.
301
4
Last Received Sequence number. After received data has been read,
copy value from Port 0 receive database Receive Sequence number
(word[0000]) to this location to tell 3964R driver that it is OK to write
new data into the Receive database. In our example, we copy the new
Receive Sequence value of 4 to this location.