Những cải tiến và thông số kỹ thuật của xe

Một phần của tài liệu Thuyết minh nghiên cứu và mô phỏng hệ thống đánh lửa xe toyota vios (Trang 43)

Với động cơ mới, thay đổi từ VVT-i (Van biến thiên thông minh trên xu páp nạp) lên Dual VVT-i (Van biến thiên thông minh trên cả xu páp nạp và xu páp xả) giúp xe mới giảm tiếng ồn hơn, tiết kiệm nhiên liệu, thân thiện với môi trường và vận hành mạnh mẽ hơn.

Ở các phiên bản innova mới ra mắt hay Altis, camry đều đã trang bị công nghệ Dual VVT-i, có thể nói đây là sự phổ cập công nghệ mới, hiện đại cho các dòng xe của Toyota.

Hình 3. 5. Động cơ thế hệ mới và cũ

3.2.2. Thông số kĩ thuật- Về động cơ - Về động cơ Thông số Vios E MT (03/07 Túi khí) Vios E CVT (03/07 Túi khí) Vios G CVT

Loại động cơ 2NR-FE (1.5L)

Số xy lanh 4

Bố trí xy lanh Thẳng hàng

Dung tích xy lanh 1.496

Loại nhiên liệu Xăng

Hệ thống nhiên liệu Phun xăng điện tử

Công suất tối đa (hp/rpm) 107/6.000 Mô men xoắn tối đa

(Nm@rpm) 140/4.200

Hệ thống truyền động Dẫn động cầu trước FWD

Hộp số Số sàn 5

Tiêu thụ nhiên liệu (L/100km ) thị Trong đô thị 7.74/7.2 7.53/7.1 7.1 Kết hợp 5.92/5.8 5.74/5.7 5.7

Tiêu chuẩn khí thải Euro 4

Bảng 3. 3. Bảng thông số động cơ - Về kích thước xe Thông số Vios E MT (03/07 Túi khí) Vios E CVT (03/07 Túi khí) Vios G CVT Kích thước tổng thể D x R x C (mm) 4.425 x 1.730 x 1.475 Kích thước tổng thể bên trong xe D x R x C (mm) 1.895 x 1.420 x 1.205

Chiều dài cơ

sở (mm) 2.550 Chiều rộng cơ sở (Trước/Sau) 1.475 / 1.460 Khoảng sáng gầm xe (mm) 133 Bán kính vòng 5.1

(m) Trọng lượng không tải (kg) 1.075 1.105 1.110 Trọng lượng toàn tải (kg) 1.550 Dung tích bình nhiên liệu (L) 42 Hệ thống treo trước/sau Độc lập/Dầm xoắn

Hệ thống lái Trợ lực tay lái điện

Vành xe Mâm đúc

Kích thước lốp 185/60R15

Lốp dự phòng Mâm đúc

Phanh

trước/sau Đĩa thông gió/Đĩa đặc

Bảng 3. 4. Bảng thông số kích thước xe - Về ngoại thất

Phần ngoại thất của xe Toyota Vios thế hệ mới cũng không có sự thay đổi nhiều so với thế hệ trước. Phiên bản cao cấp nhất vẫn được sở hữu một số trang bị vượt trội hơn các bản còn lại như đèn chiếu sáng ban ngày, có chức năng tự động bật, tắt, chế độ đèn chờ dẫn đường, đèn sau dạng LED hiện đại. Ở bản E số sàn được bổ sung thêm đèn sương mù trước và nâng cấp gương chiếu hậu có chức năng gập điện.

khoang nội thất. Cụ thể, các phiên bản Vios E MT và E CVT (3 và 7 túi khí) đều được nâng cấp hệ thống giải trí lên sử dụng đầu DVD với màn hình cảm ứng kích thước 7 inch, hỗ trợ kết nối với Apple Carplay và Android Auto và hệ thống ghế ngồi bọc da. Trong khi đó, bản cao cấp nhất được sử dụng màn hình hiển thị đa thông tin TFT đơn sắc, bổ sung chức năng kết nối Apple Carplay và Android Auto.

- Về công nghệ an toàn chủ động và bị động

Về hệ thống an toàn trên xe, bao gồm ABS, BA, EBD, VSC, TRC, HAC cả 3 bản của Toyota Vios 2020 đều được bổ sung thêm những tính năng hiện đại mới, điển hình như camera lùi. Riêng bản cao cấp nhất có thêm trang bị cảm biến góc trước sau và hệ thống kiểm soát hành trình Cruise Control.

3.3. Xây dựng mô hình 3.3.1. Khối điều khiển 3.3.1. Khối điều khiển -Vi điều khiển Atmega64

Trong điều khiển tự động nói chung có thể sử dụng nhiều loại vi điều khiển khác nhau như: Atmega8, Atmega16, Atmega32, Atmega64, Atmega128, Atmega1280,MSP430C1101, MSP430C1111, Pic16f1516, Pic16f1517... Mỗi loại vi điều khiển có ưu nhược điểm riêng, tùy theo ứng dụng điều khiển mà lựa chọn cho phù hợp.

Trong nghiên cứu này vi điều khiển được chọn là Atmega16, đây là dòng vi điều khiển 8 bit, các thông số chính của vi điều khiển Atmega16 được thể hiện trong Bảng bên dưới

Đây là loại vi điều điều khiển có tần số làm việc tối đa 16 MHz, có tích hợp các cổng ADC dùng để đọc tín hiệu từ cảm biến nhiệt độ LM35 gửi về, đồng thời vi điều khiển này có sẵn tại thị trường Việt Nam, giá thành phù hợp cho bước tiếp theo là nghiên cứu thiết kế và chế tạo bộ điều khiển quạt làm mát động cơ ô tô dùng ECU với chi phí nhỏ mà vẫn đảm báo tính chính xác trong

Thông số Giá trị Điện áp làm việc 4,5 ÷ 5,5

Tần số làm việc 0 ÷ 16 MHz

Số chân loại PDIP 64

Bộ nhớ chương trình

flash 64 KBytes

Bộ nhớ EEPROM 2 KBytes

Bộ nhớ SRAM 4320 Byte

Bảng 3. 5. Các thông số chính của vi điều khiển Atmega64

- Transistor

Để điều khiển cấp dòng cho động cơ điện một chiều có thể dùng nhiều loại Transistor công suất khác nhau như: 2N6547, 2N3390, 2N6609, 2N1711, 2N1893, 2N2219, 2SA1085, 2SA715 ... Tùy theo yêu cầu về công suất và chi phí... mà lựa chọn chophù hợp. Trong nghiên cứu này lựa chọn Transistor T1 là loại 2N6547 [10] có công suất, điện áp và chi phí phù hợp đồng thời có sẵn tại thị trường Việt Nam. Transistor T1 được dùng để điều khiển cấp dòng cho động cơ điện dẫn động quạt làm mát. Các thông số cơ bản của transistor 2N3390 được thể hiện trong bảng dưới đây:

Thông số Giá trị Công suất lớn nhất 175W Dòng điện lớn nhất cực C 30A Dòng điện lớn nhất cực B 20A

Dải nhiệt độ làm việc -65÷ 200oC

LCD là một màn hình nhiều điểm ảnh, có thể coi là một Led ma trận dạng lớn, tuy nhiên chúng ta không cần đi vào điều khiển từng Pixel hay là từng chấm nhỏ như trong Phần 1 mà chúng ta sẽ điều khiển qua lệnh, con trỏ… để hiển thị thông tin một cách dễ dàng hơn. Có nhiều loại LCD, trong bài này chúng ta dùng loại đơn giản 16×2. Trước tiên chúng ta tìm hiểu về cầu tạo của nó.

Thông số Giá trị

Kích thước 16x2

Số chân điều khiển 3

Số chân bus dữ liệu 8

Chân VSS Nguồn 0V

Chân VDD Nguồn 5V

Chân VEE Độ tương phản

Bảng 3. 7. Các thông số chính màn hình hiển thị LCD 16x2

3.3.3. Khối giả lập cảm biến trục cam và trục khuỷu

Đối với động cơ 4 kỳ thì hai vòng quay trục khuỷu là một chu kỳ, xupap nạp và xả đóng mở 01 lần. Vậy cần thiết kế trục cam quay một vòng và trục khuỷu quay hai vòng ( tỉ số truyền = ½).

INT1 của Atmega64

3.4. Thuật toán và chương trình điều khiển

Thuật toán điều khiển lập trình cho động cơ được nhà chế tạo viết và cài đặt sẵn trong CPU. Tùy thuộc vào chế độ làm việc theo thời gian hay tính năng động cơ mà ECU tính toán dựa trên lập trình có sẵn đó để đưa ra những tín hiệu điều khiển sao cho động cơ hoạt động tối ưu nhất.

Chương trình điều khiển được thực hiện trên phần mềm CodeVisionAVR được viết bằng ngôn ngữ C++, với hàm điều khiển chính sau:

- Hàm điều khiển đánh lửa:

This program was produced by the CodeWizardAVR V2.05.0 Professional Chip type : ATmega64

Program type : Application

AVR Core Clock frequency: 16.000000 MHz Memory model : Small

#include <alcd.h> #include <stdio.h> #include <delay.h> unsigned int xungTK; unsigned int xungTC; unsigned char Chuoi[16];

// External Interrupt 0 service routine

interrupt [EXT_INT0] void ext_int0_isr(void) {

// Place your code here xungTK=xungTK+1; if (xungTK==96) { xungTK=0; } }

// External Interrupt 1 service routine

interrupt [EXT_INT1] void ext_int1_isr(void) {

// Place your code here xungTC = xungTC+1; if (xungTC==48) { xungTC=0; } }

// Declare your global variables here void HienThiXungTK(void)

lcd_gotoxy(0,0); lcd_puts(Chuoi); } void HienThiXungTC(void) { sprintf(Chuoi,"T-Cam :%2d XUNG",xungTC); lcd_gotoxy(0,1); lcd_puts(Chuoi); } void DKdanhlua1(void) { if (xungTK==0) { PORTF=0b00000001; DDRF =0b00000001; delay_ms(5); } else { PORTF=0b00000000; DDRF =0b00000000; } } void DKdanhlua3(void) { if (xungTK==24) { PORTF=0b00000100; DDRF =0b00000100;

} else { PORTF=0b00000000; DDRF =0b00000000; } } void DKdanhlua4(void) { if (xungTK==48) { PORTF=0b00001000; DDRF =0b00001000; delay_ms(5); } else { PORTF=0b00000000; DDRF =0b00000000; void DKdanhlua2(void) { if (xungTK==72) { PORTF=0b00000010; DDRF =0b00000010; delay_ms(5); } else {

DDRF =0b00000000; void main(void)

{

// Declare your local variables here // Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTA=0x00; DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTB=0x00; DDRB=0x00;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTC=0x00; DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

State0=T

PORTD=0x00; DDRD=0x00;

// Port E initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTE=0x00; DDRE=0x00;

// Port F initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTF=0x00; DDRF=0x00;

// Port G initialization

// Func4=In Func3=In Func2=In Func1=In Func0=In // State4=T State3=T State2=T State1=T State0=T PORTG=0x00;

DDRG=0x00;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected ASSR=0x00;

OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // OC1C output: Discon. // Noise Canceler: Off

// Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; OCR1CH=0x00; OCR1CL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock

// Mode: Normal top=0xFF // OC2 output: Disconnected TCCR2=0x00;

TCNT2=0x00; OCR2=0x00;

// Timer/Counter 3 initialization // Clock source: System Clock // Clock value: Timer3 Stopped // Mode: Normal top=0xFFFF // OC3A output: Discon. // OC3B output: Discon. // OC3C output: Discon. // Noise Canceler: Off

// Input Capture on Falling Edge // Timer3 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR3A=0x00; TCCR3B=0x00; TCNT3H=0x00; TCNT3L=0x00; ICR3H=0x00; ICR3L=0x00; OCR3AH=0x00; OCR3AL=0x00; OCR3BH=0x00; OCR3BL=0x00;

OCR3CL=0x00;

// External Interrupt(s) initialization // INT0: On

// INT0 Mode: Rising Edge // INT1: On

// INT1 Mode: Rising Edge // INT2: Off // INT3: Off // INT4: Off // INT5: Off // INT6: Off // INT7: Off EICRA=0x0F; EICRB=0x00; EIMSK=0x03; EIFR=0x03;

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; ETIMSK=0x00; // USART0 initialization // USART0 disabled UCSR0B=0x00; // USART1 initialization // USART1 disabled UCSR1B=0x00;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

// ADC initialization // ADC disabled ADCSRA=0x00; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; // Alphanumeric LCD initialization // Connections specified in the

// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu: // RS - PORTE Bit 0 // RD - PORTE Bit 1 // EN - PORTE Bit 2 // D4 - PORTE Bit 4 // D5 - PORTE Bit 5 // D6 - PORTE Bit 6 // D7 - PORTE Bit 7 // Characters/line: 16 lcd_init(16);

// Global enable interrupts #asm("sei")

while (1) {

// Place your code here HienThiXungTK (); HienThiXungTC(); DKdanhlua1();

DKdanhlua4(); DKdanhlua2(); }

}

Chương trình này được biên dịch và nạp vào ECU để điều khiển thời điểm đánh lửa cho động cơ.

3.5. Hiệu chỉnh mô hình

Về hiệu chỉnh mô hình, đầu tiên chúng ta có thể hiệu chỉnh phần chương trình điều khiển, thông số đầu vào, các biến, hàm ở trong con vi điều khiển

Atemega64 bằng cách :

Nháy đúp chụp vào Atemega64, sau đó chọn Program File để hiệu chỉnh phần chương trình điều khiển.

hàm trong đó :

Hình 3. 11. Hiệu chỉnh trong chương trình điều khiển

Ngoài ra có thể điều chỉnh tốc độ trục khuỷu trục cam bằng cách điều chỉnh biến trở RV1.

3.6. Kết quả mô phỏng và kiểm tra đánh giá

hành chạy và kiểm tra. - Nhận xét :

Vi điều khiển đã tính toán được tín hiệu vị trí từ cảm biến trcuj cam và trục khuỷu gửi về các thông số vị trí trục khuỷu và trục cam (được thể hiện bằng số xung ) được hiển thị trên màn LCD. Động cơ đánh lửa theo thứ tự 1-3-4-2 (đèn LED sáng theo thứ tự D1 – D3 – D4 – D2).

- Đánh giá độ chính xác của mô hình :

Mô hình sử dụng vi điều khiển Atemega64 với bộ nhớ cao, bộ vi xử lí được lập trình tính toán nhanh chóng chính xác, sau khi nạp chương trình điều khiển vào đã cho ra kết quả khá chính xác. Khi thông số vị trí trục khuỷu, trục cam được hiển thị trên LCD tương ứng với 24 và 12 xung thì LED D1 sáng, tiếp tục 48 và 24 xung thì LED D3, 72 và 36 xung thì LED D4 sáng, 96 và 48 xung thì LED D2 sáng, đúng kết thúc 1 chu kì 12 xung ở trục cam là 1 kì – 180 °.

So sánh kết quả mô phỏng với thực tế cho thấy độ chính xác khá cao, thứ tự nổ của động cơ cũng là 1-3-4-2.

KẾT LUẬN CHƯƠNG 3

Chương 3 đã xây dựng được mô phỏng mạch đánh lửa trên phần mềm Proteus:

- Giới thiệu về Proteus, các cách cài đặt và sử dụng

- Nêu được những cải tiến của động cơ hiện tại so với thế hệ trước, các thông số kĩ thuật thuật của động cơ và xe Toyota Vios 2020

- Xây dựng được thuật toán, mô hình mô phỏng và chương trình điều khiển hệ thống đánh lửa

giá

CHƯƠNG 4. KIỂM TRA, CHUẨN ĐOÁN, SỬA CHỬA HỆ THỐNG ĐÁNH LỬA

4.1. Quy trình kiểm tra của hệ thống đánh lửa4.1.1. Quy trình kiểm tra 4.1.1. Quy trình kiểm tra

-Bước 1: Kiểm tra rằng giắc nối phía dây điện của cuộn đánh lửa đã được cắm chắc chắn.

Nếu đã cắm chắc chắn thì đi đến bước 2. Nếu giắc nối bị lỏng thì lắp lại cho chắc chắn.

-Bước 2: Tiến hành thử đánh lửa cho mỗi cuộn đánh lửa.

Nếu không có lửa thì thay thế cuộn đánh lửa đó bằng chiếc còn tốt và tiến hành thử lại 1 lần nữa.

Nếu vẫn không có lửa thì đi tới bước 3. -Bước 3: Kiểm tra bugi.

Nếu bugi hỏng thì thay thế.

Nếu bugi còn tốt thì đi đến bước 4.

-Bước 4: Kiểm tra sự cấp nguồn đến cuộn đánh lửa có IC đánh lửa.

Bật khóa điện ON. Kiểm tra rằng có điện áp ắc quy tại cực dương (+) của cuộn đánh lửa. Nếu không có điện áp thì kiểm tra dây điện giữa khóa điện và cuộn dây đánh lửa có IC đánh lửa.

Nếu có điện dương ắc quy thì đi đến bước 5.

-Bước 5: Kiểm tra dây điện và giắc nối cuộn đánh lửa

4.1.2. Kiểm tra hệ thống đánh lửa trực tiếp trên xe

+ Mục đích: để kiểm tra xem động cơ có đánh lửa không.

Một phần của tài liệu Thuyết minh nghiên cứu và mô phỏng hệ thống đánh lửa xe toyota vios (Trang 43)