Giới thiệu về Modbus

Một phần của tài liệu đồ án thiết kế hệ thống giám sát và điều khiển chiếu sáng đô thị (Trang 79 - 89)

- Tính chọn aptomat với dòng cắt định mức: + Với MBA 50(kVA)

3.2.1Giới thiệu về Modbus

Modbus bắt nguồn trong cuối những năm 70 thế kỷ trước. Năm 1979 khi nhà sản xuất PLC Modicon, giờ là tập đoàn Schneider Electric's

Telemecanique, phát hành giao diện truyền thông Modbus cho mạng multidrop dựa trên kiến trúc master/client. Truyền thông giữa các Modbus node có được bằng các thông điệp. Nó là một chuẩn mở mà được mô tả bằng cấu trúc thông điệp. Tầng vật lý của Modbus interface là tự do chọn lựa.

Modbus interface ban đầu chạy trên RS- 232, nhưng các thực hiện Modbus sau nhất dùng RS- 485 vì nó cho phép khoảng cách lớn, tốc độ cao và khả

năng của một mạng multi-drop thực sự. Trong thời gian ngắn hàng trăm nhà sản xuất thực hiện hệ thống thông điệp Modbus trong thiết bị của họ và Modbus trở thành chuẩn cho các mạng truyền thông công nghiệp.

Điều tốt của chuẩn Modbus là sự linh hoạt, và sự dễ thực hiện của nó. Không chỉ các thiết bị thông minh như các microcontroller, PLC ... có thể truyền thông với Modbus, mà còn các sensor thông minh trang bị Modbus interface gửi data của chúng đến các host system. Trong khi Modbus được chinh chính trước đây trên các đường truyền thông dây dẫn, cũng có các mở rộng cho các chuẩn truyền thông không dây và các mạng TCP/IP.

a .Cơ chế giao tiếp

Cơ chế giao tiếp ở modbus phụ thuộc vào hệ thống truyền thông cấp thấp. Cụ thể, có thể phân chia ra hai loại là mạng modbus chuẩn và modbus trên các mạng khác ( ví dụ TCP/IP, Modbus Plus, MAP)

Mạng Modbus chuẩn

Trên các bộ điều khiển của modicon cũng như một số nhà sản xuất khác sử dụng giao diện nối tiếp RS- 232C. Các bộ điều khiển này có thể được nối mạng trực tiếp hoặc qua modem. Các trạm Modbus giao tiếp với nhau qua cơ chế chủ/tớ (Master/slaver). Trong đó chỉ một thiết bị chủ có thể chủ động gửi yêu cầu, còn 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à các máy tính điều khiển trung tâm và các thiết bị lâp trình, trong khi các thiết bị tớ có thể là 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 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á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 đáp ứng trả lại trạm chủ. Trong một 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.

b. Chu trình yêu cầu- đáp ứng

Giao thức Modbus định nghĩa 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ư đươc minh họa trên hình

Hình 3.3: Chu trình yêu cầu đáp ứng

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 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 các thanh ghi lưu dữ và trả lại kết quả .

+ 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 . Trong trường hợp đọc thanh ghi , dữ liệu này chỉ ra thanh ghi đầu tiên và số lượng các thanh ghi cần đọ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 hoặc trạng thái các thanh ghi. Nếu xảy ra lỗi, mã hàm quay lại được sửa để chỉ thị đá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.

c. Chế độ truyền

Khi thực hiện Modbus trên các mạng TCP/IP các thông báo Modbus được đưa vào các khung theo giao thức vận chuyển/liên kết dữ liệu cụ thể.

Hình 3.4: Mô tả hoạt động của giao thức TCP/IP

Dữ liệu truyền từ một ứng dụng TCP/IP, hay một giao tiếp chương trình ứng dụng mạng qua cỏng TCP hoặc UDP đến một trong hai giao thức lớp vận chuyển ( TCP hay UDF ). Các chương trình có thể truy cập mạng qua TCP hay UDP, phụ thuộc yêu cầu của chương trình.

Đoạn dữ liệu được chuyển xuống lớp Internet ở đó giao thức IP cung cấp thông tin đánh địa chỉ luận lý và đóng gói dữ liệu vào một datagram. Datagram IP vào lớp truy cập mạng, tại đây nó đi qua các phần mềm được thiết kế giao tiếp với mạng vật lý. Trong trường hợp của một hệ thống mạng LAN như là enthernet, khung có thể chứa thông tin địa chỉ vật lý có được từ các bảng tìm kiếm và các bảng này được duy trì nhờ các giao thức ARP và RARP ( ARP là giao thức phân giải địa chỉ vật lý, RARP là giao thức phân giải địa chỉ ngược chuyển đổi các địa chỉ vật lý thàn các địa chỉ IP).

Khung dữ liệu được chuyển thành một luồng các bit để truyền trên môi trường mạng.

3.2.2 Modbus TCP/IP

Trong phần này ta sẽ đi sâu vào tìm hiểu về Modbus TCP/IP

a. Kiến trúc truyền thông

Một hệ thống giao tiếp qua Modbus TCP / IP có thể bao gồm các loại thiết bị:

- Một Modbus TCP / Client (Khách) và Server (Dịch vụ) thiết bị IP kết nối với một mạng TCP/IP

- Các thiết bị nối như cầu, bộ định tuyến hoặc cổng ra cho kết nối giữa các mạng TCP / IP và một dòng nối tiếp các tiểu mạng cho phép kết nối khách hàng và máy chủ.

Điều quan trọng cần nhớ trong giao thức Modbus TCP/IP là mỗi lớp đóng một vai trò trong toàn bộ quá trình truyền thông. Mỗi lớp đòi hỏi các dịch vụ cần thiết để thực hiện vai trò của nó. Khi truyền dữ liệu đi xuyên qua từng tầng của giao thức từ trên xuống dưới mỗi lớp sẽ có một số thông tin thích hợp gọi là tiêu đề (header) gắn vào dữ liệu, tạo thành đơn vị dữ liệu giao thức cụ thể hơn là đơn vị dữ liệu đơn giản PDU (Protocol Data Unit) của lớp tương ứng. Khi PDU được đưa xuống các lớp thấp hơn, nó lại trở thành dữ liệu đối với lớp này và lại được đóng gói cùng với phần tiêu đề của lớp này.

Hình 3.6: Mô tả dữ liệu được đóng gói khi đi qua các tầng

Hình 3.7: Cấu trúc một đoạn tin truyền trong giao thức

ADU: Đơn vị dữ liệu ứng dụng còn PDU: Đơn vị dữ liệu đơn giản.

Additional address :Byte này cung cấp địa chỉ của slave mà master sẽ tác động đến .Trong cả đoạn tin yêu cầu gửi từ master và đoạn tin đáp ứng nhận từ slave thì byte này có giá trị giống nhau . Mỗi một slave trong mạng có một địa chỉ modbus riêng.

Function code: Byte thứ 2 mà master gửi đi là function code ( mã nhiệm vụ). Mã này giúp slave biết được nhiệm vụ mà master muốn slave phải làm.

Data: Nội dung dữ liệu truyền tải.

Error check: Kiểm tra lỗi.

Hình 3.8: Các tầng trong giao thức Modbus TCP/IP

User application ( tầng ứng dụng ): Là nơi chương trình mạng thường dùng nhất làm việc nhằm liên lạc giữa các nút trong một mạng. Giao tiếp xảy ra trong tầng này là tùy theo các ứng dụng cụ thể và các dữ liệu được truyền từ chương trình, trong định dạng được sử dụng trong nội bộ ứng dụng này,và được đóng gói theo một giao thức tầng giao vận.

Communication application layer ( tầng giao vận) : Trách nhiệm của tầng giao vận là kết hợp các khả năng truyền thông điệp trực tiếp không phụ thuộc vào mạng bên dưới. Kèm theo kiểm soát lỗi, phân mảnh và điều khiển lưu lượng.

TCP management (Tầng mạng dữ liệu) : Giải quyết các vấn đề dẫn các gói tin qua một mạng đơn.

TCP/IP Stack (Tầng liên kết): Phương pháp được sử dụng để chuyển các gói tin từ tầng mạng tới các máy chủ khác nhau – không hẳn là một phần của bộ giao thức TCP/IP, vì giao thức IP có thể chạy trên nhiều tầng liên kết khác nhau.Các quá trình truyền các gói tin trên một liên kết cho trước và nhân các gói tin từ các liên kết cho trước có thể được điều khiển cả trong phần mềm điều vận thiết bị dành cho các cạc mạng,cũng như trong phần sụn hay các chipset chuyên dụng.Những thứ đó sẽ thực hiện các chức năng liên kết dữ liệu chẳng hạn như bổ xung một tín đầu để chuẩn bị cho việc truyền gói tin đó, rồi thực sự truyền frame dữ liệu qua một môi trường vật lý.

Ressource management & Flow control: Quản lý và điều khiển luồng

c. Modbus Server và Client

Hình 3.10 Đơn vị máy chủ

Modbus server TCP/IP: máy chủ

Modbus Client TCP/IP: khách hàng

Modbus Client serial Line: mã khách hàng

Modbus truyền tin thông qua dây nối tiếp giữa các thiết bị . Cách cài đặt đơn giản nhất là dùng 1 cáp nối tiếp kết nối giữa 2 port nối tiếp của 2 thiết bị master – slave.Dữ liệu được truyền đi dưới dạng bit . Mỗi bit được thể hiện dưới dạng điện áp.Mức 0 ứng với điện áp dương và bit 1 ứng với điện áp âm. Các bit này được gửi với tốc độ rất nhanh.

Một phần của tài liệu đồ án thiết kế hệ thống giám sát và điều khiển chiếu sáng đô thị (Trang 79 - 89)