Lỗi giao tiếp biến tần và PLC: nguyên nhân và cách xử lý
Lỗi giao tiếp biến tần và PLC là tình trạng PLC không điều khiển được biến tần, hoặc không nhận được phản hồi từ biến tần. Nghe như một lỗi duy nhất, nhưng đằng sau có nhiều hướng khác nhau, từ cáp RS485 lỏng đến một đầu ra relay của PLC đã mòn. Bài viết này sắp xếp lỗi giao tiếp theo đúng thứ tự chẩn đoán ngoài xưởng: biết hệ thống đang điều khiển bằng cách nào, chia nhóm lỗi, rồi xử lý từng nhóm.
Lỗi giao tiếp biến tần và PLC là gì? Chẩn đoán nhanh theo triệu chứng
PLC điều khiển biến tần thì dữ liệu đi cả hai chiều: PLC gửi lệnh chạy và tần số đặt, biến tần gửi về trạng thái, tần số thực, dòng điện và mã lỗi. Khi một chiều bị đứt, triệu chứng sẽ khác nhau, và triệu chứng chính là dữ liệu chẩn đoán nhanh nhất. Bảng dưới đây đối chiếu triệu chứng với nhóm lỗi nghi ngờ, dùng trước khi mở tủ điện.
| Triệu chứng | Nhóm nghi ngờ |
|---|---|
| Biến tần báo lỗi truyền thông, PLC không nhận phản hồi, đèn truyền thông không nháy | Đấu nối, sai thông số |
| Chạy đúng một lúc rồi mất, hoặc rớt khi motor có tải | Nhiễu EMC |
| Đọc được dữ liệu nhưng ghi lệnh không có tác dụng, biến tần không chạy | Nguồn lệnh |
| PLC nhận mã exception, hoặc giá trị đọc ra sai, lệch tỉ lệ | Sai ánh xạ thanh ghi |
| Lúc thông lúc không, lỗi khi PLC chuyển RUN/STOP, biến tần báo lỗi sau thời gian im lặng | Chương trình, timing |
| Chạy tay được, chạy tự động không chạy; hoặc tần số analog bị lệch | Tín hiệu cứng DI/DO/analog |
PLC điều khiển biến tần theo những cách nào
Trước khi tìm lỗi, phải biết hệ thống đang đi bằng đường nào, vì cùng một triệu chứng "biến tần không chạy" nhưng cách kiểm tra khác hẳn nhau. Trong thực tế hay gặp kiểu kết hợp: lệnh chạy và dừng đi bằng tín hiệu cứng cho an toàn, tần số đặt qua analog hoặc truyền thông, còn trạng thái và mã lỗi đọc ngược về PLC qua truyền thông.
| Cách điều khiển | Truyền được gì | Lỗi hay gặp |
|---|---|---|
| Tín hiệu cứng DI/DO | Chạy/dừng, chọn cấp tốc độ, reset | Đầu ra PLC hỏng, sai sink/source, tiếp điểm mòn |
| Analog 0–10V / 4–20mA | Tần số đặt (và phản hồi) | Nhiễu, lệch scale, vòng mass |
| RS485 (Modbus RTU, USS...) | Lệnh, tần số, đọc trạng thái, dòng, mã lỗi | Đấu nối, nhiễu, sai thông số, sai thanh ghi |
| Ethernet công nghiệp (Modbus TCP, PROFINET, EtherNet/IP) | Như RS485, tốc độ cao hơn | IP/subnet, port, thiếu card truyền thông |
| Fieldbus (PROFIBUS DP, CANopen) | Như RS485, ổn định hơn | File GSD/EDS, địa chỉ node |
Ví dụ INVT Goodrive20 + Mitsubishi FX3U
Để các bước sau có căn cứ cụ thể, bài viết dùng cặp thông dụng là biến tần INVT Goodrive20 và PLC Mitsubishi FX3U kèm module FX3U-485ADP-MB, dùng lệnh Modbus ADPRW hoặc cấu hình Modbus tự động trong GX Works2. Lưu ý khi dùng bảng này: thanh ghi và đơn vị khác nhau giữa các dòng Goodrive và giữa các hãng, luôn đối chiếu chương Modbus trong manual đúng dòng máy trước khi đưa vào chương trình PLC.
| Tham số Goodrive20 | Ý nghĩa | Giá trị ví dụ |
|---|---|---|
| P00.01 | Kênh lệnh chạy | 2 (truyền thông) |
| P00.06 | Nguồn tần số A | 8 (Modbus) |
| P14.00 | Địa chỉ slave | 1 (1–247, không trùng trên cùng tuyến) |
| P14.01 | Baudrate | 3 (9600 bps) |
| P14.02 | Định dạng dữ liệu | 1 (Modbus RTU, 8-E-1) |
| P14.03 | Trễ phản hồi | 5 ms |
| P14.04 | Thời gian timeout truyền thông | 0.0 = tắt; lớn hơn 0 thì bus im lặng quá thời gian đặt sẽ báo CE |
| Địa chỉ | Hướng | Chức năng | Giá trị |
|---|---|---|---|
| 2000H | PLC → biến tần (ghi) | Lệnh điều khiển | 0001H chạy thuận · 0002H chạy ngược · 0005H dừng · 0006H dừng tự do · 0007H reset lỗi |
| 2001H | PLC → biến tần (ghi) | Tần số đặt qua truyền thông | Đơn vị tùy dòng máy: 0,01 Hz (50,00 Hz = 5000) hoặc theo % tần số tối đa |
| 2100H | Biến tần → PLC (đọc) | Từ trạng thái biến tần | Chạy thuận, chạy ngược, dừng, lỗi theo bảng trạng thái trong manual |
| 3000H | Biến tần → PLC (đọc) | Tần số đang chạy | Đơn vị 0,01 Hz |
| 3004H | Biến tần → PLC (đọc) | Dòng ra | Đơn vị 0,1 A |
Gói tin mẫu để soi bằng Modbus Poll hoặc công cụ bắt gói tin, với slave 01 và tần số 50,00 Hz giả định đơn vị 0,01 Hz: chạy thuận (ghi 2000H = 0001H) là 01 06 20 00 00 01 43 CA; dừng (ghi 2000H = 0005H) là 01 06 20 00 00 05 42 09; reset lỗi (ghi 2000H = 0007H) là 01 06 20 00 00 07 C3 C8; đặt tần số 50,00 Hz (ghi 2001H = 1388H) là 01 06 20 01 13 88 DE 9C; đọc trạng thái (2100H, 1 thanh ghi) là 01 03 21 00 00 01 8E 36; đọc tần số đang chạy (3000H, 1 thanh ghi) là 01 03 30 00 00 01 8B 0A; đọc dòng ra (3004H, 1 thanh ghi) là 01 03 30 04 00 01 CA CB. Khi biến tần từ chối yêu cầu, nó trả về exception, ví dụ 01 86 02 C3 A1 nghĩa là hàm 06 bị từ chối với mã 02 (địa chỉ dữ liệu không hợp lệ).
Phương pháp chia đôi hệ thống
Cách nhanh nhất để biết lỗi nằm ở biến tần hay ở PLC là chia đôi hệ thống. Làm 2 test này trước khi thay thiết bị, vì nhiều ca chỉ hỏng đúng một kênh, thay cả thiết bị là lãng phí. Quy trình chẩn đoán đầy đủ gồm 5 bước: xác định cách điều khiển đang dùng và đọc nguồn lệnh, nguồn tần số trên biến tần; kiểm tra vật lý và đèn (nguồn, đầu nối, cực A/B, cáp, trở cuối, đèn LED truyền thông hoặc đèn đầu ra); rà thông số hai đầu (địa chỉ, baudrate, parity, stop bit, giao thức, IP/port); chia đôi hệ thống; soi dữ liệu và đầu ra (theo dõi thanh ghi hoặc gói tin, kích đầu vào và kiểm tra LED, đo tại chân đầu ra PLC, rồi xử lý theo nhóm).

Chẩn đoán theo 7 nhóm lỗi
Sau khi chia đôi hệ thống, lỗi được xếp vào 1 trong 7 nhóm dưới đây. Mỗi nhóm có dấu hiệu riêng, và thứ tự kiểm tra đi từ dễ đến khó, từ ngoài vào trong. Nhóm 1 là đấu nối và phần cứng đường truyền: cáp, đầu nối, cực A/B, trở cuối, cổng truyền thông. Dấu hiệu là không có phản hồi từ lúc lắp, đèn truyền thông tắt hoặc nháy bất thường, đổi thông số vẫn không thông.
Nhóm 2 là nhiễu EMC: tín hiệu đúng nhưng bị phá bởi cáp động lực và tiếp địa kém. Dấu hiệu là chạy đúng một lúc rồi mất, rớt khi motor tải lớn hoặc khi biến tần khác khởi động, lỗi CRC lặp lại. Nhóm 3 là sai thông số truyền thông: địa chỉ, baudrate, parity, giao thức, IP. Dấu hiệu là chưa bao giờ thông kể từ lúc cài đặt, PLC báo timeout hoặc "no response".
Nhóm 4 là nguồn lệnh và điều kiện chạy: biến tần nhận dữ liệu nhưng không cho phép PLC điều khiển. Dấu hiệu là đọc được dữ liệu nhưng ghi lệnh không có tác dụng. Nhóm 5 là sai ánh xạ thanh ghi: địa chỉ, kiểu dữ liệu, đơn vị, function code. Dấu hiệu là PLC nhận mã exception, giá trị đọc ra lệch tỉ lệ, ghi đúng nhưng biến tần chạy sai.
Nhóm 6 là chương trình và timing: chu kỳ gửi, timeout, lệnh chồng nhau. Dấu hiệu là lúc thông lúc không, chỉ rớt khi PLC chuyển RUN/STOP, biến tần báo lỗi sau một khoảng im lặng. Nhóm 7 là tín hiệu cứng DI/DO/analog: đầu ra PLC, chân lệnh, scale analog. Dấu hiệu là chạy tay được nhưng chạy tự động không chạy, hoặc tần số analog lệch so với giá trị đặt.
Cách xử lý theo từng nhóm
Nhóm 1: kiểm tra cực A/B (nhiều hãng ghi nhãn ngược nhau), đầu cos lỏng, cáp xoắn đôi có bọc chống nhiễu, điện trở 120Ω ở hai đầu xa nhất của tuyến. Đo điện áp A–B khi bus rảnh: bằng 0 hoặc dao động bất thường thường là thiếu trở, thiếu bias hoặc đứt dây. Xử lý bằng cách làm lại đầu nối, thử đảo A/B, thêm trở cuối (một số biến tần có công tắc DIP bật trở cuối), thay cáp. Nếu đã loại trừ cáp mà cổng vẫn không có tín hiệu thì nghi cổng hoặc card truyền thông hỏng.

Nhóm 2: tách cáp tín hiệu khỏi cáp động lực, nếu bắt buộc giao cắt thì cắt vuông góc; dùng cáp xoắn đôi bọc nhiễu và nối đất vỏ bọc theo khuyến cáo của hãng (thường nối một đầu để tránh vòng mass); thêm lõi ferrite; giảm baudrate để thử độ ổn định. Nhóm 3: đồng bộ địa chỉ, baudrate, data bit, parity, stop bit, giao thức hai đầu (với Modbus TCP kiểm tra IP, subnet, port 502), rồi ghi lại bảng cấu hình để đưa vào hồ sơ bàn giao. Hai biến tần trùng địa chỉ trên cùng tuyến sẽ trả lời chồng nhau.
Nhóm 4: đặt lại nguồn lệnh (INVT Goodrive20 là P00.01 và P00.06), nhả các điều kiện đang chặn như chế độ Local/Remote, chân enable, dừng khẩn hoặc STO ngoài đang giữ, reset lỗi (ghi 0007H vào 2000H), rồi thử ghi lệnh bằng Modbus Poll để xác nhận. Nhóm 5: đối chiếu manual, thử từng thanh ghi bằng Modbus Poll trước khi đưa vào PLC, chú ý function code (03 đọc, 06 ghi một thanh ghi, 16 ghi nhiều thanh ghi), địa chỉ hex hay decimal, cách đánh địa chỉ bắt đầu từ 0 hay từ 1 (kiểu 40001), đơn vị và hệ số tỉ lệ.
Nhóm 6: gửi lệnh tuần tự, đặt timeout lớn hơn chu kỳ gửi vài lần, và quyết định ngay từ thiết kế biến tần sẽ dừng hay giữ chạy khi mất truyền thông, rồi test bằng cách rút cáp hoặc đưa PLC về STOP. Nhóm 7: kiểm tra theo chiều tín hiệu HMI → chương trình PLC → đầu ra PLC (đèn LED Y, trạng thái trên phần mềm) → dây → chân biến tần; kiểm tra thêm kiểu sink/source (NPN/PNP) và chân COM, tiếp điểm relay mòn hoặc dính, đầu ra transistor quá dòng, với analog là scale 0–10V hay 4–20mA và mass chung. Mẹo: kích đầu vào để PLC ra lệnh, nhìn LED đầu ra, rồi đo tại chân; LED tắt dù chương trình đã ra lệnh thì lỗi nằm ở mạch dẫn động của kênh đó, trước tiếp điểm. Xử lý bằng cách sửa hoặc thay linh kiện của kênh đầu ra hỏng, hoặc chuyển sang chân dự phòng nếu còn. Với tải đóng cắt thường xuyên, nên cân nhắc relay trung gian và đưa đầu ra PLC vào lịch bảo trì.
Về phòng ngừa lâu dài, checklist bàn giao gồm: ghi lại cấu hình truyền thông (địa chỉ, baudrate, parity, stop bit, danh sách thanh ghi lệnh và trạng thái); dùng cáp xoắn đôi bọc nhiễu đi riêng khỏi cáp động lực, gắn trở cuối 120Ω ở hai đầu tuyến RS485; test hành vi khi mất truyền thông (rút cáp hoặc đưa PLC về STOP, xem biến tần dừng hay giữ chạy); cho phép chạy tay bằng nút bấm nối vào chân lệnh của biến tần để dễ chia đôi hệ thống khi sự cố; đưa đầu ra PLC (nhất là relay đóng cắt thường xuyên) vào lịch bảo trì định kỳ; cập nhật firmware biến tần và PLC khi hãng có khuyến cáo. Tác nhân môi trường gây nhiễu và hỏng được viết riêng tại bài lỗi biến tần do bụi bẩn, độ ẩm, nhiệt độ cao.
Bảng mã lỗi truyền thông
Bảng dưới đây chỉ ghi mã đã xác minh: mã truyền thông của INVT Goodrive20 và mã exception chuẩn của Modbus do slave trả về. Mã lỗi truyền thông của các hãng khác khác nhau, tra theo manual đúng dòng máy khi gặp máy cụ thể, không áp mã của hãng này sang hãng khác.
| Mã | Số lỗi | Ý nghĩa | Hướng xử lý |
|---|---|---|---|
| CE | 18 | Lỗi truyền thông RS485 | Kiểm tra đấu nối, nhiễu, thông số và timeout P14.04 |
| PCE | 26 | Lỗi truyền thông bàn phím | Kiểm tra cáp và đầu nối bàn phím |
| EF | 17 | Lỗi ngoại vi (external fault), không phải lỗi truyền thông | Kiểm tra tín hiệu lỗi ngoài nối vào biến tần |
| Mã exception | Tên | Thường do |
|---|---|---|
| 01 | Illegal Function | Function code mà slave không hỗ trợ |
| 02 | Illegal Data Address | Địa chỉ không tồn tại, hoặc ghi vào địa chỉ chỉ đọc |
| 03 | Illegal Data Value | Giá trị hoặc số lượng thanh ghi không hợp lệ |
| 04 | Slave Device Failure | Lỗi không phục hồi được khi slave xử lý yêu cầu |
Chi phí dự kiến theo mức độ
Chi phí sửa lỗi giao tiếp phụ thuộc vào mức độ hỏng và dải công suất của máy, không có một mức giá chung cho mọi ca. Bảng dưới đây là khoảng dự kiến theo ba mức độ: nhẹ (đấu nối lại, đồng bộ thông số, thay cáp tín hiệu), trung bình (sửa kênh đầu ra PLC, sửa cổng truyền thông, thay card) và nặng (thay module công suất liên quan, thay bo). Đây là khoảng dự kiến theo mức độ, không phải giá cho riêng lỗi giao tiếp, vì cùng một triệu chứng có thể nhẹ hoặc nặng tùy nguyên nhân gốc.
| Dải công suất | Mức nhẹ | Mức trung bình | Mức nặng |
|---|---|---|---|
| 0,75 – 2,2 kW | 800 nghìn đồng | 1,2 triệu đồng | 1,6 triệu đồng |
| 3,7 – 7,5 kW | 1,2 triệu đồng | 1,8 triệu đồng | 2,2 triệu đồng |
| 11 – 22 kW | 2,4 triệu đồng | 2,8 triệu đồng | 3,2 triệu đồng |
| 30 – 45 kW | 3,8 triệu đồng | 4,2 triệu đồng | 4,8 triệu đồng |
| 55 – 90 kW | 4,4 triệu đồng | 5 triệu đồng | 8 triệu đồng |
| 90 – 132 kW | 5,6 triệu đồng | 8 triệu đồng | 10 triệu đồng |
| Trên 132 kW | 8,4 triệu đồng | 12 triệu đồng | 18 triệu đồng |
Thời gian sửa dự kiến thường: ca nhẹ trong ngày, ca trung bình 1 – 2 ngày, ca nặng vài ngày tùy linh kiện. Sửa tại HLAuto thì phí kiểm tra gộp trong gói sửa; chỉ kiểm tra mà không sửa thì kiểm tra từ xa miễn phí, kiểm tra tận nơi tính phí và báo trước. HLAuto báo tình trạng chi tiết kèm chi phí dự kiến trước khi sửa, khách đồng ý mới sửa, sửa xong test và quay video gửi khách rồi mới bàn giao. Bảo hành 3 tháng cho phần đã sửa hoặc thay theo chính sách chung.
Case thực tế
Bối cảnh: Hệ thống gồm biến tần KOC550A 5,5/7,5 kW, PLC Mitsubishi FX3U và màn hình HMI Weinview tại một xưởng đá ở Hải Dương. Máy chạy theo các chế độ cài sẵn chọn từ HMI.
Triệu chứng: Cấp lệnh chạy bằng tay, dây vào thẳng chân lệnh chạy của biến tần, không qua PLC thì máy chạy bình thường. Bấm chạy các chế độ cài sẵn từ HMI thì biến tần đứng yên.
Kiểm tra: Kích đầu vào để PLC ra lệnh, đầu ra Y5 và Y7 không có tín hiệu, đèn LED hai chân này không sáng. Đây là hai đầu ra relay phụ trách lệnh chạy và chọn tốc độ. Dây tín hiệu từ PLC sang biến tần, chương trình PLC và HMI đều bình thường.
Giải pháp: Thay relay, điện trở và tụ điện của hai kênh Y5, Y7 ngay tại xưởng, không phải thay PLC.
Kết quả: Thời gian xử lý khoảng 2 giờ, chi phí khoảng 2 triệu đồng tại chỗ.
Bài học: Chạy tay được nghĩa là biến tần không có vấn đề: phần công suất ổn, chân lệnh nhận tốt, nguồn lệnh đặt đúng. Còn lại một chỗ ít ai nghi tới là điểm phát tín hiệu ra từ PLC. Biến tần chỉ 5,5 kW, nhưng bài toán là sự kết hợp của biến tần, PLC và HMI, người xử lý cần nhìn cả hệ thống, không chỉ nhìn vào biến tần.
Câu hỏi thường gặp
Biến tần báo CE là lỗi gì?
Trên INVT Goodrive20, CE (mã lỗi 18) là lỗi truyền thông RS485. Lỗi có thể xuất hiện khi bus im lặng quá thời gian đặt ở P14.04 (nếu khác 0), hoặc khi đường truyền và thông số truyền thông bị sai. Mã lỗi của hãng khác khác nhau nên cần đối chiếu manual đúng dòng máy.
Truyền thông đã thông nhưng PLC không điều khiển được biến tần, nguyên nhân là gì?
Thường là biến tần chưa chuyển kênh lệnh chạy và nguồn tần số sang truyền thông (INVT Goodrive20 là P00.01 và P00.06), nên lệnh ghi bị bỏ qua. Ngoài ra kiểm tra chế độ Local/Remote, chân enable hoặc dừng khẩn ngoài và lỗi chưa reset.
RS485 có bắt buộc dùng điện trở 120Ω không?
Nên có, đặt ở hai đầu xa nhất của tuyến, không đặt ở giữa. Tuyến ngắn tốc độ thấp đôi khi vẫn chạy không cần trở cuối, nhưng cáp dài, nhiễu nhiều hoặc baudrate cao thì thiếu trở cuối là nguyên nhân thường gặp gây rớt truyền thông. Một số biến tần có sẵn công tắc DIP để bật trở cuối.
Nên chọn baudrate bao nhiêu cho PLC và biến tần?
9600 hoặc 19200 bps là hai mức phổ biến. Quan trọng nhất là hai đầu khớp nhau về baudrate, parity và stop bit. Khi đường truyền dài hoặc nhiều nhiễu, giảm baudrate là cách thử ổn định nhanh.
Vì sao đọc được thanh ghi biến tần nhưng ghi lệnh không có tác dụng?
Ba nguyên nhân hay gặp: nguồn lệnh của biến tần chưa chuyển sang truyền thông, ghi vào địa chỉ chỉ đọc (biến tần trả exception 02), hoặc dùng sai function code. Thử ghi lệnh bằng Modbus Poll trước để loại trừ phía PLC.
Nên điều khiển biến tần bằng Modbus hay tín hiệu analog?
Analog đơn giản, dễ kiểm tra nhưng dễ nhiễu, lệch scale và ít dữ liệu phản hồi. Modbus truyền được lệnh, tần số và đọc ngược trạng thái, dòng, lỗi, phù hợp khi cần giám sát hoặc nhiều biến tần. Nhiều hệ thống kết hợp: chạy/dừng bằng tín hiệu cứng, tần số và giám sát qua truyền thông.
Đầu ra PLC hỏng có làm máy không chạy tự động dù biến tần vẫn tốt không?
Có. Nếu đầu ra relay hoặc transistor của PLC nối vào chân lệnh biến tần bị hỏng, biến tần vẫn chạy được khi cấp lệnh bằng tay nhưng không nhận lệnh tự động. Cách nhận biết là kích đầu vào, quan sát LED đầu ra và đo tín hiệu tại chân, như trong case ở mục case thực tế.
Biến tần đang gặp sự cố?
Gọi ngay hoặc nhắn Zalo để được tư vấn kỹ thuật và báo chi phí dự kiến trước khi sửa.
Kết luận
Xử lý lỗi giao tiếp hiệu quả nằm ở thứ tự làm việc: biết hệ thống đang điều khiển bằng cách nào, chia đôi hệ thống để xác định lỗi ở biến tần hay ở PLC, rồi xếp lỗi vào đúng 1 trong 7 nhóm và xử lý theo nhóm đó. Làm đủ chuỗi này thì lỗi giao tiếp ít tái diễn, và chi phí sửa cũng chốt được đúng mức thay vì thay cả thiết bị theo quán tính. Tổng quan các lỗi xem tại trang các lỗi thường gặp ở biến tần.