You are on page 1of 16

Giao tiếp Modbus TCP giữa module Ethernet

QJ71E71 với thiết bị đầu cân DAD141.


1/ Cấu hình hệ thống phần cứng.

Ta ấn định địa chỉ:

Module E71 : 192.168.0.1

Đầu cân 1 : 192.168.0.100

Đầu cân 2 : 192.168.0.101

1
( chú ý 3 số đầu của các thiết bị giống nhau 191.168.0 còn số cuối phải khác
nhau để phân biệt)

2/ Cấu hình hệ thống phần mềm

Lưu ý: Khi module E7 có vị trí là 000 thì buffer có địa chỉ là U0

3/ Cấu hình module E71.

Tại cửa số bên trái [Navigation]-> [Project]-> [Parameter]->[Network


Parameter]->[Ethernet/CCIE/MELSECNET].

Cửa sổ hiện ra như sau:

2
Tại Network Type: ta chọn Ethernet

Start I/O No.: ta điền địa chỉ của module E71 như cấu hình hệ thống phần
cứng cũng như phần mềm( ở đây là 0000->U0),

Nếu module E71 được đặt vị trí khác chẳng hạn như sau thì U03

Network No.: 1

Group No.: 1

Station No: 1

3
a/ Operation Setting.

Tại bước này ta khai báo địa chỉ của module ethernet E71 là 192.168.0.1

b/ Open Setting.

Với giá trị k1 tại lệnh OPEN trên cho phép giao tiếp với đầu cân số 1

4
Khi đã OPEN đầu cân 1thì ta tiếp tục thực hiện lệnh GP.ECPRTCL để thực
hiện trao đổi dữ liệu giữa E71 với đầu cân 1 vì thế k1 ở lệnh OPEN và lệnh
GP.ECPRTCL phải giống nhau.

Chú ý: Có tối đa 16 địa chỉ (k1-k16) nhưng khi Pair Open là Enable thì có
tối đa 8 địa chỉ (k1-k3-k5-k7-k9-k11-k13-k15).

Nhấn End để kết thúc quá trình cài đặt.

c/ Tạo giao thức và khai báo địa chỉ.

Tại giao diện GX-Work, vào thanh công cụ [Tool]->[Predefined Protocol Support
Function]->[Ethernet Module…].

5
Cửa sổ Protocol Setting hiện ra, File->New để tạo trang mới

Để tạo giao thức mới ta làm như sau:

6
Làm xong các bước trên ta có giao thức 1 như sau :

7
[Packet Setting] : Khai báo địa chỉ thanh ghi cho từng vùng như sau

Send Packet

Name Địa chỉ Ghi chú


Transaction ID D0 Hiện tại hai địa chỉ này
Module ID D1 không cần nhập giá trị vào
Head holding register D2 Địa chỉ cần đọc giá trị của
number đầu cân.
VD: 2034H: serial đầu cân,
ta nhập vào D2 là H2034
Read points D3 Số thanh ghi cần đọc giá trị
(vd: nhập vào D3 là 2)

8
Receive Packet(Normal response)

Name Địa chỉ Ghi chú


Transaction ID D10 Hiện tại hai địa chỉ này
Module ID D11 không cần nhập giá trị vào
Device data D12 Độ dài thanh ghi
D13-137 Địa chỉ dữ liệu trả về khi
thực thi lệnh.

9
Receive Packet( Error response)

Name Địa chỉ Ghi chú


Transaction ID D300 Hiện tại hai địa chỉ này
Module ID D301 không cần nhập giá trị vào
Exception Code D302 Địa chỉ trả về mã lỗi

Tương tự ta ADD giao thức 2

10
Send Packet

Name Địa chỉ Ghi chú


Transaction ID D4 Hiện tại hai địa chỉ này
Module ID D5 không cần nhập giá trị vào
Head holding register D6 Địa chỉ cần đọc giá trị của
number đầu cân.
VD: 2034H: serial đầu cân,
ta nhập vào D6 là H2034
Read points D7 Số thanh ghi cần đọc giá trị
(vd: nhập vào D7 là 2)

11
Receive Packet(Normal response)

Name Địa chỉ Ghi chú


Transaction ID D138 Hiện tại hai địa chỉ này
Module ID D139 không cần nhập giá trị vào
Device data D140 Độ dài thanh ghi
D141-D265 Địa chỉ dữ liệu trả về khi
thực thi lệnh.

12
Receive Packet(Error response)

Name Địa chỉ Ghi chú


Transaction ID D303 Hiện tại hai địa chỉ này
Module ID D304 không cần nhập giá trị vào
Exception Code D305 Địa chỉ trả về mã lỗi

13
Sau khi Add 2 giao thức ta có được như sau

Lưu ý: Khi muốn thực hiện giao thức 1 thì ta MOV k1 vào địa chỉ D602 theo địa chỉ
hàm GP.ECPRTCL đã khai báo sau đó là D600.

4/ Chương trình mẫu.

Khi quá trình đọc giá trị đầu cân liên tục mà xảy ra sự cố mất kết nối cáp thì module
E71 báo lỗi, quá trình kết nối hồi phục dữ liệu sẽ không đọc được, cần reset lại
module E71 hoặc sử dụng lệnh ZP.CLOSE, ZP.ERRCLR để xóa lỗi.

14
15
16

You might also like