(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can(Luận văn thạc sĩ) Thiết kế mô hình giảng dạy hệ thống truyền dữ liệu qua mạng Can
Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ LỜI CAM ĐOAN Tôi cam đoan cơng trình nghiên cứu tơi Các số liệu, kết nêu luận văn trung thực chưa cơng bố cơng trình khác Tp Hồ Chí Minh, ngày … tháng … năm 2016 (Ký tên ghi rõ họ tên) GVHD: PGS_TS Đỗ Văn Dũng -ii- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ CẢM TẠ Đề tài hồn thành khơng nhờ cố gắng, nỗ lực thân mà nhờ hướng dẫn, giúp đỡ thầy PGS.TS Đỗ Văn Dũng Tôi xin chân thành cảm ơn giúp đỡ nhiệt tình thầy Ngồi ra, tơi cảm ơn giúp đỡ, đóng góp ý kiến thầy ThS Nguyễn Trọng Thức, bạn bè, gia đình GVHD: PGS_TS Đỗ Văn Dũng -iii- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ TÓM TẮT Ngày hệ thống điều khiển ô tô ngày phức tạp Mạng CAN (Controller Area Network), tạm dịch “Mạng ECU” hay gọi tắt mạng CAN đời.Tuy vậy, hệ thống truyền liệu qua mạng CAN ô tô hệ thống mẻ học viên, sinh viên kỹ thuật viên sửa chữa ô tô Chưa có mơ hình trực quan để người học hình dung, học tập.Do việc Thiết kế mơ hình giảng dạy hệ thống truyền liệu qua mạng CAN đề tài cần thiết giúp người học tiếp cận với công nghệ mới, phục vụ cho việc chẩn đoán sửa chữa hệ thống điện xe.Đề tài đạt số kết sau: - Đã nghiên cứu sở lý thuyết hệ thống truyền liệu CAN ô tô - Thiết kế chế tạo thành công hộp ECU hệ thống truyền liệu CAN ô tô Các ECU giao tiếp với giao tiếp CAN - Mô hình mơ hệ thống truyền liệu CAN ô tô chế tạo từ đề tài dùng để giảng dạy nghiên cứu hệ thống truyền liệu CAN ô tô SUMMARY Nowadays, A control system is more complexed on automobile CAN (Controller Area Network), roughly translated as "Network ECU" or referred to as the CAN network was born However, the Data transfer system via CAN network is a rather new system for students and technicians No visual model for learners to be able to visualize and study Thus the teaching model of Data transfer system via CAN networkis essential topics to help students gain access to new technologies, to serve the diagnostic repair electrical systems on the car The thesis has achieved some results as follows: - Having studied the theoretical basis of the data transfer system via CAN - Design and fabrication of the ECU box successful The ECU communicate with each other using CAN communication - The model simulated data transfer systems via CAN is made of threads can be used for teaching and research GVHD: PGS_TS Đỗ Văn Dũng -iv- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ MỤC LỤC TRANG QUYẾT ĐỊNH GIAO ĐỀ TÀI LÝ LỊCH KHOA HỌC i LỜI CAM ĐOAN ii MỤC LỤC v DANH SÁCH CÁC CHỮ VIẾT TẮT viii DANH SÁCH CÁC HÌNH ix DANH SÁCH CÁC BẢNG xii Chương 1:TỔNG QUAN 1.1 Tổng quan chung lĩnh vực nghiên cứu 1.2 Tình hình nghiên cứu nước 1.2.1 Tình hình nghiên cứu giới 1.2.2 Tình hình nghiên cứu nước 1.3 Mục tiêu đối tượng nghiên cứu 1.3.1 Mục tiêu nghiên cứu 1.3.2 Đối tượng nghiên cứu 1.4 Nhiệm vụ đề tài phạm vi nghiên cứu 1.4.1Nhiệm vụ đề tài 1.4.2Phạm vi nghiên cứu 1.5Phương pháp nghiên cứu Chương 2:CƠ SỞ LÝ THUYẾT HỆ THỐNG TRUYỀN DỮ LIỆU CAN TRÊN Ô TÔ 2.1Tổng quát mạng CAN (Controller Area Network) 2.2Khái quát giao thức CAN 2.2.1Tổng quát giao thức CAN 2.2.2 Lớp vật lý 12 2.2.2.1Non return zero 12 2.2.2.2Bit Stuffing 12 2.2.2.3Bit Timing 13 2.2.2.4Độ dài Bus 13 GVHD: PGS_TS Đỗ Văn Dũng -v- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ 2.2.2.5Trạng thái “Dominant” “Recessive” 14 2.2.3Giải tranh chấp Bus 16 2.2.4CAN frame 17 2.2.5Nominal Bit Time 21 2.2.6Sự đồng xung clock 24 2.2.7 Truyền nhận message 27 2.2.8 Xử lý lỗi 28 2.2.9 Mạch bảo bệ CAN bus 29 2.2.9.1 Phần cứng 29 2.2.9.2 Đặc tính kỹ thuật phận thu phát CAN transceiver 34 2.2.9.3 Lựa chọn phương thức bảo vệ CAN bus 37 2.2.9.4 Các mạch bảo vệ CAN bus 38 Chương 3:THIẾT KẾ VÀ CHẾ TẠO MƠ HÌNH GIẢNG DẠY HỆ THỐNG TRUYỀN DỮ LIỆU QUA MẠNG CAN 45 3.1 Các thành phần mơ hình: 45 3.1.1 Cảm biến siêu âm (SRF05) 45 3.1.2 Màn hình LCD 47 3.1.3 Vi điều khiển PIC 18F4580 50 3.2 Thu thập liệu đầu vào hệ thống 52 3.3 Thiết kế, chế tạo mạch ECU mô hệ thống truyền liệu CAN 54 3.3.1 Sơ đồ khối sơ đồ thuật toán điều khiển hệ thống truyền liệu CAN 54 3.3.1.1 Sơ đồ khối hệ thống truyền liệu CAN 54 3.3.1.2 Sơ đồ thuật toán điều khiển hệ thống truyền liệu CAN 55 3.3.2 Sơ đồ mạch điều khiển hệ thống truyền liệu CAN ô tô 57 3.4 Thử nghiệm, đánh giá kết 63 Chương 4:KẾT LUẬN VÀ ĐỀ NGHỊ 64 4.1 Kếtluận 64 4.2 Đề nghị 64 4.3 Hướng phát triển đề tài 64 PHIẾU GIẢNG DẠY 65 TÀI LIỆU THAM KHẢO 73 GVHD: PGS_TS Đỗ Văn Dũng -vi- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM GVHD: PGS_TS Đỗ Văn Dũng -vii- Luận Văn Thạc Sĩ HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ DANH SÁCH CÁC CHỮ VIẾT TẮT CAN : (Controller Area Network) CRC : (Cyclic Redundancy Code) ECU : (Engine Control Unit) EMI : (Electromagnetic Interference) ESD : (Electrostatic Discharge) HBM : (Human Body Model) ISO : (International Standard Organize) LCD : (Liquid Crystal Display) SAE : (Standard of American Engineering) SOF : (Start Of Frame) TVS : (Transient Voltage Suppression) GVHD: PGS_TS Đỗ Văn Dũng -viii- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ DANH SÁCH CÁC HÌNH HÌNH TRANG Hình 2.1: Sơ đồ tổng quát hệ thống CAN (Controller Area Network) xe Hình 2.2: Tính ổn định CAN Hình 2.3: Ứng dụng mạng CAN điều khiển ô tô Hình 2.4: Ví dụ mạng CAN Hình 2.5: Một nút mạng CAN 10 Hình 2.6: Mơ hình mạng CAN 11 Hình 2.7: Các lớp layer giao tiếp 11 Hình 2.8: NRZ method 12 Hình 2.9: Kỹ thuật Bit Stuffing 12 Hình 2.10: Giản đồ thời gian 13 Hình 2.11: Tốc độ tỉ lệ nghịch với độ dài Bus 13 Hình 2.12: Điện áp CAN low speed 15 Hình 2.13: Điện áp CAN high speed 15 Hình 2.14: Sự kháng nhiễu với ảnh hưởng điện từ 16 Hình 2.15: Giải tranh chấp Bus 17 Hình 2.16: Khung truyền 17 Hình 2.17: CRC field 18 Hình 2.18: Khung truyền liệu CAN 19 Hình 2.19: CAN standard frame 19 Hình 2.20: CAN Extended frame 20 Hình 2.21: CAN remote frame 20 Hình 2.22: CAN error frame 20 Hình 2.23: Baudrate định nghĩa thời gian cho bit 21 Hình 2.24: Mỗi bit cấu tạo segments 22 Hình 2.25: Cấu trúc Time Quantum 23 Hình 2.26: Số lượng Time Quanta cho segment 23 GVHD: PGS_TS Đỗ Văn Dũng -ix- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ Hình 2.27: Vấn đề đồng 24 Hình 2.28: Chuỗi dịch chuyển độ dài Segment Nominal Bit Time 25 Hình 2.29: Sơ đồ khối nhận CAN message 27 Hình 2.30: Sơ đồ khối truyềnCAN message 27 Hình 2.31: Các loại lỗi khác 29 Hình 2.32: Cấu trúc mạch CAN BUS 30 Hình 2.33: ISO 11898-2 Differential High-speed CAN bus 32 Hình 2.34: ISO 11898-3 Fault tolerant CAN Bus 33 Hình 2.35: SAE J2411 single wire CAN Bus 34 Hình 2.36: Cách tạo diode TVS hai chiều 39 Hình 2.37: Mạch bảo vệ CAN dùng TVS diode 39 Hình 2.38: Mạch bảo vệ CAN dùng TVS diode 40 Hình 2.39: Mạch bảo vệ CAN dùng TVS diode 40 Hình 2.40: Mạch bảo vệ CAN dùng MOVs 41 Hình 2.41: Mạch bảo vệ CAN dùng cuộn cảm 42 Hình 2.43: Mạch bảo vệ CAN dùng mạch kết hợp 44 Hình 2.44: Mạch bảo vệ mạng CAN dây đơn 44 Hình 3.1 Sơ đồ khối mơ hình giảng dạy hệ thống truyền liệu qua mạng CAN 45 Hình 3.2 Cảm biến siêu âm SRF05 46 Hình 3.3 Các chân kết nối cảm biến 46 Hình 3.4 : Hình dáng loại LCD thơng dụng 47 Hình 3.5 : Sơ đồ chân LCD 48 Hình 3.6 Sơ đồ chân PIC18F4580 50 Hình 3.7 Cấu trúc bên MCP2551 51 Hình 3.8 Sơ đồ kết nối với PIC 52 Hình 3.9 Nguyên lý hoạt động SFR05 53 Hình 3.10: Sơ đồ mạch điện hệ thống truyền liệu CAN mơ hình 54 Hình 3.11: Sơ đồ nguyên lý mạch nguồn 57 Hình 3.12: Sơ đồ nguyên lý mạch hiển thị 58 GVHD: PGS_TS Đỗ Văn Dũng -x- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ Hình 3.13 Mạch giao tiếp CAN 58 Hình 3.14 Mạch cảm biến 59 Hình 3.15 Mạch nút nhấn 59 Hình 3.16 Mạch in 60 Hình 3.17 Hình ảnh tổng thể mơ hình 61 Hình 3.18 Hình ảnh bên ECU 61 Hình 3.19 Màn hình lúc khởi động 62 Hình 3.20 Kết hiển thị hình 62 GVHD: PGS_TS Đỗ Văn Dũng -xi- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ can_getd(rx_id, &rx_data, rx_len, rxstat); //nhan du lieu luu vao cac bien if(rx_id==id_leftsignal) { if(rx_data[0]){ //tat xi nhan leftstt=0; if(!hazzstt){ //kiem tra dang tat hazza moi tat timer disable_interrupts(INT_TIMER2); output_low(LED1); } } if(!rx_data[0]){ //bat xi nhan leftstt=1; if(!hazzstt){ //dang tat hazza moi kich hoat timer set_timer2(250); countT2=74; enable_interrupts(INT_TIMER2); giay=1; } } } if(rx_id==id_hazzsignal){ if(rx_data[0]){ //tat hazza hazzstt=0; if(!leftstt){ //dang tat xi nhan moi tat timer disable_interrupts(INT_TIMER2); output_low(LED1); } } if(!rx_data[0]){ //bat hazza hazzstt=1; set_timer2(250); //ngay ca xi nhan dang bat van reset timer countT2=74; enable_interrupts(INT_TIMER2); GVHD: PGS_TS Đỗ Văn Dũng -95- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ giay=1; } } else if(rx_id==id_revesignal) { //tin hieu lui xe output_bit(LED3, !rx_data[0]); if(rx_data[0]) revestt=0; else revestt=1; } } } } #INT_TIMER2 void TIMER2_isr(void) { countT2++; if(countT2>=75) { //~1s countT2=0; if(giay) { giay=0; output_high(LED1); //den xi nhan sang } else{ giay=1; output_low(LED1); //den xi nhan tat } } } #INT_EXT void EXT_isr(void) { GVHD: PGS_TS Đỗ Văn Dũng -96- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ if(stt==1) {count1= get_timer1(); range_ok1=1;} if(stt==2) {count2= get_timer1(); range_ok2=1;} } int16 CB1() //Doc cam bien khoang cach { int16 time_out=0; int16 distance=0; output_high(TRIG1); //kich chan trigger 15us delay_us(15); output_low(TRIG1); stt=1; while((input(ECHO)==1)&&(time_out=250)//Khong co Dap ung o chan Echo3 { return 910; } //Neu co dap ung //Bat dau Timer 1; set_timer1(0); //Reset TIMER1 time_out=0; range_ok1=0; while((range_ok1==0)&&(time_out)=90)//Co loi xay { range_ok1=0; return 920; } distance=count1/72;//58/10*8; //Tinh toan khoang cach theo don vi cm range_ok1=0; return distance; } int16 CB2() //Doc cam bien khoang cach { int16 time_out=0; int16 distance=0; output_high(TRIG2); //kich chan trigger 15us delay_us(15); output_low(TRIG2); stt=2; while((input(ECHO)==1)&&(time_out=250)//Khong co Dap ung o chan Echo3 { return 910; } //Neu co dap ung //Bat dau Timer 1; set_timer1(0); //Reset TIMER GVHD: PGS_TS Đỗ Văn Dũng -98- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ time_out=0; range_ok2=0; while((range_ok2==0)&&(time_out)=90)//Co loi xay { range_ok2=0; return 920; } distance=count2/72;//58/10*8; //Tinh toan khoang cach theo don vi cm range_ok2=0; return distance; } void main() { setup_timer_0(RTCC_INTERNAL|RTCC_DIV_128|RTCC_8_bit); //25,6us resolution 6,5 ms overflow setup_timer_1(T1_INTERNAL|T1_DIV_BY_4); setup_timer_2(T2_DIV_BY_16,255,16); //52,4 ms overflow //819 us overflow, 13,1 ms interrupt //enable_interrupts(INT_TIMER2); enable_interrupts(INT_TIMER0); enable_interrupts(INT_EXT); enable_interrupts(GLOBAL); //cai dat giao tiep CAN can_init(); can_set_mode(CAN_OP_CONFIG); GVHD: PGS_TS Đỗ Văn Dũng -99- HVTH: Nguyễn Mạnh Chiến Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM Luận Văn Thạc Sĩ can_set_functional_mode(CAN_FUN_OP_ENHANCED); can_set_mode(CAN_OP_NORMAL); while(TRUE) { if(revestt){ //Che lui dang bat data=0; j=0; for(i=0; i