Bối cảnh và vấn đề nghiên cứu

Quản lý chất thải đô thị là bài toán thực tiễn đặt ra không phân biệt quốc gia phát triển hay đang phát triển. Tại các thành phố lớn và khu công nghiệp, lượng rác thải tăng liên tục trong khi chu kỳ thu gom không theo kịp tốc độ phát sinh, khiến thùng rác nơi công cộng thường xuyên rơi vào trạng thái đầy và tràn trước khi xe rác đến lấy. Hệ quả trực tiếp là môi trường cảnh quan bị ô nhiễm, phát sinh mùi hôi và nguy cơ lây lan dịch bệnh. Tình trạng này cũng xuất hiện rõ trong môi trường học đường, khi sinh viên tiếp tục bỏ rác vào thùng đã đầy, làm rác văng ra ngoài.

Các sản phẩm thùng rác thông minh thương mại hiện có trên thị trường (Sensible Eco Living, Hòa Phát, Handy, Homematic…) chủ yếu phục vụ hộ gia đình với tính năng cảm ứng hồng ngoại tự động đóng mở nắp, thiếu khả năng tự di chuyển và định vị ngoài trời — đây là khoảng trống mà đồ án hướng tới lấp đầy.

Mục tiêu đề tài bao gồm:

  1. Ứng dụng hệ thống định vị toàn cầu GPS để định hướng di chuyển và xác định điểm đến cho thùng rác.
  2. Thiết kế thùng rác có khả năng nhận biết trạng thái đầy bằng cảm biến.
  3. Khi phát hiện rác đầy, thùng rác tự động di chuyển đến vị trí thùng rác tổng đã lập trình sẵn trên GPS.
  4. Thùng rác có thể trở về vị trí ban đầu thông qua điều khiển bằng nút nhấn.
  5. Phát tín hiệu âm thanh cảnh báo (buzzer) trong quá trình di chuyển.
  6. Né tránh vật cản nhỏ trên đường di chuyển.
  7. Theo lịch định thời gian thực (RTC), tự động di chuyển đến thùng rác tổng vào buổi tối dù thùng chưa đầy.

Đối tượng nghiên cứu là hệ thống thùng rác tự hành ngoài trời tích hợp định vị GPS, áp dụng trong môi trường trường đại học và không gian công cộng. Phạm vi được giới hạn ở điều kiện thời tiết ổn định, ngoài trời thoáng đãng, không mưa bão; kích thước thùng rác 34,5 × 34 × 44 cm; khối lượng không tải 4–5 kg và có tải 9–10 kg; đường di chuyển phải thông thoáng, ít bị che khuất. Đồ án được thực hiện tại Trường Đại học Sư phạm Kỹ thuật TP.HCM, hoàn thành năm 2018.


Cơ sở lý thuyết và phương pháp

Khung lý thuyết và công nghệ nền

Đồ án sử dụng ba nhóm kiến thức nền tảng:

Hệ thống định vị toàn cầu GPS (NAVSTAR): Tác giả trình bày cấu trúc ba phần của GPS (không gian – kiểm soát – sử dụng), nguyên lý trilateration xác định vị trí, công thức tính khoảng cách S = v × t, và công thức Haversine để tính khoảng cách (d) cùng góc lệch hướng (θ) giữa hai tọa độ kinh/vĩ độ. Ngoài GPS, đồ án tham khảo so sánh với hệ thống GLONASS (Nga, 30 vệ tinh) và Galileo (EU, 30 vệ tinh) theo bảng thông số của Yasuda (2001).

Dịch vụ bản đồ trực tuyến Google Maps: Được dùng để lấy tọa độ các điểm đến (xuất phát, điểm 1 đến điểm 6) và kiểm tra kết quả định vị thực tế.

Chuẩn truyền dữ liệu: Giao tiếp Serial UART (truyền không đồng bộ giữa module GPS và Arduino) và giao tiếp I2C (hai dây SCL/SDA, tốc độ 100 kHz, 400 kHz, tối đa 3,4 MHz) dùng cho cảm biến la bàn số và module RTC.

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

Đồ án áp dụng phương pháp thiết kế kỹ thuật hệ thống nhúng kết hợp với thực nghiệm kiểm chứng:

  • Nghiên cứu lý thuyết về GPS, UART, I2C, các module phần cứng.
  • Thiết kế sơ đồ khối, sơ đồ nguyên lý và lựa chọn linh kiện.
  • Thi công, lắp ráp phần cứng và lập trình nhúng bằng Arduino IDE.
  • Chạy thử nghiệm thực tế ngoài trời, cân chỉnh và đánh giá hệ thống.

Nguồn dữ liệu bao gồm tài liệu kỹ thuật của các nhà sản xuất linh kiện (Ublox, Texas Instruments…), tài liệu học thuật tham khảo, và số liệu đo đạc thực nghiệm trong quá trình chạy thử.


Nội dung chính theo từng chương

Chương 1: Tổng quan

Chương đặt vấn đề về thực trạng quản lý chất thải tại các đô thị và môi trường học đường, phân tích hạn chế của các thùng rác thông minh gia dụng hiện có (chỉ cảm ứng, không tự di chuyển), từ đó xác lập lý do chọn đề tài. Chương liệt kê đầy đủ mục tiêu, nội dung nghiên cứu (19 nhiệm vụ cụ thể từ nghiên cứu lý thuyết đến chạy thử và viết báo cáo) và các giới hạn thông số kỹ thuật của hệ thống.

Chương 2: Cơ sở lý thuyết

Trình bày nền tảng lý thuyết theo ba nhóm chính:

  • GPS: Lịch sử phát triển (vệ tinh đầu tiên năm 1978, hoàn chỉnh 23 vệ tinh năm 1994, 27 vệ tinh đến năm 2000), cấu trúc hệ thống, nguyên lý trilateration, quá trình giải mã tín hiệu (so sánh mã giả ngẫu nhiên, tính độ trễ thời gian), hai tần số L1 (1575,42 MHz) và L2, ứng dụng trong giáo dục, quân sự và giao thông, cùng các hạn chế hoạt động.

  • Google Maps: Cơ chế thu thập dữ liệu (chương trình Base Map Partner Program – BMPP, Street View với OCR, dữ liệu vệ tinh, đóng góp cộng đồng qua Google Map Maker từ 2008).

  • Chuẩn truyền thông: Nguyên lý UART (truyền nối tiếp không đồng bộ) và I2C (hai dây SDA/SCL, quan hệ master/slave, địa chỉ duy nhất cho mỗi thiết bị).

Bảng so sánh ba hệ thống vệ tinh:

Hạng mục GPS GLONASS GALILEO
Số vệ tinh 28 (đến 2000) 30 30
Số mặt phẳng quỹ đạo 6 MEO 3 MEO 3 MEO
Độ nghiêng 55° 64,8° 56°
Chu kỳ 11 giờ 58 phút 11 giờ 15 phút 40 giây 14 giờ 21 phút 36 giây
Phương trình CDMA FDMA CDMA
Thời gian chuẩn UTC (USNO) UTC (Nga) UTC

Chương 3: Thiết kế

Chương trình bày sơ đồ khối hệ thống gồm 7 khối chức năng: khối nguồn, khối xử lý trung tâm (Arduino Mega 2560), khối nhận tín hiệu GPS, khối cảm biến la bàn, khối cảm biến khoảng cách, khối điều khiển động cơ và khối động cơ.

Lựa chọn và lý giải linh kiện:

  • Khối xử lý trung tâm: Arduino Mega 2560 (vi điều khiển ATmega2560) được chọn thay vì PIC 16F887, AT89C52, Raspberry Pi hay ARM vì tích hợp sẵn 54 chân digital (15 PWM), 16 đầu vào analog, 4 cổng UART, thư viện phong phú, thao tác đơn giản và giá rẻ (từ 75.000 VNĐ so với Raspberry Pi hơn 1 triệu VNĐ hoặc ARM từ 400.000 VNĐ).
Thông số Giá trị
Vi điều khiển ATmega2560
Điện áp hoạt động 5V
Điện áp đầu vào (khuyến nghị) 7–12V
Số chân I/O 54 (15 PWM)
Chân Input Analog 16
Dòng DC mỗi I/O 20 mA
Bộ nhớ Flash 256 KB (8 KB bootloader)
SRAM 8 KB
EEPROM 4 KB
  • Module GPS: NEO 6 (Ublox), điện áp 3–5 VDC, dòng 50 mA, giao tiếp UART TTL, chu kỳ cập nhật tọa độ 0,1–1 giây, sai số < 1 m, hỗ trợ GPS-QZSS-GLONASS. Được chọn thay NEO 7/8 vì giá thành phù hợp và độ chính xác đủ cho yêu cầu.
  • Cảm biến la bàn số: HMC5883L, điện áp 3,3V, dòng 0,1 mA, giao tiếp I2C, dùng để xác định hướng di chuyển kết hợp với tọa độ GPS.
  • Cảm biến khoảng cách: 4 cảm biến siêu âm HC-SR04, điện áp 5V, dòng 15 mA, dùng phát hiện và né tránh vật cản.
  • Định thời gian thực: Module RTC DS1307, giao tiếp I2C.
  • Điều khiển động cơ: Module L298 (mạch cầu H), điều khiển đồng thời 2 cặp động cơ DC 12V.
  • Động cơ: 4 động cơ DC giảm tốc JGA25-370, 12V, 250 vòng/phút khi không tải, dòng 340–370 mA.
  • Nguồn: Ắc quy (acquy).

Chương trình bày chi tiết sơ đồ nguyên lý kết nối từng khối với Arduino Mega 2560 và sơ đồ nguyên lý toàn mạch.

Chương 4: Thi công hệ thống

Trình bày quá trình thi công mô hình xe rác (mặt đế bằng mica, khung bánh xe, lắp ráp thùng rác từ 4 hướng), lắp ráp các khối điều khiển vào mô hình và quá trình lập trình.

Về lập trình, nhóm sử dụng Arduino IDE — một môi trường phát triển tích hợp mã nguồn mở. Lưu đồ giải thuật bao gồm chương trình chính và các chương trình con: Xoay (điều chỉnh góc hướng) và Chuyển hướng (rẽ tại các điểm trung gian). Các tọa độ điểm đến được lấy thủ công từ Google Maps (điểm xuất phát và 6 điểm dọc hành trình).

Chương 5: Kết quả, nhận xét và đánh giá

Trình bày kết quả đạt được về kỹ năng và kỹ thuật của nhóm, kết quả thực nghiệm định vị tọa độ trên Google Maps, kết quả di chuyển thực tế ngoài trời (ảnh chụp thực tế), và đánh giá năng lượng tiêu thụ thực nghiệm.

Chương 6: Kết luận và hướng phát triển

Tổng kết các mục tiêu đạt được và chưa đạt được, đồng thời đề xuất 5 hướng phát triển cụ thể.


Thiết kế và triển khai

Kiến trúc hệ thống

Hệ thống được tổ chức theo mô hình điều khiển tập trung với Arduino Mega 2560 là bộ xử lý trung tâm. Tín hiệu từ các cảm biến đầu vào (GPS NEO 6 qua UART, HMC5883L qua I2C, 4 cảm biến HC-SR04 qua digital I/O, RTC DS1307 qua I2C) được đưa về Arduino xử lý, sau đó Arduino xuất tín hiệu điều khiển đến module L298 để dẫn động 4 động cơ DC.

Thuật toán điều hướng hoạt động theo nguyên lý:

  1. Đọc tọa độ GPS hiện tại (kinh độ, vĩ độ).
  2. Tính khoảng cách và góc hướng đến điểm đích tiếp theo bằng công thức Haversine.
  3. Đọc góc hướng thực tế từ cảm biến la bàn HMC5883L.
  4. Tính sai lệch góc, điều khiển 2 cặp động cơ để hiệu chỉnh hướng (chương trình con Xoay, Chuyển hướng).
  5. Trong quá trình di chuyển, liên tục kiểm tra 4 cảm biến HC-SR04 để phát hiện vật cản.
  6. RTC DS1307 kích hoạt chu kỳ di chuyển định kỳ mỗi tối dù thùng chưa đầy.

Công nghệ và công cụ sử dụng

Thành phần Chi tiết
Vi điều khiển Arduino Mega 2560 (ATmega2560)
Môi trường lập trình Arduino IDE
Ngôn ngữ C/C++ (Arduino)
Định vị Module GPS Ublox NEO 6
Xác định hướng Cảm biến la bàn số HMC5883L
Phát hiện vật cản 4 cảm biến siêu âm HC-SR04
Thời gian thực Module RTC DS1307
Điều khiển động cơ Module L298 (mạch cầu H)
Động cơ chấp hành 4 × JGA25-370, 12V, 250 RPM
Nguồn điện Ắc quy
Kiểm chứng vị trí Google Maps

Kiểm thử

Kiểm thử được thực hiện theo hình thức chạy thử thực nghiệm ngoài trời. Nhóm lấy tọa độ 7 điểm (điểm xuất phát và 6 điểm trung gian/đích) từ Google Maps, nạp vào chương trình Arduino, sau đó cho hệ thống vận hành thực tế và ghi nhận kết quả di chuyển so với lý thuyết. Dung lượng điện năng tiêu thụ được đo và tổng hợp vào Bảng 5.1. Sau mỗi lần chạy thử, nhóm tiến hành cân chỉnh lại thông số điều khiển.


Kết quả và đóng góp

Kết quả chính

Sau quá trình thực hiện, hệ thống đạt được các kết quả sau (theo ghi nhận của văn bản):

  • Thùng rác tự hành hoạt động được ngoài trời, di chuyển theo chuỗi tọa độ GPS đã lập trình (6 điểm được kiểm chứng trên Google Maps).
  • Hệ thống định vị tọa độ thực tế trên Google Maps hoạt động ổn định.
  • Nhóm thực hiện thành thạo sử dụng các cảm biến (HMC5883L, HC-SR04), module GPS NEO 6, board Arduino Mega 2560.
  • Điện năng tiêu thụ thực nghiệm được đo đạc và ghi nhận vào Bảng 5.1 (dung lượng tiêu thụ cụ thể theo từng thành phần).

Giải pháp và kiến nghị

Nhóm tác giả đề xuất 5 hướng phát triển cụ thể cho các phiên bản tiếp theo:

  1. Sử dụng nguồn pin năng lượng mặt trời thay ắc quy để tăng thời gian hoạt động.
  2. Ứng dụng xử lý ảnh để nhận biết vật thể xung quanh.
  3. Ứng dụng Machine Learning để thùng rác tự học và tối ưu hành vi.
  4. Kết hợp thêm các cảm biến khác để mở rộng khả năng nhận biết môi trường.
  5. Ứng dụng IoT — kết nối thùng rác thông minh vào hệ sinh thái thành phố thông minh.

Đóng góp so với các sản phẩm trước

Điểm khác biệt so với các thùng rác thông minh thương mại hiện có: sản phẩm trong đồ án được thiết kế cho môi trường ngoài trời và tích hợp khả năng tự di chuyển theo định vị GPS, tính năng mà các dòng thùng rác gia dụng (Sensible Eco Living, Hòa Phát, Handy, Homematic…) không có. Ngoài ra, tích hợp đồng hồ thời gian thực để thực hiện lịch di chuyển định kỳ là điểm bổ sung so với các mô hình xe tự hành đơn giản.


Hạn chế và hướng nghiên cứu tiếp

Văn bản thừa nhận một số hạn chế trực tiếp:

  • Kiến thức và thời gian thực hiện còn hạn chế, dẫn đến thiếu sót không tránh khỏi trong quá trình hoàn thiện hệ thống.
  • Điều kiện hoạt động hẹp: Hệ thống chỉ hoạt động trong thời tiết ổn định, không mưa bão; đường đi phải thông thoáng và ít vật cản che khuất tín hiệu GPS.
  • Phụ thuộc nguồn ắc quy: Thời gian hoạt động bị giới hạn bởi dung lượng ắc quy, chưa có giải pháp tự sạc.
  • Khả năng né tránh vật cản còn đơn giản: Chỉ né được vật cản nhỏ, chưa xử lý được môi trường phức tạp.

Hướng nghiên cứu mở được tác giả chỉ ra bao gồm tích hợp năng lượng tái tạo, xử lý ảnh, học máy, mở rộng cảm biến và kết nối IoT vào hệ thống quản lý thành phố thông minh.


Giá trị tham khảo

Đồ án có giá trị tham khảo cho các đối tượng sau:

  • Sinh viên ngành Điện tử – Viễn thông, Điện tử Công nghiệp, Cơ điện tử, Kỹ thuật Điều khiển và Tự động hóa đang tìm hiểu về hệ thống nhúng với Arduino, lập trình điều hướng GPS và tích hợp đa cảm biến. Phần lý thuyết về GPS (Chương 2) cung cấp kiến thức nền khá đầy đủ về cấu trúc hệ thống, nguyên lý trilateration, công thức Haversine và chuẩn truyền thông UART/I2C.

  • Sinh viên thực hiện đồ án robot tự hành hoặc xe điều khiển tự động có thể tham khảo phần thiết kế sơ đồ khối (Chương 3), phương án lựa chọn linh kiện kèm lý giải chi phí, và lưu đồ giải thuật điều hướng (Chương 4).

  • Người quan tâm đến ứng dụng GPS trong hệ thống nhúng quy mô nhỏ có thể tham khảo cách tích hợp module GPS NEO 6 với Arduino Mega 2560 qua UART, kết hợp cảm biến la bàn HMC5883L qua I2C để xác định hướng di chuyển.

  • Phần Phụ lục Code Arduino cung cấp mã nguồn tham chiếu trực tiếp cho những ai muốn triển khai hệ thống tương tự.


Câu hỏi thường gặp

1. Thùng rác tự hành này điều hướng theo cơ chế nào để đến đúng điểm đích? Hệ thống kết hợp dữ liệu kinh độ/vĩ độ từ module GPS NEO 6 với góc hướng từ cảm biến la bàn số HMC5883L. Tọa độ điểm đến được nhập thủ công từ Google Maps. Công thức Haversine tính khoảng cách và góc lệch hướng giữa vị trí hiện tại và điểm tiếp theo; hai chương trình con Xoay và Chuyển hướng trên Arduino xử lý việc điều chỉnh hướng thông qua module L298 điều khiển 4 động cơ DC.

2. Vì sao nhóm chọn Arduino Mega 2560 thay vì Raspberry Pi hoặc vi điều khiển PIC? Arduino Mega 2560 được chọn vì đáp ứng đủ yêu cầu (54 chân digital, 4 cổng UART, 16 đầu vào analog) với chi phí thấp (từ 75.000 VNĐ), trong khi Raspberry Pi có giá hơn 1 triệu VNĐ và ARM từ 400.000 VNĐ. PIC và AT89C52 tuy phổ biến nhưng kết nối chân phức tạp, cần thiết kế mạch in tốn thời gian. Thư viện Arduino phong phú cũng là yếu tố thuận lợi.

3. Module GPS NEO 6 có độ chính xác và tốc độ cập nhật như thế nào, và tại sao không chọn NEO 7 hoặc NEO 8? NEO 6 đạt sai số vị trí nhỏ hơn 1 m, chu kỳ cập nhật tọa độ 0,1–1 giây tùy địa hình, hỗ trợ GPS-QZSS-GLONASS. Nhóm chọn NEO 6 thay vì NEO 7/8 vì giá thành rẻ hơn, công suất tiêu thụ ít hơn, và độ chính xác sau thử nghiệm thực tế được đánh giá là đủ đáp ứng yêu cầu di chuyển trong khuôn viên trường.

4. Cơ chế di chuyển định kỳ theo thời gian hoạt động như thế nào khi thùng rác chưa đầy? Module RTC DS1307 (giao tiếp I2C) cung cấp thông tin thời gian thực cho Arduino. Khi đến thời điểm định sẵn trong buổi tối, chương trình Arduino kích hoạt quy trình di chuyển đến vị trí thùng rác tổng dù cảm biến chưa báo rác đầy. Thùng rác chờ tại đó cho đến khi người vận hành nhấn nút để kích hoạt hành trình trở về.

5. Hệ thống xử lý vật cản trong quá trình di chuyển như thế nào? Bốn cảm biến siêu âm HC-SR04 (điện áp 5V, dòng 15 mA mỗi cảm biến) được bố trí để đọc khoảng cách đến vật cản xung quanh thùng rác. Khi phát hiện vật cản nhỏ, chương trình Arduino xử lý để né tránh. Tuy nhiên, theo giới hạn của đề tài, hệ thống chỉ hoạt động trong điều kiện đường đi thông thoáng và xử lý được vật cản ở mức đơn giản.


Kết luận

Đồ án "Thùng Rác Thông Minh" của sinh viên Lê Thanh Cao và Nguyễn Thanh Tuấn, Trường Đại học Sư phạm Kỹ thuật TP.HCM (2018), trình bày thiết kế và thi công mô hình thùng rác tự hành ngoài trời tích hợp định vị GPS NEO 6, cảm biến la bàn HMC5883L, cảm biến siêu âm HC-SR04 và đồng hồ thời gian thực DS1307, với Arduino Mega 2560 là bộ xử lý trung tâm. Hệ thống hoàn thành được các chức năng cốt lõi: tự di chuyển đến tọa độ đích theo GPS khi rác đầy, trở về vị trí ban đầu theo lệnh nút nhấn, và di chuyển định kỳ theo lịch RTC. Mặc dù còn một số hạn chế về điều kiện hoạt động và mức độ xử lý vật cản, đồ án cung cấp nền tảng thực tế cho các nghiên cứu tiếp theo về tích hợp IoT, năng lượng mặt trời và học máy trong hệ thống quản lý chất thải thông minh.