Đề tài Mạng truyền thông công nghiệp và ứng dụng

Tôi cũng chỉ biết qua qua do không chuyên về thứ này lắm, nhưng có va chạm khi làm về các thiết bị tự động trên tàu (loading computer, tank level gauging, engine alarm & monitoring systems, etc). Cơ bản thì MODBUS là một protocol phổ biến bậc nhất được sử dụng hiện nay cho nhiều mục đích. MODBUS đơn giản, rẻ, phổ biến và dễ sử dụng. Được phát minh từ thế kỉ trước (gần 30 năm trước), các nhà cung cấp thiết bị đo và thiết bị tự động hóa trong công nghiệp tiếp tục hỗ trợ MODBUS trong các sản phẩm thế hệ mới. Mặc dù các bộ phân tích, lưu lượng kế, hay PLC đời mới có giao diện kết nối không dây, Ethernet hay fieldbus, MODBUS vẫn là protocol mà các nhà cung cấp lựa chọn cho các thiết bị thế hệ cũ và mới. Một ưu điểm khác của MODBUS là nó có thể chạy hầu như trên tất cả các phương tiện truyền thông, trong đó 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 và vi sóng. Có nghĩa là, kết nối MODBUS có thể được thiết lập trong nhà máy thế hệ mới hay hiện tại khá dễ dàng. Thực ra, nâng cao ứng dụng cho MODBUS là cung cấp truyền thông số trong nhà máy đời cũ, sử dụng kết nối dây xoắn hiện nay. MODBUS do Modicon (hiện nay thuộc Schneider Electric) phát triển năm 1979, là một phương tiện truyền thông với nhiều thiết bị thông qua một cặp dây xoắn đơn. Ban đầu, nó hoạt động trên RS232, nhưng sau đó nó sử dụng cho cả RS485 để đạt tốc độ cao hơn, khoảng cách dài hơn, và mạng đa điểm (multi-drop). MODBUS đã nhanh chóng trở thành tiêu chuẩn thông dụng trong ngành tự động hóa, và Modicon đã cho ra mắt công chúng như một protocol miễn phí. Ngày nay, MODBUS-IDA, tổ chức sử dụng và cung cấp MODBUS lớn nhất tiếp tục hỗ trợ protocol MODBUS trên toàn cầu. MODBUS là một hệ thống “chủ - tớ”, “chủ” được kết nối với một hay nhiều “tớ”. “Chủ” thường là một PLC, PC, DCS, hay RTU. “Tớ” MODBUS RTU thường là các thiết bị hiện trường, tất cả được kết nối với mạng trong cấu hình multi-drop (hình1). Khi một chủ MODBUS RTU muốn có thông ty từ thiết bị, chủ sẽ gửi một thông điệp về dữ liệu cần, tóm tắt dò lỗi tới địa chỉ thiết bị. Mọi thiết bị khác trên mạng sẽ nhận thông điệp này nhưng chỉ có thiết bị nào được chỉ định mới có phản ứng.

doc17 trang | Chia sẻ: ngtr9097 | Lượt xem: 4746 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Đề tài Mạng truyền thông công nghiệp và ứng dụng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Contents GIỚI THIỆU CHUNG Tôi cũng chỉ biết qua qua do không chuyên về thứ này lắm, nhưng có va chạm khi làm về các thiết bị tự động trên tàu (loading computer, tank level gauging, engine alarm & monitoring systems, etc). Cơ bản thì MODBUS là một protocol phổ biến bậc nhất được sử dụng hiện nay cho nhiều mục đích. MODBUS đơn giản, rẻ, phổ biến và dễ sử dụng. Được phát minh từ thế kỉ trước (gần 30 năm trước), các nhà cung cấp thiết bị đo và thiết bị tự động hóa trong công nghiệp tiếp tục hỗ trợ MODBUS trong các sản phẩm thế hệ mới. Mặc dù các bộ phân tích, lưu lượng kế, hay PLC đời mới có giao diện kết nối không dây, Ethernet hay fieldbus, MODBUS vẫn là protocol mà các nhà cung cấp lựa chọn cho các thiết bị thế hệ cũ và mới. Một ưu điểm khác của MODBUS là nó có thể chạy hầu như trên tất cả các phương tiện truyền thông, trong đó 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 và vi sóng. Có nghĩa là, kết nối MODBUS có thể được thiết lập trong nhà máy thế hệ mới hay hiện tại khá dễ dàng. Thực ra, nâng cao ứng dụng cho MODBUS là cung cấp truyền thông số trong nhà máy đời cũ, sử dụng kết nối dây xoắn hiện nay. MODBUS do Modicon (hiện nay thuộc Schneider Electric) phát triển năm 1979, là một phương tiện truyền thông với nhiều thiết bị thông qua một cặp dây xoắn đơn. Ban đầu, nó hoạt động trên RS232, nhưng sau đó nó sử dụng cho cả RS485 để đạt tốc độ cao hơn, khoảng cách dài hơn, và mạng đa điểm (multi-drop). MODBUS đã nhanh chóng trở thành tiêu chuẩn thông dụng trong ngành tự động hóa, và Modicon đã cho ra mắt công chúng như một protocol miễn phí. Ngày nay, MODBUS-IDA, tổ chức sử dụng và cung cấp MODBUS lớn nhất tiếp tục hỗ trợ protocol MODBUS trên toàn cầu. MODBUS là một hệ thống “chủ - tớ”, “chủ” được kết nối với một hay nhiều “tớ”. “Chủ” thường là một PLC, PC, DCS, hay RTU. “Tớ” MODBUS RTU thường là các thiết bị hiện trường, tất cả được kết nối với mạng trong cấu hình multi-drop (hình1). Khi một chủ MODBUS RTU muốn có thông ty từ thiết bị, chủ sẽ gửi một thông điệp về dữ liệu cần, tóm tắt dò lỗi tới địa chỉ thiết bị. Mọi thiết bị khác trên mạng sẽ nhận thông điệp này nhưng chỉ có thiết bị nào được chỉ định mới có phản ứng. Phân tích các giải pháp công nghệ để thực hiện các yêu cầu kỹ thuật của mạng công nghiệp trong hệ thống Modbus 1.Giao thức modbus: Modbus là giao thức do hãng Modicon phát triển. Theo mô hình OSI/ISO thì Modbus thực chất là một chuẩn giao thức và dịch vụ thuộc lớp ứng dụng, vì vậy có thể được thực hiện trên các cơ chế vận chuyển cấp thấp như TCP/IP, MAP (Manufactoring Message Protocol), và ngay cả qua đường truyền nối tiếp RS-232. 2. Cơ chế giao tiếp Mạng Modbus chuẩn sử dụng giao diện nối tiếp RS-232C. Các trạm Modbus giao tiếp với nhau qua cơ chế Master/Slaver, trong đó chỉ có 1 thiết bị chủ có thể chủ động gởi yêu cầu, các thiết bị tớ sẽ đáp ứng bằng dữ liệu trả lại hoặc thực hiện một hành động nhất định theo như yêu cầu. Các thiết bị chủ thông thường là máy tính điều khiển trung tâm và các thiết bị lập trình. Các thiết bị tớ có thể la PLC hoặc các bộ điều khiển số chuyên dụng khác Một trạm chủ có thể gởi thông báo yêu cầu tói riêng một trạm tớ nhất định, hoặc gởi thông báo đồng loạt (broadcast) tới tất cả các trạm tớ.Chỉ trong trường hợp nhận được yêu cầu riêng, các trạm tớ mới gởi thông báo trả lại trạm chủ. Nếu thông báo yêu cầu có chứa địa chỉ trạm nhận, mã hàm dịch vụ bên nhận cần thực hiện, dữ liệu đi kèm và thông tin kiểm lỗi *Chu trình yêu cầu đáp ứng : Khuôn dạng của thông báo yêu cầu cũng như của thông báo đáp ứng như sau : Một thông báo yêu cầu bao gồm các phần sau : • Địa chỉ trạm nhận yêu cầu (0-247), trong đó 0 là địa chỉ gởi đồng loạt. • Mã hàm gọi chỉ thị hành động trạm tớ cần yêu cầu. • Dữ liệu chứa các thông tin bổ sung mà trạm tớ cần cho việc thực hiện hàm được gọi. Khi đọc thanh ghi, dữ liệu này chỉ rõ thanh ghi đầu tiên và số lượng các thanh ghi được đọc. • Thông tin kiểm lỗi giúp trạm tớ kiểm tra độ vẹn toàn của nội dung thông báo nhận được. Thông báo đáp ứng cũng bao gồm các thành phần giống như thông báo yêu cầu. Địa chỉ ở đây là của chính trạm tớ đã thực hiện yêu cầu và gởi lại đáp ứng. Trong trường hợp bình thường, mã hàm được giữ nguyên như trong thông báo yêu cầu và dữ liệu chứa kết quả thực hiện hành động, ví dụ nội dung và trạng thái hoạt động thanh ghi. Nếu xảy ra lỗi, mã hàm quay lại được sửa để chỉ thị dấp ứng là một thông báo lỗi, còn dữ liệu mô tả chi tiết lỗi xảy ra. Phần kiểm lỗi giúp trạm chủ xác định độ chính xác của nội dung thông báo nhận được. 3. Chế độ truyền tải: Đối với các thiết bị ghép nối qua mạng Modbus chuẩn, có thể sử dụng một trong 2 chế độ truyền tải là ASCII hoặc RTU. Người sử dụng lựa chọn chế độ theo ý muốn, cùng với các tham số truyền thông qua cổng nối tiếp như tốc độ truyền, parity chẵn/lẻ,… Chế độ truyền cũng như các tham số phải giống nhau đối với tất cả các thành viên của một mạng Modbus. Chế độ ASCII: American Standard Code for Information Interchange. Mỗi byte thông báo được gởi thành hai ký tự ASCII 7bit, trong đó mỗi ký tự biểu diễn một chữ số hex. Cấu trúc một ký tự khung gởi đi được thể hiện như sau : START 0 1 2 3 4 5 6 P STOP Mỗi ký tự khung bao gồm : • 1 bit khởi đầu (startbit) • 7 bit biễu diễn 1 chữ số hex của byte cần gởi dưới dạng ký tự ASCII (0-9 và A-F), trong đó bit thấp nhất được gởi đi trước • 1 bit parity chẵn/lẽ, nếu sử dụng parity • 1 bit kết thúc (stopbit) nếu sử dụng parity hoặc 2 bit kết thúc nếu không sử dụng parity. Chế độ RTU Remote Terminal Unit Mỗi byte thông báo được gởi thành một ký tự 8 bit. Cấu trúc của một ký tự khung được gởi đi được thể hiện như sau : START 0 1 2 3 4 5 6 7 P STOP Mỗi ký tự khung bao gồm : • 1 bit khởi đầu (startbit). • 8 bit của byte thông báo được gởi, trong đó bit thấp nhất được gởi đi trước. • 1 bit parity chẵn/lẽ, nếu sử dụng parity. • 1 bit kết thúc (stopbit) nếu sử dụng parity hoặc 2 bit kết thúc nếu không sử dụng parity *** So sánh 2 chế độ truyền : Hiệu suất : RTU cao hơn ASCII Thời gian chờ : ASCII cho phép một khoảng thời gian trống tối đa một giây giữa 2 ký tự mà không gây ra lỗi. Còn RTU thì mỗi thông báo phải được truyền thành dòng liên tục. 4.Tổ chức vùng nhớ: Mỗi thiết bị MODBUS có bộ nhớ chứa dữ liệu quá trình. Thông số kỹ thuật của MODBUS chỉ ra cách dữ liệu được gọi ra như thế nào, loại dữ liệu nào có thể được gọi ra. Tuy nhiên, không đặt ra giới hạn về cách thức và vị trí mà nhà cung cấp đặt dữ liệu trong bộ nhớ. Dưới đây là ví dụ về cách thức mà nhà cung cấp đặt các loại dữ liệu biến thiên quá trình hợp lí. Các đầu vào và cuộn cảm rời rạc có giá trị 1 bit, mỗi một thiết bị lại có một địa chỉ cụ thể. Các đầu vào analog (bộ ghi đầu vào) được lưu trong bộ ghi 16 bit. Bằng cách sử dụng 2 bộ ghi này, MODBUS có thể hỗ trợ format điểm floating (nổi) IEEE 32 bit. Bộ ghi Holding cũng sử dụng các bộ ghi bên trong 16 bit hỗ trợ điểm floating. Địa chỉ Loại Tên 1 – 9999 Đọc hoặc viết Cuộn cảm 10001 – 19999 Chỉ đọc Đầu vào rời rạc 30001 – 39999 Chỉ đọc Bộ ghi đầu vào 40001 – 49999 Đọc hoặc viết Bộ ghi Holding Hình 1: Hướng dẫn xử dụng của hầu hết các thiết bị tương thích MODBUS như bộ truyền nhiệt TMZ của Moore Industries, công bố địa chỉ của các chỉ số biến thiên quan trọng trong bộ nhớ MODBUS. Địa chỉ TMZ tuân theo các thông số kỹ thuật của MODBUS Dữ liệu trong bộ nhớ được xác định trong thông số kỹ thuật MODBUS. Giả sử rằng nhà cung cấp tuân theo tiêu chuẩn kỹ thuật MODBUS (không phải tất cả), mọi dữ liệu có thể được truy cập dễ dàng bởi chủ, thiết bị tuân theo các thông số kỹ thuật. trong nhiều trường hợp, nhà cung cấp thiết bị công bố vị trí của bộ nhớ, tao điều kiện cho nhân viên lập trình dễ dàng để kết nối với thiết bị tớ. 5.Cấu trúc bức điện Một thông báo Modbus bao gồm nhiều thành phần và có chiều dài khác nhau. Nếu 1 trong 2 chế độ truyền được chọn, một thông báo sẽ được đóng khung. Mỗi khung bao gồm nhiều ký tự khung có cấu trúc như được mô tả ở mục trên hai chế độ truyền ASCII và RTU không những chỉ khác nhau ở cách mã hóa thông tin gởi đi và cấu trúc ký tự khung, mà còn khác nhau ở cấu trúc một bức điện gởi đi – hay nói cách khác là cấu trúc khung thông báo, cũng như biện pháp kiểm lỗi. a. Khung ASCII: Khởi đầu Khởi đầu Mã hàm Dữ liệu Mã LCR Kết thúc 1 ký tự : 2 ký tự 2 ký tự n ký tự 2 ký tự 2 ký tự CR+LF Một thông báo bắt đầu với dấu ‘:’, tức là ký tự 3A, và kết thúc bằng hai dấu qua lại – xuống dòng ‘CRLF’, tức là 2 ký tự ASCII 0D và 0A. Mỗi byte trong thông báo được truyền đi bằng 2 ký tự ASCII, vì vậy các ký tự được phép xuất hiện trong các phần còn lại của khung là 0-9 và A-F. Mỗi thiết bị tham gia mạng có trách nhiệm liên tục theo dõi đường truyền và sự xuất hiện của dấu ‘:’.Khi dấu ‘:’ xuất hiện thì 2 ký tự tiếp theo sẽ mang địa chỉ của thiết bị được yêu cầu nhận thông báo hoặc thiết bị đã gởi thông báo đáp ứng. Khoảng cách tối đa cho phép giữa 2 ký tự trong một thông báo là 1 giây. Vượt quá giá trị này xem như bị lỗi. Địa chỉ gồm 2 ký tự ASCII. Các giá trị hợp lệ nằm trong khoảng 0-247, trong đó địa chỉ 0 dành riêng cho các thông báo gửi đồng loạt tới các trạm tớ. Một thiết bị chủ sử dụng ô địa chỉ để chỉ định thiết bị tớ nhận yêu cầu. Sau khi thực hiện yêu cầu, thiết bị tớ đưa địa chỉ của mình vào khung thông báo đáp ứng, nhờ vậy thiết bị chủ có thể biết thiết bị tớ nào đã trả lời. Trong một mạng Modbus chuẩn chỉ có 1 trạm chủ duy nhất, vì thế ô địa chỉ không cần thiết chứa cả địa chỉ trạm gởi và trạm nhận. Phần mã hàm trong một khung thông báo gồm 2 ký tự ASCII, các giá trị hợp lệ trong khoảng 1-255, trong đó mã hàm yêu cầu chỉ được phép từ 1-127. Khi một thông báo gởi từ thiết bị chủ đến thiết bị tớ, mã hàm chỉ định hành động mà thiết bị tớ cần thực hiện. Khi thiết bị tớ thực hiện nó cũng dùng chính mã hàm đó trong thông báo đáp ứng bình thường. Nếu xảy ra lỗi mã hàm sẽ mã hàm trong yêu cầu với bit cao nhất được đặt bằng 1 và phần dữ liệu sẽ chứa thông tin chi tiết về lỗi đã xảy ra. Trong một thông báo yêu cầu, nội dung phần dữ liệu nói lên chi tiết hành động mà bên nhận cần thực hiện. Trong trường hợp bình thường, phần dữ liệu trong thông báo đáp ứng sẽ chứa kết quả của hành động thực hiện. Nếu xảy ra lỗi, phần dữ liệu chứa mã ngoại lệ, nhờ đó mà thiết bị chủ xác định hành động đã thực hiện. Lưu ý rằng một số hàm không đòi hỏi tham số, vì vậy phần dữ liệu có thể trống. Ví dụ : Trong một yêu cầu đọc các thanh ghi thì phần dữ liệu chứa thông tin về địa chỉ thanh ghi đầu tiên, số lượng các thanh ghi cần đọc và chiều dài thực tế của chính phần dữ liệu. Trong thông báo đáp ứng chứa nội dung các thanh ghi đã đọc. Khung ASCII sử dụng phương pháo kiểm lỗi LRC gồm 2 ký tự. b. Khung RTU Khởi đầu Khởi đầu Mã hàm Dữ liệu Mã LCR Kết thúc (----) 8 bit n*8 bit 8 bit 16 bit (----) Một thông báo bắt đầu với 1 khoảng trống yên lặng tối thiểu là 3.5 thời gian ký tự, thường biểu thị bằng dãy (----). Ô đầu tiên sẽ truyền 8 bit địa chỉ, sau đó dén 8 bit mã hàm, một số byte tùy ý dữ liệu và cuối cùng là thông tin kiểm lỗi CRC. Thông báo kết thúc cũng bằng 1 khoảng trống yên lặng tối thiểu là 3.5 thời gian ký tự. Thực tế khoảng trống kết thúc 1 thông báo cũng chính la khoảng trống bắt đầu bắt buộc của 1 thông báo tiếp theo. Toàn bộ khung thông báo RTU phải được truyền thành dòng liên tục. Nếu 1 khoảng trống yên lặng >1.5 thời gian ký tự xuất hiện trước khi truyền xong toàn bộ khung, thiết bị nhận được sẽ hủy bỏ thông báo chưa đầy đủ đó và cho rằng byte tiếp theo sẽ là địa chỉ của một thông báo mới. Phần địa chỉ giống như trong chế độ ASCII, nhưng bao gồm 8 bit. Phần mã hàm giống như chế độ ASCII, nhưng bao gồm 8 bit. Phần dữ liệu giống như chế độ ASCII, nhưng bao gồm n*8 bit. Khung RTU sử dụng phương pháp kiểm lỗi CRC gồm 16 bit. 6. Bảo toàn dữ liệu: Mạng Modbus chuẩn sử dụng 2 biện pháp bảo toàn dữ liệu ở 2 mức: Kiểm soát khung thông báo Kiểm soát ký tự khung Có thể lựa chọn kiểm tra bit chẵn/lẻ cho từng ký tự khung. Cả khung thông báo lại được kiểm soát 1 lân nữa bằng mã LRC với chế đọ truyền ASCII hoặc mã CRC với chế độ RTU. a.Kiểm soát LRC: LRC : Longitudinal Redundancy Check. Dùng trong chế độ truyền ASCII. Dãy nguồn bit được áp dụng để tính mã LRC bao gồm phần địa chỉ, mã hàm và phần dữ liệu. Các ô khởi đầu, kết thúc khung không tham gia vào tính toán. Dài 8 bit (truyền 2 ký tự ASCII), được tính bằng cách cộng đại số toàn cục các byte của dãy nguồn bit nguồn (không tính tới tràn), sau đó lấy phần bù 2 của kết quả. Khi đặt cấu hình cho một thiết bị chủ, có thể chọn một khoảng thời gian timeout mà nó có thể chờ đợi đáp ứng từ trạm tớ. Timeout phải đủ lớn để bất cứ thiết bị tớ nào cũng có thể trả lời trong điều kiện bình thường. Nếu thiết bị tớ phát hiện lỗi ở thông báo yêu cầu, nó sẽ không trả lời. Vì vậy thiết bị chủ sẽ tự nhận biết lỗi và sẽ thực hiện các hành động cần thiết. Một thông báo gởi tới địa chỉ một trạm không tồn tại cũng gây ra timeout. b.Kiểm soát CRC: CRC : Dùng trong chế độ truyền RTU Dài 16 bit Đa thức phát được sử dụng G=1001 0000 0000 0001 Khi đưa vào khung thông báo, byte thấp của mã CRC gởi trước, tiếp theo là các byte cao. II .Modbus trên các mạng khác: Với một số mạng khác như Modbus Plus, TCP/IP và MAP ( Manufacturing Message Protocol),… sử dụng Modbus là giao thức cho lớp ứng dụng. Ở đây ta xét mạng Modbus Plus. Modbus Plus là một hệ thống bus dựa trên giao thức Modbus, phục vụ nối mạng ở cấp trường cũng như ở cấp điều khiển. Ưu điểm của Modbus Plus • Giá rẻ • Dễ lắp đặt • Dễ vận hành Một số đặt tính kỹ thuật của Modbus plus : • Modbus Plus sử dụng đôi dây xoắn là môi trường truyền • Chiều dài cáp dẫn tối đala 500m không cần bộ lặp • Kỹ thuật truyền dẫn RS-485 • Tốc đọ truyền có thể lên đến 1Mbit/s • Kỹ thuật truy nhập môi trường là Token-Pasing. 1.Cơ chế giao tiếp : Sử dụng Modbus là giao thức cho lớp ứng dụng, các thiết bị có thể giao tiếp theo cơ chế riêng của mạng đó. Ví dụ trong giao tiếp tay đôi (Pear-to-Pear), mỗi bộ điều khiển có thể đóng vai trò là chủ hoặc tớ trong các lần giao dịch (một chu kỳ yêu cầu-đáp ứng) khác nhau. Một trạm có thể cùng một lúc có quan hệ logic với nhiều đối tác, vì vậy nó có thể đồng thời đóng vai trò là chủ hoặc tớ trong các lần giao dịch khác nhau. 2.Khung Modbus trên mạng Modbus Plus: Khi thực hiện Modbus trên các mạng khác như Modbus Plus các thông báo Modbus được đưa vào khung theo giao thức vận chuyền/liên kết dữ liệu cụ thể. Ví dụ : Một lệnh yêu cầu đọc nội dung các thanh ghi có thể được thực hiện giữa 2 bộ điều khiển ghép nối qua Modbus Plus. Khác với mạng Modbus chuẩn, các thông báo Modbus được gởi trên mạng Modbus Plus được đóng thành các khung LLC (Logical Link Control). Mỗi khung LLC lại được lớp MAC (Medium Access Control) bổ sung các thông tin như các địa chỉ trạm gởi và trạm nhận cũng như số lượng byte được truyền. Trước khi mã hóa bit, một khung MAC lại được đóng gói thành một bức điện HDLC (High-level Data Link Control) Output Patch (1 byte) : đường dẫn đầu ra, chỉ thị 1 kênh logic cảu trạm chủ, có vai trò trong việc dồn kênh/phân kênh. Router Counter (1 byte) : số đếm các router mà khung thông báo đã đi qua Transaction Sequence Number (1 byte) : mã số phiên giao dịch (một phiên giao dịch có thể bao gồm nhiều bức điện). Routing Path (5 byte) : mã số đường đi tối ưu trong một hệ thống liên mạng. Destination Address (1 byte) : địa chỉ đích (trạm Modbus Plus). Source Address (1 byte) : địa chỉ nguồn (trạm Modbus Plus). MAC Function (1 byte) : mã hàm điều khiển truy nhập môi trường. Byte Count (2 byte) : số lượng byte trong phần LLC được truyền. Preamble (1 byte) : dãy bit báo động đầu khung. Opening Flag (1 byte) : cờ mở đàu khung. Broadcast Address (1 byte) : địa chỉ gởi đồng loạt CRC (2 byte) : mã CRC kiểm lỗi. Closing Flag (1 byte) : cờ báo hiệu kết thúc chung. 3.Cấu trúc bức điện: Giao thức mạng có qui định riêng về cấu trúc khung thông báo Hình thúc địa chỉ và phương thức truyền cũng hoàn toàn do giao thức mạng cụ thể định nghĩa, vì vậy phần địa chỉ nằm trong một thông báo Modbus có thể trở nên không cần thiết trong quá trình truyền dẫn. Tuy nhiên, một địa chỉ Modbus sẽ được chuyển thành 1 địa chỉ trạm tương ứng của mạng phía dưới. Địa chỉ Modbus được thiết bị gởi chuyển đổi thành mã đường dẫn (routing path). Phần CRC của thông báo Modbus không được gởi kèm, bởi vì biện pháp bảo toàn dữ liệu CRC cũng sẽ được thực hiện cấp HDLC bên dưới. Các phần còn lại của thông báo được giữ nguyên. 4.Bảo toàn dữ liệu : Modbus Plus sử dụng phương pháp kiểm lỗi riêng cho cả khung (bao gồm cả nội dung thông báo Modbus ), vì vậy các ô CRC hoặc LRC không được đưa vào trong thông báo của Modbus nguyên bản. Nếu xảy ra lỗi truyền, giao thức mạng cụ thể sẽ báo cho thiết bị gởi và cho phép thực hiện gởi lại. Nếu thông báo được gởi tới đích nhưng trạm tớ không thể trả lời, lỗi timeout cũng sẽ được chương trình chủ phát hiện. C. Phiên bản của modbus: Ba phiên bản của modbus được sử dụng phổ biến nhất hiện nay: MODBUS ASCII MODBUS RTU MODBUS TCP/IP Tất cả thông điệp gửi dưới cùng một định dạng theo giao thức MODBUS. Sự khác nhau giữa ba loại MODBUS trên chính là sự mã hóa. - MODBUS ASCII: mọi thông điệp được mã hóa bằng hexadeci-mal, sử dụng đặc tính ASCII 4 bit. Đối với mỗi một byte thông tin, cần có 2 byte truyền thông, gấp đôi so với MODBUS RTU hay MODBUS/TCP. Tuy nhiên, MODBUS ASC II chậm nhất trong số 3 loại protocol, nhưng lại thích hợp khi modem điện thoại hay kết nối sử dụng sóng radio do ASC II sử dụng các tính năng phân định thông điệp. Do tính năng phân định này, mọi rắc rối trong phương tiện truyền dẫn sẽ không làm thiết bị nhận dịch sai thông tin. Điều này quan trọng khi đề cập đến các modem chậm, điện thoại di động, kết nối ồn hay các phương tiện truyền thông khó tính khác - MODBUS RTU: dữ liệu được mã hóa theo hệ nhị phân, và chỉ cần một byte truyền thông cho một byte dữ liệu. Đây là thiết bị lí tưởng đối với RS 232 hay mạng RS485 đa điểm, tốc độ từ 1200 đến 115 baud. Tốc độ phổ biến nhất là 9600 đến 19200 baud. MODBUS RTU là protocol công nghiệp được sử dụng rộng rãi nhất, do đó hầu như trong bài viết này chỉ tập trung đề cập đến cơ sở và ứng dụng của nó. - MODBUS/TCP : đơn giản là MODBUS qua Ethernet. Sử dụng thiết bị này cho việc kết nối với các thiết bị Chủ - Tớ thông qua địa chỉ IP được sử dụng. Với MODBUS/TCP, dữ liệu MODBUS được tóm lược đơn giản trong một gói TCP/IP. Do đó, bất cứ mạng Ethernet hỗ trợ MODBUS/ IP sẽ ngay lập tức hỗ trợ MODBUS/TCP. D. Ứng dụng: Sử dụng MODBUS chủ yếu cho điều khiển và tự động hóa quá trình.