(Luận văn thạc sĩ hcmute) nghiên cứu thiết kế chế tạo mạch giao tiếp giữa máy tính và ecu điều khiển động cơ

187 7 0
(Luận văn thạc sĩ hcmute) nghiên cứu thiết kế chế tạo mạch giao tiếp giữa máy tính và ecu điều khiển động cơ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ HUỲNH QUỐC VIỆT NGHIÊN CỨU THIẾT KẾ CHẾ TẠO MẠCH GIAO TIẾP GIỮA MÁY TÍNH VÀ ECU ĐIỀU KHIỂN ĐỘNG CƠ NGÀNH: KHAI THÁC VÀ BẢO TRÌ Ơ TÔ, MÁY KÉO - 605246 S KC 0 Tp Hồ Chí Minh, tháng 09 năm 2005 Luan van BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SĨ KS HUỲNH QUỐC VIỆT NGHIÊN CỨU THIẾT KẾ CHẾ TẠO MẠCH GIAO TIẾP GIỮA MÁY TÍNH VÀ ECU ĐIỀU KHIỂN ĐỘNG CƠ Chuyên ngành : KHAI THÁC VÀ BẢO TRÌ Ơ TƠ, MÁY KÉO Mã số ngành : 60 52 46 Tp Hồ Chí Minh, tháng năm 2005 Luan van MỤC LỤC NỘI DUNG DẪN NHẬP Chương 1.1 Đặt vấn đề 1.2 Mục tiêu nhiệm vụ 1.3 Phạm vi nghiên cứu 1.4 Đối tượng nghiên cứu 1.5 Phương pháp nghiên cứu 1.6 Ứng dụng thực tiễn 1.7 Điểm luận văn 1.8 Bố cục luận văn Chương CƠ SỞ LÝ THUYẾT VỀ MÁY TÍNH VÀ GIAO TIẾP 2.1 Sơ đồ khối tổng quát máy tính 2.1.1 Kiến trúc máy tính tổng quát 2.1.2 Nguyên lý hoạt động thành phần máy tính 2.2 Tiêu chuẩn giao tiếp máy tính 2.2.1 Giao tiếp song song – giao tiếp qua cổng máy in 2.2.2 Giao tiếp qua Slot card 2.2.3 Giao tiếp nối tiếp qua cổng RS-232 2.3 Tổng quan cổng nối tiếp 2.3.1 Khái niệm giao tiếp nối tiếp 2.3.2 Tiêu chuẩn giao tiếp cổng nối tiếp 2.3.3 Phương pháp kết nối thiết bị 2.3.4 Trạng thái tín hiệu 2.3.5 Định dạng phương thức truyền liệu nối tiếp 2.3.6 Nguyên lý truyền liệu 2.4 Khái quát giao tiếp nối tiếp Matlab 2.4.1 Trình tự thực giao tiếp thiết bị với cổng nối tiếp 2.4.2 Thiết lập hiển thị thuộc tính cấu hình 2.5 Thiết lập cổng giao tiếp với Matlab 2.5.1 Tạo cổng nối tiếp 2.5.2 Kết nối thiết bị 2.5.3 Thiết lập cấu hình giao tiếp 2.5.4 Viết đọc liệu 2.5.5 Ngưng kết nối ngắt thiết bị 2.6 Sự kiện (Event) hàm Callback 2.6.1 Loại kiện thuộc tính Callback 2.6.2 Lưu trữ thông tin kiện 2.6.3 Tạo thực thi hàm Callback 2.7 Sử dụng chân điều kieån Luan van Trang I I II II III III III III IV 1 1 5 6 6 10 11 13 13 14 15 15 17 18 19 25 26 26 28 29 29 2.7.1 Báo hiệu trạng thái kết nối thiết bị 2.7.2 Điều khiển dòng liệu 2.8 Ghi thông tin lên đóa 2.8.1 Phương pháp ghi tập tin 2.8.2 Xác định tên tập tin 2.8.3 Định dạng tập tin 2.9 Lưu xuất liệu Chương CƠ SỞ LÝ THUYẾT VỀØ LINH KIỆN THIẾT KẾ BỘ GIAO TIẾP 3.1 Giới thiệu khái quát họ vi điều khiển MSC-51 3.2 Cấu trúc AT89S52 3.2.1 Giới thiệu AT89S52 3.2.2 Sơ đồ khối 3.2.3 Chức chân 3.2.4 Khảo sát khối nhớ bên 89S52 3.3 Hoạt động định thời cách ngắt 3.3.1 Hoạt động định thời 3.3.2 Hoạt động ngắt 3.4 Chương trình ngôn ngữ Assembly 89S52 3.4.1 Giới thiệu 3.4.2 Hoạt động trình biên dịch 3.4.3 Các lệnh dùng lập trình 3.5 ADC0809 3.6 Vi mạch MAX232 3.7 Vi maïch M62358 3.8 Vi maïch LM324 3.9 Vi maïch 7805 Chương KHẢO SÁT HỆ THỐNG ĐIỀU KHIỂN ĐỘNG CƠ 4.1 Cấu trúc hệ thống điều khiển lập trình thuật toán điều khiển 4.1.1 Sơ đồ cấu trúc khối chức 4.1.2 Thuật toán điều khiển lập trình 4.2 Các tín hiệu vào 4.2.1 Cảm biến đo gió 4.2.2 Cảm biến áp suất tuyệt đối đường ống nạp 4.2.3 Cảm biến bướm ga 4.2.4 Cảm biến nhiệt độ nước làm mát 4.2.5 Cảm biến nhiệt độ khí nạp 4.2.6 Cảm biến khí thải 4.4.7 Cảm biến tốc độ động vị trí piston 4.3 Bộ điều khiển điện tử Luan van 29 30 31 31 32 32 32 34 34 34 34 35 36 40 45 45 48 49 49 50 51 51 55 55 58 60 61 61 61 62 66 66 70 71 72 73 74 74 77 4.3.1 4.3.2 4.3.3 4.3.4 4.4 4.4.1 4.4.2 4.4.3 4.5 4.5.1 4.5.2 4.5.3 4.6 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 Tổng quan Cấu tạo Cấu trúc ECU Mạch giao tiếp ngõ vào Các tín hiệu điều khiển Điều khiển đánh lửa Điều khiển kim phun Điều khiển chế độ không tải kiểm soát khí thải Hệ thống tự chẩn đoán Tổng quan hệ thống tự chẩn đoán Nguyên lý phát lỗi Phương pháp truy xuất mã lỗi Truyền liệu nối tiếp động Truyền liệu nối tiếp Hiển thị liệu động Mạch điện hệ thống chẩn đoán OBD Mạch điện hệ thống chẩn đoán OBD-II Những ứng dụng hạn chế máy quét liệu nối tiếp chẩn đoán động Chương THIẾT KẾ GIAO DIỆN GIAO TIẾP BẰNG MATLAB 5.1 Khái niệm GUIDE Matlab 5.2 Phương pháp tạo GUIs với GUIDE 5.2.1 Tạo GUIDE 5.2.2 Các thành phần GUIs 5.3 Thiết lập thuộc tính thành phần 5.3.1 Hiển thị thuộc tính ban đầu 5.3.2 Các thuộc tính thường dùng 5.3.3 Thiết lập thuộc tính cho thành phần 5.4 Thuộc tính Callback 5.4.1 Thêm Callback vào M-file 5.4.2 Thay đổi Tag thuộc tính Callback 5.5 Lập trình GUIs 5.5.1 Toggle button 5.5.2 Radio button 5.5.3 Checkbox button 5.5.4 Edit text 5.5.5 Slider 5.5.6 Listbox 5.5.7 Popup menu 5.5.8 Panels 5.5.9 Button group Luan van 77 78 79 80 82 82 87 94 95 95 96 96 98 98 99 100 101 102 103 103 103 104 105 106 107 107 108 113 113 114 114 116 116 116 117 117 117 118 118 119 5.5.10 Các trục tọa độ 5.5.11 ActiveX controls 5.6 Ứng dụng thiết kế giao diện giao tiếp 5.6.1 Nội dung thiết kế 5.6.2 Thiết kế nội dung 5.6.3 Thiết kế hộp thoại hiển thị thông báo kết thúc chương trình Chương THIẾT KẾ BỘ GIAO TIẾP 6.1 Sơ đồ tổng quát 6.1.1 Sơ đồ khối chức 6.1.2 Nội dung thiết kế giao tiếp 6.1.3 Đặc điểm động thí nghiệm 6.1.4 Thực nghiệm xác định đặc tuyến làm việc cảm biến động 6.2 Thiết kế phần cứng giao tiếp 6.2.1 Sơ đồ nguyên lý giao tiếp 6.2.2 Sơ đồ bố trí linh kiện 6.2.3 Bộ giao tiếp 6.3 Thiết kế phần mềm giao tiếp Chương THỰC NGHIỆM 7.1 Giới thiệu 7.2 Sơ đồ thí nghiệm 7.2.1 Trình tự thực thí nghiệm 7.2.2 Sơ đồ bố trí thí nghiệm 7.3 Phương pháp vận hành 7.4 Kết thí nghiệm 7.4.1 Đọc liệu hành động 7.4.2 Nhập liệu điều khiển động từ máy tính 7.4.3 Đọc mã lỗi 7.5 ng dụng 7.6 Nhận xét kết thực nghiệm Chương KẾT LUẬN VÀ ĐỀ NGHỊ 8.1 Kết luận 8.2 Đề nghị 8.3 Hướng phát triển đề tài Phụ lục Chương trình Matlab sử dụng giao diện giao tiếp Phụ lục Chương trình vi điều khiển giao tiếp Phụ lục Bảng thông số liệu động theo thực nghiệm Luan van 119 121 123 123 127 133 134 134 134 135 136 136 139 139 140 141 142 146 146 146 146 148 148 150 150 151 153 154 156 V V VI Chương 1: DẪN NHẬP 1.1 Đặt vấn đề Đã 118 năm kể từ ô tô giới đời, đến ô tô trở thành phương tiện vận chuyển cần thiết không thay xã hội loài người So với phương tiện giao thông khác, ô tô có vị trí vô quan trọng tỉ lệ hành khách tham gia giao thông đường cao hẳn so với loại phương tiện giao thông khác, năm tỷ lệ tăng trưởng sản xuất ôtô đạt xấp xỉ 3% Cùng với xu hướng phát triển giới, khoa học kỹ thuật công nghệ phát triển không ngừng, nhiều thành tựu bật góp phần thúc đẩy phát triển ngành công nghiệp Nền công nghiệp ô tô không nằm quy luật đó, từ năm 80 kỷ XX, công nghệ điện tử ứng dụng ô tô thay cấu điều khiển khí Qua nhiều thập niên, điện tử trở thành nhân tố quan trọng thiếu ô tô Nó giúp động ô tô điều khiển xác nhằm giảm ô nhiễm môi trường, tiết kiệm nhiên liệu, tăng công suất động mà thước đo giá trị tính êm dịu, mức độ tiện nghi ô tô đại, từ đó, định khả sống ô tô Song song với việc đại hóa ô tô ngày hoàn hảo vấn đề bảo trì, chẩn đoán, sửa chữa ngày phức tạp Với ô tô đại nay, lượng liệu điều khiển xe ngày nhiều Vì vậy, chẩn đoán, sửa chữa theo phương pháp thủ công trở nên khó khăn không muốn nói không tưởng Do đó, để giúp cho người kỹ thuật viên thực tốt công việc chẩn đoán sữa chữa, ô tô đời trang bị hệ thống tự chẩn đoán Tuy nhiên, hệ thống tự chẩn đoán phát lỗi hệ thống tín hiệu nằm khoảng xác định cho phép Vì thế, tín hiệu sai lệch với thực tế nằm khoảng xác định hệ thống tự chẩn đoán không phát Điều dẫn đến động hoạt động không đạt hiệu cao Mặt khác, với cương vị người giáo viên kỹ thuật, người nghiên cứu mong muốn đạt hiệu cao công tác giảng dạy Ngoài kiến thức chuyên môn, lòng say mê công việc cộng với phương pháp sư phạm đại thiết bị dạy học góp phần lớn việc nâng cao hiệu giảng dạy, đặc biệt giảng dạy kỹ thuật Nghiên cứu, thiết kế, chế tạo mô hình dạy học minh chứng cụ thể đề tài không mục đích Sản phẩm đề tài mô hình dạy học minh họa thay đổi thông số động đặc biệt ảnh hưởng tín hiệu đầu vào đến hoạt động động Song song với công tác giảng dạy, công tác nghiên cứu người giáo viên kỹ thuật không phần quan trọng Hầu hết liệu điều khiển động I Luan van xác định từ thực nghiệm Nhưng tín hiệu đầu vào nhiều, thiết bị nước khiêm tốn nên xác định ảnh hưởng tín hiệu đến chế độ hoạt động động Điều ảnh hưởng lớn đến công tác nghiên cứu Với trăn trở, khúc mắt chuyên môn với khát vọng nâng cao trình độ, cải tiến, phát triển kỹ thuật Người nghiên cứu tìm hướng giải đề tài: “Nghiên cứu, thiết kế, chế tạo mạch giao tiếp máy tính ECU điều khiển động “ PGS TS Đỗ Văn Dũng hướng dẫn Đề tài thực với ba nội dung chính: 1.2 ƒ Nghiên cứu lý thuyết giao tiếp máy tính động Matlab ƒ Thiết kế giao tiếp máy tính cá nhân ECU điều khiển động ƒ Chế tạo giao tiếp máy tính cá nhân ECU điều khiển động Mục tiêu nhiệm vụ Đề tài “Nghiên cứu, thiết kế, chế tạo mạch giao tiếp máy tính ECU điều khiển động “ nhằm thiết kế chế tạo mạch giao tiếp hai chiều máy tính ECU điều khiển động nhằm hiển thị thông số hoạt động động cơ, đồng thời, điều khiển động từ máy tính Việc tính toán mô điều khiển động thực thông qua phần mềm Matlab Trên sở mạch giao tiếp này, ta phát triển thành thiết bị chẩn đoán sửa chữa động Các bước thực đề tài: ƒ Nghiên cứu cấu trúc vi điều khiển ƒ Nghiên cứu nguôn ngữ lập trình Assembly ƒ Nghiên cứu cấu trúc máy tính cá nhân ƒ Khảo sát dạng liệu động ƒ Nghiên cứu truyền liệu nối tiếp Matlab ƒ Nghiên cứu thiết kế giao diện giao tiếp Matlab ƒ Nghiên cứu thiết kế phần cứng giao tiếp ƒ Lập trình vi điều khiển ngôn ngữ Assembly ƒ Lập trình điều khiển giao diện giao tiếp Matlab ƒ Thực nghiệm kiểm tra độ xác của thí nghiệm thông qua máy chẩn đoán 1.3 Phạm vi nghiên cứu Do chủng loại động đa dạng thời gian thực đề tài có hạn, người nghiên cứu tập trung thực phạm vi sau: Nghiên cứu sở lý thuyết linh kiện thiết kế giao tiếp ngôn ngữ lập trình Assembly II Luan van Khảo sát dạng tín hiệu hệ thống điều khiển động Nghiên cứu sở lý thuyết cấu trúc máy tính phương pháp truyền liệu nối tiếp Matlab Thiết kế giao diện lập trình giao tiếp Matlab Ứng dụng lý thuyết này, thiết kế, chế tạo giao tiếp máy tính cá nhân ECU điều khiển động 4E-FE xe Toyota corolla với giao diện giao tiếp Matlab Sau đó, tiến hành thực nghiệm để so sánh với thiết bị có để đánh giá khả ổn định mức độ xác thiết bị 1.4 Đối tượng nghiên cứu Đề tài liên quan đến bốn đối tượng chính: 1.5 ƒ Hệ thống điều khiển động điện tử ƒ Cấu trúc máy tính phương phương pháp truyền liệu nối tiếp ƒ Thiết kế giao diện giao tiếp thông qua việc ứng dụng phần mềm Matlab ƒ Mạch giao tiếp máy tính ECU Phương pháp nghiên cứu Để thực đề tài, tác giả vận dụng nhiều phương pháp nghiên cứu khác nhau: Phương pháp tham khảo tài liệu: từ Internet, sách chuyên ngành ô tô, điện tử, tin học, … Phương pháp thực nghiệm: Đo thông số từ động thực tế tiến hành xử lý số liệu đo Phương pháp thử sai: ứng dụng thiết kế mạch, lập trình vi điều khiển lập trình Matlab 1.6 Ứng dụng thực tiễn Đề tài hoàn thành sở lý thuyết (đã qua kiểm chứng sản phẩm đề tài) việc ứng dụng điều khiển động máy tính cá nhân với chương trình Matlab, tảng cho việc phát triển ứng dụng Matlab tính toán, mô phỏng, điều khiển Sản phẩm đề tài mô hình ứng dụng hữu ích, tăng tính trực quan công tác giảng dạy kỹ thuật, đặc biệt vấn đề điều khiển động Vì sản phẩm ứng dụng rộng rãi cho trường đại học, cao đẳng, công nhân kỹ thuật, … Sản phẩm đề tài ứng dụng kiểm tra, chẩn đoán, sửa chữa xe ô tô đại Ngoài ra, đề tài tiếp tục phát triển, sản phẩm ứng dụng làm thiết bị thí nghiệm động ô tô 1.7 Điểm luận văn III Luan van Đề tài bước đột phá việc ứng dụng phần mềm Matlab, phần mềm mạnh đồ họa, tính toán, mô toán học hệ thống, điều khiển, giao tiếp, … để điều khiển giao tiếp động máy tính mà chưa có công trình nghiên cứu, dừng lại ứng dụng đơn Đề tài thành công mở cho tác giả hướng phát triển kết hợp phần tính toán, điều khiển Matlab tiến hành đo đạc, lựa chọn thông số tối ưu động Hay nói cách khác, đề tài phát triển thành thiết bị thí nghiệm để xác định bảng đồ liệu tối ưu cho động 1.8 Bố cục luận văn Với nội dụng đề tài trình bày, luận văn trình bày theo bố cục sau: Chương Dẫn nhập Giới thiệu đề tài, tầm quan trọng đề tài, giới hạn đề tài Chương Cơ sở lý thuyết máy tính giao tiếp Trình bày cấu trúc máy tính phương thức truyền liệu nối tiếp Matlab Chương Cơ sở lý thuyết linh kiện thiết kế giao tiếp Trình bày lý thuyết cấu trúc vi điều khiển, ngôn ngữ assembly linh kiện liên quan Chương Khảo sát tín hiệu hệ thống điều khiển động Trình bày dạng xung tín hiệu hệ thống điều khiển động Chương Thiết kế giao diện giao tiếp matlab Trình bày lý thuyết thiết kế giao diện matlab ứng dụng thiết kế giao diện giao tiếp đề tài Chương Thiết kế giao tiếp Trình bày phương pháp thiết kế nội dung thiết kế giao tiếp sản phẩm thiết kế Chương Thực nghiệm Trình bày phương pháp vận hành, kết thí nghiệm để xác định độ tin cậy độ xác giao tiếp Chương Kết luận đề nghị Phụ lục Trình bày nội dung chương trình lập trình Assembly cho vi điều khiển Trình bày nội dung chương trình lập trình giao diện giao tiếp Matlab Trình bày bảng số liệu thực nghiệm IV Luan van c3=' 14 Tín hiệu đánh lửa'; k(3)=20; case 21 c4=' 21 Cảm biến ôxy'; k(4)=21; case 22 c5=' 22 Cảm biến nhiệt độ động cơ'; k(5)=22; case 24 c6=' 24 Cảm biến nhiệt độ khí nạp'; k(6)=24; case 31 c7=' 31 Cảm biến áp suất đường ống nạp'; k(7)=31; case 41 c8=' 41 Cảm biến vị trí bướm ga'; k(8)=65; case 42 c9=' 42 Cảm biến tốc độ xe'; k(9)=66; case 43 c10=' 43 Tín hiệu khởi động'; k(10)=67; case 51 c11=' 51 Tín hiệu tải'; k(11)=81; case 52 c12=' 52 Tín hiệu kích nổ'; k(12)=82; case 11 set(handles.listbox1,'string',' Động lỗi','Value',1); break; end if strcmp(c1,'')==0 %set(handles.listbox1,'string',c1,'Value',1); if strcmp(m,'')==1 m=strcat(m,c1); else c1=strcat('|',c1); m=strcat(m, c1); end end Luan van if strcmp(c2,'')==0 %set(handles.listbox1,'string',c2,'Value',1); if strcmp(m,'')==1 m=strcat(m,c2); else c2=strcat('|',c2); m=strcat(m, c2); end end if strcmp(c3,'')==0 %set(handles.listbox1,'string',c3,'Value',1); if strcmp(m,'')==1 m=strcat(m,c3); else c3=strcat('|',c3); m=strcat(m, c3); end end if strcmp(c4,'')==0 %set(handles.listbox1,'string',c4,'Value',1); if strcmp(m,'')==1 m=strcat(m,c4); else c4=strcat('|',c4); m=strcat(m, c4); end end if strcmp(c5,'')==0 %set(handles.listbox1,'string',c5,'Value',1); if strcmp(m,'')==1 m=strcat(m,c5); else c5=strcat('|',c5); m=strcat(m, c5); end end if strcmp(c6,'')==0 %set(handles.listbox1,'string',c6,'Value',1); if strcmp(m,'')==1 m=strcat(m,c6); else c6=strcat('|',c6); Luan van end m=strcat(m, c6); end if strcmp(c7,'')==0 %set(handles.listbox1,'string',c7,'Value',1); if strcmp(m,'')==1 m=strcat(m,c7); else c7=strcat('|',c7); m=strcat(m, c7); end end if strcmp(c8,'')==0 %set(handles.listbox1,'string',c8,'Value',1); if strcmp(m,'')==1 m=strcat(m,c8); else c8=strcat('|',c8); m=strcat(m, c8); end end if strcmp(c9,'')==0 %set(handles.listbox1,'string',c9,'Value',1); if strcmp(m,'')==1 m=strcat(m,c9); else c9=strcat('|',c9); m=strcat(m, c9); end end if strcmp(c10,'')==0 %set(handles.listbox1,'string',c10,'Value',1); if strcmp(m,'')==1 m=strcat(m,c10); else c10=strcat('|',c10); m=strcat(m, c10); end end if strcmp(c11,'')==0 %set(handles.listbox1,'string',c11,'Value',1); if strcmp(m,'')==1 Luan van else end end end m=strcat(m,c11); c11=strcat('|',c11); m=strcat(m, c11); end if strcmp(c12,'')==0 %set(handles.listbox1,'string',c12,'Value',1); if strcmp(m,'')==1 m=strcat(m,c12); else c12=strcat('|',c12); m=strcat(m, c12); end end set(handles.listbox1,'string',m,'Value',1); % ket thuc if flag % ket thuc vong lap While Chương trình ngắt cổng nối tiếp fclose(handles.s) delete(handles.s) clear handles.s Luan van PHỤ LỤC Chương trình vi điều khiển giao tiếp PCON COUNTER DATADAC ADDR CONTROL TOUT CANCEL RST LD CLK DI IGT KP IG ST TE W A0 A1 START OE TGP IGTT IGTW THW THA PIM VTA CCODE DVCODE THW2 THA2 PIM2 VTA2 SPACE EQU EQU EQU EQU BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT BIT EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU ORG 0000H 0087H 01H 2AH 2BH P1.4 03H 04H P0.0 P0.1 P0.2 P0.3 P3.2 P3.3 P3.4 P3.7 P3.6 P3.5 P1.0 P1.1 P1.2 P1.3 30H 31H 32H 33H 34H 35H 36H 38H 39H 3AH 3BH 3CH 3DH 00H ;Reset Luan van JMP ORG JMP ORG JMP ORG MN 000BH T0ISR 0023H SPISR 0030H MN: MOV SP,#5FH MOV SCON,#50H MOV TMOD,#22H MOV TH1,#-3 MOV TH0,#-250 MOV TL0,#-250 MOV PCON,#80H SETB EA SETB ET0 SETB TR1 SETB ES MOV DPTR,#0 NOP MOV 30H,#1 MOV 31H,#3 MOV 32H,#5 MOV THW2,#0 MOV THA2,#0 MOV PIM2,#0 MOV VTA2,#0 CLR CONTROL CLR TE CLR CANCEL INITDAC: SETB CLK SETB LD CLR RST NOP NOP NOP SETB RST ;192000 Baud ;Cho phep ngat toan cuc ;Cho phep ngat bo dinh thoi ;Cho phep Timer hoat dong ;Cho phep ngat port ntiep LOOP: CALL ADC1 JB CONTROL,NLOAD CALL LOAD NLOAD: CALL DAC CALL DOTOCDO CALL DOTGP Luan van JMP LOOP ;================================ JMP $ ; SPISR:CLR ES PUSH ACC MOV 04H,C CALL GETCHR CJNE CALL JMP A,#254,CONT1 SENDDATA EXIT CONT1: CJNE A,#253,CONT2 CALL RECDATA JMP EXIT CONT2: CLR JMP CJNE A,#252,CONT3 IG EXIT CONT3: CJNE A,#251,CONT4 SETB IG JMP EXIT CONT4: CLR JMP CJNE A,#250,CONT5 ST EXIT CONT5: CJNE A,#249,CONT6 SETB ST JMP EXIT CONT6: CJNE A,#248,CONT7 CLR CANCEL CALL DOCCODE JMP EXIT CONT7: CLR JMP CJNE A,#246,CONT8 CONTROL EXIT CONT8: CJNE A,#247,EXIT SETB CANCEL Luan van EXIT: POP ACC MOV C,04H SETB ES RETI ; SENDDATA: SETB TI MOV A,#254 CALL SENDCHR MOV A,TGP CALL SENDCHR MOV A,IGTT CALL SENDCHR MOV A,IGTW CALL SENDCHR MOV A,THW2 CALL SENDCHR MOV A,THA2 CALL SENDCHR MOV A,PIM2 CALL SENDCHR MOV A,VTA2 CALL SENDCHR CLR TI RET ; RECDATA: SETB CONTROL CALL GETCHR MOV THW2,A CALL GETCHR MOV THA2,A CALL GETCHR MOV PIM2,A CALL GETCHR MOV VTA2,A CLR RI RET ; DOCCODE: MOV SPACE,#0 MOV CCODE,#0 MOV DVCODE,#0 SETB TE CALL DELAY025 STR: JNB W,$ Luan van CALL DELAY025 READ: JNB W,DV ;KHOANG TRONG XUNG INC CCODE CALL DELAY1 JMP READ NOP DV: JNB W,$ CALL DELAY025 READ1: JB W,NEXT1 MOV A,CCODE MOV B,#10 MUL AB ADD A,DVCODE CALL SENDCHR CALL DELAY025 CALL SENDCHR MOV SPACE,#0 MOV CCODE,#0 MOV DVCODE,#0 JMP STR NEXT1: INC DVCODE CALL DELAY1 JNB CANCEL,READ1 CLR TE RET ; ADC1: CLR START CLR A0 ;==== CLR A1 CLR OE NOP SETB START NOP CLR START MOV 46H,#70 DJNZ 46H,$ SETB OE MOV THW,P2 SETB A0 ;==== CLR A1 CLR OE NOP SETB START NOP Luan van CLR MOV DJNZ SETB START 46H,#70 46H,$ OE MOV THA,P2 CLR A0 ;==== SETB A1 CLR OE NOP SETB START NOP CLR START MOV 46H,#70 DJNZ 46H,$ SETB OE MOV PIM,P2 SETB A0 ;==== SETB A1 CLR OE NOP SETB START NOP CLR START MOV 46H,#70 DJNZ 46H,$ SETB OE MOV VTA,P2 NOP RET ; LOAD: MOV THW2,THW MOV THA2,THA MOV PIM2,PIM MOV VTA2,VTA RET ; DAC: MOV ADDR,#1 MOV DATADAC,THW2 CALL SHIN MOV ADDR,#2 MOV DATADAC,THA2 CALL SHIN MOV ADDR,#3 MOV DATADAC,PIM2 Luan van CALL SHIN MOV ADDR,#4 MOV DATADAC,VTA2 CALL SHIN RET SHIN: CLR LD CLR CLK MOV 3EH,#6 MOV A,ADDR LO: RRC A MOV DI,C NOP SETB CLK NOP CLR CLK DJNZ 3EH,LO MOV 3EH,#7 MOV A,DATADAC LO1: RLC A MOV DI,C NOP SETB CLK NOP CLR CLK DJNZ 3EH,LO1 SETB LD NOP SETB CLK RET ; DOTOCDO: ;DON VI 250uS JNB IGT,MC JMP EXX MC: MOV COUNTER,#0 JB IGT,$ SETB TR0 JNB IGT,$ MOV IGTW,COUNTER MOV COUNTER,#0 JB IGT,$ MOV IGTT,COUNTER CLR TR0 EXX: RET T0ISR:CJNE R1,#255,LL Luan van SETB TOUT LL: INC COUNTER RETI ; _ DOTGP: JNB KP,MC1 JMP EXXX MC1: MOV COUNTER,#0 JB KP,$ SETB TR0 JNB KP,$ MOV TGP,COUNTER CLR TR0 EXXX: RET ; GETCHR: JNB RI,GETCHR CLR RI MOV A,SBUF RET ; SENDCHR: JNB TI,SENDCHR CLR TI MOV A,SBUF RET ; DELAY025: MOV 40H,#2 MOV 41H,#194 MOV 42H,#53 TT: DJNZ 42H,TT DJNZ 41H,TT DJNZ 40H,TT RET DELAY1: MOV 40H,#8 MOV 41H,#8 MOV 42H,#127 TT1: DJNZ 42H,TT1 DJNZ 41H,TT1 DJNZ 40H,TT1 RET DELAY: MOV 43H,#1 Luan van MOV 44H,#194 MOV 45H,#53 TT3: DJNZ 45H,TT3 DJNZ 44H,TT3 DJNZ 43H,TT3 RET ; _ END PHỤ LỤC Bảng Bảng thông số liệu cảm biến nhiệt độ khí nạp theo thực nghiệm Nhiệt độ khí nạp 10 11 12 13 14 15 16 17 18 19 Điện áp THA (V) 3.39 3.35 3.3 3.26 3.21 3.15 3.1 3.03 2.97 2.93 2.9 2.85 2.81 2.76 2.72 2.67 2.62 2.57 2.51 2.45 Nhiệt độ khí nạp 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 Điện áp THA (V) 2.4 2.33 2.27 2.19 2.1 2.04 2.0 1.97 1.91 1.87 1.82 1.8 1.77 1.74 1.71 1.68 1.62 1.556 1.484 1.43 Nhiệt độ khí nạp 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 Điện áp THA (V) 1.4 1.36 1.322 1.299 1.283 1.267 1.25 1.226 1.198 1.17 1.143 1.108 1.071 1.032 0.994 0.952 0.914 0.901 0.887 0.876 0.864 Bảng Bảng thông số liệu cảm biến nhiệt độ động theo thực nghiệm Luan van Nhiệt độ động 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Điện áp THW (V) 3.42 3.36 3.31 3.29 3.18 3.16 3.1 3.04 3.01 2.95 2.91 2.86 2.79 2.72 2.7 2.62 2.6 2.51 2.46 2.42 2.35 2.31 2.25 2.23 2.19 2.11 2.10 2.06 2.0 1.91 1.87 1.85 1.81 1.79 Nhiệt độ động 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 Điện aùp THW (V) 1.74 1.68 1.63 1.59 1.57 1.54 1.48 1.45 1.42 1.36 1.35 1.31 1.28 1.24 1.22 1.2 1.16 1.11 1.09 1.06 1.03 0.99 0.98 0.96 0.94 0.93 0.89 0.854 0.848 0.814 0.801 0.784 0.756 0.74 Luan van Nhieät độ động 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 Điện áp THW (V) 0.719 0.704 0.691 0.668 0.652 0.634 0.621 0.614 0.591 0.564 0.553 0.542 0.529 0.518 0.509 0.491 0.48 0.474 0.462 0.456 0.438 0.431 0.426 0.41 0.394 0.38 0.375 0.37 0.36 0.35 0.345 0.335 0.32 Luan van

Ngày đăng: 27/12/2023, 04:19

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan