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

tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động

58 2 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 đề Tìm hiểu Board Galileo Intel và ngôn ngữ Intel Arduino, ứng dụng để khai thác thông tin GPS phục vụ quản lý phương tiện di động
Tác giả Nguyễn Văn Ngọ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 58
Dung lượng 1,94 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (6)
    • 1.1 Giới thiệu chung về Arduino (6)
    • 1.2 Giới thiệu về board Intel Galileo (8)
      • 1.2.1 Sơ đồ cấu trúc Intel Galileo (8)
      • 1.2.2 Board Intel Galileo (11)
      • 1.2.3 Thông số kỹ thuật Board Intel Galileo (13)
    • 1.3 Giới thiệu màn hình LCD (16)
    • 1.4 Giới thiệu ngôn ngữ Intel Arduino (18)
      • 1.4.1 Hướng dẫn Download cài đặt Intel Arduino (19)
      • 1.4.2 Ngôn ngữ Intel Arduino (21)
  • CHƯƠNG 2: ỨNG DỤNG KHAI THÁC THÔNG TIN GPS PHỤC VỤ QUẢN LÝ PHƯƠNG TIỆN DI ĐỘNG (29)
    • 2.1 Tổng quan về GPS (29)
      • 2.1.1 Giới thiệu chung về GPS (29)
      • 2.1.2 Phân loại (29)
      • 2.1.3 Thành phần cơ bản của hệ thống GPS (32)
      • 2.1.4 Cách thức hoạt động của hệ thống GPS (37)
      • 2.1.5 Độ chính xác (38)
      • 2.1.6 Cấu trúc tín hiệu GPS (39)
      • 2.1.7 Những yếu tố ảnh hưởng đến tín hiệu GPS (41)
    • 2.2 Giới thiệu về chuẩn NMEA0183 (42)
      • 2.2.1 Cấu tạo chuỗi NMEA 0183 (43)
      • 2.2.2 Dữ liệu đưa ra (43)
    • 2.3 Ứng dụng của thông tin GPS để quản lý các phương tiện di động (45)
      • 2.3.1 Giới thiệu về Thiết bị giám sát hành trình xe và lái xe trên các phương tiện giao thông (46)
      • 2.3.2 Chức năng chính của thiết bị giám sát hành trình xe và lái xe trên các phương tiện giao thông (49)
      • 2.3.3 Sơ đồ mạch điện giao tiếp giữa các phần cứng của thiết bị (50)
      • 2.3.4 Các modun hoạt động của thiết bị (0)
      • 2.3.5 Quá trình thử nghiệm thiết bị (55)
      • 2.3.6 Chương trình vẽ lại đường đi bằng ngôn ngữ Visual Basic (56)
  • KẾT LUẬN (57)

Nội dung

LỜI CẢM ƠN Được sự phân công của nhà trường nói chung hay của Khoa Công Nghệ nói riêng của Trường Đại Học Hòa Bình và được sự đồng ý của Thầy giáo hướng dẫn TS.Nguyễn Đăng Minh tôi đã th

TỔNG QUAN

Giới thiệu chung về Arduino

Arduino thực sự đã được biết đến trên thị trường người dùng trên toàn thế giới trong vài năm gần đây.Số lượng người dùng cực lớn và đa dạng với trình độ rộng từ bậc phổ thông lên đến đại học đã làm cho ngay cả những người tạo ra chúng phải ngạc nhiên về mức độ phổ biến của nó

Board Intel Galileo nói riêng hay Board Arduino nói chunglà bo mạch chủ yếu dành cho đối tượng người dùng DIY (Do It Yourself) – Tức là những người muốn tự tay làm các sản phẩm sáng tạo của mình Đội phát triển cốt lõi Arduino gồm Massimo Banzi, David Cuartielles,

Tom Igoe , Gianluca Martino, David Mellis và Nicholas Zambetti Massimo Banzi đã được phỏng vấn trên tuần san FLOSS ngày 21 tháng 3 năm 2009 tập trên mạng TWiT.tv, trong đó ông đã thảo luận về lịch sử và mục tiêu của dự án Arduino Ông cũng có buổi nói chuyện tại Hội nghị TEDGlobal 2012, nơi mà ông vạch ra sử dụng khác nhau của bảng mạch Arduino trên thế giới

Arduino là phần cứng nguồn mở: các thiết kế tham khảo phần cứng Arduino được phân phối theo giấy phép Creative Commons Attribution Share-Alike 2.5 và có sẵn trên trang web của Arduino Bố trí và sản xuất tập tin cho một số phiên bản của phần cứng Arduino cũng có sẵn Mã nguồn cho IDE có sẵn và phát hành theo giấy phép GNU General Public License, phiên bản 2

Mặc dù thiết kế phần cứng và phần mềm là tự do sẵn có theo giấy phép copyleft, các nhà phát triển đã yêu cầu tên "Arduino" được độc quyền sản phẩm chính thức và không được sử dụng cho sản phẩm phái sinh mà không được phép Văn bản chính sách chính thức về việc sử dụng các tên Arduino nhấn mạnh rằng dự án là mở cửa cho kết hợp công việc của người khác vào các sản phẩm chính thức Một số sản phẩm tương thích với Arduino phát

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 6 hành thương mại đã tránh được "Arduino" tên bằng cách sử dụng tên các biến thể "-Duino "

Arduino thật ra là bo mạch xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn và các thiết bị khác… Điểm nổi bật của Arduino là môi trường phát triển ứng dụng cực kì dễ dàng, dễ sử dụng với ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử và lập trình

Arduino được khởi động vào năm 2005 như là một dự án dành cho sinh viên trại Interaction Design Institure Iverea (Viện thiết kế tương tác Ivrea) tại Ivrea, Italy Vào thời điểm đó các sinh viên sử dụng một ‘‘BASIC Stamp’’ (con tem Cơ Bản) có giá khoảng $100, xem như giá dành cho sinh viên Massimo Banzi, là một trong những người sáng lập, giảng dậy tại Ivrea.Một đồ án về phần cứng đã đóng góp vào một thiết kế hệ thống kết nối điện dẫn của sinh viên người Colombia tên là Hernando Barragan Sau khi các nền tảng hệ thống điện dẫn đã được hoàn tất, các nhà nghiên cứu làm việc để làm cho hệ thống đó gọn nhẹ hơn, rẻ hơn, và có sẵn cho cộng đồng nguồn mở Trường này cuối cùng đã đóng cửa, do đó, các nhà nghiên cứu, trong số họ là David Cuartielles, đã thúc đẩy ý tưởng phát triển về Arduino

Cái tên Arduino đến từ một quán bar tại Ivrea, nơi một vài nhà sáng lập của dự án này thường xuyên gặp mặt Bản thân quán bar này có được lấy tên là Arduino, Bá tước của Ivrea, và là vua của Italy từ năm 1002 đến năm

Arduino là một board mạch vi xử lý, nhằm xây dựng các ứng dụng tương tác với nhau hoặc với môi trường được thuận lợi hơn Phần cứng bao gồm một board mạch nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8-bit, hoặc ARM Ateml 32-bit Những model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầu vào anolog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 7 Được giới thiệu vào năm 2005, những nhà thiết kế của Arduino cố gắng mang đến một phương thức dễ dàng, không tốn kém cho những người yêu thích, sinh viên và giới chuyên nghiệp để tạo ra những thiết bị có khả năng tương tác với môi trường Giá của board dao động xung quanh €20 hoặc

€27 Thông tin thiết kế phần cứng được cung cấp công khai để những ai muốn tự làm một mạch Arduino bằng tay có thể tự mình thực hiện được Người ta ước tính khoảng giữa năm 2011 có trên 300 ngàn mạch Arduino chính thức đã được sản xuất thương mại, và vào năm 2013 có khoảng 700 ngàn mạch chính thức đã được đưu tới tay người dùng.

Giới thiệu về board Intel Galileo

1.2.1 Sơ đồ cấu trúc Intel Galileo

Galileo là một bo mạch vi điều khiển dựa trên bộ xử lý ứng dụng Intel Quark SoC X1000 - một bộ xử lý thuộc dòng Pentium 32-bit system on chip ( tích hợp các hệ thống vào trong một chip xử lý duy nhất ) Galileo là bo mạch tương thích với Arduino đầu tiên dựa trên Intel Architecture Cả phần cứng và phần mềm của Galileo đều tương thích với các Arduino Shield vốn được thiết kế cho Arduino Uno R3 với chuẩn chân cắm Arduino 1.0 pinout

Galileo có thể chạy được các shield của Arduino ở cả 2 mức điện áp 3.3V và 5V mặc dù điện áp hệ thống của nó chỉ là 3.3V Galileo có được điều này là nhờ các bộ chuyển dổi điện áp được tích hợp ngay trên bo mạch Theo mặc định, Galileo chạy shield ở mức 5V và có thể chuyển xuống 3.3V bằng cách thay đổi các chân cắm (jumper) trên mạch

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 8

Hình 1.1:Sơ đồ cấu trúc của Galileo

Galileo tương thích với các Arduino Uno shield và được thiết kế để làm việc với các shield ở cả 2 mức điện áp là 3.3V và 5V Như trong sơ đồ cấu trúc thì Galileo gồm:

• 14 chân Digital I/O, trong đó có 6 chân có thể phát xung PWM Chúng có thể sử dụng ở cả 2 chế độ INPUT và OUTPUT

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 9

✓ Các chân giao tiếp có thể hoạt động ở cả 2 mức điện áp là 3.3V và 5V Dòng cấp tối đa là 10mA, dòng chỉnh là 25mA

✓ Mỗi chân đều có một điện trở pull – up trong có trị số khoảng 5.6k đến 10k ohms Mặc định, các điện trở này bị ngắt

• 6 chân analog từ A0 đến A5 giao tiếp qua chip AD7298 ( chuyển đổi Analog to digital )

✓ Mỗi chân analog cung cấp độ phân giải 12bit với 4096 giá trị khác nhau

• I2C bus, TWI với 2 chân SDA và SCL nằm cạnh chân AREF

• TWI: gồm 2 chân SDA ( A4 ) và SCL ( A5 ) Hỗ trợ giao tiếp TWI thông qua thư viện Wire tương tự như trên Arduino

• SPI: chạy ở xung mặc định là 4Mhz để làm việc với các Arduino Shield, có thể lập trình lên đến mức 25Mhz

• UART (cổng Serial) : là một cổng UART với tốc độ có thể lập trình được, 2 chân giao tiếp có thể là 0 ( RX ) và 1 ( TX )

• ICSP ( SPI ): gồm 6 chân tích hợp Serial Programming dùng để kết nối các shield Các chân này hỗ trợ giao tiếp SPI thông qua thư viện SPI

• VIN: chân cấp nguồn cho Galileo khi nó sử dụng nguồn ngoài ( trái ngược với điện áp chuẩn 5V từ chân cắm nguồn) Có thể cung cấp nguồn cho Galileo từ chân này hoặc nếu cấp nguồn từ chân cắm nguồn phía trước, bạn có thể lấy điện áp chuẩn 5V từ chân này

• Chân 5V OUTPUT: chân này cấp nguồn ra 5V từ nguồn ngoài cung cấp cho Galileo hay từ nguồn USB Dòng ra tối đa ở chân này cho các Shield là 800mA

• Chân 3.3V OUPUT: cấp điện ra 3.3V được điều chế từ các mạch điều áp trên Galileo

• GND: chân nối cực âm của nguồn điện

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 10

• IOREF: cho phép các Shield điều chỉnh hoạt động phù hợp với điện áp trên Galileo Chân IOREF được kiểm soát bởi các jumper trên mạch để lựa chọn 2 mức điện áp làm việc của Shield là 3.3V và 5V

• RESET: chân/ nút nhấn RESET

✓ Kéo chân này xuống GND để reset chương trình Arduino đang chạy trên Galileo Thường chân này được dùng để reset các Shield

• AREF: không được sử dụng trên Galileo Trên Arduino, chân này cung cấp một điện áp tham chiếu ngoài cho các chân đọc tín hiệu analog

Hình 1.2: Hình ảnh của Intel Galileo

• Ethernet: Giúp mạch Intel Galileo kết nối với các modem/router để kết nối với Internet (tốc độ tối đa lên đến 10/100 Mb/s) Mặc định chức năng của cổng này sẽ không được khởi động

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 11

• RS – 232 port: cổng này là một trong 2 cổng UART (Serial) vật lý trên Intel Galileo Nó có hình dáng giống hệ một jack cắm tai nghe 3.5mm trên điện thoại di động Bắt buộc phải dùng cổng này nếu muốn truy cập sâu vào hệ thống để cài đặt những hệ điều hành Yocto Để kết nối với máy tính cần phải có một bộ SF Cable, DB9 Female to 3.5mm Serial ( đối với máy tính để bàn có cổng COM) và nếu là máy tính xách tay hoặc máy tính để bàn mà không có cổng COM thì cần them bộ USB 2.0 to RS-232 DB9 Serial Converter

• USB Client: Cổng này là cổng Micro USB (uUSB) vì vậy có thể lấy dây sạc điện thoại thông minh để sử dụng ( dây sạc máy Samsung) Cổng này dùng để lập trình với chương trình Arduino từ máy tính Cổng này là cổng Serial ảo duy nhất của Intel Galileo và nó được thiết kế ra để lập trình với chương trình Arduino Khi cài một hệ điều hành Linux khác ( ví dụ debian) thì lúc đấy sẽ không thể sử dụng Arduino để lập trình cho Galileo được nữa, mà phải dùng các kiến thức điều khiển chân GPIO của vi xử lý Quark

• USB 2.0 Host: đây là cổng USB ( không phải là cổng UART còn lại) dùng cho việc nhận tín hiệu các thiết bị ngoại vi như Webcam, usb micro, usb…Intel Galileo hỗ trợ lên đến 128-bit

• Reboot Button: Nút này sẽ khởi động lại toàn bộ BOARD Intel Galileo, nghĩa là nó sẽ khởi động lại mạch Intel Galileo, tất cả các chương trình đã nạp từ trước hay đã cài đặt trên Board đều sẽ mất hết, Board quay về trạng thái ban đầu như lúc mới mua

• Pin 13 LED: Giống như LED 13 trên mạch Arduino Uno Khi lập trình Arduino trên Intel Galileo mà đụng đến chân digital 13 và pinMode nó là OUTPUT thì xuất HIGH là nó sáng, LOW là nó tắt

• Arduino Reset Button: Nút này giống như nút reset trên mạch Arduino Uno Khi nhấn vào nó chỉ reset Sketch được upload từ chương trình

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 12

Arduino mà thôi chứ không reset cả mạch Reset Button để reset lại chương trình, nút này không ảnh hưởng đến thẻ nhớ đã gắn trên board

• Power Indicator: Đèn LED này sẽ sáng khi bạn gắn nguồn và mạch đang khởi động Đèn này sẽ tắt khi Galileo đã được tắt

• SD Activity Indicator: Đèn LED này sẽ sáng khi mạch Intel Galileo có truy cập đến thẻ nhớ Viết chương trình và sử dụng tệp trên RAM sẽ làm cho thẻ nhớ bền hơn và Server Load của mạch sẽ thấp

• Micro SD Card: Đây là nơi gắn thẻ nhớ điện thoại Nó sẽ được cài sẵn một hệ điều hành trên này và mạch Intel Galileo sẽ boot hệ điều hành ấy lên khi khởi động Mạch Intel Galileo hỗ trợ thẻ nhớ có dung lượng lên đến 32GB Tốc độ đọc/ghi sẽ cực kì nhanh

• 5V Power In: Đây là cổng nguồn của Galileo, khi sử dụng chỉ việc gắn cổng nguồn của bộ sạc( có sẵn trong hộp của bo mạch Intel Galileo)

1.2.3 Thông số kỹ thuật Board Intel Galileo

Các FSB được hỗ trợ NA

Kiểu hình thức của bo mạch Arduino

Chân cắm Quark 393pin FCPGA

Chương trình kéo dài tuổi thọ (XLP) No

Có sẵn Tùy chọn nhúng No

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 13

Thuật in thạch bản 32 nm

TDP 12,5 W Điện áp đầu vào DC được Hỗ trợ 7-15

Nút quay lại BIOS No

Giá đề xuất cho khách hàng $60.90

Mô tả Arduino Compatible development board

Bao gồm bộ xử lý

Intel® Quark™ SoC X1000 (16K Cache, 400 MHz)

Tóm lược về Sản phẩm Link

Thời hạn bảo hành 1 yrs

Dung lượng bộ nhớ tối Đa (tùy vào loại bộ nhớ) 256 MB

Các loại bộ nhớ DDR3 800

Số Kênh Bộ Nhớ Tối Đa 1

Băng thông bộ nhớ tối đa 2,5 GB/s

Phần mở rộng địa chỉ vật lý 32-bit

Hỗ trợ bộ nhớ ECC ‡ No

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 14

Hỗ trợ PCI PCI Express

Số cổng PCI Express tối đa 1

Khe thẻ mini PCIe (toàn bộ chiều dài) 1

Phiên bản chỉnh sửa USB 2.0

Cấu hình USB 2.0 (Bên Ngoài + Bên

Cấu hình USB 3.0 (Bên Ngoài + Bên

Cấu hình CPU tối đa 1

Kích thước gói 15mm x 15mm

Có sẵn Tùy chọn halogen thấp Xem MDDS

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 15

Giới thiệu màn hình LCD

Ngày nay, thiết bị hiển thị LCD (Liquid Crystal Display) được sử dụng trong rất nhiều các ứng dụng của VĐK Text LCD là các loại màn hình tinh thể lỏng nhỏ dùng để hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau Không giống các loại LCD lớn, Text LCD được chia sẵn thành từng ô và ứng với mỗi ô chỉ có thể hiển thị Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau Cũng vì lý do chỉ hiện thị được ký tự ASCII nên loại LCD này được gọi là Text LCD (để phân biệt với Graphic LCD có thể hiển thị hình ảnh) Mỗi ô của Text LCD bao gồm các “chấm” tinh thể lỏng, việc kết hợp “ẩn” và “hiện” các chấm này sẽ tạo thành một ký tự cần hiển thị Trong các Text LCD, các mẫu ký tự được định nghĩa sẵn Kích thước của Text LCD được định nghĩa bằng số ký tự có thể hiển thị trên 1 dòng và tổng số dòng mà LCD có, LCD 16x2 tốn rất ít tài nguyên hệ thống và giá thành rẽ … Ví dụ LCD 16x2 là loại có 2 dòng và mỗi dòng có thể hiển thị tối đa 16 ký tự Một số kích thước Text LCD thông thường gồm 16x1, 16x2, 16x4, 20x2, 20x4…

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 16

1 Vss Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với

GND của mạch điều khiển

2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này với

VCC=5V của mạch điều khiển

3 VEE Điều chỉnh độ tương phản của LCD

4 RS Chân chọn thanh ghi (Register select) Nối chân RS với logic “0”

(GND) hoặc logic “1” (VCC) để chọn thanh ghi

+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)

+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD

5 R/W Chân chọn chế độ đọc/ghi (Read/Write) Nối chân R/W với logic

“0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc

6 E Chân cho phép (Enable) Sau khi các tín hiệu được đặt lên bus

DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 17

Ký hiệu Mô tả của chân E

+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận) thanh ghi bên trong nó khi phát hiện một xung (high-to- low transition) của tín hiệu chân E

+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp

Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU

Có 2 chế độ sử dụng 8 đường bus này : + Chế độ 8 bit: Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7

+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7

15 - Nguồn dương cho đèn nền

Giới thiệu ngôn ngữ Intel Arduino

Intel Galileo là một mạch linux tương tự như Arduino Chúng ta có hai cách để lập trình với Galileo, một là dùng phần mềm Arduino Galileo-ized IDE để lập trình thông qua ngôn ngữ Arduino, hai là dùng ngôn ngữ lập trình khác như (PHP, Python, LUA, BASH, C, C++, JS … những ngôn ngữ này đã phải cài trình biên dịch) để lập trình cho phần linux trong mạch Galileo Đề tài khóa luận này sẽ đề cập phương pháp lập trình theo cách thứ nhất là dùng phần mềm Arduino Galileo IDE để lập trình

Ngôn ngữ Intel Arduino kế thừa từ ngôn ngữ Arduino và có một số cải biến xong nhìn chung chúng ta vẫn có thể lập trình hầu như toàn bộ hệ thống bằng ngôn ngữ Arduino Để lập trình được trên Board Intel Galileo thì chúng

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 18 ta cần phải download phần mềm Intel Arduino để lập trình Mạch Intel Galileo là một máy tính được xây dựng trên cấu trúc x86, vì vậy nó khác hoàn toàn với cấu trúc của mạch Arduino khác, nó cần một chương trình Arduino riêng để lập trình Nếu chỉ download Arduino IDE thì chúng ta sẽ gặp rất nhiều khó khăn trong việc lập trình, tìm board tương thích trong phần mềm Arduino IDE hay upload chương trình lên board Intel Gelileo vì đơn thuần phần mềm Arduino chỉ hỗ trợ các board thuộc Arduino như board Arduino Uno, board Arduino Mega, Arduino Lilypad, Arduino Nano…

Intel Arduino được trang bị một thư viện các hàm để cho một số những thành viên mới học về lập trình Arduino cũng có thể lập trình được sau ít ngày Intel Arduino cho phép lựa chọn phiên bản phù hợp với các hệ điều hành và cấu trúc máy tính của bạn Có các phiên bản dành cho các hệ điều hành như Linux, MacOS và Windown, các cấu trúc x86 ( 32bit ) và x64 (64bit )

1.4.1 Hướng dẫn Download cài đặt Intel Arduino

Intel Arduino có một số phiên bản hiện tại, bản mới nhất hiện nay đang là Intel Arduino 1.6.0 Có thể download trực tiếp từ link Intel: http://www.intel.com/content/www/us/en/support/boards-and-kits/intel- galileo-boards/000005614.html Đây là phiên bản Arduino được được Intel phát triển để lập trình trên mạch Intel Galileo Bản Arduino này hơi nặng so với các phiên bản Arduino khác vì đã được chỉnh sửa cho việc lập trình trên board Intel Galileo

Sau khi down load thành công chương trình, giờ chúng ta sẽ giải nén phần mềm ( 7-Zip hoặc WinRar …) vào thưc mục gốc của các ổ đĩa (ví dụ C:\ hay E:\,…) thường thì các bạn lên để ở các ổ khác ngoài ổ C để khi có vấn đề sự cố với chính máy tính của bạn thì các chương trình đã lập trình hay các ví dụ đã làm của chúng ta vẫn khôi phục lại được

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 19

Hình 1.4: Thư mục Intel Arduino trong Windown

Sau đó các bạn kích đúp vào biểu tượng Arduino.exe chạy phần mềm Intel Arduino để lập trình

Bạn chỉ cần giải nén file ban đầu vào thư mục Applications, và kích đúp vào biểu tưởng Arduino.app để lập trình

Hình 1.5: Intel Arduino trong Applications MacOS

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 20 Đối với Linux, bạn cần một chương trình để giải nén file tar.gz, có thể dùng wget hoặc chương trình download fiel tương tự để tải chương trình cài đặt về Giả sử ta được file tên là arduino-1.5.3-linux32.tar.gz Lúc này bạn sẽ chạy lệnh tar –zxvf arduino-1.5.3.tar.gz để giải nén Có một điều cần lưu ý là bạn phải xóa chương trình modem manager nếu không upload được lên mạch Xóa nó bằng cách dùng lệnh sudo apt-get remove modemmanager Khi đã giải nén xong tất cả, lúc này các bạn chỉ việc mở file arduino trong thư mục vừa giải nén và chạy Từ command line chúng ta có thể gõ /arduino

Intel arduino là ngôn ngữ lập trình khá đơn giản và thông dụng với người sử dụng Môi trường lập trình đơn giản dễ sử dụng, ngôn ngữ lập trình dễ hiểu dễ sử dụng dựa trên nền tảng C/C++ đây được xem như là hai ngôn ngữ chính khi mới bắt đầu của người lập trình

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 21

Hình 1.6:Chương trình Intel Arduino Để lập trình được trên Board Intel Galileo nói riêng hay các board Arduino nói chung trước hết chúng ta cần phải lựa chọn các Board mà mình cần phải lập trình để chạy trên đó Mở chương trình lên các bạn vào Tool lựa chọn đến phần Board sau đó lựa chọn board mình lập trình trên đó

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 22

Hình 1.7: Lựa chọn board phù hợp trong Intel Arduino

Bên cạnh đó ngôn ngữ chương trình Intel Arduino còn có một số các ví dụ dành cho những người mới lập trình để tìm hiểu cũng như các bước lập trình một chương trình cụ thể, chúng ta có thể tham khảo dự trên phần

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 23

Hình 1.8: Ví dụ chương trình Blink trong Intel Arduino

Phân tích ví dụ trên thì ta thấy chương trình trên có hai method quan trọng nhất đó là setup( ) và loop( )

• Setup( ): làm nhiệm vụ khởi tạo mode cho các ngoại vi của arduino Hàm này sẽ được chạy một lần khi bo mạch Intel

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 24 arduino reset Ở chương trình này setup( ) chi làm nhiệm vụ là đặt chân số 13 của Intel Galileo sang mode output

• Loop( ): là chương trình chính của Intel Arduino Đoạn code trong loop( ) sẽ được Arduino Galileo chạy vô hạn, trong chương trình trên có hàm digitalWrite( ) để đặt các chân 13 ở mức điện áp cao (HIGH) hay thấp (LOW) Hàm tiếp theo là delay( ), nhận đối số là số nguyên, thể hiện số mili giây ta muốn chương trình tạm dừng

Sau viết một chương trình xong, phần mềm Intel Arduino cho phép chúng ta có thể tìm lỗi sai hay những câu lệnh còn thiếu trước khi chúng ta upload vào board để chạy chương trình hay là trình biên dịch, thường thì bước này cũng quan trọng không kém gì bước lập trình, nó sẽ tìm kiếm những lỗi sai, sau đó hiển thị những câu lệnh sai, những dòng lệnh thiếu hay thừa, những lỗi khi chúng ta lập trình ở bẳng bên dưới Intel Arduino Chúng ta có thể kiểm tra bằng cách vào Sketch sau đó vào Verify/Compile

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 25

Hình 1.9: Biên dịch chương trình trong Intel Galileo thành công

Chương trình sẽ chạy và sẽ thông báo khi hoàn tất, chương trình thành công không lỗi sai nào sẽ thông báo như trên hình, nếu xảy ra lỗi thì chúng ta lên xem lại các câu lệnh, xem lại board mà chúng ta đã lựa chọn hay cổng COM đã đúng chưa… Nếu chương trình vẫn báo lỗi thì chúng ta không thể upload lên Board Galileo được

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 26

Hình 1.10: Chương trình trong Intel Arduino bị lỗi

Khi chương trình đã thông qua trình biên dịch xong, chúng ta có thể tiến hành upload lên board Galileo, để upload thì cần có dây sạc điện thoại thông minh có cổng USB ( dây Samsung) cắm vào cổng USB Client trên board Intel Galileo Khi board đã nhận được tín hiệu sẽ có đèn thông báo bên cạnh cổng USB Client.Lên kiểm tra kỹ lại một lần nữa về cổng COM và

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 27

Board đã đúng chưa, thường thì hai lỗi này rất hay mắc phải khi mới sử dụng chương trình Nếu không có lỗi gì xảy ra chúng ta tiến hành upload chương trình lên board và board sẽ hoạt động đúng chương trình ta đã viết

Bên cạch đó chúng ta có thể tham khảo các hàm thủ tục trên Cộng đồng

Arduino Việt Nam.Một diễn đàn khá nổi tiếng của Việt Nam

Hình 1.11: Các hàm thủ tục trong Intel Galileo

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 28

ỨNG DỤNG KHAI THÁC THÔNG TIN GPS PHỤC VỤ QUẢN LÝ PHƯƠNG TIỆN DI ĐỘNG

Tổng quan về GPS

2.1.1 Giới thiệu chung về GPS

Tên gọi GPS(Global Positioning System) dùng để chỉ hệ thống định vị toàn cầu do Bộ quốc phòng Mỹ thiết kế và điều hành gọi tắt là NAVSTAR GPS (Navigation Signal Timing and Ranging Global Positioning System) Là một hệ thống các vệ tinh có khả năng xác định vị trí trên toàn cầu với độ chính xác khá cao Ban đầu GPS được xây dựng để phục vụ cho các mục đích về quân sự tuy nhiên sau này cho phép sử dụng cả trong lĩnh vực dân sự Hiện nay hệ thống GPS này được phục vụ trong cả hai lĩnh vực quân sự và dân sự.Vệ tinh đầu tiên của GPS được phóng vào tháng 12 năm 2005

Hệ thống định vị toàn cầu của Mỹ là hệ thống dẫn đường dựa trên một mạng lưới 24 quả vệ tinh được Bộ Quốc phòng Hoa kỳđặt trên quỹ đạo không gian (tính đến năm 1994), và đã được bổ sung thành 28 vệ tinh (vào năm 2000) để đảm bảo phủ sóng liên tục trên toàn thế giới Các vệ tinh được săp xếp sao cho 4 vệ tinh sẽ nằm cùng nhau trên 1 trong 6 mặt phẳng quỹ đạo ( nghiêng 55 độ so với mặt phẳng xích đạo) xung quanh trái đất với bán kính 26.560 km Với cách xếp này sẽ có 4 đến 10 vệ tinh sẽ được nhìn thấy tại bất kỳ điểm nào trên trái đất với góc ngẩng là 100 nhưng thực tế là chỉ cần 4 vệ tinh là đã có thể cung cấp đầy đủ vị trí thông tin về địa lý.Các vệ tinh GPS bay vòng quanh trái đất hai lần trong một ngày theo quỹ đạo rất chính xác và phát tín hiệu có thông tin xuống trái đất

Các hệ thống dẫn đường truyền thống hoạt động dựa trên các trạm phát tín hiệu vô tuyến điện Được biết đến nhiều nhất là các hệ thống sau: LORAN

- (Long Range Navigation) hoạt động ở giải tần 90-100 kHz chủ yếu dùng cho hằng hải, hay TACAN - (TACtical Air Navigation) – dùng cho quân đội

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 29

Mỹ và biến thể với độ chính xác thấp VOR/DME – VHF (Omnidirectional Range/ Distance Measuring Equiqment) – dùng cho hang không dân dụng

Gần như đồng thời với lúc Mỹ phát triển GPS, Liên Xô cũng phát triển một hệ thống tương tự gọi là GLONASS.GLONASS(Globalnaya Navigatsionnaya Sputnikovaya Sistema) GLONASS bắt đầu ra mắt vào cuối thập kỷ 70 của thế kỷ trước Ban đầu, nó được sử dụng chủ yếu cho việc định vị thời tiết và đo vận tốc Tuy nhiên sau sự sụp đổ của Liên Xô, đầu tư cho GLONASS bị cắt giảm khiến dự án bị đình trệ Kết hợp với tuổi đời của vệ tinh ngắn (khoảng 3 năm), nên rất ít người tin tưởng vào thành công của chương trình GLONASS Thế nhưng mọi sự thay đổi vào năm 2011 khi Thủ tướng Nga Vladimir Putin tuyên bố coi việc hoàn thành chương trình GLONASS là một ưu tiên quốc gia và đầu tư ồ ạt cho dự án này, biến nó trở thành tổ hợp công nghệ tối quan trọng GLONASS là hệ thống định vị vệ tinh do Lực lượng Phòng vệ Không gian của Nga điều hành và đều được phát triển cho mục đích quân sự, nên mặc dù chúng dùng được cho dân sự nhưng không hệ nào đưa ra sự đảm bảo tồn tại liên tục và độ chính xác Vì thế chúng không thỏa mãn được những yêu cầu an toàn cho dẫn đường dân sự hang không và hàng hải, đặc biệt là tại những vùng và tại những thời điểm quân sự của những quốc gia sở hữu các hệ thống đó Chỉ có hệ thống dẫn đường vệ tinh Châu Âu Galileo (đang được xây dựng) ngay từ đầu đã đặt mục tiêu đáp ứng các yêu cầu nghiêm ngặt của dân đường và định vị dân sự

Hiện nay Liên minh Châu Âu đang phát triển hệ thống dẫn đường vệ tinh của mình mang tên Galileo.Hệ thống định vị Galileo là một hệ thống vệ tinh định vị toàn cầu (GNSS) được xây dựng bởi Liên minh châu Âu Galileo khác với GPS của Hoa Kỳ và GLONASS của Liên bang Nga ở chỗ nó là một hệ thống định vị được điều hành và quản lý bởi các tổ chức dân dụng, phi quân sự Galileo theo kế hoạch sẽ chính thức hoạt động vào năm 2011-12, muộn 3-4 năm so với kế hoạch ban đầu Hệ thống định vị Galileo được đặt

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 30 theo tên của nhà thiên văn học người Ý Galileo Galilei nhằm tưởng nhớ những đóng góp của ông Hệ thống định vị Galileo gồm: 30 vệ tinh (27 vệ tinh hoạt động chính và 3 vệ tinh dự phòng)

➢ Độ cao quỹ đạo: 23.222 km (quỹ đạo tầm trung)

➢ Phân bố trên 3 mặt chính, góc nghiêng 56 độ

➢ Tuổi thọ thiết kế của vệ tinh: > 12 năm

➢ Trọng lượng vệ tinh: 675 kg

➢ Năng lượng từ pin mặt trời: 1500 W (tại thời điểm tuổi thọ thiết kế)

Trung quốc thì phát triển hệ thống định vị toàn cầu của mình mang tên Bắc Đẩu bao gồm 35 vệ tinh.Bắc Đẩu là một dự án củaTrung Quốc phát triển một hệ thống vệ tinh định vị độc lập Tên gọi này có thể đề cập một hoặc cả hai thế hế hệ thống định vị của Trung Quốc Hệ thống Bắc Đẩu đầu tiên, chính thức được gọi là "Hệ thống thử nghiệm định vị vệ tinh Bắc Đẩu", hay được gọi là "Bắc Đẩu 1", bao gồm 3 vệ tinh và có giới hạn bao trả và các ứng dụng Nó đã được cung cấp dịch vụ chuyển hướng chủ yếu cho các khách hàng ở Trung Quốc và từ các vùng lân cận từ năm 2000.Thế hệ thứ hai của hệ thống, được gọi là Compass hay Bắc Đẩu 2, sẽ là một hệ thống định vị vệ tinh toàn cầu bao gồm 35 vệ tinh, vẫn còn đang được tạo dựng Nó đã hoạt động với phạm vi toàn Trung Quốc trong tháng 12 năm 2011 Theo kế hoạch hệ thống sẽ cung cấp dịch vụ cho khách hàng trong khu vực châu Á-Thái Bình Dương vào năm 2012 và các hệ thống toàn cầu sẽ được hoàn thành vào năm

2020, sau khi sở hữu 35 vệ tinh.Các nhà thiết kế chính của hệ thống định vị Bắc Đẩu là Tôn Gia Đống Bắc Đẩu tương thích với hệ thống định vị GPS của

Mỹ, hệ thống Galileo của châu Âu và hệ thống GLONASS của Nga Nó cho phép người sử dụng định vị chính xác trong phạm vi 10 m, đo tốc độ từ

200 cm/giây trở lên và cung cấp thông tin về thời gian với sai số chỉ là 2 phần

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 31 trăm triệu giây.Một báo cáo do giới chức Trung Quốc công bố cho thấy dịch vụ của Bắc Đẩu đã được sử dụng rộng rãi trong các lĩnh vực giao thông, đánh bắt hải sản trên biển, dự báo thời tiết, giám sát các công trình thủy điện, giảm nhẹ thiên tai Nhóm thiết kế Bắc Đẩu dự đoán nó sẽ tạo ra một thị trường dịch vụ định vị có trị giá tới 63 tỷ USD trong khoảng thời gian từ nay tới năm

GPS ban đầu chỉ dành cho các mục đích quân sự, nhưng từ năm 1980 chính phủ Mỹ chi phép sử dụng dân sự GPS hoạt động trong mọi điều kiện thời tiết, mọi nơi trên trái đất, 24 giờ một ngày Không mất phí thuê bao hoặc mất tiền trả cho việc thiết lập sử dụng GPS nhưng phải tốn tiền không rẻ để mua thiết bị thu tín hiệu và phần mềm nhúng hỗ trợ

Có một số khác biệt cơ bản giữa GLONASS và GPS.Đầu tiên, GLONASS có ít vệ tinh hơn.GPS có 32 vệ tinh quay quanh trái đất trong 6 quỹ đạo bay.Trong khi đó, GLONASS có 24 vệ tinh với 3 quỹ đạo bay Điều này có nghĩa là GONASS có nhiều vệ tinh đi theo cùng quỹ đạo hơn GPS và như vậy nó làm giảm độ chính xác của việc định vị.Tuy vậy, khác biệt lớn nhất giữa GPS và GLONASS là cách thức liên lạc với thiết bị nhận Với GPS, các vệ tinh sử dụng cùng tần số vô tuyến nhưng có các mã khác nhau để liên lạc Còn với GLONASS, các vệ tinh có cùng mã nhưng lại sử dụng các tần số khác nhau.Điều này cho phép các vệ tinh liên lạc với nhau mặc dù đang ở cùng quỹ đạo bay

2.1.3 Thành phần cơ bản của hệ thống GPS

Hệ thống GPS bao gồm 3 bộ phận: Mảng hệ thống các vệ tinh GPS trong không gian, mảng các trạm điều khiển hệ thống GPS, và mảng sử dụng hệ thống GPS

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 32

Hình 2.1: Sơ đồ liên quan giữa 3 phần hệ thống định vị toàn cầu

• Mảng hệ thống các vệ tinh GPS trong không gian

Các thế hệ vệ tinh GPS được đánh số Block I, II, IIA, IIR và IIF Thế hệ vệ tinh đầu tiên là Block I được xây dựng bởi Rockwell International Corporation, nặng khoảng 800kg và tuổi thọ khoảng 5 năm Block II và IIA cũng do công ty này xây dựng nhưng nặng đến 900 kg Tuổi thọ của chúng khoảng 7.5 năm.Sự thay thế các vệ tinh Block II/IIA bằng Block IIR bắt đầu từ năm 1996.Những vệ tinh này công ty General Electric xây dựng.Block IIF vẫn đang trong giai đoạn thiết kế và dự định phóng lên quĩ đạo từ năm 2005

Hiện nay (2003) trên quĩ đạo có 26 vệ tinh Block IIA và IIR Cấu hình quĩ đạo như sau:

➢ Có 6 mặt phẳng quĩ đạo gần tròn

➢ Trên mỗi mặt phẳng quĩ đạo có 4 đến 5 vệ tinh

➢ Mặt phẳng quĩ đạo nghiêng so với xích đạo khoảng 55° Độ cao bay trên mặt đất xấp xỉ 20.200km

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 33

Hình 2.2:Cấu trúc tín hiệu GPS

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

➢ Thông báo hàng hải chứa đựng thông tin về vị trí và đồng hồ vệ tinh

Phần không gian gồm 27 vệ tinh (24 vệ tinh hoạt động và 3 vệ tinh dự phòng) nằm trên các quỹ đạo xoay quanh trái đất Chúng cách mặt đất 20.200 km bán kính quỹ đạo là 26.600 km Chúng chuyển động ổn định và quay 2 vòng quỹ đạo trong thời gian gần 24h với vận tốc 7 nghìn dặm trên

Giới thiệu về chuẩn NMEA0183

NMEA 0183 là tiêu chuẩn kỹ thuật cho giao tiếp kết hợp điện với tín hiệu thông tin liên lạc cho các thiết bị hàng hải như echo sounder, máy dò ngang (sonar), máy đo gió (anemometer), gyrocompass, autopilot, thiết bị thu GPS Tiêu chuẩn được xây dựng bởi Hiệp hội Điện tử Hàng Hải Quốc gia Mỹ (National Marine Electronics Association) Tiêu chuẩn này thay thế cho các tiêu chuẩn trước đó là NMEA 0180 và NMEA0182 Sắp tới sẽ được thay thế bằng tiêu chuẩn mới hơn NMEA 2000 Tuy nhiên, tiêu chuẩn này

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 42 vẫn được nâng cấp thường xuyên Phiên bản v4.10 được công bố vào đầu tháng 5 năm 2012

Tiêu chuẩn điện được sử dụng là EIA-422, hầu hết phần cứng với NMEA-

0183 kết nối qua cổng EIA-232

NMEA 0183 sử dụng ASCII, giao thức truyền thông nối tiếp đơn giản mà dữ liệu đường truyền đi từng "câu" theo cách một "người nói" cho nhiều "người nghe" tại một thời điểm Một "người nói" có thể có một cuộc trò chuyện theo một hướng với một số không giới hạn của "người nghe", sử dụng bộ ghép kênh, nhiều cảm biến có thể "nói chuyện" với một cổng máy tính duy nhất

➢ Mỗi chuỗi bắt đầu bằng ký tự $

➢ 5 ký tự đầu tiên biểu hiện loại của chuỗi 2 ký tự đầu định nghĩa thiết bị sử dụng chuỗi 3 ký tự tiếp theo xác định ý nghĩa của chuỗi trả về

➢ Các trường dữ liệu nối tiếp nhau bởi dấu “,”

➢ Khi trường dữ liệu cuối cùng kết thúc, ký tự tiếp sau nó là dấu “*”

➢ Sau dấu “*” là 2 ký tự số checksum miêu tả 1 số hex Checksum là 1 phép XOR giữa tất cả các ký tự từ dấu “,” đến dấu “*” Checksum không bắt buộc đối với hầu hết các câu dữ liệu nhưng bắt buộc đối với RMA, RMB và

➢ Chuỗi kết thúc với ký tự “ ”

Bộ phân tích dữ liệu có nhiệm vụ chuyển đổi byte thành dạng chuỗi kí tự ASCII, chuỗi kí tự được tạo thành gồm một danh sách các chuỗi theo chuẩn NMEA Mỗi chuỗi này có chứa một thông tin đặc biệt nào đó và tùy

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 43 theo mục đích sử dụng mà ta sử dụng một hay nhiều trong số đó Thông tin trong các chuỗi kí tự này nhiều lúc không đầy đủ và đôi khi ta phải kết hợp một số thông tin từ nhiều chuỗi lại để có được kết quả mong muốn Khi ta bắt được đủ số vệ tinh cần thiết thì dữ liệu sẽ truyền về các tham số: thời gian, kinh độ, vĩ độ, các dữ khác… theo chuôi có dạng như sau:

Tên Ví dụ Đơn vị Mô tả

Loại chuỗi $GPGGA Dữ liệu GPS đã chỉnh sửa

Vĩ độ 3723.2475 37 độ 23 phút 0.2475 giây

Hướng (nam/bắc) N N = north : bắc

Kinh độ 12158.3416 121 độ 158 phút 0.3416 giây

Hướng (đông/tây) W W = west : đông

Thông tin chỉnh sửa 1 Dữ liệu được chỉnh sửa

Vệ tinh sử dụng 07 Có 7 vệ tinh đang quan sát

HDOP 1.0 Sai số theo chiều ngang Độ cao so với mặt biển

9.0 Mét Cao 9m so với mặt biển Đơn vị M Mét Độ cao của Geoid trên elipxoit WGS84

Thời gian kể từ lần cập nhật cuối

Checksum *18 Tổng kiểm tra lỗi dữ liệu truyền

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 44 về Kết thúc chuỗi

GPS Parser có thể hiểu là một hệ thống điện tử trong các bộ thu tín hiệu GPS thông dụng Đây là hệ thống tiếp nhận dữ liệu từ sóng vệ tinh và phân tích thành các thông điệp GPS định dạng chuẩn.Hệ thống này làm việc xung quanh đối tượng SerialPort Đối tượng SerialPort sẽ hình thành một cổng COM ảo với 2 thống số là tên cổng COM và hằng số Baudrate( tốc độ truyền tải dữ liệu)

Tốc độ kết nối có thể điều chỉnh theo một số mẫu nhưng theo tiêu chuẩn NMEA là 4800 bit/giây với 8 bít dữ liệu, không bít chẵn lẻ và có 1 bít dừng (bit stop) Tất cả các đơn vị hỗ trợ NMEA thì cũng sẽ hỗ trợ tộc độ kết nối này Nên nhớ rằng, với tốc độ 4800 bit/giây, bạn có thể dễ dàng gửi đủ dữ liệu trước khi hết 2 giây Một số đơn vị Garmin và các loại khác có thể cài đặt lên tới 9600 hoặc thậm chí cao hơn cho thiết bị đầu ra của NMEA Nhưng đó chỉ là tham khảo nếu bạn chắc chắn 4800 hoạt động tốt, bạn có thể thử cài với tốc độ nhanh hơn.Việc cài đặt để đạt tốc độ nhanh như mong muốn, đòi hỏi phải nâng cấp khả năng đáp ứng của chương trình.

Ứng dụng của thông tin GPS để quản lý các phương tiện di động

Sự xuất hiện của thiết bị định vị GPS được coi là một cuộc cách mạng và một bước ngoặt mới đối với nền khoa học kỹ thuật của thế giới.Thiết bị định vị GPS lợi ích và được ứng dụng với nhiều mục đích khác nhau.Ứng dụng của định vị GPS trong lĩnh vực giao thông vận tải là một trong những ứng dụng quan trọng nhất

Giao thông hiện nay có nhiều vấn đề nhức nhối và nhận được sự quan tâm lớn từ các cấp quản lý và xã hội.Trung bình mỗi ngày trên toàn quốc có

24 người chết, hơn 60 người bị thương tật suốt đời do tai nạn giao thông Tai

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 45 họa không loại trừ bất kỳ người nào khi đi trên đường và do đó, việc giải quyết không chỉ là trách nhiệm của cơ quan chức năng, mà là ý thức, trách nhiệm của xã hội, của mỗi người

Bên cạnh đó phải kể đến rất nhiều vụ tai nạn gây ra do “xe điên” (lái xe không kiểm soát được tốc độ) những chiếc xe mất kiểm soát đâm liên hoàn vào đoàn người và xe lưu thông phía trước, hay có những vụ việc lái xe gây tai nạn xong bỏ chốn tại hiện trường… những vấn đề cần được giải quyết kịp thời để đưa giao thông Việt Nam trở nên an toàn và văn minh hơn Để quản lý tốt và chấn chỉnh kịp thời những sai phạm của các phương tiện khi tham gia giao thông, chính phủ đã ra Nghị định số 91/2009/NĐ-CP quy định từ ngày

01 tháng 7 năm 2012, các xe ô tô theo tuyến cố định, xe buýt, kinh doanh vận tải hành khách theo hợp đồng, kinh doanh vận chuyển khách du lịch, kinh doanh vận tải hàng hóa bằng công-ten-nơ phải phải gắn thiết bị giám sát hành trình

2.3.1 Giới thiệu về Thiết bị giám sát hành trình xe và lái xe trên các phương tiện giao thông

Sản phầm “Thiết bị quản lý hành trình xe và lái xe trên các phương tiện giao thông.” Là thiết bị mô phỏng chức năng của hộp đen trên máy bay có nhiệm vụ giám sát người điều khiển và phương tiện tham gia giao thông Đưa ra cảnh báo và ghi lại quá trình hoạt động của phương tiện giao thông Giúp phòng tránh tai nạn giao thông, kiểm soát hành vi người điều khiển tránh tình trạng không tập trung khi lái xe, không tỉnh táo…

Thiết bị cũng giúp các nhà quản lý xe như doanh nghiệp taxi, xe bus… giám sát các hoạt động của phương tiện giao thông thông qua thiết bị giám sát

2 chiều giữa trạm điều khiển và thiết bị giám sát lắp đặt trên xe giúp quan sát được đường xe đi, vị trí của xe và có thể tìm xe bị mất

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 46

Thiết bị giám sát khai thác tốt các thông tin từ GPS, các cảm biến trạng thái của vật mang (ôtô…) Tổ chức và xử lý tốt các thông tin để cảnh báo, ghi… Xác định trạng thái của lái xe, nhắc nhở, cảnh báo hợp lý Đảm bảo tính xác thực của thông tin để giữ kỷ luật lái xe, có thông tin xác thực khi cần thiết… Đảm bảo gọn, nhẹ, tin cậy, giá thành rẻ và phù hợp với nhiều loại xe, đối tượng khác nhau Sử dụng được các tính năng cần thiết của Intel Galileo cũng như thư viện của Arduino Khai thác tốt các cổng RS-232, I2C, SPI…của Intel Galileo

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 47

Hình 2.5: Thiết bị quản lý hành trình xe và lái xe trên các phương tiện giao thông

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 48

2.3.2 Chức năng chính của thiết bị giám sát hành trình xe và lái xe trên các phương tiện giao thông

Thiết bị quản lý hành trình xe và lái xe trên các phương tiện giao thông mô phỏng chức năng của hộp đen trên máy bay và có thêm một số chức năng để giám sát người điều khiển phương tiện và đưa ra các cảnh báo cho họ khi cần thiết Thiết bị giám sát hành trình được ứng dụng trên các phương tiện, được quản lý điều hành như: xe taxi, xe buýt, xe khách, xe chở hàng, xe du lịch,…Thiết bị giám sát hành trình, người dùng có thể giám sát từ xa lộ trình của xe theo thời gian thực với các thông số vị trí xe chính xác đến từng con đường, từng số nhà, vận tốc, hướng di chuyển, trạng thái quá tốc độ kèm theo nhiều tính năng khác phù hợp với nhu cầu của khách hàng Chỉ cần có máy tính hoặc điện thoại smartphone và kết nối internet, người dùng có thể giám sát phương tiện của mình bất kì đâu, bất kì khi nào Ngoài những tính năng trên, thiết bị này còn được tích hợp nhiều tiện ích tối ưu như: lưu trạng thái xe và thời gian ngay cả khi rút điện, tự động cập nhật chương trình từ xa và giao tiếp 2 chiều với trung tâm qua bộ thu phát tín hiệu được lắp đắt bên trong thiếu bị giám sát

➢ Quản lý các tham số như tốc độ, ngày tháng…

➢ Ghi nhận tất cả các thông tin trên và khi cần có thể xem lại toàn bộ số liệu của hành trình chuyến đi bằng phần mềm của trung tâm theodõi các phương tiện giao thông

➢ Ghi nhận tất cả các thông tin trên và khi cần có thể xem lại toàn bộ số liệu của hành trình chuyến đi bằng phần mềm của trung tâm theodõi các phương tiện giao thông

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 49

➢ Trong phạm vi cho phép, thiết bị và trung tâm có thể làm việc trực tiếp (theo dõi trực tiếp đường đi của xe, thông số, tốc độ…)

2.3.3 Sơ đồ mạch điện giao tiếp giữa các phần cứng của thiết bị

• Sơ đồ mạch điện Intel Galileo với LCD

Trên sơ đồ chúng ta có thể thấy bo mạch chính Intel Galileo sử dụng các chân như sau: pin 2, pin 3, pin 5, pin 6, pin 9, pin 10 được đấu nối với màn hình LCD 16x2 Chân pin 2 được nối với chân DB7, chân pin 3 được nối với chân DB6, chân pin 5 được nối với chân DB5, chân pin 6 được nối với chân DB4 Các chân trên đều là các chân truyền dữ liệu từ board Galileo đến LCD Còn riêng với pin 9 được nối với chân R/W đây là chân điều ghi và đọc

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 50 trên LCD, ở đây là ghi các dữ liệu từ board Galileo để hiển thị lên màn hình

Pin 10 được nối với chân EN đây là chân điều khiên LCD, vô hiệu hóa LCD, cho LCD hoạt động hoặc bắt đầu đọc ghi trên LCD Nguồn điện sử dụng là

5V được nối vào chân Vcc trên LCD, và cấp đèn led vào chân LCD+, các nguồn điện đều được nối thông qua điện trở để giúp hoạt động ổn định trên các thiết bị Chân GND được đấu nối với các chân tương ứng bên LCD là

• Sơ đồ mạch điện Intel Galileo Với GPS, RS232

KHOA CÔNG NGHỆ - ĐẠI HỌC HÒA BÌNH 51

Ngày đăng: 05/05/2024, 11:24

HÌNH ẢNH LIÊN QUAN

Hình 1.1:Sơ đồ cấu trúc của Galileo - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.1 Sơ đồ cấu trúc của Galileo (Trang 9)
Hình 1.2: Hình ảnh của Intel Galileo - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.2 Hình ảnh của Intel Galileo (Trang 11)
Hình 1.3: Màn hình LCD 16x2 - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.3 Màn hình LCD 16x2 (Trang 17)
Hình 1.5: Intel Arduino trong Applications MacOS - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.5 Intel Arduino trong Applications MacOS (Trang 20)
Hình 1.4: Thư mục Intel Arduino trong Windown - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.4 Thư mục Intel Arduino trong Windown (Trang 20)
Hình 1.6:Chương trình Intel Arduino - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.6 Chương trình Intel Arduino (Trang 22)
Hình 1.7: Lựa chọn board phù hợp trong Intel Arduino - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.7 Lựa chọn board phù hợp trong Intel Arduino (Trang 23)
Hình 1.8: Ví dụ chương trình Blink trong Intel Arduino - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.8 Ví dụ chương trình Blink trong Intel Arduino (Trang 24)
Hình 1.9: Biên dịch chương trình trong Intel Galileo thành công - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.9 Biên dịch chương trình trong Intel Galileo thành công (Trang 26)
Hình 1.10: Chương trình trong Intel Arduino bị lỗi - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 1.10 Chương trình trong Intel Arduino bị lỗi (Trang 27)
Hình 2.1: Sơ đồ liên quan giữa 3 phần hệ thống định vị toàn cầu - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 2.1 Sơ đồ liên quan giữa 3 phần hệ thống định vị toàn cầu (Trang 33)
Hình 2.2:Cấu trúc tín hiệu GPS - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 2.2 Cấu trúc tín hiệu GPS (Trang 34)
Hình 2.3: Chuyển động vệ tinh nhân tạo xung quanh trái đất - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 2.3 Chuyển động vệ tinh nhân tạo xung quanh trái đất (Trang 35)
Hình 2.4: Vị trí các trạm điều khiển và giám sát hệ thống GPS - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 2.4 Vị trí các trạm điều khiển và giám sát hệ thống GPS (Trang 36)
Hình 2.5: Thiết bị quản lý hành trình xe và lái xe trên các phương tiện giao - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
Hình 2.5 Thiết bị quản lý hành trình xe và lái xe trên các phương tiện giao (Trang 48)
2.3.3  Sơ đồ mạch điện giao tiếp giữa các phần cứng của thiết bị - tìm hiểu boardb galileo intel và ngôn ngữ intel arduino ứng dụng để khai thác thông tin gps phục vụ quản lý phương tiện di động
2.3.3 Sơ đồ mạch điện giao tiếp giữa các phần cứng của thiết bị (Trang 50)

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

TÀI LIỆU LIÊN QUAN

w