1. Trang chủ
  2. » Luận Văn - Báo Cáo

Giao thức modbus

16 19 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 603,53 KB

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - TIỂU LUẬN Kiến trúc máy tính mạng truyền thông công nghiệp Đề tài: Giao thức Modbus *** Giáo viên hướng dẫn: Thầy Đặng Việt Anh Định nghĩa Modbus: Modbus giao thức hãng Modicon (sau thuộc AEG Schnelder automation) phát triển theo mơ hình ISO/OSI(International Organization for Standardization/Open Systems Interconnection Reference Model: Tổ chức tiêu chuẩn hóa quốc tế/Mơ hình tham chiếu kết nối hệ thống mở Modbus thực chất giao thức dịch vụ thuộc lớp ứng dụng Có thể vận chuyển cấp thấp TCP/MAP (Manufacturing Message Protocol), Modbus Plus đường truyền nối tiếp RS-232 Modbus định nghĩa tập hợp rộng dịch vụ phục vụ trao đổi liệu trình, liệu điều khiển liệu chuẩn đốn Mudbus mơ tả q trình giao tiếp điều khiển với thiết bị khác thông qua chế yêu cầu/đáp ứng Ví dụ: Trong ứng dụng PLC người ta tìm thấy tập hợp dịch vụ đưa Modbus Đặt biệt hệ thống thu thập liệu điều khiển giám sát(Scada) Modbus hay sử dụng đường truyền RS-232 ghép nối thiết bị đầu cuối (PLC, PC) với thiết bị truyền liệu (Modem) Hình ảnh minh họa Cơ chế giao tiếp: Modbus phụ thuộc vào hệ thống truyền thông cấp thấp Được chia làm hai loại mạng Modbus chuẩn Mudbus mạng khác (ví dụ: TCP/IP, Modbus Plus, MAP) 2.1 Mạng Mobus chuẩn: Các trạm Modbus giao tiếp với qua chế chủ/tớ (Master/Slave), số thiết bị chủ gửi yêu cầu, thiết bị tớ đáp ứng yêu cầu trả lại thực hành động định theo yêu cầu Các thiết bị chủ máy tính điều khiển trung tâm thiết bị lập trình, thiết bị tớ PLC điều khiển số chuyên dụng khác 2.2 Modbus mạng khác: Modbus Plus MAP sử dụng Modbus giao thức cho lớp ứng dụng, thiết bị giao chế riêng mạng Ví dụ: giao tiếp tay đơi (Peer to peer), điều khiển đóng vai tro chủ tớ lần giao dịch khác (Mỗi trạm lúc có quan hệ logic với nhiều đối tác, đồng thời đóng vai trị chủ tớ giao dịch khác nhau.) 2.3 Chu trình yêu cầu – đáp ứng: Một thông báo yêu cầu bao gồm phần sau:  Địa trạm nhận yêu cầu (0-247)., dịa gửi đồng loạt  Mã hàm gọi thị hành động trạm tớ thực hiên theo yêu cầu ví dụ, mã hàm 03 yêu cầu trạm tớ đọc nội dung ghi lưu trả lại kết  Dữ liệu chứa thông tin bổ sung nà trạm tớ cần cho việc thực hàm gọi  Thông tin kiểm lợi giúp trạm tớ kiểm tra độ toàn vẹn nội dung thông báo nhận 3 Chế độ truyền: Chế độ ASCII Mỗi ký tự khung bao gồm:  bit khởi đầu (Start bit)  bit biểu diễn chữ số hex byte cần gửi dạng kí tự ASCII (09 A-F), bit thấp gửi trước  1bit parity chẵn/lẻ, sử dụng parity  bit kết thúc (Stop bit) sử dụng parity bit kết thúc không sử dụng parity Chế độ truyền (tiếp) Khi thiết bị mạng Modbus chuẩn đặt chế độ RTU (Remote Terminal Unit), byte thông báo gửi thành ký tự bit Ưu điểm chế độ truyền so với chế độASCII hiệu suất cao Tuy nhiên, thơng báo phải truyền thành dịng liên tục Cấu trúc kí tự khung gửi thể sau: Mỗi ký tự khung bao gồm:     bit khởi đầu (Start bit) bit byte thơng báo cần gửi, bit thấp gửi trước 1bit parity chẵn /lẻ, sử dụng parity bit kết thúc (Stop bit) sử dụng parity bit kết thúc không sử dụng parity Khung ASCII: - Trong điện gửi giao thức Modbus (chế độ truyền ASCII) , khung thơng báo bắt đầu kí tự ":", tiếp đến địa thiết bị, mã hàm, mã kiểm lỗi LRC kết thúc hai kí tự CR LF - Bức điện trả lời ngồi thơng tin giống điện gửi kèm thêm vào thơng tin u cầu Cấu trúc điện Khung ASCII Khởi đầu Ký tự Địa Ký tự Mã hàm Ký tự Dữ liệu N Ký tự Mã LCR Ký tự Kết thúc Ký tự Các đối tượng Modbus ASCII Modbus sử dụng đường truyền thông dây dẫn, có mở rộng cho chuẩn truyền thông không dây mạng TCP/IP Sử dụng mạng cơng nghiệp, cơng ty, nhà máy… Ví dụ: Các hệ PLC nhà máy sản xuất (trong PLC người ta tìm thấy tập hợp dịch vụ đưa Modbus) Đặc biệt trong hệ thống SCADA Modbus sử dung đường truyền RS-232 ghép nối thiết bị đầu cuối (PLC, PC) với thiết bị truyền liệu Kết nối thiết bị MODBUS Một cách đơn giản để đưa thiết bị trường vào hệ thống điều khiển trình, PLC hay máy tính cơng nghiệp kết nối I/O analog số thành hệ thống I/O phân tán mang tính truyền thơng MODBUS Thí dụ, NCS (hệ thống kết nối mạng) Moore Industries cho phép người sử dụng kết nối tín hiệu analog số từ xa (sau kết nối với chủ MODBUS cáp đơi xoắn) Đa hệ thống NCS lắp đặt nhiều vị trí tồn nhà máy, tất kết nối MODBUS (hình 4) Một cách đơn giản để đưa thiết bị trường vào hệ thống điều khiển trình, PLC hay máy tính cơng nghiệp kết nối I/O analog số thành hệ thống I/O phân tán mang tính truyền thơng MODBUS Thí dụ, NCS (hệ thống kết nối mạng) Moore Industries cho phép người sử dụng kết nối tín hiệu analog số từ xa (sau kết nối với chủ MODBUS cáp đơi xoắn) Đa hệ thống NCS lắp đặt nhiều vị trí tồn nhà máy, tất kết nối MODBUS Giải pháp hoạt động máy hệ Trong nhiều nhà máy nay, công cụ đo trường kết nối với DCS hay PLC qua “home run wiring”, đây, thiết bị kết nối với cặp dây xoắn mang tín hiệu analog Với NCS, cặp dây xoắn sử dụng cho tín hiệu MODBUS Điều thật hữu ích nhà máy muốn bổ sung thêm công cụ trường khơng muốn nối thêm dây (chi phí lắp đặt 100 đôla cho foot) Một hệ thống I/O phân tán cung cấp tất I/O có., sử dụng để gửi liệu từ tất dụng cụ trường hệ Trong số trường hợp, hệ thống điều khiển khơng có khả xử lí tín hiệu MODBUS Có thể hệ thống điều khiển thừa kế quen với việc xử lí I/O analog 4-20mA I/O số nối trực tiếp, lập trình hệ thống hệ cũ để cung cấp liệu MODBUS trở nên khó khăn Thơng thường, người sử dụng mong muốn bổ sung tín hiệu từ xa vào hệ thống họ mà nối dây hay mua card giao diện MODBUS đắt đỏ đòi hỏi tái lập trình sâu Trong trường hợp đó, giải pháp peer – to –peer hoàn hảo Thí dụ, CCS (hệ thống tập trung cáp) NCS Moore Industries có tính truyền thơng peer – to – peer NCS CCS tương tự module I/O, có phận thu thập thơng tin bên thiết lập cấu hình peer-to-peer peer-to-host Với hệ thống NCS peer-to-peer (hình 5), hai tập trung sử dụng: trường phòng điều khiển Công cụ trường kết nối với NCS - thiết bị kết nối với phòng điều khiển NCS kết nối cặp dây xoắn đơn Đầu từ phòng điều khiển NCS nối với panel I/O analog có hệ thống điều khiển Bằng cách này, tín hiệu analog từ truyền trường hệ quan sát theo trạng thái analog gốc thông qua card I/O analog nhà máy Điều làm cho việc lập trình đưa tín hiệu vào hoạt động trở nên bớt khó khăn việc lập trình card giao diện số Giải pháp peer-to-peer cung cấp truyền thơng hai chiều trongdó hai chiều hệ thống có đầu vào đầu Kết nối peer-to-peer Trong số trường hợp, hệ thống điều khiển xử lí tín hiệu MODBUS, giải pháp peer-to-peer với hai hệ thống NCS thay tất nối dây home run với cáp MODBUS đơn Đầu analog từ phòng điều khiển NCS nối trực tiếp với card I/O hệ thống host Ưu điểm & ứng dụng: Với MODBUS ASCII, thơng điệp mã hóa hexadecimal, sử dụng đặc tính ASCII bit Đối với byte thơng tin, cần có byte truyền thơng Vì thích hợp modem điện thoại hay kết nối sử dụng sóng radio ASCII sử dụng tính phân định thơng điệp Do tính phân định này, rắc rối phương tiện truyền dẫn không làm thiết bị nhận dịch sai thông tin Điều quan trọng đề cập đến modem chậm, điện thoại di động… Điểm mạnh Modbus tính mở, đơn giản yêu cầu phần cứng Điều tốt chuẩn Modbus linh hoạt, dễ thực Khơng thiết bị thông minh microcontroller, PLC truyền thơng với Modbus, mà cịn sensor thông minh trang bị Modbus interface gửi lệu chúng đến hệ thống chủ Một ưu điểm khác MODBUS chạy tất phương tiện truyền thơng, có cổng kết nối dây xoắn, khơng dây, sợi quang, Ethernet, modem điện thoại, điện thoại di động vi song Nhược điểm MODBUS ASC II chậm số loại protocol Các chế độ truyền thông nối tiếp Modbus: Modbus/ASCII Modbus/RTU Các kết nối Modbus serial dùng hai chế độ truyền bản, ASCII hay RTU, remote terminal unit Chế độ truyền theo truyền thông serial định nghĩa cách Modbus message mã Với Modbus/ASCII, message định dạng ASCII đọc Định dạng Modbus/RTU dùng mã nhị phân làm thông điệp đọc giám sát, giảm kích thước thơng điệp mà cho phép nhiều data trao đổi thời gian Tất node phân đoạn mạng Modbus phải có mode truyền serial Một thiết bị cấu hình dùng Modbus/ASCII hiểu message theo Modbus/RTU ngược lại Khi dùng Modbus/ASCII, tất message mã theo giá trị hexadecimal, biểu diễn theo ký tự ASCII khả đọc Chỉ ký tự A-F dùng để mã Với byte thông tin, hai truyền thơng byte cần, truyền thơng byte định nghĩa bit theo hệ hexadecimal Với Modbus/RTU data trao đổi theo định dạng nhị phân, byte thơng tin mã theo truyền thông byte Các thông điệp Modbus kết nối serial không gửi theo định dạng phẳng Chúng frame cho receiver cách dễ dàng để dò bắt đầu kết thúc message Khi dùng Modbus/ASCII, ký tự dùng để bắt đầu kết thúc frame Dấu colon ':' dùng để báo hiệu bắt đầu message message kết thúc kết hợp CR/LF Modbus/RTU mặt khác dùng khe thời gian lặng đường truyền thông để frame Mỗi message phải theo khe thời gian có độ dài tối thiểu 3.5 ký tự Nếu receiver dò khe tối thiểu 1.5 ký tự, cho message đến đệm nhận làm Thuận lợi Modbus/ASCII là, cho phép khe byte message có độ dài tối đa giây Với Modbus/RTU cần nhận message stream liên tục Địa Modbus Thông tin Modbus message địa receiver Parameter chứa byte thông tin Trong Modbus/ASCII mã thành hai ký tự hexadecimal, Modbus/RTU byte dùng Các địa hợp lệ dải 0-247 Các giá trị 1-247 gán cho thiết bị Modbus cụ thể dùng địa broadcast Các Message gửi sau nhận tất slave Một slave đáp ứng với Modbus message Khi đáp ứng dùng địa master request Theo cách master thấy device thực đáp ứng với request Bên Modbus device, holding register, input output gán số 10000 Một mong đợi, địa dùng Modbus message để đọc hay đặt giá trị Rủi thay trường hợp Trong Modbus message địa dùng với giá trị 9999 Nếu bạn muốn đọc giá trị output (coil) 18 ví dụ, bạn phải định giá trị 17 Modbus query message Nhiều bối rói hơn, cho input holding register offset phải trừ từ địa device để lấy địa thích hợp để đặt vào Modbus message structure Điều dẫn đến lỗi phổ biến nên quan tâm thiết kế ứng dụng với Modbus Bảng sau trình bày dải địa cho coil, input holding register cách địa Modbus message tính ho trước địa thực item slave device Các mã chức Modbus Tham số thứ hai Modbus message mã chức Cái định nghĩa kiểu message kiểu hành động đòi hỏi slave Tham số chứa byte thông tin Trong Modbus/ASCII điều mà với hai ký tự hexadecimal, Modbus/RTU byte dùng Các mã chức hợp lệ khoảng 1-255 Không phải tất Modbus device nhận biết tập mã chức Các mã chung thảo luận Bình thường, Modbus slave trả với đáp ứng, dùng mã chức request Tuy nhiên, error dò, bit cao mã chức bật lên Theo cách master thấy khác biệt đáp ứng thành công thất bại Chức 01: Đọc trạng thái coil Trong ngôn ngữ Modbus, coil giá trị output rời rạc Chức Modbus 01 dùng để đọc trạng thái output Chỉ truy vấn device thời điểm Địa Broadcast hỗ trợ chức Modbus Chức dùng để request trạng thái coil khác lúc Điều làm định nghĩa dải output trường data message Khi nhận Modbus query message có chức 01, slave thu thập giá trị output cần thiết dựng answer message Chiều dài message phụ thuộc vào số value mà phải trả Nhìn chung, giá trị N yêu cầu, số ((N+7) mod 8) byte cần thiết để lưu giá trị Số thực databyte datablock đặt byte data field Do cấu trícchung answer cho Modbus function 01 query là: Chức 02: Đọc trạng thái input Đọc giá trị input với Modbus làm theo cách đọc trạng thái coil Khác biệt cho input Modbus function 02 dùng Broadcast addressing mode khơng hỗ trợ Bạn query giá trị input device lúc Giống với coil, địa input đầu tiên, số input để đọc phải đặt data field query message Các Input device bắt đầu đánh số từ 10001 Giá trị địa tương đương địa Modbus message Sau nhận query message có Modbus function 02, slave đặt giá trị input yêu cầu message structure gửi message trở lại Modbus master Chiều dài message phụ thuộc vào số giá trị input trả Điều làm cho chiều dài output message thay đổi Số databyte data field mà chứa giá trị input chuyển byte data field Mỗi message trả lời Modbus có cấu trúc chung sau Chức 03: Đọc holding register Các giá trị bên Modbus device lưu holding register Các register có chiều rơng hai byte dùng cho mục đích khác Vài register chứa tham số cấu hình khác dùng cho giá trị đo lường trả (nhiệt độ ) cho host Các Register thiết bị tương thích Modbus bắt đầu đếm 40001 Chúng đánh địa cấu trúc thông điệp Modbus với địa bắt đầu Modbus function 03 dùng để yêu cầu hay nhiều giá trị ghi holding từ device Chỉ slave device đánh địa query đơn Các query Broadcast với function 03 không hỗ trợ Sau xử lý query, Modbus slave trả giá trị 16 bit holding register u cầu Vì kích thước holding registers, register mã với hai byte message trả lời Data byte chứa byte cao, thứ hai byte thấp register Thông điệp trả lời Modbus bắt đầu với địa thiết bị slave function code 03 Byte tiếp số data byte theo sau Giá trị gấp đôi số register trả Một kiểm tra lỗi mở rộng cho host để kiểm tra có lỗi truyền thơng xuất hay không Địa loại tên: 1-9999 10001-19999 30001-39999 40001-49999 Đọc viết cuộn cảm Chỉ đọc Đầu vào rời rạc Chỉ đọc Bộ ghi đầu vào Đọc viết Bộ ghi Holding ... 2.2 Modbus mạng khác: Modbus Plus MAP sử dụng Modbus giao thức cho lớp ứng dụng, thiết bị giao chế riêng mạng Ví dụ: giao tiếp tay đơi (Peer to peer), điều khiển đóng vai tro chủ tớ lần giao. .. nối hệ thống mở Modbus thực chất giao thức dịch vụ thuộc lớp ứng dụng Có thể vận chuyển cấp thấp TCP/MAP (Manufacturing Message Protocol), Modbus Plus đường truyền nối tiếp RS-232 Modbus định nghĩa... thoại, điện thoại di động vi song Nhược điểm MODBUS ASC II chậm số loại protocol Các chế độ truyền thông nối tiếp Modbus: Modbus/ ASCII Modbus/ RTU Các kết nối Modbus serial dùng hai chế độ truyền bản,

Ngày đăng: 04/08/2020, 00:57

TỪ KHÓA LIÊN QUAN

w