Trong nước Mạng truyền thông giao thức CAN khơng phải là một lĩnh vực kỹ thuật hồn tồn mới mà thực chất là các công nghệ được kế thừa, chắt lọc và phát triển từ kỹ thuật truyền thống cho
CƠ SỞ LÍ THUYẾT
Tổng quan về mạng truyền thông
2.1.1 Khái niệm về mạng truyền thông
Mạng truyền thông công nghiệp và mạng truyền thông trên ô tô chỉ các hệ thống mạng truyền thông số, truyền bit nối tiếp, được sử dụng để nối các thiết bị công nghiệp, các thiết bị trong một hoặc nhiều hệ thống
2.1.2 Vai trò của mạng truyền thông
Ghép nối các thiết bị, trao đổi thông tin theo dõi, giám sát toàn bộ quá trình hoạt động và hệ thống điều khiển
- Đơn giản hóa cấu trúc liên kết giữa các thiết bị
- Tiết kiệm dây nối, công thiết kế giữa các thiết bị
- Nâng cao độ tin cậy và chính xác của thông tin
- Nâng cao độ linh hoạt, tính năng mở rộng hệ thống
- Đơn giản hóa/tiện lợi hóa việc tham số, chẩn hóa, định vị lỗi, sự cố của các thiết bị
- Mở ra nhiều chức năng và khả năng ứng dụng mới của hệ thống
2.1.3 Truyền thông, truyền dữ liệu và truyền tín hiệu
2.1.3.1 Giao tiếp và truyền thông
Giao tiếp hay truyền thông là một quá trình trao đổi thông tin với nhau theo một phương pháp được quy định trước Đối tác này để điều khiển đối tác kia hoặc quan sát trạng thái của đối tác
- Truyền dữ liệu là phương pháp truyền thông giữa các máy tính (mạng máy tính) Để có thể truyền dữ liệu trong hệ truyền thông phải thực hiện quá trình mã hóa và giải mã tín hiệu
2.1.4 Truyền một chiều và truyền hai chiều
2.1.4.1 Chế độ truyền một chiều
Thông tin chỉ được truyền đi theo 1 hướng nhất định từ bộ phát sang bộ nhận và không có chiều ngược lại
2.1.4.2 Chế độ truyền hai chiều gián đoạn
Thông tin truyền đi theo hai hướng, hai trạm luân phiên nhau đóng vai trò truyền và nhận
2.1.4.3 Chế độ truyền hai chiều toàn phần
- Hai trạm đóng vai trò truyền và nhận thông tin cùng một lúc
Trong quá trình truyền dữ liệu, tín hiệu có thể mất đi hoặc sai lệch do nhiều yếu tố khác nhau Để tránh khỏi sai lệch, người ta thực hiện nhiều phương pháp khác nhau
Có thể phân loại lỗi như sau:
- Lỗi phát hiện được không sửa được
- Lỗi phát hiện được và sửa được
- Lỗi không phát hiện được
- Dựa vào giao thức để phát hiện và khắc phục lỗi Khi một lỗi được phát hiện có thể khôi phục dữ liệu hoặc yêu cầu gửi lại dữ liệu
Các phương pháp bảo toàn dữ liệu thông dụng là:
- Bit chẵn lẻ là một phương pháp kiểm tra lỗi đơn giản, được áp dụng rất rộng rãi
- Nguyên tắc làm việc được mô tả như sau: Tùy theo tổng số các bit 1 trong thông tin nguồn là chẵn hay lẻ mà ta thêm vào một bít thông tin phụ trợ p = 0 hoặc p = 1, gọi là parity bit, hay bit chẵn lẻ Trong trường hợp này, ta cũng gọi là prity bit một chiều
- Phương pháp này rất đơn giản và hiệu quả Giá trị của bít chẵn lẻ p phụ thuộc vào cách chọn
- Nếu chọn parity chẵn, thì p = 0 khi tổng số bit 1 là chẵn
- Nếu chọn parity lẻ, thì p = 0 khi tổng số bit 1 là lẻ
- Ví dụ dùng parity chẵn:
Giả sử chỉ một hoặc ba bit trong một bức điện gửi đi bị đảo, bên nhận sẽ so sánh và phát hiện được Nhưng chỉ cần hai bit trong một bức điện bị lỗi, thì bên nhận sẽ không phát hiện được nhờ bit chẵn lẻ Nói cách khác số bit chắc chắn phát hiện được ở đây chỉ là 1
Là phương pháp mã đa thức hoặc mã vòng Phương pháp này sử dụng trong hầu hết các hệ thống truyền thông tưởng của phương pháp này là thông tin được kiểm lỗi được gọi là checksum, phải được tính bằng một thuật toán thích hợp, trong đó giá trị mỗi bit của thông tin nguồn được tham gia nhiều lần vào quá trình tính toán Để tính toán thông tin kiểm lỗi đó, người ta dùng một đa thức phát G (Generator polynomial) có một dạng đặc biệt Vì vậy phương pháp này còn được gọi là phương pháp dùng đa thức G được quy ước dưới dạng nhị phân, tức các hệ số của nó chỉ có giá trị 1 hoặc 0 tương ứng với các chữ số trong một dãy bit Ví dụ:
Nguyên tắc cơ bản của phư ng pháp CRC
Giả sử đa thức G có bậc n, ví dụ: , tương ứng với dãy bit (1011) dãy bit mang thông tin nguồn I được thêm vào n bit 0 coi như một đa thức nhị phân P Ví dụ thông tin nguồn là (110101) thì sau khi thêm 3 bit 0, ta có dãy bit (110101000) tương ứng với đa thức P = + + + Đa thức P được chia cho đa thức G dựa vào quy tắc đơn giản của phép trừ không có nhớ như sau:
Không cần quan tâm tới kêt quả của phép chia, phần dư R (lấy n chữ số) của phép chia được thay thế vào chỗ của n chứ không bổ xung trong P, tức là ta có D = P R
Theo tính chất của phép chia đa thức nhị phân, nếu D – R chia hế t cho G thì D = P R cũng vậy R được gọi là checksum và D chính là dãy bít được gửi đi thay cho I
Giả sử dãy bit nhận được là D’ không chia hết cho G thì tức là D khác D’, ta có thể khẳng định được rằ ng bức điện chắc chắ n bị lỗi Ngược lại, nếu D’ chia hết cho G, thì xác suất rất cao là bức điện nhận được không có lỗi ác suất cao là vì mỗi bit trong thông tin nguồn tham gia nhiều vòng (cyclic) vào tính toán thông tin bổ trợ nên khả năng dữ liệu sai mà kết quả đúng là rất ít Ví dụ:
Thông tin cần truyền I = 110101 Đa thức qui ước G = 1011 { tức : }
Thêm 3 bit 0 vào thông tin nguồn I, ta có P 110101000 Chia đa thức P: G theo kiểu nhị phân
Dãy bit được chuyển đi D = P R = 110101111
Giả sử dữ liệu được nhận là D’ = 110101111
Phần dư 0000 -> Xác suất rất cao là không có lỗi
Phương pháp CRC có vẻ phức tạp nhưng việc thực hiện nó là hết sức đơn giản Phép chia đa thức nhị phân ở đây được thực hiện thuần túy bởi phép trừ không có nhớ hay chính là các phép logic OR Bên cạnh đó chỉ cần các phép sao chép và so sánh bit thông thường
Nhồi bit tạo ra một dãy bit thuận lợi cho việc đóng gói dữ liệu và mã hóa bit Chẳng hạn như quy ước bit đầu cuối là 7 bit 0, 8 bit 1 Nếu 7 bit 0, 8 bit 1 xuất hiện một lần nẵ thì bộ nhận rất có thể sẽ hiểu lầm
Phương pháp nhồi bit được thực hiện theo nguyên tắc sau:
- Bên gửi: sau n bit cùng cực, chèn thêm 1 bit ngược cực ( ví dụ 111110,000001)
- Bên nhận: Sau khi nhồi đưa lên đường bus, bộ nhận sẽ giải mã Nếu xuất hiện n+1bit cùng trạng thái tức là có lỗi xảy ra
Hình 2.1: Thứ tự các bit được nhồi (1)
Hình 2.2: Thứ tự các bit được nhồi (2)
Hình 2.3: Cơ chế các nút giám sát lẫn nhau trong mạng CAN
- Các nút không giám sát trực tiếp nhau mà giám sát lẫn nhau thông qua tín hiệu Dựa vào tín hiệu, một trạm có thể biết được tình trạng của các trạm còn lại
- Theo hình trên, tín hiệu Tx gửi đo, tín hiệu đi vào bộ Rx của bộ nhận và bộ Rx của chính nó
2.1.5.6 Cơ chế ghi nhận lỗi
Tổng quan về mạng trên ô tô
Hình 2.11: Minh họa số lượng ECU sử dụng trên xe
2.2.2 Các loại giao thức giao tiếp trên ô tô:
Các loại giao thức phổ biến trên ô tô hiện nay:
- Media Oriented Systems Transport (MOST)
Ngoài ra, còn có các loại giao thức khác như là J1979, J1850, ISO 9141,…Tuy nhiên, trong tương lai các xe tự hành hoàn toàn thì khối lượng dữ liệu và tốc độ truyền dẫn phải rất lớn Để duy trì an toàn cho người lái, tốc độ các mạng như CAN và FlexRay đang áp dụng nhiều nhất hiện nay cũng không thể đáp ứng được Do đó, mạng giao tiếp có thể được sử dụng phải kể đến Ethernet TSN (Time-Sensitive Networking), Ethernet AVB
Bảng 2.1 Các loại giao thức truyền thông hay sử dụng trên ô tô
Giao CAN-C CAN-B LIN MOST FlexRay thức High Low speed
Tốc độ 222- 260 μ 1.1-1.3 ms Hơn 6ms Xấp xỉ 22,6 14- 18,7 ms frame s μs Định Controller Controller Local Local Propnetary nghĩa Area Area Interconnect Interconnect Name
Loại Bus Bus thông Bus thông Bus thông Bus quang Bus thông thường thường thường học thường và bus quang học Phạm vi Truyền lực Thoải Thoải mái Đa phương Tất cả các ứng dụng và mái/tiện /tiện nghi tiện và phạm vi hộp số nghi infortainment
Các ứng Điều khiển Hệ thống Chi phí thấp Điều khiển Hệ thống sử dụng động cơ, hệ mạng điện mở rộng của truyền dụng cho thống mạng tử thân xe CAN bus lực,hộp số, các ứng điều khiển và thoải cho thông tin dụng liên truyền lực mái và tiện các ứng dụng audio và quan tính an và nghi đơn giản video toàn và đơn
ABS/ESP trong phạm giản vi điện tử thoải mái và tiện nghi
Cấu trúc Cấu trúc Cấu trúc không liên kết
Tuyến bus Tuyến bus Tuyến bus không gian gian sao vòng
Tốc độ 125 kbit/s Tối đa 125 Tối đa Tối đa Tiêu biểu truyền dữ đến kbit/s 20kbit/s 22.5Mbit/s 10Mbit/s liệu 1Mbit/s Tối đa
Số nút tối 10 24 16 64 Về mặt lý đa thiết lên đến
Tối đa 22 trên passive bus/sao
Cơ cấu Dựa theo Dựa theo Dựa theo Dựa theo Dựa theo thời điều tác động tác động thời gian thời gian và tác khiển gian và tác động động
Sự phân Lớp C Lớp B Lớp A Phương tiện Drive by loại SAE di động wire
Sự triển Tất cả các Tất cả các Tất cả các xe Dòng xe cao Ứng dụng khai xe xe cấp của các thí điểm nhà sản xuất xe châu Âu
LIN (Local Interconnect Network - mạng cục bộ trên xe) Sử dụng để truyền dữ liệu giữa các ECU của than xe, ECU chính được kết nối với mạng CAN nhận tín hiệu về và phân phối cho các ECU thành phần xử lí và ngược lại
- Vì mạng LIN có tốc độ truyền thấp nên sử dụng cho hệ thống điện phân phối linh hoạt không cần tới mạng CAN
Hình 2.12: Sơ đồ bố trí mạng LIN
MOST (Media Oriented system transport) là mạng sử dụng cho hệ thống giải trí, tiện nghi trên xe như máy radio, máy CD,video, điện thoại di động
FLEXRAY dùng trong các hệ thống an toàn tiện nghi và các hệ thống truyền động Do FLEXRAY điều khiển những hệ thống quan trọng nên phải bảo đảm yêu cầu về đặc tính truyền đạt, tỷ lệ bit cao, và mức độ lỗi thấp để tránh gây nguy hiểm cho người lái
2.2.3 Yêu cầu về mạng giao tiếp:
2.2.3.1 Tốc độ truyền dữ liệu:
Tốc độ truyền dữ liệu có đơn vị là bit/giây Ngoài tên gọi data transferate còn có tên gọi khác như transferate, data rate, bit rate
- Tốc độ truyền khác nhau tùy vào mục địch sử dụng, tốc độ càng nhanh đòi hỏi khả năng chịu lỗi càng cao, giá thành càng cao Ngược lại tốc độ càng chận thì lại gây ra độ trễ truyền tin
Trong vật lí phổ thông, chúng ta đã biết rằng khi có dòng điện đi qua dây dẫn sẽ sinh ra từ trường và ngược lại và từ trường sẽ sinh ra dòng điện
- Trong ô tô có rất nhiều thiết bị sinh ra từ trường mặc dù chưa gây nguy hiểm cho con người nhưng sẽ gây nguy hiểm cho thiết bị
- Tùy vào mục đích ứng dụng mà yêu cầu kháng nhiễu khác nhau
2.2.3.3 Khả năng đáp ứng thời gian thực:
Thời gian thực tương đối: Thời gian mà hệ thống phản hồi có thể chậm hơn nhưng không gây ra ảnh hưởng nghiêm trọng
Thời gian thực tuyệt đối:
- Đòi hỏi tuân thủ thời gian một cách tuyệt đối mà không được phép xuất hiện bất kì sự chậm trễ nào
- Dùng trong những hệ thống an toàn trên ô tô nên một sai sót nhỏ trong quá trình truyền tin, phản hồi thông tin cũng sẽ gây ra những ảnh hưởng nghiêm trọng, nguy hiểm đến tính mạng hành khách trong xe
2.2.3.4 Số node tham gia vào mạng:
Việc giới hạn số lượng node tối đa trong một mạng mang lại nhiều ý nghĩa đặc biệt:
- Giúp giải quyết tình trạng độ trễ truyền tin, sự tranh chấp giữa các tin nhắn trùng nhau cũng sẽ giảm
- Các node phát huy tính độc lập
- Trong 1 mạng, số node tối đa có thể lắp đặt tùy thuộc vào mục đích sử dụng của giao thức để tính toán độ trễ và tốc độ bit
2.2.4 Các ứng dụng trong ô tô:
Hiện nay, mạng nội bộ trên ô tô hiện nay được phân chia thành 4 nhóm chính dựa trên chức năng và đặc tính của chúng:
- Hệ thống an toàn tiện nghi
- Hệ thống đa phương tiện
Tùy mỗi hệ thống mà có những vùng ứng dụng riêng Có 3 ứng dụng cơ bản trên ô tô hiện nay:
2.2.4.1 Ứng dụng thời gian thực:
Xu hướng hiện tại của ngành công nghiệp ô tô chính là dần thay thế các hệ thống cơ khí hay cơ – thủy lực kiểu cũ bằng các hệ thống cơ – điện tử được điều khiển bằng máy tính Đơn cử như đối với các hệ thống như ABS hay -by-wire, các yêu cầu của chúng đặt lên các hệ thống điều khiển điện tử là cực cao, và gần như không cho phép bất cứ sai sót hay độ trễ nào có thể xảy ra, chính vì lẽ đó mà các giao thức sử dụng cho các hệ thống này phải không ngừng hoàn thiện và cần được thay thế bởi các giao thức mới hơn, hiệu quả hơn
Khi càng có nhiều các hệ thống cơ – thủy lực được thay thế bằng các hệ thống cơ – điện tử thì sẽ càng có nhiều máy tính điều khiển, và do các cơ cấu chấp hành đa số nằm trong khoang động cơ nên các máy tính này cũng sẽ phải được đặt ở vị trí tương tự Mà ta đã biết khoang động cơ chính là một trong những vùng chịu nhiễu điện từ trường lớn nhất trên xe Tạo áp lực rất lớn đến các cơ chế chống chịu nhiễu nhằm duy trì tính ổn định trong truyền thông tin
Các mạng thuộc nhóm ứng dụng này thì có hai nhóm giao thức thích hợp để sử dụng:
Do cả hai nhóm này đều có bản chất thời gian thực tương tự nhau và cũng được tích hợp khả năng chịu lỗi (chống nhiễu) khá hoàn chỉnh
Class C là nhóm giao thức thường gặp nhất hiện nay cho các ứng dụng thời gian thực trên ô tô, do gần như hầu hết các mẫu xe bình dân, trung cấp (và đôi khi cận cao cấp) sử dụng nhóm giao thức này
Class C+ thì ít gặp hơn, chủ yếu được ứng dụng trong các hệ thống X-by-wire trên các mẫu xe cao cấp
- Hệ thống điều khiển động cơ diesel (EDC)
- Điều khiển lực động của xe (chương trình cân bằng điện tử - ESP)
- Các hệ thống điều khiển khung gầm ô tô (điều khiển thân xe, hệ thống phanh chống hãm - ABS)
- Các hệ thống hỗ trợ (điều khiển hành trình lái - ACC)
2.2.4.2 Ứng dụng đa dẫn Đây là mảng ứng dụng gần như phức tạp và có nhiều nút nhất trên ô tô Các nút trong mảng này không chỉ là các máy tính điều khiển mà còn là các nút bấm, các công tắc, đèn báo và chúng thường được bố trí theo cụm rải rác khắp xe Có thể kể ra một vài hệ thống điển hình như sau:
- Quyền truy cập với các thiết bị cảnh báo chống trộm
- Điều chỉnh gương và ghế ngồi
- Mô-đun cửa (bộ cửa sổ xe tự động, điều chỉnh gương cửa)
- Điều chỉnh đèn pha Đối với các hệ thống thuộc nhóm này thì yêu cầu về tính thời gian thực vẫn có, nhưng không quá khắt khe và thường không yêu cầu tốc độ cao mà chỉ quan tâm đến số lượng nút cho phép trong một mạng
Tổng quan về mạng CAN
2.3.1 Lịch sử phát triển mạng CAN:
Ngày nay, với sự phát triển của công nghệ, hầu hết tất cả xe đều sử dụng mạng CAN ít hoặc nhiều, do đó am hiểu về mạng CAN mới có thể tiếp cận những dòng xe đời mới
CAN được Bosch GmbH phát triển từ năm 1983, sau đó đã chính thức ra mắt vào năm 1986 và được công nhận bởi SAE hiệp hội các kĩ sư ô tô Mỹ, có trụ sở đặt tại
Vào những năm đầu tiên sau khi ra mắt, Intel và Philips là 02 nhà sản xuất đầu tiên sản xuất chip xử lý cho CAN (1987) và Mercedes-Benz W140 là chiếc ô tô thương mại đầu tiên được trang bị CAN Ngày nay, gần như toàn bộ các dòng ô tô hiện đại đều có hỗ trợ CAN và hầu như tất các các nhà sản xuất chip lớn trên thế giới đều sản xuất ra các dòng chip có tích hợp CAN như Siemens, Motorola, NEO, Infineon, Mitsubishi, TI…
Nhờ tính ưu việt và độ tin cậy cao, ban đầu chỉ được áp dụng cho ô tô, về sau được áp dụng cho y tế,tự động hóa, công nghiệp
Mạng CAN còn đáp ứng vấn đề về an toàn, việc giảm dây dẫn giúp ECU kiểm soát tốt dữ liệu trên xe, tránh dữ liệu mất hoặc chậm trễ, giúp người sửa chữa tiết kiệm thời gian, chi phí Tuy nhiên người sửa chữa phải có kỹ năng, kiến thức để khoanh vùng hư hỏng nhanh chóng và chính xác hơn
Ngoài ra mạng CAN là 1 trong 42 giao thức Đặc biệt ô tô dùng CAN, Device Net,
Gateway Trong đó Device net, Gateway phát triển dựa trên giao thức là mạng CAN
Như em dã trình bày mạng CAN là 1 trong 42 giao thức để áp ứng yêu cầu về môi trường, an toàn ngày càng cao Ô tô phải xử lý triệt để vấn đề khí thải, để làm được điều đó cần nhiều cảm biến, ECU Việc gia tăng dây dẫn là thiết bị vận hành kém chính xác Đối với xe đời cũ, dây điện chạm nhau làm sụt áp, nhiều dây làm nặng xe và tốn nhiên liệu
Hình 2.13: Các loại giao thức đang được sử dụng hiện nay
2.3.2 Đặc điểm của mạng CAN:
- Node (Station) là những thành phần độc lập có thể xử lý truyền nhận dữ liệu trên bus CAN, một Node thường có 3 thành phần cơ bản là vi điều khiển MCU, chip điều khiển CAN (CAN controller) và chip thu-phát (CAN transceiver)
- Thông điệp (Message): Thông tin trên bus CAN được gửi dưới dạng các thông điệp có định dạng cố định Các thông điệp có thể khác nhau nhưng độ dài (số bit trong một thông điệp) là có giới hạn và được giới hạn về độ dài Khi bus rảnh (IDLE) thì bất kỳ Node nào trên bus đều có thể bắt đầu truyền một thông điệp mới Thông điệp được truyền thông qua 4 loại khung (frame) khác nhau là khung dữ liệu (Data frame), khung yêu cầu hay khung điều khiển (remote frame), khung báo lỗi (Error frame) và khung báo quá tải (Overload frame)
2.2.3.1.3 Tốc độ bit (Bit rate):
- Tốc độ bit (Bit rate): Tốc độ bit của CAN có thể khác nhau trong các hệ thống khác nhau nhưng trong một hệ thống cho trước thì tốc độ bit đồng nhất và cố định Tốc độ bit còn tùy thuộc vào chiều dài đường truyền Tốc độ tối đa có thể lên đến 1 Mbit/s Sau đây là bảng một số thông số tham khảo thực tế:
Tốc độ bit Chiều dài bus Thời gian bit danh định
(Bit Rate – kbit/s) (Bus Length - m) (Nominal Bit-time - às)
Hình 2.14 Thông số tốc độ bit
2.2.2 Cấu trúc phân lớp của giao thức CAN
- Trong mô hình OSI gồm có 7 tầng, Tầng vật lý, tầng liên kết, tầng mạng, vận chuyển, phiên, trình bày, ứng dụng Có giao thức dùng hết 7 tầng, có giao thức không dùng hết Mạng Can chỉ dùng 2 tầng là Data link và Physical
Hình 2.15 Cấu trúc phân lớp của giao thức CAN
Cấu trúc và các thành phần trong CAN bus
Mạng CAN gồm các thành phần cơ bản sau:
Hình 2 16 Cấu trúc phân lớp của giao thức CAN(2)
Bus CAN là bus vi sai bao gồm:
• Dây cáp gồm hai dây riêng biệt gọi là CAN-H, CAN-L xoắn vào nhau
• CAN-H là dây có điện áp cao khi ở trạng thái trội
• CAN-L là dây có điện áp thấp khi ở trạng thái lặn
• Điện trở đầu cuối của đường dây là 120Ω
Hình 2.17 Dây cáp bus CAN
Node (station): là một thành phần kết nối đến bus CAN thông qua 2 dây CAN_H và CAN_L Node này là các bo mạch hoặc module điều khiển
- MCU (Microcontroller) là một vi điều khiển phân phối dữ liệu cho CAN Controller hoặc lấy dữ liệu nhận từ CAN Controller để sử dụng cho hoạt động của Node
- CAN Controller chuyên xử lý truyền nhận dữ liệu, báo lỗi, tính toán theo thời gian bit, truyền dữ liệu dạng logic 0,1 qua chân Tx, nhận dữ liệu dạng logic 0,1 qua chân Rx
- CAN transceiver chuyển đổi tín hiệu logic thành tín hiệu dạng tương tự trẻn Tx, ngược lại chuyển tín hiệu dạng tương tự sang dạng logic trên đường Rx
Hình 2.18 Minh họa một mạng CAN
2.3.2 Tốc độ truyền dữ liệu
CAN tốc độ cao (CAN High Speed): được định nghĩa trong tiêu chuẩn ISO 11898-
2 và hoạt động với tốc độ 125kbit/s đến 1Mbit/s và được sử dụng cho mạng lưới của các hệ thống sau:
- Hệ thống kiểm soát động cơ (Motronic cho động cơ xăng và động cơ diesel điều khiển điện tử)
- Điều khiển hệ thống truyền lực bằng điện tử
- Các hệ thống cân bằng điện tử ESP
- Các hệ thống hỗ trợ (điều khiển hành trình lái - ACC)
CAN-B được định nghĩa trong tiêu chuẩn ISO 11898-3 và hoạt động ở tốc độ bit từ 5 đến 125kbit/s Nhiều ứng dụng trong phạnm vi thân xe và thoái mái/ tiện nghi Tốc độ này đủ thỏa các yêu cầu về thời gian thực đòi hỏi trong phạm vi này Ví dụ các ứng dụng như là: -Điều khiển hệ thống máy điều hòa
- Bộ cửa sổ tự động
- Điều kiển cửa trượt trên nóc xe
- Điêu khiển hệ thống lái
CAN bus cũng được thấy sử dụng trong chuẩn đoán xe Ở đây bộ điều khiển điện tử được kết nối trực tiếp với CAN bus từ đó nhận thông tin nó cần cho việc chuẩn đoán ngay tức thì Các giao diện chuẩn đoán trước đây (KWP 2000) đang trở nên ít phổ biến đi
2.3.2.3 Tín hiệu trên bus CAN
Tín hiệu trên bus CAN có hai dạng trội và lăn, mức trội tương ứng với 0 và mức lặn tương ứng với 1
- Khi CAN Controller gửi Tranceiver tín hiệu logic là 0, Tranceiver gửi xuống đường bus mức tín hiệu trội là ngược lại khi CAN Controller gửi tín hiệu logic là 1,
Tranceiver gửi đường bus mức tín hiệu lặn
Hình 2.19 Điện áp trên hai dây CAN High và Low tốc độ cao
- Khi truyền tốc độ cao, ở trạng thái lặn cả hai dây CAN đều có cùng mức tín hiệu điện áp 2.5V Ở trạng thái trội điện áp dây CAN H tăng lên 3,5V, đồng thời điện áp của dây CAN L cũng giảm xuống 1,5V
- Lưu ý tín hiệu trên bus CAN được xác định là trội hay lặn không xác định dữa theo mức điện áp riêng biệt ở mỗi dây và dựa theo mức chênh lệch điện áp giữa 2 dây Khi chênh lệnh điện áp giữa CAN H,L là 2V là trạng thái trội còn 0V là trạng thái lặn
Hình 2.20 Điện áp trên hai dây CAN H và CAN L của CAN tốc độ thấp
- Khi truyền tốc độ thấp, ở trạng thái lặn, điện áp của dây CAN H được cài đặt ở mức 0V, trong khi đó điện áp của dây CAN L ở mức 5V Ở trạng thái trội, điện áp của dây CAN H tăng lên theo một giá trị định trước (+3.6V) Đồng thời, điện áp của dây CAN L cũng giảm theo (- 3.6V)
Vậy nên ở trạng thái trội, điện áp của CAN H là 3,6V còn điện áp CAN L là 1,4V
Hình 2.21 Giá trị điện áp trên 2 dây CAN H-L
2.3.2.4 Cơ chế giao tiếp Đặ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 đều được gán một mã ID
-Tính ưu tiên: Mỗi một khung dữ liệu hay khung yêu cầu cũng đều chưa một định danh IDENTIFIER hay còn gọi là số ID ID định nghĩa mức ưu tiên cố định trong suốt quá trình truy cập bus, mức ưu tiên không dựa trên trạm nào gửi đi mà dựa trên thông điệp mà trạm đó gửi đi, thông điệp có mức ưu tiên cao thì sẽ truyền trước
-Yêu cầu dữ liệu từ xa: Bằng cách gửi khung yêu cầu Remote Frame, một trạm có thể yêu cầu 1 trạm khác gửi khung dữ liệu tương ứng, trạm trả lời thông tin đó sẽ gửi khung dữ liệu có cùng ID với khung yêu cầu
- Dựa vào tín hiệu gửi đi, tất cả Node đều có thể nhận và quyết định xử lý tín hiệu đó hay không, việc quyết định sử dụng thông điệp hay không nhờ cơ chế Lọc thông điệp (
MESSAGE FILTERING) Vì vậy tại một thời điểm nhiều node có thể tiếp nhận và xử lý cùng một tín hiệu
- Cơ chế phân xử: thông tin không mất đi trong quá trình là nhờ có cơ chế phân xử, Node thua sẽ phải dừng và trở về trạng thái nhận và sẽ phát lại khi bus rãnh Node thắng sẽ tiếp tục truyền hết các bit còn lại
- Tính an toàn: Bit truyền ra và bit trên bus luôn được giám sát để tránh xảy ra lỗi, sử dụng cơ chế giám sát bit, nhồi bit, CRC Nhờ cơ chế này mà lỗi tổng thể và lỗi cục bộ luôn được phát hiện
- Sleep và Wake up: một Node có thể trở về chế độ Sleep để giảm công suất, 1 node có thể wake up với một số điều kiện nhất định
- Tính linh động: Có thể tùy ý kết nối thêm Node vào mạng mà không cần phải thay đổi cấu hình các Node hiện tại
2.4 Cấu trúc các khung dữ liệu trong CAN
Giao thức CAN sử dụng 4 loại khung (frame) khác nhau để truyền tải dữ liệu và điều khiển Bốn loại khung này gồm:
• Khung dữ liệu (Data frame) là khung mang dữ liệu từ một bộ truyền đến các bộ nhận Khung này có vùng để mang các byte dữ liệu
• Khung yêu cầu hay khung điều khiển (Remote frame) là khung được truyền từ một Node để yêu cầu Node khác truyền khung dữ liệu có ID (IDENTIFIER) trùng với khung yêu cầu
• Khung báo lỗi (Error frame) là khung được truyền bởi bất kỳ Node nào khi Node đó phát hiện lỗi bus
• Khung báo quá tải (Overload frame) được sử dụng để tạo thêm độ trễ giữa giữa các khung dữ liệu hoặc khung yêu cầu, một Node nhận quá nhiều dữ liệu, nó có thể dùng khung này để ngăn sự truyền tiếp theo
• Định dạng khung chuẩn sử dụng ID có độ dài 11 bit
2.4.1 Khung dữ liệu (data frame)
Một khung dữ liệu bao gồm bảy vùng bit khác nhau theo thứ tự là:
• Vùng bắt đầu khung (Start of frame – SOF)
• Vùng phân xử (Arbitration field)
• Vùng điều khiển (Control field)
• Vùng dữ liệu (Data field)
• Vùng kiểm tra (CRC field)
• Vùng báo nhận (ACK field)
• Vùng kết thúc khung (End of frame – EOF)