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

Công nghệ định vị toàn cầu (GPS) giữ vai trò quan trọng trong nhiều lĩnh vực kỹ thuật và đời sống như hàng không, hàng hải, đo đạc địa chất, viễn thông và quản lý giao thông vận tải. Tại Việt Nam vào thời điểm thực hiện nghiên cứu (năm 2014), tình trạng trộm cắp các phương tiện cá nhân như xe máy, ô tô diễn ra phức tạp, đặt ra nhu cầu cấp thiết về các giải pháp giám sát và bảo vệ phương tiện từ xa theo thời gian thực. Đồng thời, các doanh nghiệp vận tải hành khách, dịch vụ taxi, xe buýt, xe chở hàng và xe công trình cũng đối mặt với bài toán tối ưu hóa chi phí vận hành, kiểm soát hành trình di chuyển, giám sát tốc độ và lộ trình của đội xe nhằm bảo đảm an toàn giao thông.

Mặc dù các hệ thống định vị thương mại đã xuất hiện trên thế giới, việc triển khai ứng dụng GPS quy mô rộng rãi tại Việt Nam thời điểm này còn gặp nhiều trở ngại do chi phí thiết bị nhập khẩu cao, tính chất công nghệ phức tạp và chưa được đưa vào giảng dạy chuyên sâu trong chương trình đào tạo đại học. Xuất phát từ bối cảnh thực tiễn đó, đồ án tốt nghiệp ngành Kỹ thuật Điện - Điện tử tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh đã lựa chọn đề tài nghiên cứu, thiết kế một hệ thống giám sát phương tiện tích hợp phần cứng định vị và phần mềm di động với chi phí hợp lý.

Mục tiêu và nhiệm vụ nghiên cứu của đồ án được xác định cụ thể như sau:

  1. Thiết kế và thi công hoàn chỉnh khối phần cứng định vị gắn trên đối tượng di động, sử dụng vi điều khiển PIC 16F887 kết hợp module viễn thông SIM908 (tích hợp GPS và GSM/GPRS), mạch đo vận tốc bánh xe dùng cảm biến Hall, mạch nguồn hạ áp và khối hiển thị LCD.
  2. Xây dựng chương trình nhúng bằng ngôn ngữ C (trình biên dịch CCS C) để điều khiển module SIM908 thông qua tập lệnh AT, thu nhận và phân tích cú pháp bản tin dữ liệu GPS theo chuẩn NMEA 0183 ($GPRMC), đo tốc độ di chuyển và đóng gói dữ liệu gửi về điện thoại qua tin nhắn SMS hoặc kết nối GPRS.
  3. Thiết kế và xây dựng ứng dụng di động trên nền tảng hệ điều hành Android (phiên bản Android 4.2) bằng công cụ Eclipse, có khả năng tự động nhận bản tin SMS, trích xuất dữ liệu tọa độ (kinh độ, vĩ độ), thời gian, vận tốc, biển số xe và hiển thị trực quan vị trí xe trên bản đồ trực tuyến Google Maps thông qua Google Maps API.
  4. Triển khai thử nghiệm đồng thời 2 module phần cứng định vị trên các phương tiện giao thông thực tế để kiểm tra khả năng truyền nhận dữ liệu, tính ổn định của đường truyền viễn thông và đánh giá sai số tọa độ của hệ thống.

Đối tượng nghiên cứu của đề tài là hệ thống định vị vệ tinh GPS, công nghệ mạng thông tin di động GSM/GPRS, vi điều khiển họ 8-bit PIC 16F887, module viễn thông SIM908 và hệ điều hành Android. Phạm vi nghiên cứu về mặt không gian tập trung vào các phương tiện giao thông đường bộ (xe máy, ô tô) hoạt động trong khu vực phủ sóng của mạng viễn thông di động tại Việt Nam. Thời gian thực hiện đồ án bắt đầu từ ngày 10/03/2014 và hoàn thành nghiệm thu vào ngày 07/07/2014.


Cơ sở lý thuyết và phương pháp nghiên cứu

Nghiên cứu được xây dựng trên nền tảng lý thuyết chuyên ngành về kỹ thuật viễn thông, kỹ thuật vi điều khiển và phát triển phần mềm di động, bao gồm các nội dung cốt lõi:

  • Hệ thống định vị toàn cầu GPS (NAVSTAR): Nguyên lý hoạt động dựa trên chùm 24 đến 27 vệ tinh nhân tạo quay quanh Trái Đất ở độ cao 20.200 km trên 6 mặt phẳng quỹ đạo. Máy thu mặt đất sử dụng tín hiệu sóng vô tuyến tần số L1 (1575,42 MHz) thuộc dải tần UHF mang mã C/A (Coarse/Acquisition) và mã P (Protected) để đo khoảng cách giả (pseudorange). Tọa độ không gian 3 chiều $(X, Y, Z)$ và sai số đồng hồ máy thu ($\Delta t$) được giải thông qua hệ 4 phương trình khoảng cách từ máy thu tới tối thiểu 4 vệ tinh. Các nguồn sai số chính gồm: độ trễ tầng điện ly và tầng đối lưu, hiệu ứng đa đường (multipath), sai số đồng hồ máy thu, sai số lịch thiên văn quỹ đạo vệ tinh và sự che khuất hình học (GDOP).
  • Chuẩn truyền dữ liệu NMEA 0183: Giao thức truyền thông nối tiếp bất đồng bộ của Hiệp hội Điện tử Hàng hải Quốc gia Hoa Kỳ. Đồ án sử dụng bản tin rút gọn $GPRMC (Recommended Minimum Specific GNSS Data) để trích xuất các trường dữ liệu quan trọng: thời gian UTC (hhmmss), trạng thái hợp lệ (A/V), vĩ độ, kinh độ, vận tốc di chuyển tính theo hải lý (knots), hướng di chuyển và ngày tháng năm (ddmmyy), kết thúc bằng mã kiểm tra tổng checksum dạng số thập lục phân (Hex).
  • Hệ thống mạng thông tin di động GSM và dịch vụ truyền dữ liệu gói GPRS: Cấu trúc mạng GSM gồm trạm di động (MS), phân hệ trạm gốc (BSS gồm BTS và BSC), phân hệ chuyển mạch mạng (NSS gồm MSC, HLR, VLR, EIR, AuC). Dịch vụ GPRS nâng cấp trên nền tảng GSM sử dụng phương thức chuyển mạch gói, chia sẻ 8 khe thời gian trên băng thông 200 kHz với 4 sơ đồ mã hóa giao diện vô tuyến (CS-1 đến CS-4), tốc độ dữ liệu thực tế đạt từ 20 kbps đến 50 kbps, hỗ trợ truyền dữ liệu theo ngăn xếp giao thức TCP/IP.
  • Vi điều khiển PIC 16F887: Vi điều khiển 8-bit kiến trúc RISC Harvard của hãng Microchip Technology với 35 lệnh đơn, tốc độ hoạt động tối đa 20 MHz (chu kỳ lệnh 200 ns). Bộ nhớ chương trình Flash dung lượng 8K word (14 bit/word), bộ nhớ dữ liệu RAM 368 byte chia thành 4 bank, bộ nhớ lưu trữ dữ liệu không bay hơi nội EEPROM 256 byte, tích hợp sẵn khối truyền thông nối tiếp bất đồng bộ USART (UART), các bộ định thời Timer 0/1/2 và bộ chuyển đổi ADC 10-bit.
  • Module viễn thông SIM908: Module tích hợp hai động cơ GSM/GPRS bốn băng tần và định vị GPS độ nhạy cao của hãng SIMCom, giao tiếp và cấu hình thông qua tập lệnh AT chuẩn và tập lệnh AT mở rộng (AT+CGPSINF).
  • Cảm biến hiệu ứng Hall A3144EUA: Thiết bị cảm biến bán dẫn dựa trên hiệu ứng Hall, chuyển đổi biến thiên từ trường nam kẹp gắn trên bánh xe thành tín hiệu xung vuông logic để đưa vào ngắt ngoài hoặc bộ đếm của vi điều khiển nhằm tính toán tốc độ di chuyển cơ học.
  • Nền tảng Android và Google Maps Android API: Kiến trúc hệ điều hành Android dựa trên nhân Linux, sử dụng máy ảo Dalvik và môi trường Java. Tích hợp thư viện bản đồ số Google Maps API v2 thông qua chứng thực khóa API (Maps API Key) liên kết với mã băm dấu vân tay SHA1 của chứng chỉ phát triển ứng dụng.

Phương pháp nghiên cứu thực tế được tác giả triển khai là sự kết hợp đan xen giữa phương pháp nghiên cứu tài liệu lý thuyết và phương pháp thực nghiệm kỹ thuật. Tác giả tiến hành nghiên cứu tài liệu kỹ thuật từ nhà sản xuất chip (datasheet của Microchip, SIMCom, Allegro), chuẩn giao thức viễn thông và tài liệu lập trình Android SDK. Dựa trên cơ sở lý thuyết, nhóm tác giả tiến hành thiết kế sơ đồ nguyên lý mạch, vẽ mạch in PCB, gia công phần cứng, lập trình phần mềm và chạy thực nghiệm trong điều kiện thực tế. Khi kết quả thực nghiệm phát sinh sai số hoặc lỗi kết nối, quá trình nghiên cứu lý thuyết được lặp lại để phân tích nguyên nhân và hiệu chỉnh thiết kế phần cứng cũng như giải thuật phần mềm.


Thiết kế và triển khai hệ thống

Hệ thống được thiết kế theo mô hình phân tán gồm hai thành phần vật lý độc lập: thiết bị định vị phần cứng gắn trên phương tiện và thiết bị hiển thị di động cầm tay sử dụng hệ điều hành Android.

Hạng mục thành phần Thông số kỹ thuật và công nghệ triển khai trong đồ án
Vi điều khiển trung tâm Microchip PIC 16F887, xung nhịp thạch anh 20 MHz, vỏ DIP 40 chân
Khối viễn thông GPS/GSM SIMCom SIM908 (tích hợp GPS Receiver và GSM/GPRS Engine)
Khối hạ áp nguồn Mạch giảm áp chuyển mạch dùng IC LM2596 (nguồn vào 12V, ra 4,0V/5V)
Cảm biến đo vận tốc Cảm biến Hall A3144EUA kèm mạch chia áp và lọc xung số
Khối hiển thị tại chỗ Màn hình tinh thể lỏng LCD 16x2 giao tiếp 4-bit với PIC 16F887
Khối nhớ mở rộng Bộ nhớ EEPROM ngoài giao tiếp bus I2C để lưu cấu hình hệ thống
Giao thức truyền thông nội bo Chuẩn UART bất đồng bộ, tốc độ baud 9600 bps
Môi trường phát triển nhúng Trình biên dịch CCS C Compiler cho vi điều khiển PIC
Môi trường lập trình Android Eclipse IDE tích hợp bộ công cụ Android SDK và ADT Plugin
Nền tảng ứng dụng di động Ngôn ngữ Java, hệ điều hành Android 4.2 (API Level 17)
Dịch vụ bản đồ số Google Maps Android API v2, xác thực qua SHA1 Fingerprint
Phương thức truyền dữ liệu Tin nhắn SMS GSM và kết nối chuyển mạch gói GPRS/TCP/IP

Về mặt phần cứng, mạch nguồn sử dụng IC nguồn xung hạ áp LM2596 nhận điện áp bình ắc-quy phương tiện (12V) hạ xuống mức điện áp ổn định để nuôi toàn mạch. Đặc biệt, khối SIM908 đòi hỏi dòng đỉnh tức thời lên tới 2A trong các chu kỳ phát sóng vô tuyến GSM, do đó mạch nguồn LM2596 được thiết kế kèm hệ thống tụ lọc dung lượng lớn để chống sụt áp nguồn. Do mức logic của vi điều khiển PIC 16F887 là chuẩn 5V TTL trong khi giao tiếp UART của SIM908 làm việc ở dải điện áp thấp hơn (2,8V - 3,3V), một mạch chuyển mức điện áp sử dụng transistor và điện trở phân áp được bổ sung nhằm tránh hư hỏng chân giao tiếp của module SIM908. Chân điều khiển Netlight của SIM908 được nối ra đèn LED chỉ thị trạng thái mạng di động, và chân Powerkey được điều khiển đóng cắt bằng chân xuất tín hiệu của PIC 16F887. Mạch cảm biến Hall A3144EUA được bố trí gần bánh xe, phát xung logic tương ứng với số vòng quay của bánh xe để vi điều khiển tính toán vận tốc độc lập với tín hiệu GPS. Toàn bộ thiết kế nguyên lý được chuyển sang vẽ mạch in 2 lớp và gia công thành 2 bo mạch phần cứng hoàn chỉnh mang tên Module 1 và Module 2.

Về mặt phần mềm nhúng, chương trình trên PIC 16F887 được tổ chức theo cơ chế xử lý ngắt nhận dữ liệu UART từ module SIM908. Sau khi cấp nguồn, vi điều khiển khởi động khối viễn thông, kiểm tra phản hồi lệnh AT, gửi tập lệnh cấu hình AT+CGPSPWR=1 để bật khối GPS và AT+CGPSRST=0 để khởi động định vị. Vi điều khiển định kỳ phát lệnh AT+CGPSINF=32 để đọc chuỗi NMEA $GPRMC từ bộ nhớ đệm của SIM908. Thuật toán tách chuỗi ký tự sẽ tìm dấu phân cách $, xác định tiền tố GPRMC, sau đó bóc tách từng trường dữ liệu được ngăn cách bởi dấu phẩy , để lấy giá trị thời gian, vĩ độ, chỉ thị Bắc/Nam, kinh độ, chỉ thị Đông/Tây, tốc độ mặt đất và ngày tháng. Chuỗi dữ liệu tọa độ đã qua chuẩn hóa sẽ được đóng gói thành nội dung tin nhắn văn bản SMS và kích hoạt lệnh AT+CMGS để gửi tới số điện thoại của thiết bị giám sát Android.

Về phía ứng dụng Android, phần mềm được thiết kế với 3 màn hình chức năng chính (Activity):

  • LoginActivity: Đảm nhiệm chức năng xác thực người dùng bằng tài khoản và mật khẩu nhằm ngăn chặn việc truy cập trái phép vào hệ thống giám sát.
  • MainActivity: Màn hình trung tâm quản lý cấu hình kết nối, hiển thị danh sách thiết bị và cho phép người dùng lựa chọn chế độ giám sát: theo dõi một phương tiện duy nhất (Module 1 hoặc Module 2) hoặc theo dõi đồng thời cả hai phương tiện trên cùng một giao diện.
  • GooglemapActivity: Kế thừa các lớp của Google Maps Android API v2, nhận Intent chứa dữ liệu tọa độ từ trình lắng nghe dịch vụ tin nhắn SMS ngầm (BroadcastReceiver). Khi có tin nhắn đến từ số thuê bao của module định vị, ứng dụng tự động bóc tách bản tin, cập nhật vị trí con trỏ (Marker) trên nền bản đồ số vệ tinh hoặc bản đồ đường phố của Google Maps, hiển thị kèm cửa sổ thông tin gồm biển số phương tiện, tốc độ di chuyển và thời điểm cập nhật.

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

Chương I: Dẫn nhập

Chương này thiết lập nền tảng cho toàn bộ đồ án thông qua việc trình bày sự phát triển của công nghệ định vị GPS trên thế giới và tính cấp thiết của việc ứng dụng GPS tại Việt Nam. Tác giả phân tích tình hình an ninh trật tự liên quan đến nạn trộm cắp xe máy, nhu cầu quản lý điều hành phương tiện của các hãng taxi, xe buýt và vận tải hàng hóa. Từ đó, tác giả xác định mục tiêu thiết kế hệ thống định vị GPS kết hợp điện thoại Android, chia phạm vi thực hiện thành hai mảng chính là module phần cứng định vị và ứng dụng hiển thị di động. Chương dẫn nhập cũng nêu rõ phương pháp nghiên cứu kết hợp giữa tham khảo tài liệu lý thuyết và thử nghiệm thực tế đan xen, làm rõ ý nghĩa thực tiễn của đề tài trong việc tạo ra sản phẩm mẫu có giá thành thấp và xác định các giới hạn nghiên cứu do điều kiện thời gian và công nghệ tại thời điểm thực hiện.

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

Chương II cung cấp hệ thống lý thuyết kỹ thuật chi tiết phục vụ cho việc tính toán và thiết kế hệ thống. Về công nghệ GPS, chương này trình bày lịch sử hình thành hệ thống NAVSTAR từ năm 1978, cấu trúc 3 phần (phần không gian gồm 27 vệ tinh, phần kiểm soát mặt đất gồm trạm trung tâm Schriever AFB cùng 5 trạm quan sát và trạm ăng-ten, phần người sử dụng), thiết lập hệ phương trình xác định tọa độ không gian 4 ẩn số từ 4 vệ tinh và thuật toán hiệu chỉnh sai số đồng hồ máy thu. Tiếp theo, tác giả trình bày chi tiết về chuẩn truyền thông NMEA 0183, phân tích cấu trúc cú pháp của chuỗi bản tin $GPRMC và phương pháp tính toán mã kiểm tra checksum.

Về mạng thông tin di động, chương này phân tích kiến trúc mạng GSM, các băng tần hoạt động (900/1800 MHz), cấu trúc phân hệ trạm gốc (BSS) và phân hệ mạng lõi (NSS). Dịch vụ dữ liệu gói GPRS được phân tích sâu về đặc tính chuyển mạch gói, các lớp thiết bị (Lớp A, B, C), cấu trúc định địa chỉ IP công cộng/nội bộ, IP tĩnh/động và 4 sơ đồ mã hóa giao diện vô tuyến (CS-1 đến CS-4). Trong phần phần cứng điều khiển, tác giả trình bày cấu trúc vi điều khiển PIC 16F887 với kiến trúc Harvard, tổ chức 8K Flash bộ nhớ chương trình, 4 bank thanh ghi bộ nhớ dữ liệu, sơ đồ chức năng 40 chân và nguyên lý giao thức truyền thông nối tiếp bất đồng bộ UART. Cuối chương là các cơ sở lý thuyết về module SIM908, nguyên lý cảm biến hiệu ứng Hall A3144EUA và kiến trúc hệ điều hành Android kèm quy trình cài đặt môi trường phát triển Eclipse.

Chương III: Thiết kế phần cứng

Chương III trình bày quá trình thiết kế chi tiết từng khối mạch điện tử và thi công phần cứng của hệ thống. Tác giả xây dựng sơ đồ khối tổng quát gồm: khối vi điều khiển trung tâm PIC 16F887, khối truyền thông tích hợp SIM908, khối hạ áp nguồn LM2596, khối cảm biến tốc độ Hall A3144EUA, khối hiển thị LCD và khối nhớ EEPROM ngoài.

Tác giả đưa ra các sơ đồ mạch nguyên lý cụ thể:

  • Mạch nguồn LM2596 với các linh kiện cuộn cảm, diode Schottky và tụ lọc để duy trì điện áp cấp nguồn cho module SIM908 hoạt động ổn định khi phát sóng GSM.
  • Mạch phối hợp mức logic giữa PIC 16F887 (5V) và SIM908 (mức logic 2,8V) cho các đường truyền dữ liệu TX/RX của cổng UART.
  • Mạch giao tiếp đế SIM Card Holder, mạch cấp nguồn khởi động qua nút nhấn hoặc transistor kích mở chân PWRKEY.
  • Mạch dao động thạch anh 20 MHz và mạch reset chuẩn cho PIC 16F887.
  • Mạch giao tiếp màn hình hiển thị LCD và mạch tạo xung ngõ ra từ cảm biến Hall A3144EUA. Toàn bộ sơ đồ nguyên lý sau đó được chuyển thành thiết kế mạch in (PCB) hai lớp và thi công lắp ráp thành 2 bộ thiết bị phần cứng thực tế.

Chương IV: Lập trình điều khiển

Chương IV đi sâu vào giải thuật lập trình nhúng cho vi điều khiển PIC 16F887 bằng ngôn ngữ C thông qua trình biên dịch CCS C. Tác giả trình bày cấu trúc tập lệnh điều khiển AT Command cho module SIM908:

  • Các lệnh thiết lập chế độ làm việc cho động cơ GSM: AT+CMGF=1 (chế độ tin nhắn văn bản Text Mode), AT+CMGS (lệnh gửi tin nhắn SMS).
  • Các lệnh cấu hình kết nối dữ liệu mạng GPRS: thiết lập điểm truy cập APN, kết nối máy chủ và truyền nhận gói tin TCP/IP.
  • Các lệnh điều khiển động cơ định vị GPS: bật/tắt nguồn GPS, lệnh yêu cầu xuất dữ liệu định vị AT+CGPSINF=32.

Tác giả xây dựng các lưu đồ giải thuật hoàn chỉnh: lưu đồ chương trình chính, lưu đồ ngắt thu nhận ký tự nối tiếp UART vào bộ đệm vòng (circular buffer), lưu đồ kiểm tra xác nhận phản hồi lệnh AT từ SIM908 và lưu đồ giải thuật tách chuỗi NMEA $GPRMC để trích xuất giá trị tọa độ kinh - vĩ độ và tốc độ.

Chương V: Xây dựng chương trình hiển thị vị trí đối tượng

Chương V tập trung vào việc phát triển phần mềm giám sát trên nền tảng Android. Tác giả mô tả bài toán tiếp nhận dữ liệu từ xa và lựa chọn phương án hiển thị trên nền tảng bản đồ số trực tuyến Google Maps. Quy trình xây dựng ứng dụng được trình bày tuần tự từ bước cấu hình môi trường phát triển Eclipse, tích hợp Android SDK, tạo mã khóa SHA1 từ tệp Keystore của môi trường phát triển để đăng ký xin cấp Google Maps API Key từ máy chủ Google.

Tác giả lập trình chi tiết giao diện người dùng và mã nguồn xử lý sự kiện cho các Activity:

  • Giao diện LoginActivity tiếp nhận thông tin đăng nhập và kiểm tra quyền truy cập.
  • Giao diện MainActivity cho phép cấu hình tham số, kết nối và lựa chọn các chế độ giám sát.
  • Giao diện GooglemapActivity tích hợp thư viện bản đồ, thiết lập các tùy chọn phóng to/thu nhỏ (Zoom), định dạng lớp bản đồ và hiển thị các điểm đánh dấu (Marker) tương ứng với vị trí thực tế của các phương tiện được theo dõi.

Chương VI: Kết quả

Chương VI tổng kết và đánh giá các kết quả thực tế đạt được sau quá trình thi công và thử nghiệm:

  • Chế tạo thành công 2 bo mạch phần cứng định vị hoạt động độc lập (Module 1 và Module 2), có khả năng thu nhận dữ liệu vệ tinh GPS liên tục, đo xung tốc độ từ cảm biến Hall, hiển thị tọa độ lên màn hình LCD và gửi tin nhắn chứa tọa độ về điện thoại.
  • Hoàn thiện ứng dụng Android chạy ổn định trên thiết bị di động, tự động nhận và giải mã bản tin SMS chứa thông tin vị trí để ghim tọa độ chính xác lên bản đồ Google Maps.
  • Ứng dụng thực hiện thành công chức năng giám sát một phương tiện riêng lẻ hoặc giám sát song song cả hai phương tiện cùng lúc trên cùng một màn hình bản đồ.
  • Trình bày kết quả thực nghiệm khảo sát độ chính xác vị trí và đánh giá sai số tọa độ của thiết bị ngoài hiện trường.

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

Chương cuối cùng tổng kết các ưu điểm và khuyết điểm của toàn bộ công trình. Ưu điểm nổi bật là hệ thống hoạt động ổn định, thiết bị phần cứng nhỏ gọn, chi phí chế tạo thấp, giao diện giám sát trên điện thoại trực quan và dễ sử dụng. Khuyết điểm là hệ thống vẫn phụ thuộc vào chất lượng vùng phủ sóng của mạng di động, phát sinh chi phí cước viễn thông cho tin nhắn SMS và chưa có khả năng điều khiển phương tiện hai chiều từ xa. Từ đó, tác giả vạch ra các hướng phát triển kỹ thuật tiếp theo nhằm hoàn thiện sản phẩm thương mại.


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

Đồ án đã đạt được các kết quả kỹ thuật cụ thể được minh chứng qua sản phẩm thực tế:

  • Thi công hoàn thiện 2 module phần cứng định vị GPS/GSM sử dụng vi điều khiển PIC 16F887 và chip SIM908, mạch nguồn LM2596 bảo đảm dòng hoạt động ổn định, tích hợp thành công cảm biến Hall A3144EUA đo tốc độ quay của bánh xe và màn hình LCD 16x2 hiển thị thông số tại chỗ.
  • Lập trình thành công giải thuật thu thập và lọc tách dữ liệu chuỗi bản tin NMEA $GPRMC từ tín hiệu thu vệ tinh GPS với độ nhạy cao, tự động trích xuất các giá trị kinh độ, vĩ độ, vận tốc và thời gian thực.
  • Xây dựng hoàn chỉnh ứng dụng di động trên hệ điều hành Android 4.2 sử dụng Eclipse, kết nối thành công với dịch vụ Google Maps API v2 qua mã xác thực SHA1. Ứng dụng xử lý chính xác bản tin SMS gửi về từ phần cứng và hiển thị vị trí phương tiện trực quan trên nền bản đồ số.
  • Thử nghiệm thành công hai chế độ làm việc trên điện thoại: giám sát đơn lẻ từng phương tiện giao thông và giám sát đồng thời hai phương tiện giao thông di chuyển độc lập trên cùng một màn hình bản đồ.

Về mặt đóng góp, đề tài mang lại giải pháp công nghệ mang tính ứng dụng thực tiễn cao trong hoàn cảnh năm 2014, kết hợp thành công công nghệ vi điều khiển kinh điển (PIC) với công nghệ truyền thông di động (GSM/GPRS/GPS) và nền tảng lập trình ứng dụng điện thoại thông minh (Android). Đồ án cung cấp một tài liệu kỹ thuật chi tiết về quy trình phối ghép phần cứng viễn thông, phương pháp xử lý tập lệnh AT, giải mã giao thức NMEA và kỹ thuật lập trình bản đồ số, làm tài liệu tham khảo thực nghiệm cho sinh viên và kỹ sư ngành Điện - Điện tử.


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

Theo đánh giá trung thực từ nội dung đồ án, hệ thống còn tồn tại một số hạn chế kỹ thuật:

  • Đặc tính thu sóng GPS: Tín hiệu vệ tinh GPS không thể xuyên qua các công trình ngầm, tầng hầm hoặc hoạt động trong nhà, dưới nước. Thiết bị gặp hiện tượng suy hao tín hiệu mạnh hoặc sai số gia tăng khi phương tiện di chuyển trong khu vực đô thị có mật độ nhà cao tầng dày đặc hoặc dưới các tán cây rậm rạp.
  • Sự phụ thuộc vào hạ tầng viễn thông: Việc gửi dữ liệu vị trí dựa chủ yếu vào mạng viễn thông GSM/GPRS. Tại các khu vực sóng di động yếu hoặc mất sóng, dữ liệu vị trí không thể truyền tải về điện thoại theo thời gian thực. Hình thức truyền tin bằng tin nhắn SMS làm phát sinh chi phí cước dịch vụ viễn thông liên tục và có độ trễ nhất định tùy thuộc vào lưu lượng mạng di động.
  • Phạm vi giám sát đối tượng: Phiên bản thử nghiệm của ứng dụng Android mới chỉ dừng lại ở quy mô quản lý đồng thời tối đa 2 module phương tiện, chưa mở rộng thành hệ thống quản lý hạm đội phương tiện quy mô lớn.
  • Tính năng điều khiển: Hệ thống mới chỉ thực hiện chức năng giám sát một chiều (từ phương tiện về người dùng), chưa tích hợp các cơ cấu chấp hành điều khiển phương tiện từ xa (như rơle ngắt nguồn động cơ xe để chống trộm).

Từ các hạn chế trên, tác giả đề xuất các hướng nghiên cứu và phát triển tiếp theo:

  • Tích hợp thêm các cơ cấu chấp hành hai chiều, cho phép người dùng gửi tin nhắn SMS từ điện thoại để kích hoạt rơle ngắt khóa điện, khóa xăng hoặc còi báo động nhằm ngăn chặn hành vi trộm cắp xe từ xa.
  • Chuyển đổi phương thức truyền dữ liệu chính sang kết nối mạng GPRS/3G liên tục thông qua máy chủ web (Web Server), kết hợp cơ sở dữ liệu trực tuyến tập trung để phục vụ giám sát đoàn xe quy mô lớn cho các doanh nghiệp vận tải.
  • Tích hợp thêm các cảm biến phụ trợ trên phương tiện như: cảm biến đo mức tiêu hao nhiên liệu, cảm biến đo nhiệt độ thùng hàng lạnh, cảm biến va chạm hoặc cảm biến rung chấn nhằm cảnh báo tai nạn và hành vi xâm nhập phương tiện trái phép.

Giá trị tham khảo

Báo cáo đồ án tốt nghiệp này là nguồn tài liệu kỹ thuật có giá trị tham khảo chuyên môn cao đối với:

  • Sinh viên ngành Kỹ thuật Điện - Điện tử, Kỹ thuật Điều khiển và Tự động hóa, Cơ điện tử: Cung cấp tài liệu thiết kế phần cứng hoàn chỉnh, từ sơ đồ nguyên lý mạch nguồn xung LM2596, mạch phối hợp mức tín hiệu UART giữa vi điều khiển 5V và module viễn thông 3,3V, mạch ghép nối cảm biến hiệu ứng Hall, cho đến kỹ thuật thiết kế bo mạch in PCB chống nhiễu.
  • Sinh viên ngành Kỹ thuật Máy tính và Công nghệ Thông tin: Tham khảo phương pháp lập trình nhúng vi điều khiển bằng ngôn ngữ C (CCS C) xử lý ngắt truyền thông nối tiếp bất đồng bộ, thuật toán tách và phân tích cú pháp chuỗi bản tin NMEA 0183 ($GPRMC), cũng như quy trình lập trình ứng dụng Android kết nối với Google Maps Android API v2 thông qua mã chứng thực SHA1.
  • Kỹ sư và nhà phát triển thiết bị IoT / Viễn thông phương tiện: Đồ án cung cấp các thông số kỹ thuật thực nghiệm về tập lệnh AT điều khiển khối GSM/GPS SIM908, quy trình đóng gói dữ liệu tọa độ qua SMS/GPRS và bài học kinh nghiệm xử lý nguồn nuôi cho module phát sóng công suất cao.

Phần đáng tham khảo nhất trong công trình là Chương III (Thiết kế phần cứng) và Chương IV (Lập trình điều khiển) nhờ các sơ đồ mạch nguyên lý rõ ràng, hướng dẫn ghép nối chân chi tiết và hệ thống lưu đồ giải thuật phân tích bản tin GPS hoàn chỉnh.


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

1. Vi điều khiển trung tâm và module viễn thông chính được sử dụng trong đồ án là loại nào?

Đồ án sử dụng vi điều khiển 8-bit PIC 16F887 của hãng Microchip Technology (đóng gói vỏ DIP 40 chân, kiến trúc Harvard, thạch anh 20 MHz) kết hợp với module viễn thông SIM908 của hãng SIMCom (tích hợp sẵn hai động cơ GSM/GPRS bốn băng tần và định vị GPS thu nhận sóng vệ tinh).

2. Chuẩn bản tin dữ liệu GPS nào được lựa chọn để giải mã tọa độ và cấu trúc của bản tin đó ra sao?

Tác giả lựa chọn bản tin $GPRMC (Recommended Minimum Specific GNSS Data) theo chuẩn NMEA 0183. Cấu trúc bản tin gồm: thời gian UTC (hhmmss), trạng thái hợp lệ của tín hiệu (A: hợp lệ, V: không hợp lệ), vĩ độ, hướng Bắc/Nam, kinh độ, hướng Đông/Tây, tốc độ mặt đất tính bằng hải lý (knots), hướng di chuyển theo độ thực, ngày tháng năm (ddmmyy) và mã kiểm tra checksum dạng Hex bắt đầu bằng dấu hoa thị *.

3. Vận tốc của phương tiện được hệ thống thu thập và tính toán thông qua những phương pháp nào?

Hệ thống sử dụng hai cơ chế đo vận tốc độc lập: thứ nhất là trích xuất thông số tốc độ mặt đất từ bản tin định vị GPS $GPRMC; thứ hai là đo tốc độ quay cơ học của bánh xe thông qua khối cảm biến hiệu ứng Hall A3144EUA gắn tại bánh xe, phát xung vuông về vi điều khiển PIC 16F887 để tính toán vận tốc xe ngay cả khi tín hiệu vệ tinh GPS bị mất hoặc suy giảm.

4. Ứng dụng di động trên điện thoại được xây dựng trên nền tảng nào và có khả năng theo dõi bao nhiêu phương tiện?

Ứng dụng di động được lập trình bằng ngôn ngữ Java trên môi trường Eclipse IDE tích hợp Android SDK/ADT, chạy trên hệ điều hành Android phiên bản 4.2. Phần mềm sử dụng Google Maps Android API v2 và được thiết kế để có thể theo dõi một phương tiện riêng biệt hoặc giám sát đồng thời cả hai phương tiện giao thông (Module 1 và Module 2) trên cùng một giao diện bản đồ.

5. Khối nguồn nuôi của thiết bị phần cứng được thiết kế như thế nào để đáp ứng yêu cầu của module SIM908?

Do module SIM908 đòi hỏi dòng đỉnh tức thời có thể lên tới 2A trong quá trình phát sóng vô tuyến GSM, nhóm tác giả đã thiết kế mạch nguồn hạ áp sử dụng IC nguồn xung LM2596 để chuyển đổi điện áp 12V từ bình ắc-quy phương tiện xuống mức điện áp ổn định (khoảng 4,0V nuôi SIM908 và 5V nuôi PIC cùng LCD), kết hợp với hệ thống tụ điện lọc nguồn dung lượng lớn nhằm chống hiện tượng sụt áp gây tắt thiết bị.


Kết luận

Đồ án tốt nghiệp "Hệ thống định vị toàn cầu GPS và giám sát thiết bị bằng điện thoại Android" của sinh viên Nguyễn Phú Dương và Phạm Duy Phước, dưới sự hướng dẫn của ThS. Phạm Hoàng Thông tại Trường Đại học Sư phạm Kỹ thuật TP.HCM, đã hoàn thành toàn diện mục tiêu thiết kế và thi công một giải pháp giám sát hành trình phương tiện giao thông từ xa. Công trình kết hợp thành công nền tảng phần cứng nhúng (PIC 16F887, SIM908, cảm biến Hall A3144EUA, nguồn xung LM2596) với phần mềm di động Android 4.2 tích hợp Google Maps API, cho phép hiển thị chính xác vị trí và vận tốc của 2 phương tiện thực nghiệm theo thời gian thực thông qua mạng viễn thông. Mặc dù còn hạn chế về tính năng điều khiển hai chiều và sự phụ thuộc vào hạ tầng mạng di động, kết quả nghiên cứu đã tạo ra một hệ thống thiết bị hoạt động ổn định, chi phí chế tạo thấp và mang lại giá trị tham khảo học thuật thực tiễn cho sinh viên, kỹ sư chuyên ngành Điện - Điện tử và Kỹ thuật Máy tính.