Ngày nay thời đại công nghệ bùng nổ, cùng với sự phát triển của Internet các thiết bị thông minh được tạo ra để đáp ứng nhu cầu của con người, trong đó nhu cầu kết nối các thiết bị giao
Trang 1THÀNH PHỐ HỒ CHÍ MINH
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THIẾT KẾ NGÔI NHÀ THÔNG MINH
SVTH: PHẠM NGỌC THÁI GVHD: TS PHAN VĂN CA
SKL 0 0 8 3 6 6
ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO NGÀNH KỸ THUẬT MÁY TÍNH
-o0o -
ĐỒ ÁN TỐT NGHIỆP
Tp Hồ Chí Minh, ngày 29 tháng 1 năm 2018
THIẾT KẾ NGÔI NHÀ THÔNG MINH
Trang 3Mục lục
Trang phụ.……… i
Nhiệm vụ đồ án tốt nghiệp.……….ii
Trang phiếu nhận xét của giáo viên hướng dẫn: ……… iii
Trang phiếu nhận xét của giáo viên phản biện:……….iv
Mục lục.……….v
Danh mục hình và bảng biểu: ………vi
Lời cảm ơn:……… vii
CHƯƠNG 1: TỔNG QUAN 1
1.1 GIỚI THIỆU TÌNH HÌNH NGHIÊN CỨU HIỆN NAY 1
1.2 MỤC TIÊU ĐỀ TÀI 1
1.3 GIỚI HẠN ĐỀ TÀI 2
1.4 PHƯƠNG PHÁP NGHIÊN CỨU 2
1.5 ĐỐI TƯỢNG, PHẠM VI NGHIÊN CỨU 2
1.6 BỐ CỤC QUYỂN BÁO CÁO 2
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 4
2.1 ARDUINO UNO 4
2.1.1 GIỚI THIỆU 4
2.1.2.THÔNG SỐ KỸ THUẬT 5
2.2 HC-05 5
2.2.1 GIỚI THIỆU 5
2.2.2 CÁC CHẾ ĐỘ HOẠT ĐỘNG 6
2.2.3 TẬP LỆNH AT 7
2.3 RC-522 RFID 9
Trang 42.4 MODUN I2C 10
2.4.1 GIỚI THIỆU 10
2.4.2 THÔNG SỐ KỸ THUẬT 11
2.5 L298 13
2.5.1 GIỚI THIỆU 13
2.5.2 THÔNG SỐ KỸ THUẬT 13
2.5.3 SƠ ĐỒ CHÂN 13
2.6 LED 14
2.6.1 GIỚI THIỆU: 14
2.6.2 TÍNH NĂNG 14
2.7 LCD : 15
2.7.1 GIỚI THIỆU: 15
2.7.2 TÍNH NĂNG 16
2.8 CẢM BIẾN MƯA 16
2.8.1 GIỚI THIỆU 16
2.8.2 THÔNG SỐ KỸ THUẬT 16
2.9 CẢM BIẾN HALL 17
2.9.1 GIỚI THIỆU 17
2.9.2 THÔNG SỐ KỸ THUẬT 17
2.10 ARDUINO IDE 18
2.10.1 GIỚI THIỆU 18
2.10.2 LẬP TRÌNH ARDRUINO 19
2.11 TẬP LỆNH AT 19
2.11.1 GIỚI THIỆU 19
2.11.2 CÁC LỆNH AT THÔNG DỤNG 20
Trang 52.12 NGÔN NGỮ JAVA : 21
2.12.1 GIỚI THIỆU 22
2.13 PHẦN MỀM ANDROID STUDIO 22
2.13.1 GIỚI THIỆU 22
CHƯƠNG 3:THIẾT KẾ HỆ THỐNG 24
3.1 MÔ HÌNH HỆ THỐNG 24
3.1.1 SƠ ĐỒ KHỐI CỦA SẢN PHẨM: 25
3.1.2 CHỨC NĂNG TỪNG KHỐI: 26
3.1.3 SƠ ĐỒ NGUYÊN LÝ: 27
3.2 THIẾT KẾ PHẦN CỨNG 30
3.2.1 HỆ THỐNG ĐIỀU KHIỂN ĐÈN 32
3.2.2 KHỐI ĐIỀU KHIỂN CẢM BIẾN 33
3.3 THIẾT KẾ PHẦN MỀM 34
3.3.1 THIẾT KẾ ỨNG DỤNG ĐIỆN THOẠI 34
3.3.2 GIỚI THIỆU VỀ CÁC THÀNH PHẦN CŨNG NHƯ GIAO DIỆN CỦA APP INVENTOR 39
CHƯƠNG 4: KẾT QUẢ ĐẠT ĐƯỢC 44
4.1 KẾT QUẢ THI CÔNG MÔ HÌNH 44
4.2 CÁCH SỬ DỤNG MÔ HÌNH 45
CHƯƠNG 5: KẾT LUẬN 54
5.1 KẾT LUẬN 54
5.2 HƯỚNG PHÁT TRIỂN 55
TÀI LIỆU THAM KHẢO 55
Trang 6Danh mục hình ảnh và bảng biểu
Hình2.1: Arduino UNO 4
Bảng 2.1: Thông số kỹ thuật của Arduino UNO 5
Hình 2.2: Sơ đồ chân HC – 05 6
Hình 2.3: Hình ảnh hc_05 8
Hình 2.4: Modun rc-522 9
Hình 2.5: Biểu đồ hoạt động của RC-522 10
Hình2.6 : Hình ảnh modun I2C 11
Hình 2.7: Sơ đồ quan hệ chủ tớ giữa modun I2C 12
Hình2.8: Sơ đồ L298 14
Hình 2.9: Cấu tạo led 14
Hình2.10: Bảng sơ đồ chân của LCD 15
Hình2.11: LCD 16
Hình 2.12: Cảm biến mưa 17
Hình2.13: Cảm biến Hall 18
Hình2.14: Arduino IDE 19
Hình 2.15: Giao Diện Anddroid studio 22
Hính 2.16: Giao diện chọn thiết kế 23
Hình 3.1: Sơ đồ tổng quát giao tiếp giữa điện thoại và vi điêu khiển 24
Hình 3.2: Sơ đồ khối bộ điều khiển 25
Hình 3.3: Sơ đồ nguyên lý 27
Hình 3.4: Mô hình socket 28
Hình 3.5: Quy trình vận chuyển dữ liệu giữa adruno và hc-05 29
Hình 3.6: Sơ đồ nối chân giữa module HC-05 với Arduino 30
Hình 3.7: Lưu đồ giải thuật của toàn phần cứng 31
Hình 3.8: Lưu đồ hệ thống diều khiển đèn 32
Hình 3.9: Lưu đồ điều khiển động cơ 33
Hình 3.10: Lưu đồ ứng dụng android điều khiển mạch 35
Hình 3.11: giao diện nhìn trên điện thoại 35
Hình 3.12: MainActivity 36
Hình 3.13: Giao diện chính 37
Hinh 3.14: Thêm lệnh cho phép Bluetooth 37
Hình 3.15: Tạo project mới 38
Hình 3.16: Project của tôi ledcontrol 38
Hình 3.17: Thư viện Device_list 39
Hình 3.18: Giới thiệu appinventor 40
Hình 3.19: Giao diện app inventor 41
Hình 3.20: Khối Blutooth 41
Hình 3.21: Khối điều khiển nút nhấn 42
Hình 3.22: Khối điều khiển truyền dữ liệu 42
HÌNH 4.1: Mạch in phần cứng 44
Trang 7Hình 4.2: kiểm tra hoạt động của mạch 45
Hình 4.3: Hình ảnh khi đã kết nối Bluetooth 46
Hình 4.4: Nút mode chọn mô đun 47
Hình 4.5: Mô đun L298 48
Hình 4.6: Quẹt thẻ RFID 48
Hình 4.7: Đèn sang sau khi quẹt thẻ 49
Hình 4.8: Mạch điện khi chạy hết các mô đun 49
Hình 4.9: Hình ảnh app android khi đã kết nối và bật tắt các mô đun 50
Hình 4.10: vị trí các cảm biến mưa, Hall 51
Hình 4.11: vị trí hiển thị các mô đun trên lcd 51
Hình 4.12 : Các thành phần hiển thị trên ứng dụng android 52
Hình 4.13: bảng paired device 53
Trang 8LỜI CẢM ƠN Đầu tiên, tôi xin chân thành gửi lời cám ơn đến các thầy cô, giảng viên trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh nói chung, và khoa Điện-điện
tử, chuyên ngành kỹ thuật máy tính nói riêng vì đã dạy dỗ, cung cấp những kiến
thức quan trọng về cả khía cạnh chuyên ngành và xã hội, giúp tôi có được kinh nghiệm, kỹ năng trong công việc, học tập, cách sống thật đúng đắn
Đặc biệt, tôi cũng xin cảm ơn một cách chân thành nhất đối với thầy, giảng viên T.S PHAN VĂN CA, người đã trực tiếp hướng dẫn tôi hoàn thành đồ án khóa luận tốt
nghiệp này Trong quá trình thực hiện, thầy đã hỗ trợ, cung cấp những kiến thức hữu ích, tạo động lực để nghiên cứu những kiến thức mới, nhiệt tình giúp đỡ và hướng dẫn tôi những lúc gặp khó khăn, định hướng đi đúng đắn nhất
Bài báo cáo luận văn tốt nghiệp, cũng như ứng dụng hoàn thành có thể còn nhiều khuyết điểm và hạn chế Kính mong các thầy cô góp ý chân thành để đề tài của tôi hoàn thiện hơn Cho tôi những định hướng trong tương lai, có thêm kinh nghiệm cho những đề tài, cũng như cách thức làm việc chuyên nghiệp hơn, hỗ trợ cho công việc của tôi sau này Cuối cùng tôi chúc các thầy, cô sức khỏe thật dồi dào, nhiệt huyết trong giảng dạy để góp phần đào tạo cho những lớp sinh viên đi sau, những bậc nhân tài, tương lai của đất nước sau này
Tôi xin chân thành cảm ơn!
Thành phố Hồ Chí Minh, ngày 29 tháng 1 năm 2018
Sinh viên thực hiện Phạm Ngọc Thái
Trang 10Chương 1: TỔNG QUAN
1.1 GIỚI THIỆU TÌNH HÌNH NGHIÊN CỨU HIỆN NAY
Ngày nay thời đại công nghệ bùng nổ, cùng với sự phát triển của Internet các thiết bị thông minh được tạo ra để đáp ứng nhu cầu của con người, trong đó nhu cầu kết nối các thiết bị giao tiếp với nhau thông qua mạng internet, blutooth là một nhu cầu cấp thiết hiện nay Vì vậy, công nghệ IoT (Internet of Things) được tạo ra để đáp ứng nhu cầu này IoT giúp các thiết
bị kết nối với nhau thông qua mạng Internet hoặc các môi trường sóng không dây, giúp con người kiểm soát được hệ thống của mình từ xa, các thiết bị trở nên thông minh hơn khi chúng được kết nối để giao tiếp, đồng
bộ với nhau
Cùng với sự phát triển của IoT, các hệ thống thông minh được hình thành như smart city, smart farm, smart lap Để tiếp cận và nắm bắt được công nghệ này tôi đã quyết định sử dụng công nghệ IoT để làm nền tảng cho hệ thống Với ý tưởng xây dựng nên một hệ thống giúp con người kiểm soát được các thiết bị trong chính tổ ấm của mình, điều khiển cũng như cập nhật được trạng thái của ngôi nhà từ xa, giúp cho quá trình tương tác với các thiết bị phần cứng các ngoại vi trong nhà trở nên dễ dàng, trực quan hơn Nên tôi đã lựa chọn thực hiện đề tài “Điều khiển thiết bị điện và quản lý ngoại cảnh trong nhà” hay nói cách khác là ngôi nhà thông minh
Trang 111.3 GIỚI HẠN ĐỀ TÀI
Với ý tưởng trên thì đề tài sẽ có một số giới hạn sau:
- Số lượng thiết bị trên mô hình hệ thống là mười
- Vì hệ thống sử dụng đại trà nên giao diện phần mềm không được trau chuốt lắm
1.4 PHƯƠNG PHÁP NGHIÊN CỨU
- Để thực hiện ý tưởng đề tài ra ban đầu tôi đã sử dụng một số phương pháp sau:
- Phương pháp tổng hợp tài liệu lý thuyết, những kiến thức đã được học
- Phương pháp khảo sát những hệ thống thực tế tương tự
- Phương pháp thử nghiệm
- Phương pháp tham khảo ý kiến người hướng dẫn
1.5 ĐỐI TƯỢNG, PHẠM VI NGHIÊN CỨU
Để thiết kế và thi công hệ thống, tôi đã phải nghiên cứu các đối tượng sau:
- Board Arduino Uno R3
1.6 BỐ CỤC QUYỂN BÁO CÁO
Để dễ dàng theo dõi và nắm bắt thông tin thì tôi chia cuốn báo cáo này thành
5 chương:
Trang 12- Chương 1: Giới thiệu chung về đề tài
Giới thiệu một cách ngắn gọn tổng quát nhất về tình hình, nhu cầu cấp thiết về IOT cũng như giới thiệu sơ lược về sàn phẩm của tôi một cách khái quát nhất
- Chương 2: Cơ sở lý thuyết
Đưa ra các hệ thống linh kiện, nguồn gốc của các loại ngôn ngữ được sử dụng bên trong sản phẩn như java, C/C++
- Chương 3: Thiết kế hệ thống
Đi sâu vào thiết kế sản phẩm, giới thiệu sơ đồ khối, sơ đồ nguyên lý phần cứng, cũng như giới thiệu các phần mềm tạo ra sản phẩm
- Chương 4: Kết quả đạt được
Tiến hành trình bày cách chạy cũng như kết quả đạt được trong quá trình thiết kế thi công sản phẩm, thể hiện qua một số hình ảnh của mạch
- Chương 5: Kết luận
Thể hiện điểm mạnh cũng như điểm yếu của sản phẩm qua đó dựa vào kiến thức cũng như hiểu biết để nâng cấp và phát triển sản phẩm một cách đại trà
Trang 13CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 ARDUINO UNO
2.1.1 GIỚI THIỆU
- Arduino UNO ra đời năm 2010, là phiên bản Arduino được sử dụng rộng rãi nhất Arduino UNO là phiên bản được định hướng làm mạch tham khảo chính cho những người mới làm quen với Arduino
- Arduino UNO dùng chip ATMega thay cho chip FTDI ở các thế hệ trước Dòng UNO hiện tại có 3 phiên bản chính là R2, R3 và SMD Phiên bản được dùng trong đề tài là phiên bản Arduino UNO R3
Hình2.1: Arduino UNO
Trang 142.1.2 THÔNG SỐ KỸ THUẬT
Bảng 2.1: Thông số kỹ thuật của Arduino UNO
Số chân Digital I/O 14 chân
Dòng ra tối đa trên mỗi chân
I/O
30mA
Dòng ra tối đa trên chân 5V 500mA
Dòng ra tối đa trên chân 3.3V 50mA
Sơ đồ chân HC-05 gồm có:
Trang 15Hình 2.2: Sơ đồ chân HC – 05
KEY: Chân này để chọn chế độ hoạt động AT Mode hoặc Data
Mode VCC chân này có thể cấp nguồn từ 3.6V đến 6V bên trong module
đã có một ic nguồn chuyển về điện áp 3.3V và cấp cho IC BC417
GND nối với chân nguồn GND
TXD, RND đây là hai chân UART để giao tiếp module hoạt động ở mức
module bằng tập lệnh AT quen thuộc Ở chế độ Data Mode module có thể
truyền nhận dữ liệu tới module bluetooth khác Chân KEY dùng để chuyển đổi qua lại giữa hai chế độ này Có hai cách để bạn có thể chuyển module
hoạt động trong chế độ Data Mode (đọc tài liệu Tiếng Việt trên một số Web thấy chỗ này thường bị viết sai) Nếu đưa chân này lên mức logic cao trước khi cấp nguồn module sẽ đưa vào chế độ Command Mode với baudrate mặc
Trang 16định 38400 Chế độ này khá hữu ích khi bạn không biết baudrate trong
module được thiết lập ở tốc độ bao nhiêu Khi chuyển sang chế độ này đèn led trên module sẽ nháy chậm (khoảng 2s) và ngược lại khi chân KEY nối với mức logic thấp trước khi cấp nguồn module sẽ hoạt động chế độ Data Mode.Nếu module đang hoạt động ở chế Data Mode để có thể đưa module vào hoạt động ở chế độ Command Mode bạn đưa chân KEY lên mức cao Lúc này module sẽ vào chế độ Command Mode nhưng với tốc độ Baud Rate được bạn thiết lập lần cuối cùng Vì thế bạn phải biết baudrate hiện tại của thiết bị để có thể tương tác được với nó Chú ý nếu module của bạn chưa thiết lập lại lần nào thì mặc định của nó như sau:
- Baudrate 9600, data 8 bits, stop bits 1, parity : none, handshake: none
* Ở chế độ MASTER: module sẽ tự động dò tìm thiết bị bluetooth khác (1
module bluetooth HC-06, usb bluetooth, bluetooth của laptop ) và tiến hành pair chủ động mà không cần thiết lập gì từ máy tính hoặc smartphone
AT+RMAAD: ngắt kết nối với các thiết bị đã ghép
AT+ROLE= 1: đặt là module ở master
AT+RESET: reset lại thiết bị
Trang 17AT+CMODE=0: Cho phép kết nối với bất kì địa chỉ nào
AT+INQM=0,5,5: Dừng tìm kiếm thiết bị khi đã tìm được 5 thiết bị hoặc sau 5s
AT+PSWD=1234 Set Pin cho thiết bị
AT+INQ: Bắt đầu tìm kiếm thiết bị để ghép nối
Sau lệnh này một loạt các thiết bị tìm thấy được hiển thị Định ra kết quả sau lệnh này như sau INQ: address, type,signal
Phần địa chỉ (address) sẽ có định dạng như sau: 0123:4:567890 Để sử dụng địa chỉ này trong các lệnh tiếp theo ta phải thay dấu “:” thành “,”
AT+ORGL: Reset lại cài đặt mặc định
AT+RMAAD: Xóa mọi thiết bị đã ghép nối
AT+ROLE=0: Đặt là chế độ SLAVE
AT+ADDR: Hiển thị địa chỉ của SLAVE
Hình 2.3: Hình ảnh hc_05
Trang 19Hình 2.5: Biểu đồ hoạt động của RC-522
Khi tín hiệu đưa vào từ bên trái , nó sẽ đi qua bộ analog interface (bộ lưu trữ tín hiệu analog ) tín hiệu sẽ đi vào bộ giao tiếp (contactless UART) nhằm lọc
và xử lý tín hiệu nhận được sau đó mang vào lưu trữ trong khối (FIFO) và mang so sánh với tần số của thẻ có phù hợp với thẻ đã đăng kí hay ko rồi xuất ra khối giải mã (Serial UART,SPI,I2C) và đưa ra ngoài thành tín hiệu tương tư để sử dụng
2.4 MODUN I2C
2.4.1 GIỚI THIỆU
Đầu năm 1980 Phillips đã phát triển một chuẩn giao tiếp nối tiếp 2 dây được gọi là I2C I2C là tên viết tắt của cụm từ Inter-Intergrated Circuit Đây là đường Bus giao tiếp giữa các IC với nhau I2C mặc dù được phát triển bới Philips, nhưng nó đã được rất nhiều nhà sản xuất IC trên thế giới sử dụng I2C trở thành một chuẩn công nghiệp cho các giao tiếp điều khiển, có thể kể
ra đây một vài tên tuổi ngoài Philips như: Texas Intrument(TI), MaximDallas, analog Device, National Semiconductor Bus I2C được sử dụng làm bus giao tiếp ngoại vi cho rất nhiều loại IC khác nhau như các loại Vi điều khiển
8051, PIC, AVR, ARM chip nhớ như: RAM tĩnh (Static Ram), EEPROM,
Trang 20bộ chuyển đổi tương tự số (ADC), số tương tự(DAC), IC điểu khiển LCD, LED
2.4.2 THÔNG SỐ KỸ THUẬT
Hình2.6 : Hình ảnh modun I2C
GND: chân nối đất
Vcc : chân cấp nguồn
SDA: chân truyền dữ liệu
SCL : đường xung nhịp đồng hồ(SCL) chỉ do Master phát đi ( thông thường
ở 100kHz và 400kHz Mức cao nhất là 1Mhz và 3.4MHz)
Có rất nhiều thiết bị có thể cùng được kết nối vào một bus I2C, tuy nhiên sẽ không xảy ra chuyện nhầm lẫn giữa các thiết bị, bởi mỗi thiết bị sẽ được nhận ra bởỉ một địa chỉ duy nhất với một quan hệ chủ/tớ tồn tại trong suốt thời gian kết nối Mỗi thiết bị có thể hoạt động như là thiết bị nhận hoặc truyền dữ liệu hay có thể vừa truyền vừa nhận Hoạt động truyền hay nhận còn tùy thuộc vào việc thiết bị đó là chủ (master) hãy tớ (slave)
Một thiết bị hay một IC khi kết nối với bus I2C, ngoài một địa chỉ (duy nhất)
để phân biệt, nó còn được cấu hình là thiết bị chủ hay tớ.Tại sao lại có sự
Trang 21phân biệt này Đó là vì trên một bus I2C thì quyền điều khiển thuộc về thiết
bị chủ Thiết bị chủ nắm vai trò tạo xung đồng hồ cho toàn hệ thống, khi giữa hai thiết bị chủ-tớ giao tiếp thì thiết bị chủ có nhiệm vụ tạo xung đồng hồ và quản lý địa chỉ của thiết bị tớ trong suốt quá trình giao tiếp Thiết bị chủ giữ vai trò chủ động, còn thiết bị tớ giữ vai trò bị động trong việc giao tiếp
Về lý thuyết lẫn thực tế I²C sử dụng 7 bit để định địa chỉ, do đó trên một bus có thể
có tới 2^7 địa chỉ tương ứng với 128 thiết bị có thể kết nối, nhưng chỉ có 112 , 16 địa chỉ còn lại được sử dụng vào mục đích riêng Bit còn lại quy định việc đọc hay ghi dữ liệu (1 là write, 0 là read)
Điểm mạnh của I²C chính là hiệu suất và sự đơn giản của nó: một khối điều khiển trung tâm có thể điều khiển cả một mạng thiết bị mà chỉ cần hai lối ra điều khiển Ngoài ra I2C còn có chế độ 10bit địa chỉ tương đương với 1024 địa chỉ, tương tự như 7 bit, chỉ có 1008 thiết bị có thể kết nối, còn lại 16 địa chỉ sẽ dùng để sử dụng mục đích riêng
Hình 2.7: Sơ đồ quan hệ chủ tớ giữa modun I2C
Trang 222.5 L298
2.5.1 GIỚI THIỆU
Mạch cầu H và điều khiển động cơ với L298 dùng ic, module cầu H để điều khiển động cơ DC và với module L298N cũng là một module thông dụng với chức năng thông dụng và giá thành cực kỳ rẻ là lựa chọn của các bạn học sinh, sinh viên
2.5.2 THÔNG SỐ KỸ THUẬT
+ Driver: L298N tích hợp hai mạch cầu H
+ Điện áp điều khiển: +5 V ~ +12 V
+ Dòng tối đa cho mỗi cầu H là: 2A (=>2A cho mỗi motor)
+ Điện áp của tín hiệu điều khiển: +5 V ~ +7 V
+ Dòng của tín hiệu điều khiển: 0 ~ 36mA
+ Công suất hao phí: 20W (khi nhiệt độ T = 75 ℃)
+ Nhiệt độ bảo quản: -25 ℃ ~ +130 ℃
Trang 23Hình2.8: Sơ đồ L298
2.6 LED
2.6.1 GIỚI THIỆU:
LED (viết tắt của Light Emitting Diode, có nghĩa là điốt phát quang) là các
điốt có khả năng phát ra ánh sáng hay tia hồng ngoại, tử ngoại Cũng giống
như điốt, LED được cấu tạo từ một khối bán dẫn loại p ghép với một khối
Trang 242.7 LCD :
2.7.1 GIỚI THIỆU:
Màn hình LCD hiển thị màu sắc được bởi những điểm ảnh chứa tinh thể lỏng
có thể thay đổi màu sắc cũng như cường độ ánh sáng Những điểm này hiển thị màu sắc theo quy tắc phối màu phát xạ từ 3 màu lam, lục và đỏ Và từ đó những điểm ảnh tắt hoặc bật 3 màu này để tạo ra một điểm màu, tập hợp nhiều điểm màu cho ra một hình ảnh hiển thị trên màn hình LCD
Hình2.10: Bảng sơ đồ chân của lcd
Trang 25Cảm Biến Nước Mưa sử dụng để phát hiện mực nước, trời mưa, hay các
môi trường có nước Mạch cảm biến mưa được đặt ngoài trời để kiểm tra trời có mưa không, qua đó truyền tín hiệu điều khiển đóng / ngắt rơ le
2.8.2 THÔNG SỐ KỸ THUẬT
Điện áp: 5V
Led báo nguồn (Màu xanh)
Led cảnh báo mưa (Màu đỏ)
Hoạt động dựa trên nguyên lý: Nước rơi vào board sẽ tạo ra môi trường dẫn điện
Có 2 dạng tín hiệu: Analog (AO) và Digital (DO)
Dạng tín hiệu: TTL, đầu ra 100mA (Có thể sử dụng trực tiếp Relay, Còi công suất nhỏ )
Điều chỉnh độ nhạy bằng biến trở
Sử dụng LM358 để chuyển AO > DO
Kích thước: 5.4*4.0 mm
Trang 26Dày 1.6 mm
Hình 2.12: Cảm biến mưa
2.9 CẢM BIẾN HALL
2.9.1 GIỚI THIỆU
Cảm Biến Hall sử dụng để phát hiện từ trường, trời mưa, hay các môi
trường có từ trường Mạch cảm biến Hall được đặt gần nơi có từ trường qua
đó truyền tín hiệu điều khiển đóng / ngắt rơ le
2.9.2 THÔNG SỐ KỸ THUẬT
Điện áp: 5V
Led báo nguồn (Màu xanh)
Led cảnh báo mưa (Màu đỏ)
Hoạt động dựa trên nguyên lý: Nước rơi vào board sẽ tạo ra môi trường dẫn điện
Có 2 dạng tín hiệu: Analog (AO) và Digital (DO)
Dạng tín hiệu: TTL, đầu ra 100mA (Có thể sử dụng trực tiếp Relay, Còi công suất nhỏ )
Điều chỉnh độ nhạy bằng biến trở
Sử dụng LM358 để chuyển AO > DO
Kích thước: 5.4*4.0 mm
Dày 1.6 mm
Trang 27Arduino IDE hỗ trợ biên dịch cho tất cả các dòng Arduino đã được phát hành Trên Adruino IDE ta có thể lập trình các ứng dụng liện quan đến các kit Ardruino, ngoài việc lập trình ta có thể nạp code để chạy tương tác với phần cứng Có thể nói Ardruino IDE là một công cụ sinh ra là để cho riêng Adruino
Trang 28Arduino bắt nguồn từ C/C++ phổ biến hiện nay do đó rất dễ học, dễ hiểu
2.11 TẬP LỆNH AT
2.11.1 GIỚI THIỆU
Lệnh AT là các hướng dẫn được sử dụng để điều khiển một modem.AT là một cách viết gọn của chữ Attention.Mỗi dòng lệnh của nó bắt đầu với “AT” hay “at” Đó là lý do tại sao các lệnh Modem được gọi là các lệnh AT Nhiều lệnh của nó được sử dụng để điều khiển các modem quay số sử dụng dây nối (wired dial-up modems), chẳng hạn như ATD (Dial), ATA (answer), ATH (Hool control) và ATO (Return to online data state) cũng được hỗ trợ bởi các modem GSM/GPRS và các điện thoại di động
Trang 29Bên cạnh bộ lệnh AT thông dụng này, các modem GSM/GPRS và các điện thoại di động còn được hỗ trợ bởi một bộ lệnh AT đặc biệt đối với công nghệ GSM.Như lệnh gọi điện thoại AT+ADH
Chú ý là khởi động “AT” là một tiền tố để thông báo tới modem về sự bắt đầu của một dòng lệnh Nó không phải là một phần của tên lệnh AT.Ví dụ như D là một tên lệnh AT thực tế trong ATD và +CMGS là tên một lệnh AT thực tế trong AT+CMGS.Tuy nhiên, một số sách hay một số trang web lại sử dụng chúng thay cho nhau như là tên của một lệnh AT
2.11.2 CÁC LỆNH AT THÔNG DỤNG
- Sau đây là một vài nhiệm vụ có thể được hoàn thành bằng cách sử dụng các lệnh AT kết hợp với sử dụng 1 modem GSM/GPRS hay một điện thoại di động:
- Lấy thông tin cơ bản về điện thoại di động hay modem GSM/GPRS
Ví dụ như tên của nhà sản xuất (AT+CGMI), số model (AT+CGMM), số IMEI (International Mobile Equipment Identity) (AT+CGSN) và phiên bản phần mềm (AT+CGMR)
- Lấy thông tin trạng thái hiện tại của điện thoại di động hay modem GSM/GPRS Ví dụ như trạng thái hoạt động của điện thoại (AT+CPAS), trạng thái đăng ký mạng (AT+CREG), chiều dài sóng radio (AT+CSQ), mức sạc pin và trạng thái sạc pin (AT+CBC)
- Thiết lập một kết nối dữ liệu hay kết nối voice tới một remote điều khiển (ATD, ATA,…)
- Gửi và nhận fax (ATD, ATA,AT+F*)
- Gửi (AT+CMGS, AT+CMSS), đọc (AT+CMGR, AT+CMGL), viết (AT+CMGW) hay xóa tin nhắn SMS (AT+CMGD) và nhận các thông báo của các tin nhắn SMS nhận được mới nhất (AT+CNMI)
- Đọc (AT+CPBR), viết (AT+CPBW) hay tìm kiếm (AT+CPBF) các mục
về danh bạ điện thoại (phonebook)
Trang 30- Thực thi các nhiệm vụ liên quan tới an toàn, chẳng hạn như mở hay đóng các khóa chức năng (AT+CLCK), kiểm tra xem một chức năng được khóa hay chưa (AT+CLCK) và thay đổi password (AT+CPWD)
- Điều khiển hoạt động của các mã kết quả/các thông báo lỗi của các lệnh AT Ví dụ, bạn có thể điều khiển cho phép hay không cho phép kích hoạt hiển thị thông báo lỗi (AT+CMEE) và các thông báo lỗi nên được hiển thị theo dạng số hay theo dạng dòng chữ (AT+CMEE=1 hay AT+CMEE=2)
- Thiết lập hay thay đổi cấu hình của điện thoại di dộng hay modem GSM/GPRS Ví dụ, thay đổi mạng GSM (AT+COPS), loại dịch vụ của bộ truyền tin (AT+CBST), các thông số protocol liên kết với radio (AT+CRLP), địa chỉ trung tâm SMS (AT+CSCA) và khu vực lưu trữ các tin nhắn SMS (AT+CPMS)
- Lưu và phục hồi các cấu hình của điện thoại di động hay modem GSM/GPRS Ví dụ, lưu (AT+COPS) và phục hồi (AT+CRES) các thiết lập liên quan tới tin nhắn SMS chẳng hạn như địa chỉ trung tâm tin nhắn SMS Chú ý là nhà sản xuất điện thoại di động thường không thi hành tất cả các lệnh AT, các thông số lệnh và các giá trị của tham số trong các điện thoại di động Trạng thái hành vi của các lệnh AT thực thi có thể cũng khác
so với các định nghĩa chuẩn trước đó Nói chung các modem GSM/GPRS được thiết kế dành cho các ứng dụng wireless mà có được các hỗ trợ tốt về các lệnh AT hơn là các điện thoại di động thông thường khác
Thêm vào đó, một vài lệnh AT yêu cầu sự hỗ trợ từ các tổng đài của mạng di động Ví dụ, SMS thông qua GPRS có thể được kích hoạt trên các điện thoại di động có sử dụng GPRS và các modem GPRS với lệnh
+CGSMS (tên lệnh ở dạng text: Select Service for MO SMS Messages) Nhưng nếu tổng đài mạng điện thoại không hỗ trợ quá trình truyền dẫn SMS thông qua GPRS, thì bạn không thể sử dụng chức năng này được
2.12 NGÔN NGỮ JAVA :
Trang 312.12.1 GIỚI THIỆU
Java (đọc như "Gia-va") là một ngôn ngữ lập trình hướng đối tượng (OOP)
và dựa trên các lớp (class), Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime environment) chạy
2.13 PHẦN MỀM ANDROID STUDIO
2.13.1 GIỚI THIỆU
Android Studio được thiết kế đặc biệt để phát triển ứng dụng Android,
Nó hỗ trợ các hệ điều hành Windows, Mac OS Xvà Linuxvà là IDE chính thức của Google để phát triển ứng dụng Android gốc để thay thế
Hình 2.15: Giao Diện Anddroid studio
* Androi Studio: gồm có 2 phần là thiết kế giao diện và code bên trong
Trang 32Hính 2.16: Giao diện chọn thiết kế
Các Hàm Thông Dụng Trong AnDroid Studio:
1 Onclick in XML: bắt sự kiện on click trong XML
2 Inline anonymous listener: hàm chuyển đổi giá trị biến số thành giá trị khác
3 Activity is listener: hàm sử dụng để chuyển đổi các biến dữ liệu từ kiểu này
sang kiểu khác
4 Listener in variable: chia sẻ chung một biến sự kiện cho các control khác nhau
5 Explicit listener class : tách các hàm sự kiện trong các class riêng, nó giúp cho
việc quản lí code dễ dàng hơn
6 View Subclassingg: khi thêm Control động (lúc runtime) vào màn hình Ta có
thể dùng bất kỳ kỹ thuật nào ,để thêm sự kiện động cho một Button động
Trang 33CHƯƠNG 3:THIẾT KẾ HỆ THỐNG
3.1 MÔ HÌNH HỆ THỐNG
Với mục tiêu tạo ra một hệ thống hoạt động ổn định về phần cứng và tương tác
dễ dàng với người dùng ở phần mềm, nên trước khi đưa ra những giải pháp cụ thể tôi đã xây dựng khái quát mô hình hoạt động chung của hệ thống như hình sau:
Hình 3.1: Sơ đồ tổng quát giao tiếp giữa điện thoại và vi điêu khiển