Controller Area Network (CAN) là một công nghệ mạng ghép nối tiếp (a serial nextwork technology) hỗ trợ mạnh cho những hệ thống điều khiển phân bố thời gian thực (distributed realtime control system) với độ ổn định, bảo mật và đặc biệt chống nhiễu cực kỳ tốt. Điểm nổi trội nhất ở chuẩn CAN là tính ổn định và an toàn (reliability and safety). Nhờ cơ chế phát hiện và xử lý lỗi cực mạnh, lỗi thông báo CAN hầu như được phát hiện. Theo thống kê, xác suất để một thông báo của CAN bị lỗi không được phát hiện nhỏ hơn 4.71011.
Trang 1MẠNG CAN (Controller Area Nextwork)
Nhóm 2
Võ Nhị Anh 081367D
Dương Nguyễn Tuấn Anh 081361D
Hoàng Quốc Hùng 081423D
Nguyễn Trường Công
Trang 2I Tổng quan về mạng CAN
Controller Area Network (CAN) là một công nghệ mạng ghép nối tiếp (a serial nextwork technology) hỗ trợ mạnh cho những hệ thống điều khiển phân bố thời gian thực (distributed realtime control system) với độ ổn định, bảo mật và đặc biệt chống nhiễu cực kỳ tốt
Điểm nổi trội nhất ở chuẩn CAN là tính ổn định và an toàn (reliability and safety) Nhờ cơ chế phát hiện và
xử lý lỗi cực mạnh, lỗi thông báo CAN hầu như được phát hiện Theo thống kê, xác suất để một thông báo của CAN bị lỗi không được phát hiện nhỏ hơn 4.7*10-11
Khởi nguồn được thiết kế dùng cho công nghiệp xe ô tô, sau được chuẩn hóa quốc tế trong ISO 11898 và
đã trở thành một bus (kênh) phổ biến trong tự động hóa công nghiệp cũng như các ứng dụng khác
Trang 3II Kiến trúc giao thức
Mô hình mạng CAN chuẩn ISO 11898
Trang 4 Đối chiếu với mô hình ISO/OSI, CAN gồm: phần chính của lớp vật lý (physical) và lớp Dữ liệu (Data link) gồm 2 lớp con là LLC và MAC Các lớp từ 3 đến 6 không thể hiện ở CAN, giao thức và các dịch vụ của lớp ứng dụng (Application) được định nghĩa cụ thể
Lớp vật lý định nghĩa phương thức định thời, tạo nhịp bit (bit timing), phương pháp mã hóa bit và đồng bộ hóa
Lớp dữ liệu định nghĩa frame truyền và những nguyên tắc truy cập bus
Lớp MAC (Medium Access Control): Phần cốt lõi trong kiến trúc giao thức CAN, có trách nhiệm tạo khung thông báo, điều khiển truy nhập môi trường, xác nhận thông báo, kiểm soát lỗi.
Lớp LLC : đề cập tới các dịch vụ gửi dữ liệu và yêu cầu dữ liệu từ xa, lọc thông báo , báo cáo tình trạng quá tải
và hồi phục trạng thái.
II Kiến trúc giao thức
Trang 5 CAN không quy định cụ thể về chuẩn truyền dẫn cũng như môi trường truyền thông Trong thực tế, cáp đôi dây xoắn kết hợp với chuẩn RS-485 và cáp quang được sử dụng phổ biến
Đối với cáp đôi dây xoắn cấu trúc mạng thích hợp là đường thẳng mắc theo kiểu trunkline/dropline Chiều dài đường nhánh hạn chế dưới 0.3m Số trạm tối đa 64 trạm
CAN phân biệt 2 trạng thái logic của tín hiệu là mức trội (dominant) và mức lặn (recessive) Nếu cả bít trội
và lặn được phát đồng thời thì bit trội sẽ lấn át và tín hiệu trên bus sẽ có mức trội Nếu sử dụng mạch AND thì mức trội tương ứng với bit “0” và mức lặn tương ứng với bit “1”
III Cấu trúc mạng và kỹ thuật truyền dẫn
Trang 6 CAN sử dụng phương pháp mã hóa NRZ (Non-Return-to-Zero), có nghĩa là trong suốt 1 chu kỳ bit, mức tín hiệu hoặc là trội hoặc là lặn
Phương pháp truy nhập bus là CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance), tốc độ tối đa là 1Mbit/s ở khoảng cách 40m và 50kbit/s ở 1000m
Chiều dài tối đa là 1km, để sử dụng bus dài hơn 1 km, phải cần một hệ thống kết nối trung gian như repeater hoặc bridge
Việc bổ sung hay bỏ đi một trạm trong mạng CAN không đòi hỏi bất cứ một thay đổi nào về phần cứng hay phần mềm ở các trạm khác
III Cấu trúc mạng và kỹ thuật truyền dẫn
Trang 7 Mã căn cước không nói lên địa chỉ đích của thông tin mà chỉ biểu diễn ý nghĩa thông tin Mỗi trạm có thể quyết đinh nhận và xử lý thông tin hay không nhận thông tin
Mỗi trạm đều có khả năng yêu cầu trạm khác gửi thông tin bằng cách giử một REMOTE FRAME Trạm có khả năng cung cấp thông tin đó sẽ gửi trả lại một DATA FRAME có cùng mã căn cước với khung yêu cầu
Đặc trưng của CAN là phương pháp định địa chỉ và giao tiếp hướng đối tượng Mỗi thông tin trao đổi trong mạng được coi như một đối tượng và được gán môt mã số căn cước (Identifier)
III Cấu trúc mạng và kỹ thuật truyền dẫn
Trang 81 Cấu trúc Frame truyền dữ liệu:
• CAN sử dụng phương pháp định địa chỉ theo đối tượng Các đối tượng là các thông báo mang dữ liệu quan tâm như giá trị đo, giá trị điều khiển, thông tin trạng thái…
• Mỗi Frame truyền sẽ có một ô chứa căn cước của đối tượng với chiều dài 11 bit (dạng khung chuẩn theo CAN2.0A) hoặc 29 bit (dạng khung mở rộng theo CAN2.0B)
• CAN định nghĩa 4 kiểu Frame truyền sau:
Khung dữ liệu (DATA FRAME): mang dữ liệu từ một trạm truyền tới các trạm nhận.
Khung yêu cầu dữ liệu (REMOTE FRAME): được gửi từ một trạm yêu cầu truyền khung dữ liệu cùng với
mã căn cước.
Khung lỗi (ERROR FRAME) được gửi từ bất kì trạm nào phát hiện lỗi bus.
Khung quá tải (OVERLOAD FRAME): được sử dụng nhằm tạo một khoảng cách thời gian bổ sung giửa 2 DATA FRAME hoặc REMOTE FRAME trong trường hợp một trạm quá tải.
III Cấu trúc dữ liệu và truy nhập bus
Trang 9 SOF (Start Of Frame): bắt đầu một Frame truyền, luôn là 1 bit trội (dominant) Tất cả các trạm sẽ đồng bộ hóa dựa vào bit khởi đầu này
Ô phân xử (Arbitration Field): là mức ưu tiên của Frame truyền, quyết định quyền truy nhập bus Trong đó
mã căn cước có chiều dài 11 bit đối với khung chuẩn, và 29 bit với khung mở rộng Bit cuối cùng của ô phân xử được gọi là bit RTR (Remote Transmission Request) dùng để phân biệt DATA FRAME (bit trội)
và REMOTE FRAME (bit lặn)
III Cấu trúc dữ liệu và truy nhập bus
Trang 10 Ô điều khiển (Remote Field): dài 6 bit, 4 bit cuối mã hóa chiều dài dữ liệu.
Ô dữ liệu (Data Field): chiều dài từ 0 đến 8 byte, mỗi byte được truyền đi theo thứ tự từ bit có giá trị cao nhất (MSB) đến bit có giá trị thấp nhất (LSB)
Ô kiểm soát lỗi CRC (CRC Field): bao gồm 15 bit tính theo phương pháp CRC và 1 bit lặn phân cách Dãy bit đầu vào để tính bao gồm bit khởi đầu khung, ô phân xử, o điều khiển, ô dữ liệu, với đa thức phát:
G = X15+ X14+ X10+ X8+ X7+ X4+ X3+ 1
Ô xác nhận ACK (ACK Field): gồm 2 bit được phát đi là các bit lặn Mỗi trạm nhận phải kiểm tra mã CRC, nếu đúng sẽ phát chồng lên một bit trội trong thời gian nhận được bit ACK đầu tiên (ACK slot) Như vậy, một Frame truyền chính xác sẽ có 1 bit ACK trội nằm giữa 2 bit lặn phân cách (1 bit phân cách CRC
và 1 bit phân cách ACK)
EOF (End Of Frame): kết thúc Frame truyền được đánh dấu bằng 7 bit lặn
III Cấu trúc dữ liệu và truy nhập bus
Trang 112 Khung lỗi (ERROR FRAME):
• Một khung lỗi được gửi từ bất kì trạm nào phát hiện lỗi trên bus Khung lỗi bao gồm cờ lỗi (Error Flag) và phân cách lỗi (Error Delimiter) Có 2 dạng lỗi là lỗi chủ động (Active Error)
và lỗi bị động (Passive Error) tương ứng là 2 loại cờ lỗi:
Cờ lỗi chủ động bao gồm 6 bit trội liền nhau
Cờ lỗi bị động bao gồm 6 bit lặn liền nhau, trừ trường hợp nó bị ghi đè bởi các bit trội từ các trạm khác
• Phân cách lỗi được đánh dấu bằng 8 bit lặn liên tục
III Cấu trúc dữ liệu và truy nhập bus
Trang 12III Cấu trúc dữ liệu và truy nhập bus
2 Khung quá tải (OVERLOAD FRAME):
• Một khung quá tải có cấu trúc tương tự khung lỗi bao gồm cờ quá tải (Overload Flag) và phân cách quá tải (Overload Delimiter)
Cờ quá tải bao gồm 6 bit trội liền nhau
Phân cách quá tải được đánh dấu bằng 8 bit lặn liên tục.
• Tối đa 2 khung quá tải có thể sử dụng để tạo thời gian trễ giữa 2 khung dữ liệu hoặc khung yêu cầu dữ liệu
Trang 133 Truy nhập bus:
• CAN sử dụng phương pháp truy nhập bus là CSMA/CA Phương pháp phân mức ưu tiên truy cập bus dựa theo tính cấp thiết của nội dung thông báo Mức ưu tiên này cần phải được đặt cố định trước khi hệ thống đi vào hoạt động
• Mã căn cước không những mang ý nghĩa của dữ liệu mà còn được sử dụng là mức ưu tiên
• Bất cứ trạm nào trong mạng cũng có thể gửi thông báo khi đường truyền rỗi
• Khi có hai hoặc nhiều trạm cùng đồng thời bắt đầu gửi thông báo thì việc phân xử xung đột sẽ dựa theo từng bit trong mã căn cước
III Cấu trúc dữ liệu và truy nhập bus
Trang 14 Nếu bit trội có giá trị “0” và bit lặn giá trị “1” thì một thông báo có mã căn cước nhỏ nhất sẽ có mức
ưu tiên cao nhất
Trong trường hợp xảy ra va chạm giữa DATA FRAME và REMOTE FRAME với cùng mã căn cước thì DATA FRAME sẽ được ưu tiên
Phương pháp truy cập này đảm bảo thông tin không bị mất mát mà còn nâng cao hiệu quả sử dụng đường truyền
III Cấu trúc dữ liệu và truy nhập bus
Trang 15 Mạng CAN được sử dụng phổ biến trong công nghiệp ôtô.
Ngoài ra mạng CAN còn được sử dụng để phát triển các hệ thống mạng truyền thông công nghiệp như: CANopen, SDS, DeviceNet…
III Ứng dụng của mạng CAN
Sơ đồ ứng dụng mạng CAN trong điều khiển ôtô