Mục tiêu của nhóm nghiên cứu là phát triển một hệ thống giám sát vàquản lý hiệu quả, kết hợp cảm biến và thiết bị GPS, nhằm cung cấp thông tin chi tiếtvà kịp thời về trạng thái của hàng
Hệ thống quản lý vận tải hàng hóa
Hệ thống vận tải hàng hóa (Transport Management System - TMS) là một giải pháp công nghệ được thiết kế để tối ưu hóa việc quản lý và vận chuyển hàng hóa. TMS cung cấp các công cụ để hỗ trợ doanh nghiệp trong việc lập kế hoạch, thực hiện và theo dõi vận tải, đảm bảo hiệu quả và tiết kiệm chi phí.
Các chức tính năng nổi bật của TMS phải kể đến là:
1 Lập kế hoạch và tối ưu hóa tuyến đường: TMS giúp xác định các tuyến đường vận chuyển hiệu quả nhất, giảm thiểu thời gian vận chuyển và chi phí nhiên liệu.
2 Quản lý đơn hàng: TMS hỗ trợ quản lý toàn bộ quá trình, từ tạo đơn hàng đến khi đơn hàng được giao, đảm bảo độ chính xác và kịp thời.
3 Theo dõi thời gian thực: Hệ thống cung cấp khả năng theo dõi vị trí và tình trạng của hàng hóa theo thời gian thực, tăng cường tính minh bạch và sự hài lòng của khách hàng.
4 Quản lý chi phí: TMS giúp kiểm soát chi phí vận tải thông qua việc tối ưu hóa tuyến đường và sử dụng nguồn lực hiệu quả.
5 Tuân thủ các quy định và an toàn hóa quá trình vận chuyển: Hệ thống đảm bảo các hoạt động vận tải tuân thủ các quy định pháp luật và tiêu chuẩn an toàn.
TMS có thể xem như một giải pháp khắc phục các hạn chế, thách thức tồn tại trong ngành quản lý và vận tải hàng hóa ở Việt Nam Nó giúp đảm bảo độ tính minh bạch, an toàn, bảo mật trong suốt quá trình vận chuyển và còn có thể tối ưu hóa các chi phí, giảm thiểu các rủi ro không mong muốn xuất hiện trong quá trình vận chuyển.
Các tác nhân cần chú ý trong quá trình vận tải hàng hóa
Trong quá trình quản lý vận tải hàng hóa trong container, việc theo dõi các chỉ số và các tác nhân ảnh hưởng là vô cùng quan trọng để đảm bảo an toàn, hiệu quả và chất lượng của quá trình vận chuyển Việc theo dõi và đánh giá các chỉ số cần thiết sẽ giúp nắm bắt được những vấn đề tiềm ẩn và đưa ra các biện pháp phòng tránh và cải thiện phù hợp Các chỉ số quan trọng trong quá trình vận chuyển cần theo dõi như: Điều kiện nhiệt độ, độ ẩm trong xe: điều kiện nhiệt độ, độ ẩm như nhiệt độ và độ ẩm có thể ảnh hưởng đến chất lượng hàng hóa trong container.
Chất lượng container: sự kiểm tra kỹ lưỡng về chất lượng của container là cần thiết để đảm bảo hàng hóa được bảo quản và vận chuyển an toàn.
Quản lý vị trí: lập kế hoạch tuyến đường, sử dụng thiết bị giám sát GPS và quản lý các hoạt động vận tải là các yếu tố quan trọng.
Chỉ số đảm bảo an toàn các kiện hàng: theo dõi chi tiết về thông tin trạng thái thùng hàng, như độ chấn động, độ nghiêng Đảm bảo sản phẩm được nguyên vẹn và an toàn sau khi vận chuyển. Đảm bảo tính an toàn, và bảo mật với các thùng hàng: bảo đảm an toàn và tính bảo mật của hàng hóa trong container thông qua việc tuân thủ các quy định và sử dụng biện pháp bảo mật phù hợp.
Nhận thấy được nhu cầu giám sát các tác nhân trên, đề tài này sẽ tập trung nghiên cứu các giải pháp để giám sát quá trình vận chuyển, điều kiện nhiệt độ, độ ẩm trong xe và tình trạng thùng hàng Việc nghiên cứu này nhằm nâng cao hiệu quả và an toàn của vận tải hàng hóa, đảm bảo chất lượng dịch vụ và đáp ứng nhu cầu phát triển nhanh chóng của thị trường Bằng cách áp dụng các công nghệ GPS và kết hợp với các cảm biến theo dõi liên tục tình trạng thùng hàng, nhóm thực hiện đề tài hy vọng sẽ góp phần cải thiện hệ thống quản lý vận tải hàng hóa, giảm thiểu rủi ro và tối ưu hóa chi phí.
Hệ thống giám sát vận tải hàng hóa trên container
Trong lĩnh vực vận tải hàng hóa container, TMS cung cấp các công cụ và dữ liệu cần thiết để theo dõi và quản lý container từ điểm xuất phát đến điểm đích TMS tích hợp với các thiết bị giám sát như GPS và cảm biến nhiệt độ, độ ẩm để cung cấp thông tin chi tiết về tình trạng hàng hóa, đảm bảo điều kiện vận chuyển tối ưu và an toàn. Các lợi ích TMS mang lại:
- Tăng cường khả năng theo dõi: theo dõi vị trí và tình trạng container liên tục theo thời gian thực.
- Cải thiện hiệu quả: tối ưu hóa các tuyến đường và sử dụng nguồn lực hiệu quả.
- Giảm chi phí: tối ưu chi phí vận tải nhờ lập kế hoạch và quản lý hiệu quả các chuyến hàng.
- Nâng cao an toàn: đảm bảo tuân thủ các quy định an toàn và theo dõi điều kiện hàng hóa liên tục.
Hệ thống Quản lý Vận tải (TMS) đóng vai trò then chốt trong việc nâng cao hiệu quả và an toàn của vận tải hàng hóa container Với khả năng tích hợp các thiết bị giám sát như GPS và các cảm biến, TMS cung cấp thông tin chi tiết về tình trạng hàng hóa,giúp tối ưu hóa điều kiện vận chuyển [13] Các lợi ích mà TMS mang lại không chỉ dừng lại ở việc tăng cường khả năng theo dõi, cải thiện hiệu quả và giảm chi phí, mà
CÔNG NGHỆ GPS 8
Giới thiệu về GPS
Hệ thống định vị toàn cầu (GPS) là một hệ thống định vị sử dụng vệ tinh, máy thu và thuật toán để đồng bộ hóa dữ liệu vị trí, vận tốc và thời gian cho các chuyến đi trên không, trên biển và trên bộ.
Hệ thống vệ tinh bao gồm một chòm sao gồm 24 vệ tinh trong sáu mặt phẳng quỹ đạo lấy Trái đất làm trung tâm, mỗi mặt phẳng có bốn vệ tinh [15], quay quanh cách Trái đất 13.000 dặm (20.000 km) và di chuyển với tốc độ 8.700 mph (14.000 km/h). GPS được tạo thành từ ba thành phần khác nhau, được gọi là phân đoạn, hoạt động cùng nhau để cung cấp thông tin vị trí Ba phân đoạn của GPS là:
Không gian (Vệ tinh) - Các vệ tinh quay quanh Trái đất, truyền tín hiệu đến người dùng về vị trí địa lý và thời gian trong ngày. Điều khiển mặt đất - Phân đoạn điều khiển được tạo thành từ các trạm giám sát trên mặt đất, trạm điều khiển chính và ăng-ten mặt đất Các hoạt động kiểm soát bao gồm theo dõi và vận hành các vệ tinh trong không gian và giám sát việc truyền tải. Hầu hết các châu lục trên thế giới đều có các trạm giám sát, bao gồm Bắc và Nam Mỹ, Châu Phi, Châu Âu, Châu Á và Úc.
Thiết bị người dùng - Máy thu và phát GPS bao gồm các mặt hàng như đồng hồ,điện thoại thông minh và thiết bị viễn thông Thuận tiện với cảm biến và các linh kiện phụ trợ khác.
Cơ chế hoạt động GPS
GPS hoạt động thông qua một kỹ thuật gọi là trilateration Được sử dụng để tính toán vị trí, vận tốc và độ cao, phép đo ba chiều thu thập tín hiệu từ vệ tinh để xuất thông tin vị trí.
Các vệ tinh quay quanh trái đất gửi tín hiệu để thiết bị GPS đặt trên hoặc gần bề mặt trái đất đọc và giải thích Để tính toán vị trí, thiết bị GPS phải có khả năng đọc tín hiệu từ ít nhất bốn vệ tinh.
Mỗi vệ tinh trong mạng bay vòng quanh trái đất hai lần một ngày và mỗi vệ tinh gửi một tín hiệu, thông số quỹ đạo và thời gian duy nhất Tại bất kỳ thời điểm nào, thiết bị GPS có thể đọc tín hiệu từ sáu vệ tinh trở lên.
Một vệ tinh phát tín hiệu vi sóng được thiết bị GPS thu và sử dụng để tính khoảng cách từ thiết bị GPS đến vệ tinh Vì thiết bị GPS chỉ cung cấp thông tin về khoảng cách từ vệ tinh nên một vệ tinh không thể cung cấp nhiều thông tin vị trí Vệ tinh không cung cấp thông tin về góc, vì vậy vị trí của thiết bị GPS có thể ở bất kỳ đâu trên diện tích bề mặt của quả cầu.
Khi vệ tinh gửi tín hiệu, nó sẽ tạo ra một vòng tròn có bán kính được đo từ thiết bị GPS đến vệ tinh Khi chúng ta thêm vệ tinh thứ hai, nó sẽ tạo ra một vòng tròn thứ hai và vị trí được thu hẹp xuống một trong hai điểm nơi các vòng tròn giao nhau Với vệ tinh thứ ba, vị trí của thiết bị cuối cùng có thể được xác định thiết bị nằm ở giao điểm của cả ba vòng tròn. Điều đó nói lên rằng, chúng ta đang sống trong một thế giới ba chiều, có nghĩa là mỗi vệ tinh tạo ra một hình cầu chứ không phải hình tròn Giao điểm của ba mặt cầu tạo ra hai điểm giao nhau, do đó điểm gần Trái đất nhất được chọn.
Khi thiết bị di chuyển, bán kính (khoảng cách tới vệ tinh) sẽ thay đổi Khi bán kính thay đổi, những quả cầu mới được tạo ra, mang lại cho chúng ta một vị trí mới.Chúng tôi có thể sử dụng dữ liệu đó, kết hợp với thời gian từ vệ tinh, để xác định vận tốc, tính toán khoảng cách đến đích.
Ứng dụng GPS
GPS là một công cụ mạnh mẽ và đáng tin cậy cho các doanh nghiệp và tổ chức trong nhiều ngành công nghiệp khác nhau Các nhà khảo sát, nhà khoa học, phi công, thuyền trưởng [16], người ứng phó đầu tiên và công nhân khai thác mỏ và nông nghiệp chỉ là một số người sử dụng GPS hàng ngày cho công việc Họ sử dụng thông tin GPS để chuẩn bị các cuộc khảo sát và bản đồ chính xác, thực hiện các phép đo thời gian chính xác, theo dõi vị trí hoặc vị trí và để điều hướng GPS hoạt động mọi lúc và trong hầu hết mọi điều kiện thời tiết.
Có năm ứng dụng chính của GPS:
- Vị trí - Xác định vị trí.
- Điều hướng - Đi từ vị trí này đến vị trí khác.
- Theo dõi - Giám sát đối tượng hoặc chuyển động cá nhân.
- Lập bản đồ - Tạo bản đồ thế giới.
- Thời gian - Giúp có thể thực hiện các phép đo thời gian chính xác. Đối diện với các vấn đề và thách thức trong lĩnh vực quản lý vận tải hàng hóa trên container, GPS là một giải pháp hiệu quả giúp giải quyết các rủi ro và tối ưu hóa quá trình vận chuyển Các ứng dụng chính của GPS trong giám sát vận chuyển bao gồm:
Theo dõi vị trí theo thời gian thực: GPS cho phép theo dõi vị trí của phương tiện và container theo thời gian thực, giúp doanh nghiệp nắm bắt chính xác vị trí của hàng hóa, tăng tính minh bạch và cải thiện khả năng phản ứng nhanh.
Lập kế hoạch và tối ưu hóa tuyến đường: GPS hỗ trợ lập kế hoạch và tối ưu hóa tuyến đường, giúp giảm thiểu thời gian vận chuyển, tiết kiệm nhiên liệu và chi phí.
Kết hợp GPS với các cảm biến giám sát điều kiện nhiệt độ, độ ẩm: kết hợp với các cảm biến, GPS giúp theo dõi nhiệt độ và độ ẩm trong container, đảm bảo hàng hóa được vận chuyển trong điều kiện tối ưu, giảm thiểu rủi ro hư hỏng.
Quản lý và điều phối phương tiện: GPS cung cấp dữ liệu chính xác về vị trí phương tiện, giúp tối ưu hóa điều phối và sử dụng nguồn lực, nâng cao hiệu quả sử dụng phương tiện và quản lý đội xe. Đảm bảo an toàn và an ninh: GPS giúp theo dõi và giám sát các hoạt động của phương tiện và container, đảm bảo an ninh và phát hiện kịp thời các sự cố bất thường, bảo vệ hàng hóa khỏi mất mát và trộm cắp.
Báo cáo và phân tích dữ liệu: GPS tích hợp với hệ thống báo cáo và phân tích dữ liệu, cung cấp thông tin chi tiết về hiệu suất vận chuyển, hỗ trợ ra quyết định và tối ưu hóa hoạt động, nâng cao hiệu quả kinh doanh.
THƯ VIỆN LEAFLET 11
Giới thiệu
Leaflet là một thư viện JavaScript mã nguồn mở hàng đầu cho các bản đồ tương tác, được thiết kế để tối ưu hoá trải nghiệm trên các thiết bị di động [17] Với kích thước nhẹ nhàng chỉ khoảng 42 KB, Leaflet cung cấp đầy đủ tính năng cần thiết để xây dựng các ứng dụng địa lý Thư viện này được tối ưu hóa để đơn giản, hiệu quả và dễ sử dụng, hoạt động mạnh mẽ trên nhiều nền tảng từ máy tính để bàn đến di động.Leaflet có khả năng mở rộng thông qua nhiều plugin và cung cấp một API linh hoạt cùng với tài liệu hướng dẫn chi tiết.
Các tính năng nổi bật Leaflet
Tạo bản đồ tương tác [17]: Leaflet cung cấp khả năng tạo các bản đồ tương tác với các thao tác phóng to, thu nhỏ và di chuyển mượt mà Người dùng có thể dễ dàng điều hướng xung quanh bản đồ bằng cách kéo thả hoặc sử dụng các điều khiển phóng to, thu nhỏ Ngoài ra, Leaflet còn tối ưu hóa trải nghiệm trên thiết bị di động với các tính năng cảm ứng như pinch-to-zoom và double-tap để phóng to, đảm bảo rằng bản đồ hoạt động tốt trên mọi nền tảng.
Hiển thị lớp bản đồ [17]: với Leaflet có thể thêm nhiều lớp bản đồ từ các nguồn khác nhau như OpenStreetMap, Mapbox, và Google Maps Điều này được thực hiện bằng cách sử dụng các lớp tile, cho phép tải và hiển thị các mảnh bản đồ từ một URL cụ thể Ngoài ra, Leaflet hỗ trợ việc thêm các hình ảnh tùy chỉnh (image overlays) lên bản đồ, giúp hiển thị thông tin bổ sung hoặc các bản đồ địa phương một cách trực quan.
Quản lý các lớp (Layers): Leaflet cung cấp các công cụ mạnh mẽ để quản lý và hiển thị nhiều lớp dữ liệu không gian khác nhau Bạn có thể dễ dàng thêm các điểm đánh dấu (markers), đa giác (polygons), và đường thẳng (polylines) vào bản đồ để biểu diễn các điểm, khu vực và tuyến đường cụ thể Hỗ trợ GeoJSON cũng là một điểm mạnh của Leaflet, cho phép bạn đọc và hiển thị dữ liệu địa lý từ định dạng phổ biến này.
Tương tác người dùng: Leaflet hỗ trợ các tính năng tương tác phong phú, bao gồm các popup và tooltip Popup và tooltip có thể được gắn vào các điểm đánh dấu hoặc các hình dạng trên bản đồ, hiển thị thông tin khi người dùng click hoặc hover. Ngoài ra, Leaflet cung cấp nhiều sự kiện (event handlers) như click, mouseover, mouseout, giúp bạn dễ dàng tạo các tương tác phức tạp với các thành phần trên bản đồ.
Tùy biến và mở rộng: Leaflet có một hệ sinh thái phong phú với hàng trăm plugin để mở rộng chức năng, từ heatmaps và cluster markers đến vẽ đồ thị và tích hợp với các thư viện khác Có thể dễ dàng tùy biến giao diện của bản đồ bằng cách thêm các lớp CSS tùy chỉnh hoặc sử dụng các plugin giao diện người dùng Điều này giúp bạn tạo ra các bản đồ không chỉ mạnh mẽ về mặt chức năng mà còn đẹp mắt và phù hợp với yêu cầu thiết kế của bạn.
Hiệu suất cao: Leaflet được thiết kế để tối ưu hóa hiệu suất với việc sử dụng các kỹ thuật vẽ đồ họa hiện đại như canvas, giúp hiển thị hàng ngàn đối tượng trên bản đồ mà không bị giật Hệ thống tải dữ liệu thông minh của Leaflet chỉ tải và hiển thị các tile cần thiết dựa trên vị trí và mức zoom hiện tại của bản đồ, giảm thiểu băng thông và thời gian tải, đảm bảo trải nghiệm người dùng mượt mà và nhanh chóng.
Hỗ trợ API dơn giản: một trong những điểm mạnh của Leaflet là API rõ ràng và dễ hiểu, giúp việc học và sử dụng trở nên dễ dàng, ngay cả với những người mới bắt đầu Tài liệu của Leaflet đầy đủ và chi tiết, với nhiều ví dụ minh họa, giúp bạn nhanh chóng nắm bắt và triển khai các tính năng của Leaflet vào dự án của mình Điều này làm cho Leaflet trở thành lựa chọn lý tưởng cho cả những dự án nhỏ và các ứng dụng web phức tạp.
HỆ ĐIỀU HÀNH THỜI GIAN THỰC RTOS 12
Hệ thống quản lý vận tải hàng hóa trên container đặt ra nhiều yêu cầu đối với quản lý tác vụ và độ tin cậy trong xử lý dữ liệu thời gian thực Để đáp ứng những yêu cầu này, việc sử dụng hệ điều hành thời gian thực (RTOS) là một giải pháp để đảm bảo hiệu suất và độ chính xác của hệ thống.
Hệ điều hành thời gian thực (RTOS) là một loại hệ điều hành được thiết kế đặc biệt để đáp ứng các yêu cầu về thời gian trong việc xử lý và phản hồi các sự kiện trong một khoảng thời gian cụ thể Nó là lựa chọn lý tưởng cho các hệ thống thời gian thực như các hệ thống nhúng và các ứng dụng yêu cầu độ tin cậy và độ chính xác cao [10]
Các tính năng nổi bật của RTOS có thể áp dụng cho hệ thống quản lý vận tải hàng hóa trên container như:
Quản lý tác vụ đa nhiệm: RTOS quản lý các tác vụ (tasks) mà hệ thống cần thực hiện Mỗi tác vụ được coi như một công việc nhỏ cần thực hiện một số công việc cụ thể.[6] Đối với hệ thống quản lý vận tải hàng hóa trên container, các tác vụ có thể bao gồm theo dõi vị trí container, giám sát điều kiện nhiệt độ, độ ẩm bên trong container, quản lý dữ liệu vận chuyển và thông báo về trạng thái container Việc phân chia các tác vụ này thành các tiểu nhiệm vụ nhỏ sẽ tận dụng tính đa nhiệm của RTOS.
Lập Lịch và ưu tiên tác vụ: Lập lịch tác vụ là quyết định về thứ tự thực hiện các tác vụ RTOS sử dụng các thuật toán lập lịch để xác định thứ tự thực hiện tác vụ sao cho các tác vụ quan trọng được thực hiện trước và đảm bảo tính đáng tin cậy Trong hệ thống quản lý vận tải, các tác vụ quan trọng như theo dõi vị trí container và giám sát điều kiện nhiệt độ, độ ẩm bên trong container cần được ưu tiên để đảm bảo an toàn và bảo quản hàng hóa tốt nhất.
Phản hồi thời gian thực: RTOS đặt các thời hạn (deadline) cho việc hoàn thành các tác vụ Điều này là quan trọng để đảm bảo rằng các tác vụ quan trọng sẽ được thực hiện đúng thời hạn và không bị chậm trễ Đối với hệ thống quản lý vận tải hàng hóa, việc thiết lập các thời hạn cho các nhiệm vụ quan trọng như cập nhật vị trí container theo thời gian thực và thông báo về điều kiện nhiệt độ, độ ẩm sẽ đảm bảo sự đáp ứng ngay lập tức với các sự kiện quan trọng Ngoài ra, xử lý các trường hợp ngoại lệ một cách linh hoạt để đảm bảo tính tin cậy trong mọi tình huống là yếu tố không thể thiếu.
Kiểm soát trạng thái và quản lý lỗi: RTOS thường cung cấp các cơ chế để xử lý lỗi một cách an toàn và dự đoán, nhằm đảm bảo tính ổn định của hệ thống khi xảy ra tình huống ngoại lệ Trong hệ thống quản lý vận tải hàng hóa, việc phát hiện và xử lý kịp thời các lỗi như mất kết nối hoặc lỗi cảm biến sẽ giúp duy trì hoạt động liên tục và đáng tin cậy của hệ thống.
Việc sử dụng FreeRTOS trong hệ thống quản lý vận tải hàng hóa trên container sẽ giúp chia tác vụ code nạp cho phần cứng một cách hiệu quả, đảm bảo rằng các tác vụ quan trọng được thực hiện đúng thời gian và hệ thống hoạt động ổn định FreeRTOS là một nền tảng mã nguồn mở phổ biến, cung cấp nhiều tính năng mạnh mẽ cho việc phát triển các hệ thống thời gian thực, giúp đảm bảo hiệu suất và độ tin cậy cao cho hệ thống quản lý vận tải hàng hóa.
GIỚI THIỆU CÁC GIAO THỨC TRUYỀN THÔNG 14
Giao thức SPI
SPI là giao thức giao tiếp phổ biến được ứng dụng rộng rãi trong nhiều thiết bị khác nhau Ví dụ, các module thẻ SD, đầu đọc thẻ RFID, hay bộ thu phát không dây 2,4 GHz thường sử dụng SPI để giao tiếp với vi điều khiển.
Một ưu điểm đặc biệt của SPI là khả năng truyền dữ liệu mà không bị gián đoạn Bất kỳ số lượng bit nào cũng có thể được gửi hoặc nhận trong một luồng liên tục Trong khi đó, với I2C và UART, dữ liệu được gửi dưới dạng gói, giới hạn ở một số bit nhất định Điều này dẫn đến việc dữ liệu bị chia cắt trong quá trình truyền.
Các thiết bị sử dụng giao tiếp SPI thường có mối quan hệ Master - Slave Master thường là thiết bị điều khiển (ví dụ như vi điều khiển), trong khi Slave (cảm biến, màn hình hoặc chip nhớ) nhận lệnh từ Master Cấu hình đơn giản nhất của SPI là một Slave, một Master, nhưng một Master có thể điều khiển nhiều hơn một Slave.[2]
Hình 2.1: Master kết nối với một Slaver [1]
MOSI (Master Out/Slave In) là tín hiệu dữ liệu được tạo ra bởi Master và nhận bởi Slave Vì vậy, các chân MOSI trên cả Master và Slave được kết nối với nhau.
MISO (Master In/Slave Out) là tín hiệu dữ liệu được tạo ra bởi Slave và truyền tới Master Cả Master và Slave có các chân MISO được kết nối với nhau Mặc dù tín hiệu trên MISO được tạo ra bởi Slave, nhưng nó được điều khiển bởi Master.
Master tạo ra tín hiệu đồng hồ SCLK và cung cấp cho đầu vào đồng hồ củaSlave Xung này đóng vai trò quan trọng trong giao tiếp SPI, đảm bảo sự đồng bộ giữa các thiết bị Với mỗi xung trên chân SCK, 1 bit dữ liệu được truyền đi hoặc đến Xung
SCK đảm bảo quá trình truyền dữ liệu được đồng bộ và ít bị lỗi, từ đó tốc độ truyền của SPI có thể rất cao.
Chip Select (CS) hoặc Slave Select (SS) được sử dụng để chọn một Slave cụ thể bởi Master Khi Master kéo đường SS của một Slave xuống mức thấp, giao tiếp giữa Master và Slave đó mới được thiết lập.
Các thiết bị sử dụng giao tiếp SPI thường có mối quan hệ Master - Slave Master thường là thiết bị điều khiển (ví dụ như vi điều khiển), trong khi Slave (cảm biến, màn hình hoặc chip nhớ) nhận lệnh từ Master Cấu hình đơn giản nhất của SPI là một Slave, một Master, nhưng một Master có thể điều khiển nhiều hơn một Slave.
Hình 2.2: Master kết nối với nhiều Slaver [1]
Cơ chế hoạt động SPI
Cơ chế hoạt động của giao tiếp SPI (Serial Peripheral Interface) dựa trên việc truyền dữ liệu một cách tuần tự giữa một thiết bị master và một hoặc nhiều thiết bị slave Giao tiếp này sử dụng một tín hiệu clock chung và các tín hiệu truyền dữ liệu đồng thời trên các kênh tương ứng Điều này cho phép truyền dữ liệu một cách nhanh chóng và hiệu quả giữa master và slave, phù hợp cho các ứng dụng đòi hỏi tốc độ truyền dữ liệu cao và đồng bộ hóa chính xác.
Quá trình truyền dữ liệu diễn ra theo nguyên tắc "dịch bit" (bit-shift) Cả master và slave truyền và nhận dữ liệu theo cùng một thứ tự từ bit cao nhất đến bit thấp nhất.[3] Mỗi bit được truyền qua kênh MOSI (Master Out Slave In) từ master đến slave và qua kênh MISO (Master In Slave Out) từ slave về master.
Giao tiếp SPI có thể hoạt động ở các chế độ khác nhau, như chế độ truyền dữ liệu theo cạnh lên hoặc xuống của xung clock (SPI mode 0 hoặc mode 3) và chế độ truyền dữ liệu theo cạnh xuống hoặc lên của xung clock (SPI mode 1 hoặc mode 2) Lựa chọn chế độ phụ thuộc vào các thiết bị master và slave được sử dụng, và cần phải được đồng bộ hóa đúng để truyền dữ liệu chính xác.
Giao thức UART
UART là viết tắt của Universal Asynchronous Receiver Transmitter, một chuẩn giao tiếp không đồng bộ cho MCU và các thiết bị ngoại vi UART có khả năng truyền và nhận dữ liệu giữa các thiết bị thông qua hai dây truyền dẫn dữ liệu (TX - Transmit,
RX - Receive) và được sử dụng rộng rãi trong các ứng dụng điện tử.
Cách thiết lập giao tiếp UART bao gồm hai thành phần chính: tốc độ truyền (baud rate) và các cài đặt khác như số bit dữ liệu, kiểm tra paritet, và số bit stop Tốc độ truyền được sử dụng để xác định tốc độ truyền dữ liệu giữa các thiết bị Các cài đặt khác như số bit dữ liệu xác định số lượng bit trong mỗi byte dữ liệu, kiểm tra paritet được sử dụng để kiểm tra tính đúng đắn của dữ liệu, và số bit stop xác định số bit được thêm vào sau mỗi byte dữ liệu để đánh dấu kết thúc của mỗi truyền dữ liệu.
Khi truyền dữ liệu, UART sẽ gửi mỗi byte dữ liệu theo trình tự từ bit thấp nhất đến bit cao nhất Mỗi byte sẽ được bắt đầu bằng một bit start, tiếp theo là các bit dữ liệu, sau đó là kiểm tra paritet (nếu có), và cuối cùng là các bit stop Khi nhận dữ liệu, thiết bị sẽ đọc mỗi byte dữ liệu bắt đầu từ bit start và kết thúc ở bit stop, loại bỏ bit start và stop để thu được byte dữ liệu ban đầu.
Hình 2.3: Khung truyền dữ liệu UART[5]
Start bit (Bit bắt đầu)
Bit đầu tiên được truyền trong một frame, bit này có chức năng báo cho bên nhận rằng sắp có một gói dữ liệu truyền đến Đường truyền UART luôn ở trạng thái cao mức “1” cho đến khi chip muốn truyền dữ liệu đi thì nó gởi bit start bằng cách kéo xuống mức “0” Như vậy start bit giá trị điện áp 0V và phải bắt buộc có bit start trong khung truyền.
Data Frame (Khung dữ liệu)
Khung dữ liệu chứa dữ liệu thực tế đang được truyền Nó có thể dài từ 5 bit đến 8 bit nếu sử dụng bit chẵn lẻ Nếu không sử dụng bit chẵn lẻ, khung dữ liệu có thể dài 9 bit Trong hầu hết các trường hợp, dữ liệu được truyền với bit có trọng số bé nhất (LSB – Least Significant Bit) trước tiên.
Parity bit (Bit chẵn lẻ)
Parity dùng để kiểm tra dữ liệu truyền có đúng hay không Có 2 loại Parity đó là Parity chẵn (even parity) và parity lẽ (odd parity) Parity chẵn nghĩa là số bit 1 trong trong data truyền cùng với bit Parity luôn là số chẵn, ngược lại nếu Parity lẽ nghĩa là số bit 1 trong data truyền cùng với bit Parity luôn là số lẽ Bit Parity không phải là bit bắt buộc và vì thế chúng ta có thể loại bỏ bit này ra khỏi khung truyền.
Stop bits (Bit kết thúc)
Stop bits là một bit báo cáo để cho bộ truyền/nhận biết được gói dữ liệu đã được gởi xong Stop bits là bit bắt buộc phải có trong khung truyền Stop bits có thể là 1bit, 1.5bit, 2bit, 0.5bit tùy thuộc vào ứng dụng UART của người sử dụng. Ưu điểm UART Nhược điểm UART
Tiếp nhận dữ liệu từ nhiều nguồn khác nhau và truyền dữ liệu đến nhiều thiết bị khác nhau.
Tiêu tốn nhiều tài nguyên. Được tích hợp sẵn trên hầu hết các vi điều khiển và các thiết bị điện tử.
Không được cải tiến hỗ trợ nhiều tính năng trong truyền thông dữ liệu
UART hoạt động ổn định trong mọi tình huống và độ tin cậy cao trong việc xử lý và truyền tải dữ liệu.
Có thể gặp phải lỗi đồng bộ hóa hoặc lỗi truyền tải dữ liệu khi truyền ở tốc độ cao
Tốc độ truyền tải dữ liệu có thể được điều chỉnh để thích hợp với yêu cầu của ứng dụng.
Chỉ hỗ trợ truyền dữ liệu theo định dạng không đồng bộ.
THIẾT KẾ HỆ THỐNG 20
GIỚI THIỆU 20
Với mục tiêu là thiết kế và xây dựng một hệ thống giám sát và quản lý hiệu quả cho vận chuyển hàng hóa bằng container Hệ thống được phân thành 3 thành phần chính:
- Phần cứng: bao gồm các thiết bị cảm biến được lắp đặt trong container vận chuyển hàng hóa Các thiết bị cảm biến sẽ ghi nhận các thông số quan trọng như nhiệt độ, độ ẩm, rung lắc và độ nghiêng của container Ngoài ra, phần cứng cũng được trang bị module định vị GPS để theo dõi vị trí và di chuyển của container Khi có biến động bất thường nhận được từ các cảm biến, phần cứng sẽ cảnh báo để tài xế có thể can thiệp kịp thời và đảm bảo an toàn cho hàng hóa.
- Trang web: được phát triển để cung cấp giao diện đơn giản và thân thiện cho người dùng cuối Người dùng có thể đặt đơn hàng và theo dõi trạng thái của đơn hàng trên trang web, đảm bảo tính minh bạch và tiện lợi trong quá trình vận chuyển hàng hóa.
- Phần mềm quản lý: cho phép quản trị viên quản lý các danh sách liên quan đến tài xế, xe vận tải và đơn hàng Quản trị viên có thể thêm, sửa đổi, xóa thông tin tài xế và xe vận tải Quản trị viên sẽ chọn tài xế và xe vận tải phù hợp cho từng đơn hàng Phần mềm quản lý cung cấp khả năng quản lý hiệu quả, giúp tối ưu hóa quy trình vận chuyển hàng hóa và nâng cao năng suất làm việc.
Kịch bản hoạt động của hệ thống từ lúc người dùng đặt đơn đến lúc xe bắt đầu quá trình vận chuyển được xây dựng như sau:
1 Đầu tiên, người dùng tạo đơn hàng trên trang web, người dùng chọn các địa chỉ muốn giao/lấy hàng và điền các thông tin về đơn hàng, điền các thông tin về khách hàng tại các địa chỉ giao/lấy hàng.
2 Trên phần mềm quản lý, quản trị viên chọn tài xế và xe phù hợp cho đơn hàng (chọn loại xe có thùng container và trọng tải phù hợp với đơn hàng).
3 Trong mã chương trình Arduino, lập trình viên điều chỉnh các biến ban đầu như mã đơn hàng (dùng để tạo đường dẫn http đến cơ sở dữ liệu), tọa độ các điểm đến, khoảng nhiệt độ, và độ ẩm cần theo dõi trong quá trình vận chuyển, mật khẩu để mở thùng hàng Sau đó, mã chương trình được nạp vào phần cứng để thực hiện các chức năng giám sát và ghi nhận dữ liệu từ container.
4 Xe bắt đầu quá trình vận chuyển.
SƠ ĐỒ ĐẶC TẢ HỆ THỐNG 21
Hình 3.1: Sơ đồ đặc tả hệ thống
Hệ thống được thiết kế bao gồm các khối như hình 3.1, trong đó:
Khối xử lý trung tâm: trung tâm nhận và xử lý dữ liệu từ các cảm biến và module Các dữ liệu được xử lý để thực hiện các tác vụ như thông báo, điều khiển, gửi dữ liệu lên cơ sở dữ liệu.
Khối thời gian: có nhiệm vụ đọc thời gian hiện tại và gửi về khối xử lý trung tâm để xử lý.
Khối định vị: một module GPS có chức năng định vị vị trí hiện tại của xe vận tải.
Khối nhập dữ liệu: bàn phìm có chức năng nhập liệu để người dùng có thể nhập mật khẩu, khối xử lý trung tâm sẽ xử lý mật khẩu để xác định có nên mở khóa thùng hàng hay không.
Khối cảm biến: bao gồm các cảm biến như nhiệt độ, độ ẩm, gia tốc để thu thập dữ liệu cần thiết cho dự án Nhiệm vụ của nó là liên tục thu thập dữ liệu nhiệt độ, độ ẩm và chuyển giao cho xử lý trung tâm.
Khối điều khiển: Gồm một relay để thực hiện các tác vụ điều khiển khi nhiệt độ, độ ẩm vượt mức an toàn.
Khối hiển thị: màn hình LCD hiển thị các thông số nhiệt độ, độ ẩm, hiển thị các thông báo khi nhập mật khẩu sai hoặc đúng.
Khối thông báo: gồm các còi để cảnh báo tài xế trong các trường hợp khi nhiệt độ, độ ẩm, góc nghiêng vượt mức an toàn.
Khối lưu trữ: gồm module thẻ nhớ để lưu trữ các thông tin như nhiệt độ, độ ẩm, tọa độ trong quá trình xe di chuyển.
Khối cơ sở dữ liệu và web: cung cấp giao diện web và app máy tính cho người quản lý để theo dõi hoạt động của xe và quản lý dữ liệu, hỗ trợ người quản lý trong việc giám sát và giúp quản trị viên điều hành hoạt động vận chuyển.
Khối nguồn: cung cấp năng lượng cho toàn bộ hệ thống để đảm bảo hoạt động liên tục và ổn định Khối này sử dụng pin hoặc ổ cắm DC để duy trì nguồn điện cho các thành phần của hệ thống.
THIẾT KẾ PHẦN CỨNG 23
Các yêu cầu phần cứng đề tài mà nhóm đặt ra là:
− Lấy được dữ liệu từ các cảm biến nhiệt độ, độ ẩm, gia tốc, GPS Ghi dữ liệu thành công vào thẻ nhớ microSD card.
− Sử dụng thuật toán FreeRtos được để phần cứng có thể hoạt động độc lập với nhau, tránh trường hợp một hư hỏng dẫn đến dừng hoạt động toàn bộ phần cứng.
− Gửi dữ liệu đến cơ sở dữ liệu thành công.
− Cảnh báo và thực hiện các chức năng điều khiển khi nhiệt độ, độ ẩm vươt mức an toàn.
3.3.2 Thiết kế các khối hệ thống
3.3.2.1 Khối xử lý trung tâm
Trong dự án giám sát vận chuyển hàng hóa trên container, nhóm thực hiện chọn Arduino ATmega2560 làm khối xử lý trung tâm vì nó đáp ứng tốt yêu cầu về hiệu suất và tính linh hoạt cho hệ thống ATmega2560 là một vi điều khiển mạnh mẽ, có khả năng xử lý nhiều tác vụ phức tạp đồng thời, điều này rất quan trọng trong việc thu thập và xử lý dữ liệu từ nhiều cảm biến khác nhau trong hệ thống giám sát.
Arduino ATmega2560 cung cấp một sự cân bằng lý tưởng giữa khả năng xử lý mạnh mẽ và tính linh hoạt cao Với 256KB bộ nhớ flash, 8KB SRAM và 4KB EEPROM, ATmega2560 có đủ dung lượng để xử lý các tác vụ phức tạp và lưu trữ dữ liệu tạm thời ATMega có tới 54 chân digital I/O (trong đó 15 chân có thể dùng làm PWM), 16 đầu vào analog và 4 cổng UART[8], cho phép kết nối với nhiều cảm biến và module khác nhau như GPS, module SIM 4G, cảm biến nhiệt độ và độ ẩm.
Bảng 3.1: Các thông số nổi bật ATMega2560[9]
Arduino Mega Tính năng, đặc điểm
Vi điều khiển AVR ATmega 2560 (8bit)
Hỗ trợ giao tiếp SPI, I2C, UART và USB
Bộ Timer 2 (8bit) + 4 (16bit) = 6 Timer
Hình 3.3: Sơ đồ chân Arduino ATMega2560[8]
Trong quá trình xây dựng hệ thống quản lý vận tải hàng hóa, GPS là một thành phần quan trọng bậc nhất, đóng vai trò thu thập dữ liệu liên tục vị trí của đơn hàng.
Module NEO-M8 của u-blox là một giải pháp GNSS đa hệ thống cung cấp hiệu suất cao trong một thiết kế nhỏ gọn Module này hỗ trợ đồng thời nhiều hệ thống vệ tinh như GPS, GLONASS, Galileo và BeiDou, giúp cải thiện độ chính xác và độ tin cậy của dữ liệu định vị.
Các tính năng nổi bật của NEO-M8 bao gồm khả năng theo dõi nhanh và chính xác, ngay cả trong các điều kiện khó khăn như trong thành phố hoặc dưới tán cây dày. Module này cũng có khả năng tiết kiệm năng lượng, làm cho nó phù hợp cho các ứng dụng di động và các thiết bị IoT.
Bảng 3.2: Thông số kỹ thuật module GPS
Thông số kỹ thuật Chi tiết
Hệ thống GNSS hỗ trợ GPS, GLONASS, Galileo, BeiDou Độ nhạy -167 dBm
Tốc độ cập nhật Lên đến 10 Hz Điện áp hoạt động 3.3V đến 5V DC
Hình 3.4: Sơ đồ kết nối chân module GPS NeoM8 và ATMega2560
Quá trình vận tải hàng hóa trên đường đi sẽ phải đối mặt với rất nhiều nguy cơ về việc xê dịch hay chấn động mạnh đối với hàng hóa Cảm biến gia tốc được thêm vào thiết kế phần cứng hệ thống với mục đích giám sát độ nghiêng thùng hàng, và tính độ chấn động đối với hàng hóa trong thùng hàng.
Bảng 3.3 :So sánh các cảm biến gia tốc Đặc điểm ADXL335 ADXL345 MMA8452
Giao tiếp Analog Digital (SPI/I2C) Digital (I2C)
Tần số lấy mẫu Tối đa 3.2 kHz Tối đa 3.2 kHz
Tiêu thụ năng lượng Thấp Trung bình Thấp Ứng dụng Ứng dụng cơ bản Các ứng dụng phức tạp hơn Ứng dụng cơ bản đến trung bình
Với các nhu cầu cơ bản để tính góc nghiêng và độ rung lắc, cảm biến ADXL335 đã đáp ứng đủ các yêu cầu của hệ thống, nhóm lựa chọn ADXL335 sử dụng trong đề tài.
Cảm biến gia tốc ADXL335 là một cảm biến ba trục với khả năng đo gia tốc trong phạm vi ±3g và điện áp hoạt động từ 3V - 5V Các chân đầu ra X, Y và Z của ADXL335 cung cấp tín hiệu điện áp tương ứng với gia tốc đo được trên các trục Khi được cấp nguồn 3.3V hoặc 5V, cảm biến phát tín hiệu điện áp mà các hệ thống vi điều khiển có thể đọc và xử lý Các tín hiệu này được chuyển đổi từ giá trị điện áp sang giá trị số thông qua bộ chuyển đổi tương tự-số (ADC) với độ phân giải 10-bit Các giá trị này sau đó được xử lý để tính toán gia tốc, cho phép giám sát sự nghiêng và chấn động của thùng hàng Nếu các giá trị gia tốc vượt quá ngưỡng cài đặt, hệ thống sẽ phát tín hiệu cảnh báo nhằm đảm bảo an toàn cho hàng hóa trong quá trình vận chuyển Việc sử dụng ADXL335 giúp đảm bảo giám sát chính xác và hiệu quả các thay đổi về gia tốc, giảm thiểu nguy cơ hư hại hàng hóa do chấn động mạnh hoặc nghiêng quá mức.
Hình 3.5: Cảm biến gia tốc ADXL335
Trong quá trình phát triển hệ thống quản lý vận tải hàng hóa, việc sử dụng GPS đóng vai trò then chốt trong việc thu thập dữ liệu vị trí của các đơn hàng một cách liên tục và chính xác Việc lựa chọn module GPS chất lượng và phù hợp với đề tài là một trong những yếu tố quan trọng trong thành công của dự án.
Bảng 3.4 Thông số kỹ thuật cảm biến gia tốc
Thông số kỹ thuật Chi tiết
Chip cảm biến ADXL335 Điện áp hoạt động 3V ~ 5V
Giao tiếp Đầu ra analog trên 3 trục (X, Y, Z)
Nhiệt độ hoạt động -40°C ~ +85°C Độ nhạy 300 mV/g Độ chính xác ±10%
Tính tương thích Phù hợp khi kết nối với các hệ thống 5V hoặc 3.3V Điện áp đầu ra analog 1.65V ở mức giữa
Hình 3.6: Sơ đồ kết nối chân cảm biến gia tốc ADXL335 và ATMega2560
-Cảm biến nhiệt độ, độ ẩm:
Vận tải hàng hóa bằng container thường bao gồm cả những mặt hàng đòi hỏi phải duy trì nhiệt độ ổn định để tránh hư hỏng hoặc tan chảy Để giải quyết vấn đề này, hệ thống được thiết kế tích hợp cảm biến nhiệt độ, cho phép theo dõi nhiệt độ thùng hàng liên tục Điều này giúp đảm bảo chất lượng hàng hóa trong suốt quá trình vận chuyển, giảm thiểu rủi ro hư hỏng và tổn thất.
Bảng 3.5: So sánh các cảm biến nhiệt độ, độ ẩm
Thông số DHT11 DHT22 BME280 Điện áp 3 – 5.5V 3 – 5.5V 1.8 – 3.6V
Phạm vi đo nhiệt độ (°C) 0-50°C -40 - 80°C -40 - 85°C Độ chính xác nhiệt độ (°C) ±2°C ±0.5°C ±1°C
Phạm vi đo độ ẩm (%) 20-90% 0 – 100% 0 - 100% Độ chính xác độ ẩm (%) ±5% ±2 - 5% ±3%
Giao tiếp Digital Digital I2C, SPI
Với sự đa dạng các loại thùng container tùy thuộc vào loại hàng hóa, dẫn đến nhu cầu đo nhiệt độ, độ ẩm ở phạm vi rộng, nhóm thực hiện quyết định chọn DHT22 sử dụng cho đề tài vì nó đáp ứng được nhu cầu về dải đo cũng như độ chính xác.
Hình 3.7: Module cảm biến nhiệt độ DHT22
DHT22 là một loại cảm biến được sử dụng phổ biến trong các ứng dụng đo lường nhiệt độ và độ ẩm Cảm biến này có khả năng đo nhiệt độ trong khoảng từ -40°C đến +80°C với độ chính xác ±0.5°C và độ ẩm trong khoảng từ 0% đến 100% với độ chính xác ±2-5% DHT22 có tốc độ lấy mẫu là 0.5 Hz, tức là mỗi 2 giây sẽ cung cấp một giá trị đo Với những thông số kỹ thuật và đặc điểm nổi bật, DHT22 là lựa chọn lý tưởng cho các đề tài của nhóm, đảm bảo độ tin cậy cao trong việc theo dõi nhiệt độ và độ ẩm.
Bảng 3.6: Thông số kỹ thuật DHT22
Dải đo nhiệt độ -40°C ~ +80°C Độ chính xác nhiệt độ ±0.5°C
Dải đo độ ẩm 0% ~ 100% RH Độ chính xác độ ẩm ±2% RH Điện áp hoạt động 3V ~ 5.5V
Dũng điện 1.5 mA khi đo, 40-50 àA ở chế độ chờ
Thời gian lấy mẫu 2 giây (tối đa 0.5 Hz)
Kích thước 15.1mm x 25mm x 7.7mm Độ phân giải 16-bit cho độ ẩm, 16-bit cho nhiệt độ
Hình 3.8: Sơ đồ kết nối chân cảm biến nhiệt độ DHT22 và ATMega2560
3.3.2.4 Khối thời gian Đối với một mô hình IoT, theo dõi thời gian thực là yếu tố quan trọng hàng đầu. Nhóm thực hiện đề tài đã thiết kế tích hợp module thời gian thực vào phần cứng hệ thống, đảm bảo việc lấy và cập nhật thời gian hiện tại cùng với dữ liệu cảm biến được gửi lên một cách chính xác Điều này giúp hệ thống hoạt động hiệu quả hơn và cung cấp dữ liệu thời gian thực đáng tin cậy.
Hình 3.9: Mạch thời gian thực RTC DS1307
Module DS1307 là một đồng hồ thời gian thực (RTC) phổ biến, được sử dụng rộng rãi trong các ứng dụng yêu cầu theo dõi thời gian chính xác Nó hoạt động ở mức điện áp 5V và giao tiếp qua giao thức I2C, giúp dễ dàng tích hợp với các vi điều khiển. DS1307 có khả năng duy trì thông tin thời gian bao gồm giây, phút, giờ, ngày, tháng và năm, tự động điều chỉnh năm nhuận, và tích hợp 56 byte SRAM để lưu trữ dữ liệu tạm thời.
THIẾT KẾ PHẦN MỀM QUẢN LÝ VẬN TẢI 45
3.2.1 Yêu cầu chức năng phần mềm quản lý vận tải
Bảng 3.16 Yêu cầu chức năng của phần mềm quản lý vận tải
STT Chức năng Mô tả
1 Chức năng chính - Có 3 trang: Trang tài xế, Trang xe, Trang đơn hàng
- Mỗi trang có danh sách hiển thị
- Mỗi trang có bảng nhập liệu để điền thông tin và các nút thao tác thực hiện các chức năng dựa trên thông tin nhập vào bảng nhập liệu
2 Hiển thị danh sách các thông tin trong từng trang
Cho phép quản trị viên xem các danh sách:
- Danh sách thông tin tài xế
- Danh sách thông tin xe vận tải
- Danh sách thông tin đơn hàng
3 Thêm tài xế Cho phép quản trị viên thêm tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu vào bảng danh sách tài xế và cơ sở dữ liệu.
4 Thêm xe vận tải Cho phép quản trị viên thêm xe vận tải dựa trên thông tin xe vận tải được nhập từ bảng nhập liệu vào bảng danh sách xe vận tải và cơ sở dữ liệu.
5 Xóa tài xế Cho phép quản trị viên xóa tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu khỏi bảng danh sách tài xế và cơ sở dữ liệu.
6 Xóa xe vận tải Cho phép quản trị viên xóa xe vận tải dựa trên thông tin xe vận tải được nhập từ bảng nhập liệu khỏi bảng danh sách xe vận tải và cơ sở dữ liệu.
7 Cập nhật tài xế Cho phép quản trị viên cập nhật tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu vào bảng danh sách tài xế và cơ sở dữ liệu.
8 Cập nhật xe vận tải Cho phép quản trị viên cập nhật xe vận tải dựa trên thông tin xe vận tải được nhập từ bảng nhập liệu vào bảng danh sách xe vận tải và cơ sở dữ liệu.
9 Tìm kiếm tài xế Cho phép quản trị viên tìm kiếm tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu.
10 Tìm kiếm xe vận tải Cho phép quản trị viên tìm kiếm xe vận tải dựa trên thông tin xe vận tải được nhập từ bảng nhập liệu.
11 Tìm kiếm đơn hàng Cho phép quản trị viên tìm kiếm đơn hàng dựa trên thông tin đơn hàng được nhập từ bảng nhập liệu.
12 Cập nhật thông tin vận chuyển đơn hàng
Cho phép quản trị viên cập nhật thông tin tài xế phụ trách và xe vận tải cho đơn hàng chưa được vận chuyển dựa trên thông tin đơn hàng được nhập từ bảng nhập liệu vào bảng danh sách đơn hàng và cơ sở dữ liệu.
13 Xuất đơn hàng Cho phép quản trị viên xuất đơn hàng từ danh sách đơn hàng đã chọn ra file Word
3.2.2 Lược đồ use case phần mềm quản lý vận tải
Hình 3.27: Lược đồ use case của phần mềm quản lý vận tải
3.2.3 Đặc tả use case phần mềm quản lý vận tải
Bảng 3.17 Đặc tả use case hiển thị danh sách trong phần mềm quản lý vận tải
Use case Hiển thị danh sách
Người tham gia Quản trị viên.
Mô tả Khi mở phần mềm quản lý vận tải quản trị viên có thể xem các danh sách:
- Danh sách thông tin tài xế
- Danh sách thông tin xe vận tải
- Danh sách thông tin đơn hàng Tiền điều kiện Quản trị viên đã mở phần mềm và phần mềm chạy ổn định. Hậu điều kiện Hiển thị các danh sách tương ứng với trang hiện tại.
Luồng 1 Quản trị viên mở phần mềm.
2 Phần mềm kết nối và truy vấn cơ sở dữ liệu để lấy thông tin danh sách tài xế, đơn hàng, xe vận tải.
3 Phần mềm thêm thông tin các danh sách vào bảng tương ứng.
4 Phần mềm hiển thị danh sách tương ứng với trang hiện tại.
Bảng 3.18 Đặc tả use case thêm tài xế trong phần mềm quản lý vận tải
Use case Thêm tài xế
Người tham gia Quản trị viên.
Mô tả Quản trị viên thêm tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu vào bảng danh sách tài xế và cơ sở dữ liệu.
Tiền điều kiện - Quản trị viên đã mở phần mềm và phần mềm chạy ổn định.
- Quản trị viên đang ở trang tài xế của phần mềm.
- Quản trị viên đã nhấn nút "Thêm" trong giao diện trang tài xế. Hậu điều kiện Thông tin tài xế mới được thêm vào danh sách tài xế và cơ sở dữ liệu.
Luồng 1 Quản trị viên chọn trang tài xế trong phần mềm.
2 Phần mềm hiển thị danh sách tài xế trong bảng.
3 Quản trị viên nhập thông tin tài xế mới (bao gồm các trường như họ tên, địa chỉ, số điện thoại, cmnd/cccd ).
4 Quản trị viên nhấn nút "Thêm" để thực hiện thêm tài xế.
5 Phần mềm kiểm tra tính hợp lệ của thông tin tài xế (đảm bảo các trường bắt buộc được điền đầy đủ).
6 Nếu thông tin tài xế hợp lệ, phần mềm thêm thông tin tài xế vào bảng danh sách tài xế và cập nhật cơ sở dữ liệu.
7 Phần mềm hiển thị thông báo thành công cho quản trị viên. Luồng thay thế 5 Nếu thông tin tài xế không hợp lệ (ví dụ: một trường bị bỏ trống), phần mềm hiển thị thông báo lỗi và yêu cầu quản trị viên cung cấp thông tin hợp lệ Quản trị viên cung cấp thông tin hợp lệ và quay lại bước 4.
Bảng 3.19 Đặc tả use case xóa tài xế trong phần mềm quản lý vận tải
Use case Xóa tài xế
Người tham gia Quản trị viên.
Mô tả Quản trị viên xóa tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu khỏi bảng danh sách tài xế và cơ sở dữ liệu. Tiền điều kiện - Quản trị viên đã mở phần mềm và phần mềm chạy ổn định.
- Quản trị viên đang ở trang tài xế của phần mềm.
- Quản trị viên đã nhấn nút "Xóa" trong giao diện trang tài xế. Hậu điều kiện Thông tin tài xế xóa khỏi danh sách tài xế và cơ sở dữ liệu. Luồng 1 Quản trị viên chọn trang tài xế trong phần mềm.
2 Phần mềm hiển thị danh sách tài xế trong bảng.
3 Quản trị viên nhập thông tin tài xế (chỉ cần các trường họ tên và cmnd/cccd).
4 Quản trị viên nhấn nút "Xóa" để thực hiện xóa tài xế.
5 Phần mềm kiểm tra tính hợp lệ của thông tin tài xế (đảm bảo 2 trường họ tên và cmnd/cccd được điền).
6 Nếu thông tin tài xế hợp lệ, phần mềm xóa thông tin tài xế khỏi bảng danh sách tài xế và cơ sở dữ liệu.
7 Phần mềm hiển thị thông báo thành công cho quản trị viên. Luồng thay thế 5 Nếu thông tin tài xế không hợp lệ (ví dụ: điền sai thông tin tài xế), phần mềm hiển thị thông báo lỗi và yêu cầu quản trị viên cung cấp thông tin hợp lệ Quản trị viên cung cấp thông tin hợp lệ và quay lại bước 4.
Bảng 3.20 Đặc tả use case cập nhật tài xế trong phần mềm quản lý vận tải
Use case Cập nhật tài xế
Người tham gia Quản trị viên.
Mô tả Quản trị viên cập nhật tài xế dựa trên thông tin tài xế được nhập từ bảng nhập liệu vào bảng danh sách tài xế và cơ sở dữ liệu. Tiền điều kiện - Quản trị viên đã mở phần mềm và phần mềm chạy ổn định.
- Quản trị viên đang ở trang tài xế của phần mềm.
- Quản trị viên đã nhấn nút "Cập nhật" trong giao diện trang tài xế.
KẾT QUẢ VÀ ĐÁNH GIÁ 75
KẾT QUẢ 75
Sau một thời gian tìm hiểu, nghiên cứu và thực hiện đề tài, nhóm thực hiện đã hoàn thành được đề tài với kết quả bao gồm:
- Một mô hình mẫu thử dùng theo dõi các chỉ số nhiệt độ, độ ẩm trong thùng hàng và vị trí xe trong quá trình vận tải
- Một web cho phép người dùng quản lý đơn hàng và hiển thị các dữ liệu thu thập lên trên bản đồ
- Một app PC dùng quản lý đơn hàng và tài xế và các xe vận tải.
Hình 4.1: Mô hình sản phẩm (a) Phía ngoài mô hình (b) Bên trong mô hình.
Về thiết kế: thiết kế ra một mô hình chứa linh kiện phần cứng liên quan với kích thước phù hợp với các ứng dụng đòi hỏi tính di động như mục tiêu đề tài hướng đên.
Về chức năng: đáp ứng đủ các chức năng mục tiêu, dữ liệu cập nhật, hiển thị gửi lên cơ sở dữ liệu ổn định Có giao diện để nhập và hiển thị thông tin bên ngoài hộp.
Hình 4.2: Nhập mật khẩu để mở khóa thùng hàng.
Hình 4.3: Kết quả đọc dữ liệu từ thẻ nhớ.
Sau khi kết thúc quá trình vận chuyển, có thể đọc thẻ nhớ để truy xuất các lịch sử dữ liệu của chuyến đi.
4.1.2.1 Kết quả chức năng phần mềm quản lý vận tải
Nhóm đã tạo được một phần mềm quản lý vận tải và thực hiện được các kết quả sau:
Bảng 4.1: Bảng kết quả các chức năng phần mềm quản lý vận tải.
STT Chức năng Kết quả
1 Hiển thị danh sách các thông tin trong từng trang
2 Thêm tài xế Thành công
3 Thêm xe vận tải Thành công
4 Xóa tài xế Thành công
5 Xóa xe vận tải Thành công
6 Cập nhật tài xế Thành công
7 Cập nhật xe vận tải Thành công
8 Tìm kiếm tài xế Thành công
9 Tìm kiếm xe vận tải Thành công
10 Tìm kiếm đơn hàng Thành công
11 Cập nhật thông tin tài xế đơn hàng Thành công
12 Xuất thông tin đơn hàng Thành công
Hình 4.4: Kết quả thêm tài xế.
Hình 4.5: Kết quả tìm tài xế theo tên.
Hình 4.6: Kết quả xóa tài xế theo tên và cmnd/cccd.
Hình 4.7: Kết quả cập nhật địa chỉ tài xế.
Hình 4.8: Kết quả thêm xe vận tải.
Hình 4.9: Kết quả cập nhật số điện thoại của chủ xe vận tải.
Hình 4.10: Kết quả tìm xe vận tải bằng tên chủ xe và biển số xe.
Hình 4.11: Kết quả xóa xe vận tải theo tên chủ xe và biển số xe.
Hình 4.12: Kết quả cập nhật tài xế và xe cho đơn hàng chưa chạy.
Hình 4.13: Kết quả tìm đơn hàng theo mã đơn.
Hình 4.14: Kết quả xuất thông tin đơn hàng.
4.1.2.2 Kết quả chức năng trang web
Nhóm đã tạo được một trang web và thực hiện được các kết quả sau:
Bảng 4.2: Bảng kết quả chức năng trang web
STT Chức năng Mô tả
1 Chuyển đổi giữa các trang Thành công
2 Hiển thị thông tin đơn hàng dưới dạng bảng lưới Thành công
3 Lọc đơn hàng Thành công
4 Tạo đơn hàng Thành công
5 Xem thông tin đơn hàng Thành công
6 Theo dõi đơn hàng Thành công
7 Đăng nhập, đăng ký, đăng xuất Thành công
Hình 4.15: Kết quả đăng nhập trang web.
Hình 4.16: Kết quả đăng ký trang web.
Hình 4.17: Kết quả bảng danh sách đơn hàng trên trang web.
Hình 4.18: Kết quả xem thông tin đơn hàng trên trang web.
Hình 4.19: Kết quả tìm địa chỉ giao/nhận hàng khi người dùng tạo đơn hàng
Hình 4.20: Kết quả nhập thông tin đơn hàng và gửi đơn khi tạo đơn hàng
Hình 4.21: Kết quả theo dõi đơn hàng trên trang web.
KIỂM THỬ GPS 86
Kiểm thử sai số định vị GPS Đề tài của chúng tôi tập trung vào giám sát vị trí, trong đó GPS đóng vai trò then chốt Vì vậy, độ chính xác của dữ liệu GPS là yếu tố rất quan trọng Để kiểm tra tính chính xác của dữ liệu GPS, nhóm quyết định sử dụng Google Maps làm tham chiếu. Google Maps, một ứng dụng phát triển bởi Google, không chỉ được tin cậy bởi uy tín của công ty mà còn được sử dụng rộng rãi trên toàn thế giới, đảm bảo độ tin cậy cao khi dùng làm chuẩn đối chiếu.
Kiểm thử ở địa điểm bất kỳ, số lần lấy mẫu 50 lần So sánh với định vị GPS của địa điểm trên bảng đồ.
1 Thu thập 50 mẫu dữ liệu gửi về từ module GPS với delay 1000ms mỗi lần lấy mẫu.
2 Tiến hành tra cứu dữ liệu tọa độ GPS và vị trí định vị trên google qua trình duyệt web laptop.
Hình 4.22: Kết quả một số trường hợp kiểm tra sai số GPS tham chiếu Google Map.
So sánh giữa kết quả tham chiếu lấy từ google (chấm đen) và dữ liệu vị trí lấy từ module GPS (ico đỏ) Độ sai số giữa dữ liệu thu thập và dữ liệu tham chiếu có lệch từ1-4 mét, độ lệch khá thấp và gần đúng Vì vậy, dữ liệu GPS lấy về là dữ liệu đáng tin cậy.
ĐÁNH GIÁ 87 CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 89
Đề tài cơ bản đã đạt được những mục tiêu đề ra ban đầu về phần cứng và cả phần mềm Các hoạt động của hệ thống đã được kiểm tra các tính năng và các hoạt động ở một vài trường hợp cơ bản và nhận về các kết quả như mong muốn
Về mặt thiết kế, nhóm đã xây dựng một mô hình mẫu thử dùng để theo dõi các chỉ số nhiệt độ, độ ẩm và vị trí Mô hình này được thiết kế chi tiết, đảm bảo các yêu cầu kỹ thuật và tương thích tốt với hệ thống web và ứng dụng PC Bên cạnh đó, nhóm cũng phát triển một trang web hiển thị dữ liệu thu thập trên bản đồ với giao diện thân thiện, dễ sử dụng Ứng dụng PC quản lý đơn hàng và tài xế cũng được thiết kế với giao diện thân thiện, tích hợp các chức năng quản lý hiệu quả và hoạt động ổn định.
Về mặt chức năng, hệ thống cho phép theo dõi các chỉ số nhiệt độ, độ ẩm bên trong thùng hàng và trạng thái hàng hóa, cung cấp dữ liệu thời gian thực về nhiệt độ, độ ẩm và các chỉ số khác Ngoài ra, hệ thống còn cho phép theo dõi vị trí và lộ trình của đơn hàng qua trang web, hiển thị vị trí hiện tại và lộ trình đã đi của đơn hàng trên bản đồ Tính bảo mật của thùng hàng được đảm bảo bằng việc sử dụng xác thực mật khẩu và địa điểm, chỉ cho phép mở thùng hàng khi đúng mật khẩu và đúng địa điểm xác định trước Thêm vào đó, ứng dụng PC giúp quản lý thông tin tài xế và đơn hàng một cách hiệu quả, lưu trữ và quản lý thông tin chính xác, giảm thiểu sai sót Cuối cùng, sản phẩm mô hình hoạt động ổn định, đảm bảo sự liên kết mượt mà giữa các thành phần của hệ thống, từ mô hình mẫu thử đến trang web và ứng dụng PC Nhìn chung, kết quả của đề tài đã đạt được mục tiêu đề ra, tạo ra một mô hình thiết kế kỹ lưỡng và chức năng hiệu quả trong việc quản lý và theo dõi vận tải hàng hóa, đặc biệt là hàng hóa trong container.
CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
KẾT LUẬN 89
Nhóm thực hiện đề tài đã xây dựng một hệ thống theo dõi vận tải hàng hóa đáp ứng các tiêu chí về chức năng và hiệu suất đề ra ban đầu Các kết quả đạt được gồm: theo dõi chỉ số nhiệt độ, độ ẩm bên trong thùng hàng và trạng thái hàng hóa, theo dõi vị trí, lộ trình đơn hàng qua web, đảm bảo tính bảo mật cho thùng hàng bằng xác thực mật khẩu và địa điểm, quản lý thông tin tài xế, đơn hàng qua app PC, và sản phẩm mô hình hoạt động ổn định, tương thích tốt với web và app Hệ thống có nhiều ưu điểm như khả năng phát hiện và cảnh báo tự động khi có biến động bất thường, giúp người quản lý can thiệp kịp thời, cũng như khả năng lưu trữ và truy xuất dữ liệu linh hoạt, hỗ trợ người quản lý theo dõi thông tin quá trình vận chuyển đơn hàng một cách dễ dàng.Tuy nhiên, do hạn chế về kinh nghiệm và thời gian, vẫn còn những lỗ hổng chưa hoàn thiện, như: mô hình thử nghiệm chưa hợp lý, cần tách màn hình thành thành phần riêng biệt với hộp đo nhiệt độ, độ ẩm thùng hàng, tạo thêm một node và giao tiếp không dây truyền dữ liệu với màn hình; web, phần mềm trên máy tính và hộp mô hình chưa có độ thẩm mỹ cao; và thuật toán đăng nhập chưa có tính bảo mật cao.
HƯỚNG PHÁT TRIỂN 89 TÀI LIỆU THAM KHẢO 90 PHỤ LỤC
Tuy nhóm nghiên cứu đã hoàn tất việc xây dựng đề tài nhưng do những hạn chế về mặt thời gian cũng như kinh nghiệm nghiên cứu, hệ thống vẫn còn những thiếu sót cần được khắc phục và những hướng phát triển cần được nghiên cứu thêm. Để khắc phục những hạn chế của đề tài, nhóm chúng tôi đề xuất một số cải tiến sau:
− Tối ưu hóa thuật toán để giảm thiểu độ trễ khi hoạt động Nâng cao các thuật toán về bảo mật và địa điểm để thuật toán trở nên phù hợp thực tế hơn.
− Thiết kế tách rời giữa mô hình màn hình và các cảm biến, module để phù hợp hơn với trường hợp sử dụng ở thực tế.
− Cải tiến hệ thống cơ sở dữ liệu để tăng cường khả năng truy xuất dữ liệu.
− Cải tiến các cảm biến để phù hợp sử dụng trong công nghiệp.
− Cải tiến phần mềm máy tính thêm các chức năng lập lịch cho từng tài xế.
− Cải tiến trang web có chức năng thanh toán online cho đơn hàng.
− Cải tiến trang web có chức năng tải file lịch sử chuyến đi thu thập được từ thẻ nhớ SD để hiển thị thông tin lịch sử cho đơn hàng.
− Cải tiến trang web có chức năng xem biểu đồ lịch sử thông số nhiệt độ, độ ẩm.
[1] Greg Crouch, “Understanding the SPI Bus with NI LabVIEW,” National Instruments, May 2013.
[2] Kundu, Manish, and Abhijeet Kumar "A Review on Low Power SPI Protocol.", International Journal of VLSI Design and Communication Systems
[3] Motorola, “SPI Block Guide V03.06,” Motorola, Inc., doc no S12SPIV3/D, Feb. 2003.
[4] Mankar, Jayant, et al "Review of I2C protocol." International Journal of Research in Advent Technology 2.1 (2014).
[5] Delvai, Martin, Ulrike Eisenmann, and Wilfried Elmenreich, "Intelligent UART module for real-time applications.", WISES 2003.
[6] Cedeno, Walter, and Phillip A Laplante, "An overview of real-time operating systems."JALA: Journal of the Association for Laboratory Automation 2007.
[7] Scott Campbel, " Basics of the I2C communication protocol" DIY Electronics.
[8] Barrett, Steven F, "Arduino microcontroller processing for everyone!" Springer Nature, 2022.
[9] Cao Minh Gia Huy, "Giới thiệu Arduino Mega2560".Arduino.vn, 11.2015
[10] Hambarde, Prasanna, Rachit Varma, and Shivani Jha, "The survey of real time operating system: RTOS." 2014 International Conference on Electronic Systems, Signal Processing and Computing Technologies IEEE, 2014.
[11] Chen, Jinrong, and Shengqiu Huang, "Analysis and Comparison of UART, SPI and I2C." 2023 IEEE 2nd International Conference on Electrical Engineering, BigData and Algorithms (EEBDA) IEEE,2023.
[12] Myers, Paul, "Interfacing using serial protocols using spi and i2c." Proc ESP
[13] Pachankar, Prasad, et al "Intelligent Cargo Management System Using Arduino."
[14] Cẩn Y, " Nhu cầu vận chuyển xuyên quốc gia tại Đông Nam Á tăng mạnh ".
[15] Agarwal, Nainesh, et al "Algorithms for GPS operation indoors and downtown." GPS solutions 6 (2002): 149-160.
[16] "GPS",Wikipedia https://vi.wikipedia.org/wiki/GPS
[17] Horbiński, Tymoteusz, and Dariusz Lorek "The use of Leaflet and GeoJSON files for creating the interactive web map of the preindustrial state of the natural environment." Journal of Spatial Science 67.1 (2022): 61-77
[19] "NEO-M8u-blox M8 concurrent GNSSmodulesData Sheet" (PDF), U-blox. P10-11
[20] "Digital-output relative humidity & temperature sensor/module DHT22 " (PDF). Aosong Electronics Co,.Ltd P1-2
[22] "Module 4G SIMCOM A7680C ",Linh kiện Thủ Đức https://linhkienthuduc.com
[23] "Micro SD Card Micro SDHC Mini TF Card Adapter Reader Module for
[24] "DS1307 Serial Real Time Clock",Dallas Semiconductor.P8-9
PHỤ LỤC Đường dẫn đến mã nguồn và video demo:vietnguyen20139/DATN (github.com)