Phát hiện lỗi trong CAN

Một phần của tài liệu NGHIÊN CỨU MẠNG CAN TRÊN Ô TÔ. (Trang 26 - 27)

Trong quá trình hoạt động, đường truyền có thể bị nhiễu, ví dụ: nhiễu điện từ. Để hạn chế nguy bị nhiễu dẫn đến lỗi, dữ liệu truyền phải được kiểm tra. Một số cơ chế kiểm soát để phát hiện lỗi được tích hợp trong giao thức CAN.

2.3.6.1 Cyclic redundancy check

Đối với mỗi tin nhắn được truyền đi, nút truyền sẽ dùng thuật toán tính toán bắt đầu từ Start-of-frame,vùng phân xử, vùng điều khiển và vùng dữ liệu. Kết quả trả về được gọi là checksum. Checksum được sử dụng để phát hiện lỗi trong quá trình truyền dữ liệu.

Khi vùng CRC đã được nhận, nút nhận có thể kiểm tra lại xem tin được nhận có đầy đủ chính xác hay không bằng cách thực hiện chính thuật toán kiểm tra như nút gửi và đối chiếu kết quả lại với checksum để kiểm tra.

2.3.6.2 Frame check

Frame check được các nút trong hệ thống dùng để kiểm tra tin nhắn trên đường truyền có tuân thủ theo giao thức CAN đã quy ước hay không (Start-of-frame, End-of- frame, Delimiter)

2.3.6.3 ACK check

Với ACK check, phía nút nhận xác nhận xem tin nhận được có chính xác hay không bằng cách gửi một bit dominant trong ô ACK. Phía gửi nhờ đó có thể xác minh xem tin nhắn có

được chuyển chính xác hay không. Việc không có bit này chỉ ra rằng có lỗi trong khi truyền tin nhắn.

2.3.6.4 Kiểm tra đường truyền

Nút gửi liên tục theo dõi mức điện áp của đường truyền . Nó có thể phát hiện lỗi truyền bằng cách so sánh bit đã gửi và bit được lấy mẫu.

2.3.6.5 Bit Stuffing

Bit Stuffing quy định rằng trong mọi khung dữ liệu (Data frame) hay Remote frame, mỗi năm bit truyền liên tiếp có trạng thái như nhau thì hệ thống tự động một bit có trạng thái ngược lại. Trạm nhận sẽ xóa tất cả các bit được chèn sau khi nhận được tin nhắn (hủy bỏ. Phương pháp này cho phép phát hiện lỗi đường dây, ví dụ: ngắn mạch hoặc nhiễu sóng.

Hình 2.13 : Phương pháp bảo toàn, nhồi bit dữ liệu trong CAN

Một phần của tài liệu NGHIÊN CỨU MẠNG CAN TRÊN Ô TÔ. (Trang 26 - 27)

Tải bản đầy đủ (PDF)

(45 trang)