TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC ĐỀ TÀI NGUYÊN LÝ HỌAT ĐỘNG CỦA MẠNG CAN Hà Nội, tháng 122011 Giảng viên hướng dẫn PGS TS NGUYỄN VĂN KHANG Học viên Nhiệm vụ Lớp Phạm Hữu Lưu Trang 2 6 KTTT1B Đỗ Huy Thao Trang 7 11 KTTT1B Lưu Văn Dũng Trang 12 16 KTTT1B Đỗ Hữu Trọng Trang 17 21 KTTT1B 1 MỤC LỤC 1 Giới thiệu 2 2 Giao thức của CAN 3 Lớp vật lý (physical layer) 5 Mã hóa bit và đồng bộ hóa 6 Định dạng khung dữ liệu 6 Khung Data 7 Remote frame 9 Khung lỗi 9 Overload frames 9 K.
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC ĐỀ TÀI NGUYÊN LÝ HỌAT ĐỘNG CỦA MẠNG CAN Giảng viên hướng dẫn Học viên : PGS-TS NGUYỄN VĂN KHANG Nhiệm vụ Lớp Phạm Hữu Lưu Trang 2- KTTT1B Đỗ Huy Thao Trang 7-11 KTTT1B Lưu Văn Dũng Trang 12-16 KTTT1B Đỗ Hữu Trọng Trang 17- 21 KTTT1B Hà Nội, tháng 12/2011 MỤC LỤC Giới thiệu 2 Giao thức CAN Lớp vật lý (physical layer) Mã hóa bit đồng hóa Định dạng khung liệu Khung Data: Remote frame Khung lỗi Overload frames Kĩ thuật truy nhập 10 Phân xử bus 10 Quản lí lỗi 12 Giới hạn lỗi 13 Dịch vụ truyền thông 14 Mơ hình cho tương tác thiết bị 15 Các tính CAN 15 Ưu điểm 15 Nhược điểm 16 CAN-dựa giao thức ứng dụng 18 CANopen 18 DeviceNet 20 Tài liệu tham khảo 22 1 Giới thiệu CAN (Control Area Network) 20 năm trước Vào đầu năm 1980, nhóm kỹ sư nhà sản xuất xe Bosch GmbH tìm kiếm hệ thống bus nối tiếp thích hợp ứng dụng tơ Những giải pháp lúc khơng thích hợp cho ứng dụng cho ô tô Thực tế, hệ thống bus phải cung cấp đặc tính mà chưa có hệ thống cấu trúc bus thời kiến trúc bus hỗ trợ Intel hãng sản xuất bán dẫn Kiến trúc Bus trường (Fieldbus) giới thiệu thức vào năm 1986 với tên “Automotive Serial Controller Area Network” hội nghị SAE tổ chức Detroit Nó dựa hệ thống đa truy nhập chia sẻ chung, gần giống phương thức đa truy nhập cảm biến sóng mang (CSMA) Tuy nhiên, khía cạnh khác biệt CAN CAN chấp nhận chế phân chia truy nhập để giải vấn đề xung đột bus có ưu tiên cho thơng điệp Hơn nữa, chế phát lỗi quản lý đường truyền để nâng cao khả chống lỗi toàn hệ thống Trong năm sau đó, Intel Philips bắt đầu cho sản xuất chip hỗ trợ CAN với hai hướng khác Giải pháp Intel (thường gọi fulCAN) u cầu lực CPU host phần lớn giao tiếp chức quản lý mạng thực trực tiếp quản lý mạng Đối với Philips (thường gọi BasicCAN) giải pháp đơn giản hơn, yêu cầu nhiều lực CPU host giao tiếp với điều khiển mạng Từ năm 1990, 15 nhà cung cấp bán dẫn có Siemens, Motorola NEC đưa vào sản xuất hàng triệu chip hỗ trợ CAN chủ yếu cho nhà sản xuất xe Mercedes – Benz, Volvo, Volkswagon, BMW, Renault Fiat Chỉ tiêu kỹ thuật CAN version 2.0 Bosch đưa trình lên thành tiêu chuẩn quốc tế năm 1990 Đề xuất chấp thuận xuất thành tiêu chuẩn ISO11898 [ISO898] cuối năm 1993 Trong chứa miêu tả giao thức truy nhập mạng cấu trúc lớp vật lý Vào năm 1995, phụ lục thêm vào ISO 11898 mô tả cấu trúc mở rộng cho nhận dạng tin duyệt Chỉ tiêu kỹ thuật CAN trình xem xét, tổ chức lại chia thành bốn phần riêng biệt : ISO1, ISO2, ISO3, TTC Những tài liệu chuẩn đưa đặc tính kỹ thuật cho lớp thấp lại khơng có hướng dẫn khuyến nghị dùng cho lớp cao OSI đặc biệt lớp ứng dụng Đó lý ứng dụng ban đầu CAN ngành ô tô (như máy may, hệ thống y tế, ) chấp nhận giải pháp ad-hoc Năm 1992, nhóm người sử dụng CAN lĩnh vực tự động lần đề cập đến tiêu chuẩn CAN lớp ứng dụng Những nỗ lực phát triển tiêu kỹ thuật lớp ứng dụng CAN (CAL) ứng dụng chung CAL dự định để lấp khoảng trống trình ứng dụng tập trung hỗ trợ giao tiếp lớp Nhưng thực tế khơng thành cơng, với lý CAL ứng dụng độc lập, người tự mở rộng, phát triển đặc tính riêng để phù hợp với lĩnh vực riêng Mặc dù dùng cho ứng dụng lĩnh vực sản xuất phương tiện vận tải, CAN bắt đầu công nhận sử dụng lĩnh vực khác Ví dụ, năm 1990, Allen-Bradley Honeywell bắt đầu dự án điều khiển tập trung dựa CAN Tuy dự án bị từ bỏ vài năm sau đó, Allen Brandy Honeywell tiếp tục công việc độc lập với tập trung vào giao thức lớp cao Kết hoạt động giải pháp Allen Bradley DeviceNet hệ thống Honeywell Smart Distributed System (SDS) Vì số lý do, SDS tồn thực tế số giải pháp bên Honeywell Microswitch, cịn DeviceNet nhanh chóng chuyển thành hiệp hội nhà sản xuất Open DeviceNet chấp nhận rộng rãi số nhà sản xuất Mĩ trở thành đối thủ cạnh tranh nguy hiểm giải pháp sử dụng rộng rãi Profibus-DP Interbus Bên cạnh SDS DeviceNet, cịn có số sáng kiến quan trọng khác tập trung vào CAN ứng dụng nó, CAN hình thành khung dự án European Espirit ASPIC thực Bosch GmbH Mục đích CAN Open xác định đặc tính dựa vào CAL mà hỗ trợ giao tiếp sản xuất, đặc tính ban đầu CAN Open hoàn thiện đưa vào năm 1995 Sau đó, CAN Open DeviceNet trở thành tiêu chuẩn châu Âu sử dụng rộng rãi, đặc biệt hai lĩnh vực xưởng tự động điều khiển thiết bị tập trung Giao thức CAN Cấu trúc giao thức CAN xây dựng dựa vào mơ hình OSI Tuy nhiên, phần lớn mạng sử dụng lớp thấp sản xuất tự động, giao thức thực vài lớp Điều làm cho giảm chi phí tăng hiệu triển khai Thực tế, giảm số lớp làm giảm trễ xử lý thu phát tin làm đơn giản cho phần mềm Mạng CAN (ISO1) bao gồm lớp vật lý lớp liên kết liệu (data link) mơ tả hình Hình : giao thức mạng CAN Lớp vật lý mục đích để quản lý hiệu truyền liệu thông qua phương tiện truyền dẫn, quản lý mặt điện phương tiện truyền dẫn, cách định thời đồng hóa Lớp liên kết liệu chia thành hai lớp con, LLC MAC Mục đích MAC điều khiển truy nhập thiết bị truyền dẫn vào bus để tránh xung đột bus Lớp MAC bao gồm chức đóng khung giải mã khung liệu, kiểm tra lỗi, báo hiệu Lớp LCC tạo tính linh hoạt việc phục vụ cho giao thức lớp mạng nó, liên lạc hiệu với kỹ thuật khác bên LLC với vai trị lớp phụ tham gia vào q trình đóng gói, xác định tin thuộc node thu không Một điều đáng ý CAN khả mềm dẻo triển khai dịch vụ LLC khả chọn kênh truyền tin vật lý, từ khơng cần thay đổi nhiều lớp MAC Lớp vật lý (physical layer) Đặc tính lớp vật lý mạng CAN ứng dụng nhiều hệ thống hệ thống liên quan đến báo hiệu vật lý miêu tả ISO11898-1 [ISO1] Nhưng phương tiện truy nhập (ví dụ, thiết bị thu – phát) miêu tả ISO11898-2 [ISO2] ISO11898-3 [ISO3] tương ứng với tốc độ truy nhập cao tốc độ truy nhập thấp Topo mạng topo bus chung Đường dây bus kết thúc điện trở (khuyến nghị 120 Ohm) để triệt tiêu tín hiệu phản xạ lại Và lý tín hiệu phản xạ, nên tiêu chuẩn topo mạng CAN gần đường đơn giản tốt Có thể dùng đấu nối bus với thiết bị truy nhập, độ dài phải ngắn Ví dụ, tốc độ Mb/s, độ dài đầu nối phải ngắn 30cm Các loại bus dùng sau: - Bus hai dây, (đường bus đường dây dẫn, thiết bị truy nhập nối vào hai dây bus đó) Trong trường hợp cần dùng dây xoắn đôi để tránh nhiễu điện từ - Bus dây Rẻ hơn, đơn giản hơn, khó tránh nhiễu hơn, thường ứng dụng thích hợp tơ - Truyền dẫn quang Hoàn toàn tránh nhiễu điện từ dùng mơi trường nguy hiểm Truyền dẫn quang phù hợp kết nối nhà máy, xưởng cách xa phân bố vùng rộng lớn Tốc độ truyền bít liệu mạng CAN 50Kb/s – Mb/s (là tốc độ lớn với mạng CAN) Chiều dài lớn bus CAN phụ thuộc trực tiếp vào tốc độ bit Hai thông số liên quan đến thông số khác độ trễ thu - phát ghép nối Ví dụ phụ thuộc hai thông số này: 500 kb/s ~ 100m cực đại; 125kb/s ~ 500m cực đại Bộ lặp dùng để tăng khoảng cách mạng mở rộng mạng, đặc biệt nhà xưởng rộng lớn phải truyền tốc độ bit thấp trung bình Tuy nhiên, gây trễ đường truyền tin, vậy, giá trị lớn chiều dài bus bị giảm tốc độ bit tăng cao Dùng repeater tạo topo khác mạng (ví dụ, hình cây, sao, hình lược,…) Trong trường hợp thiết kế tốt tăng hiệu mở rộng vùng mạng CAN Mã hóa bit đồng hóa CAN dùng mã hóa thông tin NRZ, với bit ‘0’ ‘1’ Trong suốt qúa trình bít mức điện áp dây giữ nguyên Thông tin đồng không mã hóa với liệu Đồng bit node thực vịng khóa pha số (DPLL), tách thơng tin định thời trực tiếp từ dịng bit nhận từ bus, sườn tín hiệu dùng cho đồng đồng hồ, bù sai số bù trôi, đồng cho đồng hồ node local Để cung cấp mức độ đồng node, số bit cho đồng biên phải đủ Để làm điều này, CAN dựa vào kỹ thuật nhồi bit (bit stuffing) Trong thực tế, năm bit liên tiếp có giá trị dãy bit node phát nhồi thêm bit nhồi Bit nhồi dễ dàng loại bỏ node thu cách an toàn nhận dãy bit nguyên gốc ban đầu Ví dụ hình vẽ Hình 2: Kĩ thuật nhồi bít Trên lý thuyết, số lượng bit nhồi vào nhiều sau bit dãy gốc lại nhồi thêm bit nhồi Như vậy, làm chậm tốc độ bit xuống 80% tốc độ bit ban đầu số lượng bit nhồi cực đại Trong thực tế, số lượng bit nhồi nhỏ vậy, ảnh hưởng bit nhồi Và, khơng phải tất trường khung tín hiệu truyền nhồi bit trên, mà áp dụng từ trường SOF (Start Of Frame) đến trường CRC, trường khác khung tín hiệu khơng nhồi bit thêm Định dạng khung liệu Miêu tả ISO1 có hai dạng khung liệu: Khung tiêu chuẩn, khung mở rộng Hai loại khung khác chiều dài trường nhận dạng (identifier field) vài bit trường phân xử (arbitration) Khung tiêu chuẩn (còn gọi CAN 2.0A) định nghĩa 11 bit trường nhận dạng, tương đương 2048 nhận dạng khác Tuy nhiên, nhiều điều khiển CAN cung cấp 2032 mức (từ ~ 2031) Khung mở rộng (gọi CAN 2.0B) có 29 bit trường nhận dạng, tức cung cấp 500 triệu mức khác để phân biệt khung cho đủ loại ứng dụng Việc dùng nhận dạng khung mở rộng tương thích với CAN 2.0A thường dẫn tới lỗi điều khiển, hay dẫn đến mạng không ổn định Cho nên, điều khiển CAN loại phát triển gọi CAN 2.0B thụ động Nó hoạt động xử lý khung CAN 2.0A, CAN 2.0B truyền thống bỏ qua khung loại Đáng lưu ý thực tế, với lý khung CAN 2.0A ngắn đơn giản CAN 2.0B nên hiệu giao tiếp cao chuẩn xác Và vậy, CAN 2.0A chấp nhận hầu hết hệ thống CAN Hơn nữa, hệ thống CAN hướng sử dụng giao thức lớp cao CANOpen, DeviceNet thường dựa vào cấu trúc CAN 2.0A Có loại khung liệu: Data, remote, error overload Dưới đây, ta miêu tả loại khung Khung Data: Khung data khung liệu, để gửi tín hiệu thơng tin qua mạng Hình 3: Định dạng khung liệu Trong khung tiêu chuẩn khung mở rộng có khác phân bố trường, bit phân bổ cho trường phân xử trường điều khiển, thể hình vẽ Trong đó: - SOF (Start Of Frame): bit, chức bắt đầu khung, chức đồng bit Giá trị “0” - Identifier: Đây trường nhận dạng, để nhận dạng loại khung liệu dịch vụ dùng mạng Lớp MAC dùng trường để nhận dạng, quản lý quyền ưu tiên khung, dùng có xảy xung đột Giá trị trường nhận dạng thấp quyền ưu tiên cao Trong khung tiêu chuẩn trường có 11 bit, khung mở rộng ngồi 11 bit cịn có thêm 18 bit (18bit ID extension) hình vẽ - RTR: (Remote Transmission Request) Có bit Để phân biệt khung Data khung Remote Giá trị “0” khung data, giá trị “1” khung remote Khung data có ưu tiên cao khung remote có giá trị trường nhận dạng - IDE: Identifier extension Có bit Dùng để nhận dạng khung khung tiêu chuẩn hay khung mở rộng Giá trị “0” khung tiêu chuẩn Giá trị “1” khung khung mở rộng - r0, r1: bit reserved Đây bit dành riêng, có giá trị “0” - SRR: substitute remote request bit Cũng bit dành riêng cho mục đích riêng - DLC: Data length code bit Dùng để độ dài trường data khung Vì có bit nên giá trị từ ~ 15 Nếu giá trị trường nằm khoảng từ ~ thể độ dài trường data Nếu nằm khoảng từ ~ 15 độ dài trường data tương ứng với loại ứng dụng data - ~ byte Data: chứa từ ~ byte liệu thông tin cần truyền mạng Lưu ý byte độ dài lớn trường - CRC: Cyclic Redundancy Check Dùng để kiểm tra lỗi bit - ACK field: bit Báo cho node phát biết node nhận nhận frame không Nếu bit “0” báo hiệu nhận frame nhận từ node gửi - EOF: End Of Frame bit liền nhau, giá trị “1” Thể khung nhận hoàn thiện không lỗi truyền dẫn bit cuối trường - IMS: intermission bit giá trị “1” Giữa khung khác chèn thêm bit IMS Remote frame Remote frame tương tự khung liệu Khác chúng không mang liệu (ví dụ trường liệu khơng xuất trường hợp này) Chúng thường dùng để yêu cầu khung xác định gửi mạng node đầu xa Cần ý node yêu cầu ngừoi tạo thông tin liên quan Nó phụ thuộc vào bên nhận để phát node phải trả lời Trường DLC Remote frame xa không sử dụng giao thức CAN Dù đặt giá trị khung liệu tương ứng để giải trạng trường hợp mà vài node gửi yêu cầu từ xa có số nhận dạng thời điểm Cũng nên ý cách mà bit RTR mã hóa, yêu cầu thực cho đối tượng thời điểm mà việc truyền dẫn đối tượng bắt đầu, cạnh tranh giải theo hướng ưu tiên khung liệu Khung lỗi Khung lỗi đựoc sử dụng để thông báo cho node mạng lỗi xảy Chúng chứa hai trường error flag error delimiter Có hai loại cờ lỗi (error flag) cờ chủ động tạo bít dominant cờ lỗi thụ động tạo sáu bít recessive Một cờ lỗi chủ động (active error flag) vi phạm luật nhồi bít phần định dạng cố định khung trao đổi Vì vậy, biểu thị trường hợp lỗi mà trường hợp lỗi phát tất trạm lại kết nối vào mạng Mỗi node phát trường hợp lỗi phát cờ lỗi Bằng cách này, theo truyền dẫn cờ lỗi, có từ đến 12 bit dominant bus Trường “error delimiter” bao gồm bit recessive Sau truyền cờ lỗi node bắt đầu gửi bit recessive đồng thời giám sát trạng thái bus bit recessive tìm thấy Khi đó, node gửi bits recessive hoàn chỉnh trường error delimiter Overload frames Khung tải sử dụng bên nhận chậm để làm chậm họat động mạng Điều thực cách thêm độ trễ các liệu liên tiếp và/hoặc khung đầu xa Định dạng khung giống với khung lỗi Đặc biệt chứa cờ tải theo sau delimiter tràn Chú ý điều khiển CAN ngày nhanh nên khung tải không sử dụng Kĩ thuật truy nhập Cơ chế điều khiển truy nhập mà CAN tin dùng CSMA (carrier sense multiple access) Khi khơng có khung trao đổi, mạng rỗi mức độ sử dụng bus recessive Trước gửi một khung, node phải có trạng thái mạng Nếu mạng rỗi, khung truyền tức khắc Nếu không, node mạng phải chờ việc truyền khung kết thúc Mỗi khung bắt đầu với bit SOF trạng thái “dominant” thông báo cho node khác mạng chuyển tới trạng thái bận Mặc dù xảy hai nhiều node mạng bắt đầu truyền thời điểm Điều xảy trễ lan truyền bus dù lớn khơng Vì node bắt đầu truyền bít SOF khung khác bus Trong trường hợp xung đột xảy Trong mạng CSMA dựa phát xung đột, điều chắn dẫn đến khung liên quan bị hỏng có nghĩa chúng phải truyền lại Hậu tốn thời gian băng thông hiệu dụng mạng giảm Trong điều kiện tải cao, dẫn đến nghẽn: Khi số lượng xung đột cao đến mức mà băng thông hiệu dụng mạng Ethernet thấp tốc độ liệu cần truyền, mạng bị trễ Khơng giống Ethernet, CAN giải cạnh tranh cách chắn để thời gian lẫn băng thơng thơng khơng bị bỏ phí Vì điều kiện nghẽn khơng xảy tồn băng thơng lí thuyết hệ thống sẵn sàng thực cho truyền thông Sự thực canh tranh CAN xảy thường xuyên ngừoi nghĩ Khi node có khung cần truyền nhận thấy bus bận không cạnh tranh, chờ cho kết thúc trao đổi khung sau thời gian nghỉ trôi qua, bắt đầu truyền Ở node cạnh tranh với node khác có yêu cầu truyền vừa tạo Trong trường hợp này, node khác đồng thời điểm bít SOF nhận thấy mạng Điều có nghĩa hoạt động mạng CAN hàng đợi truyền dẫn phân bố diện rộng tin lựa chọn cho truyền dẫn theo thứ tự ưu tiên Phân xử bus Đặc tính khác biệt kĩ thuật truy nhập mạng CAN khả giải cách triệt để xung đột mà xảy mạng Lần lượt, thực chế phân xử cách tìm khung khẩn cấp lần có cạnh tranh bus Cơ chế phân định bus cho phép xung đột giải cách dừng truyền dẫn khung liên quan ngoại trừ khung có độ ưu tiên cao (ví dụ nhận dạng thấp 10 nhất) Kĩ thuật phân xử khai thác tính đặc biệt lớp vật lí CAN phối hợp tất node Đặc biệt, mức độ bus dominant tối thiểu node gửi bit dominant ngược lại mức độ bus recessive toàn nơt phát bít recesive Bằng phương pháp kĩ thuật đếm ngược nhị phân (binary countdown), sau bit SOF, node phát nhận dạng tin cách nối tiếp bus, bít quan trọng Khi phát, node kiểm tra trạng thái bus so với giá trị bit phát Nếu node phát bít recesive, ngược lại trạng thái bus cao dominant, node hiểu cạnh tranh rút lui tức khắc Đặc biệt, ngừng phát thiết lập cổng đầu trạng thái “recessive” để không can thiệp với node cạnh tranh khác Đồng thời chuyển tới trạng thái nhận để đọc khung đến Kĩ thuật đếm ngựoc nhị phân đảm bảo trường hợp xung đột xảy ra, toàn node gửi khung ưu tiên thấp không truyền dẫn vào lúc cuối trường phân xử (arbitration field) ngoại trừ node gửi khung có độ ưu tiên cao (cũng ý node chiến thắng chí khơng nhận có xung đột xảy ra) Có nghĩa hai node mạng CAN phát tin liên quan đến đối tương (đặc trưng một nhận dạng) thời điểm Nếu khơng, xung đột khơng thể quản lí xảy ra, gây lỗi truyền dẫn Nó gần chắn dẫn đến bùng nổ lỗi bus đặc tính truyền lại tự động điều khiển CAN trạm liên quan ngắt chế giới hạn lỗi Như node phát đối tượng Một ngoại lệ luật khung khơng có trường liệu, ví dụ khung đầu xa Trong trường hợp này, xung đột xảy khung có nhận dạng, chúng gối lên hồn tồn khơng cịn xung đột thực xảy Nó với khung liệu có trường liệu khơng rỗng miễn nội dung trường giống hệt toàn khung có chung nhận dạng Dù vậy, khơng có ý nghĩa gửi khung có trường liệu Tất node cạnh tranh phải cố gắng phát lại sau trao đổi khung kết thúc Các node cố gắng gửi khung lại sau thời gian nghỉ nhận thấy bus Ở đây, xung đột xảy liên quan đến khung gửi node mà yêu cầu truyền dẫn cho node tạo bus bận Một ví dụ rõ họat động pha phân xử CAN phác hình Ở đây, ba node (là nôt A, B, C) bắt đầu phát khung thời điểm (có thể cuối thời gian nghỉ sau khung trước phát) Ngay sau node hiểu 11 cạnh tranh, chuyển mức độ đầu tới giá trị recessive để khơng giao tiếp với node phát khác Sự kiện xảy node A gửi bit ID5 node B xảy bit ID2 Node C gửi tồn trường nhận dạng sau tiếp tục phát phần cịn lại khung Bộ nhận dạng SOF RTR 10 Dòng bit gửi node A (msg id = 100 111xxxxx) 0 1 Dòng bit gửi node B (msg id = 100 1101 11xx) 0 1 1 Dòng bit gửi node C (msg id =100 1101 1010) 0 1 1 Mức bus Chế độ nhận Chế độ nhận Điều khiển liệu Hình 4: Pha phân xử CAN Quản lí lỗi Một yêu cầu chính, định nghĩa giao thức CAN cần thiết để có hệ thơng tin mạnh mẽ, phát lỗi truyền dẫn Vì vậy, phần định nghĩa quản lí lỗi quan tâm đặc biệt Đặc tả CAN đưa năm chế khác để tìm lỗi truyền dẫn: Kiểm tra mã vịng dư ( Cyclic redundancy check) Khi truyền khung, node truyền thêm 15 bit mã CRC vào cuối khung Node nhận xem xét lại CRC xem có phù hợp với khung phát Nói chung, CRC sử dụng CAN phát lên tới bít lỗi phân bố khung cụm lỗi lên tới 15 bit Kiểm tra khung: Các trường định dạng cố định khung nhận dễ dàng kiểm tra lại giá trị mong muốn Ví dụ trường CRC ACK delimiter trường EOF phải mức độ recesive Nếu nhiều bit sai phát hiên, khung lỗi phát lại Kiểm tra xác nhận (Acknowledgement check): node phát kiểm tra xem bit ACK có đặt giá trị “dominant” khung nhận không Nếu không, lỗi acknowledgement tạo 12 Bit giám sát: Mỗi node phát so sánh trạng thái bus so với giá trị bit phát Nếu không phù hợp lỗi tạo Việc kiểm tra lỗi hiệu việc tìm kiếm lỗi nội xảy node phát Bit nhồi (bit stuffing): Mỗi node kiểm tra luật nhồi bít từ bit SOF tới CRC xem có bị vi phạm không Lỗi xảy phát bit giá trị giống hệt bus Xác xuất lỗi tin khơng tìm mạng CAN điều kiện họat động thực tế đánh giá khoảng 4.7x10−11 Giới hạn lỗi Để tránh node họat động sai gửi lặp khung lỗi gây nghẽn toàn mạng, có chế giới hạn lỗi đặc tả CAN Đơn vị giới hạn lỗi giám sát lớp MAC xem có họat động khơng, node họat động sai, ngắt node khỏi bus Cơ chế giới hạn lỗi nghĩ để phân biệt khác hư hỏng vĩnh viễn xáo trộn ngắn mà gây bùng lên lỗi bus Theo chế này, node ba trạng thái sau: - Lỗi chủ động Lỗi bị động Bus bị ngắt Các node lỗi chủ động lỗi bị động xảy truyền thông cách Dù vậy, chúng phản ứng điều kiện lỗi khác Chúng gửi cờ lỗi chủ động trước gửi cờ lỗi bị động sau Đó node lỗi bị động trải qua vài lỗi, nên tránh can thiệp họat động mạng (một cờ lỗi bị động thực không làm sai lạc việc trao đổi khung xảy ra) Đơn vị giới hạn lỗi sử dụng hai đếm để giám sát hoạt động node tương ứng với lỗi truyền dẫn gọi đếm lỗi truyền dẫn (transmission error count -TEC) đếm lỗi nhận (receive error count -REC) Quy luật TEC REC phức tạp tóm tắt sau: Mỗi lần lỗi phát hiện, đếm tăng lên số lượng định, ngược lại trao đổi thành cơng chúng giảm Thêm nữa, số lượng tăng lên cho node mà phát có lỗi lần đầu cao node mà đơn giản trả lời cờ lỗi Bằng cách này, đếm node lỗi tiến đến giá trị cao node họat động chuẩn chí có lỗi nhiễu điện từ 13 Khi đếm vượt giá trị ngưỡng (127), node chuyển đến trạng lỗi thụ động để cố gắng không ảnh hưởng đến mạng Ở thời điểm này, khơng phát khung mạng chuyển tới trạng thái lỗi chủ động sau reset cấu hình lại Dịch vụ truyền thơng Theo đặc điểm kỹ thuật ISO [ISO1], lớp LLC CAN cung cấp hai dịch vụ truyền thông: L_DATA, sử dụng để phát giá trị đối tượng cụ thể qua mạng, L_REMOTE sử dụng để hỏi giá trị đối tượng cụ thể phát từ thiết bị khác Từ xem, tín hiệu gốc thực trực tiếp H/W điều khiển mạng CAN Không giống hầu hết giao thức mạng khác dựa vào địa nút , CAN thông qua thông điệp, thông điệp trao đổi qua mạng (thường gọi đối tượng) gán ID nhất, mà biểu thị rõ ràng ý nghĩa đối tượng tồn hệ thống Truyền thông thực CAN Trong thực tế, xác định đối tượng trao đổi qua mạng theo thông điệp chúng nút họ dự định , phép đa truy cập làm cho dễ dàng kiểm sốt quản lý tương tác thiết bị theo mơ hình mạng.Việc trao đổi thơng tin CAN diễn theo ba giai đoạn thể hình 5: Đóng gói thơng tin mã hóa truyền khung liên quan bus (kỹ thuật phân chia truy nhập giải tranh chấp bus xảy ra); Do thơng tin truyền bus, nên node nhận xử lý đệm node 14 Hình Chức lọc (FAF) nút xác định có hay khơng có thơng tin liên quan đến node Để có sở xử lý bỏ Trong trao đổi liệu mơ tả hình 5, nút B truyền số loại thơng tin, có liên quan tới nút A D Node C, thay vào đó,khơng quan tâm đến liệu này, đó, họ bị từ chối chức lọc (chức FAF định trước) Mơ hình cho tương tác thiết bị Kỹ thuật truy cập CAN làm cho mạng đặc biệt thích hợp để sử dụng hệ thống phân phối mà giao mơ hình Producer/consumer Trong mạng liệu gửi lên bus định danh rõ thông điệp gủi lên bus thơng tin gửi CAN trở nên sẵn sàng, mà không cần can thiệp điều phối tập trung Điều cải thiện đáp ứng toàn hệ thống Mạng CAN sử dụng để kết nối thiết bị hệ thống dựa mơ hình giao tiếp thông thường master-slave Trong trường hợp này, chủ sử dụng thơng điệp để hỏi thông tin bus Node trả lời tin khác với thông tin liên quan Từ thấy tương tác giữ thiết bị thực CAN cách linh hoạt hơn master-slave mạng thông thường, chẳng hạn Profibus DP Trong CAN, khơng cần thiết để trả lời (khung liệu) theo yêu cầu (từ xa khung) Nói cách khác, mạng bận thiết bị cố gắng gửi trả lời Điều cho phép tồn băng thơng mặt lý thuyết có sẵn cho ứng dụng Hơn nữa, câu trả lời có chứa giá trị yêu cầu phát sóng tồn mạng lưới, đọc tất nút liên quan, yêu cầu truyền từ xa Các tính CAN Kỹ thuật truy cập trung bình mà CAN thực nút kích hoạt để cạnh tranh trực tiếp cho bus sở hữu ,để gửi tin nhắn riêng (điều có nghĩa CAN hệ thống đa chủ thực sự) Điều thuận lợicho sử dụng hệ thống hướng kiện Ưu điểm CAN đơn giản mạnh mẽ so với chương trình truy cập dựa mã thơng báo (ví dụ Profibus sử dụng cấu hình đa chủ) Trong thực tế, khơng 15 cần phải xây dựng trì vịng hợp lý, để quản lý việc lưu hành mã thông báo xung quanh trạm chủ.Trong cách, đáng ý linh hoạt so với giải pháp dựa thời gian đa truy cập (TDMA) tin nhắn kết hợp phương pháp tiếp cận - hai kỹ thuật thông qua Sercos INTERBUS, tương ứng Điều tin nhắn trao đổi biết trước Khi so sánh với FIP, cuối cùng, khơng cần thiết để có nút mạng đóng vai trị phân xử bus, trở thành điểm lỗi toàn hệ thống Vì CAN tất nút nút chủ (ít từ điểm nhìn chế MAC), đơn giản cho họ để thông báo cho lỗi không đồng bộ, chẳng hạn báo động điều kiện lỗi nghiêm trọng Trong tất trường hợp quan trọng, CAN rõ ràng tốt so với trích dẫn giải pháp Nhờ chế phân xử, chắn thơng điệp khơng trì hỗn cách ưu tiên thấp trao đổi (hiện tượng gọi đảo ngược ưu tiên) tin nhắn bị trì hỗn ưu tiên thấp bắt đầu truyền Điều tránh khỏi hệ thống Tuy nhiên, kích thước khung truyền CAN nhỏ (khung hình tiêu chuẩn 135 bit dài ), ngăn chặn thời gian tin nhắn khẩn cấp nói chung thấp Điều làm cho CAN có mạng lưới đáp ứng, giải thích lý sử dụng nhiều ứng dụng điều khiển thời gian thực băng thông hẹp Các đặc điểm xem xét cẩn thận giao nhận dạng khác đối tượng trao đổi ứng dụng điều khiển phân tán thời gian thực tin nhắn khẩn cấp (tức là, tin nhắn đặc trưng thời hạn chặt chẽ) nên định ID thấp (ví dụ, ID nhãn thơng điệp có ưu tiên cao mạng CAN) Nhược điểm Mặc dù vốn hoàn hảo, kỹ thuật giám sát CAN lại đặt hạn chế nghiêm trọng hiệu suất thu mạng Trong thực tế, chế phan xử bus hoạt động xác, cần thiết cho tín hiệu để truyền từ nút nằm đầu bus xa (ở đầu kia) trở với nút trước tăng mức độ thông điệp bus Thời điểm lấy mẫu nằm khoảng bit (vị trí xác lập trình cho thiết bị), trễ truyền phân cứng máy thu phát , ngắn khoảng / thời gian bit (giá trị xác phụ thuộc cấu hình thời gian bit điều khiển CAN) 16 Khi tốc độ lan truyền tín hiệu cố định (khoảng 200 m / μsec dây đồng), điều có nghĩa tối đa độ dài cho phép bus thiết phải hạn chế, phụ thuộc trực tiếp vào tỷ lệ bit chọn cho mạng Ví dụ, 250 kb / s mạng CAN dài 200 m Tương tự vậy, chiều dài bus tối đa cho phép tốc độ bit chọn Mb / s 40 m Điều này, đến mức độ đó, giải thích lý tỷ lệ bit tối đa cho phép chi tiết kỹ thuật CAN [ISO1] giới hạn Mb / s Đó giá trị lưu ý giới hạn phụ thuộc vào yếu tố vật lý, khơng thể khắc phục cách tiến công nghệ thu phát (để làm so sánh, nên đề cập rằng, nay, số công nghệ truyền thơng rẻ tiền có sẵn thị trường cho phép tỷ lệ bit theo thứ tự hàng chục hàng trăm Mb / s) Trong số giải pháp hình thành để nâng cao hiệu suất CAN, có thời gian kích hoạt CAN (TTCAN) giao thức [TTC], mà chip có sẵn Nếu truyền khơng đồng khơng phép hệ thống (có nghĩa kỹ thuật phân chia truy cập không thực sử dụng), TTCAN hiệu hoạt động hệ thống TDMA khơng có giới hạn tỷ lệ bit (mà tăng lên vượt giới hạn lý thuyết CAN) Tuy nhiên, hoạt động mạng lưới kết đáng ý khác từ CAN Các giải pháp khác xuất tài liệu, chẳng hạn WideCAN WCAN], cung cấp tỷ lệ bit cao dựa kỹ thuật phân xử CAN thông thường Tuy nhiên, nay, quan tâm họ chủ yếu lý thuyết Thực Theo kiến trúc điều khiển CAN phân loại thành hai loại khác nhau: BasicCAN FullCAN Các điều khiển BasicCAN cung cấp đệm truyền nhận truyền thống UARTs Khung lọc chức năng, tránh tràn đệm có kich thước gấp đôi , cho phép khung nhận từ bus trước đọc điều khiển Một ví dụ điều khiển dựa chương trình BasicCAN cho Philips PCA82C200 FullCAN triển khai, thay vào đó, thấy trước số lượng đệm nội cấu hình để nhận truyền tải số thông điệp đặc biệt.Trong trường hợp này, chức lọc thực trực tiếp điều khiển CAN.1 khung liệu liên quan đến nút nhận từ mạng, lưu trữ đệm , sau đọc điều khiển Nói chung, giá trị đơn giản ghi đè lên giá trị trước đó, điều 17 khơng dẫn đến tình trạng bị tràn (giá trị cũ biến thay một hơn) Intel 82526 và82527 điều khiển CAN dựa kiến trúc FullCAN Bộ điều khiển FullCAN, nói chung, điều khiển số hoạt động coi mạnh so với điều khiển BasicCAN, nhiên, gần điều khiển CAN nhúng có nguyên tắc hoạt động hai kiến trúc CAN-dựa giao thức ứng dụng Để giảm chi phí thiết kế thực hệ thống tự động, số ứng dụng cấp cao giao thức định nghĩa năm qua, dựa trao đổi liệu ban tin nút ( tất chức lớp liên kết liệu CAN thực trực tiếp phần cứng điều khiển CAN hành) làm tăng hiệu độ tin cậy việc trao đổi liệu) Mục đích giao thức sử dụng liệu gốc Hiện nay, hai số giải pháp phổ biến rộng rãi cho việc kiểm sốt q trình sản xuất tự động CANopen [COP] DeviceNet [DNET] Cả hai xác định đối tượng mô tả hành vi thiết bị Điều cho phép khả tương tác thay thiết bị đến từ nhà sản xuất khác Trong thực tế, miễn thiết bị phù hợp với thống số định, sử dụng thay cho thiết bị khác thơng số CANopen CANopen ban đầu hình thành dựa dịch vụ truyền thông cung cấp lớp ứng dụng CAN (CAL) Tuy nhiên, thông số kỹ thuật [DS301] khơng cịn rõ ràng Thay vào đó, dịch vụ truyền thơng có liên quan nhúng trực tiếp CANopen Trong CANopen, phương tiện thông tin liên lạc đối tượng (COBs ● Đối tượng liệu xử lý (PDOs), sử dụng để trao đổi thời gian thực, chẳng hạn thơng tin sử dụng để kiểm sốt hệ thống vật lý; ● Đối tượng liệu dịch vụ (SDOs), sử dụng cho thông tin liên lạc không-thời gian ● Đối tượng khẩn cấp (EMCY), sử dụng thiết bị thông báo cho ứng dụng kiểm có lỗi xảy ra; 18 ● Đối tượng đồng hóa (SYNC), sử dụng để đạt động đồng phối hợp hệ thống Mặc dù kỹ thuật truy nhập CAN tới node thông qua master, hệ thống CANopen hoạt động kiểu master/slave, để đơn giản hóa cấu hình hệ thống quản lý mạng mạng CANopen có ứng dụng chủ (chịu trách nhiệm thực kiểm soát hoạt động hệ thống ) lên đến 127 thiết bị slave (cảm biến / thiết bị truyền động) Mỗi thiết bị xác định địa 7-bit nhất, gọi định danh nút, phạm vi từ đến 127 Lưu trữ thông tin đối tượng Bất kỳ thiết bị CANopen mơ tả hồn tồn thơng tin đối tượng, đối tượng giải liên quan đến thơng tin liên lạc bus chức có sẵn để tương tác với hệ thống điều khiển vật lý (ví dụ xác định loại thiết bị, tên nhà sản xuất, phiên phần cứng phần mềm) Tất đối tượng có liên quan đến nút cho trước lưu trữ lại gọi (OD) nút Với 16 bít địa lưu Các từ điển đối tượng chia thành bốn phần riêng biệt, theo số Chỉ số 1000H sử dụng để xác định kiểu liệu Chỉ số từ 1000H -1FFFH, thay vào đó, sử dụng để mô tả thông số cụ thể (ví dụ, giao diện thiết bị mạng CAN) Chỉ số từ 2000H để 5FFFH sử dụng nhà sản xuất thiết lập chức thiết bịvà để mở rộng Cuối cùng, số từ 6000H để 9FFFH sử dụng để mô tả tất đặc điểm thiết bị (như định nghĩa cấu hình thiết bị) Quản lý mạng Có hai loại chức liên quan đến quản lý mạng: điều khiển nút kiểm soát lỗi Node điều khiển dịch vụ sử dụng để kiểm soát hoạt động node mạng Ví dụ, họ sử dụng để khởi động dùng node, để thiết lập lại trạng thái , cấu hình node Dịch vụ kiểm soát lỗi, sử dụng để giám sát hoạt động xác mạng Với có chế bảo vệ node xung nhịp nên thiết bị cần gửi tin lớp quản lý mang đưa yêu cầu Phân loại thiết bị 19 Để cung cấp khả tương tác, số hồ hóa CANopen Được liệt kê sau: sơ thiết bị chuẩn ● Các thiết bị I / O [DS401], bao gồm hai đầu vào kỹ thuật số analog / đầu thiết bị ● Ổ đĩa điều khiển chuyển động, sử dụng để mô tả cácsản phẩm kỹ thuật số chuyển động, chẳng hạn như, ví dụ, động bước servo-ổ đĩa ● Giao diện người máy ● Các thiết bị đo điều khiển vịng kín, để đo lường kiểm soát số lượng vật lý ● IEC 61131-3 thiết bị lập trình ● Thiết bị mã hóa DeviceNet DeviceNet [DNET] giao thức linh hoạt để sử dụng môi trường tự động Cần lưu ý tiết bị hoạt đông với DeviceNet phức tạp so với thiết bị CANopen Tuy nhiên, DeviceNet cung cấp tính bổ xung cho CANopen mạng phức tạp với nhiều thiết bị chủ Thêm vào dịch vụ lớp ứng dụng, đặc điểm kỹ thuật DeviceNet xác định chi tiết lớp vật lý kết nối dây cáp (cáp mỏng, dày ) Cần lưu ý cáp DeviceNet sử dụng cho cảtín hiệu cấp nguồn (bằng cách sử dụng bốn dây cộng với dây đất) Mỗi mạng DeviceNet bao gồm đến 64 thiết bị khác nhau,có nghĩa nút xác định ID MAC 6-bit Các tỷ lệ bit cho phép tốc độ bít 125, 250, 500 kb/s, có nghĩa chiều dài bus cho phép 100m Mơ hình đối tượng Các xử lý chức thiết bị mô tả chi tiết DeviceNet truyền thơng, hệ thống, ứng dụng cụ thể đối tượng xác định tất các khía cạnh liên quan đến kết nối (bao gồm định danh CAN chế độ kích hoạt ) Dữ liệu dịch vụ thiết không giải phân cấp, mà dựa thành phần sau đây: MAC ID (tức là, địa thiết bị), ID lớp, ví dụ ID, thuộc tính ID, mã dịch vụ Bốn định danh thường đượcquy định vào bit, dịch vụ mã bao gồm số ngun 7-bit Mơ hình truyền thơng 20 Truyền thơng nút (hoặc điểm điểm đa điểm) diễn theo mơ hình hướng đối tượng Bằng cách sử dụng 11-bit ID, cung cấp địa dựa bốn nhóm tin nhắn, theo thứ tự giảm ưu tiên: • Nhắn tin nhóm bao gồm định danh ưu tiên cao nhất, cho phép lên đến 16 thông điệp khác nút; • Nhắn tin nhóm đề cập đến master/slave kết nốithiết lập xác định trước; • Nhắn tin nhóm tương tự nhóm tin nhắn 1, bao gồm ưu tiên khung thấp; • Nhắn tin nhóm chủ yếu sử dụng cho quản lý mạng Về bản, hai loại thơng tin liên lạc là: thơng điệp rõ ràng I / O thông báo Thông điệp sử dụng để trao đổi liệu chung thiết bị, chẳng hạn cấu hình, quản lý, chẩn đoán Loại trao đổi diễn mạng lưới mức ưu tiên thấp I / O tin nhắn sử dụng để trao đổi tin nhắn thời gian thực ưu tiên cao theo mơ hình product/customer Bởi hệ thống truyền thơng dựa mạng CAN,mỗi khung liệu bao gồm nhiều byte Nếu mục liệu vượt kích thước này, giao thức phân mảnh quy định DeviceNet quản lý tách tin nhắn chuyển sang tin nhắn 21 Tài liệu tham khảo [IS898] International Standard Organisation, Road Vehicles — Interchange of Digital Information — Controller Area Network for High-Speed Communication, ISO IS 11898, November 1993 [ISO1] International Standard Organisation, Road Vehicles — Controller Area Network — Part 1: Data Link Layer and Physical Signalling, ISO WD 11898-1, 1999 [ISO2] International Standard Organisation, Road Vehicles — Controller Area Network — Part 2:High Speed Medium Access Unit, ISO WD 11898-2, 1999 [ISO3] International Standard Organisation, Road Vehicles — Controller Area Network — Part 3: Low Speed Medium Access Unit, ISO WD 11898-3, 1999 [TTC] International Standard Organisation, Road Vehicles — Controller Area Network — Part 4: Time-Triggered Communication, ISO WD 11898-4, 2000 [DS102] CAN in Automation International Users and Manufacturers Group e.V., CAN Physical Layer for Industrial Applications — Two-Wire Differential Transmission, CiA DS 102, version 2.0, 1994 [TIN]Tindell, K.W., Burns, A., and Wellings, A.J., Calculating controller area network (CAN) messages response times, Control Engineering Practice, 3, 1163–1169, 1995 [WCAN]Cena, G and Valenzano, A., A multistage hierarchical distributed arbitration technique for prioritybased real-time communication systems, IEEE Transactions on Industrial Electronics, 49, 22 1227–1239, 2002 [COP] European Committee for Electrotechnical Standardisation, Industrial Communications Subsystem Based on ISO 11898 (CAN) for Controller–Device Interfaces — Part 4: CANopen, EN 50325-4, 2001 [DNET] European Committee for Electrotechnical Standardisation, Industrial Communications Subsystem Based on ISO 11898 (CAN) for Controller–Device Interfaces — Part 2: DeviceNet, EN 50325-2, 2000 [DS301] CAN in Automation International Users and Manufacturers Group e.V., CANopen — Application Layer and Communication Profile, CiA DS 301, version 4.02, 2002 [DS401] CAN in Automation International Users and Manufacturers Group e.V., CANopen — Device Profile for Generic I/O Modules, CiA DS 401, version 2.0, 1999 23 ... tương thích với CAN 2.0A thường dẫn tới lỗi điều khiển, hay dẫn đến mạng không ổn định Cho nên, điều khiển CAN loại phát triển gọi CAN 2.0B thụ động Nó hoạt động xử lý khung CAN 2.0A, CAN 2.0B truyền... tin khơng tìm mạng CAN điều kiện họat động thực tế đánh giá khoảng 4.7x10−11 Giới hạn lỗi Để tránh node họat động sai gửi lặp khung lỗi gây nghẽn tồn mạng, có chế giới hạn lỗi đặc tả CAN Đơn vị... giới hạn lý thuyết CAN) Tuy nhiên, hoạt động mạng lưới kết đáng ý khác từ CAN Các giải pháp khác xuất tài liệu, chẳng hạn WideCAN WCAN], cung cấp tỷ lệ bit cao dựa kỹ thuật phân xử CAN thông