Bài giảng Mạng máy tính và Hệ thống thông tin công nghệ - CAN (Controller Area Network) - Đào Đức Thịnh

pdf 40 trang huongle 3670
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Mạng máy tính và Hệ thống thông tin công nghệ - CAN (Controller Area Network) - Đào Đức Thịnh", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_mang_may_tinh_va_he_thong_thong_tin_cong_nghe_can.pdf

Nội dung text: Bài giảng Mạng máy tính và Hệ thống thông tin công nghệ - CAN (Controller Area Network) - Đào Đức Thịnh

  1. Mạng máy tính & Hệ thống thông tin công nghiệ Đào Đức Thịnh BM Kỹ thuật đo & THCN
  2. CAN (Controller Area Network) Mô tả chung về giao thức: - CAN là một giao thức thông tin nối tiếp, cung cấp hệ điều khiển thời gian thực , phân tán với độ tin cậy cao. - CAN là một chuẩn của ISO ( ISO11898). -CAN đ−ợc phát triển năm 1980 bởi BOSCH. - Nó ứng dụng trong CN SX ô-tô, máy công cụ, máy đóng bao
  3. CAN (Controller Area Network) CAN bao gồm các lớp sau:
  4. CAN (Controller Area Network) -Object: + Phát hiện các bản tin đã đ−ợc truyền đi. + Quyết định bản tin nào sẽ đ−ợc nhận bởi lớp Transfer và đ−ợc sử dụng. +Cung cấp giao diện tới ng−ời dùng và các phần cứng liên quan. Ng−ời dùng có thể định nghĩa các đối t−ợng kết nối.
  5. CAN (Controller Area Network) -Transfer: Điều khiển việc định khung, định thời, thực hiện chức năng trọng tài, kiểm tra lỗi, phát hiện lỗi và hạn chế lỗi.Quyết định khi nào thì truyền và nhận bản tin. Ng−ời dụng không đ−ợc tự do thay đổi phần này. - Physical: Truyền các bit giữa các nút với 1 tiêu chuẩn về điện.
  6. CAN (Controller Area Network)
  7. CAN - Các khái niệm cơ bản - Bản tin: thông tin đ−ợc truyền theo 1 vài định dạng cố định, có độ dài hạn chế. khi Bus rỗi một thiết bị có thể truyền 1 bản tin. - Định tuyến thông tin: Một nut CAN không chứa bất kỳ thông tin nào về hệ + Hệ mềm dẻo. + Định tuyến bản tin: sử dụng Identifier và Message Filtering. -Multi Cast. - Độ bảo toàn dữ liệu.
  8. CAN - Các khái niệm cơ bản - Tốc độ truyền. - Mức độ −u tiên của bản tin. - Yêu cầu dữ liệu từ xa. - Multi Master. -Trọng tài.
  9. CAN - Các khái niệm cơ bản - An toàn dữ liệu: + Kiểm tra lỗi: . Giám sát. .CRC . Nhồi bit. .Kiểm tra khung bản tin. + Hiệu quả: .Tất cả các lỗi toàn cục. .Lỗi tại bộ truyền. . 5 lỗi phân bố ngẫu nhiên. .chuỗi lỗi < 15 bit . Các lỗi lẻ . Còn lại 4.7 10-11
  10. CAN - Các khái niệm cơ bản - Báo lỗi và thời gian phục hồi. - Hạn chế lỗi. - Kết nối trong CAN - Kênh truyền. - Giá trị bit. -ACK - Sleep/Wake up.
  11. CAN - Cấu trúc bản tin Các bản tin đ−ợc truyền và xử lý trong CAN theo 4 kiểu khác nhau của khung bản tin: - Data Frame: mang thông tin từ nơi phát đến nơi thu. - Remote Frame: gửi đi một yêu cầu truyền một Data Frame với cùng một Identifier. - Error Frame: truyền đi bởi bất kỳ một nút nào phát hiện ra lỗi trên Bus. - Overload Frame: cung cấp một thời gian trễ giữa Data Frame và Remote Frame. Giữa Data Frame và Remote Frame đ−ợc phan biệt với nhau bởi InterFrame Space.
  12. CAN - Cấu trúc bản tin Data Frame: bao gồm 7 tr−ờng bit. - START OF FRAME. - ARBITRATION FIELD - CONTROL FIELD - DATA FIELD - CRC FIELD -ACK FIELD -END OF FRAME
  13. CAN - Cấu trúc bản tin
  14. CAN - Cấu trúc bản tin - START OF FRAME: đánh dấu việc bắt đầu một Data Frame, hay Remote Frame. Nó gồm 1 bit "trội" ( Dominant) - Trạm có thể gửi số liệu khi bus rỗi. - Các trạm sẽ đồng bộ với s−ờn của START OF FRAME.
  15. CAN - Cấu trúc bản tin ARBITRATION FIELD: bao gồm IDENTIFIER and the RTR- BIT. IDENTIFIER bao gồm 11 bit ID10 - ID0. Các bit cao truyền đi tr−ớc. 7 bit cao nhất từ ID10-ID4 không đ−ợc tất cả là "lặn" (Recessive) RTR BIT (Remote Transmission Request BIT) " trội" nếu là Data Frame. " lặn" nếu là Remote Frame.
  16. CAN - Cấu trúc bản tin
  17. CAN - Cấu trúc bản tin CONTROL FIELD: bao gồm 6 bit. 4 bit mã hoá độ dài của tr−ờng dữ liệu 0 8 2 bit danh cho mở rộng trong t−ơng lai
  18. CAN - Cấu trúc bản tin
  19. CAN - Cấu trúc bản tin
  20. CAN - Cấu trúc bản tin - Data Field : Chứa 0 8 byte dữ liệu. - CRC Field: bao gồm CRC sequence và CRC delimiter CRC sequence là kết quả tính toán theo ph−ơng pháp CRC các tr−ờng: START OF FRAME, ARBITRATION FIELD, CONTROL FIELD, DATA FIELD - Sử dụng đa thức: X15 + X14 + X10 + X8 + X7 + X4 + X3 + 1. - CRC delimiter bao gồm một bit lặn.
  21. CAN - Cấu trúc bản tin
  22. CAN - Cấu trúc bản tin - ACK FIELD bao gồm 2 bit ACK SLOT và ACK DELIMITER. - Khi truyền bên truyền sẽ gửi đi hai bit lặn. - Nếu bên nhận nhận tốt bản tin sẽ gửi bit trội vào ACK SLOT - End of Frame: là một cờ bao gồm 7 bit lặn.
  23. CAN - Cấu trúc bản tin
  24. CAN - Cấu trúc bản tin Remote Frame: bao gồm 6 tr−ờng bit. - START OF FRAME. - ARBITRATION FIELD - CONTROL FIELD - CRC FIELD -ACK FIELD -END OF FRAME ( T−ơng tự nh− Data Frame)
  25. CAN - Cấu trúc bản tin
  26. CAN - Cấu trúc bản tin Error Frame bao gồm Error Flag + Error Delimiter. Error Flag : bao gồm hai loại ACTIVE ERROR FLAG bao gồm 6 bit trội PASSIVE ERROR FLAG bao gồm 6 bit lặn - Một trạm ở trạng thái lỗi tích cực nếu phát hiện ra lỗi sẽ truyền đi một cờ lỗi tích cực. Luật của cờ lỗi sẽ phá huỷ luật chèn bit hay định dạng cố định của bản tin. - Một trạm ở trạng thái lỗi bị động nếu phát hiện ra lỗi thi sẽ truyền di cờ lỗi bị động.
  27. CAN - Cấu trúc bản tin - ERROR DELIMITER: bao gồm 8 bit lặn. Sau khi truyền đi cờ lỗi trạm sẽ truyền đi các bit lặn sau đó sẽ giám sát Bus cho tới khi nhận đ−ợc các bit lặn thì truyền thêm 7 hay nhiều hơn các bit lặn.
  28. CAN - Cấu trúc bản tin
  29. CAN - Cấu trúc bản tin OVERLOAD FRAME bao gồm hai tr−ờng OVERLOAD FLAG và OVERLOAD DELIMITER. Có hai điều kiện quá tải: - Điều kiện bên trong bộ nhận mà nó yêu cầu một thời gian trễ cho Data Frame và Remote Frame tiếp theo. - Phát hiện ra một bit trội trong quá trình Intermission. OVERLOAD FLAG bao gồm 6 bit trội. OVERLOAD DELIMITER bao gồm 8 bit lặn
  30. CAN - Cấu trúc bản tin
  31. CAN - Cấu trúc bản tin INTERFRAME SPACE bao gồm hai tr−ờng INTERMISSION và BUS IDLE INTERMISSION bao gồm 3 bit lặn. Các Data Frame và Remote Frame đ−ợc cách nhau bởi INTERFRAME SPACE. INTERMISSION các trạm không đ−ợc truyền các Data hay Remote Frame mà chỉ có thể truyền điều khiện quá tải. BUS IDLE trạm có thể truyền các bản tin.
  32. CAN - Mã hoá thông tin: Các tr−ờng START OF FRAME, ARBITRATION FIELD, CONTROL FIELD,DATA FIELD and CRC SEQUENCE của bản tin đ−ợc mã hoá bởi PP nhồi bit. - Nếu bên phát phát hiện ra 5 bit liền nhau giông nhau trong chuỗi bit đã truyền đi thì nó sẽ tự động chèn một bit đảo vào. -Các tr−ờng còn lại của DATA FRAME hay REMOTE FRAME (CRC DELIMITER, ACK FIELD and END OF FRAME) không bị chèn. ERROR FRAME và OVERLOAD FRAME duy trì định dạng cố định không bị chèn. - các bit mã hoá NRZ.
  33. CAN - Kiểm soát lỗi. Phát hiện lỗi: Có 5 kiểu lỗi khác nhau - BIT ERROR - STUFF ERROR - CRC ERROR -FORM ERROR - ACKNOWLEDGEMENT ERROR
  34. CAN - Kiểm soát lỗi. Báo lỗi: Một trạm khi phát hiện ra lỗi thì sẽ gửi đi mộ cờ lỗi. Các lỗi nh− BIT ERROR, STUFF ERROR, FORM ERROR ACKNOWLEDGEMENT ERROR phát hiện ra ở bit nao thì cờ lỗi sẽ truyền ở bit tiếp theo. Nếu lỗi CRC đ−ợc phát hiện thì cò lỗi sẽ truyền sau ACK delimiter.
  35. CAN - Hạn chế lỗi Hạn chế lỗi các nút CAN chia ra làm 3 trạng thái: - error active - error passive - bus off Mỗi một nút có hai bộ đếm: TRANSMIT ERROR COUNT RECEIVE ERROR COUNT
  36. CAN - Hạn chế lỗi Các luật thay đổi giá trị bộ đếm: 1. Khi bộ nhận phát hiện ra 1 lỗi thì bộ đếm lỗi nhận tăng lên 1. Ngoại trừ tr−ờng hợp lỗi bit khi truyền cò lỗi tích cực hay quá tải. 2.Khi bộ nhận phát hiện ra một bit trội là bít đầu tiên sau khi truyền đi cờ lỗi thì bộ đếm lỗi nhận tăng lên 8. 3. Khi bộ truyền phát hiện ra một lỗi thì nó sẽ truyền đi 1 cờ lỗi và bộ đếm lỗi truyền sẽ tăng lên 8. 4. Nếu bộ truyền phát hiện ra lỗi bit khi truyền cờ lỗi tích cực hay cờ quá tải thì bộ đếm lỗi truyền tăng lên 8. 5. Nếu bộ nhận phát hiện ra lỗi bit khi truyền cờ lỗi tích cực hay cờ quá tải thì bộ đếm lỗi nhận tăng lên 8.
  37. CAN - Hạn chế lỗi 6. Nếu bất kỳ nút nào chịu 7 bit trội liền nhau sau khi truyền đi cờ lỗi tích cực, bị động, cờ quá tải thì bbộ đếm lỗi truyền và nhận tăng lên 8. 7. Sau khi truyền tốt một bản tin thì bộ đếm lỗi truyền giảm đi 1 ngoại trừ nó đã =0. 8. Sau khi nhận tốt một bản tin bộ đếm lỗi nhận: - giảm đi 1 nếu nó 128. 9. Nút lỗi bị động nếu có BĐLT hay BĐLN >127.
  38. CAN - Hạn chế lỗi 10. Bus off nếu có BĐLT>256 11. Lỗi bị đông nếu BĐLT và BĐLN lỗi tích cực vơi BĐLT=BĐLN=0 sau 128 sự kiện 11 bit lặn liện nhau đ−ợc ghi nhận trên Bus.
  39. CAN - Hạn chế lỗi