Trang chủ › Bài kỹ thuật

Read in English

Mã lỗi SLC 500 (S:6): đọc lỗi major qua S:1/13, S:5, đèn FLT, bảng mã đầy đủ và cách xóa lỗi

TDL Industrial Automation · Cập nhật lần cuối:

Cách đọc lỗi major trên CPU SLC 500 (bit S:1/13, mã hex ở S:6, bit minor S:5, đèn FLT), ý nghĩa và cách xử lý từng mã từ 0001 tới xx94 (0020, 0022, 0034, xx52, xx53…), quy ước xx là số slot, fault routine và cách xóa lỗi an toàn.

Khi gặp lỗi major, CPU SLC 500 bật bit S:1/13 (Major Error Halted) và ghi mã lỗi dạng hex vào word S:6 trong status file. Sau đó CPU đưa mọi ngõ ra về trạng thái an toàn và bật đèn lỗi, hoặc (từ SLC 5/02 trở lên) chạy fault routine của người dùng với ngõ ra vẫn hoạt động (1747-RM001G-EN-P, tr. B-12). CPU không tự xóa S:6, nên mã vẫn còn đó để đọc (tr. B-26). Manual chia mã thành năm nhóm: lỗi khi cấp nguồn, lỗi khi chuyển sang Run, lỗi lúc đang chạy, lỗi lệnh trong chương trình và lỗi I/O (tr. 16-3, B-26). Bài này tóm tắt toàn bộ bảng mã ở chương 16 "Troubleshooting Faults" và phụ lục B "SLC Status File". Mỗi dòng ghi ý nghĩa và cách xử lý manual khuyên.

Lỗi major hiện ra ở đâu

  • S:1/13: CPU bật bit này mỗi khi gặp lỗi major. Muốn CPU nhận lệnh đổi chế độ thì phải xử lý điều kiện gây lỗi rồi xóa bit này (tr. B-12).
  • S:6: mã lỗi major. CPU lưu và hiển thị mã ở dạng hex (tr. B-26). Khi so sánh trong ladder phải đổi mã sang thập phân. Ví dụ muốn lệnh EQU bắt lỗi 0016 thì Source A là S:6, Source B là 22 (tr. B-26).
  • S:5, bit 0–7: các bit minor error. Nếu cuối scan còn bit nào trong số này đang bật, CPU chuyển thành lỗi major 0020 (tr. B-21).
  • S:1/0–S:1/4: mã chế độ của CPU. Chế độ lỗi (fault mode) là khi S:1/13 bật cùng với mã Remote Program, Suspend Idle hoặc, với CPU có khóa (keyswitch), PROGram hay RUN (tr. B-6).
  • S:20 và S:21: số rung (S:20) và số file (S:21) CPU chạy lần cuối trước lỗi major hoặc mất nguồn. SLC 5/02 chỉ có hai word này nếu chương trình được lưu với tùy chọn Test Single Step. Từ SLC 5/03 trở lên thì có sẵn (tr. B-41, 11-2).
  • Đèn FLT: trên SLC 5/03 trở lên, lúc cấp nguồn mọi đèn chớp một lần, CPU tự kiểm tra, rồi các đèn chớp lần nữa. Sau đó đèn RUN sáng nếu chương trình đang chạy, đèn FLT sáng nếu CPU có lỗi (tr. 16-15).

Ba loại lỗi: fault routine có chạy không

Bảng S:6 trong phụ lục B xếp các mã vào ba loại (tr. B-26, 11-2):

Loại Fault routine
Lỗi không thuộc người dùng (non-user) Không chạy
Lỗi người dùng không khôi phục được (non-recoverable) Chạy 1 lượt; có thể dùng lệnh MSG báo tình trạng lỗi cho node khác
Lỗi người dùng khôi phục được (recoverable) Có thể xóa lỗi bằng cách xóa bit S:1/13

Các bảng mã bên dưới ghi loại này ở cột "Fault routine". Ô "—" là bảng phụ lục B không đánh dấu loại cho mã đó.

Nhiều mã có cùng một danh sách nguyên nhân. Trong bảng, cụm "nhiễu/nguồn" thay cho danh sách manual ghi: nhiễu, sét, nối đất không đúng, ngõ ra có tải cảm thiếu mạch dập xung (surge suppression), hoặc nguồn kém.

Lỗi khi cấp nguồn (powerup)

Mã (hex) Ý nghĩa Manual khuyên Fault routine
0001 Lỗi NVRAM. Nguyên nhân: nhiễu/nguồn, hoặc mất pin hay tụ giữ nhớ Xử lý nguyên nhân, nạp lại chương trình rồi chạy. Có thể dùng autoload với memory module để tự nạp lại và vào Run Không chạy
0002 Hardware watchdog timeout ngoài dự kiến. Nguyên nhân: nhiễu/nguồn Như 0001 Không chạy
0003 Lỗi bộ nhớ của memory module; cũng có thể xảy ra khi chuyển sang REM Run. Memory module bị hỏng dữ liệu Lập trình lại memory module; còn lỗi thì thay module Không chạy
0007 Lỗi trong lúc chép qua memory module. Memory module bị hỏng dữ liệu Như 0003 Không chạy
0008 Lỗi phần mềm bên trong. Nguyên nhân: nhiễu/nguồn Như 0001; lặp lại thì liên hệ đại diện Rockwell Không chạy
0009 Lỗi phần cứng bên trong. Nguyên nhân: nhiễu/nguồn Như 0001; lặp lại thì liên hệ đại diện Rockwell Không chạy
(không mã) Khóa ở RUN nhưng CPU lên nguồn ở trạng thái không phải RUN. Khóa có thể đã hỏng Kết nối RSLogix 500. Nếu trạng thái CPU là "Remote Download in Progress" và các bit S:1/0–4 đều bằng 0 thì liên hệ đại diện Rockwell —

Nguồn: tr. 16-3–16-4, B-27.

Lỗi khi chuyển sang Run (going-to-run)

Mã (hex) Ý nghĩa Manual khuyên Fault routine
0010 Revision của CPU không đạt mức chương trình yêu cầu: chương trình được viết cho revision khác Liên hệ đại diện Rockwell để mua bộ nâng cấp (upgrade kit) cho CPU Không chạy
0011 Không có program file số 2. Chương trình không tương thích hoặc bị hỏng Nạp lại hoặc lập trình lại chương trình Không chạy
0012 Chương trình ladder bị lỗi bộ nhớ. Nguyên nhân: nhiễu/nguồn Xử lý nguyên nhân, nạp lại, chạy; còn lỗi thì dùng phần mềm lập trình bản hiện hành để soạn và nạp chương trình Không chạy
0013 Thiếu memory module mà chương trình cần, hoặc S:1/10, S:1/11 không đặt đúng như chương trình yêu cầu Lắp memory module, hoặc upload chương trình từ CPU sang memory module Có thể xóa lỗi
0014 Lỗi file bên trong. Nguyên nhân: nhiễu/nguồn Như 0012 Không chạy
0015 Lỗi file cấu hình. Nguyên nhân: nhiễu/nguồn Như 0012 Không chạy
0016 Startup protection sau mất nguồn: S:1/9 đang bật và CPU mất nguồn lúc đang chạy Xóa S:1/9 nếu phù hợp với yêu cầu của ứng dụng rồi chuyển lại Run, hoặc xóa S:1/13 trước khi hết scan đầu tiên Có thể xóa lỗi
0017 Chương trình trong NVRAM và trong memory module khác nhau khi S:2/9 đang bật Chép chương trình từ memory module vào NVRAM rồi chuyển sang Run Chạy 1 lượt
0018 Chương trình không tương thích, sai loại hệ điều hành; cũng có thể xảy ra lúc cấp nguồn. Chương trình quá mới so với hệ điều hành Liên hệ đại diện Rockwell để mua bộ nâng cấp cho CPU Không chạy
0019 Trùng hoặc thiếu label trong subroutine Bỏ label trùng hoặc thêm label Chạy 1 lượt

Nguồn: tr. 16-4–16-6, B-27. Chương 16 mô tả 0019 là "trùng số label", dù cột nguyên nhân ghi trùng hoặc thiếu label; bảng phụ lục B ghi "thiếu hoặc trùng label".

Lỗi lúc đang chạy (run)

Mã (hex) Ý nghĩa Manual khuyên Fault routine
001F Mất toàn vẹn chương trình khi sửa online: nhiễu, mất truyền thông hoặc mất nguồn giữa lúc sửa Nạp lại chương trình rồi sửa online lại Không chạy
0004 Lỗi bộ nhớ ở chế độ Run. Nguyên nhân: nhiễu/nguồn Như 0001 Không chạy
0020 Cuối scan còn bit minor error trong byte thấp của S:5: tràn số khi tính toán hoặc lệnh FRD, lỗi lệnh sequencer hay shift register, lỗi major trong lúc chạy fault routine, hoặc tham chiếu file M0-M1 của slot đang bị disable Sửa chương trình, nạp lại rồi vào Run Có thể xóa lỗi
0021 Mất nguồn ở chassis I/O mở rộng SLC 5/02 trở lên và SLC 5/01 FRN 5: cấp lại nguồn cho chassis mở rộng; đây là mã duy nhất tự xóa khi có nguồn lại. CPU fixed và SLC 5/01 FRN 1–4: tắt/bật nguồn chassis local Không chạy
0022 Vượt watchdog scan time: đặt watchdog quá thấp hoặc chương trình bị kẹt trong vòng lặp Tăng watchdog ở S:3H hoặc sửa chương trình Chạy 1 lượt
0023 Không có hoặc sai file STI: đã gán số file STI nhưng chưa tạo file, hoặc gán file 0, 1, 2 Tắt STI (setpoint S:30, số file S:31) hoặc tạo file STI; số file không được là 0, 1, 2 Chạy 1 lượt
0024 Chu kỳ STI sai (âm hoặc quá giới hạn) Tắt STI (S:30, S:31) hoặc tạo routine STI cho số file ở S:31 Chạy 1 lượt
0025 Quá nhiều tầng stack/JSR cho routine STI: lệnh JSR gọi file đã gán cho STI Sửa chương trình theo giới hạn của lệnh JSR, nạp lại, chạy Chạy 1 lượt
0026 Như 0025, cho routine ngắt I/O Như 0025 Chạy 1 lượt
0027 Như 0025, cho fault routine Như 0025 Chạy 1 lượt
0028 Không có hoặc sai file fault routine "startup protection": S:29 có số file nhưng chưa tạo file, hoặc file 0, 1, 2 Tắt fault routine (S:29) hoặc tạo fault routine cho số file ở S:29 Không chạy
0029 Địa chỉ indexed nằm ngoài toàn bộ vùng data file (từ B3:0 tới file cuối) Sửa và nạp lại chương trình; ghi vào thanh ghi index S:24 không sửa được lỗi này. Sau khi khôi phục, lệnh bị lỗi dùng giá trị index 0 Có thể xóa lỗi
002A Địa chỉ indexed vượt khỏi data file được tham chiếu Sửa chương trình, cấp thêm vùng dữ liệu bằng memory map, hoặc lưu lại chương trình cho phép vượt ranh giới file; nạp lại. Ghi S:24 không sửa được Chạy 1 lượt
002B Số file trong địa chỉ gián tiếp sai loại file hoặc không tồn tại Kiểm tra loại file hoặc tạo file Có thể xóa lỗi
002C Phần tử được tham chiếu gián tiếp không tồn tại (file đúng loại và có tồn tại), ví dụ T4:[N7:0] với N7:0 = 10 trong khi T4 chỉ tới T4:9 Tạo phần tử được tham chiếu Có thể xóa lỗi
002D Tham chiếu sai subelement, hoặc tham chiếu gián tiếp tới file M Sửa tham chiếu Có thể xóa lỗi
002E Slot ngõ vào DII sai: slot trống hoặc không phải card I/O số (discrete) Đổi slot ngõ vào sang card I/O số Có thể xóa lỗi
002F Không có hoặc sai file ngắt DII Tắt DII bằng cách ghi 0, hoặc đổi sang ladder file hợp lệ (3–255) Chạy 1 lượt

Nguồn: tr. 16-6–16-9, B-27–B-29. Giới hạn của 0024: chương 16 ghi lớn hơn 2550 ms, bảng phụ lục B ghi 2559 ms. Watchdog S:3H tính theo số nhịp 10 ms: mặc định 10 (100 ms), tăng được tới 250 (2,5 giây) hoặc giảm tới 2 (tr. B-20).

Lỗi lệnh trong chương trình (user program instruction)

Mã (hex) Ý nghĩa Manual khuyên Fault routine
0030 Gọi subroutine lồng quá số tầng cho phép (4 tầng; 8 tầng với 5/02 hoặc 5/03), hoặc subroutine gọi ngược lên tầng trước (đệ quy) Sửa chương trình theo giới hạn của lệnh JSR, nạp lại, chạy Chạy 1 lượt
0031 Lệnh không được hỗ trợ: loại hoặc series CPU không hỗ trợ lệnh trong chương trình, hoặc đặt hằng số làm toán hạng đầu của lệnh so sánh Thay CPU hỗ trợ chương trình, hoặc sửa chương trình cho CPU hỗ trợ mọi lệnh Chạy 1 lượt
0032 Tham số length/position của lệnh sequencer trỏ quá cuối data file Sửa chương trình hoặc cấp thêm vùng data file bằng memory map, nạp lại, chạy Có thể xóa lỗi
0033 Length của lệnh LFU, LFL, FFU, FFL, BSL hoặc BSR trỏ quá cuối data file Như 0032 Có thể xóa lỗi
0034 Giá trị accumulator hoặc preset của timer bị âm. CPU fixed ngõ vào 24 VDC: preset của lệnh HSC âm hoặc bằng 0 (hợp lệ 1–32767) Nếu chương trình ghi giá trị vào ACC hay PRE của timer (hoặc preset HSC) thì bảo đảm giá trị không âm, nằm trong khoảng hợp lệ; sửa, nạp lại, chạy Có thể xóa lỗi
0035 Gọi lệnh TND, SVC hoặc REF trong routine ngắt hoặc fault routine Sửa chương trình, nạp lại, chạy Chạy 1 lượt
0036 Tham số của lệnh PID không hợp lệ Mã chi tiết (11H, 12H…) nằm ở byte cao của word thứ hai trong control block PID; xem Table 9.36 (tr. 9-21) Có thể xóa lỗi
0038 Có lệnh RET trong file không phải subroutine (chương trình chính) Sửa chương trình, nạp lại, chạy Không chạy
xx39 Chiều dài string sai: word đầu của string âm, bằng 0 hoặc lớn hơn 82 (xx = số data file) Kiểm tra word đầu của các string, sửa dữ liệu Có thể xóa lỗi
003A Ghi qua địa chỉ gián tiếp vào file đang bật bảo vệ hằng số (constant data file protection) Bỏ bảo vệ rồi thử lại —
003B Firmware của mainboard và daughter card không khớp, do không flash cả hai cùng lúc Flash cả mainboard và daughter card lên bản mới nhất —
003C STI watchdog timeout: setpoint STI quá thấp, CPU không kịp phục vụ ngắt STI Tăng setpoint STI (S:30) —
003D Jumper J4 sai vị trí (chỉ có trong bảng phụ lục B, cho 5/03 và 5/04) Manual không ghi cách xử lý —
005F Rack ID sai (phụ lục B ghi thêm "lỗi handshake") Hệ nhiều rack: không cấu hình quá ba rack. Hệ một rack: thay rack, rack có thể hỏng Không chạy

Nguồn: tr. 16-9–16-10, 9-21, B-31, B-33.

Lỗi I/O và quy ước xx là số slot

Trong các mã I/O, xx là số slot viết dạng hex: slot 10 là 0A, slot 16 là 10, slot 30 là 1E. Nếu CPU không xác định được slot thì theo chương 16, xx là 03 với CPU fixed và 1F với CPU modular (tr. 16-11). Ví dụ 0A52 là slot 10 thiếu module.

Với SLC 5/02 trở lên, nhiều lỗi I/O khôi phục được: fault routine phải disable slot xx, nếu không CPU sẽ lỗi ở cuối scan. Card I/O hỏng nặng có thể làm CPU báo lỗi ở slot 1 dù card nằm ở slot khác (tr. 16-11, B-29).

Mã (hex) Ý nghĩa Manual khuyên Fault routine
xx50 Lỗi dữ liệu chassis. Nguyên nhân: nhiễu/nguồn Xử lý nguyên nhân, xóa lỗi, vào lại Run Có thể xóa lỗi
xx51 Lỗi "stuck" lúc chạy trên module I/O. Module số: do nhiễu. Module đặc biệt (specialty): xem manual của module Tắt/bật nguồn hệ thống; vẫn còn thì thay module Chạy 1 lượt
xx52 Thiếu module mà chương trình cần, hoặc module đã bị rút Disable slot trong S:11, S:12, hoặc cắm đúng module vào slot Có thể xóa lỗi
xx53 Chương trình khai báo slot trống nhưng có module, hoặc module tự reset. Riêng 5/03 trở lên: vào Run hay Test khi chassis không có module nào Disable slot (S:11, S:12), hoặc rút module, hoặc sửa I/O configuration rồi nạp lại; nghi module tự reset thì xóa lỗi major rồi chạy. Chassis trống: disable mọi slot của chassis đó Có thể xóa lỗi
xx54 Module trong slot khác loại với cấu hình Thay đúng module, xóa lỗi, chạy; hoặc sửa cấu hình slot, nạp lại, chạy Có thể xóa lỗi
xx55 Module số có số điểm I/O khác cấu hình, hoặc driver của card đặc biệt không đúng Thay module đúng số điểm, hoặc sửa cấu hình cho khớp module; card đặc biệt thì xem manual của module Có thể xóa lỗi
xx56 Cấu hình chassis trong chương trình không khớp phần cứng (phụ lục B ghi mã 0056) Sửa cấu hình chassis, nạp lại, chạy Không chạy
xx57 Module đặc biệt không trả lời lệnh Lock Shared Memory đúng thời gian Tắt/bật nguồn chassis; vẫn còn thì xem manual của module, có thể phải thay module Có thể xóa lỗi
xx58 Module đặc biệt báo lỗi chung: bit card fault trong status byte của module bằng 1 Như xx57 Chạy 1 lượt
xx59 Module đặc biệt không hoàn tất lệnh của CPU đúng thời gian Xem manual của module; có thể phải thay module Có thể xóa lỗi
xx5A Lỗi ngắt phần cứng. Module số: do nhiễu Tắt/bật nguồn chassis, kiểm tra nhiễu và nối đất; module đặc biệt thì xem manual, có thể phải thay Chạy 1 lượt
xx5B Kích thước G file trong chương trình vượt dung lượng module Cấu hình lại G file theo manual của module, nạp lại, chạy Có thể xóa lỗi
xx5C Kích thước file M0-M1 vượt dung lượng module Cấu hình lại file M0-M1 theo manual của module, nạp lại, chạy Có thể xóa lỗi
xx5D Module yêu cầu loại ngắt mà CPU không hỗ trợ Xem manual của module để biết CPU nào hỗ trợ; đổi sang CPU đó Có thể xóa lỗi
xx5E Lỗi driver I/O (phần mềm) của CPU Nạp lại chương trình bằng RSLogix Có thể xóa lỗi
xx60–xx6F Lỗi major khôi phục được, riêng của module I/O Xem manual của module Có thể xóa lỗi
xx70–xx7F Lỗi major không khôi phục được, riêng của module I/O Xem manual của module Chạy 1 lượt
xx80–xx8F Lỗi major riêng của module đặc biệt Xem manual của module Không chạy
xx90 Module đặc biệt yêu cầu ngắt khi slot đang bị disable Xem manual của module; có thể phải thay module Chạy 1 lượt
xx91 Module đặc biệt ở slot đang disable bị lỗi Tắt/bật nguồn chassis; vẫn còn thì xem manual, có thể phải thay Chạy 1 lượt
xx92 Thông tin I/O configuration hoặc file ngắt (ISR) của module đặc biệt sai Sửa I/O configuration, ISR file theo manual của module, nạp lại, chạy Chạy 1 lượt
xx93 CPU không nhận ra mã lỗi do module đặc biệt gửi Xem manual của module Chạy 1 lượt
xx94 Module bị cắm vào lúc có điện trong chế độ Run hay Test, hoặc module tự reset Không bao giờ cắm module khi chassis đang có điện. Nếu module không hỏng: rút module, xóa lỗi, chạy; hoặc thêm module vào I/O configuration, nạp lại, chạy Chạy 1 lượt
00A0, 00A1, 00A2 Lỗi phần cứng kênh truyền thông trên SLC 5/04 (kênh 1 DH+) hoặc SLC 5/05 (kênh 1 Ethernet) Ghi vào status file có thể xóa lỗi, nhưng truyền thông Ethernet, DH+, RS-232 bị tắt tới khi tắt/bật nguồn. Với SLC 5/05 và mã 00A1, word S:15 cho mã lỗi chi tiết của card Ethernet Không chạy

Nguồn: tr. 16-11–16-14, B-29–B-34.

Đèn trên SLC 5/03 trở lên khi lỗi hệ điều hành

Nạp hệ điều hành mất tối đa 90 giây. Trong lúc nạp, đèn RUN và FLT tắt, các đèn RS232, DH-485 hoặc DH+, Ethernet, FORCE, BATT sáng theo một trình tự định sẵn. Nạp thành công thì các đèn này sáng. Nếu lỗi xảy ra khi nạp hệ điều hành từ memory module hoặc khi tự kiểm tra lúc cấp nguồn, đèn FLT sáng và bốn đèn chớp tắt theo nhịp 2 giây. Cứ cách một lần chớp, cụm đèn đang sáng cho biết lỗi (tr. 16-15–16-16):

Đèn sáng Ý nghĩa
FAULT, FORCE, DH-485 hoặc DH+ hoặc Ethernet Lỗi phần cứng nghiêm trọng (fatal)
FAULT, FORCE, RS232, DH-485 hoặc DH+ Hardware watchdog timeout
FAULT, BATT Lỗi NVRAM
FAULT, BATT, RS232 Nội dung memory module chứa hệ điều hành bị hỏng
FAULT, BATT, DH-485 hoặc DH+ Hệ điều hành nạp vào không tương thích với phần cứng
FAULT, BATT, RS232, DH-485 hoặc DH+ hoặc Ethernet Nạp hệ điều hành vào bộ nhớ đang chống ghi
FAULT, BATT, FORCE Lỗi Flash EEPROM
FAULT, BATT, FORCE, RS232 Lỗi trong lúc truyền hệ điều hành
FAULT, BATT, FORCE, DH-485 hoặc DH+ hoặc Ethernet Hệ điều hành bị mất hoặc hỏng

Bit S:5/13 bật khi nạp hệ điều hành từ memory module không thành công: jumper bảo vệ đang ở vị trí protect hoặc bị mất, hoặc module không tương thích với phần cứng CPU. Bit S:5/11 bật khi đèn Battery Low sáng (tr. B-24).

Kiểm tra từng bước

  1. Ghi lại trước khi xóa lỗi: giá trị S:6, S:1, byte thấp của S:5, S:20 và S:21, trạng thái các đèn. CPU không tự xóa S:6 (tr. B-26).
  2. Mã 0020: xem bit nào trong S:5 đang bật. S:5/0 là tràn số, S:5/2 là lỗi control register của lệnh LFU, LFL, FFU, FFL, BSL, BSR, SQO, SQC, SQL, S:5/3 là lỗi major trong lúc chạy fault routine, S:5/4 là tham chiếu M0-M1 của slot đang disable (tr. B-22–B-23).
  3. Mã I/O: đổi xx từ hex sang số slot rồi ra slot đó. Mã báo slot 1 mà card slot 1 bình thường thì nhớ rằng card hỏng nặng ở slot khác cũng có thể báo slot 1 (tr. 16-11).
  4. Mã có nguyên nhân "nhiễu/nguồn" (0001, 0002, 0004, 0008, 0009, 0012, 0014, 0015, xx50): kiểm tra nối đất, mạch dập xung trên ngõ ra có tải cảm, nguồn cấp; với 0001 kiểm tra thêm pin hoặc tụ giữ nhớ (tr. 16-3–16-12).
  5. Mã liên quan memory module: với 0003 và 0007, lập trình lại memory module, còn lỗi thì thay module; với 0013, lắp memory module hoặc upload chương trình từ CPU sang module (nguyên nhân là S:1/10 hoặc S:1/11 đặt khác nhau giữa chương trình trong CPU và trong module); với 0017 (S:2/9 đang bật, hai chương trình khác nhau), chép chương trình từ memory module vào NVRAM rồi chuyển sang Run (tr. 16-3–16-5).
  6. Mã 0021: kiểm tra nguồn chassis mở rộng. Nếu bộ nguồn bị quá áp hoặc quá dòng, đèn của bộ nguồn tắt, và CPU có thể báo một mã lỗi I/O thay cho 0021 (tr. 16-7).
  7. Mã 0022: so thời gian scan với watchdog S:3H, tìm vòng lặp trong chương trình (tr. 16-7, B-20).

Xóa lỗi và đưa về Run

Xóa tay (tr. 16-2): xóa bit S:1/13 và các bit S:5/0–7 bằng phần mềm lập trình hoặc Data Table Access Module, đưa CPU về REM Program, xử lý điều kiện gây lỗi, rồi chuyển về REM Run hoặc một chế độ REM Test. Với SLC 5/03 trở lên có thể xoay khóa từ RUN sang PROG rồi về RUN; cách này xóa S:1/13 và S:6 (tr. B-12). Nên xóa cả S:6 để không còn mã lỗi khi CPU đã hết lỗi (tr. B-12).

Cảnh báo: với SLC 5/03 trở lên, nếu khóa đang ở RUN mà xóa các bit này thì CPU vào Run ngay. Đang online với khóa ở RUN mà bấm phím xóa lỗi major, phần mềm sẽ cảnh báo rằng CPU vào Run ngay khi lỗi được xóa (tr. 16-2). Trước khi xóa, bảo đảm máy đã an toàn để chạy, vì ngõ ra sẽ chạy lại theo chương trình. Làm theo quy định giấy phép làm việc (permit) và khóa nguồn (lockout) của nhà máy.

Tự xóa (tr. 16-1, B-7–B-11):

  • S:1/8 (Fault Override at Powerup): khi tắt/bật nguồn, CPU xóa S:1/13 và S:5/0–7 rồi thử vào REM Run, nếu trước đó CPU ở REM Run và bị lỗi. Mặc định bit này tắt. Chương trình phải không bị hỏng.
  • S:1/9 (Startup Protection): mất nguồn lúc đang ở REM Run thì lần cấp nguồn sau CPU chạy fault routine trước scan đầu tiên, với S:6 = 0016. Fault routine không xóa S:1/13 thì CPU vào chế độ lỗi.
  • S:1/10, S:1/11, S:1/12: các bit autoload, đặt trong chương trình lưu ở memory module. S:1/10 chép chương trình từ module khi gặp lỗi bộ nhớ lúc cấp nguồn rồi vào REM Run. S:1/11 và S:1/12 ghi đè chương trình, kể cả bảng dữ liệu, mỗi lần tắt/bật nguồn; S:1/12 còn đưa CPU về REM Run mỗi lần.

Fault routine (tr. 11-2–11-3, 16-2, B-44): tạo một subroutine file số 3–255 và ghi số đó vào S:29; ghi 0 để tắt. Lỗi recoverable: routine có thể sửa vấn đề và xóa S:1/13, CPU tiếp tục ở REM Run. Lỗi non-recoverable: routine chạy một lượt, có thể gửi MSG tới node khác hoặc dừng quá trình có trật tự. Routine không chạy với lỗi non-user. Trong routine, đọc S:20 và S:21 để biết file và rung gây lỗi.

Lỗi do ứng dụng tự đặt: ghi một giá trị riêng vào S:6 rồi bật S:1/13. Không dùng lại mã hệ thống; manual đề nghị dùng FF00–FF0F (tr. 16-1, B-12).

Khi nào là lỗi phần cứng

  • 0008 hoặc 0009 lặp lại sau khi đã xử lý nhiễu và nạp lại chương trình: liên hệ đại diện Rockwell (tr. 16-4).
  • 0003 hoặc 0007 vẫn còn sau khi lập trình lại memory module: thay memory module (tr. 16-3).
  • xx51 vẫn còn sau khi tắt/bật nguồn: thay module ở slot xx (tr. 16-12).
  • 005F trên hệ một rack: thay rack (tr. 16-10).
  • Khóa ở RUN mà CPU lên nguồn không vào RUN, trạng thái "Remote Download in Progress", S:1/0–4 bằng 0: khóa có thể hỏng, liên hệ đại diện Rockwell (tr. 16-4).

Lên kế hoạch thay thế

Theo các trang hết vòng đời trên website này, Rockwell ghi các CPU SLC 500 sau đã ngừng bán:

CPU Ngừng bán từ Thay thế theo Rockwell
1747-L532 (SLC 5/03) 31/03/2024 5069-L306ER
1747-L542 (SLC 5/04) 31/03/2024 5069-L306ER
1747-L543 (SLC 5/04) 31/03/2024 5069-L310ER
1747-L551 (SLC 5/05) 31/12/2021 5069-L306ER
1747-L552 (SLC 5/05) 31/03/2024 5069-L306ER
1747-L553 (SLC 5/05) 31/03/2024 5069-L310ER

Cách chuyển chương trình sang Logix (áp dụng cho cả SLC 500) có trong bài nâng cấp PLC-5 lên ControlLogix; xem thêm trang dịch vụ chuyển đổi PLC-5 và SLC 500. Cần kỹ sư kiểm tra tại nhà máy: hỗ trợ sự cố.

Câu hỏi thường gặp

Xem mã lỗi SLC 500 ở đâu?

Mã lỗi major nằm ở word S:6 trong status file, dạng hex. Bit S:1/13 cho biết CPU đang dừng vì lỗi major. CPU không tự xóa S:6 (1747-RM001G-EN-P, tr. B-12, B-26).

Lỗi 0020 trên SLC 500 là gì?

Cuối scan vẫn còn một bit minor error trong S:5/0–7 đang bật, ví dụ tràn số hoặc lỗi lệnh sequencer, shift register. Xem bit nào trong S:5 đang bật, sửa chương trình, nạp lại rồi vào Run (tr. 16-6, B-21–B-23).

Mã lỗi 0A52 hay 1F53 nghĩa là gì?

Hai ký tự đầu là số slot dạng hex, hai ký tự sau là loại lỗi. 0A52 là slot 10 thiếu module mà chương trình cần. 1F nghĩa là CPU modular không xác định được slot (tr. 16-11–16-12).

Xoay khóa từ RUN sang PROG rồi về RUN có xóa lỗi được không?

Được với SLC 5/03 trở lên: cách này xóa S:1/13 và S:6. Nhưng phải xử lý điều kiện gây lỗi trước, và CPU sẽ chạy lại ngay khi khóa về RUN (tr. 16-2, B-12).

Lỗi 0022 watchdog trên SLC 500 xử lý thế nào?

Thời gian scan đã vượt watchdog S:3H, do đặt watchdog quá thấp hoặc chương trình kẹt trong vòng lặp. Tăng S:3H (mặc định 10 nhịp 10 ms, tối đa 250) hoặc sửa chương trình (tr. 16-7, B-20).

Nguồn

  • Rockwell Automation, 1747-RM001G-EN-P, SLC 500 Instruction Set Reference Manual, 11/2008 — chương 9 (tr. 9-21); chương 11 (tr. 11-2–11-3); chương 16 "Troubleshooting Faults" (tr. 16-1–16-16); phụ lục B "SLC Status File" (tr. B-6–B-12, B-20–B-34, B-41, B-44)

Đọc ngày 15/11/2026. Bài viết diễn giải, không trích nguyên văn; đọc tài liệu gốc trước khi thiết kế hoặc thao tác. Liên kết mở bản mới nhất trong thư viện tài liệu Rockwell; số trang ghi theo bản nêu trong bài.

Dịch vụ liên quan:
Hỗ trợ sự cố & kỹ sư thường trực Nâng cấp hệ Rockwell Automation