4.2. Các chức năng của MODBUS
Tất cả các chức năng của hỗ trợ bởi giao thức MODBUS được nhận dạng bởi các chỉ số. Chúng được thiết kế như các lệnh điều khiển cho các thiết bị đo lường và điều khiển, chúng bao gồm các nhóm chức năng sau:
- Nhóm lệnh điều khiển cuộn dây dùng cho việc đọc và đặt cho cuộn dây đơn hoặc nhóm các cuộn dây.
- Nhóm lệnh điều khiển nhập cho việc đọc trạng thái nhập của một nhóm các ngõ vào.
- Nhóm lệnh điều khiển đăng ký cho việc đọc và đặt một hoặc nhiều hơn thanh ghi dữ liệu.
- Nhóm chức năng kiểm tra chuẩn đốn báo cáo.
- Chức năng Reset.
Bảng 4.1: Danh sách các chức năng chính MODBUS hơ trợ
Mã chức
năng Tên chức năng Chi tiết
Số thiết bị trên mỗi gói tin 01H Đọc cuộn dây Đọc thiết bị nhị phân (R/W) 1 đến 2000 thiết bị 02H Đọc ngõ vào Đọc thiết bị nhị phân (RO) 1 đến 2000 thiết bị 03H Đọc thanh ghi Đọc thanh ghi 16 bit (R/W) 1 đến 125 thiết bị 04H
Đọc thanh ghi
ngõ vào Đọc thanh ghi 16 bit (RO) 1 đến 125 thiết bị
05H
Viết vào cuộn
dây đơn Viết vào một thiết bị nhị phân 1 thiết bị 06H
Viết vào thanh ghi đơn
Viết vào thiết bị thanh ghi đơn
16 bit 1 thiết bị
0FH
Viết vào nhiều cuộn dây
Viết vào nhiều thiết bị nhị phân
(R/W) 1 đến 1968 thiết bị
10F
Viết vào nhiều thanh ghi
Viết vào nhiều thanh ghi 16 bit
(R/W) 1 đến 123 thiết bị
4.3.Đặc điểm chung của truyền thông nối tiếp MODBUS4.3.1. Cấu trúc mạng MODBUS RTU 4.3.1. Cấu trúc mạng MODBUS RTU
Chức năng truyền thông nối tiếp MODBUS trên FX5 có thể điều khiển 32 slave với truyền thông RS-485 và 1 slave với truyền thông RS-232C bằng 1 Master.
- Chức năng Master và Slave được hỗ trợ và có thể được mơ phỏng bởi 1 FX5.
- Có thể tăng thêm 4 kênh cho truyền thơng nối tiếp MODBUS bằng 1 mô- đun CPU.
- Master sử dụng một PLC để ra lệnh cho MODBUS và điều khiển Slave.
4.3.2. Quản lý đường truyền Master/Slave
Master MODBUS là các thiết bị có khả năng đọc được dữ liệu từ các thiết bị
Slave . Các Master chính là PLC , PC , DCS ...Khi cần một một thông tin Master gửi một thơng điệp xuống tất cả các slave nhưng chỉ có một slave nhận được thơng tin.
Slave MODBUS là các thiết bị đo lường hoặc các thiết bị điều chấp hành như :
cảm biến nhiệt độ , cảm biến áp suất , van điều khiển , thiết bị đo công suất điện năng .Khi được Master gọi thì các Slave truyền thơng tin tới Master.
4.3.3. Trao đổi dữ liệu trong mạng MODBUS RTU
Trong phương pháp chủ/tớ, một trạm chủ (master) có trách nhiệm chủ động phân chia quyền truy nhập bus cho các trạm tớ (slave). Các trạm tớ đóng vai trị bị động, chỉ có quyền truy nhập bus và gửi tín hiệu đi khi có yêu cầu. Trạm chủ có thể dùng phương pháp hỏi tuần tự (polling) theo chu kỳ để kiểm sốt tồn bộ hoạt động giao tiếp của cả hệ thống. Nhờ vậy, các trạm tớ có thể gửi các dữ liệu thu thập từ quá trình kỹ thuật tới trạm chủ (có thể là một PLC, một PC, v.v...) cũng như nhận các thông tin điều khiển từ trạm chủ.
Trong một số hệ thống, thậm chí các trạm tớ khơng có quyền giao tiếp trực tiếp với nhau, mà bất cứ dữ liệu cần trao đổi nào cũng phải qua trạm chủ. Nếu hoạt động giao tiếp diễn ra theo chu kỳ, trạm chủ sẽ có trách nhiệm chủ động yêu cầu dữ liệu từ trạm tớ cần gửi và sau đó sẽ chuyển tới trạm tớ cần nhận. Trong trường hợp một trạm tớ cần trao đổi dữ liệu bất thường với một trạm khác phải thơng báo u cầu của mình khi được trạm chủ hỏi đến và sau đó chờ được phục vụ.
Trình tự được tham gia giao tiếp, hay trình tự được hỏi của các trạm tớ có thể do người sử dụng qui định trước (tiền định) bằng các cơng cụ tạo lập cấu hình. Trong trường hợp chỉ có một trạm chủ duy nhất, thời gian cần cho trạm chủ hoàn thành việc hỏi tuần tự một vịng cũng chính là thời gian tối thiểu của chu kỳ bus. Do vậy, chu kỳ bus có thể tính tốn trước được một cách tương đối chắc chắn. Đây chính là một trong những yếu tố thể hiện tính năng thời gian thực của hệ thống.
Phương pháp chủ/tớ có một ưu điểm là việc kết nối mạng các trạm tớ đơn giản, đỡ tốn kém bởi gần như tồn bộ “trí tuệ” tập trung tại trạm chủ. Một trạm chủ thường lại là một thiết bị điều khiển, vì vậy việc tích hợp thêm chức năng xử lý truyền thơng là điều khơng khó khăn.
thơng tin giữa các trạm tớ bị giảm do phải dữ liệu phải đi qua khâu trung gian là trạm chủ, dẫn đến giảm hiệu suất sử dụng đường truyền. Nếu hai trạm tớ cần trao đổi một biến dữ liệu đơn giản với nhau (một PLC có thể là trạm tớ), thì trong trường hợp xấu nhất thời gian đáp ứng vẫn có thể kéo dài tới hơn một chu kỳ bus. Một biện pháp để cải thiện tình huống này là cho phép các trạm tớ trao đổi dữ liệu trực tiếp trong một chừng mực được kiểm sốt
Hình 4.4: Sơ đồ trao đổi dữ liệu giữa 2 trạm tớ
4.4. Giao thức mạng MODBUS RTU
4.4.1. Cấu trúc giao thức MODBUS
Cấu trúc giao thức MODBUS trình bày cấu trúc gói tin(lấy ví dụ hàm dược được sử dụng trong PLC); Trình bày gói tin trả lời của Slave.
Dưới đây thể hiện cấu trúc kỹ thuật của giao thức MODBUS
Vùng địa chỉ Lệnh chức năng Dữ liệu Kiểm tra lỗi
<------------------------------------>
Mặt cắt dữ liệu giao thức
Bảng 4.2 Đặc điểm từng vùng của giao thức MODBUS
Tên Mô tả
Vùng địa chỉ [Khi Chủ gửi một tin nhắn yêu cầu tới một Tớ]
0: Gửi một tin nhắn yêu cầu tới tất cả các Tớ. [truyền rộng] 1 tới 247: Gửi một tin nhắn yêu cầu tới một con số Tớ cụ thể. Chú ý: 247 là số địa chỉ MODBUS tối đa. Khi sử dụng FX5 như là chủ, trạm 1 tới 32 có thể được cấp địa chỉ.
[Khi Tớ gửi một tin nhắn hồi đáp tới Chủ]
Số trạm chủ đã lưu trữ khi gửi một tin nhắn hồi đáp.
Lệnh chức năng [Khi Chủ gửi một tin nhắn yêu cầu tới một Tớ] Chủ chỉ rõ lệnh chức năng tới Tớ.
[Khi Tớ gửi một tin nhắn hồi đáp tới Chủ]
Lệnh chức năng hồi tiếp được lưu trữ trong trường hợp của trạng thái hồn thành bình thường. Các bit quan trọng nhất ON trong trường hợp kết thúc bất thường.
Dữ liệu [Khi Chủ gửi một tin nhắn yêu cầu tới một Tớ]
Thông tin cần để chấp hành hành động cụ thể bởi một lệnh chức năng đã lưu trữ.
[Khi Tớ gửi một tin nhắn hồi đáp tới Chủ]
Kết quả chấp hành hành động cụ thể bởi một lệnh chức năng đã lưu trữ. Một lệnh chấp hành được lưu trữ khi bị lỗi.
Kiểm tra lỗi Các nút (Chủ hoặc Tớ) thêm tự động kiểm tra lỗi vào tất cả các tin đã truyền và tính lại lệnh kiểm tra cho bất kì tin nào đã được chấp nhận. Tin đúng sẽ bị bỏ nếu nó có một lỗi.
4.4.2. Cấu trúc Gói tin (Frame) Gửi - Request; gói tin nhận - Response
• Header (có độ dài 20 bytes)
• Dữ liệu
Header
4.5. Mạng truyền thông MODBUS RTU của PLC FX5U:
Giao thức MODBUS RTU là một giao thức mở, sử dụng đường truyền vật lý RS- 232 hoặc RS-485 và mơ hình dạng Master-Slave. Đây là một giao thức được sử dụng rộng rãi trong nhiều lĩnh vực như BMS (Building Management Systems), tự động hóa, cơng nghiệp, điện lực,... Lý do mà giao thức MODBUS RTU được sử dụng rộng rãi ở nhiều nơi đó là ổn định, đơn giản, dễ dùng.
MODBUS được coi là giao thức truyền thông ở tầng “Application”, cung cấp khả năng truyền thông Master-Slave giữa các thiết bị được kết nối thông qua các bus hoặc network. Trên mơ hình OSI, MODBUS được đặt ở lớp 7. MODBUS được xác định là một giao thức hoạt động theo hỏi/đáp và sử dụng các “function code” tương ứng để hỏi đáp.
4.5.1. Kiểu cấu trúc RTU(Remote Terminal Unit - Đơn vị đầu cuối từ xa)
Các thông số kỹ thuật tuân thủ theo thông số truyền thông MODBUS.
Bảng 4.3: Đặc điểm thông số tuân theo kiểu RTU
Bắt đầu Vùng địa chỉ Lệnh chứcnăng Dữ liệu Kiểm tra lỗi Kết thúc (Bắt đầu) Vùng địachỉ 3.5 đặc tính thời gian hoặc nhiều
hơn 1 byte 1 byte
0 tới 252 byte 2 byte 3.5 đặc tính thời gian hoặc nhiều hơn 1 byte H:—*1 t
Khoảng tính tốn kiểm tra
Kiểm tra lỗi trong chế độ RTU được điều khiển bởi CRC (Kiểm tra thừa tuần hoàn). Vùng CRC chiếm 2 byte, chứa một giá trị nhị phân 16 bit. Giá trị CRC được tính tốn bằng bộ chuyển đổi, gắn CRC tới tín hiệu truyền. Thiết bị thu nhận tính tốn lại một CRC suốt q trình nhận được tín hiệu truyền, và đối chiếu giá trị tính tốn với giá trị thực tế nó nhận trong vùng CRC. Nếu hai giá trị này khơng bằng nhau, một lỗi được tìm thấy.
4.5.2. Các hàm MODBUS PLC hỗ trợ
Bảng 4.4: Danh sách các chức năng chính MODBUS hỗ trợ
Mã chức
năng Tên chức năng Chi tiết
Số thiết bị trên mỗi gói tin 01H Đọc cuộn dây Đọc thiết bị nhị phân (R/W) 1 đến 2000 thiết bị 02H Đọc ngõ vào Đọc thiết bị nhị phân (RO) 1 đến 2000 thiết bị 03H Đọc thanh ghi Đọc thanh ghi 16 bit (R/W) 1 đến 125 thiết bị 04H
Đọc thanh ghi ngõ
vào Đọc thanh ghi 16 bit (RO) 1 đến 125 thiết bị 05H
Viết vào cuộn dây
đơn Viết vào một thiết bị nhị phân 1 thiết bị 06H Viết vào thanh ghi Viết vào thiết bị thanh ghi đơn 1 thiết bị
4.5.3. Tập lệnh MODBUS :
Trong function master của FX5, truyền thông hoạt động với trạm Slave sử dụng lệnh ADPRW.
Lệnh này cho phép truyền thông(đọc/ghi dữ liệu) với trạm Slave bởi function code được hỗ trợ bởi Master.
Cài đặt dữ liệu
(s5)/(d1) Bit/Bit nhị phân 16-bit ANY_ELEMENTARY (d2) Bit ANYBIT_ARRAY Bảng 4.6: Thiết bị cho phép Operan
d Bít Word Doubleword Indirect specificatio n Constant other s X, Y, M, L, SM. F, B, SB IOGD T, ST, c, T, ST, c, D, w, SD. sw, R UQtG D z LC LZ K, H E $ (s1) — — — o'1 o o — — o 0 — — — (S2) — — — o‘1 o o — — o 0 — — — (S3) — — — o'1 o o — — Õ 0 — — — (S4) — — — o'1 o o — — o 0 — — (S5)t(d1) o — — O‘1 o Q — — 0 0 — — — (d2) o — — o’1 — — — — — — — — — *1 T, ST, c cannot be used.
Bảng 4.7: Function code và Function Parameter
(s2): Mã chức năng (s3): Địa chỉ MODBUS (s4): Số thiết bị
(s5)/(d1): Dữ liệu khởi tạo thiết bị Thiết bị khả dụng 01H Đọc cuộn dây Địa chỉ MODBUS: 0000H đến FFFFH Số thiết bị: 1 đến 2000
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng Thiết bị word Số thiết bị sử dụng Thiết bị word 02H Đọc ngõ ra Địa chỉ MODBUS: 0000H đến FFFFH Số thiết bị: 1 đến 2000
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng Thiết bị word Số thiết bị sử dụng Thiết bị word
03H Đọc thanh ghi Địa chỉ MODBUS: 0000H đến FFFFH Số thiết bị: 1 đến 125
Dữ liệu đọc lưu trữ thiết bị khởi tạo
Thiết bị khả dụng Số thiết bị sử dụng (s4) 04H Đọc thanh ghi ngõ vào Địa chỉ MODBUS: 0000H đến FFFFH Số thiết bị: 1 đến 125
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng
Số thiết bị sử dụng (s4)
05H Ghi cuộn dây Địa chỉ MODBUS: 0000H đến FFFFH 0
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng Thiết bị word Số thiết bị sử dụng 1 điểm 06 Ghi vào thanh ghi Địa chỉ MODBUS: 0000H đến FFFFH 0
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng Thiết bị word Số thiết bị sử dụng 1 điểm 0FH Ghi vào nhiều cuộn dây Địa chỉ MODBUS: 0000H đến FFFFH Số thiết bị: 1 đến 1968
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng Thiết bị word Số thiết bị sử dụng Thiết bị word 10H Ghi vào nhiều thanh ghi Địa chỉ MODBUS: 0000H đến FFFFH Số thiết bị: 1 đến 123
Dữ liệu đọc lưu trữ thiết bị khởi tạo Thiết bị khả dụng
Số thiết bị sử dụng (s4)
4.6. Lập trình MODBUS Master trên PLC FX5U:
4.6.1. Chức năng của mạng MODBUS RTU trong hệ thống
- Thiết bị Master: PLC Mitsubishi FX5U.
- Thiết bị Slave: Remote I/O.
- Hai thiết bị Master và Slave giao tiếp với nhau qua bằng mạng MODBUS thông qua cổng RS-485, với tốc độ 9600 bps, 8 bit dữ liệu, giao thức truyền thơng là RTU. Gói tin được gửi và nhận bằng mã nhị phân.
Hình 4.5: Lưu đồ Master —Slave Slave
Hình 4.6: Chương trình MODBUS của hệ thống
Chương trình ghi vào nhiều cuộn dây:
- Địa chỉ Slave: 01H
- Lệnh: 0FH (Write multiple coils)
- Địa chỉ MODBUS: 0
- Tổng số thiết bị: 8
- Thiết bị khởi tạo lưu trữ dữ liệu đọc: D101
- Giá trị của thành ghi D101 của Master được ghi vào địa chỉ MODBUS là 0 và 7 thiết bị tiếp sau đó của Slave có địa chỉ là 01.
Chương trình đọc từ ngõ vào:
- Địa chỉ Slave: 01H
- Lệnh: 01H (Read Coils/ đọc cuộn dây)
- Địa chỉ MODBUS: 0
- Tổng số thiết bị: 8
- Thiết bị khởi tạo lưu trữ dữ liệu đọc: D0
- Giá trị của 8 thiết bị cuộn dây bắt đầu từ địa chỉ MODBUS là 0 của Slave có địa chỉ 01 đọc vào 8 bit đầu của thanh ghi D111 của Master.
4.6.4. Lưu ý khi tạo chương trình:
• Chắc chắn kết nối điều khiển của lệnh ADPRW không tắt cho đến khi lệnh
hồn thành.
• Khi điều khiển nhiều lệnh ADPRW trong cùng một thời điểm, lệnh ADPRW tiếp theo trong chương trình phải thi hành sau khi lệnh hiện tại hoàn thành xong (Chỉ có một lệnh được thực thi tại một thời điểm).
bị “word”( D hoặc R) giống như thiết bị đích, chỉ số của bit được ấn định trong thiết bị đếm của lệnh ADPRW sẽ được viết đè lên. Vẫn còn lại bit của thiết bị từ không bị tác động.
5.1. Hệ thống điều khiển giám sát SCADA
5.1.1. SCADA là gì?
5.1.1.1. Định nghĩa
SCADA là cơng nghệ mà nó cho phép người sử dụng thu thập dữ liệu từ một hoặc
nhiều hơn hai hệ thống từ xa và/hoặc gửi giới hạn lệnh điều khiển đến các hệ thống này. “SCADA is the technology that enables a user to collect data from one or more distant facilities and/or send limited control instructions to those facilities.” (SCADA: Supervisory Control and Data Acquisition. Tác giả Stuart A. Boyer, ISA The Instrumentation, Systems, and Automation Society; 3rd edition.)
5.1.1.2. Tính năng của hệ thống SCADA
Người vận hành có thể nhận biết và điều khiển hoạt động các thiết bị thông qua máy tính và mạng truyền thơng. Nói cách khác, SCADA thường được dùng để chỉ tất cả các hệ thống máy tính được thiết kế để thực hiện các chức năng sau:
- Kiểm soát truy cập: Người dùng được chỉ định vào các nhóm, mỗi nhóm đều được định nghĩa các quyền truy cập đọc/ghi các thơng số của q trình điều khiển trong hệ thống.
- HMI (Human Machine Interface): Biểu thị dữ liệu cho người vận hành và cho phép nhập lệnh điều khiển qua nhiều dạng: Hình ảnh, sơ đồ, cửa sổ, menu, màn hình cảm ứng...
- Lập biểu đồ (Trending): Các sản phẩm SCADA đều hỗ trợ tiện ích lập biểu đồ.
- Điều khiển báo động (Alarm Handling): Báo động được dựa trên kiểm tra giới hạn và trạng thái được thực hiện trên các máy chủ.
- Ghi sự kiện và lưu trữ (Logging/Archiving): Sự kiện có thể được ghi theo một tần số đặt trước, hoặc khởi tạo khi có sự thay đổi, hoặc một sự kiện được chỉ định trước xảy ra.
- Xuất báo cáo (Report Generation): Báo cáo có thể xuất dưới dạng truy vấn SQL
cho lưu trữ file, bảng ghi sự kiện dạng text, file sự kiện dạng html, ... Báo cáo có thể được xuất, in và lưu trữ tự động.
5.1.1.3. Một số lĩnh vực được ứng dụng SCADA