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

Lập Phần Mềm Quản Lý Phương Tiện Di Động Thông Qua Định Vị Vệ Tinh

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

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lập phần mềm quản lý phương tiện di động thông qua định vị vệ tinh
Tác giả Phạm Anh Đức
Người hướng dẫn TS. Nguyễn Đăng Minh
Trường học Trường Đại học Hòa Bình
Chuyên ngành Công nghệ thông tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2016
Thành phố Hà Nội
Định dạng
Số trang 41
Dung lượng 1,16 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN VỀ GPS (6)
    • 1.1 Giới thiệu về GPS (6)
    • 1.2 Nguyên lý hoạt động (6)
    • 1.3 Các thành phần của GPS (7)
      • 1.3.1 Mảng không gian (8)
      • 1.3.2 Mảng điều khiển (8)
      • 1.3.3 Mảng người sử dụng (9)
    • 1.4 Nguồn lỗi của tín hiệu GPS (10)
    • 1.5 Chuỗi NMEA (11)
      • 1.5.1 Định nghĩa chuỗi NMEA (11)
      • 1.5.2 Thành phẫn chuỗi NMEA (12)
      • 1.5.3 Giải mã chuỗi NMEA (13)
    • 1.6 Ứng dụng của hệ thống định vị GPS (19)
  • CHƯƠNG 2: XÂY DỰNG HỆ THỐNG (22)
    • 2.1 Kết nối phần cứng (22)
      • 2.1.1 Cổng COM (22)
      • 2.1.2 Chuẩn giao tiếp RS232 (24)
    • 2.2 Xây dựng phần mềm (31)
      • 2.2.1 Giới thiệu về ngôn ngữ Basic (31)
      • 2.2.2 Môi trường phát triển tích hợp Visual Basic (32)
      • 2.2.3 Nguyên lý hoạt động (35)
      • 2.2.4 Demo và kết quả ứng dụng (38)
    • 2.3 Kết luận (40)
      • 2.3.1 Kết quả đạt được (40)
      • 2.3.2 Vấn đề còn tồn tại (40)
    • 2.4 Hướng phát triển của đề tài (40)
  • TÀI LIỆU THAM KHẢO (41)

Nội dung

Lập Phần Mềm Quản Lý Phương Tiện Di Động Thông Qua Định Vị Vệ Tinh Lập Phần Mềm Quản Lý Phương Tiện Di Động Thông Qua Định Vị Vệ Tinh Lập Phần Mềm Quản Lý Phương Tiện Di Động Thông Qua Định Vị Vệ Tinh Lập Phần Mềm Quản Lý Phương Tiện Di Động Thông Qua Định Vị Vệ Tinh

TỔNG QUAN VỀ GPS

Giới thiệu về GPS

GPS là cụm từ viết tắt của "Global Positioning System" (Hệ thống định vị toàn cầu) Hệ thống này là một mạng lưới bao gồm 27 vệ tinh quay quanh Trái Đất Trong số 27 vệ tinh này, 24 vệ tinh đang hoạt động, còn 3 vệ tinh đóng vai trò dự phòng để đảm bảo hệ thống hoạt động liên tục trong trường hợp một trong 24 vệ tinh chính bị trục trặc Để xác định tọa độ của một điểm trên bề mặt Trái Đất tại một thời điểm cụ thể, cần phải biết khoảng cách từ điểm đó đến ít nhất ba vệ tinh.

Nguyên lý hoạt động

Các vệ tinh GPS di chuyển trên quỹ đạo được tính toán chính xác, phát tín hiệu liên tục chứa thông tin về vị trí Máy thu GPS tiếp nhận các tín hiệu này và áp dụng các phép tính lượng giác để giải mã, từ đó xác định và hiển thị vị trí của người dùng.

Máy thu phải nhận được tín hiệu của ít nhất ba vệ tinh để tính ra vị trí hai chiều (kinh độ và vĩ độ) và để theo dõi được chuyển động, sau đó máy thu có thể tính được vị trí ba chiều (kinh độ, vĩ độ và độ cao) Một khi vị trí người dùng đã tính được thì máy thu GPS có thể tính các thông tin khác, như tốc độ, hướng chuyển động, bám sát di chuyển, khoảng hành trình, quãng cách tới điểm đến, thời gian Mặt Trời mọc, lặn và nhiều thứ khác nữa Các máy thu GPS ngày nay cực kì chính xác, nhờ vào thiết kế nhiều kênh hoạt động song song của chúng

Một cách trực quan hơn: Trên bản đồ có 3 điểm cố định A, B, C Dữ liệu GPS cho bạn biết khoảng cách lần lượt từ điểm A, B, C đến nơi bạn đứng Vẽ 3 vòng tròn có tâm là A, B, C với bán kính lần lượt là khoảng cách từ 3 điểm A,

B, C tới nơi bạn đang đứng

Vị trí giao nhau của ba vòng tròn chính là vị trí của bạn Để đưa ra vị trí chính xác, rất nhiều thiết bị GPS kết nối tới ít nhất là 4 vệ tinh Đó là lý do vì sao đôi khi để tìm ra vị trí chính xác của bạn, hệ thống GPS lại mất nhiều thời gian tới vậy Đó cũng là lý do vì sao đôi khi bạn bị mất sóng GPS: thiết bị di động của bạn có thể đã kết nối tới 1 hoặc 2 vệ tinh, song 2 vệ tinh vẫn là không đủ.

Các thành phần của GPS

Hệ thống GPS bao gồm 3 thành phần:

Bao gồm các vệ tinh, chúng truyền những tín hiệu cần thiết cho hệ tống hoạt động Các chức năng chính của vệ tinh bao gồm:

• Thu nhận và lưu trữ dữ liệu được truyền từ mảng điều khiển

• Cung cấp thời gian chính xác bằng các chuẩn tần số nguyên tử

• Truyền thông tin và tín hiệu đến người sử dụng trên một hay hai tần số

Mỗi vệ tinh truyền một tín hiệu hàng hải duy nhất trên hai tần số L1 (1575.42MHz) và L2 (1227.60MHz) Các tín hiệu vệ tinh bao gồm: Hai tần số sóng mang, mã đo khoảng cách được điều biến vào các sóng mang và thông báo hàng hải chứa đựng thông tin về vị trí và đồng hồ vệ tinh

Các tiện ích trên mặt đất thực hiện nhiệm vụ theo dõi vệ tinh, tính toán quĩ đạo cần thiết cho sự quản lý mảng không gian Có 5 trạm điều khiển trên mặt đất: Hawaii, Colorado Springs, Ascension Is, Diego Garcia và Kwajalein Chức năng của chúng là giám sát, theo dõi vệ tinh và truyền dữ liệu đến trạm điều khiển chính (Colorado Springs) Tại đó dữ liệu theo dõi được xử lý nhằm tính toạ độ và số hiệu chỉnh đồng hồ vệ tinh Ba trạm tại Ascension, Diego Garcia và Kwajalein là các trạm nạp dữ liệu lên vệ tinh Dữ liệu bao gồm các bản lịch và thông tin số hiệu chỉnh đồng hồ vệ tinh trong thông báo hàng hải

Toàn thể các thiết bị thu và kỹ thuật tính toán để cung cấp cho người sử dụng thông tin về vị trí Bao gồm:

• Phần cứng (theo dõi tín hiệu và trị đo khoảng cách)

• Phần mềm (các thuật toán, giao diện người sử dụng)

• Các quá trình điều hành

Hiện nay, trên thị trường có nhiều loại máy thu với sự đa dạng về cấu tạo, độ chính xác và giá tiền Về cấu tạo, máy thu được phân thành hai loại chính: máy thu một tần số và máy thu hai tần số Về độ chính xác, máy thu được chia thành ba loại: độ chính xác cao, trung bình và thấp.

Một số loại máy thu Độ chính xác cao như: Trimble 4800, Topcon Legacy, Topcon Hiper Series, Topcon GB-500, Topcon GB-1000, Leica system 500.

Nguồn lỗi của tín hiệu GPS

Những điều có thể làm giảm tín hiệu GPS và ảnh hưởng tới độ chính xác gồm:

• Giữ chậm của tầng đối lưu và tầng ion – Tín hiệu vệ tinh bị chậm đi khi xuyên qua tầng khí quyển

• Tín hiệu đi nhiều đường – Điều này xảy ra khi tín hiệu phản xạ từ nhà hay các đối tượng khác trước khi tới máy thu

• Lỗi đồng hồ máy thu – Đồng hồ có trong máy thu không chính xác như đồng hồ nguyên tử trên các vệ tinh GPS

• Lỗi quỹ đạo – Cũng được biết như lỗi thiên văn, do vệ tinh thông báo vị trí không chính xác

• Số lượng vệ tinh nhìn thấy – Càng nhiều quả vệ tinh được máy thu GPS nhìn thấy thì càng chính xác Nhà cao tầng, địa hình, nhiễu loạn điện tử hoặc đôi khi thậm chí tán lá dầy có thể chặn thu nhận tín hiệu, gây lỗi định vị hoặc không định vị được Nói chung máy thu GPS không làm việc trong nhà, dưới nước hoặc dưới đất

Phân bố hình học của vệ tinh là một yếu tố quan trọng trong hệ thống định vị vệ tinh Phân bố vệ tinh lý tưởng là khi các vệ tinh nằm ở các góc rộng với nhau, tạo điều kiện cho máy thu nhận được nhiều tín hiệu tốt Ngược lại, phân bố xấu xảy ra khi các vệ tinh nằm trên một đường thẳng hoặc cụm thành nhóm, dẫn tới tín hiệu yếu hoặc bị nhiễu.

• Sự giảm có chủ tâm tín hiệu vệ tinh – Là sự làm giảm tín hiệu cố ý do sự áp đặt của Bộ Quốc phòng Mỹ, nhằm chống lại việc đối thủ quân sự dùng tín hiệu GPS chính xác cao Chính phủ Mỹ đã ngừng việc này từ tháng 5 năm 2000, làm tăng đáng kể độ chính xác của máy thu GPS dân sự (Tuy nhiên biện pháp này hoàn toàn có thể được sử dụng lại trong những điều kiện cụ thể để đảm bảo gậy ông không đập lưng ông Chính điều này là tiềm ẩn hạn chế an toàn cho dẫn đường và định vị dân sự)

Chuỗi NMEA

NMEA đã phát triển như một giao tiếp giữa các thiết bị điện tử hàng hải Chuẩn này cho phép các thiết bị hàng hải gởi thông tin đến máy tính và các thiết bị hàng hải khác

Hầu hết các chương trình máy tính đều cung cấp dữ liệu thời gian thực, vị trí và dữ liệu được chấp nhận theo định dạng NMEA, bao gồm dữ liệu PVT (Vị trí, Tốc độ, Thời gian) do máy thu GPS tính toán Tất cả các chuỗi chuẩn đều có hai ký tự đầu xác định thiết bị (ví dụ: máy thu GPS có tiền tố "GP") và ba ký tự tiếp theo xác định nội dung của chuỗi.

Mỗi chuổi đều bắt đầu bằng kí tự $ và kết thúc là kí tự đầu dòng và không được nhiều hơn 80 kí tự Dữ liệu trong cùng một dòng ngăn cách nhau bằng dấu phẩy Các dữ liệu có thể khác nhau về độ chính xác trong tin nhắn Ví dụ: thời gian có thể được chỉ tới phần thập phân của giây hoặc tọa độ có thể được chỉ với 3 hay 4 số lẻ sau dấu thập phân Chương trình đọc dữ liệu chỉ nên dùng dấu phẩy để xác định các lĩnh vực mà không phụ thuộc vào vị trí cột Phần kiểm tra lỗi bao gồm một * và hai số thập lục phân đại diện cho khối xét đoán 8 bit OR cuả tất cả các kí tự ở giữa, nhưng không bao gồm $ và *

Checksum là cần thiết cho vài chuỗi

NMEA bao gồm các chuỗi, từ đầu tiên gọi là loại dữ liệu dùng để giải thích chức năng của chuỗi Mỗi loại dữ liệu sẽ có tính duy nhất của nó và được xác định trong chuẩn NMEA Chuỗi GGA bên dưới cung cấp thông tin hỗn hợp Các chuỗi khác có thể lặp lại một vài thông tin nhưng cũng sẽ cung cấp thêm vài dữ liệu mới

Có rất nhiều chuỗi trong NMEA, một vài chuỗi đã ứng dụng tới máy thu GPS được chỉ ra bên dưới đây:

• RMC - Recommended Minimum data for GPS

• VTG - Vector track an Speed over the Ground

Các thông tin quan trọng nhất của chuỗi NMEA bao gồm GGA cung cấp Fix data hiện tại, RMC cung cấp thông tin GPS ngắn gọn và GSA cung cấp dữ liệu trạng thái của vệ tinh

GGA Global Positioning System Fix Data Time, Position and fix related data for a GPS receiver

$ GGA,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx*hh

7) Number of satellites in view, 00 - 12

9) Antenna Altitude above/below mean-sea-level (geoid)

10) Units of antenna altitude, meters

11) Geoidal separation, the difference between the WGS-84 earth ellipsoid and mean-sea-level (geoid), "-" means mean-sea-level below ellipsoid 12) Units of geoidal separation, meters

13) Age of differential GPS data, time in seconds since last C104 type 1 or 9 update, null field when DGPS is not used

GSA - Chuỗi này cung cấp chi tiết bao gồm số vệ tinh được dùng để tính toán và DOP DOP (dilution of precision) sai số chỉ ra hiệu quả của vệ tinh về độ chính xác của số liệu Nó không có đơn vị, giá trị càng nhỏ càng tốt Trong 3D thì dùng 4 vệ tinh cho một điểm, tuy nhiên có thể thấp hơn

Có nhiều cách tính nhiễu ngẫu nhiên PRN làm ảnh hưởng tới khả năng biểu diển dữ liệu của vài chương trình Ví dụ bên dưới chỉ ra có 5 vệ tinh được dùng để tính toán và vài vùng rỗng chỉ ra các vệ tinh không dùng để tính toán trong trường hợp này

GSA GPS DOP and active satellites

3) ID of 1st satellite used for fix

14) ID of 12th satellite used for fix

GSV- Các vệ tinh nhìn thấy chỉ ra dữ liệu vệ tinh dựa trên các mặt nạ hay dữ liệu anamac của nón Ngoài ra còn chỉ khả năng bám dẫn dữ liệu này Điều chú ý là chuỗi GSV chỉ có thể cung cấp dữ liệu cho 4 vệ tinh và cần vài chuỗi mới đầy đủ thông tin Điều đó hợp lý cho việc chuỗi GSV gồm nhiều vệ tinh hơn GGA trong khi GSV cũng gồm các vệ tinh không được dùng

6) Azimuth in degrees to true

More satellite infos like 4) - 7) n) Checksum

GLL - được giữ lại từ chuỗi Loran và vài số liệu cũ không thể gởi thông tin của thời gian và số liệu hoạt động nếu chúng cạnh tranh nhau trong dữ liệu Loran Nếu GPS tranh giành dữ liệu Loran, chúng có thể dùng tiền tố LC thay vì GP

GLL Geographic Position – Latitude/Longitude

$ GLL,llll.ll,a,yyyyy.yy,a,hhmmss.ss,A*hh

7) Status A - Data Valid, V - Data Invalid

VTG - Máy thu GPS có thể dùng LC thay cho GP nếu nó tranh nhau Loran ở ngõ ra

VTG Track Made Good and Ground Speed

RMC Recommended Minimum Navigation Information

$ RMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,xxxx,x.x,a*hh

8) Track made good, degrees true

Diễn giải bản tin GPRMC

Tên Ví dụ Mô tả

Message ID $ RMC Giao thức RMC

V: dữ liệu không hợp lệ

*10 Kiểm tra mã truyền tin

Ứng dụng của hệ thống định vị GPS

• Định vị GPS có vai trò rất quan trọng trong việc giám sát và quản lý vận tải đặc biệt là các loại xe như xe taxi, xe tải, xe công trình, xe tự lái…để theo dõi tốc độ, vị trí, hoặc hướng di chuyển của phương tiện…

• Được ứng dụng vào hệ thống chống trộm, ứng dụng thuê xe tự lái, giúp người quản lý theo dõi lộ trình của đoàn xe

• Là phương tiện giám sát mại vụ, phương tiện giám sát vận tải hành khách, công cụ quản lý giao thông, phương tiện mới của bộ GTVT… Đặc biệt thiết bị định vị được sử dụng cho các phương tiện giao thông với các chức năng như:

• Xác định chính xác vị trí xe ở từng góc đường cùng với vận tốc, thời gian, thông tin xe và trạng thái chính xác theo thời gian thực

Giám sát lộ trình đường đi của phương tiện theo thời gian thực, bao gồm các yếu tố như vận tốc, hướng di chuyển và trạng thái tắt/mở máy.

• Lưu trữ lộ trình, xem lại lộ trình xe trong vòng nhiều tháng

• Có thể quản lý và theo dõi nhiều xe ở một thời điểm

• Cảnh báo khi phương tiện vượt quá tốc độ hay ra khỏi vùng an toàn

• Thống kê, báo cáo các điểm dừng đỗ, tiêu hao nhiên liệu, tổng số km di chuyển của xe theo từng ngày hoặc theo tuần, tháng

• Có thể tích hợp thêm các tính năng như cảm biến chuyển động, phát hiện trạng thái ACC…là giải pháp chống trộm hoàn hảo cho phương tiện

Hệ thống thông tin địa lý GIS

Công nghệ GIS (Geographic Information System) được ứng dụng trong các điều tra nghiên cứu khoa học, quản lý tài nguyên, đất đai, đánh giá các tác động của môi trường, quy hoạch đô thị, lịch sử địa lý, khoa học bản đồ, marketing, vận tải …ví dụ như GIS có thể được ứng dụng để quản lý các vùng đất đai và nước bị ô nhiễm, hỗ trợ các nhà hoạch định, chuyên gia ra quyết định kịp thời và đúng đắn trên vùng bị ô nhiễm GIS cũng có thể dùng để thống kê, phân tích, lập bản đồ phân bố khách hàng, các vị trí kinh doanh

Thông tin địa lý có thể được truy xuất, truyền tải, chuyển đổi, và hiển thị bằng nhiều ứng dụng phần mềm Trong công nghiệp, các sản phẩm thương mại từ các công ty như SmallWorld, Manifold System, ESRI, Intergraph, Mapinfo và AutoDesk giữ ưu thế với các bộ công cụ toàn diện Chính phủ và các cơ quan an ninh, quân đội thường sử dụng các phần mềm riêng, các sản phẩm mã nguồn mở như GRASS và nhiều sản phẩm riêng biệt khác đáp ứng tốt các nhu cầu cụ thể Các công cụ miễn phí để xem tập dữ liệu GIS, truy cập công cộng các thông tin địa lý được thống trị bởi các nguồn tài nguyên trực tuyến như Google Earth và bản đồ web tương tác.

XÂY DỰNG HỆ THỐNG

Kết nối phần cứng

Các máy tính thường có 1 hoặc 2 cổng nối tiếp theo chuẩn RS232 được gọi là cổng COM (COM là từ rút gọn của Commutication ) Cổng COM hay còn gọi là cổng nối tiếp (Serial port) là một cổng thông dụng được sử dụng ở nhiều loại máy bàn, cổng COM giao tiếp bằng cách "nối tiếp" từng bit một Chúng được dùng để kết nối với các thiết bị ngoại vi như chuột, bàn phím, modem hoặc máy in Ngày nay cổng COM hầu như được thay thế bởi các chuẩn cổng khác có tốc độ truyền nhanh hơn như usb, fireware

Là giắc cắm trực tiếp vật lý

Một số thiết bị sử dụng COM port:

• Cổng để cấu hình tường lửa cứng, thiết bị load balancing

• Một số thiết bị GPS

• Một số máy quay phim đời cũ

Ngày nay cổng COM có nghĩa rộng hơn Khi ta kết nối một thiết bị (ví dụ như USB 3G) thì trong Device Manager cũng xuất hiện ở phần COM port

Vì vậy để giao tiếp với các thiết bị qua USB đã được cài driver thì chúng ta cũng tương tác giống như cổng COM (ở đây là cổng COM ảo) Thao tác như sau:

• Click phải chuột vào MY COMPUTER chọn PROPERIES

• Chọn tab HARDWARE và click chuột vào Device Manager

• Xem cổng COM thật tại mục Ports (LPT &COM), click phải chuột vào COM 1 hoặc COM2 chọn PROPERIES, cửa sổ Device status sẽ cho biết cổng COM có hoạt động hay không

Hiện nay, các thiết bị đo lường và điều khiển đều cần giao tiếp với máy tính để giám sát thông số và chế độ hoạt động Chuẩn giao tiếp được phổ biến rộng rãi và dễ sử dụng là RS232 Phần lớn các thiết bị đều kết nối với máy tính thông qua chuẩn này Cổng nối tiếp RS232 là một trong những kỹ thuật ghép nối các thiết bị ngoại vi với máy tính được áp dụng rộng rãi.

RS232 là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kết nối nhiều nhất là 2 thiết bị , chiều dài kết nối lớn nhất cho phép để đảm bảo dữ liệu là 12.5 đến 25.4m, tốc độ 20kbit/s, đôi khi là 115kbit/s với một số thiết bị đặc biệt Ý nghĩa của chuẩn truyền thông nối tiếp nghĩa là trong một thời điểm chỉ có một bit được gửi đi dọc theo đường truyền

Có hai phiên bản RS232 được lưu hành trong thời gian tương đối dài là RS232B và RS232C Nhưng cho đến nay thì phiên bản RS232B cũ thì ít được dùng còn RS232C hiện vẫn được dùng và tồn tại thường được gọi là tên ngẵn gọn là chuẩn RS232 Việc thiết kế giao tiếp với cổng RS232 cũng tương đối dễ dàng, đặc biệt khi chọn chế độ hoạt động là không đồng bộ và tốc độ truyền dữ liệu thấp Đặc điểm

• Trong chuẩn RS232 có mức giới hạn trên và dưới (logic 0 và 1) là +- 12V Hiện nay đang được cố định trở kháng tải trong phạm vi từ 3000 ôm - 7000 ôm

• Mức logic 1 có điện áp nằm trong khoảng -3V đến -12V, mức logic 0 từ +-3V đến 12V

• Tốc độ truyền nhận dữ liệu cực đại là 100kbps (hiện có thể lớn hơn)

• Các lối vào phải có điện dung nhỏ hơn 2500pF

• Trở kháng tải phải lớn hơn 3000 ôm nhưng phải nhỏ hơn 7000 ôm

• Độ dài của cáp nối giữa máy tính và thiết bị ngoại vi ghép nối qua cổng nối tiếp RS232 không vượt quá 15m nếu không sử model

• Các giá trị tốc độ truyền dữ liệu chuẩn: 50, 75, 110, 750, 300, 600,

Các mức điện áp đường truyền

RS 232 sử dụng phương thức truyền thông không đối xứng, tức là sử dụng tín hiệu điện áp chênh lệch giữa một dây dẫn và đất Do đó ngay từ đầu tiên ra đời nó đã mang vẻ lỗi thời của chuẩn TTL, nó vấn sử dụng các mức điện áp tương thích TTL để mô tả các mức logic 0 và 1 Ngoài mức điện áp tiêu chuẩn cũng cố định các giá trị trở kháng tải được đấu vào bus của bộ phận và các trở kháng ra của bộ phát

Mức điện áp của tiêu chuẩn RS232C ( chuẩn thường dùng bây giờ) được mô tả như sau:

Các mức điện áp trong phạm vi từ -3V đến 3V là trạng thái chuyển tuyến Chính vì từ - 3V tới 3V là phạm vi không được định nghĩa, trong trường hợp thay đổi giá trị logic từ thấp lên cao hoặc từ cao xuống thấp, một tín hiệu phải vượt qua quãng quá độ trong một thơì gian ngắn hợp lý Điều này dẫn đến việc phải hạn chế về điện dung của các thiết bị tham gia và của cả đường truyền Tốc độ truyền dẫn tối đa phụ thuộc vào chiều dài của dây dẫn Đa số các hệ thống hiện nay chỉ hỗ trợ với tốc độ 19,2 kBd Ưu điểm của giao diện nối tiếp RS232

• Khả năng chống nhiễu của các cổng nối tiếp cao

• Thiết bị ngoại vi có thể tháo lắp ngay cả khi máy tính đang được cấp điện

• Các mạch điện đơn giản có thể nhận được điện áp nguồn nuôi qua công nối tiếp

Hầu hết các PC hiện nay đều được trang bị ít nhất là 1 cổng Com hay cổng nối tiếp RS232 Số lượng cổng Com có thể lên tới 4 tùy từng loại main máy tính Khi đó các cổng Com đó được đánh dấu là Com 1, Com 2, Com 3 Trên đó có 2 loại đầu nối được sử dụng cho cổng nối tiếp RS232 loại 9 chân (DB9) hoặc 25 chân (DB25) Tuy hai loại đầu nối này có cùng song song nhưng hai loại đầu nối này được phân biệt bởi cổng đực (DB9) và cổng cái (DB25)

Ta xét sơ đồ chân cổng Com 9 chân:

Pin Tín hiệu Mô tả Trạng thái I/O

4 DTR Data terminal ready Out

6 DSR Data set ready In

7 RTS Request to send Out

8 CTS Clear to send In

Chức năng của các chân như sau:

• Chân 1 : Data Carrier Detect (DCD) : Phát tín hiệu mang dữ liệu

• Chân 2: Receive Data (RxD) : Nhận dữ liệu

• Chân 3 : Transmit Data (TxD) : Truyền dữ liệu

• Chân 4 : Data Termial Ready (DTR) : Đầu cuối dữ liệu sẵn sàng được kích hoạt bởi bộ phận khi muốn truyền dữ liệu

• Chân 5 : Singal Ground ( SG) : Mass của tín hiệu

• Chân 6 : Data Set Ready (DSR) : Dữ liệu sẵn sàng, được kích hoạt bởi bộ truyền khi nó sẵn sàng nhận dữ liệu

• Chân 7 : Request to Send : yêu cầu gửi,bộ truyền đặt đường này lên mức hoạt động khi sẵn sàng truyền dữ liệu

• Chân 8 : Clear To Send (CTS) : Xóa để gửi ,bộ nhận đặt đường này lên mức kích hoạt động để thông báo cho bộ truyền rằng nó đã sẵn sàng nhận tín hiệu

• Chân 9 : Ring Indicate (RI) : Báo chuông cho biết là bộ nhận đang nhận tín hiệu rung chuông

Quá trình truyền dữ liệu

Truyền dữ liệu qua cổng nối tiếp RS232 được thực hiện không đồng bộ Do vậy nên tại một thời điểm chỉ có một bit được truyền (1 kí tự) Bộ truyền gửi một bit bắt đầu (bit start) để thông báo cho bộ nhận biết một kí tự sẽ được gửi đến trong lần truyền bit tiếp the Bit này luôn bắt đầu bằng mức 0 Tiếp theo đó là các bit dữ liệu (bits data) được gửi dưới dạng mã ASCII (có thể là 5,6,7 hay 8 bit dữ liệu) Sau đó là một Parity bit (Kiểm tra bit chẵn, lẻ hay không) và cuối cùng là bit dừng - bit stop có thể là 1, 1,5 hay 2 bit dừng

Một loại máy thu tín hiệu định vị vệ tinh kết nối trực tiếp qua cổng COM Tiếp nhận tín hiệu NMEA 0183 và hiển thị ra màn hình

Ngày nay, hầu hết máy tính xách tay đều không có sẵn cổng COM vật lý Vì vậy, bạn sẽ cần một thiết bị có thể chuyển đổi cổng USB thành cổng COM ảo.

Bằng việc kết nối Geko với Laptop thông qua USB-to-RS232, ta đã có thể sử dụng cổng USB trên máy tính như một cổng COM vật lý.

Xây dựng phần mềm

2.2.1 Giới thiệu về ngôn ngữ Basic

BASIC là một ngôn ngữ lập trình bậc cao, đơn giản, dễ sử dụng, nhằm đơn giản hóa quá trình lập trình BASIC được phát minh vào năm 1963 bởi các giáo sư John George Kemeny và Thomas Eugene Kurtz thuộc viện Đại học Dartmouth (Dartmouth College)

BASIC là viết tắt của Beginner's All-purpose Symbolic Instruction Code

2.2.2 Môi trường phát triển tích hợp Visual Basic

Tổng quan về Visual Basic

Visual Basic, con đường nhanh nhất và đơn giản nhất để tạo những ứng dụng cho Microsoft Windows Bất kể bạn là một lập trình viên chuyên nghiệp hay là một người mới lập trình Windows, Visual Basic đều cung cấp cho bạn một tập hợp các công cụ hoàn chỉnh để nhanh chóng phát triển các ứng dụng

Thành phần "Visual" bao gồm các phương thức tạo giao diện đồ họa người dùng (GUI), cho phép thêm các đối tượng đồ họa đã định nghĩa trước vào các vị trí cụ thể trên màn hình Thay vì sử dụng các dòng mã phức tạp để mô tả bố cục và diện mạo của giao diện, các nhà phát triển có thể đơn giản hóa quá trình bằng cách sử dụng các thành phần GUI trực quan, giúp cải thiện trải nghiệm người dùng và tăng hiệu quả phát triển.

Thành phần “Basic” nói đến ngôn ngữ BASIC - một ngôn ngữ được dùng bởi nhiều nhà lập trình hơn bất cứ một ngôn ngữ nào khác trong lịch sử máy tính

Visual Basic được tạo ra dựa trên ngôn ngữ BASIC và sở hữu gồm hàng trăm câu lệnh, hàm và từ khóa được liên kết trực tiếp với giao diện đồ họa của Windows.

Cấu trúc của một ứng dụng Visual Basic

Ứng dụng Visual Basic được tạo nên bởi các đối tượng - các khối mã đóng gói có ý nghĩa đại diện cho dữ liệu và mã Thuộc tính là những đặc điểm của đối tượng, xác định cách thức xuất hiện và hoạt động của chúng Trong một ứng dụng, mỗi form có một module form tương ứng (file mở rộng frm) lưu trữ mã của form đó.

Mỗi module chứa những thủ tục sự kiện – những đoạn mã, nơi đặt những chỉ dẫn, cái sẽ được thi hành trong việc đáp ứng những sự kiện chỉ định Form có thể chứa những điều khiển Tương ứng với mỗi điều khiển trên form, có một tập hợp những thủ tục sự kiện trong module form đó

Mã không chỉ quan hệ với một form chỉ định hay điều khiển có thể được đặt trong một loại module khác, một module chuẩn (.BAS) Một thủ tục được dùng để đáp ứng những sự kiện trong những đối tượng khác nhau phải được đặt trong cùng một chuẩn, thay vì tạo những bản sao mã trong những thủ tục sự kiện cho mỗi đối tượng Một lớp module (.cls) được dùng để tạo những đối tượng, cái mà có thể được gọi từ những thủ tục bên trong ứng dụng của bạn Trong khi một module chuẩn chỉ chứa mã, một lớp module chứa đựng cả mã và dữ liệu Ta có thể nghĩ nó như một điều khiển Ứng dụng của Visual Basic

• Tạo giao diện người sử

• Sử dụng những điều khiển chuẩn của Visual Basic

• Lập trình với những đối tượng

• Lập trình với phần hợp thành

• Đáp ứng những sự kiện chuột và bàn

• Làm việc với văn bản và đồ họa

• Gỡ rối mã và quản lý lỗi

• Xử lý ổ đĩa, thư mục và file

• Thiết kế cho việc thi hành và tính tương thích

• Phân phối những ứng dụng

Visual Basic 6.0 (VB6) là một phiên bản của bộ công cụ lập trình Visual Basic, cho phép người dùng tiếp cận nhanh cách thức lập trình trên môi trường Windows Những ai đã từng quen thuộc với VB thì tìm thấy ở VB6 những tính năng trợ giúp mới và các công cụ lập trình hiệu quả Người dùng mới làm quen với VB cũng có thể làm chủ VB6 một cách dễ dàng

Hệ thống hoạt động dựa trên việc tiếp nhận và giải mã chuỗi NMEA 0183 Điều khiển COM Port trên MSComm Control

If MSComm1.PortOpen = True Then

(1) Tiếp nhận tín hiệu NMEA 0183 từ Geko

(4) Giải mã bản tin GPRMC

(2) Chuyển tiếp tín hiệu thu được tới PC qua COM Port

(3) Lọc và giữ lại bản tin GPRMC

(5) Xác định vị trí trên bản đồ dựa vào các thông số được giải mã

• COM Port chỉ mở khi có trạng thái kết nối mới

• MSComm Control sẽ điều chỉnh các thông số của tín hiệu đầu vào như chiều dài chuỗi, bộ đệm, số ký tự đầu vào

Xử lý tín hiệu đầu vào trên COM Port

Tin_Hieu_Vao = MSComm1.Input

If Tin_Hieu_Vao = "$" Then

Tin_Hieu_Ra = Hien_Tai

Hien_Tai = Hien_Tai + Tin_Hieu_Vao

• Tín hiệu đầu vào được phân tách ra thành từng chuỗi và được lưu vào biến tạm thời

• Khi kết thúc một dòng, biến tạm thời lưu giữ tín hiệu sẽ được làm mới

Lọc ra chuỗi GPRMC và lấy ra thông số về kinh độ, vĩ độ của máy thu

Dim Vi_Tri As Integer

Dim Dau_Phay (1 To 20) As Integer

If Left(Tin_Hieu_Ra, 6) = "$GPRMC" Then

For i = 1 To Len(Tin_Hieu_Ra)

If Mid(Tin_Hieu_Ra, i, 1) = "," Then

Text1.Text = Mid(Tin_Hieu_Ra, Dau_Phay(3) + 1, Dau_Phay(4) -

Text2.Text = Mid(Tin_Hieu_Ra, Dau_Phay(5) + 1, Dau_Phay(6) -

• Tiến hành loại bỏ các thành phần không cần thiết, chỉ giữ lại chuỗi GPRMC từ tín hiệu thu được

• Phân tách các thông số về kinh độ, vĩ độ từ chuỗi GPRMC và hiển thị vị trí vừa nhận được ra màn hình

2.2.4 Demo và kết quả ứng dụng

Từ tín hiệu thu được thông qua Geko 201, vị trí hiện tại (kinh độ, vĩ độ) của thiết bị đã được hiển thị trên màn hình

Một số bản ghi lưu trữ những tuyến đường đã đi dưới dạng file Log

Tọa độ của từng điểm đều được lưu lại, phục vụ cho việc tra cứu sau này

Kết luận

• Theo dõi thiết bị một cách trực quan trên bản đồ

• Quản lý thiết bị bằng hệ tọa độ

• Đánh dấu tọa độ cũ trên bản đồ

• Từ tọa độ cũ, truy xuất đến vị trí của thiết bị

2.3.2 Vấn đề còn tồn tại

• Chỉ hoạt động trong phạm vi địa lý nhỏ

• Vấn đề năng lượng của pin khi chạy ứng dụng

Hướng phát triển của đề tài

Việc xây dựng hệ thống vẫn còn nhiều hạn chế Do giới hạn của thiết bị nên các dữ liệu cung cấp cho người dùng chưa thật đầy đủ, chỉ cung cấp vị trí hiện tại Giao diện chưa thật sự gần gũi với người dùng và chưa tận dụng hết được các chức năng của hệ thống Tuy nhiên, tiềm năng của đề tài khá lớn, có tính ứng dụng cao trong tương lai Những vấn đề cần giải quyết là:

• Cải thiện giao diện trực quan và dữ liệu có tính ứng dụng cao

• Nâng cao hiệu năng cũng như giảm tải gánh nặng về năng lượng

Ngày đăng: 27/04/2024, 04:10

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

TÀI LIỆU LIÊN QUAN

w