Viết chương trình với ngôn ngữ Visual Basic [10]:

Một phần của tài liệu Nghiên cứu, thiết kế chế tạo mô hình hệ thống lái ô tô trợ lực điện có kết nối máy tính để phục vụ đào tạo (Trang 89)

6. Ý nghĩa khoa học và thực tiễn của đề tài:

4.5.6. Viết chương trình với ngôn ngữ Visual Basic [10]:

Các chức năng chính của chương trình bao gồm:

- Tự động thu thập số liệu, tính toán và xuất ra kết quả các đại lượng

- Biểu diễn sự biến thiên của các đại lượng trên dưới dạng đồ thị và biểu bảng. - Lưu các kết quả đo được dưới dạng File dữ liệu.

Thiết kế theo chức năng của chương trình, ta có biểu đồ phân bố các chức năng như sau:

Hình 4.40. Biểu đồ phân bố các chức năng của chương trình

Dữ liệu thu được từ phần cứng

Giải mã dữ liệu Tính toán các đại lượng

cần đo

Biểu bảng Hình ảnh

Lưu thành File

Xuất Nhập

Giao diện chính của chương trình như sau:

Trong đó:

 Thanh tiêu đề: hiển thị tên phần mềm, người sử dụng có thể cập nhật vào thực đơn hệ thống bằng cách click chuột lên biểu tượng nhỏ tại đỉnh trái.

 Thanh thực đơn gồm các thực đơn sau:

 Thực đơn File: bao gồm các chức năng:

 Export to Excel: cho phép xuất dữ liệu thu thập sang dạng Excel

 Print: cho phép in đồ thị.

 Exit: thoát khỏi trương trình trở về Window.

 Thực đơn Settings: gồm các chức năng cho phép cấu hình khi truyền dữ liệu:

 Port: cho phép chọn cổng COM kết nối với bộ ECU của mô hình.

 Speed: cho phép chọn tốc độ truyền dữ liệu.

 Data Bits: chọn khung dữ liệu truyền.

 Parity: lựa chọn kiểm tra lỗi truyền dữ liệu.

 Thực đơn View: cho phép lựa chọn hình thức hiển thị dữ liệu:

 Table data: cho phép hiển thị dữ liệu dưới dạng bảng biểu các dữ liệu thu thập được.

 Thực đơn Connect: cho phép bắt đầu hay kết thúc kết nối với thiết bị ngoại vi.

 Màn hình chính: gồm có hai lựa chọn hiển thị thông qua hai Tab hoặc có thể truy xuất từ thực đơn View, có hai chế độ hiển thị hoặc lựa chọn hiển thị dữ liệu dưới dạng biểu bảng “DU LIEU BIEU BANG” hoặc hiển thị dữ liệu dưới dạng đồ thị “DU LIEU DO THI”. Ngoài ra, để có thể hiển thị dữ liệu đồ thị được rõ ràng, sinh động trên màn hình còn có các nút kiểm (Check box) cho phép hiển thị một hoặc nhiều đồ thị cùng lúc. Trên màn hình còn có thêm các nút lệnh để giúp cho việc tương tác với phần mềm dễ dàng hơn.

Dưới đây là một số đoạn mã chính của chương trình thu thập dữ liệu:

--- Private Sub MSComm1_OnComm()

Dim txtBuf As String Dim i As Integer Dim c() As String

Dim Current_Direct, M_Steer, Speed_car, I_Support As Integer With MSComm1

Select Case .CommEvent Case comEvReceive txtBuf = .Input

InputString = InputString & txtBuf c(i) = Mid(txtBuf, i, 1) Current_Direct = Val(Asc(c(1))) / 100 M_Steer = Val(Asc(c(2))) Speed_car = Val(Asc(c(3))) I_Support = Val(Asc(c(4))) thoigian = Time Pindex = Pindex + 1 ParrParameter(Pindex).Current_Direct = Current_Direct

If Current_Direct = 2 Then ParrParameter(Pindex).M_Steer = -M_Steer ParrParameter(Pindex).I_Support = -I_Support Else ParrParameter(Pindex).M_Steer = M_Steer ParrParameter(Pindex).I_Support = I_Support End If ParrParameter(Pindex).Speed_car = Speed_car ParrParameter(Pindex).Time = thoigian

Select Case Current_Direct Case 0

txtTextOut = "" Case 1

txtTextOut = "Quay phai" Case 2

txtTextOut = "Quay trai" End Select txtResponse = M_Steer Text3 = I_Support Text4 = Speed_car Text1 = thoigian If Check1.Value = 1 Then With TChart1.Series(0)

.AddXY thoigian, M_Steer, "", vbRed End With

With TChart1.Series(3)

.AddXY thoigian, Current_Direct, "", vbBlack End With

End If

With TChart1.Series(1)

.AddXY thoigian, I_Support, "", vbBlue End With

End If

If Check3.Value = 1 Then With TChart1.Series(2)

.AddXY thoigian, Speed_car, "", vbGreen End With End If End If End Select End With txtResponse.SelStart = Len(txtResponse) End Sub --- Private Sub SSTab1_Click(PreviousTab As Integer)

Dim i As Integer

If PreviousTab = 0 Then 'MsgBox ("vao tab")

MSFlexGrid1.Rows = Pindex + 5 For i = 1 To Pindex

MSFlexGrid1.TextMatrix(i, 0) = i

Select Case ParrParameter(i).Current_Direct Case 0

MSFlexGrid1.TextMatrix(i, 1) = "" Case 1

Case 2

MSFlexGrid1.TextMatrix(i, 1) = "Quay trai" End Select MSFlexGrid1.TextMatrix(i, 2) = ParrParameter(i).M_Steer MSFlexGrid1.TextMatrix(i, 3) = ParrParameter(i).Speed_car MSFlexGrid1.TextMatrix(i, 4) = ParrParameter(i).I_Support MSFlexGrid1.TextMatrix(i, 5) = ParrParameter(i).Time Next End If End Sub ---

Chương 5: THỬ NGHIỆM VÀ BÀN LUẬN

Một phần của tài liệu Nghiên cứu, thiết kế chế tạo mô hình hệ thống lái ô tô trợ lực điện có kết nối máy tính để phục vụ đào tạo (Trang 89)