1. Trang chủ
  2. » Luận Văn - Báo Cáo

thiết kế phần mềm chẩn đoán các cảm biến cơ cấu chấp hành hệ thống điều khiển động cơ

74 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Nội dung

Nhóm cùng hợp tác với nhóm của bạn Nguyễn Hoàng Đạt và bạn Trần Gia Hòa làm phần cứng với đề tài “Thiết kế, chế tạo mô hình các cảm biển – cơ cấu chấp hành hệ thống điều khiển động cơ”,

Trang 1

THÀNH PHỐ HỒ CHÍ MINH

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT

SVTH: ĐẶNG QUÝ LÊ NAM ĐỊNH

GVHD: ThS NGUYỄN THIỆN DINH THIẾT KẾ PHẦN MỀM CHẨN ĐOÁN

CÁC CẢM BIẾN – CƠ CẤU CHẤP HÀNH HỆ THỐNG ĐIỀU KHIỂN ĐỘNG CƠ

ĐỒ ÁN TỐT NGHIỆP

NGÀNH CÔNG NGHỆ KỸ THUẬT Ô TÔ

Trang 2

HỆ THỐNG ĐIỀU KHIỂN ĐỘNG CƠ

SVTH: ĐẶNG QUÝ

SVTH: LÊ NAM ĐỊNH MSSV: 19145104

GVHD: ThS NGUYỄN THIỆN DINH

Trang 11

LỜI CẢM ƠN

Nhóm em xin gửi lời cảm ơn chân thành đến những đấng sinh thành, những bậc cha mẹ, người thân là những người luôn luôn ủng hộ và là chỗ dựa tinh thần cho chúng em trong xuyên suốt quá trình thực hiện đồ án Bên cạnh đó, chúng em vô cùng biết ơn nhà trường cũng như thầy cô Khoa Cơ khí Động lực đã tạo điều kiện hết mức để giúp đỡ chúng em thực hiện đồ án một cách tốt nhất

Và tất nhiên, người đã đồng hành cùng chúng em từ những ngày đầu thực hiện đồ án cho đến lúc hoàn thành sản phẩm, nhóm chúng em xin gửi lời cảm ơn chân thành đến ThS Nguyễn Thiện Dinh, luôn dành thời gian quý báu hướng dẫn, giúp đỡ và giải đáp các thắc mắc để nhóm em có thể hoàn thành tốt được đồ án tốt nghiệp này

Trong quá trình thực hiện, đồ án của nhóm đòi hỏi một lượng kiến thức đa dạng và phong phú ở nhiều lĩnh vực khác nhau, tuy nhiên do có giới hạn về thời gian và lượng kiến thức cũng như kỹ năng thực hành nên nhóm không thể tránh khỏi việc có những sai sót khi thực hiện đồ án Nhóm cùng hợp tác với nhóm của bạn Nguyễn Hoàng Đạt và bạn Trần Gia Hòa làm phần cứng với đề tài “Thiết kế, chế tạo mô hình các cảm biển – cơ cấu chấp hành hệ thống điều khiển động cơ”, để cùng nhau làm ra một sản phẩm có thể áp dụng giảng dạy cho sinh viên về sau

Rất may mắn chúng em luôn nhận được sự chỉ dạy từ thầy, giúp nhóm hoàn thiện đề tài nhất có thể Qua thời gian làm việc chung dù không nhiều nhưng cũng đủ để chúng em cảm nhận được sự chân thành giúp đỡ nhóm của thầy Chúng em xin gửi lời chúc tốt đẹp nhất đến quý thầy cô và các bạn, chúc mọi người có nhiều sức khỏe, bình an, vui vẻ, hạnh phúc và thành công trên con đường đời phía trước

Xin chân thành cảm ơn và gửi lời chúc tốt đẹp nhất!

Trang 12

TÓM TẮT

Cuộc sống xung quang chúng ta luôn vận hành theo chiều hướng đi lên, bắt buộc con người phải luôn tìm kiếm, học hỏi, thay đổi và áp dụng những công nghệ, kỹ thuật tiên tiến vào đời sống Các lĩnh vực khoa học, máy tính, trí tuệ nhân tạo được con người đưa vào thực tiễn nhiều hơn Trong đó không thể không kể đến ngành Công nghệ ô tô Ô tô giờ đây không những là phương tiện di chuyển mà nó còn bao hàm sự an toàn, thoải mái, đáp ứng trải nghiệm tốt cho mọi người Chính vì lẽ đó, trên Ô tô ngày nay đã được trang bị rất nhiều công nghệ tiên tiến như cảm biến, hệ thống an toàn, hệ thống tiện nghi…

Tại Trường Đại học Sư phạm Kỹ thuật thành phố Hồ Chí Minh nổi tiếng với chất lượng đào tạo rất tốt về các ngành nói chung và ngành ô tô nói riêng, nhưng để bắt kịp với xu hướng xe hiện đại, chúng ta cũng cần phải nâng cao hiệu quả giảng dạy bằng cách áp dụng những mô hình đào tạo thực tiễn giúp sinh viên nắm vững lý thuyết lẫn thực tế Với mong muốn góp sức cho trường, nhóm chúng em thực hiện đề tài “Thiết kế phần mềm chẩn đoán – cơ cấu chấp hành hệ thống điều khiển động cơ”

Đề tài sử dụng công cụ là Visual Studio Windows Form để lập trình viết ra một phần mềm, kết hợp với phần cứng của nhóm hai bạn Đạt và bạn Hòa Phần mềm này giúp giảng viên giảng dạy sinh viên về các cảm biến và cơ cấu chấp hành hệ thống điều khiển động cơ ô tô Học đi đôi với hành, không chỉ cung cấp lý thuyết mà phần mềm còn kết hợp thực hành

Sinh viên thao tác trực tiếp trên mô hình để đo đạt, kiểm tra cảm biến Sau đó cho ra số liệu chính xác nhất về cảm biến đó Sinh viên có thể theo số liệu đó nghiên cứu, học tập, tìm hiểu cấu tạo nguyên lý hoạt động của cảm biến – cơ cấu chấp hành hệ thống điều khiển động cơ ô tô

Trang 13

Đề tài này không chỉ đóng vai trò hỗ trợ giảng dạy mà còn mang tính thực tiễn cao, giúp sinh viên không chỉ nắm vững kiến thức về cảm biến trên ô tô mà còn có kinh nghiệm xử lý lỗi về cảm biến trên ô tô thực tế Phần mềm được phát triển kết hợp với phần cứng nhằm tạo ra một môi trường học tập tương tác, giúp sinh viên nâng cao kỹ năng và tự tin trong việc chẩn đoán và sửa chữa các vấn đề liên quan đến cảm biến - cơ cấu chấp hành hệ thống điều khiển động cơ ô tô Qua đó sinh viên có áp dụng cho nghề nghiệp sau này của bản thân

Trang 14

ABSTRACT

Life around us always moves in an upward direction, forcing people to always seek, learn, change and apply advanced technology and techniques to life The fields of science, computing, and artificial intelligence are being put into practice more and more Among them, it is impossible not to mention specialized technology cars Cars are now not just convenient means of transportation, but they also mean safety, comfort, and a good experience for everyone For that reason, today's cars are equipped with many advanced technologies such as sensors, safety systems, comfort systems, etc

Ho Chi Minh City University of Technical Education is famous for its very good training quality in general and the automobile industry in particular, but to keep up with modern car trends, we also need to Improve teaching effectiveness by applying practical training models to help students master both theory and practice With the desire to contribute to the school, our group carried out the project "Design of diagnostic software - executive structure of engine control system"

The project uses the tool Visual Studio Windows Form to program and write a software, combined with the hardware of a group of two friends, Dat and Hoa This software helps lecturers teach students about sensors and actuators of car engine control systems Learning goes hand in hand with practice, not only providing theory but the software also combines practice

Students work directly on the model to measure and test sensors Then give the most accurate data about that sensor Students can follow that data to research, study, and understand the structure and operating principles of the sensor - the actuator of the car engine control system

Trang 15

This topic not only plays a teaching support role but is also highly practical, helping students not only master knowledge about sensors on cars but also have experience in handling sensor errors on real cars international The software was developed in conjunction with the hardware to create an interactive learning environment, helping students improve their skills and confidence in diagnosing and repairing sensor-actuator-related problems operate the car engine control system Thereby, students can apply it to their future careers

Trang 16

1.3 Mục tiêu của đề tài 3

1.4 Đối tượng và phạm vi nghiên cứu 4

1.5 Phương pháp tiếp cận và nghiên cứu 4

1.5.1 Phương pháp tiếp cận 4

1.5.2 Phương pháp nghiên cứu 5

1.6 Nội dung nghiên cứu 5

1.7 Các nội dung chính trong đề tài 5

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 6

2.1 Giới thiệu về Visual Studio và Windows Forms 6

2.1.1 Visual Studio 6

2.1.2 Visual Studio Windows Forms 7

2.1.3 Các thành phần để người dùng làm việc của WinForms 8

2.2 Giới thiệu về Arduino 14

2.2.1 Phần mềm Arduino IDE 14

2.2.2 Board Arduino Mega 15

2.3 Cơ sở dữ liệu về SQLite 17

2.4 Giao tiếp UART 18

2.5 Virtual Serial Port 20

2.6 Github 21

CHƯƠNG 3: THIẾT KẾ PHẦN MỀM CHẨN ĐOÁN CÁC CẢM BIẾN – CƠ CẤU CHẤP HÀNH HỆ THỐNG ĐIỀU KHIỂN ĐỘNG CƠ ĐƯỢC BIÊN SOẠN BẰNG VISUAL STUDIO WINDOWS FORMS 23

Trang 17

3.1 Sử dụng phần mềm với quyền “Sinh viên” 23

3.1.1 Đăng nhập với quyền “Sinh viên” 23

3.1.2 Giới thiệu các chức năng chính của phần mềm với quyền “Sinh viên” 24

3.1.3 Chức năng “Bài học” 26

3.1.4 Chức năng “Thực hành” 31

3.1.5 Chứ năng “Thực hành kiểm tra lỗi” 36

3.1.6 Chức năng “Kiểm tra” 41

3.2 Sử dụng phần mềm với quyền “Giảng viên” 44

3.2.1 Đăng nhập với quyền “Giảng viên” 44

3.2.2 Chức năng “Quản lý thông tin sinh viên” 46

3.2.3 Chức năng “Tạo mã lỗi” 47

CHƯƠNG 4: KẾT QUẢ VÀ ĐÁNH GIÁ 49

Trang 18

DANH MỤC CÁC HÌNH ẢNH

Hình 2.1 Logo của phần mềm Visual Studio 2022 6

Hình 2.2 Giao diện làm việc của Visual Studio Windows Form 2022 8

Hình 2.3 Giao diện cửa sổ Source Code Winforms 8

Hình 2.4 Giao diện cửa sổ Solution Explorer 9

Hình 2.5 Giao diện cửa sổ Design 10

Hình 2.6 Giao diện cửa sổ Toolbox 11

Hình 2.7 Giao diện cửa sổ Properties 13

Hình 2.8 Giao diện phần mềm Arduino IDE 15

Hình 2.9 Board Arduino Mega2560 16

Hình 2.10 Cấu trúc cơ sở dữ liệu SQLite 17

Hình 2.11 Giao diện tài khoản SQLite 18

Hình 2.12 Giao tiếp giữa 2 UART 18

Hình 2.13 Giao diện ứng dụng Virtual Serial Port 20

Hình 2.14 Logo Github 21

Hình 2.15 Trang Github của đề tài 21

Hình 3.1 Trang chủ đăng nhập của phần mềm Vehicle Engine Training 23

Hình 3.2 Cổng kết nối COM 24

Hình 3.3 Các chức năng học tập của sinh viên 25

Hình 3.4 Ý tưởng hiển thị ban đầu phần bài học 26

Hình 3.5 Thư viện file excel phần bài học 26

Hình 3.6 Nơi lưu trữ hình ảnh hiển thị trong nguồn của dự án 27

Hình 3.7 Các bước chọn chức năng “Bài học” 28

Hình 3.8 Trang chọn bài học 28

Hình 3.9 Bố cục giao diện bài học 30

Hình 3.10 Ý tưởng ban đầu phần thực hành 31

Hình 3.11 Các cột chứa câu hỏi và đáp án trắc nghiệm 31

Hình 3.12 Đồ thị minh họa cho cảm biến 32

Hình 3.13 Các bước thực hành chức năng “Thực Hành” 33

Hình 3.14 Trang chọn bài thực hành 33

Hình 3.15 Giao diện thực hành 35

Hình 3.16 Ý tưởng ban đầu phần thực hành kiểm tra lỗi 36

Hình 3.17 Thư viện file excel thực hành kiểm tra lỗi (1) 36

Trang 19

Hình 3.18 Thư viện file excel thực hành kiểm tra lỗi (2) 37

Hình 3.19 Nút thực hành kiểm tra lỗi 37

Hình 3.20 Giao diện thực hành kiểm tra lỗi 38

Hình 3.21 Hướng dẫn sinh viên nối dây 39

Hình 3.22 Hướng dẫn sinh viên đo kiểm 39

Hình 3.23 Khung chọn lỗi 40

Hình 3.24 Nút kiểm tra 41

Hình 3.25 Giao diện cửa sổ kiểm tra 41

Hình 3.26 Thiết lập bài kiểm tra 42

Hình 3.27 Danh sách 20 lỗi (PAN) 42

Hình 3.28 Giao diện kiểm tra 43

Hình 3.29 Phần mềm trả kết quả “ĐẠT” hay “KHÔNG ĐẠT” 43

Hình 3.30 Đăng nhập với quyền “Giảng viên” 44

Hình 3.31 Các chức năng chính dành cho giảng viên 45

Hình 3.32 Bố cục của trang quản lý sinh viên 46

Hình 3.33 Tiến độ học tập của sinh viên 47

Hình 3.34 Bảng điều khiển nhập mã lỗi 47

Hình 4.1 Kết nối phần mềm và phần cứng 50

Hình 4.2 Thao tác thực hành trên phần mềm 50

Trang 20

CHƯƠNG 1: TỔNG QUAN 1.1 Lí do chọn đề tài

Đi cùng với sự phát triển của khoa học, kỹ thuật và công nghệ, con người đã áp dụng nhiều thành tựu nghiên cứu vào đời sống Nhờ đó những thiết bị hiện đại được ra đời, tất cả chúng được tạo ra với một mục đích giúp con người có cuộc sống thoải mái dễ dàng hơn Những sản phẩm tiên tiến liên quan đến rất nhiều lĩnh vực bao gồm: giải trí, đi lại, học tập… các thiết bị di động thông minh, các thiết bị điện tử, các hệ thống thông tin, mạng lưới Internet toàn cầu, trí thông minh nhân tạo… Trong đó, không thể không kể đến ô tô Đã từng có thời điểm, người ta nhìn vào sự phát triển của ngành công nghiệp ô tô để đánh giá sự phát triển của quốc gia đó

Ngành công nghiệp ô tô càng ngày càng phát triển, nó giúp kinh tế phát triển con người có lợi ích được sử dụng công nghệ mới, nhưng vấn đề đặt ra là con người phải có thêm kiến thức để quản lý, sử dụng, thậm chí là phát triển công nghệ đó lên một tầm cao hơn Để làm được việc đó, giờ đây không chỉ thông qua việc học lý thuyết mà còn phải kết hợp với thực hành trực tiếp Nó giúp con người đối mặt với vấn đề và giải quyết vấn đề một cách cụ thể nhất

Qua những điều nêu ở trên, nhóm nhận thấy việc trang bị thật tốt cho mình kiến thức lý thuyết là chưa đủ, bản thân phải đối mặt với vấn đề thực tế nhiều hơn trước khi bước vào công việc trong tương lai Tuy nhiên, sinh viên hiện nay khá tự tin vào kiến thức mình đã học mà bỏ quên đi tính trải nghiệm thực tế Nhận thấy được việc đó, chúng em đã cùng nhau tìm hiểu và xin phép được sự hướng dẫn của giảng viên Nguyễn Thiện Dinh để thực hiện đề tài “Thiết kế phần mềm chẩn đoán các cảm biến – cơ cấu chấp hành hệ thống điều khiển động cơ” nhằm hỗ trợ giảng viên giảng dạy và đưa sinh viên ứng dụng lý thuyết đã học vào gần với thực tế hơn

1.2 Thực trạng hiện tại

1.2.1 Tình hình ngoài nước

Năm 2019, một nhóm nghiên cứu sinh tại Khoa Giáo dục Kỹ thuật Ô tô, Đại học Negeri Yogyakarta, Indonesia bao gồm M.Wakid, T.Usman và B.Sulistyo đã thực hiện nghiên cứu “Project Based Learning Model to Increase the Competency of Automotive Engineering Teachers Candidates” [1] Nghiên cứu này nhằm tạo ra một mô hình học dựa trên dự án cho giáo dục nghề nghiệp (Project-Based Learning model - PjBL)

Trang 21

trong việc học thực hành các khóa học về ô tô về điện thân xe Sản phẩm của nghiên cứu này là một mô hình PjBL cho giáo dục nghề nghiệp trong lĩnh vực ô tô đã được đánh giá và khẳng định phù hợp để sử dụng như một mô hình học trong lĩnh vực ô tô của giáo dục nghề nghiệp Sinh viên tham gia thực nghiệm cũng đã cho các phản hồi rất tích cực về kết quả của nghiên cứu và đánh giá rất cao các hiệu quả mà nghiên cứu mang lại

Vào tháng 6 năm 2023, trong một bài đăng có tựa đề “An example of an advanced sensor-based car automation system using Raspberry Pi with MACHINE LEARNING in Python source codes for real-times projects” [2], trên mạng xã hội Linkedln, tác giả Harisha Lakshan Warnakulasuriya đã đề cập đến việc kết nối giữa cảm biến và phần mềm dựa theo thời gian thực

1.2.2 Tình hình trong nước

Năm 2013, nhận thức được tầm quan trọng của việc giảng dạy kết hợp với sử dụng mô hình, ThS Châu Quang Hải tại trường Đại học Sư Phạm Kỹ Thuật TP.HCM đã tiến hành nghiên cứu và đề xuất đề tài nghiên cứu khoa học “Mô phỏng hệ thống EDC” để tạo ra một đĩa CD mô phỏng lại hệ thống EDC (Electronic Diesel Control – Hệ thống phun dầu điện tử) [3], giúp sinh viên có thể dễ dàng nghiên cứu cấu tạo và nguyên lý của hệ thống Thiết kế trên đĩa CD giúp việc trao đổi giữa các người dùng dễ dàng hơn

Việc áp dụng các nội dung Multimedia vào việc giảng dạy trong hệ thống điện ô tô ở nước ta còn hạn hẹp Tháng 11, năm 2013, ThS Đinh Tấn Ngọc của trường Đại học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh đã tiến hành đề tài nghiên cứu “Ứng dụng MULTIMEDIA mô phỏng các hệ thống nhiên liệu trong động cơ Diesel bằng phần phần mềm Flash” [4] Đề tài đã bổ sung được nguồn tài liệu giảng dạy cho bộ môn thực tập động cơ Diesel thêm sinh động, trực quan với những hình ảnh và video thực tế, giúp cho công tác dạy và học được tốt hơn

Tháng 10 năm 2015, ThS Lê Khánh Tân đã thực hiện đề tài “Nghiên cứu, thiết kế, chế tạo thử nghiệm phần mềm chẩn đoán PAN của hệ thống điện điều khiển động cơ” [5] Đề tài đã chế tạo ra được mô hình để chẩn đoán PAN của hệ thống điện điều khiển

Trang 22

động cơ, góp phần làm nâng cao hiệu quả giảng dạy và kỹ năng thực hành chẩn đoán của sinh viên Kế thừa thành công của đề tài trước, ThS Lê Khánh Tân tiếp tục thực hiện đề tài nghiên cứu chế tạo mô hình ứng dụng IOT trong việc thu thập dữ liệu trên ô tô vào năm 2019 [6] Đề tài đã rất thành công khi sử dụng kết hợp Arduino và các nền tảng của LabVIEW cho ra kết quả là một board mạch thu thập dữ liệu không dây và có thể hiển thị lên máy tính

Gần đây, tháng 7 năm 2023, nhóm hai bạn Lâm Duy Huy và Trần Vũ Hảo thực hiền đề tài tốt nghiệp mang tên “Nghiên cứu, thiết kế và chế tạo mô hình thực tập điện tử cơ bản trên ô tô” [7] Đề tài giúp sinh viên có thể thực hành ngay sau khi được học các lý thuyết về mạch điện, điều này giúp sinh viên quan sát trực quan hơn, nắm vững và ghi nhớ tốt hơn các kiến thức đã học, còn được trang bị các kỹ năng thực hành, phán đoán

Qua những đề tài nghiên cứu ở trên, có thể thấy được rằng việc áp dụng mô hình vào việc giảng dạy là một vấn đề đáng được quan tâm và đầu tư nhiều hơn Tuy nhiên, các công trình nghiên cứu trên mặc dù đã đưa ra được những giải pháp, áp dụng được nhiều kỹ thuật nhưng vẫn còn chưa khai thác hết được tiềm năng của phương pháp giảng dạy này Nắm bắt được điều đó, nhóm đã nghiên cứu và tìm hiểu, tiến hành đề tài có thể kết nối được giữa phần mềm máy tính và thiết bị phần cứng thông qua các phương thức giao tiếp ngoại vi, đồng thời tích hợp được nội dung giảng dạy để giúp cho việc truyền tải kiến thức đi đôi với thực hành, giúp việc học về cảm biến – cơ cấu chấp hành trực quan hơn, dễ tiếp cận với sinh viên hơn, cho sinh viên cái nhìn gần với thực tế hơn về các hệ thống trên xe cũng như các vấn đề mà những hệ thống sẽ gặp phải

1.3 Mục tiêu của đề tài

- Tìm hiểu cơ sở lý thuyết phần mềm Visual Studio Windows Forms để xây dựng phần mềm trên hệ điều hành Windows Tiến hành mô phỏng các chức năng của phần mềm và phần cứng trước khi tiến hành thực tế

- Lưu trữ dữ liệu sinh viên giúp giảng viên dễ dàng quản lý và kiểm tra học tập - Xây dựng được phần mềm hỗ trợ việc giảng dạy của giáo viên và giao tiếp được với phần cứng để giúp cho việc giảng dạy được trực quan hơn

Trang 23

- Thư viện bài học với các bài giảng cơ bản về các cảm biến – cơ cấu chấp hành hệ thống điều khiển động cơ trên ô tô, hỗ trợ cho việc giảng dạy Giảng viên có thể bổ sung hoặc thay thế nội dung bài học, thực hành cho phù hợp với thực tế giảng dạy

1.4 Đối tượng và phạm vi nghiên cứu

Trong đề tài này, nhóm tập trung nghiên cứu các đối tượng: - Phần mềm Visual Studio Windows Form

- Arduino và cách giao tiếp giữa phần mềm và phần cứng (cảm biến và cơ cấu chấp hành)

- Giáo trình giảng dạy về điện tử cơ bản trên ô tô cho sinh viên

Phạm vi nghiên cứu của đề tài này sẽ tập trung vào việc thiết kế phần mềm Winforms có thể giao tiếp được với phần cứng, phần mềm gửi tín hiệu đến phần cứng, mạch điều khiển và mạch tạo pan, hiển thị chúng lên phần mềm

1.5 Phương pháp tiếp cận và nghiên cứu 1.5.1 Phương pháp tiếp cận

Để đạt được mục tiêu của đề tài, phương pháp tiếp cận của nhóm sẽ gồm:

- Nghiên cứu những kiến thức về ngôn ngữ lập trình C# được dùng trong WinForms để tạo ra một phần mềm có những tính năng cơ bản trong việc học hành và luyện tập

- Áp dụng các kiến thức về cảm biến, cơ cấu chấp hành hệ thống điều khiển động cơ ô tô đã học, sử dụng nguyên lý hoạt động của nhóm làm phần cứng, từ đó thiết kế phần mềm, sau đó kết hợp phần mềm với phần cứng

- Tìm hiểu về cách thiết lập lưu trữ phần mềm chẩn đoán

- Nghiên cứu các kiến thức khi chẩn đoán, xử lý lỗi của mạch điện, và xây dựng giáo án bài học

Trang 24

1.5.2 Phương pháp nghiên cứu

- Sử dụng tài liệu từ các nguồn trên Internet để sử dụng phần mềm WinForms - Tham khảo các tài liệu, giáo án từ thư viện, Internet để xây dựng giao diện, tính năng phần mềm

- Kết hợp với nhóm làm phần cứng để tạo ra sản phẩm hoàn chỉnh

1.6 Nội dung nghiên cứu

- Cơ sở lý thuyết về phần mềm Visual Studio Windows Form - Cơ sở lý thuyết về phần mềm Arduino

- Phương pháp giao tiếp giữa phần mềm Winform và Arduino thông qua SerialPort - Thiết lập giao diện phần mềm, cơ sở dữ liệu

- Thử nghiệm nhiều lần và đánh giá hiệu quả mà phần mềm mang lại

1.7 Các nội dung chính trong đề tài

Đề tài gồm 5 chương:

Chương 1: Tổng quan Chương 2: Cơ sở lý thuyết

Chương 3: Thiết kế phần mềm chẩn đoán các cảm biến – cơ cấu chấp hành hệ thống

điều khiển động cơ được biên soạn bằng Visual Studio Windows Forms

Chương 4: Kết quả và đánh giá Chương 5: Kết luận và kiến nghị

Trang 25

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu về Visual Studio và Windows Forms

2.1.1 Visual Studio

Visual Studio được thiết lập vào năm 1997 và thuộc quyền sở hữu bởi Microsoft, tập đoàn này đã cho ra mắt hai phiên bản của Visual Studio là Professional và Enterprise Lúc ban đầu, phần mềm này có tên là Project Boston, nhưng sau đó được đổi tên lại vì được tích hợp thêm các công cụ phát triển và đóng gói sản phẩm duy nhất Trải qua quãng thời gian dài với nhiều phiên bản khác nhau, Visual Studio được chính thức phát hành vào tháng 7 năm 2015

Visual Studio là một môi trường phát triển tích hợp (Integrated Development Environment - IDE), được sản xuất bởi Microsoft Nó cung cấp cho người lập trình một bộ công cụ để phát triển các ứng dụng phần mềm cho nhiều nền tảng, bao gồm Windows, web, di động và đám mây

Visual Studio cung cấp nhiều tính năng hỗ trợ lập trình viên trong quá trình phát triển ứng dụng, bao gồm các trình biên tập mã, gỡ rối, kiểm tra lỗi, xây dựng, triển khai và quản lý mã nguồn Visual Studio hỗ trợ nhiều ngôn ngữ lập trình, bao gồm C#, Visual Basic, C++, JavaScript, TypeScript, Python, Ruby, và nhiều ngôn ngữ khác Visual Studio là một trong những môi trường phát triển phần mềm phổ biến nhất trên thế giới và được sử dụng rộng rãi trong cộng đồng lập trình viên

Trang 26

2.1.2 Visual Studio Windows Forms

Visual Studio Windows Forms là một công cụ lập trình hỗ trợ phát triển ứng dụng Windows Desktop WinForms là viết tắt của Windows Forms, là một phần của Microsoft NET Framework WinForms cung cấp một thư viện các thành phần giao diện người dùng (UI – User Interface) được xây dựng sẵn, giúp người lập trình có thể dễ dàng tạo ra các ứng dụng Windows với các tính năng giao diện đồ họa phức tạp

WinForms cung cấp cho nhà phát triển một số lợi ích như tính đồng nhất của giao diện người dùng, hỗ trợ kéo và thả để dễ dàng thêm các thành phần, và khả năng tương thích với các phiên bản Windows khác nhau Nó cũng cung cấp các công cụ để tạo ra các ứng dụng tương tác với cơ sở dữ liệu, xử lý đa luồng, và tích hợp các thư viện

WinForms được phát triển bằng ngôn ngữ lập trình C# (C Sharp) và được sử dụng trong môi trường phát triển NET Framework C# là ngôn ngữ lập trình hiện đại, đa nền tảng và được thiết kế để phát triển ứng dụng cho Windows, web, di động C# có cú pháp tương tự như Java và C++, nhưng có thêm một số tính năng mới và được cải tiến để giảm thiểu lỗi lập trình và tăng tính bảo mật Với Winforms, nhà phát triển có thể sử dụng C# để xây dựng các ứng dụng đồ họa mạnh mẽ và chuyên nghiệp cho Windows

Một số thành phần chính của WinForms bao gồm các control như TextBox, Button, Label, ComboBox, ListBox, DataGridView, ListView, ProgressBar, TabControl, và MenuStrip, cùng với các event và delegate để xử lý các sự kiện như Click, DoubleClick, KeyPress, MouseMove, và FormClosing [8] Ngoài ra, Winforms còn cung cấp các tính năng cho phép thêm hình ảnh, âm thanh và video vào ứng dụng, cũng như cho phép định dạng và hiển thị dữ liệu

Tóm lại, Visual Studio Winforms là một nền tảng phát triển ứng dụng đồ họa mạnh mẽ cho Windows, cung cấp cho nhà phát triển nhiều công cụ và tính năng để tạo ra các ứng dụng tương tác người dùng đa dạng và chuyên nghiệp

Trang 27

Hình 2.2 Giao diện làm việc của Visual Studio Windows Form 2022 2.1.3 Các thành phần để người dùng làm việc của WinForms

Hình 2.3 Giao diện cửa sổ Source Code Winforms

Trang 28

là nơi ta có thể viết và chỉnh sửa mã nguồn của ứng dụng, người dùng có thể thêm các đoạn mã, xử lý sự kiện, tạo lớp, khai báo biến, gọi các phương thức, và thực hiện các tác vụ lập trình khác Sử dụng các tính năng của trình soạn thảo để tăng hiệu suất và sắp xếp mã nguồn một cách dễ dàng

Cửa sổ Source Code Window cung cấp các tính năng như tô sáng cú pháp (syntax highlighting), gợi ý mã (code suggestion), kiểm tra lỗi cú pháp (syntax error checking), và điều hướng nhanh giữa các phần của mã nguồn Nó cũng cho phép người dùng thực hiện các tác vụ như tìm kiếm và thay thế, đánh dấu (bookmark) các đoạn mã quan trọng, ghi chú giải thích trong quá trình soạn thảo code và thực hiện kiểm tra đơn vị (unit testing)

Phía bên phải của ảnh minh họa trên là cửa sổ Solution Explorer, nơi hiển thị cấu trúc cây của Solution mà người dùng đang làm việc và cho phép ta tạo mới hay duyệt qua các dự án, thư mục và tệp bằng cách click chọn các dự án mà ta muốn kiểm tra trong Solution này Khi đặt chuột lên các cạnh của cửa sổ, phần mềm cho phép ta có thể mở rộng và thu gọn các nút để xem cấu trúc chi tiết của các thành phần

Hình 2.4 Giao diện cửa sổ Solution Explorer

Trang 29

- Tạo mới dự án và tệp tin: Tạo mới các dự án, lớp, giao diện người dùng, các tệp tin mã nguồn và tài nguyên trong solution

- Tạo và quản lý các thư mục: Tạo và quản lý các thư mục để sắp xếp và nhóm các tệp tin liên quan trong Solution

- Chỉnh sửa và xóa tệp tin: Mở và chỉnh sửa mã nguồn, tệp tin thiết kế giao diện và tài nguyên khác trực tiếp từ cửa sổ Solution Explorer Ta cũng có thể xóa các tệp tin không cần thiết trong Solution

- Quản lý thuộc tính và tài nguyên: Chỉnh sửa các thuộc tính của các thành phần, quản lý tài nguyên (như hình ảnh, biểu đồ, văn bản) và liên kết chúng với dự án của mình

- Xây dựng và biên dịch: Xây dựng và biên dịch các dự án trong Solution từ cửa sổ Solution Explorer, cho phép kiểm tra lỗi, tạo tệp thực thi và các tệp đầu ra khác

Cửa sổ Solution Explorer giúp người soạn thảo tổ chức và quản lý mã nguồn, tài nguyên và các thành phần của ứng dụng WinForms một cách thuận tiện Nó là một công cụ quan trọng để tạo và phát triển các dự án trong môi trường phát triển Visual Studio

Trang 30

Bên cạnh cửa sổ Source Code, cửa sổ Design (hay còn gọi là "Form Designer" hoặc "Visual Designer") trong WinForms là cửa sổ làm việc chính còn lại, nơi ta thiết kế giao diện người dùng của ứng dụng Nó cung cấp một giao diện trực quan cho phép ta kéo và thả các điều khiển (controls), tạo ra các bố cục (layouts) cho các cửa sổ và các thành phần khác trong ứng dụng

Khi mở một Form (cửa sổ) hoặc UserControl (điều khiển người dùng) trong cửa sổ Design, ta có thể:

- Thêm và sắp xếp các điều khiển: Chọn từ danh sách các điều khiển có sẵn (như nút, hộp văn bản, danh sách, hình ảnh ) và kéo chúng vào cửa sổ Design Ta được quyền di chuyển, thay đổi kích thước và sắp xếp các điều khiển để tạo bố cục mong muốn

- Thiết kế bố cục: Sử dụng các công cụ như container controls (Panel, GroupBox) và layout controls (TableLayoutPanel, FlowLayoutPanel) để tạo bố cục phù hợp với yêu cầu thiết kế của ứng dụng

- Đặt thuộc tính (Properties): Chỉnh sửa các thuộc tính của các điều khiển và cửa sổ, như kích thước, màu sắc, vị trí, chữ, hình ảnh từ cửa sổ Properties

- Xử lý sự kiện (Event): Gán các xử lý sự kiện cho các điều khiển thông qua giao diện người dùng, chẳng hạn như click chuột, nhập liệu, thay đổi giá trị Điều này giúp ta quản lý hành vi và tương tác của ứng dụng với người dùng

Cửa sổ Toolbox, là công cụ quan trọng trong Visual Studio Nó cung cấp các điều khiển (Controls) có sẵn cho người dùng dễ dàng sử dụng

Hình 2.6 Giao diện cửa sổ Toolbox

Trang 31

Khi mở cửa sổ Toolbox, ta sẽ thấy một danh sách các hộp công cụ chứa các điều khiển phổ biến như nút (Button), hộp văn bản (TextBox), danh sách (ListBox), hộp kiểm (CheckBox), thanh trượt (Slider), hình ảnh và nhiều hơn nữa Người dùng chỉ cần kéo và thả các điều khiển từ cửa sổ Toolbox vào cửa sổ Design để tạo giao diện người dùng Cửa sổ Toolbox là một công cụ quan trọng giúp truy cập và sử dụng các điều khiển để tạo

giúp ta tiết kiệm thời gian và công sức trong quá trình phát triển ứng dụng của mình Dưới đây là mô tả cụ thể về tính năng của các Toolbox chính được sử dụng trong đề tài:

- Button (Nút nhấn): Button là một điều khiển quan trọng trong Windows Forms Nó thường được sử dụng để kích hoạt một hành động cụ thể trong ứng dụng khi người dùng nhấn vào nút Ta có thể tùy chỉnh văn bản hiển thị trên nút và thêm các xử lý sự kiện để xử lý các tương tác từ người dùng

- TextBox (Ô văn bản): TextBox cho phép người dùng nhập liệu từ bàn phím và cung cấp các phương thức để truy cập và sửa đổi văn bản trong ô

tĩnh cho người dùng Nó không cho phép người dùng tương tác trực tiếp với nó, nhưng nó có thể cung cấpcthôngctin hữucích hoặc chỉ dẫn cho người dùng Ta có thể định dạng văn bản, màu sắc và kích thước của Label để phù hợp với thiết kế giao diện của phần mềm

- ListBox (Danh sách): ListBox là một điều khiển cho phép hiển thị một danh sách các mục cho người dùng Người dùng có thể chọn một hoặc nhiều mục trong danh sách ListBox cung cấp các sự kiện để xử lý các thao tác của người dùng như chọn mục, xóa mục và kéo thả

- SerialPort: SerialPort là một thành phần cho phép giao tiếp với các thiết bị ngoại vi thông qua cổng nối tiếp (Serial Port) Sử dụng SerialPort để kết nối và giao tiếp với các

Trang 32

- Panel (Bảng điều khiển): Panel là một điều khiển được sử dụng để tạo ra một vùng chứa hoặ cnhóm các điều khiển khác, cung cấp khả năng tạo ra các khu vực hoặc phân đoạn trong giao diện người dùng để sắp xếp và quản lý các điều khiển con

- PictureBox (Khung hình ảnh): PictureBox dùng để hiển thị hình ảnh trong ứng dụng, có thể gán hình ảnhctừ các nguồn như tệp tin, URL hoặc dữ liệu nhị phân Nó cung cấp các thuộc tính để điều chỉnh kích thước, vị trí và cách hiển thị hình ảnh trong PictureBox

- CheckedListBox (Danh sách kiểm tra): CheckedListBox là một điều khiển tương tự ListBox nhưng cho phép người dùng chọn nhiều mục trong danh sách bằng cách sử dụng các hộp kiểm Nó cho phép người dùng chọn hoặc bỏ chọn các mục từ danh sách và cung cấp các sự kiện để xử lý các thay đổi trong danh sách kiểm tra

Cửa sổ nằm ở bên phải là cửa sổ Properties (Thuộc tính), nơi hiển thị danh sách các thuộc tính của các điều khiển hoặc thành phần được chọn trong cửa sổ Design

Hình 2.7 Giao diện cửa sổ Properties

Trang 33

Khi người dùng chọn một điều khiển trong cửa sổ Design, các thuộc tính của nó sẽ được hiển thị trong cửa sổ Properties Ta có thể chỉnh sửa các giá trị của các thuộc tính này để tùy chỉnh hành vi và giao diện của điều khiển

Các tính năng chính của cửa sổ Properties:

- Hiển thị các thuộc tính: Cửa sổ Properties liệt kê tất cả các thuộc tính có sẵn của điều khiển được chọn Điều này bao gồm các thuộc tính như kích thước, vị trí, màu sắc, chữ, hình ảnh, dữ liệu liên quan và nhiều hơn nữa

- Chỉnh sửa giá trị: Thay đổi giá trị của các thuộc tính bằng cách nhập trực tiếp vào ô thông tin hoặc sử dụng các điều khiển như danh sách thả xuống, hộp kiểm, nút chọn màu, v.v

- Xem thông tin mô tả: Khi chọn một thuộc tính, cửa sổ Properties hiển thị thông tin mô tả về thuộc tính đó, giúp hiểu rõ hơn về ý nghĩa và cách sử dụng của thuộc tính đó

- Gom nhóm thuộc tính: Các thuộc tính có thể được nhóm lại trong các nhóm để giúp ta tìm kiếm và quản lý thuộc tính dễ dàng hơn

2.2 Giới thiệu về Arduino

2.2.1 Phần mềm Arduino IDE

Arduino có nguồn gốc ở Ý vào thế kỷ thứ 9 và được đặt theo tên của vị vua của đất nước đó, Vua Arduino Arduino được chính thức công bố vào năm 2005 như một công cụ học tập dành cho sinh viên Một trong những nhà phát triển Arduino tại Viện Thiết kế Tương tác Ivrea Arduino là một mã nguồn mở được sử dụng để xây dựng các ứng dụng điện tử tương tác với nhau hoặc với môi trường Nó có thể kết nối với máy tính hoặc tự kết nối với nhau

Arduino là một nền tảng phát triển thiết bị điện tử được thiết kế để dễ dàng sử dụng, giúp cho người dùng có thể tạo ra các thiết bị điện tử và các ứng dụng IoT (Internet of Things) một cách nhanh chóng và dễ dàng Arduino gồm các module phần cứng có thể được lắp ráp với nhau để tạo ra các mạch điện tử đơn giản hoặc phức tạp, và được lập

Trang 34

Mỗi board Arduino đều có một bộ vi xử lý, các cổng kết nối Input/Output và các module phần cứng khác như giao tiếp USB, Ethernet, Wifi, Bluetooth, cảm biến, màn hình, đèn LED, motor, và nhiều thứ khác Người dùng có thể lập trình Arduino thông qua các ngôn ngữ lập trình như C/C++ hoặc các ngôn ngữ lập trình khác dựa trên đó Arduino được sử dụng rộng rãi trong các ứng dụng IoT, các dự án điện tử tại nhà hoặc trường học và cả trong các ứng dụng thực tiễn như trong đo lường, kiểm soát, quản lý tài nguyên Arduino là một nền tảng mạnh mẽ và đa dụng, giúp người dùng thực hiện các ứng dụng điện tử của riêng mình

Hình 2.8 Giao diện phần mềm Arduino IDE

2.2.2 Board Arduino Mega

Arduino Mega 2560 là một trong những board phổ biến và mạnh mẽ nhất trong hệ thống Arduino Nó cung cấp nhiều chân kết nối và tài nguyên phong phú, thường được dùng trong các dự án phức tạp và đa dạng

Trang 35

Hình 2.9 Board Arduino Mega2560

Dưới đây là một số thông tin cơ bản về board Arduino Mega:

- Vi xử lý: Arduino Mega được trang bị vi xử lý ATmega2560 Đây là một vi xử lý 8-bit với tốc độ 16 MHz, cho phép xử lý nhanh chóng các tác vụ và điều khiển ngoại vi khác

- Chân kết nối: Arduino Mega có tổng cộng 54 chân kết nối digital (đầu vào và đầu ra), trong đó có 15 chân có thể sử dụng làm đầu ra PWM Ngoài ra, nó còn có 16 chân kết nối analog và 4 chân UART (Serial), 1 chân I2C và 1 chân SPI

- Bộ nhớ: Arduino Mega có bộ nhớ Flash 256 KB, trong đó khoảng 8 KB được sử dụng cho việc lưu trữ chương trình Nó cũng có bộ nhớ SRAM 8 KB và EEPROM 4 KB, cho phép lưu trữ và truy cập dữ liệu trong quá trình hoạt động

- Nguồn điện: Board hỗ trợ nguồn điện từ 7 đến 12V thông qua cổng nguồn DC hoặc từ 5V thông qua cổng USB Nguồn điện được cung cấp cho các ngoại vi thông qua các chân kết nối

- Hỗ trợ phần mềm: Arduino Mega được hỗ trợ bởi Arduino IDE, môi trường lập trình dễ sử dụng và phổ biến Người dùng có thể viết mã, tải lên và chạy chương trình trên board Arduino Mega thông qua giao diện đơn giản của IDE

Trang 36

Nó được sử dụng rộng rãi trong lĩnh vực điều khiển robot, hệ thống tự động hóa, đèn LED, máy in 3D và nhiều ứng dụng khác

2.3 Cơ sở dữ liệu SQLite

Cơ sở dữ liệu (database) là hệ thống bao gồm rất nhiều thông tin, dữ liệu được xây dựng theo một cấu trúc nhất định nhằm đáp ứng nhu cầu khai thác, sử dụng của nhiều người hay chạy nhiều chương trình cùng một lúc Cơ sở dữ liệu thường có những quy tắc và điều khiện tích hợp để duy trì tính nhất quán của cơ sở dữ liệu

Hình 2.10 Cấu trúc cơ sở dữ liệu

SQLite là một hệ quản trị cơ sở dữ liệu hay còn gọi là hệ thống cơ sở dữ liệu quan hệ nhỏ gọn, khác với các hệ quản trị khác như MySQL, SQL Server, Ocracle, PostgreSQL… SQLite là một thư viện phần mềm mà triển khai một SQL Database Engine truyền thống, không cần mô hình client-server nên rất nhỏ gọn SQLite được sử dụng vào rất nhiều chương trình từ desktop đến mobile hay là website Nó không phải là cấu hình nên không cần cài đặt Với SQLite database được lưu trữ trên một tập tin duy nhất Chính vì lẽ đó, nhóm đã quyết định chọn SQLite làm cơ sở liệu lưu trữ thông tin đăng nhập và tiến độ học tập của sinh viên

Trang 37

Hình 2.11 Giao diện tài khoản SQLite 2.4 Giao tiếp UART

UART (Universal Asynchronous Receiver – Transmitter) là một giao diện hoạt động trong việc truyền và nhận dữ liệu trong hệ thống điện tử Nó được sử dụng để giao tiếp giữa các thành phần điện tử, chẳng hạn như vi xử lý, vi điều khiển, cảm biến và thiết bị ngoại vi

Ngày đăng: 07/06/2024, 16:30

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w