BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HCM KHOA CÔNG NGHỆ THÔNG TIN TRẦN QUANG HUY NGUYỄN MINH SƠN QUẢN LÝ VÀ ĐỊNH VỊ THIẾT BỊ IoT TRÊN NỀN TẢNG ĐIỆN TOÁN ĐÁM MÂY Ngành Công Nghệ Thông Tin Giảng.
BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM KHOA CÔNG NGHỆ THÔNG TIN TRẦN QUANG HUY NGUYỄN MINH SƠN QUẢN LÝ VÀ ĐỊNH VỊ THIẾT BỊ IoT TRÊN NỀN TẢNG ĐIỆN TỐN ĐÁM MÂY Ngành: Cơng Nghệ Thơng Tin Giảng viên hướng dẫn: TS Trần Thị Minh Khoa TP HỒ CHÍ MINH, THÁNG NĂM 2020 INDUSTRIAL UNIVERSITY OF HO CHI MINH CITY FACULTY OF INFORMATION TECHNOLOGY Tran Quang Huy Nguyen Minh Son MANAGE AND LOCATE IoT DEVICES ON CLOUD COMPUTING PLATFORMS Major: Information technology Instructor: PhD Tran Thi Minh Khoa HO CHI MINH CITY, JULY 2020 Manage and locate IoT devices on cloud computing platforms ABSTRACT Reason for choosing the topic: Nowadays, the population is increasing, the problem of daily transportation is increasing, the movement by means of transportation is increasingly used widely as motorcycles, cars, airplanes Since then, the issue of tracking the travel routes of vehicles is really necessary to avoid unfortunate circumstances in our lives To track as well as share the location information of the vehicle we need a IoT device and a storage program to handle it Those are the reason for our team to build this system Problems: - In black box inside vehicle, Rasbperry is connected to GPS Neo-M8N - The coordinate data from the IoT device is updated continuously every second to the Cloud IoT core, then redirects to the Topic Pub/Sub - Google Cloud Function is activated whenever Pub/Sub receives new data - The data is fed into Firebase real-time database - The mobile application accesses Firebase via request and displays the coordinates data continuously for the user Methods: Using technology such as: Android Studio, Visual Studio code, Cloud IoT Core, Google Map API, Firebase, … and read more related documents to understand some problems of the topic LỜI MỞ ĐẦU Ngày nay, đất nước ngày phát triển kinh tế, sở hạ tầng, đường sá xây dựng ngày nhiều, tên đường xa lạ, khu đô thị mọc lên, xe cộ sử dụng rộng rãi giúp lại dễ dàng từ nơi đến nơi khác thuận tiện Việc di chuyển từ nơi đến nơi khác khơng cịn q khó khăn, dân số ngày đông nhu cầu lại di chuyển ngày gia tăng Cùng với phát triển mạnh mẽ công nghệ thông tin bùng nổ internet, lĩnh vực IoT (Internet Of Thing) phát triển cách không ngừng, giúp cho sống người ngày hoàn thiện, chất lượng sống ngày cao Từ việc theo dõi lộ trình xe người dùng quan tâm, để theo dõi lộ trình xe cần phải có thiết bị định vị quản lý Cùng với mục đính nhằm giảm thiểu chi phí, khơng tốn đầu tư sở hạ tầng dựa tảng điện toán đám mây cách tiện lợi nhanh chóng, liệu an tồn đồng hóa đám mây, đảm bảo độ an tồn, triển khai nhanh chóng đâu Nhận thấy điều đó, với phát triễn mạnh mẽ internet thời đại ngày nay, nhóm định thực khóa luận với ý tưởng quản lý định vị thiết bị IoT dựa vào tảng điện toán đám mây Nghiên cứu đưa ứng dụng giúp chia vị trí phương tiện lên ứng dụng android nhằm theo dõi định vị thiết bị Thiết bị GPS thay cho hộp đen xe để chia vị trí thơng qua ứng dụng chúng em xây dựng Chương trình thử nghiệm thực tế mang lại kết tốt, đạt thành công đáp ứng phần lớn yêu cầu mục đích mà nhóm đặt LỜI CẢM ƠN Chúng em xin gửi lời cảm ơn chân thành sâu sắc đến thầy cô khoa Công Nghệ Thông Tin, tất thầy cô trường Đại Học Công Nghệp TP.HCM truyền đạt kiến thức, kinh nghiệm quý báu suốt trình chúng em học tập nghiên cứu trường Chúng em xin gửi lời cảm ơn đặc biệt đến cô TS Trần Thị Minh Khoa, người truyền cảm hứng, niềm đam mê nghiên cứu, sáng tạo cho chúng em Cơ người tận tình hướng dẫn, hỗ trợ tạo điều kiện tốt để chúng em hồn thành khóa luận Xin gửi lời cảm ơn đến anh, chị bạn bè khoa Công Nghệ Thông Tin giúp đỡ, trao đổi kiến thức suốt trình học tập thực khóa luận Chúng xin dành lời cảm ơn to lớn đến ba, mẹ gia đình Ba, mẹ gia đình ln bên chúng con, nguồn động lực không mệt mỏi chỗ dựa tinh thần vững giúp chúng vượt qua khó khăn để hồn thành tốt khóa luận Mặc dù nỗ lực cố gắng song khóa luận chắn khơng thể tránh khỏi sai sót, khuyết điểm Chúng tơi kính mong nhận thơng cảm tận tình bảo, góp ý quý Thầy Cô bạn Cuối chúng em xin gửi lời chúc sức khỏe thành đạt tới tất q Thầy Cơ tồn thể gia đình bạn bè Xin chân thành cảm ơn! Nhận xét (Của giảng viên hướng dẫn) Nhận xét (Của giảng viên phản biện) Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây MỤC LỤC LỜI MỞ ĐẦU MỤC LỤC DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU CHƯƠNG TỔNG QUAN ĐỀ TÀI 1.1 Tên đề tài 1.2 Động thực 1.3 Mục tiêu đề tài 1.4 Ý nghĩa đề tài 10 1.5 Phạm vi nghiên cứu đề tài 10 1.6 Cấu trúc khóa luận 10 CHƯƠNG 2.1 CƠ SỞ LÝ THUYẾT THIẾT BỊ 11 Giới thiệu Raspberry Pi 11 2.3.1 Tổng quan Raspberry pi 11 2.3.2 Cấu hình Raspberry pi 12 2.2 Tổng quan kĩ thuật định vị 13 2.2.1 Giới thiệu GPS 13 2.2.2 Các thành phần GPS 14 2.2.3 Sự hoạt động GPS 14 Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện tốn đám mây 2.2.4 Độ xác GPS 15 2.2.5 GPS Sử dụng 15 2.3 Ngôn ngữ sử dụng 17 2.3.1 React native 17 2.3.2 JavaScript 19 2.3.3 Python 20 2.4 Phần mềm sử dụng 21 2.4.1 Visual studio code 21 2.4.2 Android Studio 22 CHƯƠNG 3.1 KIẾN THỨC NỀN TẢNG 24 Tổng quan IoT 24 3.1.1 Định nghĩa 24 3.1.2 Khái niệm IoT 24 3.1.3 Đặc điểm 24 3.1.4 Mô hình hệ thống IoT 26 3.2 Các giao thức truyền nhận liệu 27 3.2.1 Các giao thức dùng IOT 27 3.2.2 Các giao thức truyền qua mạng 28 3.2.3 Giao thức sử dụng 28 3.3 Tổng quan Google Cloud IoT 34 Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây 3.3.1 Cloud IoT Core 34 3.3.2 Google Cloud Pub/Sub 38 3.3.3 Cloud Function 40 3.4 Google Map API 41 3.4.1 Giới thiệu 41 3.4.2 Google Direction API 41 3.4.3 Google Places API 46 3.5 Google Cloud Platform 47 3.6 Firebase 47 3.7 Database realtime 48 3.7.1 Database Realtime gì? 49 3.7.2 Mơ hình Firebase Realtime Database 49 CHƯƠNG XÂY DỰNG VÀ TRIỂN KHAI HỆ THỐNG 51 4.1 Mơ hình triển khai hệ thống 51 4.2 Triển khai hệ thống 52 4.2.1 Cài đặt thư viện cần thiết 52 4.2.2 Xây dựng ứng dụng React Native android cho hệ thống 53 4.2.3 Triển khai Cơ sở liệu thời gian thực FireBase cho hệ thống 54 4.2.4 Cấu hình IoT Cloud cho thiết bị Raspberry pi 55 4.2.5 Chạy chương trình để lấy tọa độ từ GPS gửi đến Firebase 57 Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Hình Giao diện ứng dụng thiết bị xem Click vào Device ta thấy tọa độ địa thiết bị Hình 10 Tọa độ địa Device2 Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 60 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Khi di chuyển thiết bị IOT, ta thấy tọa độ địa hình thay đổi Hình 11 Tọa độ thay đổi đồ Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 61 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Hình 12 Tọa độ thay đổi đồ 4.2.5.2 Người dùng Người dùng thiết bị di động lần đầu dùng ứng dụng đăng kí tài khoản mật sau: Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 62 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện tốn đám mây Hình 13 Form đăng ký Sau đăng ký thành công tài khoản User tiến hành đăng nhập vào ứng dụng Khi đăng nhập vào khởi tạo thiết bị tương ứng với Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 63 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây người dùng, người dùng chọn tên thiết bị tên user name mình, cịn userId deviceId giá trị mặc định hệ thống cung cấp cho người dùng Khi đăng nhập thành công vào hình sử dụng người dùng User8 thấy Tab sau: Hình 14 Giao diện hệ thống Người dùng truy cập yêu cầu quyền truy cập vào thiết bị di động Device1 thiết bị IoT Device2 Yêu cầu gửi lên người quản trị người dùng yêu cầu Người dùng sử dụng người quản trị người dùng chấp nhận yêu cầu Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 64 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện tốn đám mây Hình 15 Giao diện hệ thống cấp quyền Sau đó, người quản trị Device2 đăng nhập vào hệ thống tiến hành cấp quyền truy cập cho User8 User yêu cầu Hình 16 Giao diện đăng nhập cấp quyền Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 65 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Người dùng thiết bị di động Device1 đăng nhập cấp quyền truy cập vị trí cho User8 Hình 17 Giao diện đăng nhập cấp quyền User8 chuyển sang Tab “THIẾT BỊ CĨ THỂ XEM” thấy có quyền truy cập vị trí Device2 Device1 Hình 18 Giao diện người dùng Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 66 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Sau người dùng chọn vào Device thấy tọa độ thiết bị đồ Đồng thời ta thấy thông tin chi tiết thiết bị Device8 khoảng cách đến Device 2.Cũng từ Device8 đến Device1 Hình 19 Giao diện thông tin chi tiết Device8 Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 67 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Tương tự vậy, ta có thơng tin chi tiết Device2 Device1 khoảng cách chúng Hình 20 Giao diện thơng tin chi tiết Device2 Device Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 68 Khóa luận tốt nghiệp ngành CNTT CHƯƠNG Quản lý định vị thiết bị IoT tảng điện toán đám mây KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 5.1 Kết đạt Sau thời gian tập trung thực đề tài, nhóm đạt kết việc tao chương trình ứng dụng để chia vị trí, tọa độ, khoảng cách thiết bị bao gồm thiết bị IoT điện thoại lên đồ Giao diện tạo thân thiện, dễ dàng tương tác Sau hoàn thành xong đề tài, nhóm em học thêm kỹ sử dụng cảm biến GPS, kết nối thiết bị IoT với tảng điện toán đám mây lập trình ứng dụng di động Bên cạnh đó, kiến thức chuyên ngành nâng cao thông qua việc tìm hiểu áp dụng kiến thức cũ vào việc phát triển đồ án, tăng khả tự học tập xử lý rủi ro 5.2 Hướng phát triển Hiệu ứng dụng android chưa tốt Chưa đưa hệ thống lên Web mà sử dụng ứng dụng Trong thời gian sau nhóm em nghiên cứu phát triển hệ thống ứng dụng Web cải thiện hiệu ứng dụng Android Nghiên cứu cách tích hợp hệ thống vào ứng dụng thương mại khác quản lí trẻ em, tàu thuyền, … Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 69 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây TÀI LIỆU THAM KHẢO Tài liệu tiếng việt [1] Nordiccoder.com, Tổng quan React Native, https://nordiccoder.com/blog/tong-quan-ve-react-native/ [2] Trần Vĩnh Phước (2014), GPS hệ thống định vị toàn cầu, Đại học Quốc gia Tp Hồ Chí Minh [3] o7planning.org, Điện tốn đám mây, https://o7planning.org/vi/11703/dientoan-dam-may-cloud-computing [4] vi.wikipedia.org, Hypertext Transfer Protocol, https://vi.wikipedia.org/wiki/Hypertext_Transfer_Protocol Tài liệu tiếng anh [5] www.raspberry.org ,Raspberry pi documentation, https://www.raspberrypi.org/documentation/ [6] Ovidiu Vermesan, Peter Friess - 2013 (2013), Internet of Thing: From Research and Innovation to Market Deployment, River Publishers [7] Lizhe Wang, Rajiv Ranjan, Jinjun Chen (2017), Cloud Computing: Methodology, Systems and Applications, CRC Press, Florida, American [8] cloud.google.com, Google Cloud IOT, https://cloud.google.com/solutions/iot [9] Alfred Leick (2014), GPS Satellite Surveying, Third Éditions, Toulouse, France, pp 188-203 Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 70 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây KẾ HOẠCH THỰC HIỆN ĐỒ ÁN Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 71 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây NHẬT KÝ LÀM VIỆC Tên đồ án: Quản lý định vị thiết bị IoT tảng điện toán đám mây Sinh viên thực hiện: Sinh viên 1: Trần Quang Huy - 16081381 Sinh viên 2: Nguyễn Minh Sơn - 16077101 Giảng viên hướng dẫn: TS Trần Thị Minh Khoa Ngày bắt đầu: 03/02/2020 Tuần Từ ngày Đến ngày Nội dung 03/02/2020 09/02/2020 Nhóm hồn tất đăng ký chọn đề tài khóa luận tốt nghiệp Lập kế hoạch thực ban đầu 10/02/2020 16/02/2020 Phân tích yêu cầu đề tài 17/02/2020 23/02/2020 Lên kế hoạch chi tiết, mục tiêu cụ thể đề tài 24/02/2020 01/03/2020 Lên danh sách thiết bị Tìm kiếm đọc hiểu tài liệu liên quan 02/03/2020 08/03/2020 Tìm hiểu thiết bị bước đầu chọn cơng nghệ sử dụng 09/03/2020 15/03/2020 Tìm hiểu kiến thức tảng Google Cloud thiết bị liên quan Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 72 Khóa luận tốt nghiệp ngành CNTT 16/03/2020 22/03/2020 Quản lý định vị thiết bị IoT tảng điện toán đám mây Tìm hiểu giao thức kết nối Chọn giao thức thực 23/03/2020 29/03/2020 Xây dựng giao diện cho hệ thống Lập trình ứng dụng Android kiểm tra chỉnh sửa giao diện điện thoại 30/03/2020 05/04/2020 Thiết kế sở liệu 10 06/04/2020 12/04/2020 Cấu hình module GPS U-Blox NEO-M8N để lấy liệu tọa độ từ Raspberry 11 13/04/2020 19/04/2020 12 20/04/2020 26/04/2020 Cấu hình Registry cho Cloud IoT core đăng kí thiết bị vào Registry 13 27/04/2020 03/05/2020 14 04/05/2020 10/05/2020 Cấu hình topic Pub/Sub, Cloud Function xây dựng hệ sở liệu Firebase 15 11/05/2020 17/05/2020 16 18/05/2020 24/05/2020 17 25/05/2020 31/05/2020 Xây dựng chương trình Raspberry để vừa lấy tọa độ từ GPS vừa gửi liệu tọa độ lên Cloud Hoàn tất hệ thống Chạy chương trình 18 01/06/2020 07/06/2020 Kiểm tra, thực thêm chức Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 73 Khóa luận tốt nghiệp ngành CNTT 19 08/06/2020 14/06/2020 Quản lý định vị thiết bị IoT tảng điện toán đám mây Thực chức ứng dụng 20 15/06/2020 21/06/2020 Kiểm tra tổng thể hệ thống Hồn tất khóa luận 21 22/06/2020 28/06/2020 Báo cáo khóa luận hồn tất Nộp theo yêu cầu giảng viên 22 29/06/2020 05/07/2020 Hoàn tất Poster Sile thuyết trình phản biện Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 74 ... nghiệp ngành CNTT CHƯƠNG Quản lý định vị thiết bị IoT tảng điện toán đám mây TỔNG QUAN ĐỀ TÀI 1.1 Tên đề tài Quản Lý Và Định Vị Thiết Bị IOT Trên Nền Tảng Điện Toán Đám Mây 1.2 Động thực Ngày nay,... trưng Quản lý thiết bị Trần Quang Huy – 16081381 Nguyễn Minh Sơn – 16077101 35 Khóa luận tốt nghiệp ngành CNTT Quản lý định vị thiết bị IoT tảng điện toán đám mây Trình quản lý thiết bị cho phép thiết. .. nhóm định thực khóa luận với ý tưởng quản lý định vị thiết bị IoT dựa vào tảng điện toán đám mây Nghiên cứu đưa ứng dụng giúp chia vị trí phương tiện lên ứng dụng android nhằm theo dõi định vị thiết