Luận án Nâng cao tính năng kinh tế - kỹ thuật và giảm mức độ phát thải ô nhiễm của động cơ xe gắn máy chạy bằng LPG và Ethanol
1. Tính cấp thiết
Thế giới ngày càng phát triển, đi kèm với với nó là nhu cầu vận chuyển, đi
lại ngày càng cao, làm gia tăng nhanh chóng số lượng, chủng loại phương tiện giao
thông sử dụng nhiên liệu hóa thạch, đặc biệt là phương tiện cá nhân. Điều này gây
tác động mạnh mẽ đến vấn đề an ninh năng lượng và phát thải chất khí gây hiệu ứng
nhà kính gây biến đổi khí hậu. Để giải quyết hai vấn đề trên, các nghiên cứu ngày
nay tập trung theo hướng sử dụng năng lượng điện và ứng dụng năng lượng tái tạo
thay thế một phần hay hoàn toàn các loại nhiên liệu hóa thạch sử dụng trên phương
tiện giao thông.
Khác với các nước phát triển, xe gắn máy là phương tiện giao thông cá nhân
chính ở nước ta với mật độ trung bình cứ hai người dân có một xe gắn máy, thuộc
vào nhóm những nước có mật độ xe gắn máy cao nhất thế giới. Tình hình này vẫn
còn kéo dài trong vài thập kỷ tới. Số lượng xe máy đã tăng từ 1,2 triệu chiếc năm
1990 lên hơn 58 triệu chiếc năm 2018 [79]. Hà Nội và Thành phố Hồ Chí Minh có
số lượng lớn nhất, với gần 6 triệu chiếc và 8,5 triệu chiếc. Khí thải từ các phương
tiện này làm suy giảm nghiêm trọng chất lượng không khí, ảnh hưởng tiêu cực đến
môi trường sống và làm tăng nồng độ CO2 trong bầu khí quyển. Trong khi nhiều
công nghệ mới đã được áp dung trên ô tô để giảm phát thải CO2 và các chất ô nhiễm
thì hầu như xe gắn máy chưa được cải tiến gì nhiều để nâng cao hiệu quả quá trình
cháy [1].
Vấn đề ô nhiễm khí thải từ các phương tiện tham gia giao thông đã được
Chính phủ và các cơ quan chức năng quan tâm từ rất lâu. Năm 1995, Việt Nam đã
ban hành quy định kiểm soát khí thải ô tô theo tiêu chuẩn Euro 2. Kể từ tháng 01
năm 2017, các loại xe ô tô sản xuất, lắp ráp và nhập khẩu mới phải áp dụng tiêu
chuẩn khí thải mức Euro 4 còn các loại xe mô tô hai bánh sản xuất, lắp ráp và nhập
khẩu mới phải áp dụng tiêu chuẩn khí thải mức Euro 3 [85].
Với tính đặc thù về phương tiện giao thông nêu trên, việc áp dụng các công
nghệ để nâng cao hiệu quả sử dụng nhiên liệu và giảm phát thải ô nhiễm của xe gắn2
máy là rất cần thiết để tiết kiệm nhiên liệu hóa thạch, giảm phát thải CO2 và bảo vệ
môi trường ở nước ta. Một trong những giải pháp có tính khả thi cao là sử dụng
nhiên liệu thay thế- tái tạo thay cho xăng.
Trong các loại nhiên liệu dùng để thay thế xăng thì CNG và LPG có nhiều
lợi thế. CNG là nhiên liệu sạch, có mức phát thải HC và CO trung bình thấp hơn
tương ứng 92% và 78% so với nhiên liệu xăng. Tuy nhiên, bình chứa CNG cồng
kềnh và lưu trữ ở áp suất cao là những rào cản chính cho việc ứng dụng rộng rãi loại
nhiên liệu thay thế này trên xe máy. LPG với áp suất hóa lỏng thấp có thể khắc phục
được nhược điểm trên của CNG. So với xăng, xe chạy bằng LPG có lượng phát thải
NOx và CO thấp hơn tương ứng 20% và 60%. Theo các công trình nghiên cứu của
nhóm nghiên cứu động cơ nhiên liệu khí (GATEC)-Đại học Đà Nẵng thì việc áp
dụng LPG là một giải pháp thích hợp để giảm phát thải ô nhiễm của xe gắn máy
[86].
Mặc dù được xem là nhiên liệu “sạch” nhưng CNG cũng như LPG đều là
những nhiên liệu hóa thạch nên việc sử dụng chúng làm tăng nồng độ CO2 trong
bầu khí quyển. Vì vậy việc sử dụng kết hợp các loại nhiên liệu này với các loại
nhiên liệu tái tạo khác sẽ mang lại lợi ích thiết thực trong công tác bảo vệ môi
trường. Trong điều kiện thực tế về cung ứng nhiên liệu hiện nay cũng như tính đặc
thù về kết cấu xe gắn máy thì việc sử dụng kết hợp giữa LPG và ethanol là giải pháp
phù hợp.
Tóm tắt nội dung tài liệu: Luận án Nâng cao tính năng kinh tế - kỹ thuật và giảm mức độ phát thải ô nhiễm của động cơ xe gắn máy chạy bằng LPG và Ethanol
I LỜI CAM ĐOAN Tôi xin cam đoan đây là đề tài nghiên cứu của riêng tôi. Các số liệu kết quả nêu trong luận án là trung thực và chưa từng được ai công bố trong các công trình nào khác! Đà Nẵng, tháng 11 năm 2021 Nghiên cứu sinh Bùi Văn Tấn II MỤC LỤC LỜI CAM ĐOAN ...................................................................................................... I MỤC LỤC ................................................................................................................. II DANH MỤC CÁC HÌNH ...................................................................................... VI DANH MỤC BẢNG ............................................................................................ XIII DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ....................................... XIV MỞ ĐẦU .................................................................................................................... 1 1. Tính cấp thiết ......................................................................................................... 1 2. Mục tiêu nghiên cứu.............................................................................................. 3 3. Đối tượng và phạm vi nghiên cứu ........................................................................ 4 4. Phương pháp nghiên cứu...................................................................................... 5 5. Cấu trúc nội dung luận án .................................................................................... 5 6. Ý nghĩa khoa học và thực tiễn của đề tài nghiên cứu ........................................ 5 7. Các điểm mới chủ yếu của luận án ...................................................................... 6 CHƯƠNG 1: TỔNG QUAN VỀ TÌNH HÌNH NGHIÊN CỨU ỨNG DỤNG NHIÊN LIỆU LPG-ETHANOL CHO ĐỘNG CƠ ĐỐT TRONG ....................... 7 1.1. Nhiên liệu sạch ................................................................................................ 7 1.2. Tình hình sử dụng nhiên liệu sinh học ......................................................... 8 1.2.1. Tình hình sử dụng nhiên liệu sinh học trên thế giới .................................. 8 1.2.2. Tình hình sử dụng nhiên liệu sinh học ở Việt Nam.................................... 8 1.3. Tình hình nghiên cứu sử dụng LPG trên động cơ đốt trong .................... 10 1.3.1. Những đặc tính cơ bản của nhiên liệu LPG ............................................ 10 1.3.2. Nghiên cứu sử dụng LPG trên động cơ ô tô ............................................ 10 1.3.3. Nghiên cứu sử dụng LPG trên động cơ xe gắn máy ................................ 12 1.4. Tình hình nghiên cứu ứng dụng ethanol trên động cơ đốt trong ............ 14 1.4.1. Những đặc tính cơ bản của nhiên liệu ethanol ........................................ 14 1.4.2. Nghiên cứu ứng dụng ethanol trên động cơ đốt trong ............................ 16 1.5. Tình hình nghiên cứu ứng dụng kết hợp nhiên liệu LPG-ethanol trên động cơ đốt trong ................................................................................................. 20 1.6. Kết luận chương 1 ........................................................................................ 24 III CHƯƠNG 2: NGHIÊN CỨU LÝ THUYẾT QUÁ TRÌNH CHÁY ................... 26 2.1. Hệ phương trình chảy rối ............................................................................ 26 2.2. Lý thuyết quá trình cháy nhiên liệu khí ..................................................... 27 2.2.1. Lý thuyết cháy của hỗn hợp không hòa trộn trước .................................. 28 2.2.2. Lý thuyết quá trình cháy hỗn hợp hòa trộn trước ................................... 36 2.2.3. Lý thuyết quá trình cháy hòa trộn trước cục bộ ...................................... 42 2.3. Kết luận chương 2 ........................................................................................ 44 CHƯƠNG 3: MÔ PHỎNG QUÁ TRÌNH NẠP, CHÁY VÀ PHÁT THẢI Ô NHIỄM CỦA ĐỘNG CƠ XE GẮN MÁY CHẠY BẰNG LPG-ETHANOL .... 46 3.1. Mục tiêu, đối tượng và phương pháp mô phỏng ....................................... 46 3.1.1. Mục tiêu, đối tượng .................................................................................. 46 3.1.2. Phương pháp mô phỏng ........................................................................... 47 3.2. Đặc điểm quá trình cung cấp nhiên liệu LPG-ethanol ............................. 50 3.3. Mô phỏng quá trình nạp nhiên liệu LPG-ethanol ..................................... 50 3.3.1. Mô hình hình học của động cơ và điều kiện biên mô phỏng ................... 50 3.3.2. Ảnh hưởng đặc tính lý hóa của ethanol, LPG đến quá trình phun .......... 53 3.3.3. Quá trình hình thành hỗn hợp khi phun nhiên liệu LPG-ethanol ........... 54 3.3.4. Ảnh hưởng của nhiệt độ khí nạp đến việc hình thành hỗn hợp ............... 62 3.3.5. Điều chỉnh thời gian phun ethanol-LPG theo áp suất trên đường nạp ... 67 3.4. Mô phỏng quá trình cháy hỗn hợp ............................................................. 72 3.4.1. Ảnh hưởng của hệ số tương đương .......................................................... 73 3.4.2. Ảnh hưởng của góc đánh lửa sớm ........................................................... 75 3.4.3. Ảnh hưởng của tốc độ động cơ ................................................................ 76 3.4.4. Ảnh hưởng của hàm lượng ethanol ......................................................... 80 3.5. Mô phỏng phát thải ô nhiễm khi sử dụng LPG-ethanol ........................... 81 3.5.1. Cơ chế hình thành các chất ô nhiễm ....................................................... 81 3.5.2. Đặc điểm phát thải các chất ô nhiễm ...................................................... 83 3.6. Kết luận chương 3 ........................................................................................ 94 CHƯƠNG 4: NGHIÊN CỨU THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ MÔ PHỎNG ............................................................................................................ 96 IV 4.1. Mục đích và nội dung nghiên cứu thực nghiệm ........................................ 96 4.2. Trang thiết bị nghiên cứu ............................................................................ 97 4.2.1. Các thiết bị của bộ tạo tải động cơ .......................................................... 97 4.2.2. Thiết bị phân tích khí xả động cơ MGT5 ............................................... 101 4.3. Chuyển đổi xe gắn máy chạy xăng sang chạy bằng LPG-ethanol ......... 103 4.3.1. Hệ thống phun xăng PGM-FI của động cơ J52C xe Honda RSX ......... 103 4.3.2. Thiết kế mạch điều khiển phun nhiên liệu xăng-LPG-ethanol .............. 105 4.4. Thử nghiệm xe gắn máy chạy bằng nhiên liệu LPG-ethanol trên đường thực ..................................................................................................................... 111 4.4.1. Chuẩn bị nhiên liệu ................................................................................ 111 4.4.2. Điều kiện thử nghiệm ............................................................................. 111 4.4.3. Kết quả thử nghiệm ................................................................................ 112 4.5. Thử nghiệm xe gắn máy chạy bằng nhiên liệu LPG-ethanol trên bộ tạo tải động cơ .......................................................................................................... 113 4.5.1. Sơ đồ bố trí thí nghiệm .......................................................................... 113 4.5.2. Lắp đặt động cơ xe gắn máy lên bộ tạo tải động cơ .............................. 114 4.5.3. Quy trình thử nghiệm xe gắn máy trên bộ tạo tải động cơ .................... 117 4.5.4. Các biểu thức quan hệ giữa các đại lượng đo khi thực nghiệm ............ 118 4.6. Đánh giá kết quả thử nghiệm và so sánh kết quả mô phỏng .................. 120 4.6.1. So sánh ảnh hưởng của tốc độ động cơ đến tính năng động cơ cho bởi mô phỏng và thực nghiệm ................................................................................ 120 4.6.2. So sánh ảnh hưởng hàm lượng ethanol đến tính năng động cơ cho bởi mô phỏng và thực nghiệm ................................................................................ 122 4.7. Kết luận chương 4 ...................................................................................... 126 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ........................................................... 127 CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ .................................................................. 131 TÀI LIỆU THAM KHẢO .................................................................................... 133 PHỤ LỤC ............................................................................................................... 142 V PHỤ LỤC 1. MÔ PHỎNG QUÁ TRÌNH NẠP VÀ QUÁ TRÌNH CHÁY CỦA ĐỘNG CƠ XE GẮN MÁY CHẠY BẰNG XĂNG-ETHANOL-LPG BẰNG PHẦN MỀM ANSYS FLUENT ........................................................................... 142 PHỤ LỤC 2. CODE LẬP TRÌNH ARDUINO ĐIỀU KHIỂN HỆ THỐNG PHUN XĂNG - LPG VÀ XĂNG - ETHANOL .................................................. 158 VI DANH MỤC CÁC HÌNH Hình 1.1: Tổng lượng nhiên liệu lỏng thế giới sản xuất và tiêu thụ giai đoạn 2016÷2022 (triệu thùng/ ngày) [81] ............................................................................ 7 Hình 1.2: Sản lượng ethanol (triệu gallon) top các nước hàng đầu thế giới [88] ....... 8 Hình 1.3: Lắp đặt bộ chế hòa khí .............................................................................. 12 Hình 1.4: "Greenbus": xe buýt cỡ nhỏ chạy bằng LPG ............................................ 12 Hình 1.5: Ðộng cơ xe gắn máy 110cc sau khi lắp bộ chế hòa khí hai nhiên liệu LPG/xăng .................................................................................................................. 13 Hình 1.6: Xe gắn máy kiểu WAVE 110cc sau khi lắp xong hệ thống hai nhiên liệu LPG/xăng .................................................................................................................. 13 Hình 1.7: Cấu trúc phân tử của ethanol và liên kết phân tử ...................................... 14 Hình 1.8: Bố trí hệ thống thử nghiệm cung cấp LPG-ethanol cho động cơ [73] ...... 20 Hình 1.9: Ảnh hưởng của tỷ lệ ethanol cung cấp đến phát thải CO ......................... 21 Hình 1.10: Ảnh hưởng của tỷ lệ ethanol cung cấp đến phát thải CO2 ...................... 21 Hình 1.11: Ảnh hưởng của tỷ lệ ethanol cung cấp đến nồng độ O2 trong khí thải ... 22 Hình 1.12: Ảnh hưởng của tỷ lệ ethanol cung cấp đến phát thải THC ..................... 22 Hình 1.13: Ảnh hưởng của tỷ lệ ethanol cung cấp đến phát thải NOx ...................... 22 Hình 1.14: Ảnh hưởng của tỷ lệ ethanol cung cấp đến nhiệt độ khí thải .................. 22 Hình 1.15: Bố trí thực nghi ... g 300 bước tính, chương trình dừng. - Nếu quá 300 bước tính mà chương trình chưa hội tụ thì ta bấm vào Calculate để tính tiếp. PL-24: Hiển thị các giá trị trong Run Calculation 152 PL-25: Chạy chương trình tính toán Bước 5. Xuất kết quả PL-26: Chọn kết quả hiện thị pressure trong Graphics and Animations 4. Tính toán mô phỏng quá trình cháy với phần mềm FLUENT 153 Bước 1. Xác định mô hình lưới động Define Dynamic Mesh Parameters Bấm chuột trái vào Dynamic Mesh. Chọn Models: - Dynamic Mesh (PL-27) - In-Cylinder (PL-31) Chọn Mesh Methods: - Smoothing (PL-28) - Layering (PL-29) - Remeshing (PL-30) PL-27: Chọn mô hình lưới động Dynamic Mesh PL-28: Thiết lập mô hình lưới động cho thẻ Smoothing PL-29: Thiết lập mô hình lưới động cho thẻ Layering 154 PL-30: Thiết lập mô hình lưới động cho thẻ Remeshing PL-31: Thiết lập mô hình lưới động cho thẻ In-Cylinder Bước 7. Xác định khu vực lưới biến dạng và biên di động PL-32: Xác lập các thông số cho khu vực xi lanh 155 PL-33: Xác lập lưới biến dạng cho xi lanh PL-34: Hiển thị lưới của không gian tính toán Bước 8. Kích hoạt phương trình năng lượng 156 PL-35: Chọn phương trình năng lượng Bước 9. Chọn mô hình độ nhớt rối Bước 10. Chọn thông sô liên quan đến vị trí đánh lửa Chọn menu Define -> Model ->Species ->Spark Ignition, trong cửa sổ Spark Ignition Model chọn Fixed Spark Size. Tiếp tục thiết lập các thông số trong Spark Ignition Model như sau: năng lượng đánh lửa trong trường hợp này là 143J, vị trí đánh lửa ở tọa độ (0,90,0), bắt đầu đánh lửa tại (20 độ trước điểm chết trên). PL-36: Chọn các thông số đánh lửa 157 Bước 11. Xác định mặt phẳng để biểu diễn kết quả PL-37: Lập mặt phẳng biểu diễn kết quả pressure PL-38: Lập mặt phẳng biểu diễn kết quả nhiệt độ PL-39: Lập mặt phẳng biểu diễn kết quả nồng độ C3H8 158 PHỤ LỤC 2. CODE LẬP TRÌNH ARDUINO ĐIỀU KHIỂN HỆ THỐNG PHUN XĂNG - LPG VÀ XĂNG - ETHANOL #include #include #include #include #include #include "maths.h" // #define pinLED 13 #define pinINJECTION1 9 #define pinINJECTION2 10 #define pinINJECTION3 11 #define pinTRIGGER 2 #define pinBUTTON 3 #define pinA0 A0 // #define SIZE_BYTE 8 #define SIZE_INT 16 // //Handy bitsetting macros #define BIT_SET(a,b) ((a) |= (1<<(b))) #define BIT_CLEAR(a,b) ((a) &= ~(1<<(b))) #define BIT_CHECK(var,pos) !!((var) & (1<<(pos))) // LiquidCrystal_I2C lcd(0x27, 16, 2); // Set the LCD address to 0x27 for a 16 chars and 2 line display // Average aveRevTime(5); Average aveA0(10); // volatile unsigned long upTrigTime; volatile unsigned long fallTrigTime; volatile unsigned long lastFallTrigTime; volatile unsigned long curInjTime; volatile unsigned long curRevTime; volatile unsigned long inj1Time; volatile unsigned long inj2Time; volatile unsigned long inj3Time; volatile bool bRUN = false; volatile byte runMode = 0; // 0: xăng-Ethanol // 1: xăng-LPG // unsigned int valueA0; 159 unsigned int rpm; byte ratio; // unsigned long loop1000msCount = 0; unsigned long loop1000msCounts = 0; unsigned long loopTime = 0; unsigned long next1000ms = 0; unsigned long next500ms = 0; unsigned long next250ms = 0; unsigned long next100ms = 0; unsigned long next50ms = 0; // String inputString = ""; // a string to hold incoming data // boolean bStringComplete = false; // whether the string is complete boolean bInjection = false; boolean bInjectionSchedule = false; bool initialisationComplete = false; //Tracks whether the setup() functino has run completely // void setup() { lcd.begin(); lcd.backlight(); // initialiseADC(); // //lcdWrite(0,0,"A:"); lcdWrite(0,1,"A:"); lcdWrite(8,0,"|B:"); lcdWrite(8,1,"|C:"); // pinMode(pinBUTTON,INPUT_PULLUP); pinMode(pinLED, OUTPUT); pinMode(pinINJECTION1,OUTPUT); pinMode(pinINJECTION2,OUTPUT); pinMode(pinINJECTION3,OUTPUT); //---------------------------------------------- Set PWM frequency for D3 & D11 ----------------- ------------- //TCCR2B = TCCR2B & B11111000 | B00000001; // set timer 2 divisor to 1 for PWM frequency of 31372.55 Hz TCCR2B = TCCR2B & B11111000 | B00000010; // set timer 2 divisor to 8 for PWM frequency of 3921.16 Hz // attachInterrupt(digitalPinToInterrupt(pinTRIGGER), trig_FALL_ISR, FALLING); //2,3 attachInterrupt(digitalPinToInterrupt(pinBUTTON), button_FALL_ISR, FALLING); //2,3 // 160 Timer1.initialize(); Timer1.attachInterrupt(injection2Stop); // Serial.begin(115200); // runMode = EEPROM.read(0); // initialisationComplete = true; } void initialiseADC() { //This sets the ADC (Analog to Digitial Converter) to run at 1Mhz, greatly reducing analog read times (MAP/TPS) when using the standard analogRead() function //1Mhz is the fastest speed permitted by the CPU without affecting accuracy //Please see chapter 11 of 'Practical Arduino' ( &q&f=false) for more detail BIT_SET(ADCSRA,ADPS2); BIT_CLEAR(ADCSRA,ADPS1); BIT_CLEAR(ADCSRA,ADPS0); // } void button_FALL_ISR() { if (runMode < 1) { runMode++; Serial.println(runMode); } else { runMode = 0; } EEPROM.write(0,runMode); } void trig_FALL_ISR(){ fallTrigTime = micros(); if (curInjTime > 750) { curRevTime = fallTrigTime - lastFallTrigTime; lastFallTrigTime = fallTrigTime; } //Serial.println(upTrigTime); attachInterrupt(digitalPinToInterrupt(pinTRIGGER), trig_UP_ISR, RISING); //2,3 } void trig_UP_ISR(){ upTrigTime = micros(); 161 unsigned long temp = upTrigTime - fallTrigTime; curInjTime = temp; //Serial.println(upTrigTime); attachInterrupt(digitalPinToInterrupt(pinTRIGGER), trig_FALL_ISR, FALLING); //2,3 switch (runMode) { case 0: inj3Time = 0; inj2Time = percentage(ratio,curInjTime); inj1Time = curInjTime - inj2Time; if (ratio < 100) { injection1Start(); } else { injection2Start(); } break; case 1: inj2Time = 0; inj3Time = percentage(ratio,(curInjTime - 350)); inj1Time = curInjTime - inj3Time; //inj3Time = (1.35*inj3Time); if (ratio < 100) { injection1Start(); } else { injection3Start(); } break; } } void injection1Start() { digitalWrite(pinINJECTION1,HIGH); Timer1.setPeriod(inj1Time); Timer1.attachInterrupt(injection1Stop); } void injection1Stop() { digitalWrite(pinINJECTION1,LOW); Timer1.stop(); if (ratio > 0) { switch (runMode) { case 0: injection2Start(); break; case 1: injection3Start(); 162 break; } } } void injection2Start() { digitalWrite(pinINJECTION2,HIGH); Timer1.setPeriod(inj2Time); Timer1.attachInterrupt(injection2Stop); } void injection2Stop() { digitalWrite(pinINJECTION2,LOW); Timer1.stop(); } void injection3Start() { analogWrite(pinINJECTION3,255); Timer1.setPeriod(1650); Timer1.attachInterrupt(injection3PWM); } void injection3PWM() { analogWrite(pinINJECTION3,190); Timer1.setPeriod(inj3Time); Timer1.attachInterrupt(injection3Stop); } void injection3Stop() { analogWrite(pinINJECTION3,0); Timer1.stop(); } void readSensor() { readA0(); } void readA0() { valueA0 = analogRead(pinA0); aveA0.push(valueA0); ratio = map(aveA0.mean(),0,1023,0,100); } void loop50ms() { if (loopTime>=next50ms) { next50ms=loopTime+5e4; } 163 } void loop100ms() { if (loopTime>=next100ms) { next100ms=loopTime+1e5; if (!bRUN) {readSensor();} } } void loop250ms() { if (loopTime>=next250ms) { next250ms=loopTime+25e4; if ((micros() - fallTrigTime) > 1e6) { //fallTrigTime = micros(); bRUN = false; curInjTime = 0; rpm = 0; } else { rpm = 12e7/curRevTime; } //lcdWrite(2,0,5," ",String(loop1000msCounts)); lcdWrite(0,0,7," ", (runMode==0)?"Gas-Eth":"Gas-LPG"); lcdWrite(2,1,5," ",String(ratio)); lcdWrite(11,0,5," ",String(curInjTime)); lcdWrite(11,1,5," ",String(rpm)); //Serial.print("curInjTime: "); //Serial.print(curInjTime); //Serial.print("\tcurRevTime: "); //Serial.println(curRevTime); } } void loop500ms() { if (loopTime>=next500ms) { next500ms=loopTime+5e5; } } void loop1000ms() { loop1000msCount++; if (loopTime>=next1000ms) { next1000ms=loopTime+1e6; // loop1000msCounts = loop1000msCount; loop1000msCount = 0; } } 164 void serialCommand() { if (bStringComplete) { // clear the string: Serial.println(inputString); int i = inputString.indexOf('='); if (i > 0) { String subString = inputString.substring(0,i); String subString2 = inputString.substring(i+1,inputString.length()); //Serial.println(subString); float tempx = subString2.toFloat(); //Serial.println(temp); if (subString == "test") { Serial.println("Test KK!"); } else { Serial.println("No cmd!"); } } else { if (inputString == "save") { } else if (inputString == "load") { } else if (inputString == "print") { } else if (inputString == "test") { } else { Serial.println("Nothing to do!"); } } inputString = ""; bStringComplete = false; } } void loop() { // put your main code here, to run repeatedly: loopTime=micros(); serialCommand(); loop50ms(); loop100ms(); loop250ms(); loop500ms(); loop1000ms(); } 165 /* SerialEvent occurs whenever a new data comes in the hardware serial RX. This routine is run between each time loop() runs, so using delay inside loop can delay response. Multiple bytes of data may be available. */ void serialEvent() { while (Serial.available()) { // get the new byte: char inChar = (char)Serial.read(); // if the incoming character is a newline, set a flag // so the main loop can do something about it: if (inChar == '\n') { bStringComplete = true; } else { // add it to the inputString: inputString += inChar; } } } void lcdWrite(byte x, byte y, String text) { lcd.setCursor(x,y); lcd.print(text); } void lcdWrite(byte x, byte y, unsigned long number) { lcd.setCursor(x,y); lcd.print(number); } void lcdWrite(byte x, byte y, byte z, double number) { lcd.setCursor(x,y); lcd.print(number,z); } void lcdWrite(byte x, byte y, byte l, String text1, String text2) { lcd.setCursor(x,y); byte l2 = text2.length(); if (l>l2) { for (byte i=0; i<(l-text2.length()); i++) { lcd.print(text1); } 166 } lcd.print(text2); } void lcdWrite(byte x, byte y, String text, unsigned long number) { lcdWrite(x,y,text); lcdWrite(x,y,number); } void lcdWrite(byte x, byte y, byte z, String text, double number) { lcdWrite(x,y,text); lcdWrite(x,y,z,number); }
File đính kèm:
- luan_an_nang_cao_tinh_nang_kinh_te_ky_thuat_va_giam_muc_do_p.pdf
- 0.Phụ lục Bìa Luận án_BuiVanTan.pdf
- 2.Tóm tắt tiếng Việt_BuiVanTan.pdf
- 3.Tóm tắt tiếng Anh_BuiVanTan.pdf
- 4.Thông tin đóng góp mới tiếng việt_BuiVanTan.pdf
- 5.Thông tin đóng góp mới tiếng Anh_BuiVanTan.pdf
- 6.Trích yếu luận án tiengviet_BuiVanTan.pdf
- 7.Trích yếu luận án tiengAnh_BuiVanTan.pdf