Watchdog timer là gì? Ứng dụng và quy trình hoạt động Watchdog timer như thế nào trong các thiết bị giám sát và điều khiển
Watchdog timer là gì?
Watchdog timer ( WDT ) là một bộ đếm thời gian hoạt động liên tục của một nhiệm vụ nào đó. Watchdog timer còn được xem là một thiết bị thời gian nhúng tự động nhắc nhở hành động khắc phục khi hệ thống phát hiện ra trục trặc. Khi thời gian định trước đi qua mà bộ đếm vẫn không dừng lại hoặc refresh thì chúng sẽ tự kích hoạt tác vụ có sẵn như reset thiết bị, tắt màn hình, phát tín hiệu cảnh báo,… Sau quá trình refresh, bộ đếm sẽ tự động đếm tiếp và bắt đầu với thời gian là 0.
Thường thì bộ đếm Watchdog timer được xem là sự hỗ trợ mang tính chất phần cứng và được sử dụng bởi phần mềm qua các trình điều khiển. Khi phần mềm bị treo hoặc bị mất, Watchdog timer sẽ reset vi điều khiển hệ thống qua counter.
Ứng dụng của Watchdog timer
Watchdog timer giúp khởi động vi điều khiển sau thời gian được xác lập, tính năng này có thể áp dụng vô các ứng dụng giám sát, điều khiển công nghiệp, giám sát các loại robot, dây chuyền sản xuất, máy móc công nghiệp,… Trong trường hợp tràn bộ nhớ hay bị treo do nhiễu tín hiệu thì Watchdog timer sẽ giúp bạn khởi động lại mạch và giải quyết vấn đề.
Ở các hệ thống công nghệ cần độ an toàn cao thì Watchdog timer còn được dùng để gán bên ngoài hệ thống nhằm reset lại hệ thống và cách mạch trong trường hợp on – chip Watchdog timer không hoạt động.
Watchdog timer giúp các hệ thống trở nên ổn định hơn, tự xử lý lỗi trong quá trình hoạt động mà không cần đến người vận hành, tăng độ tin cậy cho hệ thống. Chính vì vậy ngoài khả năng giám sát, Watchdog timer còn được dùng trong các mạch điều khiển. Ví dụ điển hình như mạch điều khiển máy lọc nước chạy được 24/24.
Các ứng dụng hữu ích của Watchdog timer đều nhờ vào các tính năng của chúng. Các vi xử lý làm việc lâu ngày sẽ gặp các vấn đề như tràn bộ nhớ, nhiễu điện từ trường, nhiễu phóng tĩnh điện, nhiễu sụt nguồn áp,… Nên công nghệ Watchdog timer sẽ giúp khởi động lại các mạch là có thể giải quyết được các lỗi trên.
Quy trình hoạt động của Watchdog timer
1. Cơ quan giám sát khởi động lại
Trong công nghệ Watchdog timer thì việc khởi động lại bộ đếm thời gian theo dõi sẽ được gọi là “kicking” cơ quan giám sát. Được thực hiện bằng cách ghi vào cổng điều khiển của bộ giám sát.
Đối với các máy tính đang chạy hệ điều hành, việc thiết lập Watchdog thường được gọi thông qua trình điều khiển thiết bị. Trình điều khiển thiết bị phục vụ cho việc trừu tượng phần cứng Watchdog khỏi các trương trình không gian người dùng. Ngoài ra trình điều khiển còn được dùng để lên cấu hình thời gian chờ, bắt đầu và dừng bộ hẹn giờ.
2. Bộ phận giám sát một giai đoạn
Bộ phận này sẽ nhận nhiệm vụ cho phép công nghệ Watchdog timer thay đổi cấu hình giám sát nhờ vào đồng hồ đa cấu hình. Tại đây, chip vi điều khiển bao gồm cơ quan giám sát, bộ giám sát sẽ kết nối trực tiếp với CPU hoặc có thể đặt trên thẻ mở rộng trong khu máy tính. Lúc này CPU và bộ giám sát chia sẻ tín hiệu đồng hồ chung hoặc mang tín hiệu đồng hồ độc lập.
Quy trình này dựa trên 3 bộ phận: cơ quan giám sát khởi động lại, cơ qan giám sát một giai đoạn, cơ quan giám sát nhiều tầng.
3. Bộ phận giám sát nhiều tầng
Bộ phận giám sát nhiều tầng sẽ tạo nên một bộ đếm thời gian theo dõi nhiều tầng. Mỗi bộ định thời gian được gọi là giai đoạn hẹn giờ hoặc đơn giản hơn là mỗi giai đoạn.
Ví dụ: 1 cơ quan giám sát có 4 giai đoạn là timer stage 1, timer stage 2, timer stage 3, timer stage 4. Timer stage 1 là giai đoạn duy nhất có nhiệm vụ xử lý bởi bộ xử lý. Sau khi thời gian của timer stage 1 kết thúc thì tiếp tục các hành động khác tiến hành theo chuỗi thông tin đến khi giai đoạn kết thúc. Ở mỗi giai đoạn sau khi kết thúc sẽ kích hoạt các hành động và bắt đầu cho một giai đoạn khác cho đến giai đoạn cuối cùng.
Thông thường, bộ giám sát một giai đoạn sử dụng để khởi động máy tình thì bộ giám sát nhiều tầng sẽ kích hoạt tuần tự các hoạt động khắc phục theo tuần hoàn cho tới khi giai đoạn kết thúc sẽ kích hoạt máy tính khởi động lại.