Đồ án HCMUTE: Xây dựng hệ thống quản lý và giám sát hành trình sử dụng ASP.NET Core và IoT

Khám phá đồ án HCMUTE về hệ thống quản lý và giám sát hành trình sử dụng ASP.NET Core và IoT, ứng dụng công nghệ hiện đại trong quản lý.

Chuyên ngành

Công Nghệ Phần Mềm

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2019

92
6
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. PHẦN MỞ ĐẦU

1.1. Tính cấp thiết của đề tài

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

1.3. Cách tiếp cận và phương tiện nghiên cứu

1.4. Kết quả dự kiến đạt được

2. PHẦN NỘI DUNG

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

1.1. Tổng quan về .NET Core

1.2. Đặc điểm của .NET Core

1.3. Một số lợi ích khi sử dụng .NET Core so với .NET Framework

1.4. Tổng quan về ASP.NET MVC Core

1.4.1. Giới thiệu về mô hình MVC

1.4.2. Các thành phần của mô hình MVC

1.4.3. Hoạt động của mô hình MVC

1.4.4. Ưu điểm – Nhược điểm của MVC

1.5. Giới thiệu về ASP.NET Core

1.6. Các thành phần cơ bản trong ASP.NET Core

1.7. Tổng quan về thiết bị GPS

1.8. Tổng quan về Module Sim808

1.9. Tổng quan về Google MAP API

1.10. Tổng quan về SignalR

3. CHƯƠNG 2: PHÂN TÍCH HIỆN TRẠNG VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU

2.1. Nhận diện tác nhân và chức năng trong sơ đồ Use case

2.2. Mô tả chi tiết từng chức năng và từng tác nhân

2.2.1. Mô tả tác nhân

2.2.2. Mô tả chức năng

2.2.3. Chi tiết các bảng dữ liệu

2.3. Đặc tả UseCase

2.4. Thiết kế Class Diagram

2.4.1. Sơ đồ Class Diagram Controllers

2.4.2. Sơ đồ Class Diagram Data

2.4.3. Sơ đồ Class Diagram Hubs

2.4.4. Sơ đồ Class Diagram Models

2.4.5. Sơ đồ Class Diagram Services

2.4.6. Sơ đồ Class Diagram ViewModels

2.5. Thiết kế lược đồ tuần tự

4. CHƯƠNG 3: GIAO DIỆN VÀ CÁC CHỨC NĂNG

3.1. Màn hình chuyển đổi

3.2. Mô tả chi tiết các trang

3.2.1. Trang đăng nhập

3.2.2. Màn hình trang chủ

3.2.3. Màn hình trang tra cứu hành trình

3.2.4. Màn hình trang thông tin tài khoản 1

3.2.5. Trang thông tin tài khoản 2

3.2.6. Trang danh sách công ty

3.2.7. Trang sửa thông tin công ty

3.2.8. Trang danh sách xe tương ứng của công ty

3.2.9. Trang thêm công ty

3.2.10. Trang danh sách xe

3.2.11. Trang thêm xe

3.2.12. Trang sửa thông tin xe

3.2.13. Trang quản lý tài xế

3.2.14. Trang danh sách tài

3.2.15. Trang tạo tài xế

3.2.16. Trang sửa tài xế

PHẦN KẾT LUẬN

4.1. Kết quả đạt được

4.2. Nhược điểm

4.3. Hướng phát triển lên Luận Văn

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Hệ thống Giám sát Hành trình bằng ASP

Đề tài nghiên cứu tập trung vào việc xây dựng một Hệ thống giám sát hành trình sử dụng ASP.NET CoreIoT. Hệ thống này nhằm mục đích theo dõi và quản lý hành trình của phương tiện một cách hiệu quả. Việc sử dụng ASP.NET Core cho phép xây dựng một ứng dụng web mạnh mẽ, đa nền tảng và dễ bảo trì. Công nghệ IoT, cụ thể là thiết bị GPS tích hợp, cung cấp dữ liệu vị trí thực tế thời gian. Hệ thống quản lý hành trình bằng ASP.NET Core sẽ xử lý và hiển thị dữ liệu này một cách trực quan.

1.1 Kiến trúc Hệ thống và Tích hợp Thiết bị IoT

Kiến trúc hệ thống bao gồm ba thành phần chính: Thiết bị IoT (Board GPS KienViet sử dụng Module Sim808), phần backend sử dụng ASP.NET Core và giao diện người dùng web. Thiết bị IoT thu thập dữ liệu vị trí (Theo dõi vị trí thời gian thực) và truyền dữ liệu về server thông qua kết nối mạng di động (Truyền dữ liệu IoT). ASP.NET Core đóng vai trò là server, xử lý dữ liệu nhận được từ thiết bị IoT, lưu trữ dữ liệu vào cơ sở dữ liệu (Hệ thống quản lý dữ liệu hành trình), cung cấp API ASP.NET Core cho IoT cho việc giao tiếp giữa các thành phần. Việc tích hợp thiết bị IoT được thực hiện cẩn thận để đảm bảo độ chính xác và độ tin cậy cao. Quản lý thiết bị IoT là một phần quan trọng của hệ thống, giúp giám sát trạng thái hoạt động của các thiết bị.

1.2 Xử lý và Phân tích Dữ liệu Hành trình

Dữ liệu vị trí thu thập được từ thiết bị IoT được xử lý và phân tích dữ liệu hành trình trên server ASP.NET Core. Hệ thống hỗ trợ các chức năng như giám sát hành trình thời gian thực, tính toán quãng đường, thời gian di chuyển, tốc độ trung bình. Dữ liệu được lưu trữ trong cơ sở dữ liệu SQL Server và IoT, cho phép truy vấn và tạo báo cáo. Báo cáo hành trình cung cấp thông tin tổng quan về hành trình của phương tiện, bao gồm bản đồ hành trình, thống kê, biểu đồ. Bản đồ hành trình giúp người dùng trực quan hóa hành trình của phương tiện trên bản đồ. Hệ thống còn có khả năng phát hiện các trường hợp đi lệch hành trình đã được lập trình sẵn. Xử lý dữ liệu IoT là một công đoạn quan trọng, đảm bảo dữ liệu chính xác và đầy đủ.

1.3 Giao diện Người dùng và Ứng dụng Web Giám sát Hành trình

Giao diện người dùng được xây dựng dựa trên ASP.NET Core MVC, cung cấp một Dashboard giám sát hành trình trực quan và dễ sử dụng. Người dùng có thể theo dõi vị trí xe thời gian thực trên bản đồ, xem lịch sử hành trình, tạo báo cáo, quản lý thiết bị, tài xế... Ứng dụng web giám sát hành trình được thiết kế thân thiện, đáp ứng nhu cầu của người dùng. Ứng dụng di động giám sát hành trình (nếu có) sẽ được phát triển sau. Hệ thống tích hợp Google Map API để hiển thị bản đồ và thông tin vị trí. An ninh hành trình được đảm bảo thông qua cơ chế bảo mật của ASP.NET Core và quản lý quyền truy cập.

1.4 Triển khai và Bảo mật

Hệ thống được triển khai trên nền tảng ASP.NET Core, có thể chạy trên nhiều hệ điều hành khác nhau. Việc triển khai hệ thống giám sát hành trình được thực hiện một cách cẩn thận để đảm bảo tính ổn định và hiệu quả. Bảo mật dữ liệu hành trình là một vấn đề quan trọng cần được chú trọng. Hệ thống sử dụng các biện pháp bảo mật để ngăn chặn truy cập trái phép và đảm bảo tính toàn vẹn của dữ liệu. Bảo mật dữ liệu hành trình được thực hiện thông qua việc mã hóa dữ liệu, kiểm soát truy cập và sử dụng các giao thức bảo mật. Cơ sở dữ liệu hành trình được bảo vệ bằng các biện pháp an ninh mạng tiên tiến.

01/02/2025

Trích đoạn nội dung tài liệu

Chương 1 CƠ SỞ LÝ THUYẾT 1.1 Tổng quan về .NET Core là một nền tảng mã nguồn mở, framework đa nền tảng (cross – platform) cho việc xây dựng và kết nối các ứng dụng web hiện đại chẳng hạn như: ứng dụng web, Internet of Thing, Mobile Backend – Web API.NET Core cung cấp một kiến trúc để tối ưu hóa việc xây dựng các ứng dụng đám mây (microsoft azure) hoặc các ứng dụng độc lập. Bạn có thể phát triển ứng dụng .NET Core đa nền tảng (Window, Mac, Linux).2 Đặc điểm của .NET Core có những đặc điểm sau:  Cross-platform: chạy trên các hệ điều hành Windows, macOS và Linux.  Consistent across architectures: chạy code với cùng một behavior trên nhiều kiến trúc khác nhau, bao gồm: x64, x86 và ARM  Command-line tool  Flexible deployment  Compatible  Open source  Supported by Microsoft 1.3 Một số lợi ích khi sử dụng .NET Core so với .NET Framework: - Đa nền tảng, chạy trên macOS, Linux và Windows. - Nâng cao hiệu suất.

- Tạo phiên bản side – by – side - Các API mới.2 Tổng quan về ASP.NET MVC Core: 1.1 Giới thiệu về mô hình MVC - Khi các phần mềm ứng dụng ngày càng phát triển lớn mạnh và đa dạng thì vấn đề thiết kế kiến trúc cho phần mềm cũng trở nên phức tạp hơn. Những ứng dụng web giờ đây cũng đã phát triển đến một tầm cao mới, chúng không còn là một ứng dụng web thông thường với chức năng hiện thị thông tin mà là những hệ thống thông tin hỗ trợ những trang web tương tác với người dùng. Nhiều giải pháp thiết kế kiến trúc hệ thống được đưa ra với mục đích làm cho hệ thống linh hoạt, mềm dẻo, dễ phát triển và tồn tại lâu dài. Trong đó, giải pháp thiết kế theo mô hình kiến trúc MVC được Trygve Reenskaug đề xuất vào những năm 70 của thế kỷ 20 tỏ ra rất hiệu quả.

- Mô hình MVC là một kiến trúc phần mềm hay mô hình thiết kế được sử dụng trong kỹ thuật phần mềm. Nó giúp cho các nhà phát triển tách ứng dụng của họ ra ba phần khác nhau Model, View và Controller. Mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với các thành phần khác.1Các thành phần của mô hình MVC: Hình 1.1 - Mô hình MVC - Model : Đây là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy xuất database, đối tưởng mô tả dữ liệu như các Class, hàm xử lý,… 8 do an - View: Đảm nhận việc hiện thị thông tin, tương tác với người dùng. - Controller: Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng những phương thức xử lý chung.2 Hoạt động của mô hình MVC: - Đây là một cách đơn giản để mô tả lại luồng sự kiện được xử lý trong MVC:  User tương tác với View, bằng cách click vào button, user gửi yêu cầu đi.

 Controller nhận và điều hướng chúng đến đúng phương thức xử lý ở Model.  Model nhận thông tin và thực thi các yêu cầu.  Khi Model hoàn tất việc xử lý, View sẽ nhận dữ liệu từ Model và Controller sẽ phản hồi lại người dùng.2 - Quy trình hoạt động của mô hình MVC 1.3 Ưu điểm – Nhược điểm của MVC: - Ưu điểm:  Các dự án có thể áp dụng ngay mô hình MVC mà không phụ thuộc môi trường, nền tảng xây dựng hay ngôn ngữ lập trình phát triển;  Quy hoạch các class/ function vào các thành phần riêng biệt Controller – Model – View, khi đó sẽ dễ dàng xây dựng – phát triển – quản lý – vận hành 9 do an và bảo trì một dự án, tạo sự rõ ràng, trong sáng trong quá trình phát triển dự án, kiểm soát được các luồng xử lý và tạo ra các thành phần xử lý nghiệp vụ chuyên biệt hóa.  Tạo thành mô hình chuẩn cho nhiều dự án, các chuyên gia sẽ tiếp cận – tìm hiểu những dự án đó một cách nhanh chóng và hiệu quả.

Nếu bạn nắm rõ mô hình MVC của một dự án nào đó, thì khi tiếp cận với một dự án khác mà bạn chưa từng biết hoặc tiếp xúc, nhưng nó lại được xây dựng với mô hình MVC thì sẽ không khó khăn gì mà cực kỳ dễ dàng. Học một nhưng có thể hiểu và sử dụng được mười.  Giúp các chuyên gia lập trình, nhà quản lý, nhà đầu tư, PM… có thể hiểu được dự án hoạt động ra sao hoặc giúp các lập trình viên dễ dàng quản lý – phát triển dự án. Nó không phải ngôn ngữ, nhưng khi họ cùng nhìn vào nó thì sẽ tự hiểu nó là gì, khi đó họ có thể trao đổi các yêu cầu và bàn bạc công việc.

 Đây là một mô hình chuẩn, nó tối ưu nhất hiện nay so với nhiều mô hình khác và được sử dụng trong nhiều dự án và nhiều lĩnh vực, đặc biệt trong công nghệ sản xuất ứng dụng – phần mềm. Các lập trình viên sử dụng mô hình chuẩn MVC để có thể dễ dàng phân phối và chuyển giao công nghệ.  Đây là mô hình đơn giản, xử lý những nghiệp vụ đơn giản, và dễ dàng triển khai với các dự án nhỏ. - Nhược điểm:  Yêu cầu về chuyên môn khá cao, có kiến thức vững về các mô hình chuẩn;Khó triển khai với những dự án yêu cầu phúc tạp hơn.

Hiện nay đang có một khái niệm mô hình mới đó là HMVC đang dần thay thế cho MVC.2 Giới thiệu về ASP.NET Core: 10 do an - ASP.NET Core là một framework mã nguồn mở, hiệu suất cao và đa nền tảng dùng để xây dựng các ứng dụng hiện đại có kết nối với Internet và dựa trên mô hình đám mây.NET Core được phát triển bởi tập đoàn Microsoft và cộng đồng lập trình viên.NET Core cũng là một framework kiểu module có khả năng thực thi trên framework .NET, Windows và .NET Core đa nền tảng.NET Core trong mô hình phát triển .NET Core còn được xem là sự kết hợp giữa ASP.NET MVC và ASP.NET Web API tạo thành một mô hình lập trình đơn. Mặc dù được xây dựng mới, ASP.NET Core vẫn có tính tương thích cao với ASP. Hơn nữa, các ứng dụng ASP.NET Core hỗ trợ kiểu phiên bản “side by side”, tức là cùng chạy trên một máy tính với việc lựa chọn nhiều phiên bản ASP.NET Core khác nhau. Điều này là không thể với các phiên bản ASP.NET trước kia.

Phiên bản ASP.NET Core mới nhất tính đến thời điểm này là ASP.NET Core, bạn có thể:  Xây dựng các ứng dụng web, các dịch vụ, ứng dụng IoT và các phần backend mobile. 11 do an  Sử dụng các công cụ phát triển ưa thích trên Windows, macOS và Linux.  Triển khai trên đám mây hoặc tại chỗ.NET Core hoặc .3 Các thành phần cơ bản trong ASP.NET Core: - Models: Các đối tượng Models là một phần của ứng dụng, các đối tượng này thiết lập logic của phần dữ liệu của ứng dụng. Thông thường, các đối tượng model lấy và lưu trạng thái của model trong cơ sở dữ liệu.

- Views: Views là các thành phần dùng để hiển thị giao diện người dùng. Thông thường, View được tạo dựa trên thông tin dữ liệu Models. - Controller: Controller là các thành phần dùng để quản lý tương tác người dùng, làm việc với Model và chọn View để hiện thị giao diện người dùng. Trong một ứng dụng MVC, View chỉ được dùng để hiển thị thông tin, Controller chịu trách nhiệm quản lý và đáp trả nội dung do người dùng nhập và tương tác với người dùng.

- Mô hình MVC giúp chúng ta tạo được các ứng dụng mà chúng phân tách rạch ròi các khía cạnh của ứng dụng (logic về nhập liệu, logic xử lý tác vụ và logic về giao diện). Mô hình MVC chỉ ra mỗi loại logic kể trên nên được thiết lập ở đầu trên ứng dụng. Logic giao diện thuộc về Views. Logic nhập liệu thuộc về Controller.

Và logic tác vụ (Business logic – là logic xử lý thông tin, mục đích chính của ứng dụng) thuộc về Model. Sự phân chia này giúp chúng ta giảm bớt được sự phức tạp của ứng dụng và chỉ tập trung vào mỗi khía cạnh cần được cài đặt ở mỗi thời điểm. Ví dụ như chúng ta chỉ cần tập trung vào giao diện mà không cần quan tâm đến logic xử lý thông tin của ứng dựng. - Sự phân tách rạch ròi ba thành phần của ứng dụng MVC còn giúp cho việc lập trình diễn ra song song.

Ví dụ như một lập trình viên làm việc với View, lập trình viên thứ hai làm cài đặt logic của Controller và lập trình viên thứ ba có thể tập trung vào logic tác vụ của Model tại cùng một thời điểm.4 So sánh giữa ASP.NET Core với ASP.NET: 12 do an - ASP.NET và ASP.NET Core là 2 frameword hỗ trợ các nhà phát triển các ứng dụng web dựa trên nền tảng .Net Framework khác nhau, tùy từng điều kiện thực tế, môi trường phát triển, team work, kinh nghiệm của lập trình viên hay vấn đề tài chính bạn có thể lựa chọn 1 trong 2 frameword để phát triển các ứng dụng của mình.NET là một frameword do Microsoft phát triển miễn phí trên nền tảng Window giúp hỗ trợ các nhà phát triển có thể tạo ra các websites và web applications dựa trên các ngôn ngữ C#, Visual Basic và HTML, CSS, JavaScript. Sau khi ra đời từ năm 2002, ASP.NET đã trải qua rất nhiều phiên bản, nó hỗ trợ nhiều framwork con để tạo ra các ứng dụng web như : Web Forms, ASP.NET MVC, and ASP.NET Web Pages và nhiều công nghệ kèm theo để làm cho các ứng dụng viết trên nó trở lên đa dạng và linh động hơn.NET Core là một framework mã nguồn mở, được Microsoft và các nhà phát triển tạo ra nhằm cung cấp các ứng dụng web hỗ trợ đa nền tảng chứ không chỉ trên hề điều hành Microsoft Windows thông thường như ASP. Được giới thiệu từ năm 2016, ASP.NET Core đang được kỳ vọng tạo ra những ứng dụng mới có hiệu xuất xử lý tốt hơn và ngày càng được hoàn thiện bởi sự chung sức của cộng đồng. - Một số điểm khác nhau cơ bản giữa ASP.NET và ASP.NET Core: Tiêu chí ASP.NET Core ASP.NET Lịch sử Phiên bản đầu tiên được giới thiệu vào Ra đời vào tháng 01/2002 ngày 27/06/2016 cùng với bản .Net Core cùng với sự giới thiệu của phiên bản đầu tiên.

Phát triển Microsoft và cộng đồng Microsoft Hệ điều hành Hỗ trợ trên các hệ điều hành Windows, Chỉ hỗ trợ Windows macOS, hoặc Linux Các công Hỗ trợ các công nghệ MVC, Web API và Hỗ trợ các công nghệ Web nghệ hỗ trợ SignalR, Entity Framework Core Forms, SignalR, MVC, Web API, WebHooks, Web Pages, Entity Framwork Hỗ trợ phiên Nhiều phiên bản trên một máy Một phiên bản trên một máy bản Công cụ phát Phát triển Asp.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Bài viết "Hệ thống quản lý và giám sát hành trình bằng ASP.NET Core và IoT" cung cấp cái nhìn sâu sắc về cách kết hợp công nghệ ASP.NET Core và Internet of Things (IoT) để xây dựng một hệ thống giám sát hành trình hiệu quả. Tác giả trình bày các phương pháp và công cụ cần thiết để phát triển hệ thống, từ việc thu thập dữ liệu đến việc phân tích và hiển thị thông tin. Những lợi ích mà hệ thống này mang lại bao gồm khả năng theo dõi thời gian thực, cải thiện hiệu suất quản lý và tối ưu hóa quy trình vận hành.

Nếu bạn muốn tìm hiểu thêm về các ứng dụng IoT trong việc điều khiển thiết bị, hãy tham khảo bài viết "Đồ án hcmute điều khiển thiết bị điện qua wifi trên điện thoại android", nơi bạn sẽ khám phá cách điều khiển thiết bị điện từ xa qua ứng dụng di động. Ngoài ra, bài viết "Đồ án hcmute thiết kế và thi công hệ thống điều khiển thiết bị từ xa qua internet bằng smartphone" sẽ giúp bạn hiểu rõ hơn về việc thiết kế hệ thống điều khiển thông minh. Cuối cùng, bài viết "Đồ án hcmute giải pháp sử dụng các chuẩn mạng không dây để điều khiển thiết bị trong nhà bằng smartphone" sẽ mở rộng kiến thức của bạn về các giải pháp điều khiển thiết bị trong môi trường gia đình. Những tài liệu này sẽ giúp bạn nắm bắt thêm nhiều khía cạnh thú vị của công nghệ IoT và ứng dụng của nó trong cuộc sống hàng ngày.