Để đáp ứng linh hoạt việc điều khiển và giám sát các thiết bị mọi nơi,mọi lúc, không giới hạn về khoảng cách là một việc rất cần thiết và đáng quan tâm.Vì vậy việc thiết kế một ứng dụng
Trang 1KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN
CÁC THIẾT BỊ ĐIỆN DÂN DỤNG QUA MẠNG 3G
GVHD: Th.S NGUYỄN VĂN HIỆP SVTH: LÂM THẾ HIỂN
MSSV: 11141358
Tp Hồ Chí Minh, tháng 1/2016
S K L 0 0 4 1 8 3
Trang 2KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
-
ĐỒ ÁN TỐT NGHIỆP
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN CÁC
THIẾT BỊ ĐIỆN DÂN DỤNG QUA MẠNG 3G
GVHD: Th.S NGUYỄN VĂN HIỆP
SVTH: LÂM THẾ HIỂN- 11141358 Khóa : 2011
Ngành : Công nghệ kỹ thuật điện tử truyền thông
Trang 3i
-***
Tp.Hồ Chí Minh, ngày … tháng …năm 2016 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ và tên sinh viên: Lâm Thế Hiển MSSV: 11141358 Ngành: Công nghệ kỹ thuật điện tử truyền thông Lớp: 11141CLDT1 Giảng viên hướng dẫn: Th.S Nguyễn Văn Hiệp ĐT: 0909960000 Ngày nhận đề tài: 1/10/2015 Ngày nộp đề tài: 14/1/2016 1.Tên đề tài: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN DÂN DỤNG QUA MẠNG 3G 2 Các số liệu, tài liệu ban đầu:
3 Nội dung thực hiện đề tài:
4 Sản phẩm:
Trang 4
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc *******
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên Sinh viên: Lâm Thế Hiển MSSV: 11141358 Ngành: CNKT Điện Tử - Truyền Thông
Tên đề tài: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ
ĐIỆN DÂN DỤNG QUA MẠNG 3G
Họ và tên Giáo viên hướng dẫn: Th.S Nguyễn Văn Hiệp
Tp Hồ Chí Minh, ngày tháng năm 2016
Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)
Trang 5iii
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh Phúc *******
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên Sinh viên: Lâm Thế Hiển MSSV: 11141358 Ngành: CNKT Điện Tử - Truyền Thông
Tên đề tài: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ
ĐIỆN DÂN DỤNG QUA MẠNG 3G
Họ và tên Giáo viên Phản biện:
Tp Hồ Chí Minh, ngày tháng năm 2016
Giáo viên phản biện
(Ký & ghi rõ họ tên)
Trang 6PHẦN A
Trang 7iv
LỜI CẢM ƠN
Lời cảm ơn đầu tiên chúng tôi xin gửi tới thầy Nguyễn Văn Hiệp, mặc dù thầy rất bận trong công việc giảng dạy, nhưng thầy đã đồng ý hướng dẫn đồ án tốt nghiệp cho nhóm chúng tôi Trong quá trình làm đồ án, thầy luôn chỉ bảo, nhắc nhở
để chúng tôi vượt qua những khó khăn và hoàn thành đồ án đúng tiến độ Bên cạnh
đó, cùng với những lời nhận xét, góp ý của thầy cũng giúp chúng tôi có những định hướng đúng đắn hơn khi thực hiện đề tài
Chúng tôi cũng xin bày tỏ lòng biết ơn sâu sắc tới quý thầy cô trong khoa Điện Tử, khoa Đào tạo Chất lương cao Quý thầy cô là những người đã dạy dỗ, truyền đạt cho chúng tôi từ những kiến thức cơ bản nhất, đồng thời thường xuyên giúp đỡ rất nhiệt tình khi chúng tôi có khó khăn trong vấn đề nghiên cứu đề tài, không những thế còn tạo điều kiện hết sức thuận lợi để chúng tôi có được môi trường, những điều kiện nghiên cứu tốt nhất có thể
Điện-Cuối cùng, chúng tôi không quên gửi lời cảm ơn sâu sắc tới gia đình, người thân
và bạn bè là nguồn động viên to lớn hỗ trợ chúng tôi về mặt tinh thần cũng như vật chất để chúng tôi có thêm động lực và tự tin để hoàn thành đồ án này
Người thực hiện đề tài
Lâm Thế Hiển
Trang 8TÓM TẮT
Ngày nay với sự phát triển mạnh của khoa học kỹ thuật, chất lượng cuộc sống con người ngày càng nâng cao Khoa học kỹ thuật đem lại nhiều tiện ích thiết thực hơn cho cuộc sống con người Góp phần không thể thiếu để mang lại những thành tựu to lớn là sự phát triển không ngừng của kỹ thuật vi xử lý Kỹ thuật vi xử lý đã mang đến những thay đổi to lớn trong khoa học và công nghệ cũng như trong nhu cầu đời sống hàng ngày của con người
Trong cuộc sống hiện nay, đa số các thiết bị ở gia đình, văn phòng, nhà xưởng, được điều khiển và giám sát trực tiếp tại vị trí bố trí chúng Đôi khi,không phải bất
cứ lúc nào chúng ta cũng có mặt tại nơi đó do việc đi lại của con người là không giới hạn Để đáp ứng linh hoạt việc điều khiển và giám sát các thiết bị mọi nơi,mọi lúc, không giới hạn về khoảng cách là một việc rất cần thiết và đáng quan tâm.Vì vậy việc thiết kế một ứng dụng điều khiển thiết bị ở một vị trí xa là rất cần thiết.Chúng ta có thể tạo ra ứng dụng đó bằng cách dựa trên một hệ điều hành Có rất nhiều hệ điều hành như: Windows, Android, iOS, BlackBerry, Palm, Symbian…Trong đó hệ điều hành Android là một hệ điều hành rất phổ biến, hệ điều hành này của Google và được hầu hết người dùng trên thế giới sử dụng bởi vì các lợi ích của nó mang lại
Chính vì vậy, qua một thời gian tìm hiểu và nghiên cứu, nhóm thực hiện đề tài
sẽ dùng hệ điều hành Android để tạo một ứng dụng có thể điều khiển thiết bị từ xa
Tên đề tài : THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN DÂN DỤNG QUA MẠNG 3G
Mặc dù chúng tôi đã rất cố gắng hoàn thành đề tài nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, rất mong quý Thầy/Cô và các bạn sinh viên đóng góp ý kiến để chúng tôi có thể hoàn thiện đề tài và tạo ra những sản phẩm tốt hơn Mọi ý kiến đóng góp xin gửi về email: thehien_0302@yahoo.com
Trang 9vi
MỤC LỤC
PHẦN A: GIỚI THIỆU
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i
TRANG PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ii
TRANG PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN iii
LỜI CÁM ƠN iv
TÓM TẮT v
MỤC LỤC vi
DANH SÁCH TỪ VIẾT TẮT ix
DANH SÁCH BẢNG BIỂU x
DANH SÁCH HÌNH ẢNH xi
PHẦN B: NỘI DUNG
CHƯƠNG 1: TỔNG QUAN 1
1.1 Tình hình nghiên cứu hiện nay 2
1.2 Tính cấp thiết đề tài 3
1.3 Mục tiêu nghiên cứu 3
1.4 Nhiệm vụ nghiên cứu 3
1.5 Đối tượng và phạm vi nghiên cứu 4
1.6 Phương pháp nghiên cứu 5
1.7 Ý nghĩa thực tiễn 6
1.8 Bố cục đồ án 6
Trang 10CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 8
2.1 Hệ thống điều hành Android 9
2.1.1 Khái niệm 9
2.1.2 Lịch sử phát triển 9
2.1.3 Các phiên bản Android 11
2.1.4 Ưu và nhược của Android 16
2.1.5 Giới hạn về nền tảng Android 18
2.2 Ngôn ngữ lập trình Web PHP và MySQL 19
2.2.1 PHP là gì? 19
2.2.2 MySQL là gì? 20
2.3 Dịch vụ Web Hosting 22
2.3.1 Cách tạo host 22
2.3.2 Cách tạo CSDL 23
2.4 Kết nối GPRS, 3G 24
2.4.1 Kết nối GPRS 24
2.4.2 Kết nối 3G 25
2.5 Hệ thống phần cứng 27
2.5.1Module SIM900 27
2.5.2 Vi điều khiển Pic16f877A 32
2.5.3 Linh kiện công suất 33
2.6 Các phần mềm sử dụng 35
2.6.1 Phần mềm Android Studio 35
2.6.2 Phần mềm truyền lệnh 38
2.6.3 Phần mềm lập trình CCS 39
CHƯƠNG 3:TÍNH TOÁN THIẾT KẾ 42
3.1 Yêu cầu chung 43
Trang 11viii
3.1.1.Bài toán thiết kế 43
3.1.2.Yêu cầu đặt ra trong từng phần 43
3.2.Tính toán thiết kế Module điều khiển 44
3.2.1.Sơ đồ khối 44
3.2.2.Chức năng từng khối 45
3.2.3 Yêu cầu, giải pháp và tính toán thiết kế 46
3.2.4 Sơ đồ nguyên lý module điều khiển 50
3.3 Tính toán thiết kế cơ sở dữ liệu 56
3.4 Tính toán thiết kế ứng dụng Android 61
3.4.1 Yêu cầu chung của ứng dụng 61
3.4.2 Quá trình đăng nhập 63
3.4.3.Điều khiển 66
CHƯƠNG 4: KẾT QUẢ VÀ ĐÁNH GIÁ 68
4.1.Kết quả 69
4.1.1 Kết quả nghiên cứu lý thuyết 69
4.1.2 Kết quả thực tế 70
4.2 Đánh giá 73
CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 74
5.1.Kết luận… 75
5.2 Hướng phát triển 75
TÀI LIỆU THAM KHẢO 76
WEBSITE THAM KHẢO 77
PHỤ LỤC 78
Trang 12DANH SÁCH CÁC TỪ VIẾT TẮT
OS : Operating System – Hệ điều hành
PDA : Personal Digital Assistant – Thiết bị kỹ thuật số hỗ trợ cá nhân
PC : Personal Computer – Máy tính cá nhân
PHP : Personal Home Page – Trang chủ cá nhân
SQL :Structured Query Language – Ngôn ngữ truy vấn mang tính cấu trúc
HTTP : Hypertext Transfer Protocol – Giao thức truyền tải siêu văn bản
HD : High Definition – Chất lượng cao
TV : Television– Tivi
UART : Universal Asynchronous Receiver or Transmitter – Truyền nhận nối tiếp
không đồng bộ
SDA : Serial Data – Dữ liệu nối tiếp
SCL : Serial Clock – Xung Clock nối tiếp.
GPRS : General Packet Radio Service – Dịch vụ vô tuyến gói tổng hợp
GSM :Global System for Mobile Communications – Hệ thống thông tin di động
toàn cầu
2G,3G :2,3 Generation – Thế hệ thứ 2,3
HSDPA :High Speed Downlink Packet Access – Hệ thống mạng di động truyền tải
tốc độ cao
SDK : Software Development Kit – Công cụ phát triển ứng dụng
MT : Mobile Terminal – Thiết bị đầu cuối mạng
TE : Terminal Equipment – Thiết bị đầu cuối
TCP : Transmition Control Protocol – Giao thức điều khiển truyền vận
IP : Internet Protocol – Giao thức dùng cho mạng internet
LAN : Local Area Network – Mạng nội bộ
Trang 13x
DANH SÁCH BẢNG BIỂU
Bảng 2.1: Chức năng 1 số các chân cơ bản Sim900 28 Bảng 2.2: Tên các nhà mạng, APN, User, Password 31
Trang 14DANH SÁCH HÌNH ẢNH
Hình Trang CHƯƠNG 2
Hình 2.1:Biểu tượng các phiên bản Android 10
Hình 2.2: Các phiên bản Android 11
Hình 2.3: Giao diện android L 16
Hình 2.4: Quá trình hoạt động của PHP 20
Hình 2.5: Kết hợp Apache, PHP và MySQL 21
Hình 2.6:Đăng ký tài khoản để tạo host 22
Hình 2.7:Tạo host sau khi đăng nhập 23
Hình2.8:Giao diện Database trên host 24
Hình 2.9: GPRS kết nối Internet 25
Hình 2.10: Các dịch vụ từ 3G 26
Hình 2.11:Module SIM900A 27
Hình 2.12: Kết nối giao tiếp 29
Hình 2.13: Chip Pic16F877A 32
Hình 2.13: Triac BTA16 34
Hình 2.15: MOC 3020 34
Hình 2.16: Download Android Studio 36
Hình 2.17:Giao diện phần mềm Android Studio 36
Hình 2.18:Giao diện Terminal 38
Hình 2.19: Giao diện Help khi nhấn F1 40
Hình 2.20: Giao diện phần mềm lập trình CCS 40
Hình 2.21: Các công cụ hỗ trợ lập tình CCS 41
Hình 2.22: Nơi viết code chương trình 41
Hình 2.23: Thông báo sau khi nhấn biên dịch 41
Trang 15xii
CHƯƠNG 3
Hình 3.1: Yêu cầu chung của hệ thống 43
Hình 3.2: Sơ đồ khối mạch phần cứng 44
Hình 3.3: Module sim900 46
Hình 3.4: Sơ đồ nguyên lý khối ngõ ra công suất/đèn báo 47
Hình 3.5: Led báo nguồn 48
Hình 3.6: Kết nối nút nhấn với vi điều khiển dùng điện trở kéo lên 51
Hình 3.7: Sơ đồ kết nối nút nhấn 49
Hình 3.8: Sơ đồ nguyên lý khối xử lý trung tâm 51
Hình 3.9: Hình ảnh thực tế mạch nguồn xung 52
Hình 3.10: Sơ đồ nguyên lý phần cứng 53
Hình 3.11: Lưu đồ quá trình xử lý của PIC 16f877 54
Hình 3.12Lưu đồ giải thuật chương trình nút nhấn 55
Hình 3.13: Sơ đồ đường đi của dữ liệu 56
Hình 3.14: Quy trình xử lý dữ liệu từ CSDL 57
Hình 3.15: CSDL chứa trạng thái thiết bị trên MySQL 58
Hình 3.16: Giao diện đăng nhập dự kiến 62
Hình 3.17: Giao diện dự kiến sau khi đăng nhập 62
Hình 3.18: Giao diện dự kiến tab điều khiển 62
Hình 3.19: Lưu đồ giải thuật chính của ứng dụng 63
Hình 3.20: Lưu đồ giải thuật quá trình đăng nhập 64
Hình 3.21: Lưu đồ giám sát và điều khiển trên Android 66
CHƯƠNG 4 Hình 4.1: Đăng nhập 70
Hình 4.2: Điều khiển các thiết bị 71
Hình 4.3: Module điều khiển 72
Trang 16PHẦN B
Trang 17CHƯƠNG 1: TỔNG QUAN 1
CHƯƠNG 1
TỔNG QUAN
Trang 181.1 TÌNH HÌNH NGHIÊN CỨU HIỆN NAY
Ngày nay khoa học kỹ thuật càng ngày càng tiến bộ, đặc biệt là sự phát triển của các thiết bị di động thông minh như Smart Phone, PDA, Table PC…bên cạnh đó là những tiến bộ không ngừng của kỹ thuật giám sát và điều khiển Một trong những hình thức điều khiển phổ biến hiện nay là điều khiển từ xa do nó có khả năng giám
sát và điều khiển các thiết bị ở xa mà không cần tới tận nơi để điều khiển trực tiếp
Ngoài ra khoa học kỹ thuật ngày càng tiến bộ nên hệ điều hành cho các thiết bị
di động đó cũng liên tục phát triển và nâng cấp không ngừng Các hệ điều hành của nhiều hãng lần lượt ra đời và liên tục phát triển, cập nhật nhiều phiên bản mới, đem lại sự thuận tiện cho người sử dụng như: Windows Mobile, Android, iphone OS, Black Berry OS, Palm OS, Symbian
Đặc biệt trong đó là hệ điều hành Android của Google có những ưu điểm vượt trội sau:
Android được người dùng ưa chuộng vì chúng được tạo nên từ nền tảng nguồn
mở nên cho phép người dùng có thể tùy biến nhiều trên đó Mặt khác, với Android thiết bị người dùng không đòi hỏi phải có một cầu hình tối thiểu nào
cả, chúng có thể hoạt động trên mọi cấu hình
Hỗ trợ đa nhiệm cho phép bạn chạy nhiều ứng dụng một lúc
Giao diện Android của Google rất thân thiện với người dùng, vì thế chúng tương đối dễ dàng về mặt sử dụng
Kho ứng dụng Android phong phú Với Android, người dùng sẽ không bị giới hạn tải ứng dụng từ kho ứng dụng cũng như được sử dụng miễn phí
Do tương thích với rất nhiều phần cứng của các hãng sản xuất khác nhau trên thế giới như Samsung, LG, HTC, Sony, Oppo… nên người dùng sẽ có nhiều lựa chọn thiết bị phần cứng của nhiều hãng khác nhau với mức giá cũng phong phú
Tất cả những ưu điểm đó đang khiến cho Android trở thành hệ điều hành dành cho điện thoại di động phổ biến nhất hiện nay Vì vậy nhóm sinh viên sẽ thiết kế một ứng dụng trên Android để điều khiển thiết bị từ xa và nhóm đã quyết định chọn
đề tài tốt nghiệp : THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN DÂN DỤNG QUA MẠNG 3G
Trang 19CHƯƠNG 1 : TỔNG QUAN 3
1.2 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Việc thiết kế các hệ thống điều khiển thiết bị từ xa ở thời điểm hiện tại là rất cần thiết bởi vì một lý do nào đó đôi lúc chúng ta muốn tắt hay mở các thiết bị trong nhà
mà không có ở nhà hay ở nơi xa các thiết bị Nên nhóm sinh viên sẽ thiết kế một board mạch để điều khiển các thiết bị qua mạng 3g và điểm mới ở đây là dùng module SIM900 để truyền nhận dữ liệu giữa board mạch và host thông qua mạng GPRS/3G Ưu điểm của nó là :
Đơn giản và dễ dàng hơn việc dùng Internet để gửi dữ liệu lên từ máy tính
Tiết kiệm chi phí hơn rất nhiều so với việc gửi tin nhắn SMS
Ngoài ra, nhóm sinh viên cũng sẽ tạo một ứng dụng trên Android OS để giám sát và điều khiển thiết bị dùng điện thoại để thuận tiện cho việc theo dõi và điều khiển mọi lúc mọi nơi thay vì dùng PC
1.3 MỤC TIÊU NGHIÊN CỨU
Các mục tiêu cần nghiên cứu trong đề tài:
Bộ điều khiển thiết kế đơn giản, gọn nhẹ và thẩm mỹ Dễ dàng sửa chữa và thay thế linh kiện khi gặp sự cố trong quá trình sử dụng
Phầm mềm điều khiển trên hệ điều hành Android có giao diện đẹp, trực quan, thân thiện với người dùng Đồng thời hỗ trợ nhiều thiết bị sử dụng hệ điều hành Android
Chương trình có thể điều khiển bật tắt thiết bị từ xa bằng giao diện Android
Thiết kế và thi công mạch phần cứng điều khiển trực tiếp ngõ ra công suất thông qua nút nhấn khi module sim không kết nối được với vi điều khiển
Có khả năng hoạt động ổn định trong thực tế;
Tối ưu hóa các quy trình thiết kế thi công để giảm giá thành
1.4 NHIỆM VỤ NGHIÊN CỨU
Các đối tượng liên quan tới vi xử lý PIC
Các đối tượng liên quan tới SIM 900
Các đối tượng liên quan tới Web server
Các đối tượng liên quan tới lập trình Android
Trang 201.5 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
1.5.1 ĐỐI TƯỢNG NGHIÊN CỨU
Vì lý do giới hạn về thời gian nghiên cứu đề tài, cũng như có những giới hạn nhất định về kiến thức chuyên ngành, nhóm sinh viên thực hiện đề tài tốt nghiệp chỉ tập trung nghiên cứu một số vấn đề chính
Bộ điều khiển thiết bị công suất với 3 ngõ ra cố định, điện áp ngõ ra 220VAC
Cho phép thay đổi trạng thái các ngõ ra trực tiếp bằng nút nhấn có trên bộ điều khiển
Cho phép thay đổi trạng thái các ngõ từ phần mềm android
Có đèn báo trạng thái nguồn, trạng thái kết nối với module sim và trạng thái hoạt động của các thiết bị
Phần mềm điều khiển cập nhật trạng thái thiết bị liên tục
Chỉ hoạt động trên các thiết bị chạy hệ điều hành Android 4.1 trở lên, không
hỗ trợ các hệ điều hành khác như IOS, Blackbery OS, Window Phone, Symbian,…
Trang 21CHƯƠNG 1 : TỔNG QUAN 5
1.6 PHƯƠNG PHÁP NGHIÊN CỨU
Sau khi được sự chấp nhận đề tài nghiên cứu của thầy hướng dẫn, nhóm sinh viên
đã từng bước tiến hành đề tài như sau :
Tìm hiểu các tập lệnh AT Commands của Module SIM900
Tìm hiểu các thông tin cơ bản về hệ điều hành Android như : lịch sử hình thành và phát triển, các phiên bản hiện có, thị hiếu người dùng và khả năng phát triển của Android OS
Tìm, tải và tham khảo các tài liệu về hệ điều hành Android
Tải và cài đặt các phần mềm phục vụ cho việc lập trình phần mềm ứng dụng Android OS
Bằng những kiến thức cơ bản có được từ việc đọc sách tham khảo và các nguồn tài nguyên khác trên mạng Tiến hành viết và chạy thử nghiệm những ứng dụng đơn giản để hiểu rõ thêm về cách sử dụng các thành phần đối tượng
có trong bộ lập trình Android OS
Phát thảo về giao diện, tính năng, các đối tượng sẽ được sử dụng để lập trình cho phần ứng dụng
Tìm hiểu ngôn ngữ thiết kế Web PHP và thiết kế một Web server cho ứng dụng
Nghiên cứu phương thức giao tiếp giữa Android và Web server
Thiết kế và chỉnh sửa sao cho hoàn chỉnh ứng dụng
Tiến hành chạy thử nghiệm mô phỏng trên máy tính để phát hiện các lỗi cú pháp và lỗi logic của bộ chương trình
Thiết kế và Thi công mạch phần cứng
Sau khi đã chạy mô phỏng và thi công mạch phần cứng hoàn chỉnh, tiến hành cài đặt chương trình chạy thực tế trên các loại thiết bị di động cầm tay chạy hệ điều hành Android để phát hiện lỗi chạy thực tế, kiểm nghiệm tính tương thích của phần mềm
Tiến hành viết báo cáo
Trang 221.7 Ý NGHĨA THỰC TIỄN
Khi mà lĩnh vực điện tử đang có sự phát triển mạnh mẽ, đặc biệt là sự ra đời của SmartPhone sử dụng hệ điều hành Android với số lượng tăng theo cấp số nhân, việc nghiên cứu hệ điều hành Android và phương pháp lập trình di động có ý nghĩa rất lớn đặc biệt đối với sinh viên ngành Điện – Điện tử Từ đó có thể thiết kế ra sản phẩm là sự kết hợp giữa thiết bị sử dụng hệ điều hành Android mà điển hình là thiết
bị động như smartphone và các mạch điện tử cơ bản tạo thành một hệ thống thông minh Sản phẩm sau khi hoàn thành của đồ án này cũng chính là sự kết hợp giữa thiết bị chạy hệ điều hành Android và các mạch điện tử cơ bản có tính ứng dụng cao, đặc biệt trong việc phát triển các hệ thống điều khiển không dây, mở ra một hướng đi khác cho sự phát triển của các hệ thống điều khiển thông minh Một số ứng dụng trong thực tế của hệ thống:
Điều khiển các thiết bị điện gắn nhiều nơi trong nhà mà không cần di chuyển đến chỗ gắn công tắc
Tăng tính thẩm mỹ đối với các ngôi nhà thông minh, không cần đặt các công tắc điều khiển khắp nhà, gây nguy hiểm cho người già và trẻ em
Bảo vệ an toàn cho người sử dụng, có thể điều khiển các thiết bị điện công suất lớn từ xa
Hạn chế sử dụng các đường dây kết nối phức tạp để điều khiển các thiết bị công suất gia dụng
Các hệ thống trang trại chăn nuôi và các vườn ươm hoa, cây giống: giúp bật đèn từ xa cho những khu vực thiếu ánh sáng, bật quạt thông gió cho khu vực
có nhiệt độ cao hơn so với quy định giảm thiểu số công tắc điều khiển, điều khiển linh hoạt chỉ bật những thiết bị cần sử dụng
1.8 BỐ CỤC ĐỒ ÁN
Báo cáo đồ án sẽ gồm các chương:
Chương 1 – Tổng quan : Trình bày tổng quan về tình hình nghiên cứu hiện nay để nêu lý do tại sao chọn đề tài, tính cấp thiết của đề tài, mục tiêu nghiên cứu, nhiệm vụ nghiên cứu, các đối tượng, phạm vi nghiên cứu và phương pháp nghiên cứu ra sao
Chương 2 – Cơ sở lý thuyết: Trình bày các nội dung lý thuyết cơ sở cần nghiên cứu liên quan tới đề tài như : Ngôn ngữ lập trình web PHP, cơ sở dữ
Trang 23 Chương 4 – Kết quả, so sánh và nhận xét : Trình bày các kết quả đạt được về
lý thuyết và thực tế, so sánh kết quả đạt được với mục tiêu đề tài đặt ra bên cạnh đó là việc nhận xét kết quả
Chương 5 – Kết luận và hướng phát triển : Trình bày các ưu và khuyết điểm của đề tài từ đó đề ra biện pháp để khắc phục và hướng phát triển của đề tài
Trang 24CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
LIÊN QUAN
Trang 25CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 9
2.1 HỆ THỐNG ĐIỀU HÀNH ANDROID
2.1.1.KHÁI NIỆM
Android là hệ điều hành trên điện thoại di động máy tính bảng và notebooks (và hiện nay là cả trên một số đầu phát HD, HD Player, TV) phát triển bởi Google và dựa trên nền tảng Linux và các phần mềm nguồn mở Ban đầu nó được phát triển bởi Android Inc (sau đó được Google mua lại vào năm 2005) Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của liên minhthiết bị cầm taymã nguồn mở với tên gọi OHA (Open Handset Alliance) bao gồm 78 công
typhần cứng, phần mềm và viễn thông nhằm mục đính tạo nên một chuẩn mở cho điện thoại di động trong tương lai Andorid được phát triển nhằm cạnh tranh với các
hệ điều hành di động khác như iOS (Apple), BlackBerry OS, Windows Mobile (Microsoft), Symbian (Nokia trước đây), WebOS (Palm)
Android có một cộng đồng phát triển ứng dụng rất lớn, hiện có khoảng 800.000 ứng dụng có sẵn cho Android (6/2014) và đang liên tục được cập nhật Ứng dụng được phát triển bằng ngôn ngữ Java kết hợp với thư viện Java có sẵn của Google Các nhà phát triển ứng dụng có thể sử dụng máy tính chạy hệ điều hành Windows hoặc MacOS hoặc Linux kết hợp với Android SDK để phát triển ứng dụng cho Android
2.1.2 LỊCH SỬ PHÁT TRIỂN
Tổng công ty Android (Android, Inc.) được thành lập tại PaloAlto, California vào tháng 10 năm 2003 bởi Andy Rubin (đồng sáng lập công ty Danger) Dù những người thành lập và nhân viên đều là những người có tiếng tăm, nhưng tổng công ty Android hoạt động một cách âm thầm, chỉ tiết lộ rằng họ đang làm phần mềm dành cho điện thoại di động Google mua lại Tổng công ty Android vào ngày 17 tháng 8 năm 2005, biến nó thành một bộ phận trực thuộc Google Vào thời điểm đó không
có nhiều thông tin về Tổng công ty, nhưng nhiều người đồn đoán rằng Google dự tính tham gia thị trường điện thoại di động sau bước đi này Tại Google, nhóm do Rubin đứng đầu đã phát triển một nền tảng thiết bị di động phát triển trên nền nhân Linux Google quảng bá nền tảng này cho các nhà sản xuất điện thoại và các nhà mạng với lời hứa sẽ cung cấp một hệ thống uyển chuyển và có khả năng nâng cấp Google đã liên hệ với hàng loạt hãng phần cứng cũng như đối tác phần mềm, bắn tin cho các nhà mạng rằng họ sẵn sàng hợp tác với các cấp độ khác nhau
Ngày 5 tháng 11 năm 2007, Liên minh thiết bị cầm tay mở (Open Handset Alliance), một hiệp hội bao gồm nhiều công ty trong đó có Texas Instruments, Tập
Trang 26đoàn Broadcom, Google, HTC, Intel, LG, Tập đoàn Marvell Technology, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel và T-Mobile được thành lập với mục đích phát triển các tiêu chuẩn mở cho thiết bị di động Cùng ngày, Android cũng được ra mắt với vai trò là sản phẩm đầu tiên của Liên minh, một nền tảng thiết bị di động được xây dựng trên nhân Linux phiên bản 2.6 Chiếc điện thoại chạy Android đầu tiên được bán ra là HTC Dream, phát hành ngày 22 tháng 10 năm
2008 Biểu trưng của hệ điều hành Android mới là một con robot màu xanh lá cây
Từ năm 2008, Android đã trải qua nhiều lần cập nhật để dần dần cải tiến hệ điều hành, bổ sung các tính năng mới và sửa các lỗi trong những lần phát hành trước Mỗi bản nâng cấp được đặt tên lần lượt theo thứ tự bảng chữ cái, theo tên của một món ăn tráng miệng; ví dụ như phiên bản 1.5 Cupcake, sau đó tiếp nối bằng phiên bản 1.6 Donut (bánh vòng) Phiên bản mới nhất hiện nay là 5.0 Lollipop (kẹo que) Vào năm 2010, Google ra mắt loạt thiết bị Nexus - một dòng sản phẩm bao gồm điện thoại thông minh và máy tính bảng chạy hệ điều hành Android, do các đối tác phần cứng sản xuất HTC đã hợp tác với Google trong chiếc điện thoại thông minh Nexus đầu tiên, Nexus One Kể từ đó nhiều thiết bị mới hơn đã gia nhập vào dòng sản phẩm này, như điện thoại Nexus 4 và máy tính bảng Nexus 10, lần lượt do LG
và Samsung sản xuất Google xem điện thoại và máy tính bảng Nexus là những thiết bị Android chủ lực của mình, với những tính năng phần cứng và phần mềm mới nhất của Android
Hình 2.1: Biểu tượng các phiên bản của Android
Trang 27CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 11
2.1.3 CÁC PHIÊN BẢN ANDROID
Hệ điều hành Android đã trãi qua chặng đường 5 năm phát triển, hàng loạt phiên bản mang nhiều cải tiến ra mắt Sau đây là các tính năng chủ chốt trong các phiên bản Android từ khi ra mắt đến nay
Hình 2.2: Các phiên bản Android
Điểm khởi đầu của Android là Android 1.0
Kỷ nguyên Android chính thức khởi động vào ngày 22/10/2008, khi mà chiếc điện thoại HTC Dream G1 chính thức được bán ra ở Mỹ Ở giai đoạn này, rất nhiều những tính năng cơ bản cho một smartphone bị thiếu sót, chẳng hạn như bàn phím
ảo, cảm ứng đa điểm hay khả năng mua ứng dụng Tuy nhiên, vai trò của phiên bản đầu tiên này vô cùng quan trọng Nó đã đặt nền móng cho các tính năng có thể xem
là đặc điểm nhận dạng của Android ngày nay
Android 1.1 (dành riêng cho T_mobile G1), tháng 2/2009 bản nâng cấp đầu tiên của Android trình làng, khoảng 3 tháng sau khi G1 được bán ra Phiên bản 1.1 không phải là một cuộc cách mạng gì to lớn bởi tính năng chính của nó là sửa một danh sách lỗi khá dài Tuy nhiên, nó đã cho thấy khả năng nâng cấp thiết bị di động qua phương pháp Over-The-Air (tức tải về và cài đặt bản cập nhật ngay trên thiết bị, không cần kết nối với máy tính) Ở thời điểm đó, rất ít hệ điều hành di động có thể làm được việc này, hầu hết đều phải nhờ đến một phần mềm chuyên dùng nào đó trên PC Trước đó, ở Mỹ có dòng máy Danger Hiptop (được biết nhiều hơn với tên Sidekick) đã có cập nhật dạng gần giống over the air theo từng giai đoạn, và chính
Trang 28Andy Rubin, người sáng lập công ty Android Inc (sau đó Google mua lại) cũng chính là nhà đồng sáng lập hãng Danger
Android 1.5: Cupcake (bánh nướng) ra mắt ngày 30-4-2009 Android 1.5 có lẽ
có vai trò cực kỳ quan trọng trong quá trình trưởng thành của Android khi nó bổ sung cho hệ điều hành này những tính năng nổi bật giúp nó cạnh tranh với các nền tảng đối thủ khác Đây cũng là bản Android đầu tiên được Google gọi tên theo các món đồ ăn với chữ cái bắt đầu được xếp theo thứ tự alphabet Android 1.5 không có nhiều điểm thay đổi so với người tiền nhiệm của mình Google chỉ điểm thêm vài điểm để làm giao diện trông bóng bẩy, mượt mà hơn một tí, chẳng hạn như widget tìm kiếm có độ trong suốt nhẹ, biểu tượng app drawer có một số hoa văn nhỏ mới,… Nói chung, giao diện không phải là một điểm nhấn của Android 1.5 mà người ta quan tâm nhiều hơn đến các tính năng mới mà nó mang lại, chẳng hạn như: bàn phím ảo, cải tiến clipboard, khả năng quay phim, mở rộng khả năng cho widget,…
Android 1.6: Donut (bánh rán) ra mắt ngày 30-9-2009 Mặc dù chỉ thêm có 0.1 vào mã số của Android 1.5 nhưng nó cũng mang lại nhiều cải tiến đáng giá Một vài điểm trong giao diện được cải thiện, vài tính năng nhỏ được thêm vào, cuối cùng là
hỗ trợ cho mạng CDMA Động thái này cho phép nhiều nhà mạng hơn có thể sử dụng với Android, giúp cho Android có thêm một số lượng lớn người dùng ở Mỹ và
ở cả Châu Á nữa Nhưng có lẽ điểm thú vị nhất của Donut đó là hỗ trợ các thành phần đồ họa độc lập với độ phân giải Lần đầu tiên, Android có thể chạy trên nhiều
độ phân giải và tỉ lệ màn hình khá nhau, cho phép những thiết bị có nhiều độ phân giải hơn là 320 x 480
Android 2.0: Eclair ra mắt ngày 26-10-2009 Chỉ sau gần một tháng ra mắt Donut (Android 1.6), Google tung ra Eclair, phiên bản được nhận định là “bước đi lớn‘‘ của hệ điều hành này Eclair cải tiến rất nhiều, từ giao diện đến ứng dụng bên trong hệ thống Ứng dụng chụp ảnh tăng cường thêm chức năng zoom số (phóng to), cân bằng trắng, hỗ trợ đèn flash và các hiệu ứng màu sắc Hệ thống hoạt động
ổn định hơn, cải thiện khả năng xử lý, hỗ trợ kết nối Bluetooth tốt hơn, đặc biệt tùy chọn đồng bộ nhiều tài khoản Một điểm thuận tiện được đánh giá cao lúc bấy giờ là giao diện danh bạ cho phép nhấn chọn vào một ảnh danh bạ để gọi, nhắn tin hay email đến họ Giao diện ứng dụng lịch biểu (Calendar) cũng thay đổi Eclair là phiên bản Android đầu tiên hỗ trợ ảnh nền động (live wallpaper) dù tùy chọn này tiêu tốn khá nhiều pin
Trang 29CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 13
Android 2.2: Froyo ra mắt ngày 20-5-2010 Từ phiên bản 2.0 trở đi, Android dần hoàn thiện hơn Phiên bản 2.2 ( Froyo ) mang Adobe Flash đến Android, kéo theo hàng loạt ứng dụng và game trên nền Flash Người dùng cũng có thể xem video clip nền Flash như YouTube và ra lệnh thực hiện cuộc gọi qua Bluetooth Một chức năng mới trong Froyo được nhóm người dùng lưu động yêu thích là USB Tethering
và Wi-Fi Hotspot, biến chiếc smartphone Android thành thiết bị phát sóng Wi-Fi từ kết nối 3G Tính năng này được sử dụng rất phổ biến đến ngày nay Lần đầu tiên Android cho phép cài đặt ứng dụng (app) lên thẻ nhớ SD thay vì mặc định cài ngay vào bộ nhớ trong của thiết bị Điểm đầu tiên nữa trong Froyo bao gồm mật khẩu đã
hỗ trợ số và chữ số Thiết bị đầu tiên mang nhãn Froyo ra mắt thị trường là HTC Nexus One
Android 2.3: Gingerbread (bánh gừng) ra mắt ngày 6-12-2010 Đến cuối năm
2012, Gingerbread vẫn đang phủ sóng trên rất nhiều thiết bị dùng Android, chiếm đến hơn phân nửa (54%) Google hợp tác Samsung trình làng dòng smartphone đầu tiên sử dụng Gingerbread mang tên Nexus S, hỗ trợ công nghệ giao tiếp tầm gần NFC Gingerbread đưa vào hệ thống một công cụ quản lý tải tập tin, cho phép theo dõi và truy xuất đến các tập tin đã tải về máy Hệ thống này hỗ trợ nhiều camera cho các thiết bị có camera mặt sau và trước, quản lý nguồn pin hiệu quả hơn, tiết kiệm thời lượng pin Phiên bản này khắc phục khá nhiều lỗi từ Froyo, kèm theo một số điều chỉnh trong giao diện người dùng (UI)
Android 3.0: Honeycomb ra mắt ngày 22-2-2011 Đây không chỉ là một phiên bản, mà có thể xem là một thế hệ Android đầu tiên dành riêng cho máy tính bảng (tablet), ra mắt cùng tablet Motorola XOOM Mang những tính năng từ thế hệ Android 2.x, Android 3.0 cải tiến giao diện phù hợp với cách sử dụng máy tính bảng, bàn phím ảo thân thiện hơn, hỗ trợ xử lý đa tác vụ (multi-tasking), cho phép chuyển đổi qua lại các ứng dụng đang cùng chạy Không chỉ có bề mặt được trau chuốt, phần lõi hệ thống có các cải tiến tương thích với phần cứng như hỗ trợ chip
xử lý (CPU) đa lõi, tăng tốc phần cứng… Android 3.0 đặt nền móng quan trọng cho thế hệ Android 4.x hợp nhất, khắc phục sự phân mảng của Android (có các phiên bản riêng dành cho smartphone và tablet) Sau Android 3.0, Android 3.1 và 3.2 là hai bản nâng cấp nhỏ của Honeycomb và vẫn dùng lại cái tên này Mục đích chủ yếu của chúng là để sửa lỗi và thêm vài tính năng mới như resize widget ngay trên homescreen, hỗ trợ thẻ SD,…
Android 4.0: Ice Cream Sandwich (bánh kẹp kem) ra mắt ngày 19/10/2011 Ice Cream Sandwich (ICS) là thế hệ Android được mong đợi nhất đến thời điểm đó, ra
Trang 30đời cùng dòng smartphone bom tấn Samsung Galaxy Nexus thế hệ smartphone đầu tiên trang bị ICS Android 4.0 đưa chức năng truy xuất nhanh các ứng dụng thông thường vào phần bên dưới giao diện chủ, tùy biến widget, dễ sắp xếp và duyệt danh sách ứng dụng hơn Các ứng dụng đã có thể truy xuất nhanh từ màn hình khóa thiết
bị (Lock Sceen) Ice Cream Sandwich hoạt động mượt mà, nhanh và đẹp hơn
Android 4.1: Jelly Bean ra mắt ngày 9-7-2012 Máy tính bảng Nexus 7, sản phẩm hợp tác giữa Google và Asus, là thiết bị dùng Jelly Bean đầu tiên ra mắt Android 4.1 nâng tầm hoạt động cho hệ điều hành của Google, trở thành hệ điều hành cho thiết bị di động hàng đầu hiện nay, đe dọa cả-ông lớn Windows Khả năng sắp xếp giao diện chủ và widget trong Jelly Bean rất tùy biến và linh hoạt Jelly Bean giới thiệu Google Now, dịch vụ trực tuyến mới hiện chỉ dành cho Android, một phụ tá ảo đắc lực cho công việc sắp xếp lịch trình, tìm kiếm thông tin, xác định
vị trí… Rất đa năng và được xem như lời đáp trả của Google với phụ tá ảo Apple Siri trong iOS
Android 4.2: vẫn là Jelly Bean ra mắt tháng 11-2012 Chỉ sau gần năm tháng ra mắt Android 4.1, Google tiếp tục bồi thêm sức nặng cho Android với phiên bản 4.2
và vẫn mang tên mã Jelly Bean Android 4.2 tiếp tục mang đến những cải tiến hấp dẫn cho ứng dụng chụp ảnh (Camera) như HDR, Photo Sphere, hiệu ứng ảnh, Google Now, đưa tính năng lướt chọn từ rất hay trong bàn phím ảo Chức năng bom tấn hỗ trợ nhiều tài khoản người dùng (multi-userprofile) lần đầu tiên được áp dụng trong Android 4.2 nhưng chỉ có người dùng máy tính bảng thừa hưởng chức năng này
Android 4.3: vẫn là Jelly Bean công bố (24/7/2013), phiên bản hệ điều hành di động Android 4.3 chính thức được cung cấp đến các thiết bị Nexus 4, Nexus 7, Nexus 10 thông qua giao thức OTA Không có thay đổi lớn về cả giao diện lẫn cấu trúc so với Android 4.1 và 4.2 trước đó, phiên bản 4.3 có thể coi là một bản nâng cấp nhỏ mà Google dành cho hệ điều hành của hãng Một số nâng cấp ở phiên bản này là: tạo tài khoản giới hạn quyền sử dụng, nâng cấp trình chụp ảnh, bluetooth thông minh tiết kiệm năng lượng, cải tiến tính năng thông báo notifications, tích hợp Google Keep (Ghi chú đồng bộ đám mây) … Trong đó, tính năng Bluetooth thông minh như sau Phiên bản mới nhất của chuẩn kết nối Bluetooth là Bluetooth 4.0 Hiệp hội Bluetooth đã phân biệt có hai loại thiết bị sử dụng Bluetooth 4.0 là Bluetooth Smart Ready và Bluetooth Smart Bluetooth Smart là những thiết bị ngoại
vi như đồng hồ đo nhịp tim, máy chăm sóc sức khỏe … Bluetooth Smart Ready là những thiết bị có khả năng kết nối đến các thiết bị Bluetooth Smart, đồng thời vẫn
Trang 31CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 15
có các tính năng quen thuộc như truyền tập tin, kết nối tai nghe … iPhone, iPad, Samsung Galaxy SIII, Motorola Droid RAZR … là những thiết bị đã hỗ trợ Bluetooth Smart Ready Ở Android 4.3, hai dòng thiết bị Nexus 4 và Nexus 7 mới (phiên bản 2013) cũng có khả năng hỗ trợ công nghệ Bluetooth Smart Ready (còn gọi là Bluetooth Low-Energy) Nhờ vậy, hai thiết bị này có thể giao tiếp với các thiết bị ngoại vi sử dụng Bluetooth Smart như máy đo nhịp tim, hay đồng hộ đếm bước chạy bộ thông qua kết nối Bluetooth 4.0, với điểm mạnh là không gây hao tốn nhiều dung lượng pin khi sử dụng Thêm một cải tiến về kết nối Bluetooth, khi Android 4.3 hỗ trợ profile AVRCP 1.3, cho phép truyền thông tin về tên bài hát lên các thiết bị phát nhạc từ xa thông qua kết nối Bluetooth, như dàn âm thanh trong xe hơi, hay loa Bluetooth
Android 4.4: KitKat, trong sự kiện diễn ra vào sáng 1/11 (theo giờ VN), Google
đã công bố nền tảng di động mới nhất của mình, bản Android 4.4 với tên mã là KitKat Theo GSMArena, Android 4.4 đã được Google cải tiến giao diện làm việc với thanh trạng thái và thông báo ở cạnh trên màn hình sẽ hiển thị trong suốt, nhờ thế khi chạy một ứng dụng thông báo hiện ra sẽ "hòa màu" vào nền của ứng dụng chứ không còn là một màu đen nữa Ngoài ra, phiên bản mới còn cải thiện khả năng chạy đa nhiệm bằng cách nâng cấp việc quản lý bộ nhớ và tăng cường độ phản hồi của màn hình cảm ứng Android 4.4 còn bổ sung chế độ chụp ảnh HDR+ mới, cho phép người dùng chụp nhiều tấm ảnh với độ phơi sáng khác nhau rồi ghép lại thành ảnh duy nhất để hiển thị rõ chi tiết cả trong vùng sáng lẫn trong tối Nền tảng mới này của Google còn hỗ trợ khả năng in ảnh, tài liệu và trang web ngay từ điện thoại
và máy tính bảng một cách nhanh chóng và dễ dàng với giao diện trực quan hơn Đặc biệt, Android 4.4 có khả năng hỗ trợ các dòng máy Android cũ, chỉ cần yêu cầu cấu hình phần cứng RAM là 512 MB Ngoài ra, ứng dụng Hangouts cũng được tích hợp sâu vào Android 4.4 với việc cải tiến Hangouts và Messaging làm thành tính năng duy nhất trên máy Nhờ vậy người dùng chỉ cần sử dụng ứng dụng Hangouts
để nhắn tin với bạn bè theo giao thức SMS/MMS hoặc OTT và hỗ trợ khả năng trò chuyện bằng video Theo công bố của Google, Android 4.4 được cài sẵn trong máy Nexus 5 vừa được giới thiệu Sau đó, bản cập nhật Android 4.4 đầu tiên sẽ được trình làng trong vài tuần tới và các dòng máy smartphone đầu tiên có thể lên nền tảng mới nhất này là: Nexus 4, Nexus 7, Nexus 10, Galaxy S4 Google Edition và HTC One Google Edition
Android 5.0: Lollipop, ngày 25/06/2014, tại sự kiện Google I/O, Google công bố Material Design - phong cách thiết kế mới dành cho các phần mềm và dịch vụ của
Trang 32hãng như Android, Chrome, Gmail Trong đó, hệ điều hành Android L Preview (bản dành cho chuyên gia phát triển) có giao diện phẳng, nhất quán và đẹp hơn với nhiều màu sắc tươi sáng và phần nào gợi nhớ đến iOS và Windows Phone Các biểu tượng (icon) cũng được chuyển từ vuông sang tròn, trong khi hệ thống nhắc báo đã được cải tiến Giới phân tích đánh giá đây là bước tiến đángkhen ngợi của Google bởi thiết kế vốn không phải điểm mạnh của hãng này
Hình 2.3: Giao diện của Android L
2.1.4 ƢU VÀ NHƢỢC CỦA ANDROID
a) Ƣu điểm của Android
Tính linh hoạt: Android kế thừa tính mở từ Linux, hay nói cụ thể hơn là Google
và Android mang đến một thế giới hoàn toàn mở Với Apple, người dùng dường như bị cột chặt với những gì hãng này cho phép, từ tính năng chuẩn cho đến ứng dụng – chỉ những ứng dụng được Apple công nhận mới có thể hoạt động trên iPhone một cách hợp pháp Apple tin rằng đó là cách để họ kiểm soát cả guồng máy kinh doanh, từ thiết bị đầu cuối, dịch vụ cho đến ứng dụng bổ sung Trong khi đó, với thế giới Android, người dùng được tự do với những gì họ muốn, các nhà phát triển có được sự tự do hơn để tạo và thương mại các ứng dụng, và các nhà sản xuất
có thể tùy biến lại những trải nghiệm Android cho khách hàng của riêng mình Gia tăng về số lượng thiết bị: Một thực tế là, chỉ có iPhone và các sản phẩm mang nhãn Apple mới sử dụng iOS Đó có thể là sản phẩm tốt nhất thế giới, nhưng nếu chỉ có duy nhất một thiết bị như thế thì chắc chắn rằng khách hàng sẽ không
Trang 33CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 17
sớm thì muộn cảm thấy họ có quá ít lựa chọn Với Android, sự lựa chọn có phần thoải mái hơn
Nhiều công cụ dành cho người dùng hơn: Với App Inventor, Google đã thậm chí đặt vào tay người dùng nhiều sức mạnh hơn Với rất nhiều bộ công cụ phát triển dạng tự tay thực hiện (Do-It-Yourself) được Google và các đối tác cung cấp, chưa bao giờ việc tạo ứng dụng lại dễ dàng đến thế với người dùng và kể các lập trình viên Tuy nhiên, nhiều người lại cho rằng điều này sẽ khiến cho Android tràn ngập ứng dụng rác, nhưng chắc chắn một điều rằng, trong số đó sẽ có vài ứng dụng đáng đồng tiền bát gạo
Hiệu ứng từ thương hiệu Google: Rõ ràng là Android không hề đơn độc bởi hiện
có vài HĐH trên nền Linux khác cũng đang làm mưa làm gió trên vùng đất di động, điển hình là Bada của Samsung hay MeeGo của liên doanh Nokia – Intel Điểm khác biệt nằm ở chỗ Android được Google chống lưng và tiền tố Google đi cùng với Android là một thương hiệu đáng giá
b) Nhược điểm của Android
Thời lượng sử dụng pin thấp: Hầu hết các thiết bị Android đều có thời lượng pin thấp và đây là một trong những vấn đề quan trọng mà Google và các nhà sản xuất thiết bị Android đang chú trọng giải quyết
Android đa năng nhưng khó kích hoạt: Khi trải nghiệm Android lần đầu, bạn sẽ thấy nhiều thứ đang hoạt động Có hàng loạt widget, ứng dụng và lựa chọn mà bạn chưa hề biết đến Chẳng hạn như Galaxy S III sở hữu những tính năng độc đáo mà iPhone không thể làm được Đáng tiếc, bạn cũng phải tùy chỉnh không ít cài đặt nếu muốn kích hoạt tính năng Chúng là điều khó khăn đối với người mới dùng Android
Nội dung giải trí: Google đang không ngừng cải tiến nội dung của Play Store, cung cấp chương trình giải trí truyền hình và thêm nhiều phim cho thuê trên thiết bị Android… Nhưng so sánh với iTunes, sự lựa chọn vẫn còn thua xa những gì bạn nhận được trên iOS Khi nhắc đến lĩnh vực âm nhạc, Google Play còn thiếu vắng nội dung của Warner, một trong bốn hãng ghi âm lớn nhất hành tinh
Phụ kiện cho thiết bị Android chưa thực sự tốt: Dễ nhận thấy, giới sản xuất phụ kiện dường như kém quan tâm đến Android Trên thị trường có rất nhiều phụ kiện độc dành cho iPhone, không những hỗ trợ chụp ảnh tốt mà còn tăng cường dung lượng pin Nghĩ một cách đơn giản, dòng điện thoại Android không có được sự nhiệt tình tương tự từ đối tác làm phụ kiện
Trang 34Dễ nhiễm phần mềm độc hại và virus: Android hoạt động như hệ điều hành mở
và xuất hiện những kho ứng dụng không chính thức Bởi vậy, thiết bị Android dễ nhiễm malware hoặc ứng dụng giả mạo Gần đây nhất, một virus đánh cắp thông tin qua SMS đã xuất hiện trên kho ứng dụng Android tại Trung Quốc Ước tính có hơn 500.000 người bị lây nhiễm loại virus này
2.1.5 GIỚI HẠN VỀ NỀN TẢNG ANDROID
2.1.5.1 Giới hạn của thiết bị cầm tay
Trong khi các thiết bị cầm tay như điện thoại di động, máy tính bảng đem lại nhiều tiện lợi cho người sử dụng, thì nó vẫn còn tồn tại nhiều mặt hạn chế Những giới hạn cơ bản là:
Bộ nhớ giới hạn: Hầu hết các thiết bị cầm tay đều có bộ nhớ lưu trữ giới hạn.Tuy nhiên, với nhiều nỗ lực của các tập đoàn sản xuất công nghệ bán dẫn, giới hạn này sẽ đươc giải quyết trong tương lai không xa;
Năng lượng xử lý giới hạn: rất nhiều dịch vụ trên internet như game, nhạc, video đòi hỏi phải có bộ xử lý nhanh Nhưng khả năng xử lý của các thiết bị cầm tay vẫn còn rất hạn chế;
Nguồn năng lượng: Việc thường xuyên thay đổi vị trí của các thiết bị làm tiêu hao năng lượng nhanh chóng Rất nhiều nghiên cứu phát minh ra những nguồn năng lượng mới có chu kỳ sống lâu hơn chẳng hạn như fuel cell;
Công nghệ và nền tảng khác nhau: Mỗi thiết bị được xây dựng trên những nền tảng và tiêu chuẩn riêng mà nhà sản xuất quy định Đó là hạn chế bởi nó giới hạn khả năng tương thích và giao tiếp giữa các thiết bị;
Bàn phím nhỏ, cách nhập dữ liệu khác biệt: Bàn phím của các thiết bị cầm tay thường nhỏ hoặc ít phím Điều này làm cho viêc sử dụng các dịch vụ chậm chạp
2.1.5.2 Chu kỳ ứng dụng trên android
Một tiến trình Linux gói gọn một ứng dụng Android đã được tạo ra cho ứng dụng
Trang 35CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 19
Nó không phụ thuộc
Hệ thống cần lấy lại bộ nhớ mà nó chiếm giữ cho các ứng dụng khác Một
sự khác thường và đặc tính cơ bản của Android là thời gian sống của tiến trình ứng dụng không được điều khiển trực tiếp bới chính nó Thay vào đó, nó được xác định bởi hệ thống qua một kết hợp của:
Những phần của ứng dụng mà hệ thống biết đang chạy
Những phần quan trọng như thế nào đối với người dùng
a Chu kỳ sống thành phần
Các thành phần ứng dụng có một chu kỳ sống, tức là mỗi thành phần từ lúc bắt đầu khởi tạo và đến thời điểm kết thúc Giữa đó, đôi lúc chúng có thể là active hoặc inactive, hoặc là trong trường hợp activies nó có thể visible hoặc invisible
b.Chu kỳ sống của ứng dụng
Trong một ứng dụng Android có chứa nhiều thành phần và mỗi thành phần đều
có một chu trình sống riêng Và ứng dụng chỉ được gọi là kết thúc khi tất cả các thành phần trong ứng dụng kết thúc Activity là một thành phần cho phép người dùng giao tiếp với ứng dụng Tuy nhiên, khi tất cả các Activity kết thúc và người dùng không còn giao tiếp được với ứng dụng nữa nhưng không có nghĩa là ứng dụng đã kết thúc Bởi vì ngoài Activity là thành phần có khả năng tương tác người dùng thì còn có các thành phần không có khả năng tương tác với người dùng như là Service, Broadcast receiver Có nghĩa là những thành phần không tương tác người dùng có thể chạy background dưới sự giám sát của hệ điều hành cho đến khi người dùng tự tắt chúng
2.2 NGÔN NGỮ LẬP TRÌNH WEB PHP VÀ MYSQL
2.2.1 PHP LÀ GÌ?
PHP là một ngôn ngữ lập trình kịch bản được chạy ở phía server, chạy trên 75% của tất cả các máy chủ Web và là sức mạnh phía sau của các nền tảng như WordPress, Wikipedia, và thậm chí là một phần của Facebook PHP đã trải qua rất nhiều phiên bản và được tối ưu hóa cho các ứng dụng web, với cách viết mã rõ rãng, tốc độ nhanh, dễ học nên PHP đã trở thành một ngôn ngữ lập trình web rất phổ biến và được ưa chuộng
PHP chạy trên môi trường Webserver và lưu trữ dữ liệu thông qua hệ quản trị cơ
sở dữ liệu nên PHP thường đi kèm với Apache, MySQL và hệ điều hành Linux
Trang 36 Apache :là một phần mềm web server có nhiệm vụ tiếp nhận request từ trình
duyệt người dùng sau đó chuyển giao cho PHP xử lý và gửi trả lại cho trình duyệt
MySQL : cũng tương tự như các hệ quản trị cơ sở dữ liệu khác (Postgress,
Oracle, SQL server ) đóng vai trò là nơi lưu trữ và truy vấn dữ liệu
Linux: Hệ điều hành mã nguồn mở được sử dụng rất rộng rãi cho các
Nếu PHP mà không có MySQL thì website của chúng ta chỉ là một web tĩnh, không có tương tác giữa người dùng và website, MySQL giúp lưu trữ dữ liệu của website, các thao tác của người dùng với website
Trang 37CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 21
Sự kết hợp giữa PHP và MySQL giúp chúng ta có được một ứng dụng web hoàn hảo, đáp ứng được các nhu cầu của người dùng như mua hàng, đọc báo, xem tin tức, xem phim, nghe nhạc Ở đề tài này, chúng ta kết nối từ PHP đến MYSQL
cho công việc lưu trữ và truyền dẫn dữ liệu đến các thiết bị ngoại vi
Hình 2.5:Kết hợp Apache, PHP và MySQL
Kiến trúc căn bản nhất để trang Dynamic Web (Web động) hoạt động được là nó phải làm việc trên mô hình client/server Nôm na là mỗi thứ client hay server đều đảm đương một chức năng riêng để hoàn thành công việc chung đó là cho ra một trang Web động Ứng dụng Web phải có một mô hình server có thể là một máy tính làm server thôi, nhằm tập trung hoá việc xử lý dữ liệu Còn các client, còn được hiểu nôm na là máy tính của người sử dụng phải được nối mạng với server, giả sử các máy này truy cập vào một Website chẳng hạn, thì có nghĩa họ đã truy cập vào server, sau đó lấy dữ liệu từ server về thể hiện lên máy mình Cùng một lúc có thể
có hàng trăm người (client) truy cập vào cùng một Website được xử lý tập trung trên server
Hầu hết các ứng dựng Web đều hoạt động tập trung trên Server Một ứng dụng đặc trưng gọi là Web Server sẽ đảm trách việc giao tiếp với các trình duyệt Một Cơ
sở dữ liệu (CSDL) trên Server sẽ lưu trữ tất cả những thông tin đáp ứng yêu cầu cho công việc của ứng dụng Web Kế tiếp, cần phải có một ngôn ngữ làm vai trò "liên lạc" giữa Web Server và CSDL trên server Ngôn ngữ này cũng thực hiện các công việc xử lý thông tin đến và đi từ Web Server, và ở đề tài này là PHP
Trang 382.3 DỊCH VỤ WEB HOSTING
Hosting cũng giống như đất để xây cửa hàng vậy Nếu không thuê đất, bạn sẽ không thể xây được cửa hàng Không có dịch vụ web hosting thì bạn không thể có một trang web do chính mình quản lý 100% được.Để website có thể hoạt động, nó cần được lưu trữ trên một máy chủ (host)
Host là nơi chứa file PHP và có thể tạo các MySQL databases tức là các CSDL Cách tạo host mà nhóm đã sử dụng là đăng ký trên trang http://www.hostinger.vn
với việc đăng ký đơn giản, nhanh chóng và hoàn toàn miễn phí
2.3.1 CÁCH TẠO HOST
Các bước để đăng ký host :
Vào http://www.hostinger.vn sau đó click vào tạo tài khoản mới ở góc trên bên
phải
Sẽ xuất hiện màn hình sau, điền đầy đủ thông tin và click tạo tài khoản
Hình 2.6: Đăng ký tài khoản để tạo host
Sau khi đăng ký xong, vào mục hosting → thêm account điền đầy đủ thông tin
vào phiếu đăng ký, chọn tên miền…
Trang 39CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 23
Hình 2.7: Tạo host sau khi đăng nhập
Sau khi tạo xong host sẽ gồm đầy đủ các thông tin như : địa chỉ IP, tên đăng nhập, password, dung lượng, băng thông…Và các file PHP của chúng ta sẽ được lưu ở mục quản lý file của host
2.3.2 CÁCH TẠO CSDL
Mục đích của cơ sở dữ liệu:
Tạo liên kết giữa thiết bị Android và mạch điều khiển cụ thể là khi thiết bị Android có sự thay đổi trạng thái (khi điều khiển) thì sẽ làm thay đổi giá trị trong CSDL của MySQL và mạch điều khiển (cụ thể ở đây là Module SIM900) sẽ nhận các giá trị thay đổi đó bằng cách kết nối vào địa chỉ của MySQL và tiến hành điều khiển Muốn làm được điều đó ta phải lập trình bên MySQL sao cho các trạng thái hay các biến, các biến này có thể thay đổi mức 0 và 1 tùy vào trạng thái bên Android
Cách tạo cơ sở dữ liệu(CSDL) trên My SQL :
Host sau khi được tạo thành công sẽ gồm nhiều mục như : tài khoản, emails,
website, tên miền, files, databases…Để tạo CSDL ta sẽ vào phần Databases cụ thể
là MySQL Databases , ở đây sẽ gồm các CSDL đã có sẵn và có thể cho phép tạo
CSDL mới
Trang 40Hình 2.8: Giao diện Database trong host
GPRS có thể được dùng cho những dịch vụ như truy cập Giao thức ứng dụng không dây (WAP), các dịch vụ Internet Dữ liệu được truyền trên GPRS thường được tính theo từng megabyte đi qua, trong khi dữ liệu liên lạc thông qua chuyển mạch truyền thống được tính theo từng phút kết nối, bất kể người dùng có thực sự đang sử dụng dung lượng hay đang trong tình trạng chờ GPRS là một dịch vụ chuyển mạch gói nỗ lực tối đa, trái với chuyển mạch, trong đó một mức Chất lượng dịch vụ được bảo đảm trong suốt quá trình kết nối đối với người dùng cố định