BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH THIẾT KẾ HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ S K L0 0 7 9 6 3 ĐỒ ÁN TỐT NGHIỆP NGÀNH
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
THIẾT KẾ HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN CÁC
THIẾT BỊ ĐIỆN TRONG NHÀ
S K L0 0 7 9 6 3
ĐỒ ÁN TỐT NGHIỆP NGÀNH CNKT ĐIỆN TỬ - VIỄN THÔNG
GVHD: ThS NGUYỄN NGÔ LÂM SVTH: VŨ HOÀNG HẢI
MSSV: 16141024 SVTH: VŨ XUÂN THẮNG MSSV: 16141079
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
THIẾT KẾ HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN
CÁC THIẾT BỊ ĐIỆN TRONG NHÀ
Trang 3BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
-
ĐỒ ÁN TỐT NGHIỆP
Đề tài:
THIẾT KẾ HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN
CÁC THIẾT BỊ ĐIỆN TRONG NHÀ
Trang 4Tp Hồ Chí Minh, ngày 20 tháng 1 năm 2021
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ và tên sinh viên: Vũ Hoàng Hải MSSV: 16141024
Vũ Xuân Thắng MSSV: 16141079
Ngành: Công nghệ kỹ thuật điện tử - viễn thông Lớp: 16141CLVTB
Giảng viên hướng dẫn: ThS Nguyễn Ngô Lâm
Ngày nhận đề tài: Ngày nộp đề tài: 20/1/2021
1 Tên đề tài: Thiết kế hệ thống giám sát và điều khiển các thiết bị điện trong nhà
2 Các số liệu, tài liệu ban đầu: Arduino; Giáo trình lập trình Android và ứng dụng
3 Nội dung thực hiện đề tài: Thiết kế và xây dựng mô hình hệ thống nhà thông minh Giám sát ngôi nhà thông qua các cảm biến và điều khiển các thiết bị điện thông qua Internet
4 Sản phẩm: Mô hình hệ thống và ứng dụng trên điện thoại Android
GIẢNG VIÊN HƯỚNG DẪN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ***
Trang 5PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên Sinh viên: Vũ Hoàng Hải MSSV: 16141024
Vũ Xuân Thắng MSSV: 16141079
Ngành: Công nghệ kỹ thuật điện tử - viễn thông
Tên đề tài: Thiết kế hệ thống giám sát và điều khiển các thiết bị điện trong nhà
Họ và tên Giáo viên hướng dẫn: ThS Nguyễn Ngô Lâm
NHẬN XÉT
1 Về nội dung đề tài & khối lượng thực hiện:
2 Ưu điểm:
3 Khuyết điểm:
4 Đề nghị cho bảo vệ hay không?
5 Đánh giá loại:
6 Điểm:……….(Bằng chữ: )
Tp Hồ Chí Minh, ngày tháng 1 năm 2021 Giáo viên hướng dẫn CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ***
Trang 6PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên: Vũ Hoàng Hải MSSV: 16141024
Vũ Xuân Thắng MSSV: 16141079
Ngành: Công nghệ kỹ thuật điện tử - viễn th ng
Tên đề tài: Thiết kế hệ thống giám sát và điều khiển các thiết bị điện trong nhà
Họ và tên Giáo viên phản biện:
NHẬN XÉT 1 Về nội dung đề tài & khối lƣợng thực hiện:
2 Ƣu điểm:
3 Khuyết điểm:
4 Đề nghị cho bảo vệ hay không?
5 Đánh giá loại:
6 Điểm:……….(Bằng chữ: )
Tp Hồ Chí Minh, ngày tháng 1 năm 2021 Giáo viên phản biện CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ***
Trang 7PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên: Vũ Hoàng Hải MSSV: 16141024
Vũ Xuân Thắng MSSV: 16141079
Ngành: Công nghệ kỹ thuật điện tử - viễn th ng
Tên đề tài: Thiết kế hệ thống giám sát và điều khiển các thiết bị điện trong nhà
Họ và tên Giáo viên phản biện:
NHẬN XÉT 7 Về nội dung đề tài & khối lƣợng thực hiện:
8 Ƣu điểm:
9 Khuyết điểm:
10 Đề nghị cho bảo vệ hay không?
11 Đánh giá loại:
12 Điểm:……….(Bằng chữ: )
Tp Hồ Chí Minh, ngày tháng năm 2021 Giáo viên phản biện CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ***
Trang 8Chúng em xin chân thành cảm ơn!
Người thực hiện đề tài
Vũ Hoàng Hải Vũ Xuân Thắng
Trang 9TÓM TẮT
Công nghệ hiện nay đã trở thành một phần không thể thiếu đối với đời sống của con người Internet of Things những năm gần đây đã và đang phát triển một cách vô
cùng mạnh mẽ Từ đó, việc ra đời của các ứng dụng cũng như thiết bị thông minh, có
kết nối internet nhằm thuận tiện cho việc theo dõi cũng như điều khiển các thiết bị trong nhà cũng phát triển theo Với mục đích tiếp cận nhu cầu đó nhóm quyết định thực hiện đề tài: “Thiết kế hệ thống giám sát và điều khiển các thiết bị điện
trong nhà” Đề tài này là một mô hình hệ thống hoàn thiện gồm phần cứng và phần
mềm
Nội dung chính của đề tài:
Sử dụng qua Arduino Mega2560 làm vi điều khiển trung tâm
Lưu trữ trạng thái hoạt động của thiết bị lên cơ sở dữ liệu của Firebase
Sử dụng NodeMCU ESP8266 để gửi và nhận dữ liệu từ cơ sở dữ liệu
Xây dựng ứng dụng trên hệ điều hành Android
Giám sát các thông số trong nhà như nhiệt độ, độ ẩm, khí gas
Sử dụng điện thoại th ng minh để điều khiển các thiết bị
Trang 10MỤC LỤC
LỜI CẢM ƠN i
TÓM TẮT ii
MỤC LỤC HÌNH vi
MỤC LỤC BẢNG viii
DANH MỤC CÁC TỪ VIẾT TẮT ix
CHƯƠNG 1: TỔNG QUAN 1
1.1 ĐẶT VẤN ĐỀ 1
1.2 MỤC TIÊU 1
1.3 NỘI DUNG NGHIÊN CỨU 1
1.4 GIỚI HẠN 2
1.5 BỐ CỤC 2
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 3
2.1 TỔNG QUAN VỀ INTERNET OF THING 3
2.1.1 Giới thiệu 3
2.1.2 Một vài ứng dụng trong đời sống 3
2.2 CÁC CHUẨN GIAO TIẾP TRUYỀN DỮ LIỆU 7
2.2.1 Giao tiếp UART 7
2.2.2 Giao tiếp SPI 8
2.3 Vi điều khiển 10
2.3.1 Khái niệm 10
2.3.2 Bo mạch Arduino Mega 2560 R3 11
2.4 CÔNG NGHỆ WIFI 15
2.4.1 Giới thiệu 15
2.4.2 Các chuẩn kết nốt WiFi phổ biến 15
2.4.3 Cách thức hoạt động của WiFi 16
2.4.4 Module Node MCU ESP8266 17
Trang 112.5 Cơ sở dữ liệu Google Firebase và các ứng dụng 19
2.5.1 Giới thiệu 19
2.5.2 Realtime Database (Dữ liệu thời gian thực) 20
2.6 Hệ điều hành Android 22
2.6.1 Giới thiệu 22
2.6.2 Thành phần của ứng dụng Android 22
2.6.3 Các phiên bản của hệ điều hành Android 23
2.6.4 Phần mềm Android Studio lập trình ứng dụng điều khiển 23
2.7 Công nghệ RFID 24
2.7.1 Giới thiệu 24
2.7.2 Cấu tạo hệ thống RFID 24
2.7.3 Nguyên lí hoạt động 25
2.7.4 Đặc điểm 25
2.7.5 Mạch RFID RC522 25
2.5 Các cảm biến sử dụng trong đề tài 26
2.5.1 Cảm biến nhiệt độ, độ ẩm DHT11 26
2.5.2 Cảm biến quang trở 28
2.5.3 Cảm biến mưa 29
2.5.4 Cảm biến rung 30
2.5.5 Cảm biến khí gas MQ2 31
2.6 Các linh kiện khác có trong đề tài 32
2.6.1 Buzzer 32
2.9.2 LED 33
2.9.3 Module Relay 5V 33
2.9.4 Quạt 34
2.9.5 Động cơ Servo 35
2.9.6 LCD 35
CHƯƠNG 3: THIẾT KẾ HỆ THỐNG 37
3.1 Đặc tả hệ thống 37
Trang 123.1.1 Yêu cầu hệ thống 37
3.1.2 Sơ đồ khối và chức năng 38
3.1.3 Hoạt động của hệ thống 39
3.2 Thiết kế, tính toán hệ thống 40
3.2.1 Khối cảm biến 40
3.2.2 Khối giao tiếp và tải 44
3.2.3 Khối RFID 46
3.2.4 Khối truyền dữ liệu 47
3.2.5 Khối hiển thị 47
3.2.6 Khối xử lý trung tâm 49
3.2.7 Khối nguồn 49
CHƯƠNG 4: THI CÔNG HỆ THỐNG 52
4.1 Tổng quan 52
4.2 Thi công hệ thống 52
4.3 Lưu đồ giải thuật 53
4.3.1 Lưu đồ giải thuật chi tiết khối xử lý 53
4.3.2 Lưu đồ giải thuật cho ESP 55
4.3.3 Lưu đồ giải thuật cho ứng dụng Android điều khiển 56
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ 58
5.1 Kết quả đạt được 58
5.1.1 Kết quả lý thuyết 58
5.1.2 Kết quả thực nghiệm 58
5.2 Đánh giá, nhận xét 61
CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 62
6.1 Kết luận 62
6.2 Hướng phát triển 62
TÀI LIỆU THAM KHẢO 63
PHỤ LỤC 64
Trang 13MỤC LỤC HÌNH
HÌNH 2.1: INTERNET OF THINGS 3
HÌNH 2.2: CÁC THIẾT BỊ ĐEO THÔNG MINH 4
HÌNH 2.3: IOT TRONG NÔNG NGHIỆP 5
HÌNH 2.4: IOT TRONG CÔNG NGHIỆP 5
HÌNH 2.5: SMARTHOME 6
HÌNH 2.6: KHUNG TRUYỀN DỮ LIỆU CỦA UART 7
HÌNH 2.7: KẾT NỐI DÂY GIỮA MASTER VÀ NHIỀU SLAVE TRONG SPI 9
HÌNH 2.8: KHUNG TRUYỀN DỮ LIỆU CỦA SPI 10
HÌNH 2.9: CẤU TRÚC VI ĐIỀU KHIỂN 11
HÌNH 2.10: ARDUINO MEGA 2560 12
HÌNH 2.11: SƠ ĐỒ CHÂN ARDUINO MEGA 2560 12
HÌNH 2.12: BIỂU TƢỢNG CỦA SÓNG WIFI 15
HÌNH 2.13: KẾT NỐI WIFI 17
HÌNH 2.14: MODULE NODEMCU ESP8266 17
HÌNH 2.15: SƠ ĐỒ CHÂN CỦA MODULE NODEMCU ESP 8266 18
HÌNH 2.16: BIỂU TƢỢNG CỦA GOOGLE FIREBASE 19
HÌNH 2.17: CÁC ỨNG DỤNG CỦA FIREBASE 20
HÌNH 2.18: BIỂU TƢỢNG ANDROID 22
HÌNH 2.19: CÁC PHIÊN BẢN ANDROID ĐÃ CHO RA MẮT 23
HÌNH 2.20: BIỂU TƢỢNG PHẦN MỀM ANDROID STUDIO 24
HÌNH 2.21: RFID 24
HÌNH 2.22: MODULE ĐỌC THẺ RFID 25
HÌNH 2.23: CẢM BIẾN NHIỆT ĐỘ, ĐỘ ẨM DHT11 26
HÌNH 2.24: NGUYÊN LÝ HOẠT ĐỘNG CỦA DHT11 27
HÌNH 2.25: DHT11 GỬI BIT 0 VỀ MCU 28
HÌNH 2.26: DHT11 GỬI BIT 1 VỀ MCU 28
HÌNH 2.27: QUANG TRỞ VÀ MODULE CẢM BIẾN QUANG TRỞ 29
HÌNH 2.28: NGUYÊN LÝ HOẠT ĐỘNG CỦA QUANG TRỞ 29
HÌNH 2.29: MODULE CẢM BIẾN MƢA 30
HÌNH 2.30: MODULE CẢM BIẾN RUNG 31
HÌNH 2.31: MODULE CẢM BIẾN KHÍ GAS MQ2 32
HÌNH 2.32: BUZZER 32
HÌNH 2.33: LED 33
HÌNH 2.34: MODULE RELAY 5V 33
Trang 14HÌNH 2.35: SƠ ĐỒ NGUYÊN LÝ MODULE RELAY 5V 34
HÌNH 2.36: QUẠT 12V 34
HÌNH 2.37: ĐỘNG CƠ SERVO SG90 35
HÌNH 2.38: MÀN HÌNH LCD 20X4 35
HÌNH 3.1: SƠ ĐỒ KHỐI HỆ THỐNG 38
HÌNH 3.2: SƠ ĐỒ MẠCH MODULE CẢM BIẾN KHÍ GAS MQ2 40
HÌNH 3.3: SƠ ĐỒ MẠCH MODULE CẢM BIẾN NHIỆT ĐỘ, ĐỘ ẨM DHT11 41
HÌNH 3.4: SƠ ĐỒ MẠCH MODULE CẢM BIẾN QUANG TRỞ 42
HÌNH 3.5: SƠ ĐỒ MẠCH MODULE CẢM BIẾN MƯA 42
HÌNH 3.6: SƠ ĐỒ MẠCH CẢM BIẾN RUNG 43
HÌNH 3.7: SƠ ĐỒ MẠCH CẢM BIẾN VẬT CẢN HỒNG NGOẠ 44
HÌNH 4.1: SƠ ĐỒ NGUYÊN LÝ CỦA HỆ THỐNG 53
HÌNH 4.2: LƯU ĐỒ GIẢI THUẬT CHI TIẾT KHỐI XỬ LÝ TRUNG TÂM 54
HÌNH 4.3: LƯU ĐỒ GIẢI THUẬT CHO ESP8266 55
HÌNH 4.4: LƯU ĐỒ GIẢI THUẬT CHO ỨNG DỤNG ANDROID ĐIỀU KHIỂN 56
HÌNH 5.1: MÔ HÌNH HỆ THỐNG 58
HÌNH 5.2: CÁC THÔNG SỐ ĐƯỢC HIỂN THỊ TRÊN FIREBASE 59
Trang 15MỤC LỤC BẢNG
BẢNG 2.1: THÔNG SỐ KỸ THUẬT CỦA ARDUINO MEGA 2560 13
BẢNG 2.2: THÔNG SỐ KỸ THUẬT MODULE NODEMCU ESP8266 18
BẢNG 2.3: SƠ ĐỒ CHÂN CỦA RFID RC522 26
BẢNG 2.4: SƠ ĐỒ CHÂN DHT11 26
BẢNG 2.5: SƠ ĐỒ CHÂN MODULE QUANG TRỞ 29
BẢNG 2.6: SƠ ĐỒ CHÂN MODULE CẢM BIẾN MƯA 30
BẢNG 2.7: SƠ ĐỒ CHÂN CẢM BIẾN RUNG 31
BẢNG 2.8: SƠ ĐỒ CHÂN MODULE CẢM BIẾN KHÍ GAS MQ2 32
BẢNG 2.9: SƠ ĐỒ CHÂN LCD 36
BẢNG 3.1: CÁC THÔNG SỐ NGUỒN DÒNG VÀ ÁP CỦA CÁC LINH KIỆN 50
BẢNG 5.1: KẾT QUẢ THỰC NGHIỆM TRƯỜNG HỢP ĐIỀU KHIỂN THÔNG QUA MẠNG 61
BẢNG 5.2: KẾT QUẢ THỰC NGHIỆM TRƯỜNG HỢP ĐIỀU KHIỂN TRỰC TIẾP KHÔNG THÔNG QUA MẠNG 61
Trang 16DANH MỤC CÁC TỪ VIẾT TẮT
TT Từ viết tắt Từ tiếng Anh Nghĩa tiếng Việt
Converter
Chuyển đổi tương tự sang
số
4 CSS Cascading Style Sheets Bộ truyền nhận nối tiếp bất
đồng bộ
Institute of Electrical and Electronics Engineers
Hội Kỹ sư Điện và Điện tử
6 IoTs Internet of Things Mạng lưới vạn vật kết nối
7 IIoTs Industrial Internet of
Things
Mạng lưới vạn vật kết nối trong công nghiệp
11 LCD Liquid Crystal Display Màn hình tinh thể lỏng
12 MCU Micro Controller Unit Vi điều khiển
Output Vào Master ra Slave
14 MOSI Master Ouput Slave Ra Master vào Slave
Trang 17Bộ truyền nhận nối tiếp bất
đồng bộ
21 WiFi Wireless Fidelity Hệ thống truy cập Internet
không dây
Trang 18CHƯƠNG 1: TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ
Cùng với sự phát triển của xã hội, ngày nay nhu cầu của con người ngày càng được nâng cao từ đó kéo theo sự phát triển của các lĩnh vực kỹ thuật, công nghệ nhằm đáp ứng được nhu cầu con người như y tế, điện tử, công nghệ th ng tin,… Các công nghệ bây giờ đang gần gũi với cuộc sống hơn bao giờ hết, chúng ta đang sống trong thời đại của sự bùng nổ của kỹ thuật tiên tiến và ứng dụng của nó rất phổ biến, mạnh mẽ
Một trong các xu thế đó là việc các ngôi nhà hiện nay được xây dựng và áp dụng các ứng dụng công nghệ thông tin vào việc quản lí các thiết bị điện tử nhằm nâng cao chất lượng đời sống Bên cạnh đó mạng lưới Internet phát triển mạnh, có tốc độ cao, phủ sóng rộng rãi cùng đó thì các mạng điện thoại cũng đã phát triển các công nghệ mới phục vụ cho xu thể IoTs cho nên việc phát triển hệ thống điều khiển
và giám sát các thiết bị trong nhà càng được chú trọng
Để có thể tiếp cận và nắm bắt được nhu cầu đó, nhóm chúng t i quyết định thực
hiện đề tài “Thiết kế hệ thống điều khiển và giám sát thiết bị trong nhà ”
Thực hiện đề tài này, chúng tôi mong muốn có thể nắm bắt được xu hướng công nghệ điều khiển thông minh hiện nay và qua đó hi vọng đề tài này được ứng dụng rộng rãi nhằm mục đích sử dụng hiểu quả các thiết bị điện cũng như mang lại sự tiện lợi, an toàn cho người dùng
1.2 MỤC TIÊU
Nhóm sẽ thiết kế và thi c ng m hình điều khiển các thiết bị điện trong nhà như đèn, quạt, cửa, giám sát các yếu tố về m i trường như nhiệt độ, độ ẩm, khí gas,…qua ứng dụng được thiết kế sử dụng trên điện thoạt có kết nối WiFi Các tín hiệu dữ liệu được gửi lên Firebase làm nơi lưu trữ dữ liệu và giao tiếp với ATmega
2560 và ESP8266 để điều khiển
1.3 NỘI DUNG NGHIÊN CỨU
Nội dung 1: Nghiên cứu tổng quan về Ardruino, các giao thức truyền dữ
liệu Tìm hiểu về hệ điều hành Android, cơ sở dữ liệu Firebase
Nội dung 2: Tìm hiểu về Ardruino Mega 2560, ESP8266, và các linh kiện
cảm biến, thiết bị ngoại vi
Nội dung 3: Tính toán, thiết kế và thi công mạch, mô hình
Nội dung 4: Hoàn thiện cân chỉnh hệ thống
Trang 191.4 GIỚI HẠN
Sử dụng Ardruino Mega2560 để điều khiển các thiết bị ngoại vi và giao tiếp với các module cảm biến
Thiết kế m hình nhà đơn giản
Giao tiếp giữa Ardruino Mega 2560, NodeMCU ESP8266, ứng dụng Android, Firebase
1.5 BỐ CỤC
Chương 1: Tổng quan
Trình bày tổng quan về lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn và bố cục đồ án
Chương 2: Cơ sở lý thuyết
Giới thiệu các lý thuyết liên quan, thiết bị sử dụng và cách thức giao tiếp
Chương 3: Tính toán và thiết kế hệ thống
Thiết kế hệ thống, sơ đồ khối, sơ đồ nguyên lý chức năng từng khối và thực hiện tính toán
Chương 4: Thi công hệ thống
Thi công mô hình hoàn chỉnh
Chương 5: Kết quả- nhận xét- đánh giá
Trình bày kết quả đạt được sau khi thực hiện, một số hình ảnh từ hệ thống
Từ đó, đưa ra nhận xét, đánh giá cho toàn bộ hệ thống
Chương 6: Kết luận và hướng phát triển
Đưa ra những kết luận sau khi hoàn thiện sản phẩm, các hướng phát triển trong tương lai
Trang 20CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ INTERNET OF THING
2.1.1 Giới thiệu
Internet of Things hay còn được biết tới với tên gọi Internet kết nối vạn vật Trong đó, toàn bộ các thiết bị được tích hợp các bộ phận, linh kiện điện tử, cài đặt phần mềm hay được trang trị các cảm biến để trở nên th ng minh hơn để phục vụ cho người dùng
Đây có thể xem một hệ thống vô cùng phức tạp vì nó chứa đựng một số lượng các kết nối lớn, giao tiếp giữa nhiều thiết bị với nhau và tới bộ xử lí trung tâm
Hình 2.1: Internet of Things
Các thành phần chủ yếu của một hệ thống IoT bao gồm:
Thiết bị: Mỗi một thiết bị sẽ tích hợp một hoặc nhiều cảm biến để phát hiện các giá trị, thông số của ứng dụng và gửi các giá trị đó đến nền tảng của IoT
IoT – Platform: Là nền tảng của Iot, một chương trình phần mềm được lưu trữ trên các kho lưu trữ trực tuyến hay còn được biết đến là điện toán đám mây, nền tảng này cho phép các thiết bị được kết nối với nhau Các dữ liệu
từ thiết bị sẽ được thu nhập và toàn bộ dữ liệu đó sẽ được xử lý, phân tích phát hiện nếu có lỗi trong suốt quá trình hoạt động hệ thống
Kết nối Internet: Trong hệ thống IoT các thiết bị bắt buộc phải giao tiếp với nhau và kết nối tới Internet WiFi được xem là một trong các phương thức
kết nối Internet phổ biến và phát triển rộng rãi hiện nay
Ứng dụng: Người dùng điều khiển hệ thống thông qua ứng dụng dành riêng cho hệ thống
Trang 212.1.2 Một vài ứng dụng trong đời sống
Các thiết bị đeo tay thông minh:
Ngày nay, các thiết bị đeo trên cơ thể con người với nhiều chức năng
th ng minh ngày càng đa dạng như: tai nghe, đồng hồ, kính ,vòng tay thông minh,… Các thiết bị này đang được quan tâm và phát triển mạnh mẽ ở rất nhiều thị trường trên toàn cầu Google, Samsung và đặc biệt là Apple là những tập đoàn lớn đã đầu tư những khoảng tiền rất lớn cho việc chế tạo ra các thiết bị đó Những thiết bị này có thể được gắn các cảm biến và cài đặt các phần mềm với mục đích thu thập các dữ liệu, thông tin của người dùng nhằm phục vụ cho việc lưu trữ, cảnh báo sức khỏe cũng như các phần mềm có tính giải trí để phục vụ cho các sinh hoạt hằng ngày của con người Hầu hết các thiết bị này được thiết
kế với công suất vô cùng nhỏ và kích thước gọn, mang tính thẩm mỹ cao
Hình 2.2: Các thiết bị đeo thông minh
IoT trong nông nghiệp:
Sự gia tăng mạnh mẽ của dân số một cách liên tục và cực kì nhanh đã đẩy mạnh nhu cầu về lương thực, thực phẩm ngày lớn Cải tiến nông nghiệp được xem là lĩnh vực phát triển rất nhanh của Internet of Things Với việc áp dụng các công nghệ, kỹ thuật tiên tiến, các thiết bị hỗ trợ giúp cho công việc được dễ dàng, người nông dân có thể tăng sản lượng sản xuất trong nông nghiệp
Trang 22Sử dụng các thiết bị thu nhập dữ liệu m i trường, đánh ra chất lượng sản phẩm hay các thiết bị tưới tiêu tự động đang ngày càng được phổ biến rộng rãi ở các vùng nông nghiệp
Hình 2.3: IoT trong nông nghiệp
IoT trong Công nghiệp:
Industrial Internet gọi tắt là IIoT, là một sự phát triển mới của ngành công nghiệp IIoT sử dụng các cảm biến có độ nhạy cao, lập trình các phần mềm ứng dụng để tạo ra những cỗ máy cực kì thông minh, có thể tự động hóa hoàn toàn để
hỗ trợ cho các mục đích của ngành công nghiệp Những dữ liệu thu thập được trong quá trình hoạt động sẽ giúp các công ty, các nhà quản lí phát hiện và giải quyết các vấn đề sớm, đạt được năng suất lớn hơn Máy móc sẽ có độ nhất quán
và tính chính xác hơn rất nhiều con người trong quá trình giao tiếp, hoạt động
Hình 2.4: IoT trong công nghiệp
Trang 23IIoT có một tiềm năng lớn trong việc quản lí chất lượng và độ bền vững Các ứng dụng liên kết và máy móc sẽ làm tăng hiệu quả chuỗi cung ứng giữa nhà cung cấp, nhà phân phối và các hệ thống bán lẻ
Nhà thông minh - Smart home:
Smart Home là ứng dụng được phổ biến và có thể xem là xu thế của thiết kế nhà
ở hiện nay Vậy làm cách nào để một ngôi nhà trở nên thông minh? Một cách đơn giản, ngôi nhà thông minh là ngôi nhà sử dụng các thiết bị công nghệ, kỹ thuật cao kết nối với nhau như: quạt, đèn, tivi, chu ng báo, cửa tự động và các thiết bị trong nhà khác… Người sử dụng có thể theo dõi và quản lí mọi thiết bị th ng minh được kết nối trong ngôi nhà của mình bất cứ thời điểm nào ngay cả khi đang kh ng có mặt ở đó th ng qua ứng dụng trên điện thoại, máy tính hoặc máy tính bảng giúp kiểm soát và điều khiển các thiết bị có trong nhà từ xa một cách tự động một cách đơn giản thuận tiện và dễ dàng
Hiện nay nhiều hãng sản xuất đang tiến hành, nghiên cứu chế tạo và sản xuất vô số các sản phẩm để hỗ trợ cho cuộc sống con người trở nên đơn giản và thuận tiện hơn Smart home được xem là bước ngoặc mang tính cách mạng của
sự phát triển IoT Sự ra đời của smart home được đánh giá sẽ trở nên phổ biến như các smartphone hiện nay, có thể kể đến một số các hệ thống nhà thông minh nổi tiếng như: Google Home, Samsung Things, Amazon Alexa,…
Hình 2.5: SmartHome
Trang 242.2 CÁC CHUẨN GIAO TIẾP TRUYỀN DỮ LIỆU
Truyền dữ liệu là cách mà các thiết bị có giao tiếp, trao đổi dữ liệu với nhau Hiện nay có rất nhiều hãng sản suất các linh kiện điện tử khác nhau Vì thế để dễ dàng hơn trong việc truyền và nhận dữ liệu, các chuẩn giao tiếp truyền dữ liệu được ra đời nhằm dễ dàng trao đổi dữ liệu giữa các linh kiện thiết bị điện tử theo một qui củ nhất định Có 2 dạng chuẩn giao tiếp truyền dữ liệu là SPI, UART được nhóm sử dụng trong đề tài
2.2.1 Giao tiếp UART
UART là một mạch tích hợp với mục đích truyền dẫn dữ liệu kiểu nối tiếp giữa máy tính và các thiết bị ngoại vi
Đặc điểm:
Kiểu truyền dữ liệu nối tiếp UART không sử dụng tín hiệu xung clock nên được gọi là dạng bất đồng bộ có một đường truyền dữ liệu (Tx) và một đường thu dữ liệu (Rx), Để có thể truyền được dữ liệu thì cả bên phát và bên thu phải tạo ra xung clock đồng bộ với nhau phải có cùng tần số nên thường được nhắc tới với tên là tốc độ baud Giao tiếp bằng UART đơn giản, hiệu quả cao nhưng do phải truyền các bit START, bit STOP giữa mỗi đường dữ liệu và khoảng trống bảo vệ khiến cho thời gian truyền dữ liệu bị chậm
Quá trình truyền dữ liệu bằng UART
Để Bắt đầu cho việc truyền dữ liệu theo chuẩn UART thì sẽ một START bit phải được gửi đi để thông báo bắt đầu, tiếp đó là các bit dữ liệu và kết thúc quá trình truyền dữ liệu sẽ là STOP bit
Hình 2.6: Khung truyền dữ liệu của UART
Ở trạng thái nghỉ của UART là mức 1(Cao) Bắt đầu truyền START bit sẽ chuyển từ bit 1 xuống bit 0 để thông báo là bắt đầu quá trình truyền dữ liệu Sau đó là đến các bit dữ liệu D0-D7 (Tùy vào dữ liệu truyền mà các bit dữ liệu này có giá trị 0 và
Trang 251 khác nhau) Sau khi các bit dữ liệu truyền đi thì sẽ tới Bit Parity để bên thu nhận nhằm kiểm tra tính đúng đắn của dữ liệu đã nhận Kết thúc là STOP bit là bit 1 báo cho thiết bị rằng kết thúc sự truyền dữ liệu Bên thu sẽ tiến hành kiểm tra khung truyền nhằm đảm báo tính đúng đắn của dữ liệu đã nhận
Những thông số cơ bản trong truyền nhận dữ liệu bằng UART:
Baund rate (tốc độ baund): Thời gian truyền của 1 bit Phải được đồng
bộ ở bên thu và bên phát
Frame (khung truyền): Định nghĩa cho số lượng bit trong mỗi lần truyền của mỗi khung truyền
Start bit: Bắt buộc, là bit đầu tiên được truyền trong 1 khung Có chức năng th ng báo cho bên thu có một gói dữ liệu sắp được truyền đến
Data: là dữ liệu được truyền đi Truyền bit có trọng số nhỏ nhất trước
Parity bit: bit được dung để kiểm tra dữ liệu truyền
Stop bit: Bắt buộc, là 1 hoặc các bit báo hiệu cho thiết bị rằng các bit đã được gửi xong Bên thu sau khi nhận được bit Stop sẽ tiến hành kiểm tra khung truyền, tính chính xác của dữ liệu
2.2.2 Giao tiếp SPI
SPI là một chuẩn truyền thông nối tiếp tốc độ cao do hãng Motorola đề xuất Đây là kiểu truyền thông Master-Slave, trong đó có 1 chip Master điều phối quá trình tuyền th ng và các chip Slaves được điều khiển bởi Master vì thế truyền thông chỉ xảy
ra giữa Master và Slave SPI là một cách truyền song công nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời SPI đ i khi được gọi là chuẩn truyền th ng “4 dây” vì có 4 đường giao tiếp trong chuẩn này đó là SCK, MISO, MOSI
và SS
Trang 26Hình 2.7: Kết nối dây giữa Master và nhiều Slave trong SPI
Chuẩn giao tiếp SPI bao gồm 4 dây:
SCK: Đây chân tín hiệu đồng hồ clock do chip Master, mục đích là tạo xung nhịp cho mọi hoạt động trong quá trình truyền nhận Vì có chân này nên SPI
là chuẩn giao tiếp đồng bộ và dữ liệu trong quá trình truyền nhận cũng có tỉ
Trang 27Hình 2.8: Khung truyền dữ liệu của SPI
Dù là chip Master hay Slave thì đều sẽ có một thanh ghi dữ liệu có 8 bits Khi một xung nhịp do Master tạo ra trên chân SCK, thì sẽ có một bit dữ liệu được truyền qua lại giữa hai chân MISO và MOSI Chỉ có thể thực hiện được khi tín hiệu của chân
SS được thiết lập ở mức 0 (thấp), sau quá trình truyền thì thiết lập các dòng SS trở lại mức 1 (cao)
2.3 Vi điều khiển
2.3.1 Khái niệm
Vi điều khiển là một hệ thống nhúng khép kín Hệ thống này tích hợp bộ xử lý,
bộ nhớ và các thiết bị ngoại vi lại với nhau Hiện nay, đa số các vi điều khiển được sản xuất, lập trình nhằm ứng dụng vào trong các thiết bị điện tử như điện thoại, các thiết bị ngoại vi, các loại xe ô tô, xe gắn máy, đồ da dụng và các thiết bị điện tiêu dùng…
Vi điều khiển có thể là những loại được nhà sản suất lập trình khác đơn giản với thời gian lập trình tương đối ngắn với bộ nhớ và các phần mềm đơn giản Ngoài ra cũng có một số loại vi điều khiển với hệ thống nhúng được thiết kế rất phức tạp để phục vụ cho một số yêu cầu nhất định đòi hỏi các tác vụ nặng
Trang 28Hình 2.9: Cấu trúc vi điều khiển
Một vi điều khiển có bao gồm đầu vào và đầu ra Số lượng các chân khác nhau tùy thuộc theo loại, chức năng và tính ứng dụng của vi điều khiểnvà các linh kiện khác như LCD, cuộn dây, rơ le, bộ chuyển mạch và các cảm biến… mục đích thu thập các
dữ liệu m i trường như nhiệt độ, độ ẩm, mức độ ánh sáng, hiện thị các thông số hay tạo liên kết giữa những vi điều khiển với nhau
Trên thị trường hiện nay có rất nhiều loại vi điều khiển, tiêu biểu như PIC của hãng MICROCHIP, AT89S52 và AVR của hãng ATMEL, STM của STMicroelectronics
2.3.2 Bo mạch Arduino Mega 2560 R3
2.3.2.1.Giới thiệu chung
Bo mạch Arduino Mega 2560 R3 sử dụng vi điều khiển trung tâm là Atmega
2560 cho ra số chân ngoại vi, sử dụng các chuẩn giao tiếp và số chân rất nhiều (54 chân vào ra dạng số và 16 chân vào ra dạng tương tự), bộ nhớ rất lớn (256kb) Board
sử dụng điện áp 5VDC và có cấu trúc tương thích với nhiều board mạch khác nhau
Trang 29Hình 2.10: Arduino Mega 2560
2.3.2.2.Đặc điểm kỹ thuật
Hình 2.11: Sơ đồ chân Arduino Mega 2560
Trang 30 Các thông số kỹ thuật
Bảng 2.1: Thông số kỹ thuật của Arduino Mega 2560
2 Điện áp đầu vào (được xuất) 7-12 V
3 Điện áp đầu vào (được giới hạn) 6-20 V
4 Số lượng chân vào ra 54 (trong đó có 15 chân có
chức năng PWM)
5 Số lượng chân vào ra tương tự 16 chân
6 Dòng điện DC mỗi chân vào ra 20 mA
7 Dòng điện DC với chân có điện áp 3.3V 50 mA
Các đặc điểm về chân của bo mạch Arduino Mega 2560 R3
Chân điều khiển:
- RESET: Arduino Mega Mega 2560 có sẵn một mạch reset và nút ấn để thiết lập lại hệ thống trở về ban đầu hoặc khi kết nối với các thiết bị khác để thiết lập lại bộ điều khiển
- XTAL1, XTAL2: Thạch anh(16MHz) được kết nối với xung clock cung cấp cho bộ điều khiển
- AREF: Chân này có mục đích khi sử dụng để chuyển đổi tín hiệu ADC dùng điện áp tham chiếu ngoài mà kh ng muốn sử dụng điện áp tham chiếu nội bộ 1.1V hoặc 5V
Trang 31 Các chân igita 54 : Chân số: Từ 0-53 (số mục đích th ng thường là sử dụng làm ngõ vào ra cho thiết bị
Các chân Analog (16): Từ chân số 0 -15 (tương tự) có thể được sử dụng làm ngõ vào tương tự cho bộ chuyển đổi ADC, nếu không nó hoạt động như chân
dữ liệu số th ng thường
Chân có chức năng thay thế
- Chân SPI: Chân 22-SS, 23-SCK, 24-MOSI, 25-MISO Các chân này sử
dụng cho chuẩn giao tiếp nối tiếp với giao thức SPI để kết nối giữa 2
- Chân ngắt ph n cứng: Chân 18 - 21,2,3 có chức năng ngắt phần cứng
được sử dụng cho các ứng dụng ngắt Ngắt phần cứng phải được bật với
tính năng ngắt toàn cục để ngắt quãng từ các thiết bị khác
2.3.2.3 Ph n mềm Arduino IDE lập trình cho Arduino
Arduino là một IDE tích hợp sẵn editor, compiler, programmer và đi kèm với nó
là
các firmware có bootloader, các bộ thư viện được xây dựng sẵn và dễ dàng tích hợp Ngôn ngữ sử dụng là C/C++ Tất cả đều opensource và được đóng góp, phát triển
Trang 32hàng ngày bởi cộng đồng Triết lý thiết kế và sử dụng của Arduino giúp cho người mới, không chuyên rất dễ tiếp cận, các công ty, hardware dễ dàng tích hợp Tuy nhiên, với trình biên dịch C/C++ và các thư viện chất lượng được xây dựng thì mức
độ phổ biến ngày càng tăng và hiệu năng thì kh ng hề thua kém các trình biên dịch chuyên nghiệp cho chip khác
2.4 CÔNG NGHỆ WIFI
2.4.1 Giới thiệu
WiFi viết tắt từ Wireless Fidelity hay mạng 802.11 là hệ thống mạng kh ng dây
sử dụng sóng v tuyến để truyền tín hiệu
Tên gọi 802.11 bắt nguồn từ viện IEEE, viện này tạo ra nhiều chuẩn cho nhiều giao thức kỹ thuật khác nhau, và sử dụng một hệ thống số nhằm phân loại chúng 6 chuẩn WiFi th ng dụng của hiện nay là 802.11a/b/g/n/ac/ad
Hình 2.12: Biểu tượng của sóng WiFi
2.4.2 Các chuẩn kết nối WiFi phổ biến
Trang 33- Tương thích với chuẩn 802.11b
2.4.3 Cách thức hoạt động của WiFi
Để có thể tạo ra sóng WiFi cần có một bộ phát tín hiệu – chính là các thiết bị như router hay modern WiFi Các thiết bị này nhận đầu vào nhận Internet từ nguồn (chính là các nhà cung cấp mạng như FPT, VNPT, Viettel, ) Các thiết bị router hay modern WiFi sẽ chuyển tín hiệu Internet từ hữu tuyến thành vô tuyến, sau đó truyền tín hiệu vô tuyến này tới các thiết bị cuối như điện thoại, máy tính, laptop,… Để nhận được tín hiệu WiFi các thiết bị cần có card WiFi để có thể nhận, giãi mã và gửi lại cho router hoặc modern
Trang 34Hình 2.13: Kết nối WiFi
2.4.4 Module Node MCU ESP8266
2.4.4.1 Giới thiệu chung
ESP8266 là một mạch vi điều khiển có thể giúp chúng ta điều khiển các thiết bị điện tử Thêm vào đó nó đƣợc tích hợp wi-fi 2.4GHz có thể dùng cho lập trình Tích hợp giao thức TCP/IP.Hỗ trợ lập trình trên nhiều các ngôn ngữ: C/C++,
Micropython,…
Hình 2.14: Module nodeMCU ESP8266
Trang 362.5 Cơ sở dữ liệu Google Firebase và các ứng dụng
2.5.1 Giới thiệu
Firebase là dịch vụ cơ sở dữ liệu của Google hoạt động trên nền tảng đám mây (Cloud) Kèm theo đó là hệ thống máy chủ cực kỳ mạnh mẽ của Google Chức năng chủ yếu là giúp người dùng lập trình ứng dụng đơn giản hóa các thao tác với cơ sở dữ liệu Về mặt lịch sử, Firebase (tiền thân là Evolve) trước đây là một dự án khởi nghiệp được thành lập vào năm 2011 bởi Andrew Lee và James Tamplin Vào tháng 4 năm
2012, sau nhiều lần gọi vốn và đạt được những thành c ng nổi bật, Firebase đã được Google chú ý tới Vào tháng 10 năm 2014, Firebase chính thức gia nhập vào Google Firebase phát triển theo hướng đi của Google đề ra, Fire hỗ trợ chính thức cho các nền tảng sử dụng Android, iOS và Web
Hình 2.16: Biểu tượng của Google Firebase
Firebase hỗ trợ chính thức các thư viện sau: GeoFire (Geo Location), GularFire (AngularJS), BerFire (Ember), ReactFire (ReactJS), Ionic (Ionic)
Google Firebase bao gồm các ứng dụng: Cloud Firestore (Đám mây lửa), ML Kit (Bộ máy học), Cloud Functions (Hàm đám mây), Authentication (Xác thực), Hosting (Lưu trữ), Cloud Storage (Lưu trữ đám mây), Realtime Database (Cơ sở
dữ liệu thời gian thực)
Trang 37sẽ chia sẻ một phiên bản Cơ sở dữ liệu thời gian thực và tự động nhận các bản cập nhật với dữ liệu mới nhất
Hỗ trợ: IOS, Android, Web, C++, Unity
2.5.2.2 Các khả năng chính
Thời gian thực: Thay thế cho các yêu cầu HTTP, cơ sở dữ liệu thời gian thực Firebase sử dụng đồng bộ hóa dữ liệu - mỗi khi dữ liệu thay đổi, mọi thiết bị được kết nối sẽ nhận được bản cập nhật đó trong mili giây
Đáp ứng ngoại tuyến: Ứng dụng Firebase vẫn đáp ứng ngay cả khi ngoại tuyến vì SDK cơ sở dữ liệu thời gian thực Firebase vẫn lưu dữ liệu vào bộ nhớ Sau khi kết nối được thiết lập lại, thiết bị khách sẽ nhận được bất kỳ thay đổi nào bị mất, đồng bộ hóa nó với trạng thái máy chủ hiện tại
Khả năng đa truy cập từ các thiết bị liên kết khác nhau: Cơ sở dữ liệu thời gian thực Firebase kh ng bắt buộc phải truy cập từ máy chủ ứng dụng mà có thể được truy cập trực tiếp từ thiết bị di động hoặc trình duyệt web khác
Trang 38nhau Bảo mật và xác thực dữ liệu có sẵn th ng qua “Quy tắc bảo mật cơ sở
dữ liệu thời gian thực Firebase”, quy tắc này dựa trên sự thực thi khi dữ liệu được đọc hoặc ghi
Quy m trên nhiều cơ sở dữ liệu: Các lập trình viên có thể hỗ trợ nhu cầu dữ liệu của ứng dụng theo quy m bằng cách chia nhỏ dữ liệu trên nhiều phiên bản cơ sở dữ liệu trong cùng một dự án Firebase Hợp thức hóa sự xác thực với trên dự án và người dùng trên các phiên bản cơ sở dữ liệu trên Kiểm soát quyền truy cập vào dữ liệu trong mỗi cơ sở dữ liệu với quy tắc cơ sở dữ liệu thời gian thực Firebase tùy chỉnh cho từng cá thể cơ sở dữ liệu
2.5.2.3 Cách ưu trữ với các loại dữ liệu khác nhau:
Cấu hình từ xa Firebase: lưu trữ các cặp key-value do nhà phát triển chỉ định để thay đổi hành vi và giao diện của ứng dụng mà không yêu cầu người dùng tải xuống bản cập nhật
Lưu trữ Firebase: lưu trữ HTML, CSS và JavaScript cho trang web của người dùng cũng như các nội dung do nhà phát triển cung cấp khác như đồ họa, phông chữ và biểu tượng
Lưu trữ đám mây: lưu trữ các tệp như hình ảnh, video và âm thanh cũng như nội dung do người dùng tạo
2.5.2.4 Cách đăng kí Realtime Database trên Firebase
Khi đăng ký một tài khoản trên Firebase để tạo ứng dụng, lập trình viên đã có một cơ sở dữ liệu thời gian thực Dữ liệu nhận được dưới dạng JSON Đồng thời nó cũng lu n được đồng bộ thời gian thực đến mọi kết nối client
Đối với các ứng dụng đa nền tảng, tất cả các client đều sử dụng cùng một cơ sở
dữ liệu Nó được tự động cập nhật dữ liệu mới nhất bất cứ khi nào các lập trình viên phát triển ứng dụng Cuối cùng, tất cả các dữ liệu này được truyền qua kết nối an toàn SSL có bảo mật với chứng nhận 2048 bit Trong trường hợp bị mất mạng, dữ liệu được lưu lại ở local, vì thế khi có mọi sự thay đổi nào đều được tự động cập nhật lên Server của Firebase Bên cạnh đó, đối với các dữ liệu ở local cũ hơn với Server thì cũng tự động cập nhật để được dữ liệu mới nhất
Trang 392.6 Hệ điều hành Android
2.6.1 Giới thiệu
Android là một hệ điều hành mã nguồn mở dựa trên nền tảng Linux được thiết kế dành cho các thiết bị di động có màn hình cảm ứng như điện thoại th ng minh và máy tính bảng Android được phát triển bởi c ng ty Android với sự hỗ trợ tài chính từ Google và sau này được chính Google mua lại vào năm 2005 Hệ điều hành Android được ra mắt vào năm 2007 và chiếc điện thoại chạy hệ điều hành này được cho ra mắt lần đầu tiên ở năm 2008
Hình 2.18: Biểu tượng Android
Android chiếm 87,7% thị phần điện thoại th ng minh trên toàn thế giới vào thời điểm quý 2 năm 2017
Dịch vụ (Services): Là hành động chạy song song các ứng dụng
Máy thu phát sóng (Broadcast Receivers): Bộ thu phát sóng có nhiệm vụ trả lời tin nhắn từ các ứng dụng khác hoặc từ hệ thống
Các nhà cung cấp nội dung (Content Providers): Cung cấp dữ liệu từ ứng dụng này sang ứng dụng khác theo yêu cầu, dữ liệu có thể được lưu trữ trong
hệ thống hoặc cơ sở dữ liệu hoặc ở một nơi khác
Trang 402.6.3 Các phiên bản của hệ điều hành Android
Từ khi phát hành cho đến nay, Android đã trải qua nhiều phiên bản khác nhau,
có nhiều sự thay đổi, cải tiến để đáp ứng nhu cầu của người sử dụng
Các phiên bản Android: Cupcake (1.5), Donut (1.6), Eclair (2.0), Froyo (2.2), Gingerbread (2.3), Honeycomb (3.0), Ice Cream Sandwich (4.0) Jelly Bean (4.1 – 4.3.1), KitKat (4.4 – 4.4.4), Lollipop (5.0 – 5.1.1), Marshmallow (6.0 – 6.0.1), Nougat (7.0 – 7.1), Oreo (8.0 – 8.1), Pie (9.0) và phiên bản mới nhất là Q (10.0)
Hình 2.19: Các phiên bản Android đã cho ra mắt
Nhóm chọn phiên bản Android 5.0 Lolipop để viết chương trình điều khiển cho ứng dụng vì đây là phiên bản đáp ứng và tương thích được với hầu hết các thiết bị chạy
hệ điều hành Android hiện nay (hỗ trợ lên tới 94.1%)
2.6.4 Ph n mềm Android Studio lập trình ứng dụng điều khiển
Android Studio là phần mềm gồm nhiều loại công cụ khác nhau dùng để phát triển ứng dụng hoạt động trên các thiết bị sử dụng hệ điều hành Android như các loại điện thoại smartphone, các tablet Android Studio được đóng gói với một bộ code editor, debugger, các công cụ performance tool và một hệ thống build/deploy (trong đó
có trình giả lập simulator để giả lập m i trường của thiết bị điện thoại hoặc tablet trên máy tính) cho phép các lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới phức tạp