You are on page 1of 41

บทที่ 8

การใชงานในสวนของการรับสงขอมูลแบบ Message Service


โดยใช Controller Link unit

ในบทนี้จะอธิบายถึงการใชงานในสวนของการรับสงขอมูลแบบ Message Service โดยใช


Controller Link unit

8-1 แนะนํา (Introduction) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112


8-1-1 คุณสมบัติเฉพาะของ Message Service (Message Service Specifications). . . . . . . 113
8-2 คําสั่ง Message Service (Message Service Command). . . . . . . . . . . . . . . . . . . . . . . . . . . 114
8-2-1 คําสั่งสง (SEND Command). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
8-2-2 คําสั่งรับ (RECIVE Instruction). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
8-2-3 คําสั่งนําสง (CMND Instruction). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
8-3 คําสั่ง FINS และการตอบกลับ (FINS Command and Responses). . . . . . . . . . . . . . . . . . . 128
8-3-1 การสื่อสารแบบ FINS (FINS Communication Service). . . . . . . . . . . . . . . . . . . . . 128
8-3-2 รหัสคําสั่ง (Command Code). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
8-3-3 รหัสตอบกลับ (Response Code). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
8-4 ภาคผนวก (Appendix) . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
8-4-1คําสั่งและรหัสตอบกลับสําหรับตัว CLK (Commands and Responses for
Controller Link nits) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-1 แนะนํา (Introduction)

Message Service คือ การรับสงขอมูลระหวาง Node บนเครือขายอีกรูปแบบหนึง่ ของ


Controller Link ซึ่งรูปแบบของการสงขอมูลในลักษณะนีน้ ั้นจะเปนการสงคําสั่ง (Command) ไปยัง
อุปกรณปลายทางที่ตองการติดตอ จากนั้นเมื่ออุปกรณปลายทางไดรับคําสั่งแลวก็จะทําตามคําสัง่
นั้นพรอมทั้งรายงานสถานะ (Response) และขอมูล (หากในคําสั่งมีการระบุวาตองการขอมูลจาก
อุปกรณปลายทางกลับมายังอุปกรณตนทางดวย) ซึ่งนั่นหมายความวา อุปกรณตนทางก็สามารถที่จะ
ควบคุมการทํางานตางๆ ของอุปกรณปลายทางไดเชนกัน เชน เปลี่ยนโหมดการทํางานของอุปกรณ
ปลายทาง ซึ่งการรับสงโดยใช Message Service ดังกลาวนั้น จะตองทําการเขียนโปรแกรมใน
Ladder โดยใช คําสั่ง “SEND” “RECV” และ “CMND”

112
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-1-1 คุณสมบัติเฉพาะของ Message Service (Message Service Specifications)

113
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-2 คําสั่ง Message Service (Message Service Command)

ในกรณีที่ตองการอานหรือเขียนพื้นทีห่ นวยความจําของโหนดอื่นจํานวนมากๆ สามารถที่


จะอานหรือเขียนไดอยางงายดายโดยอาศัยการเขียนโปรแกรม ในตัว CPU โดยการใชคําสั่ง SEND
และ RECV

8-2-1 คําสั่งสง (SEND Instruction)

• NETWORK SEND: SEND (090)


1. จุดประสงค (Purpose)
คําสั่งSEND จะสงขอมูลเทากับ “n” Words นับจาก S (S คือ Source node
เปน words เริ่มตนที่ใชเก็บขอมูลที่จะสง) สงไปยังโหนดปลายทางใน
ตําแหนง D (D คือ Destination node ซึ่งเปนพื้นที่หนวยความจําของ
โหนดปลายทางที่จะใหมีการรับขอมูล)

2. สัญลักษณทางเลดเดอร (Ladder Symbol)

114
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

3. องคประกอบ (Operands)
S: First source word (local node) ระบุพื้นที่ของหนวยความจําพืน้ ที่แรกที่
จะทําการสงขอมูลไปยังโหนด ปลายทาง (D: Destination word (Remote node))
D: First destination Word (Remote node) ระบุพื้นทีแ่ รกหนวยความจํา
ของโหนดปลายทางที่จะรับขอมูลจาก โหนดตนทาง(S: Source word (local node))
C: First control word ระบุพนื้ ที่แรก ที่จะเก็บคาที่ใชในการกําหนดการ
ทํางานของตัวคําสัง SEND ซึ่งจะใชดว ยกัน 5 Words ดังนี้

Word Bits 00 to 07 Bits 08 to 15


C ระบุจํานวน Word ของขอมูลที่จะสงนับจาก S สามารถตั้งคาไดในชวง0000 ถึง
03DE word (0 ถึง 990 )
C+1 ระบุหมายเลขเคลือขายของโหนดปลายทาง Bits 08 ถึง 11: เปนการตั้ง Serial
ที่จะรับขอมูล สามารถตั้งคาไดตั้งแต 00 ถึง PORT number (physical PORT)
7F ใหตั้งคาเปน 0 สําหรับ Controller
(0 to 127) Link สวน Bits 12 ถึง 15 ใหตั้งคา
เปน 0 เสมอ
C+2 กําหนดเปน 00 สําหรับ Controller Link ระบุโหนดปลายทางที่จะทําการรับ
ขอมูล สามารถตั้งคาไดตั้งแต 00
ถึง 3E (1 ถึง 62)
หรือตั้งคาเปน FF หากตองการ
สงไปยังทุกโหนดในเครือขาย
C+3 ระบุจํานวนครัง้ ที่จะใหทําการสงขอมูลซ้ํา Bits 08 ถึง 11: ระบุหมายเลข
สามารถตั้งคาไดตั้งแต 00 to 0F (0 to 15) PORT ภายใน (internal logic
PORT) ตั้งคาไดตั้งแต 0 to 7
Bits 12 ถึง 14: ตั้งคาเปน 0
Bits 15 ระบุวา จะใหรับResponse
จากโหนดปลายทางหรือไม โดย
หากตั้งคาเปน 10ต=องการ หรือ 0
Require
8 = Not Require
ไมตองการ

115
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

C+4 กําหนดชวงเวลาในการรอ Response สามารถตั้งคาไดตั้งแต 0001 ถึง FFFF (0.1


to 6553.5 seconds) หากไมมี Response ภายในระยะเวลาทีก่ ําหนดจะทําการสง
ขอมูลใหมเทากับจํานวนครั้งที่กําหนดใน C+3 Bit 0 ถึง 7

4. แฟล็กที่เกี่ยวของ (Flags)
4.1 แฟล็กความผิดพลาด (Error Flags)

Name Label Operation


จะ ON ถา serial PORT number ที่ระบุใน C+1ไมอยู
ในชวง 00 ถึง 04
จะ ON ถา Communications PORT Enabled Flag
Error Flag ER
OFF อยู สําหรับ Communications PORT number ที่
ระบุใน C+3
จะ OFF ในกรณีอื่น

4.2 แฟล็กชวย (Auxiliary flags)

Name Operation
Address
Communications A20200
Flags จะ ON ตามหมายเลข PORT 00 to 07
PORT Enabled toที่ใชงานที่ไดระบุในตําแหนง C+3 บิต 0-8
Flag A20207
เชนหากระบุใชงาน PORT 0 Flag A20200 ก็
จะ ON และ Flag จะ OFF ขณะที่คําสั่ง
SEND กําลังทํางานอยู
Communications A21900 Flags จะ ON เพื่อบงบอกวา PORT 0 ถึง7 ที่
PORT Error to ไดใชงานทีไ่ ดระบุในตําแหนง C+3 เกิด
Flag A21907 ขอผิดพลาดขึ้นขณะทํางาน
Communications A203 to Word ดังกลาวจะเปนตัวเก็บ Response ของ
PORT Completion A210 แตละ PORT ที่ไดระบุไวใน Word C+3 บิต
Codes
15

116
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

ตัวอยางการใชงานคําสั่ง SEND (Example to use SEND Command)


ภาพรวม (Over view)
จากรูปดานลางตองการสงขอมูลจํานวน990 word จาก CIO 0 ของ Node
1 ไปยัง DM 0 ของ โหนด 3

ขั้นตอน (Procedure)
1, 2, 3...
1. ทําการเขียนตัวโปรแกรมโดยใหระบุองคประกอบ (Operands) ดังตอไปนี้
1) S= 0000 ตองการสงขอมูลจาก CIO 0 ของโหนด 1
2) D=D0000 เอาขอมูลไปเก็บไวที่ D 0 ของโหนด 3
3) C=D0000 เก็บคาที่ใชในการกําหนดการทํางานของตัวคําสัง SEND
ไวที่ DM0 ของโหนด1
4) C=DM0000 = #03DE ตองการสงขอมูล = 990 word นับจาก S (CIO
0 – CIO 989 )
5) C+1=DM0001 = #0000 หมายเลขเคลือขายของโหนดปลายทาง=
เครือขาย 0 เนื่องจากตัวสงและตัวรับอยูในเครือขายเดียวกันซึ่งก็คือ
เครือขาย 0
6) C+2=DM0002 = #0300 โหนดปลายทางที่จะทําการรับขอมูลคือ
โหนด 3
7) C+3=DM0003 = #0005 ตองการ Response, หมายเลข PORT
ภายใน = PORT 0 (internal logic PORT)= 0, จํานวนครั้งที่จะใหทํา
การสงขอมูลซ้ํา = 5 ครั้งหากไมไดรับ Response ภายในระยะเวลาที่
กําหนดไวใน C+4

117
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8) C+4=DM0004 = #0064 กําหนดชวงเวลาในการรอ Response = 10 S


จากนั้นจะได Ladder ดังรูป

9) จากนั้นใหทดลองทําการใสคา”FFFF” เขาไปในพืน้ ที่ CIO 0 และ


“1234” เขาไปในพื้นที่ CIO 989ของโหนด1 แลวสั่งให W0.00
( WriteDataToNode3 ) ON
10) เขาไปในพืน้ ทีห่ นวยความจําของโหนด 3 ในตําแหนง DM0 และ
DM 980 จะสังเกตุเห็นวา จะมีคาเทากับ CIO 0 และ CIO 980 ของ
โหนด 1

118
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-2-2 คําสั่งรับ (RECIVE Instruction)

• NETWORK RECEIVE: RECV (098)


1. จุดประสงค (Purpose)
คําสั่ง RECV จะใชในการรองขอขอมูลจากโหนดตนทาง โดยจะรองขอขอมูล
จํานวน m Word นับจาก S ของโหนดตนทาง มาเก็บไวยงั Word D

2. สัญลักษณทางเลดเดอร (Ladder Symbol)

3. องคประกอบ (Operands)
S: First source word (remote node) ระบุพนื้ ที่ของหนวยความจําพื้นที่
แรกที่ตองการอานจากโหนดตนทางของขอมูลไปเก็บไวยังพื้นที่ D (D: Destination word (local
node))
D: First destination word (local node) ระบุพื้นที่แรกของหนวยความจําที่
ตองการเก็บขอมูลจากโหนดตนทาง(S: Source word (remote node))

119
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

C: First control word ระบุพนื้ ที่แรก ที่จะเก็บคาที่ใชในการกําหนดการ


ทํางานของตัวคําสัง SEND ซึ่งจะใชดว ยกัน 5 words ดังนี้

Word Bits 00 to 07 Bits 08 to 15


C ระบุจํานวน Word ของขอมูลที่จะอานจากโหนดตนทางนับจาก S (note1)
C+1 ระบุหมายเลขเคลือขายของโหนดปลายทาง Bits 08 ถึง 11: เปนการตั้ง Serial
ที่จะรับขอมูล สามารถตั้งคาไดตั้งแต 00 ถึง PORT number (physical PORT)
7F (note3)ใหตั้งคาเปน 0 สําหรับ
(0 to 127) (note2, 4) Controller Link สวน Bits 12 ถึง
15 ใหตั้งคาเปน 0 เสมอ
C+2 กําหนดเปน 00 สําหรับ Controller Link ระบุโหนดปลายทางที่จะทําการรับ
ขอมูล สามารถตั้งคาไดตั้งแต 00
ถึง 3E (1 ถึง 62)
C+3 ระบุจํานวนครัง้ ที่จะใหทําการสงขอมูลซ้ํา Bits 08 ถึง 11: ระบุหมายเลข
สามารถตั้งคาไดตั้งแต 00 to 0F (0 to 15) PORT ภายใน (internal logic
PORT) ตั้งคาไดตั้งแต 0 to 7
Bits 12 ถึง 14: ตั้งคาเปน 0
Bits 15 ระบุวา จะใหรับResponse
จากโหนดปลายทางหรือไม โดย
หากตั้งคาเปน 10ต=องการ หรือ 0
Require
8 = Not Require
ไมตองการ
C+4 กําหนดชวงเวลาในการรอ Response สามารถตั้งคาไดตั้งแต 0001 ถึง FFFF (0.1
to 6553.5 seconds) หากไมมี Response ภายในระยะเวลาทีก่ ําหนดจะทําการสง
ขอมูลใหมเทากับจํานวนครั้งที่กําหนดใน C+3 Bit 0 ถึง 7

120
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

4. แฟล็กที่เกี่ยวของ (Flags)
4.1 แฟล็กความผิดพลาด (Error Flags)

Name Label Operation


จะ ON ถา serial PORT number ที่ระบุใน
Error Flag ER
C+1ไมอยูใ นชวง 00 ถึง 04
จะ ON ถา Communications PORT Enabled
Flag OFF อยู สําหรับ communications PORT
number ที่ระบุใน C+3
จะ OFF ในกรณีอื่น

4.2 แฟล็กชวย (Auxiliary flags)

Name Address Operation


Communications A20200 Flags จะ ON ตามหมายเลข PORT 00 to 07
PORT Enabled to ที่ใชงานที่ไดระบุในตําแหนง C+3 บิต 0-8
Flag A20207 เชนหากระบุใชงาน PORT 0 Flag A20200 ก็
จะ ON และ Flag จะ OFF ขณะที่คําสั่ง SEND
กําลังทํางานอยู
Communications A21900 Flags จะ ON เพื่อบงบอกวา PORT 0 ถึง7 ที่
PORT Error Flag to ไดใชงานทีไ่ ดระบุในตําแหนง C+3 เกิด
A21907 ขอผิดพลาดขึ้นขณะทํางาน
Communications A203 to Word ดังกลาวจะเปนตัวเก็บ Response ของ
PORT A210 แตละ PORT ที่ไดระบุไวใน Word C+3 บิต
Completion 15
Codes

121
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

ตัวอยางการใชงานคําสั่ง RECV (Example to use RECV Command)


ภาพรวม (Over view)
จากรูปดานลางตองการรับขอมูลจํานวน 990 word จาก DM 0 ของ Node 3
ไปยัง DM 0100 ของ โหนด 2

ขั้นตอน (Procedure)
1, 2, 3...
1. ทําการเขียนตัวโปรแกรมโดยใหระบุองคประกอบ (Operands) ดังตอไปนี้
a. S= D0000 ระบุพื้นที่ของหนวยความจําพืน้ ที่แรกที่ตองการอานจาก
โหนด 3 = DM0
b. D=D0100 ระบุพื้นทีแ่ รกของหนวยความจําของโหนด 2 ที่ตองการ
เก็บขอมูลจากโหนด 3 = DM0100
c. C=D0000 เก็บคาที่ใชในการกําหนดการทํางานของตัวคําสัง SEND
ไวที่ DM0 ของโหนด2
d. C=DM0000 = #03DE ตองการสงขอมูล = 990 word นับจาก S (DM
0 – DM 989 )
e. C+1=DM0001 = #0000 หมายเลขเครือขายของโหนดปลายทาง=
เครือขาย 0 เนื่องจากตัวสงและตัวรับอยูในเครือขายเดียวกันซึ่งก็คือ
เครือขาย 0
f. C+2=DM0002 = #0300 ตองการรับขอมูลจากโหนด 3
g. C+3=DM0003 = #0005 ตองการ Response, หมายเลข PORT ภายใน
= PORT 0 (internal logic PORT), จํานวนครั้งที่จะใหทําการสงขอมูล
ซ้ํา = 5 ครั้งหากไมไดรับ Response ภายในระยะเวลาที่กําหนดไวใน
C+4

122
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

h. C+4=DM0004 = #0064 กําหนดชวงเวลาในการรอ Response = 10 S


จากนั้นจะได Ladder ดังรูป

2. จากนั้นใหทดลองทําการใสคา”FFFF” เขาไปในพืน้ ที่ DM 0 และ “1234”


เขาไปในพืน้ ที่ DM 989ของโหนด 3 แลวสัง่ ให W0.00
( ReadDataFromNode3 ) ON
3. เขาไปในพืน้ ทีห่ นวยความจําของโหนด 2 ในตําแหนง DM100 และ DM
1089 จะสังเกตุเห็นวา จะมีคาเทากับ DM 0 และ DM 980 ของโหนด 3

123
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-2-3 คําสั่งนําสง (CMND Instruction)

• DELIVER COMMAND: CMND (490)


คําสั่ง CMND สามารถที่จะอานเขียนหนวยความจําจากโหนดอืน่ รวมถึง
สามารถที่จะอานสถานะของเครือขาย รวมถึงเปลี่ยนโหมดการทํางานของ
เครือขายไดเชนกัน โดยใชคาํ สั่ง FINS
1. จุดประสงค (Purpose)
คําสั่ง CMND จะสงคําสั่ง “n” byte นับจาก “S” ไปยังโหนดปลายทาง
จากนั้นโหนดปลายทางจะสง Response กลับมา “m” byteแลวจัดเก็บใน “D”

2. สัญลักษณทางเลดเดอร (Ladder Symbol)

124
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

3. องคประกอบ (Operands)
S: First source word ระบุพื้นที่ของหนวยความจําพืน้ ที่แรกที่ไดจดั เก็บ
คําสั่ง FINS ที่จะสงไปยังโหนด ปลายทาง
D: First destination word ระบุพื้นที่แรกหนวยความจําทีจ่ ะใชเปนตัวเก็บ
Response ของโหนดปลายทางที่จะสง Response กลับมา
C: First control word ระบุพนื้ ที่แรก ที่จะเก็บคาที่ใชในการกําหนดการ
ทํางานของตัวคําสัง CMND ซึ่งจะใชดว ยกัน 6 words ดังนี้
Word Bits 00 to 07 Bits 08 to 15
C ระบุจํานวน Byte ของคําสั่ง FINS ที่จะสงนับจาก S ตั้งคาไดในชวง 0000 ถึง 07C6 (0 ถึง
1990 word)
Byte

C+1 ระบุจํานวน Byte ที่จะรับ Response กลับมานับจาก D ตั้งคาไดในชวง 0000 ถึง 07C6 (0
ถึง 1990 word)
Byte

C+2 ระบุหมายเลขเครือขายของ ตั้งคาเปน 00


โหนดปลายทางที่จะรับขอมูล
สามารถตั้งคาไดตั้งแต 00 ถึง 7F
(0 to 127)
C+3 ระบุหมายเลข Unit กําหนดเปน ระบุโหนดปลายทางที่จะทําการรับขอมูล สามารถตั้ง
FE ถาผลของคําสั่งกระทํากับ คาไดตั้งแต 00 ถึง 3E (1 ถึง 62)
ตัว Controller Link หรือตั้งคาเปน FF หากตองการสงไปยังทุกโหนดใน
00 ถาผลของคําสั่งกระทํากับตัว เครือขาย
CPU
C+4 ระบุจํานวนครัง้ ที่จะใหทําการ Bits 08 ถึง 11: ระบุหมายเลข PORT ภายใน (internal
สงขอมูลซ้ํา สามารถตั้งคาได logic PORT) ตั้งคาไดตั้งแต 0 to 7
ตั้งแต 00 to 0F (0 to 15) Bits 12 ถึง 14: ตั้งคาเปน 0
Bits 15 ระบุวา จะใหรับResponse จากโหนดปลายทาง
หรือไม0 โดยหากตั ้งคาเปนrequired
= Response 1 ตองการ หรือ 0 ไม
8 = Not Required
ตองการ
C+5 กําหนดชวงเวลาในการรอ Response สามารถตั้งคาไดตั้งแต 0001 ถึง FFFF (0.1 to 6553.5
seconds) หากไมมี Response ภายในระยะเวลาที่กําหนดจะทําการสงขอมูลใหมเทากับ
จํานวนครั้งที่กาํ หนดใน C+3 Bit 0 ถึง 7

125
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

4. แฟล็กที่เกี่ยวของ (Flags)
4.1 แฟล็กความผิดพลาด (Error Flags)

Name Label Operation


จะ ON ถาSerial PORT number ที่ระบุใน C+2 ไมไดอยูใ นชวง 00
ถึง 04
จะ ON ถา Communications PORT Enabled Flag อยูในสถานะ OFF
Error Flag ER สําหรับ communications PORT number ที่ระบุใน C+4.
จะ ON ถาคําสั่ง FINS ถูกสงไปยัง CPU unit ขณะ File Memory
Operation Flag (A34313)อยูในสถานะ ON
จะ OFF ในกรณีอื่น

4.2 แฟล็กชวย (Auxiliary flags)

Name Address Operation


Flags จะ ON ตามหมายเลข PORT 00 to 07 ที่ใชงานที่ไดระบุ
Communications A20200
ในตําแหนง C+3 บิต 0-8 เชนหากระบุใชงาน PORT 0 Flag
PORT Enabled to
A20200 ก็จะ ON และ Flag จะ OFF ขณะที่คําสั่ง SEND
Flag A20207
กําลังทํางานอยู
A21900
Communications Flags จะ ON เพื่อบงบอกวา PORT 0 ถึง7 ที่ไดใชงานทีไ่ ด
to
PORT Error Flag ระบุในตําแหนง C+3 เกิดขอผิดพลาดขึ้นขณะทํางาน
A21907
Communications
A203 Word ดังกลาวจะเปนตัวเก็บ Response ของแตละ PORT ที่ได
PORT Completion
to A210 ระบุไวใน Word C+3 บิต 15
Codes
จะ ON ถาคําสั่ง FINS ถูกสงไปยัง CPU unit ขณะ File
File Memory
A34313 Memory Operation Flagอยูในสถานะ ON
Operation Flags
หรือคําสั่ง FREAD(700) หรือ FWRIT(701)กําลังทํางานอยู

126
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

• หมายเหตุ พืน้ ที่ “C”, “S” และ “D “สามารถระบุโดยใชพื้นที่หนวยความจํา


ภายในตัว PLC ดังตาราง

127
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-3 คําสั่ง FINS และการตอบกลับ (FINS Command and Responses)

การสื่อสารแบบ FINS (FINS Communication Service) เปนโปรโตคอลที่สรางขึ้นโดย


บริษัท ออมรอนสําหรับควบคุมอุปกรณทางดานโรงงานอุตสาหกรรมอัตโนมัติ (FA Control
Devices) สามารถที่จะใชอา น, เขียนคาหนวยความจําภายในของตัว PLC ได หรือ ควบคุมการ
ทํางานไดหลากหลาย

8-3-1 การสื่อสารแบบ FINS (FINS Communication Service)

• การสงและรับคําสั่ง FINS และการตอบกลับ (Sending and Receiving FINS


Commands and Response)
คําสั่ง FINS สามารถที่จะสงไดโดยการใช คําสั่ง CMND โดยระบุขอมูลเปน
ตัวเลขฐาน16 (ยกเวนที่ระบุ) ซึ่งรูปแบบการสงคําสั่ง FINS และ การตอบกลับ
จะเปนไปดังรูป

128
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-3-2 รหัสคําสั่ง (Command Code)

รหัสคําสั่งจะบรรจุดวยขอมูลจํานวน 2 Byte ซึ่งขอมูล 2 Byte ดังกลาวจะเปนคําสั่ง


ที่บงบอกวาจะทําอะไรกับอุปกรณปลายทางซึ่งการใชคําสั่งFINS นั้นจะตองวาง Command Code
ไวหนาเสมอจากนั้นจึงตามมาดวยParameter อื่นๆ

8-3-3 รหัสตอบกลับ (Response Code)

รหัสตอบกลับจะบรรจุดว ยขอมูลจํานวน 2 Byteเชนกันและระบุผลที่ไดจากการ


ประมวณผลลัพยของ Command Code ซึ่งขอมูล Byte แรกจะเปน MRES (Main response code)
สวน Byte ที่2จะเปน SRES (Sup response code)

ตัวอยางการใชงานคําสั่ง CMND (Example to use RECV Command)


ภาพรวม (Over view)
จากรูปดานลางตองการสงคําสั่ง FINS จากโหนด 3 เพื่อเปลี่ยนโหมดการทํางาน
ของ PLC โหนด 2

โดยมีรูปแบบของคําสั่ง FINS ดังนี้


คําสั่ง STOP ใชปลี่ยนโหมดการทํางานของตัว CPU โดยจะมี Command Code= 2
Byte คือ 0402 ดังรูป

129
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

และ จะมี Response= 4 Byte ดังรูป

ขั้นตอน (Procedure)
1, 2, 3...
1. ทําการเขียนตัวโปรแกรมโดยใหระบุองคประกอบ (Operands) ดังตอไปนี้
• S= D0000 ระบุพื้นที่ของหนวยความจําพืน้ ที่แรกที่ไดจดั เก็บคําสั่ง FINS ที่
จะสงไปยังโหนด 2
• D= D2000 ระบุพื้นที่หนวยความจําที่จะใชเปนตัวเก็บ Response ของโหนด
2 ที่จะสง Response กลับมา
• C= D4000 ระบุพื้นที่แรก ทีจ่ ะเก็บคาทีใ่ ชในการกําหนดการทํางานของตัว
คําสัง CMND
• C=D4000 = #0002ระบุจํานวน Byte ของคําสั่ง FINS ที่จะทําสง = 2 Byte
• C=D4001 = #0004ระบุจํานวน Byte ของ Response ที่จะรับเขามา = 4 Byte
• C+2=D4002 =# 0000 ระบุหมายเลขเครือขาย =0
• C+3=D4003 = #0200 ระบุหมายเลขโหนด=2 เเละ หมายเลข Unit =00
เนื่องจากตองการเปลี่ยนโหมดการทํางานของตัว CPU
• C+4=D4004 = #0005 ตองการ Response, หมายเลข PORT ภายใน =
PORT 0 (internal logic PORT), จํานวนครั้งที่จะใหทําการสงขอมูลซ้ํา = 5
ครั้งหากไมไดรับ Response ภายในระยะเวลาที่กําหนดไวใน C+5
• C+5=D4005 = #0064 กําหนดชวงเวลาในการรอ Response = 10 S
• ใสคา Command Code 0402 เขาไปที่ DM 0

130
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

• จะได Ladder ดังรูป

2. สั่งใหคําสั่ง CMND ทํางานโดยใหบิต W0.00 ทํางาน


3. จะสังเกตุเห็นวาโหมดการทํางานของ CPU Node2 จะกลายเปน STOP โหมด

131
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

8-4 ภาคผนวก (Appendix)

8-4-1 คําสั่งและรหัสตอบกลับสําหรับตัว CLK (Commands and Responses for


Controller Link Units)

132
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

133
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

134
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

135
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

136
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

137
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

138
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

139
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

140
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

141
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

142
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

143
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

144
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

145
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

146
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

147
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

148
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

149
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

150
PNSPO!!
!
CHAPTER 8 Message Service ( CLK )

151

You might also like