Lĩnh vực mạng công nghiệp là một trong những lĩnh vực cần có sự tìm hiểu kiến thức và luôn cập nhật những thông tin mới nhất. Để đơn giản hóa việc đó tôi sẽ trình bày các bài viết theo hướng đơn giản nhất dễ hiểu nhất và quan trọng áp dụng vào thực tiễn hiệu quả. Nếu bạn không có kiến thức chuyên ngành kỹ thuật! Bạn đừng lo tôi sẽ diễn giải cho bạn nắm được một cách nhanh nhất, còn nếu bạn là người có nền tảng kỹ thuật thì đây là một bài viết tuyệt vời dành cho bạn, bạn có thể sử dụng những ý tôi đề cập để truyền tải lại cho đội nhóm bạn nắm được dễ dàng nhất. Bây giờ tôi xin mời bạn cùng tôi đọc bài viết với nội dung tôi đã chọn lọc dành riêng cho bạn bên dưới nhé,
Sự khác nhau giữa Thiết bị Serial Device Server và Modbus Gateway? (Đều là giao tiếp cổng nối tiếp RS-232/485/422 nhưng khác nhau chỗ nào?)
Trước khi đề cập đến tựa đề trên, các bạn đã từng nghe về giao tiếp cổng nối tiếp hay giao tiếp cổng RS-232/RS-485/RS-422. Thực chất nó là gì mà tại sao 90% thiết bị trong công nghiệp đều sử dụng. Thực tế giao tiếp này xuất hiện khá sớm nhất là RS-232 xuất hiện từ năm 1960 được sử dụng cho việc kết nối các máy in vào PC, và thời điểm hiện tại máy in hóa đơn tại các cửa hàng tiện dụng mà các bạn thường nhận được tờ giấy nhỏ, thiết bị này kết nối với máy vi tính thông qua cổng DB9 và DB25 (Hình Minh Họa 1-2). Đọc đến đây có thể các bạn đã cảm thấy lạ lẫm. Tuy nhiên một số Anh/Chị trước đây đã từng sử dụng máy tính sẽ biết cổng kết nối này. Để việc kết nối đơn giản hơn, thời điểm bây giờ anh chị thường sử dụng cổng USB để kết nối? Hay Cổng Mạng Lan RJ45 cắm vào máy tính đúng không nào? Như vậy anh chị đã biết được hình hài cổng kết nối rồi USB, RJ45 rồi thì qua giao tiếp RS-232/485/422 cũng sẽ có 1 hình hài riêng, bạn có thể sử dụng google để kiểm tra cổng DB9 hay DB25 nhé. Ngày nay với sự cải tiến kiểu kết nối thì với hình hài cổng RJ45, USB hay Terminal (kiểu vặn vít) chúng ta cũng sẽ có giao tiếp RS-232/485/422. Tất nhiên tôi không đề cập nguyên lý hay cách thức truyền thông như thế nào nhé. Ở đây tôi sẽ làm thông tin trở lên dễ hiểu như sau: lấy ví dụ ngôn ngữ giao tiếp của con người (đối với thiết bị tôi gọi là giao thức) có thể có ngôn ngữ tiếng Anh, tiếng Nhật, tiếng Việt, …Khi nói đến giao thức có thể là giao thức truyền thông mạng Ethernet, kết nối cho USB, kết nối máy in theo giao thức RS-232, RS-485, hoặc kết nối vô tuyến 3G. Mỗi ngôn ngữ nó khác nhau cũng như giao thức kết nối cũng khác nhau đúng không nào!. Còn khẩu hình miệng (tôi gọi là cổng giao tiếp vật lý khi dùng thiết bị) có người có miệng to, nhỏ hoặc miệng vừa phải thì kết nối vật lý trong thiết bị có thể là kết nối kiểu USB, RJ45, DB9,... Tôi nghĩ cách ví dụ đơn giản ví von theo cơ thể và ngôn ngữ con người sẽ là cách liên tưởng sát nhất với các thông tin sắp tới tôi chia sẽ cho các bạn và bài viết này đỡ khô hơn và tôi luôn tin rằng sẽ dễ hiểu hơn lại đọc lý thuyết “chay”.
Như vậy tôi xin phép được nhắc lại đối với một thiết bị giao tiếp mạng sẽ có một số từ thường dùng như sau: Cổng kết nối vật lý và giao thức truyền thông
Luyên thuyên khá dài rồi, giờ tôi vào bài chính đây:
Hiện tại các cổng kết nối vật lý DB9, DB25 không còn xuất hiện trên các máy tính thời nay kể cả máy tính bàn, nhường chỗ cho kết nối Ethernet cổng RJ45 hoặc Cổng USB. Với xu thế IioT (Industrial Internet Of Thing) thì việc nâng cấp kết nối để thích nghi với xu thế là điều đương nhiên. Vì vậy việc chuyển đổi từ cổng RS232/485/422 sang cồng Ethernet RJ45 tất nhiên đang diễn ra. Một câu hỏi được đặt ra. Tại sao chúng ta không chuyển đổi các thiết bị như máy in, máy POS sang cổng Ethernet mà lại cần một thiết bị trung gian để chuyển đổi? Thực ra khi hạ tầng thiết bị đang chạy ổn định và chưa xảy ra sự cố thì việc thay đổi nguyên hệ thống là điều bất khả thi. Tuy nhiên để các thiết bị có giao thức cũ trở nên thông minh và hiện đại hơn thì cần có thiết bị trung gian để chuyển đổi. Việc chuyển đổi này cũng cần có đủ kiến thức để chọn một thiết bị phù hợp.
Trên thị trường hiện nay cũng là chuyển đổi từ giao thức RS-232/485/422 sang cổng Vật Lý là Ethernet RJ45 nhưng lại có 2 dòng sản phẩm nối bật với tên gọi các bạn thường nghe Serial Device Server và Gateway.
Vậy sự khác nhau giữa Thiết bị Serial Device Server và Thiết bị Serial-Ethernet Modbus Gateway là gì?
Tôi xin đưa ra những thông tin như sau:
Khi các bạn nghe thấy từ Serial Device Server có nghĩa nó là máy chủ của thiết bị cổng nối tiếp (Thiết bị ở đây là máy in, máy POS có giao thức RS-232-485-422), các thiết bị này được kết nối với máy tính bằng giao thức Ethernet. Vấn đề cần biết ở đây là nếu dùng thiết bị Serial Device Server thì dữ liệu được truyền đi ở định dang ban đầu (original data) và trên máy tính của bạn đã có một chương trình được chạy và giao tiếp theo định dạng cổng COM ảo hoặc TCP Client-Server. Thực ra nếu các bạn đã dùng USB-COM đến kết nối thiết bị có kết nối RS-232/485/422 với PC thì việc dùng thiết bị Serial Device Server sẽ mang đến kết nối từ cổng vật lý DB9 (RS232/485/422) sang cổng Ethernet RJ45 vô cùng hiện đại tại thời điểm bây giờ.
Ví dụ: Hiện tại tôi có 1 máy in hóa đơn hoặc 1 đầu cân kết nối theo RS232 hoặc RS485 (1 máy chỉ sử dụng được 1 loại giao thức) với máy tính được sản xuất trước năm 2005. Bây giờ vấn đề là như vầy. Máy tính đã bị hỏng và cần mua máy tính mới bây giờ, tuy nhiên phần mềm và chương trình khởi tạo vẫn có. Bây giờ máy tính chỉ có cổng USB hoặc Ethernet RJ45, nếu dùng USB chỉ được 3-6 mét không thể kéo dây đi xa, nhưng nếu dùng kết nối theo giao thức ethernet tôi có thể kéo dây mạng đến 100 mét (Lý tưởng) thực tế chỉ được 80-90 mét đó các bạn. Như vậy việc trang bị thêm bộ Serial Device Server và thực hiện khai báo giao tiếp theo cổng COM thì việc kết nối với thiết bị có giao thức cũ RS-232/485/422 vô cùng tiện lợi đúng không nào. Thực tế đối với bộ Serial Device Server có nhiều ứng dụng và chức năng các bạn chưa khai thác hết và thời lượng bài viết này không đủ để tôi nêu ra (dành cho bài viết khác nhé). Tôi xin phép được nêu ra chức năng thú vị mà các bạn có thể quan tâm, đối với bộ Serial Device Server bạn có thể dùng 2-4 máy tính kết nối đồng thời với 1 máy in kết nối cổng DB9 (RS232/485/422) đấy. Hình mô tả bên dưới sẽ giúp bạn hiểu rõ hơn nhé!
Trước khi đến với thiết bị Gateway cho kết nối RS-232/485/422 tôi sẽ đề cập các thiết bị như sau nhé, thường các công tơ mét hay đồng hồ đa năng, cảm biến công nghiệp sẽ dùng giao thức Modbus RTU (RS232/485/422). Modbus RTU là gì? Thì các bạn cứ hiểu nó là một thể loại giao thức (ngôn ngữ nhé).
Đối với loại ngôn ngữ Modbus RTU (RS232/485/422) thì các hãng sản xuất sẽ cho bạn nắm rõ địa chỉ thanh ghi (từ này hơi chuyên ngành) đại khái địa chỉ để để bạn lấy dữ liệu. Ví dụ như vầy nữa đồng hồ đa năng đo được hiệu điện thế (volt), cường độ dòng điện(Ampe), tần số (hz) thì đối với giao thức Modbus RTU, nhà sản xuất đồng hồ sẽ đưa cho bạn một bảng địa chỉ để bạn lấy địa chỉ đó ra và dùng địa chỉ đó cho các phần mềm (Scada) có thể đọc được. Bây giờ vấn đề lại được đặt ra, nhà máy đang muốn nâng cấp lên để giám sát online,.. mà bằng giao thức Ethernet. Bây giờ Modbus RTU trở lên cũ và không thể tích hợp và đường truyền Ethernet. Bạn lưu ý đọc đến đây bạn sẽ đặt câu hỏi tại sao không dùng thiết bị Serial Device Server. Câu trả lời Serial Device Server chỉ dùng cho những gói tin nguyên bản, nhà sản xuất đã tích hợp phần mềm và chỉ phần mềm đó có thể đọc được, họ sẽ không công khai bảng địa chỉ và bạn phải là cao thủ về lập trình TCP Socket mới có thể can thiệp được, nghe phức tạp và có vẻ tốn thời gian tìm hiểu => không khả thi phải không nào. Lúc này bạn sẽ nghe 1 thuật ngữ bộ chuyển đổi giao thức. Modbus RTU là một loại giao thức, để kết nối lên Ethernet trong trường hợp này tôi dùng Modbus TCP (Cũng là một loại giao thức ethernet, truyền các gói tin modbus đi theo định dạng ethernet, kiểu vậy). Giờ bạn có thể thắc mắc sao tôi không chuyển giao thức Modbus RTU sang giao thức Profinet, giao thức Ethernet/IP,…Bài viết này tôi chỉ muốn đề cập đến giao thức phổ thông và nhất là giao thức đó miễn phí, cộng động người dùng khá lớn (Ý tôi là Modbus TCP).
Thực tế các phần mềm giao tiếp theo gói tin Ethernet bây giờ đều có chuẩn Modbus TCP. Nhắc lại Modbus RTU và giao thức Modbus TCP khác nhau nhé. Tuy nhiên thời điểm bây giờ chúng ta luôn có sự lựa chọn thiết bị chuyển đổi giao thức (Ý tôi: thiết bị này là thông dịch viên chuyển đổi ngôn ngữ để thiết bị cuối có thể là đồng hồ đo điện năng có giao thức Modbus RTU (RS232-giao tiếp vật lý 3 dây, RS485-giao tiếp vật lý 2 dây hoặc 4 dây, RS422-giao tiếp 2 dây). Để phần mềm hiện đại bây giờ hiểu được giao thức này, ví dụ tôi có phần mềm giám sát WinCC của Siemens hoặc MC Works64 của Mitsubishi đều có giao hỗ trợ giao thức Modbus TCP . Tại sao dùng phần mềm này, theo cách hiểu đơn giản nhất: dùng để giám sát toàn bộ thiết bị có giao thức mà nó hỗ trợ, kiểu bạn muốn giám sát điện áp có đồng hồ điện thì bạn phải lấy địa chỉ điện áp (Thanh ghi) của đồng hồ và khai báo ở phần mềm, vì có cùng ngôn ngữ nên phần mềm sẽ nhận biết và việc còn lại là bạn thiết kế hiển thị theo nhu cầu của bạn (vẽ đồng hồ thể hiện số,…..). Còn tính năng nâng cao các bạn sử dụng Google để tìm hiểu tiếp nhé).
Đến đây tôi tóm lại thiết bị Gateway dùng để chuyển đổi giao thức Modbus RTU (RS232/485/422) sang Modbus TCP là như vầy nhé!
Thiết bị chuyển Serial sang Ethernet Modbus Gateway – Là cổng vào kết nối của các thiết bị nối tiếp RS-232, RS-422 and RS-485 vẫn là DB9, Terminal. Thiết bị này có thể chuyển đổi giao thức từ Modbus RTU/ASCII sang Modbus TCP và ngược lại. Điều cần lưu ý, thay vì sử dụng cổng COM ảo như thiết bị Serial Device Server thì thiết bị Serial sang Ethernet Modbus Gateway có thể kết nối thiết bị Serial bằng cách tìm địa chỉ IP sử dụng Modbus TCP (Nhớ IP của thiết bị Gateway nhé). Hình bên dưới sẽ cho anh em nắm nhé.
Một vài ví dụng ứng dụng trong thực tế: Serial Device Server và Serial-Ethernet Modbus Gateway
Dưới đây là một số câu hỏi tôi thường xuyên nhận được, hy vọng sẽ cung cấp thêm thông tin giá trị cho quý Anh/Chị.
Câu 1: Bạn trang bị máy tính mới chỉ có cổng RJ45 và USB, cần kết nối máy tính và bộ đọc mã vạch (giao tiếp RS-232) hoặc máy in công nghiệp (với giao tiếp RS-485) để in hoặc truy xuất dữ liệu, bạn đã có sẵn phần mềm từ nhà sản xuất máy in, chỉ cần khai báo cổng COM trên máy tính mới để đọc được dữ liệu? Cần sử dụng thiết bị nào?
Trong trường hợp này, Serial Device Server (Có 1 cổng RJ45 ethernet để kết nối với máy tính và có 1 cổng DB9 (RS232 hoặc RS485) đển kêys nối với máy in. Dùng để chuyển đổi tín hiệu nối tiếp RS-232 hoặc RS-485 sang cổng RJ45-Ethernet mà không có sự thay đổi về dữ liệu chuyền nhận. Việc cần làm sau khi trang bị bộ Serial device server, chúng ta cần cài đặt một cổng COM ảo trên máy tính và sau đó sử dụng một phần mềm từ hãng máy in để kết nối. Nhắc lại tuy kết nối bằng cổng RJ45 (Ethernet) nhưng vai trò Serial Device Server trong trường hợp này là tạo COM ảo để kết nối.
Câu 2: Bạn cần mở rộng giao tiếp RS-232 qua Ethernet rồi chuyển về RS232 lại, với chiều dài cáp Ethernet có thể mở rộng từ 50 mét hoặc có thể mở rộng hơn nhờ cáp quang hoặc kết nối với Switch khác, thay vì cáp RS-232 từ thiết bị A qua B chỉ kéo được tối đa 15 mét?
Trường hợp này, hãy sử dụng hai thiết bị Serial Device Server ở chế độ ghép nối/ghép đôi (pair connection). Điều này cho phép chuyển dữ liệu từ cổng RS-232/485/422 này sang cổng RS-232/485/422 khác thông qua mạng Ethernet (Cáp Cat 5/5e,…) mà không có bất kỳ thay đổi nào đối với cổng đó. Tín hiệu có thể truyền tối đa 90 mét hoặc nếu trong hạ tầng mạng Lan có cùng lớp mạng bạn có thể kết nối tín hiệu từ điểm A sang điểm B có cùng tín hiệu RS-232/485/422.
Câu 3: Bạn cần chuyển đổi tín hiệu RS-232/485/422 sang tín hiệu TCP Socket?
Trường hợp này bạn cần sử dụng thiết bị Serial Device Server, tín hiệu thô RS-232/485/422 được chuyển đổi thông qua Ethernet chuyển gói tin đi theo dạng Socket, bạn chủ động lập trình cho ứng dụng của bạn, khi đó tính năng TCP Server và TCP Client sẽ hỗ trợ cho bạn công việc này.
Câu 4: Bạn cần kết nối mô-đun RS-485 của đầu vào-đầu ra với giao thức Modbus RTU qua Ethernet (Modbus TCP) với một máy tính từ xa, trên đó hệ thống SCADA đã được thiết lập đọc tín hiệu Modbus TCP ?
Cách tốt nhất để làm được điều này là sử dụng thiết bị Serial-Ethernet Modbus Gateway để chuyển đổi Modbus RTU (RS-232/485/422) sang giao thức Modbus TCP. Thiết bị Serial-Ethernet Modbus Gateway được thiết kế đặc biệt để hoạt động với các giao thức Modbus; hơn nữa, nó hoạt đông chính xác khi truyền thông các giao thức và giảm thiểu rủi ro mất dữ liệu.
Câu 5: Những điểm cần nắm sau bài viết này là gì?
- Sử dụng thiết bị Serial Device Server để tạo cổng COM ảo trên máy tính, theo đó giao thức vẫn giữ nguyên.
- Sử dụng dòng Serial-Ethernet Modbus Gateway để kết nối với thiết bị giao tiếp Modbus RTU (RS-232/485/422) và chuyển gói tin đó thành dàng Modbus TCP để phần mềm Scada có thể đọc được.
Đến đây quý Anh/Chị đã hiểu được thông tin về thiết bị giao tiếp cổng nối tiếp. Tất nhiên, tôi tin rằng Anh/Chị vẫn có rất nhiều câu hỏi cần giải đáp, nếu giải đáp của tôi chưa thuyết phục hãy email trực tiếp đến tôi để đặt câu hỏi và thảo luận nhé. Tôi sẵng sàng trao đổi với quý Anh/Chị. Xin cảm ơn,
Tác giả bài viết: Nguyễn Thành Duy (Mr.) Hotline: 0918364352
Giải pháp mạng công nghiệp.