BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
---------------------------------------
BÙI TRUNG LẬP
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
NGÀNH: CÔNG NGHỆ KỸ THUẬT Ô TÔ
TÊN ĐỀ TÀI: NGHIÊN CỨU MẠNG TRUYỀN DỮ LIỆU
CAN-BUS TRÊN CÁC Ô TÔ HIỆN ĐẠI
Cán bộ hướng dẫn: T.S Vũ Hải Quân
Sinh viên thực hiện: Bùi Trung Lập
CÔNG NGHỆ KỸ THUẬT Ô TÔ
Mã số sinh viên:
2018605212
Hà Nội – 2022
1
MỤC LỤC
MỤC LỤC ..................................................................................................................1
DANH MỤC HÌNH ẢNH ..........................................................................................4
DANH MỤC BẢNG BIỂU ........................................................................................6
LỜI NÓI ĐẦU ............................................................................................................7
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT VỀ MẠNG GIAO TIẾP CAN-BUS ................8
1.1 Giới thiệu chung về mạng Can-bus......................................................... 8
1.1.1
Lịch sử phát triển ........................................................................ 8
1.1.2 Ưu điểm của mạng Can .................................................................... 9
1.1.3 Kết nối kiểu Bus ............................................................................. 11
1.2 Khái niệm hệ thống mạng Can (Control Erea Network) ...................... 12
1.3 Mơ hình 7 lớp Open System Interconnection (OSI) ............................. 14
1.3.1 Giới thiệu........................................................................................ 14
1.3.2 Khái quát ISO-11898-2 .................................................................. 15
1.3.3 Mức Bus ......................................................................................... 16
1.3.4 Giắc nối và dây dẫn ........................................................................ 17
1.3.5 Yêu cầu và khả năng hoạt động ..................................................... 17
1.3.6 Chiều dài Bus ................................................................................. 17
1.4 Các thuộc tính của Can ......................................................................... 18
1.5 Cấu trúc của mạng giao tiếp Can .......................................................... 20
1.5.1 Data Frame ( Khung dữ liệu) ......................................................... 20
1.5.2 SOF( Start of frame)....................................................................... 21
1.5.3 Arbitration field ( Trường phân chia) ............................................ 21
1.5.4 Control field ................................................................................... 23
1.5.5 Data Field ....................................................................................... 24
1.5.6 CRC Field....................................................................................... 24
2
1.5.7 ACK Field ...................................................................................... 25
1.5.8 Interframe space ............................................................................. 25
1.5.9 Remote Frame ( Khung tách biệt) .................................................. 26
1.5.10 Error Frame ( Khung lỗi) ............................................................. 26
1.5.11 Overload Frame ............................................................................ 27
1.6 Cấu tạo của phần cứng .......................................................................... 28
1.7 Kết Luận Chương 1 ............................................................................... 29
CHƯƠNG 2. HỆ THỐNG MẠNG GIAO TIẾP CAN-BUS TRÊN CÁC Ô TÔ ĐỜI
MỚI ...........................................................................................................................30
2.1 Đặc điểm của mạng giao tiếp Can- Bus trên ô tô ................................. 30
2.2 Hệ thống truyền dữ liệu Can-Bus trên xe Toyota Yaris ....................... 32
2.2.1 Kết nối (Kiểu Bus) ......................................................................... 32
2.2.2 Vị trí các chi tiết ............................................................................. 33
2.3 Kết Luận Chương 2 ............................................................................... 41
CHƯƠNG 3. MÔ HÌNH MẠNG GIAO TIẾP CANBUS ỨNG DỤNG MODULE
CAN MCP 2515. .....................................................................................................43
3.1 Giới thiệu về Arduino Uno R3 và phần mềm Arduino IDE ................. 43
3.1.1 Arduino Uno R3 ............................................................................. 43
3.1.2 Phần mềm lập trình Arduino IDE ................................................. 45
3.2 Tổng quan về Module MCP 2512 ......................................................... 46
3.3 Xây dựng mơ hình thực tế ..................................................................... 47
3.3.1 Hướng đi của mơ hình .................................................................... 47
3.3.2 Các linh kiện sử dụng trong mơ hình ............................................. 48
3.3.3 Tiến hành xây dựng mơ hình ......................................................... 53
3.4 Kết Luận Chương 3 ............................................................................... 55
CHƯƠNG 4. HƯ HỎNG VÀ LỖI THƯỜNG GẶP TRONG HỆ THỐNG MẠNG
CAN-BUS TRÊN Ô TÔ ...........................................................................................57
4.1 Những hư hỏng của mạng Can.............................................................. 57
3
4.2 Kiểm tra mạng Can trên ô tô ................................................................. 60
4.3 Phân tích mã lỗi U0001:High speed can communication bus off –mạng
giao tiếp Can tốc độ cao mất kết nối trên xe ............................................... 62
4.3.1 Mô tả mã lỗi ................................................................................... 62
4.3.2 Quy trình xử lý mã lỗi .................................................................... 63
4.4 Kết Luận Chương 4 ............................................................................... 66
KẾT LUẬN ..............................................................................................................67
TÀI LIỆU THAM KHẢO ........................................................................................68
PHỤ LỤC .................................................................................................................69
4
DANH MỤC HÌNH ẢNH
Hình 1.1 Chiếc xe khi chưa được trang bị mạng giao tiếp Can-bus ................. 9
Hình 1.2 Hệ thống dây mạng Can trang bị trên ô tô ....................................... 10
Hình 1.3 Cấu trúc kiểu Bus ............................................................................. 12
Hình 1.4 Sơ đồ tổng quát hệ thống mạng Can trên ô tô.................................. 12
Hình 1. 5 Mơ hình 7 lớp Open System Interconnection (OSI) ....................... 14
Hình 1.6 Mơ hình hệ thống Can tiêu chuẩn .................................................... 15
Hình 1.7 Sự chênh lệch trên Bus ..................................................................... 16
Hình 1.8 Mức Bus theo tiêu chuẩn ISO 11898 ............................................... 16
Hình 1.9 Cấu trúc một khung dữ liệu.............................................................. 21
Hình 1.10 Mơ hình cấu trúc trường phân chia ................................................ 22
Hình 1.11 Khung tiêu chuẩn ........................................................................... 22
Hình 1.12 Khung mở rộng .............................................................................. 23
Hình 1.13 Mơ hình cấu trúc Control Field ...................................................... 24
Hình 1.14 Mơ hình cấu trúc CRC Field .......................................................... 24
Hình 1.15 Mơ hình cấu trúc ACK Field.......................................................... 25
Hình 1.16 Mơ hình thể hiện cấu trúc Remote Frame ...................................... 26
Hình 1.17 Mơ hình thể hiện cấu trúc Error frame ........................................... 27
Hình 1.18 cấu trúc Overload Frame ................................................................ 28
Hình 1.19 Cấu trúc một mạch Can-Bus ......................................................... 28
Hình 2.1 Mạch truyền tín hiệu CAN cơ bản ................................................... 30
Hình 2.2 Đặc điểm của dây mạng Can trên ơ tơ ............................................. 31
Hình 2.3 Ngun lý hoạt động của mạng Can ................................................ 32
Hình 2.4 Sơ đồ kết nối mạng Can trên xe Toyota Yaris ................................. 32
Hình 2.5 Vị trí của các ECU trong hệ thống mạng giao tiếp .......................... 33
5
Hình 2.6 các đặc điểm của dây giao tiếp Can ................................................. 34
Hình 2.7 Nguyên lý truyền dữ liệu trong mạng CAN (gói dữ liệu được truyền
như thế nào) ..................................................................................................... 35
Hình 2.8 Sơ đồ mạch điện của mạng Can trên ô tơ ........................................ 35
Hình 2.9 Các hệ thống mạng Can trên ô tô ..................................................... 36
Hình 2.10 Cấu trúc hoạt động của Lin -Bus ................................................... 39
Hình 2.11 Kết nối mạng ethernet trên ô tô ...................................................... 40
Hình 3.1 Arduino Uno R3 ............................................................................... 43
Hình 3.2 Giao diện phần mềm Arduino Uno R3 ............................................ 45
Hình 3.3 Module MCP 2512 ........................................................................... 46
Hình 3.4 Sơ đồ các chân kết nối trên Module MCP 2515 .............................. 47
Hình 3.5 Cấu tạo của cảm biến nhiệt độ LM35 .............................................. 48
Hình 3.6 Cảm biến trên xe sử dụng nguyên lí biến trở ................................... 49
Hình 3.7 Sơ đồ các chân của LCD 1602 ......................................................... 50
Hình 3.8 Cấu trúc chân của Module I2C ........................................................ 53
Hình 3.9 Sơ đồ kết nối của mơ hình................................................................ 53
Hình 3.10 Sơ đồ kết nối bên truyền ................................................................ 54
Hình 3.11 Mơ hình mạng giao tiếp Can-Bus ứng dụng Arduino ................... 54
Hình 4.1 Hư hỏng dây mạng Can.................................................................... 58
Hình 4.2 Dùng máy chuẩn đoán để phát hiện các mã lỗi mạng Can .............. 59
Hình 4.3 Kiểm tra mạng Can ngắn mạch với mass ........................................ 60
Hình 4.4 Kiểm tra mạng Can ngắn mạch với dương ...................................... 61
Hình 4.5 Kiểm tra giữa 2 dây Can H và Can L.............................................. 62
Hình 4.6 Vị trí bộ phận trên xe ....................................................................... 62
Hình 4.7 Mạch điện mạng Can trên xe Hyundai Kona ................................... 64
6
DANH MỤC BẢNG BIỂU
Bảng 1.2 Mơ hình thời gian trễ giữa 2 node trong mạng Can ........................ 18
Bảng 1.3 Định dạng khung dữ liệu ................................................................. 21
Bảng 2.1 Thông số về dây truyền dữ liệu........................................................34
Bảng 3.1 Thông số kĩ thuật của Arduino Uno R3............................................44
Bảng 3.2 Chân kết nối giữa Arduino và Module MCP 2515.......................... 47
7
LỜI NĨI ĐẦU
Trong những năm gần đây, một đặc tính của ôtô hiện đại là sự phát triển
việc điều khiển điện tử một cách nhanh chóng, có nhiều hệ thống điều khiển
khác nhau và việc điều khiển đòi hỏi phải chính xác. Tổng khối lượng dây điện
xấp xỉ 50 kg và tổng chiều dài dây gần 2 km. Để giải quyết vấn đề này, các nhà
sản xuất ô tô đã chủ động phát triển một hệ thống thông tin đa dẫn Multiplex
gọi tắt là MPX. Ngày nay một hệ thống điều khiển được chia ra thành nhiều
cụm khác nhau và được điều khiển bởi những máy tính riêng rẽ khác nhau. Do
đó số lượng dây dẫn và các cảm biến ngày càng tăng, dẫn đến việc chẩn đoán
sữa chữa gặp nhiều khó khăn. Do vậy sự ra đời của một hệ thống mạng điều
khiển là vô cùng quan trọng. Trải qua q trình học tập tại trường Đại học Cơng
Nghiệp Hà Nội, kết hợp với những kiến thức tìm hiểu của bản thân, em đã quyết
định nghiên cứu và hoàn thiện đề tài “ NGHIÊN CỨU MẠNG TRUYỀN DỮ
LIỆU CAN-BUS TRÊN CÁC Ô TÔ HIỆN ĐẠI”. Nội dung của đề tài gồm
những phần sau đây:
Chương 1: Cơ sở lý thuyết về mạng giao tiếp Can-Bus
Chương 2: Hệ thống mạng giao tiếp Can-Bus trên xe ô tô đời mới
Chương 3: Mô hình mạng giao tiếp Can-Bus ứng dụng Module MCP 2512
Chương 4: Hư hỏng và lỗi thường gặp trong hệ thống mạng Can-Bus trên ơ tơ
Đồ án của em được hồn thành với sự cố gắng của bản thân và sự giúp đỡ
chỉ bảo tận tình của giáo viên hướng dẫn. Song do sự hạn chế về trình độ chun
mơn, cũng như kinh nghiệm thực tế của bản thân nên không thể tránh khỏi
những sai sót. Em rất mong nhận được sự góp ý, chỉ bảo của các thầy giáo để
đồ án của em được hoàn chỉnh hơn. Em xin chân thành cảm ơn sự giúp đỡ,
hướng dẫn tận tình của thầy TS. Vũ Hải Quân, cũng như toàn thể các thầy giáo
đã giúp đỡ em trong quá trình học tập tại trường.
Sinh viên thực hiện
Bùi Trung Lập
8
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT VỀ MẠNG GIAO TIẾP CAN-BUS
1.1 Giới thiệu chung về mạng Can-bus
CAN được phát triển lần đầu tiên bởi Robert Bosch GmbH, Đức vào năm
1986 khi họ được Mercedes yêu cầu phát triển một hệ thống liên lạc giữa ba
ECU (bộ điều khiển điện tử) trên xe. Họ nhận thấy rằng UART khơng cịn phù
hợp trong tình huống này vì nó được sử dụng trong giao tiếp điểm – điểm. Nhu
cầu về một hệ thống liên lạc đa chủ trở nên cấp thiết. Bởi vậy, mạng CAN đầu
tiên đã xuất hiện vào năm 1987 bởi Intel chế tạo.
Về mặt lý thuyết, CAN có thể liên kết tới 2032 thiết bị (giả sử một nút với
một mã ID) trên một mạng duy nhất. Nó cung cấp tốc độ truyền thông tốc độ
cao lên đến 1 Mbits / giây do đó cho phép điều khiển thời gian thực. Ngồi ra,
tính năng hạn chế lỗi và phát hiện lỗi làm cho nó đáng tin cậy hơn trong mơi
trường nhiễu nghiêm trọng.
Dựa trên đặc điểm thông số kỹ thuật của Bosch. Phiên bản 2.0 của CAN
được chia thành hai phần:
CAN tiêu chuẩn (Phiên bản 2.0A): sử dụng ID (Identifier) 11 bit.
CAN mở rộng (Phiên bản 2.0B): sử dụng ID 29 bit.
Hai phần được định nghĩa bởi các ID khác nhau của thơng điệp, với sự
khác biệt chính là độ dài mã ID.
Có hai tiêu chuẩn ISO cho CAN. Sự khác biệt là ở lớp vật lý: ISO 11898
xử lý các ứng dụng tốc độ cao lên đến 1Mbit / giây và ISO 11519 có giới hạn
trên là 125kbit / giây.
1.1.1 Lịch sử phát triển
Khi bạn bấm một công tắc trong nhà để bật đèn, dịng điện sẽ chạy qua
cơng tắc để đến đèn. Các công tắc và hệ thống dây điện cần phải đủ nặng và đủ
cách điện để xử lý dòng điện dự kiến tối đa. Các bức tường của ngôi nhà cũng
phải được lấp đầy hệ thống dây điện với tính năng cách nhiệt này.
9
Ơ tơ và xe tải từng được đi dây giống hệt nhau. Đầu tiên là vào 1915, khi
Henry Ford có ý tưởng lắp thêm đèn và cịi điện vào ơ tơ. Cụ thể là lắp dịng
điện chạy từ pin qua công tắc đến đèn và các thiết bị khác. Vào những năm
1960, có hàng ngàn dây điện nặng chạy khắp mọi phương tiện. Mỗi một trọng
lượng tăng thêm sẽ làm giảm hiệu quả sử dụng nhiên liệu của xe.
Sau lệnh cấm vận dầu mỏ vào những năm 1970, áp lực ngày càng tăng đối
với các nhà sản xuất ô tô trong việc cải thiện hiệu suất sử dụng nhiên liệu của
họ. Vì vậy, họ bắt đầu tìm cách giảm trọng lượng của những chiếc xe mà họ
đang chế tạo.
Hình 1.1 Chiếc xe khi chưa được trang bị mạng giao tiếp Can-bus
1.1.2 Ưu điểm của mạng Can
Tiêu chuẩn CAN Bus được chấp nhận sử dụng rộng rãi. Nó được ứng dụng
trong thực tế trên tất cả các phương tiện và nhiều loại máy móc mang lại rất
nhiều lợi ích.Đầu tiên nó giúp Các ECU giao tiếp thông qua một hệ thống CAN
duy nhất. Thay vì thơng qua các đường tín hiệu tương tự phức tạp trực tiếp –
giảm sai số, trọng lượng, hệ thống dây điện và chi phí. Các chip CAN ln có
sẵn và giá cả phải chăng. CAN Bus cung cấp một điểm vào để giao tiếp với tất
cả các ECU. Qua đó cho phép chẩn đốn, ghi dữ liệu và cấu hình.Khơng chỉ
vậy, Hệ thống CAN bus hoạt động rất đáng tin cậy trong môi trường nhiễu điện
10
và nhiễu điện từ. Đây là lựa chọn lý tưởng cho các ứng dụng quan trọng về an
toàn. Điều này thể hiện rõ trong các phương tiện xe ô tô khi cùng lưu thông trên
đường. Khung CAN được ưu tiên bởi số ID. Dữ liệu ưu tiên hàng đầu được truy
cập Bus ngay lập tức mà không gây gián đoạn các khung khác.Một điều quan
trong là hệ thống Can-Bus đã làm giảm trọng lượng xe, Can Bus đã loại bỏ
hàng km dây điện. Từ đó loại bỏ trọng lượng bản thân của chúng khỏi xe. CAN
bus hoàn toàn dễ dàng triển khai trên nhiều loại xe. Nó đã đạt tiêu chuẩn với hệ
sinh thái hỗ trợ phong phú.không chỉ vây, Can-bus có khả năng Khả năng chống
lại nhiễu điện từ (EMI) [4]. Điều này làm cho CAN trở nên lý tưởng cho các
ứng dụng quan trọng trong xe cộ. CAN có khả năng kiểm sốt và phát hiện lỗi
tuyệt vời. Việc phát hiện lỗi dễ dàng được thực hiện và do đó dữ liệu được
truyền sẽ đến được nơi cần đến.
Hình 1.2 Hệ thống dây mạng Can trang bị trên ô tô
Nó là một giao thức lý tưởng khi yêu cầu kiểm sốt một hệ thống phức
tạp. Nó làm giảm hệ thống dây điện nặng nề. Do đó giảm chi phí và trọng lượng.
Chi phí của chip thấp và việc triển khai CAN tương đối dễ dàng do giao thức
được thiết kế rõ ràng. Một lợi thế khác khi sử dụng CAN là hai lớp đầu tiên:
lớp vật lý và lớp liên kết dữ liệu, được thực hiện bên trong các vi mạch rẻ tiền,
có sẵn.
11
Ngồi trên ơ tơ thì Can cịn ứng dụng trong rất nhiều lĩnh vực khác nhau
như :
Trong bệnh viện, mạng CAN có thể sử dụng để điều khiển các thiết bị
trong phòng như đèn, bảng điện tử, máy nội soi, máy X-quang, camera,
máy in, ....
Hệ thống thang máy: Các bo điều khiển thông tin với nhau qua bus CAN
ở
các tầng và bo mạch chính.
Ứng dụng mạng trong cơng ty: các hệ thống có thể sử dụng chuẩn CAN
để
xây dựng mạng phụ để thực thi khởi động hệ thống và hỗ trợ tháo lắp
"nóng" (hotswapping) thiết bị trên các bo PC lớn dùng để định tuyến.
1.1.3 Kết nối kiểu Bus
Kiểu Bus là một trong số những mơ hình mắc ECU trong hệ thống
MPX.MPX là viết tắt của Multiplex là hệ thống thông tin đa dẫn. Truyền thơng
nói chung là q trình trao đổi thơng tin, cũng được biết đến là giao tiếp giữa
con người với con người: nó bao gồm q trình mã hóa, truyền tải, và giải mã
thông điệp dự định và được gọi là ngơn ngữ. Như chúng ta đã biết có nhiều
ngơn ngữ trên thế giới. Bên cạnh các giao tiếp của con người thơng qua ngơn
ngữ thì có nhiều phương tiện truyền thông khác. Sự giao tiếp cũng diễn ra giữa
các thiết bị điện, đặc biệt là các cụm điều khiển điện tử, để chia sẻ và trao đổi
dữ liệu, các kết nối và chia sẻ thơng tin giữa nhiều máy tính nên được gọi là
một mạng. Trong trường hợp giao tiếp máy tính trong một mạng “ngơn ngữ
chung”, (là các quy tắc cho việc truyền dữ liệu) được gọi là giao thức. Để mô
tả chi tiết hơn về giao thức chúng ta xét các kiểu liên kết như: liên kết vòng,
sao và Bus.
12
Hình 1.3 Cấu trúc kiểu Bus
Với cấu trúc này ,các ECU được kết nối với nhau bằng 1 dây đơn.Việc kết
nối kiểu này vô cùng phù hợp trên ô tô bởi khi 1 ECU bị lỗi thì nó khơng hề
ảnh hưởng gì đến đường truyền, các ECU khác vẫn tiếp tục có thể truyền tín
hiệu qua lại nhau.Khơng những thế cấu trúc kiểu này dễ dàng cho phép ta bổ
sung thêm ECU vào đường truyền [8].
1.2 Khái niệm hệ thống mạng Can (Control Erea Network)
Hình 1.4 Sơ đồ tổng quát hệ thống mạng Can trên ô tô
13
CAN là một hệ thống giao thức các phương tiện liên lạc nối tiếp. Mạng CAN
được sử dụng rộng rãi trong điện tử ô tô để điều khiển động cơ, cảm biến…..
Giao thức lớp truyền dữ liệu CAN được tiêu chuẩn hóa ISO 11898-1 (2003).
Tiêu chuẩn này mơ tả chủ yếu lớp truyền dữ liệu được hợp bởi 2 lớp phụ:
Logical Link Control (LLC) và Media Access Control (MAC) và 1 vài khía
cạnh của lớp vật lý của ISO/OSI Reference Model. Có 1 số tiêu chuẩn của lớp
vật lý CAN
- ISO 11898-2: CAN tốc độ cao.
- ISO 11898-3: CAN fault-tolerant (tốc độ thấp).
- ISO 11992-1: CAN fault-tolerant cho xe tải, xe lửa.
- SAE J2411: CAN dây đơn (Single-wire CAN_SWC).
- ISO 11898-2 sử dụng 2 dây tín hiệu cân đối. Hầu hết lớp vật lý được sử
dụng trong hệ thống truyền động ôtô và các mạng điều khiển công nghiệp.
Tiêu chuẩn ISO 11898-4 xác định thời gian kích hoạt giao tiếp trên CAN.
Nó được dựa trên giao thức lớp truyền dữ liệu CAN cung cấp 1 hệ thống
đếm thời gian cho lịch trình của thơng điệp.
Tiêu chuẩn CAN khơng bao gồm các nội dung của lớp giao tiếp, chẳng
hạn như kiểm sốt dịng chảy, địa chỉ thiết bị, và sự di chuyển của 1 khối dữ
liệu lớn hơn 1 thông điệp, vì vậy có nhiều cách triển khai giao thức lớp cao hơn
được tạo ra.
Trong số này có DeviceNet, CANopen, SDS, J1939, và Kingdom.
Dựa vào chức năng của từng lớp mà CAN được chia thành 2 loại Data link
layer (lớp kết nối dữ liệu): lớp này được chia thành 2 lớp:
- Lớp kết nối theo lôgic (Logical link control_LLC): tiếp nhận thơng tin bởi
q trình lọc, khai báo nghẽn mạng (q tải) và nhiệm vụ quản lí, khơi phục
thơng tin được thực hiện bởi lớp này.
14
- Lớp điều khiển truy cập phương tiện truyền thông tin- Lớp MAC (Medium
Access Control): lớp này sẽ gói gọn truyền thông tin, phát hiện lỗi và thực
hiện các nhiệm vụ báo hiệu và phản hồi thông tin.
Physical layer (lớp vật lý): lớp này giải quyết các vấn đề về mã hóa và giải
mã bit, bit timing, q trình đồng bộ hóa.
1.3 Mơ hình 7 lớp Open System Interconnection (OSI)
1.3.1 Giới thiệu
Giao thức CAN định rõ lớp kết nối dữ liệu (Data Link Layer) và 1 phần
lớp vật lý (Physical Layer) trong mơ hình OSI. Sự duy trì lớp vật lý (và tất cả
của lớp cao) không được định nghĩa rõ bởi đặc điểm kỹ thuật của CAN. Những
lớp khác này có thể được định nghĩa bởi nhà thiết kế hệ thống.
Lớp kết nối dữ liệu được định nghĩa bởi đặc điểm kỹ thuật của CAN. Bộ
phận điều khiển kết nối logic LLC (Logical Link Control) giải quyết những
công việc: quản lý tình trạng q tải và cơng việc khai báo quá tải, lọc thông
điệp và khôi phục các chức năng điều khiển. Bộ phận Medium Access Control
(MAC) thực hiện cơng việc gói dữ liệu, phát hiện và điều khiển lỗi, … Physical
Medium Attachment (PMA) và Medium Dependent Interface (MDI) là 2 phần
của lớp vật lý, chúng không được định nghĩa bởi CAN.
Hình 1.5 Mơ hình 7 lớp Open System Interconnection (OSI)
15
Sự phân chia bộ phận Physical Signaling (PS) của lớp vật lý được định
nghĩa bởi đặc điểm kỹ thuật của CAN. Nhà thiết kế hệ thống có thể chọn bất
kỳ driver/receiver và phương tiện truyền thông tin trung gian miễn là các yêu
cầu của PS được đáp ứng. Tổ chức các tiêu chuẩn quốc tế (ISO) đã định rõ 1
tiêu chuẩn kết hợp chặt chẽ với đặc điểm kỹ thuật của CAN cũng như là lớp vật
lý. Tiêu chuẩn ISO-11898 ban đầu được đưa ra cho các phương thức giao tiếp
với tốc độ cao trên xe sử dụng hệ thống CAN. ISO-11898 định rõ lớp vật lý để
đảm bảo khả năng tương thích giữa các bộ phận thu nhận. Một CAN ĐIỀU
KHIỂN tiêu biểu thực hiện toàn bộ các đặc điểm kỹ thuật của CAN trong phần
cứng (hình 3.2). Bộ phận PMA không được định rõ bởi CAN, tuy nhiên nó
được định nghĩa rõ trong đặc điểm kỹ thuật của tiêu chuẩn ISO-11898 [8].
1.3.2 Khái quát ISO-11898-2
ISO 11898 là tiêu chuẩn quốc tế cho giao thức CAN tốc độ cao sử dụng
trên ô tô. ISO-11898-2 áp dụng cho các lớp phụ của lớp vật lý như PMA và
MDA. Hình 3.3 thể hiện 1 node/bus của hệ thống CAN sử dụng rộng rãi được
mơ tả bởi tiêu chuẩn ISO-11898.
Hình 1.6 Mơ hình hệ thống Can tiêu chuẩn
16
1.3.3 Mức Bus
CAN thể hiện 2 trạng thái logic: trội và lặn. ISO - 11898 định rõ 1 sự
chênh lệch điện áp để thể hiện trạng thái lặn hay trội.
Hình 1.7 Sự chênh lệch trên Bus
Ở trạng thái lặn, sự chênh lệch điện áp trên CAN-H và CAN-L nhỏ hơn
ngưỡng nhỏ nhất (<0, 5 V ở đầu vào receiver hoặc <1, 5 V ở đầu ra của bộ
transmitter). (hình 1.7) Ở trạng thái trội, sự chênh lệch điện áp trên CANH và
CANL lớn hơn ngưỡng nhỏ nhất rất nhiều. 1bit trội sẽ có tốc độ cao hơn so với
1 bit lặn trên bus. Điều này tạo ra sự phân chia giữa các node mà không ảnh
hưởng đến sự phân chia bitwise.
Hình 1.8 Mức Bus theo tiêu chuẩn ISO 11898
17
1.3.4 Giắc nối và dây dẫn
ISO – 11898 - 2 không định rõ tiêu chuẩn của giắc nối và dây dẫn. Tuy
nhiên đặc điểm của gắc nối và dây dẫn phải đáp ứng được yêu cầu đặc điểm về
điện. Đặc điểm kỹ thuật cũng yêu cầu có các điện trở giới hạn 120 Ω tại mỗi
đầu của bus. Hình 1.6 thể hiện ví dụ của 1 CAN bus dựa trên tiêu chuẩn
ISO_11898
1.3.5 Yêu cầu và khả năng hoạt động
Đặc điểm kỹ thuật của tiêu chuẩn ISO-11898-2 yêu cầu rằng 1 bộ thu phát
tương thích phải đáp ứng được 1 số yêu cầu đặc điểm về điện. Một vài đặc điểm
được dùng để chắc chắn rằng bộ thu nhận có thể hoạt động được trong các chế
độ khắc nghiệt về điện, do đó bảo vệ được sự liên lạc của node trong hệ thống
CAN. Bộ thu nhận phải hoạt động được sau khi bị ngắn mạch trên CAN bus từ
-3V dến +32V và điện áp tạm thời từ -150V đến +100V. Bảng 3.6 thể hiện các
yêu cầu chính về điện của tiêu chuẩn ISO 11898-2 cũng như là các đặc điểm
của chipset MCP2551 [9].
1.3.6 Chiều dài Bus
ISO 11898 yêu cầu về đặc điểm kỹ thuật của bộ thu nhận có thể đạt được
chiều dài bus là 40m tại tốc độ 1Mb/s. Chiều dài của bus có thể được gia tăng
nhưng tốc độ truyền dữ liệu sẽ giảm. Giới hạn lớn nhất cho chiều dài của bus
đó là tình trạng chậm trễ trong q trình truyền thơng tin của bộ thu nhận. Giao
thức CAN định rõ trạng thái của 1 bit lặn („1‟) và trội („0‟) để thực hiện 1 sự
sắp xếp mà không ảnh hưởng đến sự phân chia bit-wise. Đây là phương pháp
luận về sự phân chia, nó bị ảnh hưởng hầu hết bởi các tình trạng trì hỗn trong
q trình truyền thơng tin. Mỗi node địi hỏi phải có sự phân chia với mỗi mức
bit trong cùng 1 bit time. Ví dụ, nếu 2 node bắt đầu truyền thơng điệp của chúng
trong cùng 1 thời điểm, chúng đòi hỏi phải có sự phân chia để điều khiển bus.
Sự phân chia này chỉ tác động nếu 2 node có cùng bit time. Hình 3.7 thể hiện 1
sự trì hỗn trong q trình truyền thơng tin 1 chiều giữa 2 node. Sự trì hỗn này
18
sẽ gia tăng nếu sự phân chia chưa thực hiện được. Điều này có nghĩa là chiều
dài của bus bị giới hạn bởi tốc độ truyền dữ liệu của CAN [6].
Bảng 1.1 Mơ hình thời gian trễ giữa 2 node trong mạng Can
Sự chậm trễ trong q trình truyền thơng tin của 1 hệ thống CAN được
tính theo thời gian hồi của tín hiệu trên bus vật lý (tbus), thời gian trễ ở đầu ra
của driver (output driver delay tdrv) và thời gian trễ của đầu vào máy so (input
comparator delay “tcmp”). Tất cả các node trong hệ thống có cùng thời gian
trễ, thời gian trì hỗn trong qua trình truyền thơng tin được tính theo cơng thức
tốn hoc sau: tprop = 2 tbus+tcmp+tdrv [6].
1.4 Các thuộc tính của Can
Nhiều dữ liệu được tiếp nhận với thời gian đồng bộ hóa: đồng thời nhiều
nodes có thể nhận được các khung. Khi bus nhàn rỗi thì bất kì máy tính nào
cũng có thể bắt đầu truyền thơng điệp, các máy tính với thơng điệp có ưu tiên
cao hơn sẽ được truyền tới bus trước. Sự ưu tiên thông điệp: tùy thuộc vào tầm
quan trọng của thông điệp, sự ưu tiên sẽ được chia thành các loại thông điệp
khác nhau.
Sự phân chia: bất cứ khi nào bus nhàn rỗi, máy tính nào cũng có thể bắt
đầu truyền 1 thơng điệp. Nếu có 2 máy tính hoặc nhiều hơn đồng thời truyền
thơng điệp, thì máy tính được bus truy cập sẽ phụ thuộc vào sự phân chia
bitwise bằng cách sử dụng từ định danh (Indentifier). Cơ chế của sự phân chia
đảm bảo rằng khơng có thơng tin cũng như thời gian nào bị đánh mất. Hệ thống
mở rộng dữ liệu một cách cố định.
19
Đường đi của thông điệp: Một Indentifier đặt tên cho nội dung của 1 thông
điệp. Idetifier không cho biết điểm đến của thông điệp, nhưng mô tả ý nghĩa
của dữ liệu, vì vậy tất cả các nodes trong mạng có thể quyết định bằng cách cho
sàng lọc thông điệp nếu như dữ liệu có được thực hiện trên nó hay không.
Yêu cầu dữ liệu từ xa: bằng cách gửi 1 remote frame, 1 node dữ liệu yêu
cầu node khác phải gửi data frame tương ứng. Một Indentifier giống nhau được
đặt cho data frame và remote frame tương ứng.
Phát hiện lỗi và gửi tín hiệu. Tự động gửi lại thơng điệp hỏng ngay khi
nhận thấy bus nhàn rỗi. Có thể phân biệt giữa lỗi tạm thời và hư hỏng vĩnh
viễn và tự chuyển ra khuyết tật của node. Có cấu hình linh hoạt: số lượng node
có thể được thêm vào hay bớt ra khỏi hệ thống mà không cần thực hiện bất kì
sự thay đổi nào trong phần mềm hoặc phần cứng.
Bit rate: tốc độ của viềc truyền thông điệp trong CAN có thể khác nhau
trong các hệ thống khác nhau. Nhưng cho 1 hệ thống, các bitrate là thống nhất
và cố định. VD: tốc độ truyền lên tới 1Mbit/s khi chiều dài mạng dưới 40m,
nhưng khi chiều dài mạng là 500m thì tốc độ là 125kbit/s.
Có các loại: 1 dây đơn, 2 dây khác nhau, sợi quang …
Single channel: các bus bao gồm 1 kênh mang các bit. Bằng cách đó thì
kênh được thực hiện khơng phải là cố định [4].
Giá trị bus: bus có thể có 1 trong 2 giá trị logic: „trội‟ („0 ‟) hoặc „lặn‟
(„1‟). Trong thời gian đồng thời chuyển các bit „trội‟ và „lặn‟, thì kết quả giá
trị bus sẽ là „trội‟.
Phản hồi (Acknowledgement): các nơi nhận kiểm tra tính kiên định của
thơng điệp được nhận và sẽ công nhận nơi chuyển bằng cách gửi bit „trội‟ lên
Acknowledgement field trong trường hợp tiếp nhận đúng thông điệp. Chế độ
Sleep/Wake up: để giảm điện năng tiêu thụ, hệ thống CAN có thể được thiết
lập vào chế độ Sleep mà khơng có bất kì hoạt động nào bên trong cùng vơí trình
điều khiển bus nào bị ngắt kết nối
20
Interframe spacing: data frame và remote frame được tách ra từ các khung
trước bởi trường interframe spacing.
1.5 Cấu trúc của mạng giao tiếp Can
Dựa vào kích thước của Indentifier field, có 2 loại CAN:
Loại tiêu chuẩn (STANDARD): 11- bit wide indentifier field.
Loại mở rộng (EXTENDED): 29- bit wide indentifier field.
Các máy tính trong mạng CAN giao tiếp với nhau bằng cách gửi các gói
thơng điệp. Tùy thuộc vào loại thông tin giao tiếp, giao thức CAN xác định có
4 loại thơng điệp (gọi là Frame_ khung). Loại đầu tiên và phổ biến nhất của
khung là Data Frame. Loại này được sử dụng khi 1 node truyền thông tin cho
bất kì hay tất cả các node trong hệ thống. Loại thứ hai là Remote Frame, đó cơ
bản là 1 Data Frame với các bit RTR được thiết lập để biểu tượng nó là 1
Remote Transmit Request. Khi 1 máy tính trong hệ thống CAN u cầu 1 dữ
liệu thì máy tính này sẽ gửi đi 1 Remote Frame. Hai loại khung khác là để xử
lí lỗi, một cái gọi là Error Frame, một cái gọi là Overload Frame. Error Frame
được tạo ra bởi các nodes khi mà nó phát hiện ra một trong những giao thức có
lỗi được định nghĩa bởi CAN. Overload Frame được tạo ra bởi các nodes khi
mà nó yêu cầu thêm thời gian để xử lí các thơng điệp đã nhận [4].
1.5.1 Data Frame ( Khung dữ liệu)
Mơ tả: mang dữ liệu từ máy tính truyền đến máy tính nhận. Data Frame
bao gồm các trường (field) mà nó cung cấp thêm thơng tin về thơng điệp theo
qui định của CAN: Start Of Frame, Arbitration Field, Control Field, Data Field,
CRC Field, ACK Field, End Of Frame.
21
Hình 1.9 Cấu trúc một khung dữ liệu
Bảng 1.2 Định dạng khung dữ liệu
Bits
1
SOF
12/32
6
064 16
2
Arbitration Control Data CRC ACK
Field
field
field field field
7
EOF
Interframe
space
1.5.2 SOF( Start of frame)
Bắt đầu của 1 khung bit. Nó là dấu hiệu bắt đầu của 1 frame khi 1 bit trội
được nhận diện sau chế độ nhàn rỗi của bus.
1.5.3 Arbitration field ( Trường phân chia)
Bao gồm Identifier và RTR - BIT
22
Hình 1.10 Mơ hình cấu trúc trường phân chia
Arbitration Field được sử dụng để ưu tiên thông điệp trên bus. Từ đó giao
thức CAN định nghĩa logic „0‟ là „trội‟, có số phân chia thấp hơn, thì có sự
ưu tiên cao hơn trên bus. Arbitration Field bao gồm 12 bit (11 bit identifier và
1 bit RTR) hoặc là 32 bit (29 bit identifier, 1 bit để xác định thông điệp khi là
1 khung dữ liệu mở rộng, 1 bit SRR không được sử dụng, và 1 bit RTR), phụ
thuộc vào khung đang sử dụng là khung tiêu chuẩn hay là khung mở rộng. Phiên
bản CAN 2.0B xác định 29 bit identifier và gọi là khung mở rộng. Phiên bản
trước của CAN xác định 11 bit idetifier và gọi là khung tiêu chuẩn.
Hình 1.11 Khung tiêu chuẩn
23
Hình 1.12 Khung mở rộng
Indentifier field: chứa các thơng tin của message. Đối với loại khung cơ
bản thì độ dài của vùng này là 11 bit, còn trong loại khung mở rộng thì có thêm
18 bit được thêm vào, do đó tổng độ dài của trường này đối với loại khung mở
rộng là 29 bit.
SRR: rộng 1 bit, được sử dụng trong khung mở rộng. Bit SRR là bit lặn
và trong loại khung cơ bản thì nó đươc thay thế bằng bit RTR.
RTR: rộng 1 bit, Remote Transmit Request (RTR) được sử dụng bởi 1
node khi nó u cầu thơng tin được gửi tới nó từ node khác. Để hồn thành 1
RTR, một Remote Frame được gửi với sự nhận diện của Data Frame được yêu
cầu. Bit RTR trong Arbitration Field được sử dụng để phân biệt giữa 1 Remote
Frame và 1 Data Frame. Nếu bit RTR là „lặn‟ thì thông điệp là Remote Frame,
nếu bit RTR là bit ,trội‟ thì thơng điệp là Data Frame.
IDE: rộng 1 bit.Những dấu hiệu cho biết khung đang chuyển vào là của
khung cơ bản nếu là bit trội được nhận, còn nếu IDE là bit lặn thì khung đi vào
là khung mở rộng.
1.5.4 Control field
Rộng 6 bit. Control field bao gồm 6 bit. MSB là bit IDE (tượng trưng cho
khung mở rộng), là bit trội của khung tiêu chuẩn. Bit này quyết định nếu thông
điệp là khung tiêu chuẩn hay khung mở rộng. Trong khung mở rộng, bit này là
RB1 và nó được bảo lưu. Bit kế tiếp là RB0 và nó cũng được bảo lưu. Bốn bit
còn lại là DLC bit (Data Length Code). Bit DLC thể hiện chiều dài tổng thể của
24
vùng dữ liệu, xác định có bao nhiêu byte dữ liệu bao gồm trong thông điệp. Cần
lưu ý rằng 1 Remote Frame khơng có Data Field, bất kể giá trị của bit DLC [4].
Hình 1.13 Mơ hình cấu trúc Control Field
1.5.5 Data Field
Chứa đựng thông tin thực tế trong khoảng giới hạn 0 đến 8 byte. Data
Field bao gồm số lượng byte dữ liệu được mô tả trong Data Length Code của
Control Field [5].
1.5.6 CRC Field
Hình 1.14 Mơ hình cấu trúc CRC Field
Rộng 16 bit. Được chia thành 2 phần: CRC Field bao gồm 15 bit trường
CRC và 1 CRC phân định, được sử dụng bởi các node nhận dữ liệu để xác định
nếu có các lỗi truyền xảy ra.