DVP - Communication Protocol

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 23

DELTA DVP Series PLC

COMMUNICATION PROTOCOL VER 1.0

1
1. Communication Interface: RS-232C
2. Communication Protocol ASCII mode, 9600(Baud rate),7(Data length),
EVEN(Parity),1(Stop bit)
3. Communication Data Frame

STX Start character ‘:’(3AH)


ADR 1 Communication address:
ADR 0 8-bit address consists of 2 ASCII codes
CMD 1 Command code:
CMD 0 8-bit command consists of 2 ASCII codes
DATA(0) Contents of data:
DATA(1) n8-bit data consist of 2n ASCII codes.
………. n37, maximum of 74 ASCII codes
DATA(n-1)
LRC CHK 1 LRC check sum:
LRC CHK 0 8-bit check sum consists of 2 ASCII codes
END 1 End character:
END 0 END 1 = CR(0DH),END 0 = LF(0AH)

 ADR(Communication Address)
Valid communication addresses are in the range of 0…31. Communication address equals to
0 means broadcast to all PLC, the PLC will reply normal message to the master device.
For example, communication to PLC with address 16 decimal:
(ADR 1, ADR 0)=’1’,’0’’1’=31H, ‘0’ = 30H

 CMD (Command code) and DATA (data characters)


The format of data characters depends on the command code. For example, reading continuous 8 words
form starting device address 0614H of PLC with address 01H.

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 03
Starting Address Hi 06
Starting Address Lo 14
Number of Points Hi 00

2
Number of Points Lo 08
Error Check ( LRC ) DA
Number of Points(max)
= 18(for 16 bit register)
= 9(for 32 bit register)

Example:Reading Coils T20~T27 from slave device 01


PC→PLC
“:01 03 06 14 00 08 DA CR LF”
PLC→PC

“:01 03 10 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 B8 CR LF”

Field Name Example (Hex)


Slave Address 01
Command code 03
Bytes Count 10
Data Hi(T20) 00
Data Lo(T20) 01
Data Hi(T21) 00
Data Lo(T21) 02
Data Hi(T22) 00
Data Lo(T22) 03
Data Hi(T23) 00
Data Lo(T23) 04
Data Hi(T24) 00
Data Lo(T24) 05
Data Hi(T25) 00
Data Lo(T25) 06
Data Hi(T26) 00
Data Lo(T26) 07
Data Hi(T27) 00
Data Lo(T27) 08
Error Check(LRC) C8

3
 LRC CHK(check sum)

LRC (Longitudinal Redundancy Check) is calculated by summing up, module 256, the values
of the bytes from ADR1 to last data character then calculating the hexadecimal representation
of the 2’s-complement negation of the sum.
For example, reading 1 word form address 0401H of the PLC with address 01H

STX ‘:’
ADR 1 ‘0’
ADR 0 ‘1’
CMD 1 ‘0’
CMD 0 ‘3’
‘0’
‘4’
Starting data address
‘0’
‘1’
‘0’
‘0’
Number of data
‘0’
‘1’
LRC CHK 1 ‘F’
LRC CHK 0 ‘6’
END 1 CR
END 0 LF

01H+03H+04H+01H+00+01H = 0AH
the 2’s-complement negation of 0AH is F6H

Exception response:
The PLC is been expected to return a normal response after receiving command messages
from the master device. The following depicts the conditions that no normal response is
replied to the master device.

The PLC does not receive the messages due to a communication error; thus the PLC has no
response. The master device will eventually process a timeout condition.

The PLC receives the messages without a communication error, but cannot handle it, an
exception response will return to the master device. In the exception response, the most
significant bit of the original command code is set to 1, and an exception code explains the
4
condition that caused the exception is returned.

5
An example of exception response of command code 01H and exception 02H:

Command message:

Field Name Example (Hex)


Heading 3A
Slave Address 01
Function 01
Starting Address Hi 04
Starting Address Lo 00
Number of Points Hi 00
Number of Points Lo 10
Error Check ( LRC ) EA

Response message:

Field Name Example (Hex)


Heading 3A
Slave Address 01
Function 81
Exception Code 02
Error Check ( LRC ) 7C

Exception
Meaning:
code:
Illegal command code:
01 The command code received in the command message is not
available for the PLC.
Illegal device address:
02 The device address received in the command message is not
available for the PLC.
Illegal device value:
03 The device value received in the command message is not
available for the PLC.
07 Check Sum Error
Check if the check Sum is correct
Illegal command messages

6
The command message is too short.
Command message length is out of range.

7
 The format of data characters depends on the command. The available command codes are
described as followed,

Code Name Description


01 Read Coil Status S, Y, M, T, C
02 Read Input Status S, X, Y, M,T, C
03 Read Holding Registers T, C, D
05 Force Single Coil S, Y, M, T, C
06 Preset Single Register T, C, D
15 Force Multiple Coils S, Y, M, T, C
16 Preset Multiple Register T, C, D
17 Report Slave ID None

DELTA DVP-ES Series PLC DEVICE ADDRESS

Device Range Effective Range Address


S 000~255 0000~00FF
S 246~511 0100~01FF
000~127
S 512~767 0200~02FF
S 768~1023 0300~03FF
X 000~377 (Octal) 000~177 (Octal) 0400~04FF
Y 000~377 (Octal) 000~177 (Octal) 0500~05FF
T 000~255 000~127 0600~06FF
M 000~255 0800~08FF
M 256~511 0900~09FF
M 512~767 0000~1279 0A00~0AFF
M 768~1023 0B00~0BFF
M 1024~1279 0C00~0CFF
000~127
C 000~255 0E00~0EFF
232~255
D 000~255 1000~10FF
D 256~511 1100~11FF
000~599
D 512~767 1200~12FF
1000~1143
D 768~1023 1300~13FF
D 1024~1279 1400~14FF

8
9
Command Code:01, Read Coil Status

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 01
Starting Address Hi 06
Starting Address Lo 14
Number of Points Hi 00
Number of Points Lo 25
Error Check ( LRC ) BF

Number of Points(max) = 255 = 0x00FF

Ví dụ: Đọc M0 đến M4 của PLC có địa chỉ 00

Field Name Example (Hex)

Heading 3A
Slave Address 00
Command code 01
Starting Address Hi 08
Starting Address Lo 00
Number of Points Hi 00
Number of Points Lo 05
Error Check ( LRC ) F2

00H+01h+08h+00h+00h+05h = 0eh

Đảo của 0e là: F2\

3A000108000005F2

Chuyển sang HEX: 3A 33 41 30 30 30 31 30 38 30 30 30 30 30 35 46 32 0d 0a

Phân tích lênh

10
:00 01 0C 30 0001C2..
Field Name Example (Hex) Chú giải
Heading 3A :
Slave Address 00 Đại chỉ 00
Command code Mã lênh: 01 Read
01 Coil Status

Starting Address Hi 0C Địa chỉ


Starting Address Lo 30
Number of Points Hi 00
Number of Points Lo 01
Error Check ( LRC ) C2 check sum

Lệnh Đọc M2: :00 01 08 02 00 01 F4..

Phân tích lênh: chuyển thành HEX

3a 30 30 30 31 30 38 30 32 30 30 30 31 46 34 0d 0a
Field Name Example (Hex) Chú giải
Heading 3A :
Slave Address 00 Đại chỉ 00
Command code Mã lênh: 01 Read
01 Coil Status

Starting Address Hi 08 Địa chỉ


Starting Address Lo 02
Number of Points Hi 00
Number of Points Lo 01
Error Check ( LRC ) F4 check sum

TRả về”
:00010102FC bit 0
:00010103FB bit 1

11
Field Name Example (Hex)
Slave Address 00
Command code 01
Bytes Count 01
02
FC

Example:Reading Coils T20~T56 from slave device 01


PC→PLC “:01 01 06 14 00 25 BF CR LF”
PLC→PC “:01 01 05 CD 6B B2 0E 1B D6 CR LF”

Field Name Example (Hex)


Slave Address 01
Command code 01
Bytes Count 05
Data(Coils T27…T20) CD
Data(Coils T35…T38) 6B
Data(Coils T43…T36) B2
Data(Coils T51…T44) 0E
Data(Coils T56…T52) 1B
Error Check(LRC) E6

 Command Code:02, Read Input Status

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 02
Starting Address Hi 05
Starting Address Lo 14
Number of Points Hi 00

12
Number of Points Lo 25
Error Check ( LRC ) BF

Example:Reading Contact Y024~Y070 from slave device 01


PC→PLC “:01 02 05 14 00 25 BF CR LF”
PLC→PC “:01 01 05 CD 6B B2 0E 1B E5 CR LF”

Field Name Example (Hex)


Slave Address 01
Command code 02
Bytes Count 05
Data(Coils Y033…Y024) CD
Data(Coils Y043…Y034) 6B
Data(Coils Y053…Y044) B2
Data(Coils Y063…Y054) 0E
Data(Coils Y070…Y064) 1B
Error Check(LRC) E5

 Command Code:03, Read Holding Register


Holding Register:T, C, D

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 03
Starting Address Hi 06
Starting Address Lo 14
Number of Points Hi 00
Number of Points Lo 08
Error Check ( LRC ) DA

Number of Points(max)
= 18(for 16 bit register)
= 9(for 32 bit register)

Example:Reading Coils T20~T27 from slave device 01


PC→PLC
“:01 03 06 14 00 08 DA CR LF”

13
PLC→PC

“:01 03 10 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 B8 CR LF”

Field Name Example (Hex)


Slave Address 01
Command code 03
Bytes Count 10
Data Hi(T20) 00
Data Lo(T20) 01
Data Hi(T21) 00
Data Lo(T21) 02
Data Hi(T22) 00
Data Lo(T22) 03
Data Hi(T23) 00
Data Lo(T23) 04
Data Hi(T24) 00
Data Lo(T24) 05
Data Hi(T25) 00
Data Lo(T25) 06
Data Hi(T26) 00
Data Lo(T26) 07
Data Hi(T27) 00
Data Lo(T27) 08
Error Check(LRC) C8

 Command Code:05, Force Single Coil

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 05
Coil Address Hi 05
Coil Address Lo 00
Force Data Hi FF
Force Data Lo 00
Error Check ( LRC ) F6

14
MMNN = 0xFF00….Coil ON
MMNN = 0x0000….Coil OFF

Example:Forcing Coil Y000 ON


PC→PLC “:01 05 05 00 FF 00 F6 CR LF”
PLC→PC “:01 05 05 00 FF 00 F6 CR LF”

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 05
Coil Address Hi 05
Coil Address Lo 00
Force Data Hi FF
Force Data Lo 00
Error Check ( LRC ) F6

15
 Command Code:06, Preset Single Register

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 06
Register Address Hi 06
Register Address Lo 00
Preset Data Hi 12
Preset Data Lo 34
Error Check ( LRC ) AD

Example:Setting Register T0 to 00 03
PC→PLC “:01 06 06 00 12 34 AD CR LF”
PLC→PC “:01 06 06 00 12 34 AD CR LF”

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 06
Register T0 Address Hi 06
Register T0 Address Lo 00
Preset Data Hi 12
Preset Data Lo 34
Error Check ( LRC ) AD

Switch ( c )

Case 0:T0

Q →:01 06 06 00 12 34 AD CR LF

Case 1:C0

Q →:01 06 0E 00 12 34 AF CR LF

Case 2:C232

Q →:01 06 0E E8 12 34 56 78 EF CR LF

Case 3:D10

16
Q →:01 06 10 0A 12 34 99 CR LF

Case 4:D1000

Q →:01 06 13 E8 12 34 BA CR LF

17
 Command Code:15, Force Multiple Coils

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 0F
Coil Address Hi 05
Coil Address Lo 00
Quantity of Coils Hi 00
Quantity of Coils Lo 0A
Byte Count 02
Force Data Hi CD
Force Data Lo 01
Error Check (LRC) 11

Quantity of Coils (max) = 255

Example:Setting Coil Y007…Y000 = 1100 1101, Y011…Y010 = 01.


PC→PLC “:01 0F 05 00 00 0A 02 CD 01 11 CR LF”
PLC→PC “:01 0F 05 00 00 0A E1 CR LF”

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 0F
Register T0 Address Hi 05
Register T0 Address Lo 00
Preset Data Hi 00
Preset Data Lo 0A
Error Check ( LRC ) E1

18
 Command Code:16, Preset Multiple Register

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 10
Starting Address Hi 06
Starting Address Lo 00
Number of Register Hi 00
Number of Register Lo 02
Byte Count 04
Data Hi 00
Data Lo 0A
Data Hi 01
Data Lo 02
Error Check (LRC) C6

Number of Register(max)
= 16(for 16 bit register)
= 8(for 8 bit register)
Example:Setting Register T0 to 00 0A, T1 to 01 02.
PC→PLC “:01 10 06 00 02 00 04 00 0A 01 02 D6 CR LF”
PLC→PC “:01 10 06 00 00 02 E7 CR LF”

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 10
Starting Address Hi 06
Starting Address Lo 00
Number of Registers Hi 00
Number of Registers Lo 02
Error Check ( LRC ) E7

19
 Command Code:17, Report Slave ID

Returns a description of controller present at the slave address, the current status of the slave
Run indicator, and other information specific to the slave device.

Command message:

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 11
Error Check (LRC) EE

Response message:

Field Name Example (Hex)


Heading 3A
Slave Address 01
Command code 11
Byte Count 04
Slave ID 01
Run Indicator Status
00 = OFF FF
FF = ON
Data 0(D1001 HI) 40
Data 1(D1001 LOW) 10
Error Check (LRC) 9A

20
 DVP Series PLC Internal Device Communication Address

Effective range
Device Range Type Address
ES/EX/SS SA/SX/SH EH

S 000~255 bit 0000~00FF


S 246~511 bit 0100~01FF
0~127 0~1023 0~1023
S 512~767 bit 0200~02FF
S 768~1023 bit 0300~03FF
X 000~377 (Octal) bit 0400~04FF
0~177 0~177 000~377
Y 000~377 (Octal) bit 0500~05FF
T 000~255 bit/word 0600~06FF 0~127 000~255 000~255
M 000~255 bit 0800~08FF
M 256~511 bit 0900~09FF
M 512~767 bit 0A00~0AFF
M 768~1023 bit 0B00~0BFF
M 1024~1279 bit 0C00~0CFF
M 1280~1535 bit 0D00~0DFF
M 1536~1791 bit B000~B0FF
M 1792~2047 bit B100~B1FF
0~1279 0~4095 0000~4095
M 2048~2303 bit B200~B2FF
M 2304~2559 bit B300~B3FF
M 2560~2815 bit B400~B4FF
M 2816~3071 bit B500~B5FF
M 3072~3327 bit B600~B6FF
M 3328~3583 bit B700~B7FF
M 3584~3839 bit B800~B8FF
M 3840~4095 bit B900~B9FF
0~199 16-bit bit/word 0E00~0EC7 0~127 0~199 0~199
C
200~255 32-bit bit/Dword 0EC8~0EFF 232~255 200~255 200~255

21
Effective
Device Range Type Address
ES/EX/SS SA/SX/SC EH

D 000~256 word 1000~10FF 0~1311 0~4999 0000~9999


D 256~511 word 1100~11FF
D 512~767 word 1200~12FF
D 768~1023 word 1300~13FF
D 1024~1279 word 1400~14FF
D 1280~1535 word 1500~15FF
D 1536~1791 word 1600~16FF
D 1792~2047 word 1700~17FF
D 2048~2303 word 1800~18FF
D 2304~2559 word 1900~19FF
D 2560~2815 word 1A00~1AFF
D 2816~3071 word 1B00~1BFF
D 3072~3327 word 1C00~1CFF
D 3328~3583 word 1D00~1DFF
D 3584~3839 word 1E00~1EFF
D 3840~4095 word 1F00~1FFF
D 4096~4351 word 9000~90FF
D 4352~4607 word 9100~91FF
D 4608~4863 word 9200~92FF
D 4864~5119 word 9300~93FF
D 5120~5375 word 9400~94FF
D 5376~5631 word 9500~95FF
D 5632~5887 word 9600~96FF
D 5888~6143 word 9700~97FF
D 6144~6399 word 9800~98FF
D 6400~6655 word 9900~99FF
D 6656~6911 word 9A00~9AFF
D 6912~7167 word 9B00~9BFF
D 7168~7423 word 9C00~9CFF
D 7424~7679 word 9D00~9DFF

22
D 7680~7935 word 9E00~9EFF
D 7936~8191 word 9F00~9FFF
D 8192~8447 word A000~A0FF
D 8448~8703 word A100~A1FF
D 8704~8959 word A200~A2FF
D 8960~9215 word A300~A3FF
D 9216~9471 word A400~A4FF
D 9472~9727 word A500~A5FF
D 9728~9983 word A600~A6FF
D 9984~9999 word A700~A70F

23

You might also like