Tìm Hiểu Board Intel Galileo và Ngôn Ngữ Arduino: Ứng Dụng GPS Trong Quản Lý Phương Tiện Di Động

Chuyên khảo phân tích 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ụ, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên

Trường đại học

Trường Đại Học Hòa Bình

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2016

58
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI MỞ ĐẦU

1. CHƯƠNG 1: TỔNG QUAN

1.1. Giới thiệu chung về Arduino

1.2. Giới thiệu về board Intel Galileo

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

1.2.2. Board Intel Galileo

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

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

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

2. 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

2.1. Tổng quan về GPS

2.1.1. Giới thiệu chung về GPS

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

2.1.3. Cách thức hoạt động của hệ thống GPS

2.1.4. Cấu trúc tín hiệu GPS

2.1.5. Những yếu tố ảnh hưởng đến tín hiệu GPS

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

2.2.1. Cấu tạo chuỗi NMEA 0183

2.2.2. Dữ liệu đưa ra

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

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

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

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

2.3.4. Các modun hoạt động của thiết bị

2.3.5. Quá trình thử nghiệm thiết bị

2.3.6. Chương trình vẽ lại đường đi bằng ngôn ngữ Visual Basic

MỘT SỐ TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tìm Hiểu Board Intel Galileo và Ngôn Ngữ Arduino

Board Intel Galileo là một trong những sản phẩm tiên tiến của Intel, được thiết kế để tương thích với nền tảng Arduino. Với khả năng xử lý mạnh mẽ và tính năng mở rộng linh hoạt, board này đã trở thành lựa chọn phổ biến cho các dự án DIY và ứng dụng IoT. Ngôn ngữ lập trình Arduino, với cú pháp đơn giản và dễ hiểu, giúp người dùng dễ dàng phát triển các ứng dụng tương tác với phần cứng.

1.1. Giới Thiệu Về Board Intel Galileo

Board Intel Galileo được trang bị bộ xử lý Intel Quark SoC X1000, cho phép thực hiện nhiều tác vụ phức tạp. Nó tương thích với các shield Arduino, giúp mở rộng khả năng kết nối và tương tác với các thiết bị khác.

1.2. Ngôn Ngữ Arduino Cơ Bản và Ứng Dụng

Ngôn ngữ Arduino là một ngôn ngữ lập trình mã nguồn mở, dễ học và dễ sử dụng. Nó cho phép lập trình viên phát triển các ứng dụng cho board Intel Galileo một cách nhanh chóng và hiệu quả.

II. Vấn Đề và Thách Thức Khi Sử Dụng Board Intel Galileo

Mặc dù board Intel Galileo mang lại nhiều lợi ích, nhưng cũng tồn tại một số thách thức trong quá trình sử dụng. Việc lập trình và kết nối với các thiết bị ngoại vi có thể gặp khó khăn, đặc biệt đối với những người mới bắt đầu.

2.1. Khó Khăn Trong Lập Trình

Người dùng có thể gặp khó khăn trong việc làm quen với cú pháp lập trình của ngôn ngữ Arduino, đặc biệt là khi cần tích hợp nhiều module khác nhau.

2.2. Vấn Đề Kết Nối Internet

Kết nối Internet là một yếu tố quan trọng trong các dự án IoT. Tuy nhiên, việc thiết lập kết nối mạng cho board Intel Galileo có thể gặp một số trở ngại kỹ thuật.

III. Phương Pháp Lập Trình Board Intel Galileo Với Ngôn Ngữ Arduino

Để lập trình board Intel Galileo, người dùng có thể sử dụng phần mềm Arduino IDE. Phần mềm này cung cấp giao diện thân thiện và nhiều thư viện hỗ trợ, giúp việc lập trình trở nên dễ dàng hơn.

3.1. Cài Đặt Phần Mềm Arduino IDE

Người dùng cần tải và cài đặt phần mềm Arduino IDE để bắt đầu lập trình. Phần mềm này hỗ trợ nhiều thư viện và công cụ hữu ích cho việc phát triển ứng dụng.

3.2. Viết Chương Trình Đầu Tiên

Sau khi cài đặt, người dùng có thể viết chương trình đầu tiên để điều khiển các thiết bị như cảm biến hoặc động cơ, giúp làm quen với cách thức hoạt động của board.

IV. Ứng Dụng Thực Tiễn Của Board Intel Galileo Trong Quản Lý GPS

Board Intel Galileo có thể được sử dụng để phát triển các ứng dụng quản lý GPS, giúp theo dõi và giám sát phương tiện di động một cách hiệu quả. Các ứng dụng này có thể bao gồm hệ thống giám sát hành trình và quản lý giao thông.

4.1. Hệ Thống Giám Sát Hành Trình

Hệ thống này cho phép theo dõi vị trí và hành trình của phương tiện, giúp nâng cao hiệu quả quản lý và giảm thiểu rủi ro.

4.2. Ứng Dụng Trong Quản Lý Giao Thông

Board Intel Galileo có thể được tích hợp vào các hệ thống giao thông thông minh, giúp cải thiện lưu thông và giảm ùn tắc.

V. Kết Luận và Tương Lai Của Board Intel Galileo

Board Intel Galileo không chỉ là một công cụ mạnh mẽ cho các dự án DIY mà còn mở ra nhiều cơ hội cho các ứng dụng trong lĩnh vực IoT và quản lý giao thông. Tương lai của board này hứa hẹn sẽ còn phát triển hơn nữa với sự hỗ trợ từ cộng đồng lập trình viên.

5.1. Tiềm Năng Phát Triển

Với sự phát triển không ngừng của công nghệ, board Intel Galileo có thể được cải tiến để đáp ứng nhu cầu ngày càng cao của người dùng.

5.2. Hỗ Trợ Từ Cộng Đồng

Cộng đồng lập trình viên đang ngày càng lớn mạnh, cung cấp nhiều tài nguyên và hỗ trợ cho người dùng mới, giúp họ dễ dàng tiếp cận và sử dụng board Intel Galileo.

10/07/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TỔNG QUAN 1.1 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 5 NGUYỄN VĂN NGỌC – 512CNT KHÓA LUẬN TỐT NGHIỆP 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 1014. 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 6 NGUYỄN VĂN NGỌC – 512CNT KHÓA LUẬN TỐT NGHIỆP Đượ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.2 Giới thiệu về board Intel Galileo 1.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.

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. 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 7 NGUYỄN VĂN NGỌC – 512CNT KHÓA LUẬN TỐT NGHIỆP 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.

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 8 NGUYỄN VĂN NGỌC – 512CNT KHÓA LUẬN TỐT NGHIỆP ✓ Các chân giao tiếp có thể hoạt động ở cả 2 mức điện áp là 3. 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. 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.

• 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.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 9 NGUYỄN VĂN NGỌC – 512CNT KHÓA LUẬN TỐT NGHIỆP • 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.

• 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.2 Board Intel Galileo 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 10 NGUYỄN VĂN NGỌC – 512CNT KHÓA LUẬN TỐT NGHIỆP • 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.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.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ