Thiết kế giao diện

Một phần của tài liệu nghiên cứu truyền dẫn và hiển thị dữ liệu từ thiết bị đo khí xả động cơ ipex.d lê máy tính (Trang 90 - 105)

Giao diện thiết kế đơn giản gồm các phần sau:

 Phần label (nhãn) để ghi tên của các thông số.

 Các nút check để đánh dấu đạt hay chưa đạt.

 Ô kết quả để ghi đánh giá tổng quát.

 Mscomm để dùng cho việc kết nối dữ liệu với cổng COM.

 Các Timer dùng để hiển thị các thông số và dùng để định thời gian tải dữ

liệu từ vi điều khiển lên máy tính, và hiển thị các thông báo khi gặp sự cố

 Menu tùy chọn để lưu kết quả, hay in dữ liệu…

Hình 3.21: Giao diện để hiển thị dữ liệu. 3.4.3.2 Viết mã nguồn

Mã nguồn được viết theo ngôn ngữ lập trình Visual Basic. Mã nguồn này được

viết dựa trên các phần của giao diện thiết kế. Nội dung cơ bản của mã nguồn được

viết như sau:

‘ dòng lệnh 1 đến 7

Private Sub Form_Load() Dim str As String

MSComm1.Settings = "9600,n,8,1" MSComm1.InputLen = 0 MSComm1.PortOpen = True End Sub ‘ dòng lệnh 8 đến 11

Private Sub mnuexit_Click() MSComm1.PortOpen = flase End

End Sub

‘ dòng lệnh 12 đến 16

Private Sub Timer1_Timer() Dim str As String Dim str2 As String Timer3.Enabled = True Timer1.Enabled = True ‘ dòng lệnh 17 MSComm1.Output = "S" ‘ dòng lệnh 18 đến 22 Do DoEvents

Loop Until MSComm1.InBufferCount >= 1 str = MSComm1.Input str = Asc(str) MSComm1.InBufferCount = 0 ‘ dòng lệnh 23 đến 100 Select Case str Case "63" str = "0" Case "6"

str = "1" Case "91" str = "2" Case "79" str = "3" Case "102" str = "4" Case "109" str = "5" Case "125" str = "6" Case "7" str = "7" Case "127" str = "8" Case "111" str = "9" Case "191" str = "0." Case "134" str = "1." Case "219" str = "2." Case "207" str = "3." Case "230" str = "4." Case "237"

str = "5." Case "253" str = "6." Case "135" str = "7." Case "255" str = "8." Case "239" str = "9." Case Else str = "0" End Select ‘ dòng lệnh từ 101 đến 105 Do DoEvents

Loop Until MSComm1.InBufferCount >= 1 str2 = MSComm1.Input MSComm1.InBufferCount = 0 str2 = Asc(str2) ‘dòng lệnh từ 106 đến 237 Select Case str2 Case "8" Text13.Text = str Case "11" Text14.Text = str Case "10" Text15.Text = str Case "7" Text16.Text = str

Case "6" Text17.Text = str Case "5" Text18.Text = str Case "4" Text19.Text = str Case "3" Text20.Text = str Case "12" Text21.Text = str Case "15" Text22.Text = str Case "14" Text23.Text = str Case "9" Text24.Text = str Case "2" Text25.Text = str Case "1" Text26.Text = str Case "0" Text27.Text = str Case "13" Text28.Text = str Case "24" Text29.Text = str Case "27" Text30.Text = str Case "26"

Text31.Text = str Case "23" Text32.Text = str End Select ‘dòng lệnh từ 238 Timer3.Enabled = False ‘dòng lệnh từ 239 End Sub ‘dòng lệnh từ 240 đến 242

Private Sub Timer3_Timer()

MsgBox "KHONG TIM THAY CONG COM" End Sub

‘dòng lệnh từ 243 đến 252

Private Sub Timer4_Timer()

Text1.Text = Text13.Text + Text14.Text + Text15.Text + Text16.Text Text2.Text = Text17.Text + Text18.Text + Text19.Text + Text20.Text Text3.Text = Text21.Text + Text22.Text + Text23.Text + Text24.Text Text4.Text = Text25.Text + Text26.Text + Text27.Text + Text28.Text Text5.Text = Text29.Text + Text30.Text + Text31.Text + Text32.Text If Text5.Text < 300 Then

Text6.Text = Text5.Text End If

End Sub

Sau đây sẽ giải thích tổng quát về mục đích các lệnh dùng trong Visual basic

để hiển thị dữ liệu:

 Các dòng lệnh từ 1 đến 7 dùng để tải chương trình chính lên và khởi động

cổng COM1.

 Các dòng lệnh từ 8 đến 11 dùng để tạo menu tùy chọn gồm: exit, ta sẽ làm

 Các dòng lệnh từ 12 đến 16 dùng để tạo xung nhịp cho 1 chu kì nhận dữ

liệu và địa chỉ truyền từ vi điều khiển sang, thiết lập hoạt động của timer1 và timer3

 Dòng lệnh 17 dùng để truyền kí tự “S” từ phần mềm Visual Basic sang vi

điều khiển với mục đích báo rằng chương trình vừa kết thúc một chu kì xử lí dữ liệu

xong và đã sẵn sàng nhận dữ liệu ở chu kì mới từ vi điều khiển đưa sang.

 Các dòng lệnh từ 18 đến 22 là chờ đọc cổng COM và giải mã giá trị dữ

liệu từ led 7 đoạn.

 Các dòng lệnh từ 23 đến 100 dùng để so sánh giá trị từ số Assci từ “0” đến “9” và giá trị từ số Assci từ “0.” đến “9.”.

 Các dòng lệnh từ 101 đến 105 đùng để chờ đọc cổng COM và giải mã địa

chỉ led 7 đoạn của dữ liệu vừa được gởi sang máy tính.

 Dòng lệnh 238: Để tắt timer3 khi giá trị hoạt động bình thường nhằm

không hiển thị thông báo “KHONG TIM THAY CONG COM”. Dòng lệnh 239 dùng để kết thúc 1 chu kì hoạt động của timer1.

 Các dòng lệnh từ 240 đến 242 sẽ thông báo câu “KHONG TIM THAY

CONG COM” khi timer3 chạy hết chu kì hoạt động của nó, tức lúc này vi điều

khiển hay đường cáp truyền có sự cố, cần phải kiểm tra.

 Các dòng lệnh từ 243 đến 252: Ở đây đươc coi là thủ thuật để đưa số liệu

vào các khung như: CO, CO2 , O2 , HC, Lamda, RPM. Khi chương trình chạy thì ta sẽ ẩn các ô text này đi.

Nói tóm lại, khi ta kết hợp sự làm việc của cả 2 phần vi điều khiển và phần

mềm hiển thị dữ liệu ta có thể hình dung như sau:

Khi vi điều khiển được cấp nguồn trước, dữ liệu và địa chỉ để hiển thị lên màn hình của máy IPEX.D sẽ được lấy vào xử lí trong vi điều khiển, và bắt đầu các lệnh để truyền dữ liệu và địa chỉ qua máy tính, vi điều khiển sẽ bị đứng tại vị trí lệnh

“nhan” (đứng chờ kí tự “S” từ Visual Basic truyền sang). Vì Visual Basic khởi động

sau, khi timer1 nhịp 1 chu kì thì thực hiện lệnh đẩy kí tự “S” qua cho vi điều khiển. Vi điều khiển nhận được “S” sẽ nhảy về làm lại công việc từ đầu cho đến các lệnh

lệnh để nhận dữ liệu từ cổng COM và xử lí chúng, tương tự cho địa chỉ của ô nhớ

có dữ liệu mà vi điều khiển vừa đưa sang. Khi vi điều khiển vừa truyền dữ liệu và

địa chỉ xong thì sẽ nhảy xuống tiếp tục lệnh đợi “S” của lần kế tiếp từ Visual basic

đưa sang, còn bên Visual basic sau khi hết 1 chu kì hoạt động của timer1 thì lặp lại

công việc này, và sẽ truyền “S” ở chu kì kế tiếp cho vi điều khiển. Công việc được 2

bên phối hợp nhịp nhàng.

Trong trường hợp khởi động phần mềm hiển thị dữ liệu trước thì bên Visual Basic cũng sẽ truyền “S” qua và sẽ đợi dữ liệu và địa chỉ từ vi điều khiển truyền

sang. Nếu không thấy dữ liệu và địa chỉ truyền sang, khi hết chu kì hoạt động của

timer3 thì sẽ báo hộp thoại “KHONG TIM THAY CONG COM”, tức là vi điều

khiển hoặc cáp truyền bị sự cố, cần kiểm tra.

3.5 Chạy thử

Sau khi thiết kế phần cứng và viết phần mềm đã được hoàn tất, ta sẽ tiên hành chạy thử theo từng bước như sau:

3.5.1 Chuẩn bị

 Nối cổng giao tiếp COM giữa thiết bị truyền dữ liệu với máy tính.

 Dùng thiết bị IPEX.D thực hiện một quy trình đo nồng độ khí xả giống như đã trình bày ở chương 2 cho xe Nissan tại xưởng thực tập bộ môn kĩ thuật ô tô.

 Mở chương trình hiển thị dữ liệu trên máy tính và kiểm tra kết quả.

3.5.2 Kết quả

 Khi thiết bị IPEX.D thực hiện đo nồng độ khí xả thì trên màn hình máy tính hiển thị các số liệu giống như trên màn hình của máy IPEX.D, bên cạnh đó còn hiển thị thêm được một thông số khác nữa, đó là Lamda.

 Điều này đã thể hiện rằng thiết bị hoạt động tốt và có độ tin cậy tương đối cao. Tuy nhiên, để đảm bảo an toàn và hiệu quả thì nên để thiết bị đo nồng độ khí

xả IPEX.D ra xa động cơ khi ô tô đang nổ máy với mục đích là tránh bị nhiễu bởi

Chương 4

KẾT LUẬN VÀ ĐỀ XUẤT Ý KIẾN

4.1 Kết luận

Sau một thời gian thực hiện đồ án tốt nghiệp với đề tài : Nghiên cứu truyền

dẫn và hiển thị dữ liệu từ thiết bị đo khí xả động cơ IPEX.D lên máy tính. Có thể nói đây là đề tài khá mới và tài liệu tham khảo còn nhiều hạn chế. Nhưng vói sự giúp đỡ tận tình của thầy hướng dẫn TS. Lê Bá Khang và cộng tác viên Đình Hoàng, và một số bạn trong lớp đến nay nội dung cơ bản của đề tài đã được hoàn thành.

Nhìn chung thiết bị đã có sẵn nhưng sau khi khảo sát và tìm hiểu thấy rằng hầu

hết thiết bị này chưa có chức năng truyền dẫn, hiển thị, lưu trữ dữ liệu. Vì vậy chúng tôi đã lựa chọn và quyết định dùng phương án lấy dữ liệu thông qua đường

truyền dữ liệu (từ vi điều khiển lên màn hình led 7 đoạn của thiết bị IPEX.D) để

truyền lên máy tính nhờ vào thiết bị do chúng tôi tự thiết kế.

Hiển thị dữ liệu trên màn hình máy tính bằng phần mềm được viết bởi ngôn ngữ lập trình Visual Basic.

Kết quả chạy thử đo thành phần khí xả tại xe Nissan của Bộ môn Kĩ Thuật

ÔTô có sự chứng kiến của các thầy trong Bộ môn cho thấy dữ liệu đã được truyền

dẫn và hiển thị lên máy tính đúng như trên màn hình led 7 đoạn của máy IPEX.D. Chứng tỏ việc truyền dẫn và hiển thị dữ liệu từ thiết bị đo khí xả động cơ IPEX.D đã thành công.

Em nghĩ rằng đề tài có ý nghĩa thiết thực đối với sự phát triển của ngành công nghiệp ô tô, đặc biệt là các trạm đăng kiểm, các cơ sở nghiên cứu, nó góp phần

giảm chi phí nhập các thiết bị mới. Ngày nay các tiêu chuẩn về khí thải càng ngày càng khắt khe, cần có độ chính xác cao, nên em hi vọng rằng trong tương lai gần

chúng ta có thể ứng dụng phần nghiên cứu này vào lĩnh lưu trữ số liệu của ô tô kiểm định để thuận tiện hơn cho việc theo dõi và kiểm tra. Hơn nữa, đề tài không những

giúp em thực hiện công tác tốt nghiệp mà còn giúp em mở mang thêm kiến thức về vi điều khiển, kiến thức tin học và tiếng Anh.

Tuy nhiên do kiến thức, kinh nghiệm thực tế còn hạn chế và thời gian quá

ngắn nên nội dung của đề tài sẽ không tránh khỏi sai sót, kính mong Quý thầy cô và các bạn góp ý để đề tài bổ sung được hoàn thiện hơn.

4.2 Đề xuất ý kiến

Thiết bị IPEX.D đã có sẵn chức năng hiển thị đo NOx nhưng không thể sử

dụng chức năng này vi thiếu cảm biến NOx. Nhưng theo em, khí NOx là một loại khí độc hại, rất cần kiểm tra đối với ô tô do đó đề nghị Nhà trường và cơ quan hữu

quan xem xét, nếu được:

 Nên đầu tư thêm cảm biến NOx để có thể nâng cấp chức năng đo nồng độ

khí NOx cho thiết bị IPEX.D.

 Triển khai xây dựng và lắp đặt hệ thống kiểm tra phanh, đưa thiết bị đo

nồng độ khí xả IPEX.D vào hoạt động thực tế nhằm theo hướng phát triễn sẽ thành lập phòng kiểm tra chất lượng ô tô về phanh và khí thải, xa hơn nữa sẽ bao gồm các

hạng mục khác như kiểm tra hệ thống chiếu sáng, khung, gầm bệ, v.v…, đồng thời

cũng nhằm mục đích phục vụ tốt hơn cho kế hoạch thực tập của những sinh viên

năm cuối thuộc chuyên ngành kĩ thuật ô tô và có nhiều cơ hội hơn để sinh viên tiếp

cận học hỏi và cọ xát với thực tế.

Và em mong rằng mỗi sinh viên nên tăng cường sự tự học, trau dồi kiến thức

và kinh nghiệm thực tế, nên tìm tòi và say mê nghiên cứu khoa học, cần đề xuất và phát triển các đề tài mang tính khả thi có sự ứng dụng về công nghệ thông tin cho

MỤC LỤC

Chương 1 TỔNG QUAN VỀ ĐỘNG CƠ VÀ VIỆC HÌNH THÀNH

CHẤT ĐỘ HẠI TRONG KHÍ THẢI

1.1 Tổng quan về động cơ ... 1

1.1.1 Định nghĩa và phân loại động cơ đốt trong... 1

1.1.1.1 Định nghĩa... 1

1.1.1.2 Phân loại... 1

1.1.2 Các bộ phận cơ bản của động cơ đốt trong ... 1

1.2 Sự hình thành chất độc hại trong khí xả trên động cơ... 3

1.2.1 Cơ chế hình thành Ôxít Nitơ (NOx)... 3

1.2.1.1 Cơ chế hình thành Monoxit Nito (NO)... 3

1.2.1.2 Cơ chế hình thành Dioxit Nito (NO2)... 4

1.2.1.3 Cơ chế hình thành Protoxit Nito (N2O) ... 4

1.2.1.4 Các yếu tố ảnh hưởng đến sự hình thành NOx trong khí thải động cơ đốt trong... 5

1.2.2 Cơ chế hình thành Cacbon monoxit (CO) ... 9

1.2.3 Cơ chế hình thành các Hydrocacbua (HC) chưa cháy... 10

1.2.4 Cơ chế hình thành các oxit lưu huỳnh ... 12

Chương 2 THIẾT BỊ VÀ QUY TRÌNH SỬ DỤNG MÁY ĐO KHÍ XẢ IPEX.D 2.1 Tổng quan về thiết bị đo khí xả IPEX.D... 13

2.1.1 Cấu tạo bên ngoài ... 14

2.1.1.1 Mặt trước của thiết bị ... 14

2.1.1.2 Mặt sau của thiết bị... 15

2.1.2 Đặc tính kỹ thuật... 16

2.1.3 Chức năng đặc biệt... 17

2.1.3.2 Kiểm tra rò rỉ... 17

2.1.3.3 Các thông báo ... 17

2.1.4 Các dây đo IPEX.D... 19

2.2 Bảo trì thiết bị IPEX.D... 20

2.2.1 Hướng dẫn vệ sinh ống lọc khí vào đầu tiên... 20

2.2.2 Bảo trì bơm ngưng tụ nước... 21

2.2.3 Thay giấy máy in... 22

2.2.4 Thay ruybang mực in... 22

2.2.5 Thay cảm biến Oxy... 22

2.2.6 Thay lọc than... 23

2.3 Quy trình sử dụng máy đo khí xả IPEX.D... 24

2.3.1 Nguyên lý hoạt động... 24

2.3.2 Quy trình thực hiện một phân tích khí xả... 24

2.4 Tiêu chuẩn về khí xả động cơ... 27

2.4.1 Hoa kỳ... 27

2.4.2 Cộng đồng Châu Âu... 28

2.4.3 Nhật Bản... 29

2.4.4 Các nước khác... 31

2.4.5 Tiêu chuẩn Việt Nam... 32

2.4.5.1 Tiêu chuẩn TCVN 6431-1998 ... 34

2.4.5.2 Tiêu chuẩn TCVN 6438-1998 ... 35

2.4.5.3 Tiêu chuẩn TCVN 6438-2001 ... 36

2.4.5.4 Tiêu chuẩn TCVN 6565-1999 ... 37

Chương 3 CHƯƠNG TRÌNH TRUYỀN DẪN VÀ HIỂN THỊ DỮ LIỆU TỪ THIẾT BỊ ĐO IPEX.D LÊN MÁY TÍNH. 3.1 Thiết lập và chọn phương án truyền dẫn và hiển thị dữ liệu... 38

3.1.1 Phương án truyền dẫn và hiển thị dữ liêu thông qua cổng COM của máy IPEX.D... 40

3.1.3 Phương án truyền dẫn và hiển thị dữ liệu thông qua màn hình

Led 7 đoạn của IPEX.D... 40

3.1.3.1 Cổng tiếp nối chuẩn RS232... 41

3.1.3.2 Bố trí chân của RS232... 42

3.2 Truyền dẫn dữ liệu... 43

3.2.1 Bộ vi điều khiển và bộ vi xử lí đa năng... 43

3.2.2 Tổng quan về họ 8051... 45

3.2.2.1 Tóm tắt lịch sử phát triển của 8051... 45

3.2.2.2 Bộ vi điều khiển 8051... 46

3.2.2.3 Các phiên bản của họ 8051... 47

3.2.3 Lựa chọn bộ vi điều khiển... 50

3.2.4 Tổng quát về vi điều khiển AT89C51... 52

3.2.4.1 Khảo sát bên ngoài của vi điều khiển AT89C51... 53

3.2.4.2 Khảo sát cấu trúc bên trong của vi điều khiển AT89C51... 55

3.2.5 Cơ sở truyền dẫn dữ liệu ra máy tính dựa trên máy IPEX.D... 70

3.2.5.1 Truyền dẫn dữ liệu từ vi điều khiển của Ipex.D lên màn hình Led 7 đoạn... 70

3.2.5.2 Cách thức lấy dữ liệu từ đường lên màn hình của máy IPEX.D sang vi điều khiển do ta thiết kế để đưa lên máy tính... 72

3.3 Hiển thị và lưu trữ dữ liệu... 75

3.4 Chế tạo bộ phận truyền dẫn và hiển thị dữ liệu... 77

3.4.1 Mục đích và yêu cầu của mạch thiết kế... 77

3.4.1.1 Yêu cầu... 77

3.4.1.2 Mục đích... 78

3.4.2 Chế tạo bộ phận truyền dẫn dữ liệu... 78

3.4.2.1 Sơ đồ khối... 78

3.4.2.2 Sơ đồ nguyên lý của thiết bị truyền dẫn dữ liệu có kết nối máy tính... 78

3.4.2.4 Viết hợp ngữ cho vi điều khiển AT89C51... 83

Một phần của tài liệu nghiên cứu truyền dẫn và hiển thị dữ liệu từ thiết bị đo khí xả động cơ ipex.d lê máy tính (Trang 90 - 105)

Tải bản đầy đủ (PDF)

(105 trang)