PLC S7-1200 cung cấp các giải pháp truyền thông mạnh mẽ, linh hoạt. Và đa dạng phương thức truyền thông đang là nhu cầu thiết yếu trong các hệ thống tự động hóa công nghiệp hiện đại, mở ra cánh cửa cho việc tối ưu hóa quy trình sản xuất và nâng cao hiệu quả vận hành, đặc biệt khi cần giao tiếp S7-1200 với nhiều thiết bị ngoại vi.
Với khả năng kết nối đa điểm, chống nhiễu tốt và khoảng cách truyền xa, việc làm chủ công nghệ giao tiếp RS485 với dòng PLC S7-1200 của Siemens, thông qua các module như CM 1241 RS485 hoặc CB 1241 RS485 sẽ mang lại những lợi thế cho các kỹ sư và doanh nghiệp.
Hãy cùng Thanh Thiên Phú làm chủ giao tiếp S7-1200 và xây dựng hệ thống điều khiển thông minh, hiệu quả và đáp ứng nhu cầu lập trình điều khiển ngay thôi nào!
1. Truyền thông RS485 và PLC S7-1200
Trước khi đi sâu vào các chi tiết kỹ thuật, chúng ta cần nắm vững những khái niệm nền tảng về chuẩn giao tiếp RS485 và dòng PLC S7-1200. Đây là hai thành phần cốt lõi tạo nên giải pháp truyền thông PLC S7-1200 mạnh mẽ mà chúng ta đang tìm hiểu, một yếu tố quan trọng trong tự động hóa công nghiệp.
1.1. RS485 là gì?
RS485 hay còn gọi là TIA-485(-A) hoặc EIA-485, là một tiêu chuẩn truyền thông nối tiếp được phát triển bởi Hiệp hội Công nghiệp Điện tử (EIA). Điểm đặc biệt của RS485 là nó sử dụng kỹ thuật truyền tín hiệu vi sai đối xứng qua hai dây xoắn, giúp tăng cường khả năng chống nhiễu điện từ (EMI) và cho phép truyền dữ liệu ở khoảng cách xa hơn (lên đến 1200 mét) với tốc độ cao (lên đến 10 Mbps, tuy nhiên tốc độ thực tế phụ thuộc vào khoảng cách và chất lượng cáp). Đây là một trong những chuẩn truyền thông công nghiệp phổ biến.
Một ưu điểm nổi bật khác của RS485 là khả năng hỗ trợ mạng đa điểm (multi-drop), cho phép kết nối nhiều thiết bị (thường là 32 thiết bị tiêu chuẩn, có thể mở rộng lên đến 256 thiết bị với các bộ lặp tín hiệu hoặc driver trở kháng cao) trên cùng một bus hai dây. Điều này làm cho RS485 trở thành lựa chọn lý tưởng cho các ứng dụng công nghiệp, nơi cần kết nối nhiều cảm biến, cơ cấu chấp hành, và các bộ điều khiển với nhau, hình thành một hệ thống SCADA hiệu quả.
1.2. Khả năng tích hợp RS485 trên PLC S7-1200
Hầu hết các dòng CPU S7-1200 cơ bản không được nhà sản xuất tích hợp sẵn cổng RS485 vật lý trực tiếp trên thân máy. Thay vào đó, giao diện truyền thông chủ đạo mà chúng thường được trang bị là cổng truyền thông PROFINET cho PLC S7-1200, một chuẩn Ethernet công nghiệp mạnh mẽ, phục vụ cho các kết nối tốc độ cao và phức tạp hơn.
Tuy nhiên, Siemens có tầm nhìn chiến lược và sự thấu hiểu sâu sắc về tầm quan trọng của chuẩn RS485 trong các mạng truyền thông công nghiệp, đã rất linh hoạt trong việc cung cấp các giải pháp toàn diện. Nó cho phép PLC S7-1200 có thể dễ dàng giao tiếp và trao đổi dữ liệu thông qua chuẩn RS485 một cách hiệu quả.
Cần phải nhấn mạnh rằng, hiện tại không có model CPU S7-1200 tiêu chuẩn nào được tích hợp trực tiếp cổng RS485. Thay vào đó, khả năng giao tiếp này được bổ sung và hoàn thiện thông qua việc sử dụng các module mở rộng được thiết kế chuyên dụng, đảm bảo tính tương thích và hiệu suất tối ưu.
1.3. Module mở rộng RS485 cho S7-1200
Để PLC S7-1200 có thể giao tiếp được qua giao thức RS485 thì cần trang bị các module mở rộng. Và đây là bảng so sánh chi tiết về hai loại module mở rộng RS485 cho S7-1200:
Hạng mục | RS485 Communication Module (CM) | RS485 Communication Board (CB) |
Mã | CM 1241 RS485 6ES7241-1CH32-0XB0 | CB 1241 RS485 6ES7241-1CH30-1XB0 |
Vị trí lắp | Bên trái CPU S7-1200 (trên các khe cắm mở rộng) | Trực tiếp lên mặt trước CPU S7-1200 (nếu CPU có khe SB) |
Số lượng | Lên đến 3 module CM (tùy thuộc vào model CPU S7-1200) | Tối đa 1 bo mạch CB (trên các CPU có hỗ trợ khe SB) |
Kích thước | Lớn hơn, chiếm không gian của một module mở rộng đầy đủ | Nhỏ gọn, tích hợp trực tiếp, tiết kiệm không gian trong tủ điện |
Chi phí | Thường cao hơn | Thường thấp hơn, là giải pháp kinh tế hơn |
Hiệu suất & Tính năng | Thường có hiệu suất cao hơn, có thể hỗ trợ nhiều tính năng nâng cao | Đủ dùng cho các ứng dụng cơ bản, hiệu suất phù hợp |
Cách ly quang | Thường cung cấp khả năng cách ly quang tốt giữa giao diện và bus PLC | Có thể có, cần kiểm tra thông số kỹ thuật cụ thể |
Giao diện vật lý | Thường là terminal block dễ đấu nối hoặc cổng DB9 | Thường là terminal block |
Hỗ trợ giao thức | Modbus RTU (Master/Slave), USS, Freeport (ASCII) | Modbus RTU (Master/Slave), USS, Freeport (ASCII) |
Cấu hình Baud Rate | Linh hoạt (300 bps – 115.2 Kbps) | Linh hoạt (300 bps – 115.2 Kbps) |
Đèn LED | Có (TxD, RxD) | Có (TxD, RxD) |
Ứng dụng | Ứng dụng đòi hỏi hiệu suất cao, nhiều cổng, cần cách ly tốt, dự kiến mở rộng trong tương lai | Ứng dụng đơn giản, chỉ cần một cổng RS485, CPU có khe SB, ưu tiên tiết kiệm chi phí và không gian |
Lưu ý | Có thể gắn nhiều loại module CM khác nhau cùng lúc | Cần kiểm tra CPU S7-1200 có tương thích và có khe cắm SB hay không (thường từ CPU 1212C trở lên) |
Việc lựa chọn giữa CM 1241 RS485 và CB 1241 RS485 nên dựa trên sự cân nhắc kỹ lưỡng các yêu cầu cụ thể của dự án và khả năng của CPU S7-1200 đang sử dụng.
1.4. Ứng dụng PLC S7-1200 kết nối RS485
Sự kết hợp giữa chuẩn truyền thông RS485 và PLC S7-1200 không chỉ giải quyết bài toán kết nối đơn thuần mà còn mở ra một phổ ứng dụng rộng rãi, góp phần nâng cao hiệu quả và tự động hóa trong nhiều ngành công nghiệp. Mặc dù việc dùng RS485 cho mục đích lập trình PLC S7-1200 ít phổ biến do sự ưu tiên của kết nối Ethernet, nhưng khả năng giao tiếp này lại phát huy tối đa sức mạnh trong các tác vụ điều khiển và thu thập dữ liệu.
Một trong những ứng dụng tiêu biểu nhất là điều khiển biến tần (VFD) bằng PLC S7-1200 thông qua mạng RS485, và thường sử dụng giao thức Modbus RTU. Việc sử dụng RS485 qua giao thức Modbus RTU để điều khiển biến tần được thể hiện rõ trong các dự án lập trình điều khiển thang máy bằng PLC S7-1200. S7-1200 có thể gửi lệnh vận hành và nhận phản hồi từ nhiều biến tần giúp tối ưu hóa việc sử dụng năng lượng và điều khiển chính xác tốc độ động cơ trong các hệ thống bơm, quạt, băng tải. Tương tự, trong lĩnh vực điều khiển động cơ Servo và động cơ Bước, RS485 cho phép S7-1200 ra lệnh chính xác về vị trí, tốc độ và moment, đồng thời đọc về trạng thái của động cơ, rất quan trọng cho các máy CNC, robot và máy đóng gói.
Khả năng thu thập dữ liệu từ các cảm biến thông minh cũng là một thế mạnh đáng kể. S7-1200 có thể đọc dữ liệu từ hàng loạt cảm biến công nghiệp (nhiệt độ, áp suất, lưu lượng…) hỗ trợ Modbus RTU trên nền RS485, phục vụ cho việc giám sát quy trình, điều khiển, ghi log và cảnh báo. Điều này còn mở rộng sang việc kết nối với các đồng hồ đo lường điện năng, nước, gas để quản lý tài nguyên hiệu quả.
Bên cạnh đó, S7-1200 còn có thể giao tiếp với các bộ điều khiển chuyên dụng như bộ điều khiển nhiệt độ, bộ đếm, bộ định thời, tích hợp chúng vào một hệ thống tự động hóa lớn hơn. Ngay cả việc kết nối với màn hình HMI, đặc biệt với các HMI đời cũ, giá rẻ hoặc khi cần nhiều HMI đơn giản hiển thị thông tin từ các Slave trên cùng mạng RS485, thì RS485 vẫn là một giải pháp hữu hiệu.
Ngoài ra, với tính đa điểm của RS485 thì S7-1200 dễ dàng xây dựng mạng lưới các thiết bị đo lường và điều khiển phân tán trên một khu vực rộng. Đồng thời, nó cũng tạo điều kiện thuận lợi cho việc giao tiếp với các hệ thống của bên thứ ba như đầu đọc mã vạch, máy in công nghiệp, hoặc PLC của hãng khác (nếu hỗ trợ Modbus RTU Slave). Sự linh hoạt này khẳng định việc làm chủ truyền thông RS485 PLC S7-1200 là một bước tiến quan trọng, giúp các kỹ sư và doanh nghiệp kiến tạo những hệ thống tự động hóa thông minh và hiệu quả.
2. Truyền thông RS232 và PLC S7-1200
Bên cạnh sự phổ biến và mạnh mẽ của chuẩn RS485 trong các ứng dụng công nghiệp, chuẩn giao tiếp RS232 vẫn giữ một vị trí nhất định và là một lựa chọn truyền thông nối tiếp đáng cân nhắc, đặc biệt khi yêu cầu đặt ra là các kết nối điểm-điểm ở khoảng cách tương đối ngắn. Việc hiểu rõ cách thức PLC S7-1200 của Siemens hỗ trợ chuẩn RS232, cũng như các phương pháp để triển khai hiệu quả truyền thông RS232 S7-1200 hay cụ thể hơn là RS232 Siemens S7-1200, sẽ mang đến cho các kỹ sư và nhà phát triển hệ thống thêm một công cụ kết nối linh hoạt, đáp ứng đa dạng các yêu cầu của dự án.
2.1. RS232 là gì?
RS232 là viết tắt của Recommended Standard 232, đây là một tiêu chuẩn lâu đời và rất phổ biến cho việc truyền dữ liệu nối tiếp giữa các thiết bị điện tử. Nó được giới thiệu lần đầu vào những năm 1960 bởi Hiệp hội Công nghiệp Điện tử (EIA). Chuẩn này định nghĩa các đặc tính điện (mức điện áp), đặc tính cơ khí (kiểu đầu nối, sơ đồ chân), đặc tính chức năng (ý nghĩa của các tín hiệu) và các quy trình thủ tục cho việc trao đổi dữ liệu nhị phân nối tiếp không đồng bộ giữa một Thiết bị Đầu cuối Dữ liệu (DTE – Data Terminal Equipment, ví dụ như máy tính, PLC) và một Thiết bị Kết cuối Mạch Dữ liệu (DCE – Data Circuit-terminating Equipment, ví dụ như modem).
RS232 thực hiện việc truyền dữ liệu nối tiếp không đồng bộ, nghĩa là từng bit dữ liệu được gửi đi một cách tuần tự, kèm theo bit bắt đầu và bit kết thúc để đồng bộ hóa khung truyền. Nó được thiết kế chủ yếu cho các kết nối điểm-điểm, tức là giao tiếp giữa hai thiết bị duy nhất. Một điểm đáng chú ý là RS232 sử dụng mức điện áp tương đối cao so với các chuẩn logic TTL/CMOS, với logic ‘1’ (mark) có thể từ -3V đến -25V và logic ‘0’ (space) từ +3V đến +25V ở phía truyền, giúp cải thiện phần nào khả năng chống nhiễu.
Hơn nữa, RS232 hỗ trợ chế độ truyền song công (full-duplex), cho phép việc truyền và nhận dữ liệu có thể diễn ra đồng thời thông qua các đường dây tín hiệu riêng biệt là TXD (Transmit Data) và RXD (Receive Data).
Ưu điểm của RS232 bao gồm sự đơn giản và tính phổ biến rộng rãi. Là một trong những chuẩn nối tiếp đầu tiên, nó được hỗ trợ trên vô số thiết bị, đặc biệt là các thiết bị thế hệ cũ và các thiết bị ngoại vi không đòi hỏi kết nối phức tạp. Việc triển khai phần cứng và cáp nối cho RS232 thường có chi phí tương đối thấp, đồng thời việc cấu hình và đấu nối cho một kết nối điểm-điểm RS232 giữa hai thiết bị cũng khá đơn giản và dễ thực hiện.
Ngoài ra, RS232 còn định nghĩa nhiều tín hiệu điều khiển luồng phần cứng (Hardware Flow Control) như RTS, CTS, DTR, DSR, DCD, bên cạnh các đường dữ liệu chính, giúp quản lý việc truyền dữ liệu một cách hiệu quả hơn trong một số ứng dụng cụ thể, tránh tình trạng mất mát dữ liệu do tràn bộ đệm.
Tuy nhiên, RS232 cũng có những hạn chế như khoảng cách truyền ngắn (thường dưới 15 mét), tốc độ truyền giới hạn (thường tối đa khoảng 115.2 Kbps, giảm khi khoảng cách tăng), và dễ bị ảnh hưởng bởi nhiễu điện từ hơn so với các chuẩn truyền vi sai.
2.2. Khả năng tích hợp RS232 trên PLC S7-1200
Tương tự như RS485, các dòng CPU S7-1200 cơ bản trên thị trường hiện nay không được nhà sản xuất Siemens tích hợp sẵn cổng giao tiếp RS232 vật lý trực tiếp trên thân máy. Giao diện truyền thông chính mà các CPU này được trang bị theo mặc định vẫn là cổng PROFINET, một chuẩn Ethernet công nghiệp tốc độ cao, phục vụ cho các nhu cầu kết nối mạng phức tạp và truyền tải lượng lớn dữ liệu.
Do đó, để PLC S7-1200 có thể thực hiện việc giao tiếp và trao đổi dữ liệu thông qua chuẩn RS232, người dùng bắt buộc phải trang bị thêm các module mở rộng chuyên dụng được thiết kế riêng cho mục đích này.
2.3. Module mở rộng RS232 cho S7-1200
Để PLC S7-1200 có thể giao tiếp bằng chuẩn RS232, Siemens cung cấp các module mở rộng, gồm hai loại chính là Communication Modules (CM) và Communication Boards (CB). Cụ thể:
Hạng mục | RS232 CM | RS232 CB |
Mã | CM 1241 RS232 6ES7241-1AH32-0XB0 | CB 1241 RS232 |
Vị trí lắp | Bên trái CPU S7-1200 (trên các khe cắm mở rộng) | Trực tiếp lên mặt trước CPU S7-1200 (nếu CPU có khe SB) |
Giao diện vật lý | Thường là cổng DB9 đực (male connector) | Thường là cổng DB9 đực (male connector) |
Chế độ truyền | Song công (Full-duplex) | Song công (Full-duplex) |
Hỗ trợ giao thức | Freeport (ASCII), Modbus RTU (Master/Slave – cho kết nối điểm-điểm) | Freeport (ASCII), Modbus RTU (Master/Slave – cho kết nối điểm-điểm) |
Cấu hình Baud Rate | Linh hoạt (300 bps – 115.2 Kbps) | Linh hoạt (300 bps – 115.2 Kbps) |
Cách ly quang | Thường được trang bị để tăng độ tin cậy và bảo vệ PLC | Có thể có, cần kiểm tra thông số kỹ thuật cụ thể của từng mã sản phẩm |
Lưu ý | Phù hợp khi cần nhiều cổng, các tính năng nâng cao của dòng CM, hoặc khi không gian không phải là ưu tiên hàng đầu | Giải pháp nhỏ gọn, tiết kiệm chi phí cho nhu cầu một cổng RS232, yêu cầu CPU S7-1200 phải có hỗ trợ khe cắm SB |
2.4. Ứng dụng PLC S7-1200 sử dụng RS232
Mặc dù chuẩn giao tiếp RS232 có những hạn chế nhất định so với RS485, đặc biệt là về khoảng cách truyền dữ liệu (thường được khuyến nghị dưới 15 mét để đảm bảo tín hiệu hoạt động ổn định và đáng tin cậy) và việc nó không hỗ trợ kết nối đa điểm (chỉ cho phép kết nối giữa hai thiết bị duy nhất tại một thời điểm), RS232 vẫn giữ một vai trò quan trọng và chứng tỏ được sự hữu ích của mình trong nhiều kịch bản ứng dụng cụ thể trong môi trường công nghiệp.
Một trong những ứng dụng phổ biến nhất là kết nối với các thiết bị cũ hơn. Rất nhiều thiết bị công nghiệp thuộc các thế hệ trước, ví dụ như một số loại máy quét mã vạch (barcode scanner) chuyên dụng, các hệ thống cân điện tử (weighing scales) chính xác, một số dòng máy in nhãn công nghiệp (label printers), hoặc các thiết bị đo lường đặc thù, thường chỉ được trang bị cổng giao tiếp RS232.
Bên cạnh đó, RS232 cũng thường được sử dụng cho mục đích giao tiếp trực tiếp với máy tính cá nhân (PC). Điều này rất hữu ích cho các ứng dụng yêu cầu cấu hình thông số thiết bị, thu thập một lượng dữ liệu đơn giản, thực hiện các tác vụ gỡ lỗi (debugging) trong quá trình phát triển chương trình, hoặc chẩn đoán trạng thái hoạt động của PLC và các thiết bị kết nối, đặc biệt khi máy tính đó được trang bị sẵn cổng COM RS232 vật lý và khoảng cách kết nối giữa PLC và PC là ngắn.
Mặc dù ngày nay việc này ít phổ biến hơn do sự phát triển mạnh mẽ của các công nghệ truyền thông không dây và kết nối Ethernet tốc độ cao, nhưng về mặt lý thuyết, S7-1200 vẫn có thể tận dụng cổng RS232 để kết nối với các loại modem nối tiếp, bao gồm cả modem analog truyền thống hoặc các modem di động GSM/GPRS. Khả năng này cho phép truyền dữ liệu của PLC qua đường dây điện thoại hoặc mạng di động, phục vụ cho các ứng dụng giám sát và điều khiển từ xa ở những địa điểm không có sẵn hạ tầng mạng lưới khác, hoặc khi chi phí triển khai các giải pháp mạng khác là quá cao.
Trong nhiều trường hợp thì RS232 là lựa chọn lý tưởng để điều khiển các thiết bị ngoại vi đơn lẻ không yêu cầu băng thông lớn hay các tính năng mạng phức tạp. Ví dụ điển hình bao gồm việc tự động hóa điều khiển một máy chiếu trong một phòng họp thông minh, quản lý hiển thị thông tin trên một bộ hiển thị LED đơn giản, hoặc giao tiếp với một bộ điều khiển nhỏ lẻ khác chỉ yêu cầu một kết nối điểm-điểm đơn giản và đáng tin cậy.
Cuối cùng, khi khoảng cách giữa PLC và thiết bị ngoại vi là ngắn và yêu cầu về tốc độ truyền dữ liệu không quá cao, RS232 có thể là một giải pháp đủ dùng và mang lại hiệu quả kinh tế, giúp tiết kiệm chi phí đầu tư ban đầu so với việc phải triển khai các chuẩn giao tiếp phức tạp và đắt đỏ hơn.
3. Giao thức Modbus RTU và PLC S7-1200
Sau khi tìm hiểu về các chuẩn giao tiếp vật lý RS485 và RS232 (là các chuẩn định nghĩa lớp vật lý và lớp liên kết dữ liệu của mô hình OSI), chúng ta sẽ đi sâu vào Modbus RTU – một giao thức truyền thông lớp ứng dụng cực kỳ phổ biến, được xây dựng và hoạt động hiệu quả trên nền tảng của hai chuẩn này, đặc biệt là RS485, khi kết hợp với PLC S7-1200 để thực hiện truyền thông Modbus RTU S7-1200.
3.1. Modbus RTU là gì?
Modbus là một giao thức truyền thông nối tiếp được khai sinh bởi Modicon (một công ty hiện nay đã thuộc sở hữu của Schneider Electric) vào năm 1979, với mục đích ban đầu là để sử dụng với các bộ điều khiển logic khả trình (PLC) do chính hãng sản xuất.
Trong Modbus RTU thì dữ liệu được truyền dưới dạng nhị phân (binary), mỗi byte (8 bit) tương ứng một ký tự, giúp tăng hiệu quả so với Modbus ASCII (dùng hai ký tự cho một byte). Giao thức này hoạt động theo mô hình Master-Slave: Master chủ động gửi yêu cầu (đọc/ghi dữ liệu) đến Slave, và chỉ một Master được phép hoạt động tại một thời điểm. PLC S7-1200 thường đóng vai trò Master. Slave là thiết bị thụ động, lắng nghe và phản hồi yêu cầu từ Master nếu đúng địa chỉ (1-247); các thiết bị như biến tần, cảm biến thường là Slave.
Cấu trúc gói tin (frame) của Modbus RTU rất rõ ràng, bao gồm: Địa chỉ Slave (1 byte), Mã hàm (1 byte – xác định hành động như đọc/ghi thanh ghi, coil), Dữ liệu (số byte thay đổi, chứa địa chỉ/số lượng/giá trị thanh ghi), và Mã kiểm tra lỗi CRC (2 byte – Cyclic Redundancy Check) để đảm bảo tính toàn vẹn dữ liệu. Các gói tin được phân cách bằng một khoảng thời gian im lặng tối thiểu 3.5 lần thời gian truyền một ký tự.
Nhờ vào những ưu điểm vượt trội như tính đơn giản trong cấu trúc, bản chất là một cấu trúc mở (không độc quyền và không yêu cầu chi phí bản quyền), sự dễ dàng trong việc triển khai trên nhiều nền tảng phần cứng khác nhau, cùng với độ tin cậy cao đã được chứng minh trong môi trường công nghiệp khắc nghiệt, Modbus đã nhanh chóng vượt ra ngoài phạm vi của Modicon để trở thành một tiêu chuẩn de facto trong ngành.
Mặc dù Modbus có nhiều biến thể khác nhau để đáp ứng các nhu cầu truyền thông đa dạng, phiên bản Modbus RTU (Remote Terminal Unit) vẫn là lựa chọn phổ biến nhất khi nói đến truyền thông nối tiếp qua các đường truyền vật lý như RS485, RS232, hay RS422.
3.2. Khả năng hỗ trợ Modbus RTU trên PLC S7-1200
PLC S7-1200 của Siemens có khả năng hỗ trợ toàn diện giao thức Modbus RTU, cho phép nó linh hoạt đảm nhận cả vai trò Master lẫn Slave trong một mạng truyền thông. Tuy nhiên, một điểm quan trọng cần lưu ý là S7-1200 không được tích hợp sẵn cổng nối tiếp RS485 hay RS232 trực tiếp trên thân CPU mà cần phải sử dụng thêm các module mở rộng.
Do đó, để có thể triển khai hiệu quả truyền thông Modbus RTU, việc sử dụng các module mở rộng truyền thông nối tiếp chuyên dụng là điều bắt buộc. Cụ thể, khi cần S7-1200 giao tiếp Modbus RTU, các module như CM 1241 RS485 hoặc CB 1241 RS485 thường là lựa chọn hàng đầu và mạnh mẽ nhất; chúng cung cấp cổng vật lý RS485, tạo điều kiện cho S7-1200 kết nối với nhiều thiết bị Slave trên một mạng bus có chiều dài đáng kể và khả năng chống nhiễu tốt. Trong trường hợp cần S7-1200 giao tiếp Modbus RTU với một thiết bị Slave duy nhất thông qua kết nối điểm-điểm RS232, đặc biệt với các thiết bị chỉ hỗ trợ cổng này, thì các module CM 1241 RS232 hoặc CB 1241 RS232 sẽ được sử dụng.
Phần mềm lập trình PLC S7-1200 (TIA Portal) của Siemens đóng vai trò trung tâm trong việc cấu hình và lập trình truyền thông Modbus RTU cho S7-1200. Nó cung cấp các khối hàm (Function Blocks) tích hợp sẵn và được tối ưu hóa, giúp đơn giản hóa đáng kể quá trình phát triển:
– MB_COMM_LOAD dùng để khởi tạo và cấu hình các thông số cơ bản cho cổng truyền thông nối tiếp (baud rate, parity, data bits, stop bits) mà Modbus RTU sẽ sử dụng. Khối này thường được gọi một lần khi PLC khởi động hoặc khi cần thay đổi động các thông số cổng.
– MB_MASTER cho phép PLC S7-1200 hoạt động như một Modbus RTU Master. Nó chịu trách nhiệm gửi các yêu cầu đọc (ví dụ: mã hàm 03 để đọc Holding Registers) hoặc ghi (ví dụ: mã hàm 06 để ghi một Holding Register, mã hàm 16 để ghi nhiều Holding Registers) dữ liệu đến các thiết bị Slave đã được định địa chỉ.
– MB_SLAVE cho phép PLC S7-1200 hoạt động như một Modbus RTU Slave. Nó sẽ lắng nghe và xử lý các yêu cầu đến từ một thiết bị Modbus Master khác trên mạng (ví dụ: một PC chạy phần mềm SCADA, một PLC khác, hoặc một HMI).
Bảng tóm tắt vai trò của các module khi sử dụng với Modbus RTU trên S7-1200:
Loại | Chuẩn vật lý | Vai trò | Đặc điểm |
CM 1241 RS485 | RS485 | Master hoặc Slave | Mạng đa điểm, khoảng cách xa, chống nhiễu tốt, nhiều Slave |
CB 1241 RS485 | RS485 | Master hoặc Slave | Mạng đa điểm, nhỏ gọn, tiết kiệm chi phí, nhiều Slave |
CM 1241 RS232 | RS232 | Master hoặc Slave | Kết nối điểm-điểm, khoảng cách ngắn, một Slave duy nhất |
CB 1241 RS232 | RS232 | Master hoặc Slave | Kết nối điểm-điểm, nhỏ gọn, tiết kiệm chi phí, một Slave |
Việc cấu hình đúng các thông số cho module truyền thông trong TIA Portal (Hardware Configuration) và sử dụng chính xác các khối hàm Modbus là chìa khóa để thiết lập một kết nối Modbus RTU ổn định và đáng tin cậy.
4. Hướng dẫn kết nối phần cứng RS232, RS485, PLC S7-1200 với thiết bị khác
Việc kết nối phần cứng chính xác là bước nền tảng tối quan trọng để đảm bảo truyền thông ổn định và thành công. Thanh Thiên Phú sẽ hướng dẫn chi tiết về cách đấu nối PLC S7-1200 (sử dụng module CM/CB 1241) với PC (cho mục đích cấu hình, giám sát bằng phần mềm hoặc bộ chuyển đổi) và các thiết bị ngoại vi (như biến tần, cảm biến) qua chuẩn RS232 và RS485.
4.1. Nguyên tắc an toàn trong quá trình đấu nối
Trước khi tiến hành bất kỳ thao tác đấu nối phần cứng nào, việc tuân thủ nghiêm ngặt các quy tắc an toàn là điều kiện tiên quyết để bảo vệ cả con người và thiết bị. Đầu tiên và quan trọng nhất, phải ngắt hoàn toàn nguồn điện (Power OFF) cung cấp cho PLC S7-1200, các module truyền thông, máy tính PC, và tất cả các thiết bị ngoại vi có liên quan trước khi thực hiện cắm hoặc rút bất kỳ dây cáp nào.
Tiếp theo, cần sử dụng các dụng cụ phù hợp và đảm bảo chúng ở trong tình trạng tốt, cách điện an toàn, ví dụ như tua vít, kìm tuốt dây, đồng hồ vạn năng. Một việc không thể bỏ qua là tham khảo kỹ lưỡng tài liệu kỹ thuật (Manuals) được cung cấp bởi nhà sản xuất của PLC S7-1200, module truyền thông (CM 1241, CB 1241), máy tính PC (nếu sử dụng cổng COM vật lý), các bộ chuyển đổi USB-to-Serial, và đặc biệt là tài liệu của các thiết bị ngoại vi. Những tài liệu này chứa đựng thông tin vô cùng chính xác về ký hiệu chân cắm, yêu cầu về loại cáp, và các lưu ý quan trọng khác trong quá trình lắp đặt.
Cuối cùng, nếu bạn cảm thấy không chắc chắn về bất kỳ bước nào hoặc chưa có nhiều kinh nghiệm, đừng ngần ngại tìm kiếm sự hỗ trợ từ những người có chuyên môn hoặc liên hệ trực tiếp với bộ phận hỗ trợ kỹ thuật của thanhthienphu.vn để được hướng dẫn.
4.2. Kết nối RS485 giữa PLC S7-1200 và thiết bị ngoại vi
Chuẩn kết nối RS485 phổ biến nhất trong công nghiệp là loại 2 dây, hoạt động ở chế độ bán song công (half-duplex). Quá trình kết nối bao gồm việc xác định đúng các chân tín hiệu trên cả module S7-1200 (thường là A/Data+ và B/Data-, cùng với chân GND/M/SG nếu có) và trên thiết bị ngoại vi. Đồng thời phải luôn tham khảo tài liệu của nhà sản xuất để tránh đấu sai cực tính, cùng không được chủ quan mà bỏ qua các tài liệu về PLC S7-1200.
Việc lựa chọn cáp cũng rất quan trọng; nên ưu tiên sử dụng cáp xoắn đôi có vỏ bọc chống nhiễu (STP) với trở kháng đặc tính khoảng 100-120 Ohm. Khi đấu nối, chân A của S7-1200 sẽ nối với chân A của thiết bị ngoại vi, tương tự cho chân B. Nếu có chân GND/M/SG, việc nối chúng lại với nhau sẽ giúp cải thiện khả năng chống nhiễu. Vỏ bọc chống nhiễu của cáp STP chỉ nên được nối đất ở một đầu duy nhất của đoạn cáp để tránh tạo vòng lặp đất.
Khi kết nối nhiều thiết bị Slave, phương pháp “daisy chain” (nối tiếp từ thiết bị này sang thiết bị kế tiếp) được khuyến nghị, tránh kiểu “hình sao” hoặc các nhánh dài. Một yếu tố cực kỳ quan trọng trong mạng RS485, đặc biệt với đường truyền dài hoặc tốc độ cao, là việc sử dụng điện trở đầu cuối (Termination Resistor) có giá trị tiêu chuẩn 120 Ohm. Điện trở này được đặt song song giữa hai dây tín hiệu A và B tại hai thiết bị nằm ở hai đầu xa nhất về mặt vật lý của bus truyền thông để ngăn chặn phản xạ tín hiệu. Nhiều module và thiết bị hiện đại có tích hợp sẵn công tắc để kích hoạt điện trở này; nếu không, cần tự đấu thêm.
4.3. Kết nối RS232 giữa PLC S7-1200 và PC hoặc thiết bị ngoại vi
Chuẩn kết nối RS232 thường sử dụng đầu cắm DB9 và được thiết kế cho các kết nối điểm-điểm. Việc đầu tiên là xác định các chân tín hiệu quan trọng trên module S7-1200 (CM/CB 1241 RS232), thường là chân 2 (RXD), chân 3 (TXD), và chân 5 (GND) trên cổng DB9 đực (DTE).
Tương tự, cần xác định cấu hình chân của PC hoặc thiết bị ngoại vi. Loại cáp sử dụng sẽ phụ thuộc vào thiết bị kết nối: nếu kết nối S7-1200 (DTE) với PC (cũng là DTE), cần dùng cáp chéo (null modem cable) để chân RXD của thiết bị này nối với TXD của thiết bị kia và ngược lại. Nếu kết nối S7-1200 (DTE) với một thiết bị ngoại vi DCE (ví dụ: modem), sẽ cần dùng cáp thẳng (straight-through cable) nơi các chân tương ứng được nối trực tiếp.
4.4. Kết nối PLC S7-1200 với PC qua bộ chuyển đổi USB-to-Serial
Trong trường hợp máy tính không có cổng COM (RS232/RS485) vật lý, việc sử dụng một bộ chuyển đổi USB sang RS485 hoặc USB sang RS232 là giải pháp phổ biến. Bước đầu tiên là cài đặt driver cho bộ chuyển đổi trên PC, thường được cung cấp bởi nhà sản xuất. Sau khi cài đặt thành công, một cổng COM ảo sẽ xuất hiện trong Device Manager của Windows.
Tiếp theo, kết nối bộ chuyển đổi với module S7-1200 tương ứng (USB-to-RS485 nối với CM/CB 1241 RS485, USB-to-RS232 nối với CM/CB 1241 RS232 bằng cáp phù hợp). Cuối cùng, trong phần mềm TIA Portal hoặc các phần mềm giám sát/terminal khác, bạn cần cấu hình cổng COM ảo này với các thông số truyền thông (baud rate, parity, data bits, stop bits) cho phù hợp với thiết bị S7-1200.
5. Hướng dẫn thiết lập Modbus RTU và PLC S7-1200 trên TIA Portal
Sau khi đã hoàn tất việc kết nối phần cứng một cách cẩn trọng và chính xác, bước tiếp theo và không kém phần quan trọng là thực hiện cấu hình và lập trình cho truyền thông Modbus RTU trên PLC S7-1200 bằng phần mềm TIA Portal.
Hướng dẫn này sẽ tập trung chủ yếu vào việc cấu hình S7-1200 hoạt động ở vai trò Modbus RTU Master, một kịch bản ứng dụng rất phổ biến, nơi PLC chủ động khởi tạo giao tiếp để đọc hoặc ghi dữ liệu với các thiết bị Slave như biến tần, cảm biến hoặc đồng hồ đo.
5.1. Chuẩn bị cần thiết trước khi cấu hình
Trước khi bắt đầu, cần đảm bảo đã chuẩn bị đầy đủ các yêu cầu cần thiết. Về phần mềm, máy tính của bạn cần được cài đặt phiên bản TIA Portal phù hợp (ví dụ: V15, V16, V17, V18, V19 hoặc mới hơn).
Còn về phần cứng thì cần PLC S7-1200 (ví dụ chọn S7-1200 DC/DC/DC, CPU 1214C 6ES7214-1AG40-0XB0) cần được kết nối với máy tính qua cổng Ethernet (PROFINET) để có thể tải chương trình và thực hiện giám sát.
Quan trọng nhất, PLC phải được lắp đặt module truyền thông nối tiếp tương ứng, chẳng hạn như CM 1241 RS485 hoặc CB 1241 RS485 nếu bạn dự định sử dụng Modbus RTU qua giao diện RS485, hoặc các module tương tự cho RS232 nếu cần.
Ngoài ra, bạn cần có đầy đủ thông tin chi tiết về các thiết bị Slave sẽ giao tiếp, bao gồm địa chỉ Modbus của từng thiết bị (Slave ID, thường từ 1 đến 247), các thông số truyền thông cơ bản của Slave (tốc độ baud, chế độ chẵn lẻ parity, số bit dữ liệu, số bit dừng – những thông số này phải được cài đặt giống hệt nhau trên cả Master PLC và tất cả các Slave), và đặc biệt là bản đồ thanh ghi Modbus (Modbus Register Map) của từng thiết bị Slave, bao gồm địa chỉ các thanh ghi cần đọc hoặc ghi, loại thanh ghi (Coil, Discrete Input, Input Register, Holding Register), và kiểu dữ liệu của chúng.
5.2. Các bước cấu hình phần cứng trong TIA Portal
Quy trình thiết lập trong TIA Portal bao gồm nhiều bước. Đầu tiên, bạn cần tạo một Project mới hoặc mở Project hiện có, sau đó thêm thiết bị (Add new device) bằng cách chọn đúng loại CPU S7-1200 đang sử dụng và phiên bản firmware tương thích. Sau khi CPU được thêm vào, trong giao diện “Device view”, bạn sẽ tìm đến “Hardware catalog” để thêm module truyền thông nối tiếp (ví dụ: CM 1241 RS485) vào khe cắm phù hợp trên CPU.
Bước tiếp theo là cấu hình các thông số cho module truyền thông vừa thêm trong Hardware Configuration. Khi chọn module trong “Device view”, cửa sổ “Properties” sẽ hiện ra, cho phép bạn thiết lập các thông số quan trọng trong mục “Port configuration” hoặc “Interface”. Tại đây, bạn cần chọn “Protocol” là “Modbus”, “Mode” là “RTU Master” (nếu S7-1200 làm Master).
Các thông số như “Baud rate”, “Parity”, “Data bits”, “Stop bits” phải được cài đặt sao cho giống hệt với các thiết bị Slave. Thông số “Response timeout (ms)” – thời gian tối đa PLC Master chờ phản hồi từ Slave – cũng cần được đặt một giá trị hợp lý, ví dụ 1000 ms. Một thông tin cực kỳ quan trọng cần ghi nhớ hoặc sao chép từ mục “System constants” của module là giá trị Hardware identifier (HW ID) của cổng truyền thông này (ví dụ: 269 hoặc một tên symbolic như Local~CM_1241_RS485_1~Com_Port), vì nó sẽ được sử dụng làm đầu vào PORT cho các khối hàm Modbus trong chương trình.
5.3. Lập trình truyền thông Modbus RTU với các khối hàm
Sau khi cấu hình phần cứng hoàn tất, công việc chính sẽ chuyển sang lập trình sử dụng các khối hàm Modbus trong Program Blocks. PLC Siemens cung cấp các khối hàm (FB) tiện lợi trong thư viện chuẩn của TIA Portal (Instructions > Communication > MODBUS (RTU)). Hai khối hàm chính thường được sử dụng khi S7-1200 làm Master là MB_COMM_LOAD (để khởi tạo và cấu hình cổng truyền thông) và MB_MASTER (để thực hiện các yêu cầu đọc/ghi Modbus).
Việc gọi khối MB_COMM_LOAD (thông qua Instance DB của nó, ví dụ MB_COMM_LOAD_DB_Instance) thường được thực hiện một lần trong khối OB100 (Startup) để khởi tạo cổng khi PLC bắt đầu chạy. Các chân đầu vào quan trọng của khối này bao gồm REQ (chân kích hoạt), PORT (HW ID của module truyền thông), BAUD, PARITY, và MB_DB (thường là Instance DB của khối MB_MASTER sẽ được sử dụng).
Tiếp theo, khối MB_MASTER (thông qua Instance DB của nó, ví dụ MB_MASTER_DB_Instance) sẽ được gọi trong khối OB1 (Main) hoặc một Function (FC) được gọi từ OB1 để thực hiện các giao dịch Modbus. Các chân đầu vào chính bao gồm REQ (chân kích hoạt gửi yêu cầu, nên dùng xung sườn lên hoặc điều khiển theo chu kỳ), MB_ADDR (địa chỉ Slave), MODE (0 cho đọc, 1 cho ghi), DATA_ADDR (địa chỉ thanh ghi/coil trên Slave), DATA_LEN (số lượng thanh ghi/coil cần đọc/ghi), DATA_PTR (con trỏ đến vùng nhớ trong PLC S7-1200 để lưu dữ liệu đọc về hoặc chứa dữ liệu ghi đi), và PORT (HW ID của module). Các chân đầu ra như DONE, BUSY, ERROR, STATUS của cả hai khối hàm này rất quan trọng để theo dõi trạng thái, quản lý luồng thực thi và gỡ lỗi.
Để lưu trữ dữ liệu đọc từ Slave hoặc dữ liệu chuẩn bị ghi xuống Slave, bạn cần tạo một Data Block (DB) toàn cục (Global DB) trong “Program blocks”. Trong DB này, hãy khai báo các biến với kiểu dữ liệu phù hợp (ví dụ: Array[0..N] of Word). Tham số DATA_PTR của khối MB_MASTER sẽ trỏ đến các biến này.
5.4. Quản lý luồng thực thi và lưu ý khi gọi khối hàm Modbus
Một điểm cực kỳ quan trọng là quản lý việc gọi các khối hàm Modbus một cách hợp lý (Sequencing). Không nên kích hoạt REQ của MB_MASTER liên tục trong mỗi chu kỳ quét vì điều này sẽ làm quá tải bus Modbus và có thể gây lỗi. Thay vào đó, chỉ nên gửi một yêu cầu Modbus khi khối MB_MASTER không bận (BUSY = FALSE) và yêu cầu trước đó đã hoàn thành (đã xử lý xong trạng thái DONE hoặc ERROR).
Nếu cần giao tiếp với nhiều thiết bị Slave hoặc đọc/ghi nhiều vùng dữ liệu khác nhau trên cùng một Slave, việc xây dựng một bộ tuần tự (sequencer) sử dụng máy trạng thái (state machine) là cần thiết. Bộ tuần tự này sẽ quản lý việc gửi các yêu cầu Modbus một cách lần lượt, đảm bảo không có xung đột và tối ưu hóa việc sử dụng bus truyền thông.
Dưới đây là bảng tóm tắt ví dụ cấu hình thông số cho các khối hàm Modbus (giả định tên Instance DB):
Khối hàm | Tham số đầu vào | Giá trị (ví dụ) | Mô tả |
MB_COMM_LOAD_DB_Instance | REQ | TRUE (trong OB100) / Xung sườn lên | Kích hoạt cấu hình cổng |
PORT | 269 (hoặc tên symbolic từ HW Config) | ID cổng vật lý của module truyền thông | |
BAUD | 9600 | Tốc độ baud (ví dụ: 9600, 19200, 38400 bps) | |
PARITY | 2 (Even) | Kiểu Parity (0=None, 1=Odd, 2=Even) | |
MB_DB | MB_MASTER_DB_Instance | Tham chiếu đến Instance DB của khối MB_MASTER sẽ sử dụng cổng này | |
MB_MASTER_DB_Instance | REQ | Trigger_Modbus_Request_Bit (xung sườn lên) | Kích hoạt gửi yêu cầu Modbus đến Slave |
MB_ADDR | 1 | Địa chỉ Modbus của thiết bị Slave (1-247) | |
MODE | 0 (Đọc) hoặc 1 (Ghi) | Chế độ hoạt động (đọc dữ liệu hoặc ghi dữ liệu) | |
DATA_ADDR | 40001 (hoặc 1 cho Holding Register đầu tiên) | Địa chỉ thanh ghi/coil bắt đầu trên thiết bị Slave | |
DATA_LEN | 5 | Số lượng thanh ghi (words) hoặc coils cần đọc/ghi | |
DATA_PTR | “Modbus_Slave_Data_DB”.HoldingRegs[0] | Con trỏ tới vùng nhớ trong PLC để trao đổi dữ liệu | |
PORT | 269 (hoặc tên symbolic từ HW Config) | ID cổng vật lý của module truyền thông |
5.5. Kiểm tra, gỡ lỗi và các sự cố thường gặp
Cuối cùng, sau khi hoàn tất cấu hình phần cứng và lập trình, bạn cần Compile (biên dịch) cả phần cứng và phần mềm, sau đó Tải (Download to device) chương trình và cấu hình xuống PLC S7-1200. Chuyển PLC sang chế độ RUN và sử dụng công cụ “Watch and force table” trong TIA Portal để kiểm tra và gỡ lỗi (Testing & Debugging), giám sát trực tuyến các bit trạng thái (DONE, BUSY, ERROR) và giá trị STATUS của các khối hàm Modbus. Kiểm tra xem dữ liệu có được đọc về hoặc ghi đi chính xác trong Global DB hay không. Nếu có lỗi (bit ERROR = TRUE), hãy kiểm tra giá trị của STATUS. Tài liệu của Siemens (System Manual cho S7-1200 hoặc Help của TIA Portal) cung cấp bảng mô tả chi tiết các mã lỗi (status codes) này, giúp bạn xác định nguyên nhân sự cố.
Các lỗi thường gặp có thể liên quan đến đấu nối phần cứng không chính xác (sai cực tính, lỏng cáp), sai thông số truyền thông (baud rate, parity không khớp giữa Master và Slave), sai địa chỉ Slave hoặc địa chỉ thanh ghi, module truyền thông chưa được cấu hình đúng trong Hardware Configuration, gọi khối MB_MASTER quá nhanh hoặc không quản lý REQ đúng cách, vấn đề về nguồn hoặc trạng thái của thiết bị Slave, hoặc ảnh hưởng của nhiễu điện từ trong môi trường công nghiệp.
6. Thanh Thiên Phú chuyên tư vấn giải pháp truyền thông PLC S7-1200
Thanh Thiên Phú là Đại lý Siemens tại Việt Nam, chúng tôi chuyên cung cấp các sản phẩm PLC S7-1200, module truyền thông (CM/CB 1241 RS485/RS232) Siemens chính hãng và các thiết bị tự động hóa chất lượng cao.
Chúng tôi không chỉ mang đến sản phẩm với giá cả cạnh tranh mà còn đồng hành cùng quý vị kỹ sư và doanh nghiệp bằng dịch vụ tư vấn kỹ thuật chuyên sâu, giải pháp tối ưu và hỗ trợ hậu mãi tận tâm.
Để có thể nâng cấp hệ thống tự động hóa với các giải pháp truyền thông RS485, RS232, Modbus RTU và PLC S7-1200. Hãy kết nối với đội ngũ chuyên gia của Thanh Thiên Phú ngay hôm nay!
- Hotline tư vấn & đặt hàng: 08.12.77.88.99
- Website: https://thanhthienphu.vn
- Địa chỉ: 20 đường 29, Khu phố 2, Phường Cát Lái, Thành phố Thủ Đức, Thành phố Hồ Chí Minh