THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN VƯỜN QUA MẠNG INTERNET

70 1 0
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN VƯỜN QUA MẠNG INTERNET

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

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 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN VƯỜN QUA MẠNG INTERNET SVTH : ĐẶNG QUANG ĐĨNH MSSV : 13119070 SVTH : NGUYỄN TUẤN SƠN MSSV : 13119131 Khoá : 2013 Ngành : CÔNG NGHỆ KỸ THUẬT MÁY TÍNH GVHD : THS. LÊ MINH Tp. Hồ Chı́ Minh, tháng 7 năm 2017TRƯỜ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 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN VƯỜN QUA MẠNG INTERNET SVTH : ĐẶNG QUANG ĐĨNH MSSV : 13119070 SVTH : NGUYỄN TUẤN SƠN MSSV : 13119131 Khoá : 2013 Ngành : CÔNG NGHỆ KỸ THUẬT MÁY TÍNH GVHD : THS. LÊ MINH Tp. Hồ Chı́ Minh, tháng 7 năm 2017i CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tư do ̣ – Hạnh phúc Tp. Hồ Chí Minh, ngày tháng 7 năm 2017 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ và tên sinh viên: Đặng Quang Đĩnh Ngành: Công nghệ kỹ thuật máy tính Họ và tên sinh viên: Nguyễn Tuấn Sơn Ngành: Công nghệ kỹ thuật máy tính Giảng viên hướng dẫn: Th.s Lê Minh Ngày nhận đề tài: 2422017 MSSV: 13119070 Lớp: 13119CL1 ĐT: 0989690434 MSSV: 13119131 Lớp: 13119CL1 ĐT: 0968808195 Ngày nộp đề tài: 132017 1. Tên đề tài: Thiết kế và thi công hệ thống điều khiển vườn qua mạng Internet. 2. Các số liệu, tài liệu ban đầu: Kiến thức cơ bản về các môn mạch điện, điện tử cơ bản, hệ thống nhúng, kỹ thuật truyền số liệu. 3. Nội dung thưc hi ̣ ện đề tài: Lập trình Raspberry Pi đọc các cảm biến, điều khiển thiết bị trực tiếp bằng bàn phím hoặc từ xa thông qua mạng Internet. Xây dựng Website tương tác với người sử dụng, lưu trữ dữ liệu trong database. 4. Sản phẩm: Website, thiết bị điều khiển, mô hình vườn. TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪNii CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh Phúc PHIẾ U NHÂṆ XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ và tên Sinh viên: Đặng Quang Đĩnh……………………………………MSSV:13119070 Ngành: Công nghệ kỹ thuật máy tính Họ và tên Sinh viên: Nguyễn Tuấn Sơn…………………………………….MSSV:13119131 Ngành: Công nghệ kỹ thuật máy tính Tên đề tài: Thiết kế và thi công hệ thống điều khiển vườn qua mạng Internet Họ và tên Giáo viên hướng dẫn: Lê Minh NHÂṆ 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. Đề nghi ̣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 7 năm 2017 Giáo viên hướng dẫn (Ký ghi rõ họ tên)iii 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: Đặng Quang Đĩnh………………………………….MSSV: 13119070 Ngành: Công nghệ kỹ thuật máy tính Họ và tên Sinh viên: Nguyễn Tuấn Sơn…………………………………MSSV: 13119131 Ngành: Công nghệ kỹ thuật máy tính Tên đề tài: Thiết kế và thi công hệ thống điều khiển vườn qua mạng Internet Họ và tên Giáo viên phản biện: ……………………………………………………………. NHÂṆ 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. Đề nghi ̣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 7 năm 2017 Giáo viên phản biện (Ký ghi rõ họ tên)iv LỜI CẢM ƠN Đồ án “Thiết kế và thi công hệ thống điều khiển vườn qua mạng Internet” được hoàn thành không chỉ bằng những nỗ lực của từng thành viên trong nhóm mà còn bằng những đóng góp trực tiếp, gián tiếp của thầy cô, bạn bè trường Đại học Sư phạm kỹ thuật. Nhóm thực hiện đồ án xin gửi đến các thầy cô khoa Đào tạo Chất lượng cao lời chúc sức khỏe và lời cảm ơn sâu sắc. Nhờ sự quan tâm, chỉ bảo tận tình chu đáo của thầy cô mà những thành viên trong nhóm đã có những kiến thức nền tảng, chuyên sâu cùng những kinh nghiệm quý báu để có thể hoàn thành tốt đồ án tốt nghiệp. Đặc biệt, nhóm xin gửi lời cảm ơn chân thành nhất tới Th.s Lê Minh đã quan tâm giúp đỡ, hướng dẫn trong suốt quá trình thực hiện. Trong quãng thời gian làm việc với thầy, các thành viên không chỉ được hướng dẫn tận tình, được giúp đỡ khi gặp khó khăn mà còn được học hỏi thái độ làm việc nghiêm túc, chuyên nghiệp và hiệu quả. Cảm ơn bạn bè, các anh chị khóa trước đã tận tình giúp đỡ những khó khăn, trăn trở trong quá trình thực hiện đồ án. Và cuối cùng, không thể không cảm ơn gia đình, người thân đã luôn đồng hành, động viên. Đặc biệt là cha mẹ, người đã nuôi nấng, dạy dỗ, tạo điều kiện thuận lợi về vật chất lẫn tinh thần để chúng tôi có thể hoàn thành đồ án cuối cùng, chuẩn bị hành trang bước vào tương lai.v TÓM TẮT Mạng lưới vạn vật kết nối Internet là làng sóng thứ ba nổi lên trong sự phát triển của Internet. Internet of Things (IoT) dự kiến sẽ có ảnh hưởng mạnh mẽ đến các sản phẩm tiêu dùng, kinh doanh và nhiều hơn thế nữa, nhưng nó đang ở giai đoạn khởi đầu. Tiềm năng áp dụng IoT sẽ rất lớn cho hầu hết các lĩnh vực kinh doanh, công nghiệp, sản xuất, hàng tiêu dùng, chuỗi cung ứng… Lĩnh vực mà IoT có thể sử dụng là rất rộng. Đồ án “Thiết kế và thi công hệ thống điều khiển vườn qua mạng Internet” áp dụng cụ thể lên vườn rau. Tưới tiêu, điều khiển ánh sáng thủ công có thể gây thừa hoặc thiếu, không kịp thời và gặp những sai sót. Đồ án trình bày ứng dụng tưới nước và chiếu sáng bằng cảm biến và máy tính nhúng. Phần cứng của hệ thống là Raspberry Pi (máy khách) thu thập và xử lý dữ liệu từ các cảm biến theo thời gian thực. Dữ liệu này cùng trạng thái của các thiết bị được gửi tới máy chủ qua mạng Internet và được lưu lại trong cơ sở dữ liệu. Hệ thống có thể theo dõi thời gian thực sự thay đổi của nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ sáng và trạng thái của thiết bị. Có 2 chế độ điều khiển thiết bị. Chế độ tự động sẽ dựa vào dữ liệu các cảm biến và khoảng lí tưởng để tự động tưới nước, chiếu sáng giúp sử dụng hiệu quả nước và điện năng. Chế độ bằng tay cho phép người dùng thay đổi tất cả các cài đặt: bật tắt các thiết bị, thay đổi khoảng lí tưởng, thay đổi chế độ hoạt động.vi ABSTRACT The Internet of Things is emerging as the third wave in the development of the Internet. Internet of things (IoT) is expected to have a massive impact on consumer products, business and wider culture, but these are still early days. Given its potential for very wide applicability to almost all verticals and aspects of business, industries, manufacturing, consumer goods, supply chains, etc.. IOT as a whole is very broad area. Project “Design and construction of garden control system via Internet” focuses specifically to its adoption to our gardens. For artificial irrigation and lighting in excess or deficiency, not timely and other shortcomings, this project expounds the application in garden watering and lighting system based on wire sensors and single board computer. The hardware of the system adopts Raspberry Pi as a client, by the realtime acquisition and processing of data in wire sensors. The sensors data and the status of devices by Internet way are sent to server and saved to Database. The system can realtime monitor the air temperature, air humidity, soil humidity, lux changes and devices status. There are two modes of controlling devices. Automatic mode based on garden’s ideal range and received data from the sensors to automatic watering, lighting, efficient use of water resources and electricity. Manual mode gives the user full control of all settings: turn devices on or off, change ideal ranges, change mode.vii MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ........................................................................... i PHIẾ U NHÂN XÉT ̣ CỦA GIÁO VIÊN HƯỚNG DẪN ............................................. ii 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 ABSTRACT .............................................................................................................. vi MỤC LỤC ............................................................................................................... vii DANH MỤC CÁC BẢNG BIỂU............................................................................. xii DANH SÁCH CÁC HÌNH ẢNH, BIỂ U ĐỒ........................................................... xiii 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. Tính cấp thiết của đề tài ................................................................................. 1 1.3. Mục tiêu nghiên cứu ...................................................................................... 1 1.4. Nhiệm vụ nghiên cứu .................................................................................... 2 1.5. Tổng quan của đề tài ...................................................................................... 2 1.6. Phương pháp nghiên cứu ............................................................................... 2 1.7. Đối tượng, phạm vi nghiên cứu ..................................................................... 2 1.8. Bố cục của đồ án ............................................................................................ 3 Chương 2 CƠ SỞ LÝ THUYẾT ............................................................................. 4 2.1. Raspberry Pi .................................................................................................. 4 2.1.1. Giới thiệu ............................................................................................. 4 2.1.2. Phần cứng ............................................................................................ 4 2.1.3. Phần mềm ............................................................................................ 6 2.2. Cảm biến nhiệt độ, độ ẩm DHT11 ................................................................. 7 2.2.1. Giới thiệu ............................................................................................. 7 2.2.2. Thông số kỹ thuật ................................................................................ 7viii 2.2.3. Nguyên lí hoạt động ............................................................................ 7 2.3. Cảm biến độ ẩm đất ....................................................................................... 9 2.3.1. Giới thiệu ............................................................................................. 9 2.3.2. Thông số kỹ thuật ................................................................................ 9 2.4. Cảm biến ánh sáng quang trở ...................................................................... 10 2.4.1. Giới thiệu ........................................................................................... 10 2.4.2. Thông số kỹ thuật .............................................................................. 10 2.5. MCP3008 ..................................................................................................... 10 2.5.1. Giới thiệu ........................................................................................... 10 2.5.2. Thông số kỹ thuật .............................................................................. 11 2.6. LCD ............................................................................................................. 11 2.6.1. Giới thiệu ........................................................................................... 11 2.6.2. Thông số kỹ thuật .............................................................................. 11 2.7. Bàn phím ma trận ........................................................................................ 13 2.7.1. Giới thiệu ........................................................................................... 13 2.7.2. Nguyên lí hoạt động .......................................................................... 13 2.8. Giao tiếp SPI ................................................................................................ 13 2.8.1. Giới thiệu ........................................................................................... 13 2.8.2. Nguyên lí hoạt động .......................................................................... 14 2.9. Giao tiếp I2C ................................................................................................ 15 2.9.1. Giới thiệu ........................................................................................... 15 2.9.2. Quá trình truyền dữ liệu .................................................................... 16 2.9.3. So sánh SPI, I2C ................................................................................ 16 2.10. Python....................................................................................................... 16 2.10.1. Module Thread .................................................................................. 16 2.10.2. Module Request ................................................................................. 17 2.11. HTML....................................................................................................... 17 2.11.1. Giới thiệu ........................................................................................... 17ix 2.11.2. Thẻ HTML ........................................................................................ 18 2.11.3. Cấu trúc HTML ................................................................................. 18 2.12. PHP........................................................................................................... 18 2.12.1. Giới thiệu ........................................................................................... 18 2.12.2. Phương pháp hoạt động ..................................................................... 19 2.12.3. Cú pháp .............................................................................................. 19 2.13. CSS ........................................................................................................... 19 2.14. Javascript .................................................................................................. 20 2.15. SQL .......................................................................................................... 21 2.16. Jquery ....................................................................................................... 21 2.17. Ajax .......................................................................................................... 22 Chương 3 THIẾT KẾ HỆ THỐNG ....................................................................... 23 3.1. Mô hình hệ thống ......................................................................................... 23 3.2. Thiết kế hệ thống ......................................................................................... 24 3.2.1. Thiết kế khối cảm biến ...................................................................... 24 3.2.2. Thiết kế khối ngõ ra relay.................................................................. 25 3.2.3. Thiết kế board trung tâm ................................................................... 26 3.2.4. Thiết kế Server .................................................................................. 41 3.2.5. Thiết kế Website ................................................................................ 42 Chương 4 KẾT QUẢ ............................................................................................. 44 4.1. Phần cứng .................................................................................................... 44 4.2. Phần mềm .................................................................................................... 46 4.2.1. Trang đăng nhập ................................................................................ 46 4.2.2. Trang đăng ký.................................................................................... 47 4.2.3. Trang chủ........................................................................................... 48 4.2.4. Trang biểu đồ..................................................................................... 49 4.2.5. Trang cài đặt ...................................................................................... 49 4.2.6. Trang giới thiệu ................................................................................. 50x 4.2.7. Trang quản lý thành viên ................................................................... 50 Chương 5 KẾT LUẬN, HƯỚNG PHÁT TRIỂN.................................................. 51 5.1. Kết luận ........................................................................................................ 51 5.2. Hướng phát triển .......................................................................................... 51 TÀI LIỆU THAM KHẢO ......................................................................................... 52 PHỤ LỤC.................................................................................................................. 53xi DANH MỤC CÁC TỪ VIẾ T TẮ T Ajax: Asynchronous JavaScript and XML DAC: Digital Analog Converter GPIO: General Purpose InputOutput GUI: Graphic User Interface HDMI: HighDefinition Multimedia Interface HTML: Hypertext Markup Language IoT: Internet of Things LAN: Local Area Network LCD: Liquid Crystal Display LXDE: Lightweight X11 Desktop Environment PHP: Hypertext Preprocessor RAM: Random Access Memory SD: Secure Digital SoC: System on a chip USB: Universal Serial Busxii DANH MỤC CÁC BẢNG BIỂU Bảng 2.1 Các chân của LCD ..................................................................................... 12 Bảng 2.2 So sánh sự khác nhau giữa SPI và I2C ....................................................... 16 Bảng 3.1 Các biến trong hàm Start ........................................................................... 29 Bảng 3.2 Các biến trong thread Devices ................................................................... 31 Bảng 3.3 Chức năng các phím chế độ hiển thị thông thường ................................... 36 Bảng 3.4 Chức năng các phím chế độ cài đặt ........................................................... 38 Bảng 3.5 Các biến trong chế độ cài đặt cường độ sáng tối thiểu .............................. 39 Bảng 3.6 Bảng lưu thông tin người dùng .................................................................. 41 Bảng 3.7 Bảng lưu thông tin người đăng ký............................................................. 41 Bảng 3.8 Bảng lưu thông tin khu vườn ..................................................................... 42 Bảng 4.1 Các lỗi phát sinh khi đăng nhập ................................................................. 46 Bảng 4.2 Các lỗi phát sinh khi đăng ký .................................................................... 47 Bảng 4.3 Các thông số hiển thị: ................................................................................ 48xiii DANH SÁCH CÁC HÌNH ẢNH, BIỂ U ĐỒ Hình 2.1 Raspberry Pi 2 Model B+ V1.2 .................................................................... 4 Hình 2.2 Sơ đồ chân và phần cứng Rasperry Pi ......................................................... 5 Hình 2.3 Giao diện dòng lệnh ..................................................................................... 6 Hình 2.4 Giao diện đồ họa .......................................................................................... 6 Hình 2.5 Sơ đồ chân DHT11 ....................................................................................... 7 Hình 2.6 Sơ đồ kết nối DHT11 và MCU .................................................................... 7 Hình 2.7 Giản đồ thời gian DHT11 ............................................................................ 8 Hình 2.8 Tín hiệu Start ................................................................................................ 8 Hình 2.9 Tín hiệu response ......................................................................................... 9 Hình 2.10 Module DHT11 .......................................................................................... 9 Hình 2.11 Module cảm biến độ ẩm đất ....................................................................... 9 Hình 2.12 Module quang trở..................................................................................... 10 Hình 2.13 MCP3008 ................................................................................................. 10 Hình 2.14 Sơ đồ chân MCP3008 .............................................................................. 11 Hình 2.15 LCD20x4 .................................................................................................. 11 Hình 2.16 Sơ đồ chân LCD ....................................................................................... 11 Hình 2.17 Địa chỉ ký tự LCD20x4 ............................................................................ 12 Hình 2.18 Bàn phím ma trận 4x4 .............................................................................. 13 Hình 2.19 Sơ đồ nguyên lý bàn phím ma trận 4x4 ................................................... 13 Hình 2.20 Giao tiếp SPI giữa Master và 3 Slave độc lập......................................... 14 Hình 2.21 Nguyên lí hoạt động của chuẩn SPI ......................................................... 15 Hình 2.22 Sơ đồ kết nối I2C ...................................................................................... 15 Hình 2.23 Website viết bằng HTML ........................................................................ 18 Hình 2.24 Phương thức hoạt động của PHP ............................................................. 19 Hình 2.25 Trướ c và sau khi sử dung CSS ................................................................. 20 ̣ Hình 2.26 Trang web có Javascript trước và sau khi nhấp chuột ............................. 20 Hình 3.1 Mô hình hệ thống ....................................................................................... 23 Hình 3.2 Sơ đồ khối của hệ thống ............................................................................. 23 Hình 3.3 Sơ đồ nguyên lí của module DHT11.......................................................... 24 Hình 3.4 Sơ đồ nguyên lí của module cảm biến tương tự ........................................ 25 Hình 3.5 Sơ đồ nguyên lí module relay .................................................................... 25 Hình 3.6 Kết nối của board trung tâm ....................................................................... 27 Hình 3.7 Sơ đồ nguyên lí board trung tâm ................................................................ 27xiv Hình 3.8 Lưu đồ chương trình trên Raspberry Pi ..................................................... 28 Hình 3.9 Lưu đồ hàm Start ........................................................................................ 29 Hình 3.10 Lưu đồ thread đọc dữ liệu cảm biến......................................................... 30 Hình 3.11 Lưu đồ thread điều khiển thiết bị ............................................................. 31 Hình 3.12 Lưu đồ chế độ điều khiển tự động ........................................................... 32 Hình 3.13 Lưu đồ chế độ điều khiển bằng tay .......................................................... 33 Hình 3.14 Lưu đồ thread LCD .................................................................................. 34 Hình 3.15 Lưu đồ thread xử lí bàn phím ................................................................... 35 Hình 3.16 Lưu đồ khối 1 ........................................................................................... 37 Hình 3.17 Lưu đồ khối 2 ........................................................................................... 38 Hình 3.18 Lưu đồ khối 3 ........................................................................................... 39 Hình 3.19 Lưu đồ khối 7 ........................................................................................... 40 Hình 3.20 Lưu đồ khối 9 ........................................................................................... 40 Hình 3.21 Hoạt động của server ................................................................................ 41 Hình 4.1 Kết quả thi công board trung tâm ............................................................... 44 Hình 4.2 Kết quả thi công mô hình vườn .................................................................. 44 Hình 4.3 Điều khiển thiết bị điện .............................................................................. 45 Hình 4.4 Trang đăng nhập ......................................................................................... 46 Hình 4.5 Trang đăng ký ............................................................................................ 47 Hình 4.6 Trang chính ................................................................................................ 48 Hình 4.7 Trang biểu đồ ............................................................................................. 49 Hình 4.8 Trang cài đặt giá trị ngưỡng ....................................................................... 49 Hình 4.9 Trang giới thiệu .......................................................................................... 50 Hình 4.10 Trang quản lý thành viên ......................................................................... 501 Chương 1 TỔNG QUAN 1.1. Giới thiệu tình hình nghiên cứu hiện nay Hiện nay cả thế giới đang bước vào giai đoạn đầu của cuộc Cách mạng công nghiệp lần thứ tư với những công nghệ đột phá trong kỹ thuật số, công nghệ sinh học, vật lý làm nâng cao hiệu suất lao động, cải thiện chất lượng sống của con người. Đây được xác định vừa là cơ hội vừa là thách thức cho các nước phát triển để bắt kịp xu hướng thế giới, mở ra bước ngoặc mới cho lịch sử phát triển của loài người. Việt Nam có thể nghiên cứu, ứng dụng công nghệ mới để nhanh chóng rút ngắn khoảng cách phát triển. Tại Việt Nam, IoT đã được ứng dụng từ lâu, tuy chưa có ứng dụng nào ảnh hưởng thực sự mạnh mẽ tới đời sống xã hội nhưng tiềm năng của lĩnh vực này là rất lớn và đang được chính phủ ủng hộ, khuyến khích sử dụng. 1.2. Tính cấp thiết của đề tài Rau xanh là thực phẩm có vai trò quan trọng và không thể thiếu trong cuộc sống con người. Rau chứa nhiều chất dinh dưỡng cần thiết như vitamin, chất khoáng, chất xơ, axit hữu cơ… có tác dụng vô cùng hữu ích cho sức khỏe. Hiện nay ở Việt Nam, vấn đề vệ sinh an toàn thực phẩm rất đáng lo ngại, cùng với đó việc lạm dụng hóa chất bảo vệ thực phẩm, chất kích thích tăng trưởng, thậm chí sử dụng các hóa chất ngoài danh mục cũng không phải là hiếm. Đa số người tiêu dùng chủ yếu tiêu thụ các sản phẩm nông nghiệp không rõ nguồn gốc. Tuy nhiên nhu cầu rau sạch ngày càng tăng và yêu cầu ngày càng cao. Việc tự động hóa trong nông nghiệp và ứng dụng IoT vào vườn rau sẽ giải phóng sức lao động, giảm thiểu chi phí sản xuất, hỗ trợ những người trồng rau nhưng không có nhiều thời gian chăm sóc, đảm bảo chất lượng rau, đưa rau sạch đến với nhiều người tiêu dùng hơn, đồng thời nâng cao sức khỏe người dân. 1.3. Mục tiêu nghiên cứu Hệ thống được thiết kế để đạt được những mục tiêu:  Sử dụng Raspberry Pi đo các yếu tố nhiệt độ, độ ẩm, ánh sáng, đồng thời điều khiển ngoại vi theo 2 chế độ: tự động và bằng tay. Chế độ tự động sẽ bật tắt các thiết bị theo các giá trị ngưỡng và dữ liệu (nhiệt độ, độ ẩm, ánh sáng) tương ứng. Chế độ bằng tay cho phép trực tiếp bật tắt các thiết bị.  Xây dựng Website giúp người dùng có thể điều khiển thiết bị từ xa, giám sát các thông số của khu vườn, cài đặt giá trị ngưỡng thông qua mạng Internet.2  Quản lý dữ liệu bằng MySQL Database giúp người dùng có thể giám sát các thông số của khu vườn, trạng thái các thiết bị trong quá khứ.  Điều khiển trực tiếp các thiết bị và cài đặt các giá trị ngưỡng bằng bàn phím, hiển thị LCD để dễ quan sát và thao tác. 1.4. Nhiệm vụ nghiên cứu Các nhiệm vụ nghiên cứu phát sinh để hoàn thành các mục tiêu đã đề ra:  Lập trình Raspberry Pi.  Đo các cảm biến.  Giao tiếp với bàn phím, LCD.  Thiết kế Website.  Quản lý dữ liệu với SQL.  Truyền nhận dữ liệu giữa Raspberry Pi và Website. 1.5. Tổng quan của đề tài Việc ứng dụng Internet trong giám sát, điều khiển không mới. Đề tài bước đầu nghiên cứu, ứng dụng Internet giúp người dùng có thể theo dõi, điều khiển khu vườn từ xa. Có chế độ tự động điều khiển thiết bị, phù hợp với những người bận rộn, không có thời gian chăm sóc khu vườn. 1.6. Phương pháp nghiên cứu Đồ án sử dụng các phương pháp nghiên cứu:  Tổng hợp kiến thức đã học.  Tham khảo đồ án các khóa trước.  Tham khảo ý kiến giảng viên hướng dẫn.  Tìm hiểu trên Internet.  Khảo sát thực tế. 1.7. Đối tượng, phạm vi nghiên cứu Đồ án tập trung chủ yếu vào các đối tượng:  Raspberry Pi: phần cứng, phần mềm.  DHT11: thông số kỹ thuật, nguyên lí hoạt động.  Cảm biến độ ẩm đất: thông số kỹ thuật.  Cảm biến ánh sáng quang trở: thông số kỹ thuật.  MCP3008: thông số kỹ thuật.  LCD: thông số kỹ thuật.  Bàn phím ma trận: nguyên lí hoạt động.3  SPI: nguyên lí hoạt động.  I2C: quá trình truyền dữ liệu, so sánh SPI và I2C.  Python: module Thread, module Requests.  HTML.  PHP.  JavaScript.  CSS.  SQL.  Jquery.  Ajax. 1.8. Bố cục của đồ án Đồ án gồm 5 chương:  Chương 1: Tổng quan.  Chương 2: Cơ sở lý thuyết.  Chương 3: Thiết kế hệ thống.  Chương 4: Kết quả.  Chương 5: Kết luận, hướng phát triển.4 Chương 2 CƠ SỞ LÝ THUYẾT 2.1. Raspberry Pi 2.1.1. Giới thiệu Raspberry Pi là máy tính trên một board mạch, được phát triển bởi Raspberry Pi Foundation, được phân phối bởi Sony, Qsida, Egoman và được phân phối bởi Element14, RS Components và Egoman. Raspberry Pi được xây dựng từ bộ xử lý SoC Broadcom BCM2835, là chip xử lý mobile mạnh, có kích thước nhỏ, điện năng thấp, bao gồm CPU, GPU, bộ xử lý âm thanhvideo và các tính năng khác. Với đặc tính giá rẻ và đa năng, Raspberry Pi là một lựa chọn tốt cho trải nghiệm lập trình. 2.1.2. Phần cứng Hệ thống sử dụng Raspberry Pi 2 Model B+ V1.2. Hình 2.1 Raspberry Pi 2 Model B+ V1.2 Cấu hình:  Chip: Broadcom BCM2835.  Core architecture: ARM11.  CPU: 700 MHz ARM1176JZFS.  GPU: Dual Core VideoCore IV® Multimedia CoProcessor. Hỗ trợ Open GL ES 2.0, tăng tốc phần cứng OpenVG, và bộ giải mã 1080p30 H.264.  RAM: 512MB SDRAM.  Thẻ nhớ: sử dụng MicroSD.  Kích thước 85 × 56 × 17mm.  Nguồn: micro USB 5V, 2A.5 Các kết nối:  Ethernet: Cổng mạng Ethernet 10100Mbps.  Video: HDMI hỗ trợ phiên bản 1.31.4 và Composite RCA (PAL và NTSC).  Audio: Cổng ra 3.5 và HDMI.  USB: 4 cổng USB 2.0.  GPIO: 40 chân.  Camera: Connector 15pin MIPI Camera Serial Interface (CSI2).  Display: Connector Display Serial Interface (DSI).  Memory Card Slot: MicroSD. Hình 2.2 Sơ đồ chân và phần cứng Rasperry Pi6 2.1.3. Phần mềm Raspberry Pi có rất nhiều hệ điều hành hỗ trợ như: Raspbian, Ubuntu MATE, Snappy Ubuntu Core, Windows 10 IoT Core, OSMC, LibbreELLECT, PiNet, RISC OS. Trong đó Raspbian là hệ điều hành chính thức của Raspberry Pi Foundation. Raspbian là hệ điều hành miễn phí, dựa trên Debian, một biến thể của Linux, được tối ưu cho phần cứng Raspberry Pi. Raspbian dễ sử dụng, tương thích với mọi phiên bản của Raspberry Pi và được hỗ trợ bởi cộng đồng thế giới. Raspbian có 2 giao diện: giao diện dòng lệnh (text console) và giao diện đồ họa (GUI). Với giao diện dòng lệnh, người dùng điều khiển bằng các câu lệnh. Ví dụ: mkdir (tạo thư mục). Hình 2.3 Giao diện dòng lệnh Với giao diện đồ họa, cũng như đa số các phiên bản Linux khác, Raspbian sử dụng Xserver11 làm server đồ họa và LXDE làm client. LXDE là một client đồ họa nhẹ, tiêu tốn ít CPU, RAM, cho phép người dùng điều khiển bằng bàn phím, chuột. Hình 2.4 Giao diện đồ họa7 2.2. Cảm biến nhiệt độ, độ ẩm DHT11 2.2.1. Giới thiệu DHT11 là cảm biến nhiệt độ và độ ẩm thay thế cho SHT1x vì giá thành rẻ, hoạt động ổn định, chống nhiễu mạnh, khoảng cách truyền tín hiệu lớn, dành cho những nơi không yêu cầu cao về độ chính xác. 2.2.2. Thông số kỹ thuật  Điện áp hoạt động: 3.55.5V.  Phạm vi đo nhiệt độ: 050oC.  Độ chính xác nhiệt độ: ±2oC .  Phạm vi đo độ ẩm: 2090%.  Độ chính xác độ ẩm: ±5%.  Có 4 chân: VCC, DATA, NC, GND. Hình 2.5 Sơ đồ chân DHT11 2.2.3. Nguyên lí hoạt động DHT11 sử dụng chuẩn giao tiếp 1 dây: MCU điều khiển, đọc dữ liệu từ DHT11 bằng 1 chân duy nhất (DATA). Chân này được kéo lên bởi 1 điện trở khoảng 5kΩ. Hình 2.6 Sơ đồ kết nối DHT11 và MCU Dữ liệu từ DHT11 gồm 40 bit: 8 bit giá trị phần nguyên độ ẩm, 8 bit giá trị phần thập phân độ ẩm, 8 bit giá trị phần nguyên nhiệt độ, 8 bit giá trị phần thập phân nhiệt độ và 8 bit kiểm tra chẵn lẻ. Ví dụ 1: 40 bit dữ liệu nhận được là: 0011 0101 0000 0000 0001 1000 0000 0000 0100 1101 High humidity Low humidity High temp Low temp Parity bit 00110101+00000000+00011000+00000000=01001101  Dữ liệu nhận được chính xác.8 Độ ẩm: 0011 0101 = 35H = 53% Nhiệt độ: 0001 1000 = 18H = 24oC Ví dụ 2: 40 bit dữ liệu nhận được là 0011 0101 0000 0000 0001 1000 0000 0000 0100 1001 High humidity Low humidity High temp Low temp Parity bit 00110101+00000000+00011000+00000000=01001101≠01001001  Dữ liệu nhận được không chính xác. Khi MCU bắt đầu gửi tín hiệu mức thấp, DHT11 chuyển từ chế độ công suất thấp sang chế độ công suất cao. Khi nhận được tín hiệu mức cao, DHT gửi một tín hiệu Response và lấy dữ liệu nhiệt độ, độ ẩm vừa đo được để gửi đi. Hình 2.7 Giản đồ thời gian DHT11 Các bước đọc ngoại vi:  Bước 1: sau khi DHT11 bật nguồn, dữ liệu nhiệt độ và độ ẩm được ghi lại, chân DATA được kéo lên mức cao, được thiết lập là ngõ vào của MCU. Lúc này, MCU có thể giao tiếp với DHT11.  Bước 2: chân IO của MCU được thiết lập là chân ngõ ra, tạo tín hiệu Start bằng cách kéo chân DATA xuống mức thấp trong khoảng thời gian >18ms. Sau đó, chân IO của MCU được thiết lập là chân ngõ vào, đợi tín hiệu response từ DHT11. Hình 2.8 Tín hiệu Start  Bước 3: sau khoảng thời gian 2040µs, DHT11 sẽ đưa chân DATA xuống thấp. Sau 40µs mà MCU không nhận được tín hiệu mức thấp từ DHT11 thì sẽ không giao tiếp được. DHT11 tạo tín hiệu Response bằng cách đưa chân DATA xuống thấp trong 80µs rồi đưa lên cao trong 80µs. Nếu nhận được tín hiệu Response, MCU có thể bắt đầu đọc dữ liệu.9 Hình 2.9 Tín hiệu response  Bước 4: DHT11 gửi 40 bit dữ liệu. Bit 0: ở mức thấp 50µs rồi lên mức cao trong khoảng 2628µs. Bit 1: ở mức thấp 50µs rồi lên mức cao trong 70µs (hình 2.7). Tín hiệu kết thúc: DHT11 để ngõ ra ở mức thấp 50ms sau gửi xong 40 bit dữ liệu. Chân DATA chuyển sang trạng thái ngõ vào vì điện trở kéo lên. DHT11 tiếp tục đo nhiệt độ, độ ẩm, đợi tín hiệu từ MCU. Đồ án sử dụng module DHT11 đã ra chân. Hình 2.10 Module DHT11 2.3. Cảm biến độ ẩm đất 2.3.1. Giới thiệu Đây là một cảm biến nước đơn giản có thể dùng để phát hiện độ ẩm đất. Khi độ ẩm thấp, đầu ra ở mức cao. Khi độ ẩm cao, đầu ra ở mức thấp. Vì vậy có thể sử dụng cảm biến này để chế tạo thiết bị tưới cây tự động. Hình 2.11 Module cảm biến độ ẩm đất 2.3.2. Thông số kỹ thuật  Điện áp hoạt động: 3.35V.  Độ nhạy của cảm biến có thể được điều chỉnh chiết áp màu xanh dương.  Có 2 ngõ ra: đầu ra số AO, đầu ra tương tự DO chính xác hơn.  Kích thước PCB: 3cm x 1.6cm.  Có indicator báo nguồn và indicator báo thay đổi ngõ ra số.  Có lỗ cố định để dễ dàng lắp đặt.10  Chip so sánh LM393  Có 4 dây: VCC (3.35V), GND, AO , DO. 2.4. Cảm biến ánh sáng quang trở 2.4.1. Giới thiệu Quang trở là điện trở có trị số giảm khi được chiếu sáng. Hoạt động dựa theo hiện tượng quang điện: khi có photon có năng lượng đủ lớn đập vào sẽ làm electron bật ra khỏi phân tử, làm giảm điện trở. Mức độ dẫn điện phụ thuộc vào số photon hấp thụ. Điện trở tối thường trên 1MΩ và giảm xuống có thể dưới 100Ω khi được chiếu sáng mạnh. 2.4.2. Thông số kỹ thuật  Điện áp cực đại: 250VDC.  Công suất cực đại: 200mW.  Giá trị đỉnh Spectrum: 540nm.  Kháng ánh sáng (10lux): 1020KΩ.  Kháng tối: 2MΩ.  Nhiệt độ hoạt động: từ 30 đến 70oC.  Thời gian đáp ứng: 30ms. Đồ án sử dụng module quang trở đã ra chân. Hình 2.12 Module quang trở 2.5. MCP3008 2.5.1. Giới thiệu Raspberry Pi không có ADC nên không thể đọc trực tiếp tín hiệu tương tự từ cảm biến độ ẩm đất và cảm biến ánh sáng. MCP3008 là IC chuyển đổi tương tự sang số là dạng mà Raspberry Pi có thể hiểu được. Hình 2.13 MCP300811 2.5.2. Thông số kỹ thuật  Điện áp hoạt động: 2.75.5V.  Dòng điện: 500µA.  8 kênh (CH07).  Nhiệt độ hoạt động: từ 40 tới 85oC.  Giao tiếp SPI. Hình 2.14 Sơ đồ chân MCP3008 2.6. LCD 2.6.1. Giới thiệu LCD có khả năng hiển thị kí tự đa dạng, trực quan, nhiều giao thức giao tiếp, tốn ít tài nguyên hệ thống và giá thành rẻ. LCD có nhiều dạng, phân biệt theo kích thước. Đồ án sử dụng LCD20x4 để có thể hiển thị đầy đủ các thông số. Hình 2.15 LCD20x4 2.6.2. Thông số kỹ thuật  4 hàng, mỗi hàng 20 kí tự.  5x10 điểm ảnh.  Chip điều khiển HD44780.  16 chân giao tiếp. Hình 2.16 Sơ đồ chân LCD12 Bảng 2.1 Các chân của LCD Thứ tự Tên chân InputOutput Chức năng tín hiệu 1 Vss Power GND 2 Vdd Power +5V 3 Vo Analog Điều chỉnh tương phản 4 RS Input Chọn thanh ghi 5 RW Input Chọn chế độ đọcghi 6 E Input Cho phép dạng xung chốt 7 D0 IO Chân dữ liệu LBS 8 D1 IO Chân dữ liệu 9 D2 IO Chân dữ liệu 10 D3 IO Chân dữ liệu 11 D4 IO Chân dữ liệu 12 D5 IO Chân dữ liệu 13 D6 IO Chân dữ liệu 14 D7 IO Chân dữ liệu MBS 15 A Input Blacklight Anode 16 K Input Blacklight Cathode Chip điều khiển HD44780 có 2 thanh ghi 8bit là thanh ghi lệnh IR và thanh ghi dữ liệu DR. IR chứa mã lệnh điều khiển LCD, chỉ có thể ghi. DR chứa dữ liệu từ bên ngoài gửi đến hoặc bên trong bộ nhớ LCD. Cả 2 thanh ghi đều được nối với các đường dữ liệu D0D7 và được lựa chọn tùy theo các chân điều khiển RS, RW. HD44780 có 3 loại bộ nhớ: DDRAM chứa dữ liệu cần hiển thị, CGROM chứa định dạng ký tự và CGRAM chứa các định dạng ký tự do người dùng cài đặt. DDRAM là RAM chứa dữ liệu hiển thị. Nó có thể chứa tối đa 80 ký tự 8 bit. Các ô nhớ không dùng để hiển thị của DDRAM có thể dùng vào mục đích khác. Hình 2.17 Địa chỉ ký tự LCD20x4 CGROM chứa các ký tự đã được định dạng sẵn: 208 ký tự 5x8 và 32 ký tự 5x10 điểm ảnh. Người sử dụng không thể thay đổi trên CGROM.13 2.7. Bàn phím ma trận 2.7.1. Giới thiệu Bàn phím ma trận (keypad) là một thiết bị nhập chứa các nút nhấn cho phép người dùng nhập các chữ số, chữ cái hoặc ký hiệu vào bộ điều khiển. Keypad không chứa tất cả bảng mã ASCII như keyboard và vì thế keypad thường được tìm thấy trong các thiết bị chuyên dụng. Đồ án sử dụng bàn phím ma trận 4x4. Hình 2.18 Bàn phím ma trận 4x4 2.7.2. Nguyên lí hoạt động  Bàn phím ma trận 4x4 có 16 nút nhấn nhưng chỉ cần 8 chân GPIO để giao tiếp: 4 chân hàng ngang và 4 chân hàng dọc.  Sử dụng phương pháp quét để xác định phím được nhấn: với mỗi hàng Ri (i=1,2,3,4) cấp cực âm (0V) cho hàng Ri, kiểm tra điện áp ở chân Cj (j=1,2,3,4) bất kì. Nếu Cj ở mức thấp là phím đang được nhấn, ngược lại chưa được nhấn. Hình 2.19 Sơ đồ nguyên lý bàn phím ma trận 4x4 2.8. Giao tiếp SPI 2.8.1. Giới thiệu SPI là một chuẩn đồng bộ nối tiếp để truyền dữ liệu ở chế độ song công toàn phần, do Motorola thiết kế nhằm đảm bảo sự liên hợp giữa các vi điều khiển và thiết bị ngoại vi.14 Giao tiếp SPI sử dụng bốn đường giao tiếp:  MOSI (Master Out Slave In): cổng ra của bên chủ động, cổng vào của bên bị động. MOSI của Master và các Slave được nối trực tiếp với nhau.  MISO (Master In Slave Out): cổng vào của bên chủ động, cổng ra của bên bị động. MISO của Master và các Slave được nối trực tiếp với nhau.  SCLK (Serial Clock): xung giữ nhịp cho giao tiếp SPI. Vì SPI truyền đồng bộ nên cần xung giữ nhịp. Mỗi nhịp báo hiệu 1 bit đến hoặc đi, giúp hạn chế lỗi, làm tăng tốc độ truyền. Xung nhịp chỉ được tạo ra bởi Master.  SS (Slave Select): chọn Slave để giao tiếp. Đường SS ở mức cao khi không chọn, mức thấp khi Slave được chọn. Chỉ có 1 đường SS trên mỗi Slave nhưng có thể có nhiều đường SS trên Master. Hình 2.20 Giao tiếp SPI giữa Master và 3 Slave độc lập 2.8.2. Nguyên lí hoạt động Một Master có thể giao tiếp SPI với một hoặc nhiều Slave. Nếu chỉ có một Slave, SS có thể chốt ở mức thấp. Một số Slave yêu cầu phải có cạnh xuống mới hoạt động (ví dụ: Maxim MAX1242 ADC). Nếu có nhiều Slave, mỗi tín hiệu SS sẽ tương ứng với một Slave. Để bắt đầu quá trình giao tiếp, bus master cấu hình xung clock, sử dụng tần số mà Slave được hỗ trợ, thường lên đến vài MHz. Master chọn Slave có SS ở mức thấp để giao tiếp. Cứ mỗi xung nhịp do Master tạo ra trên SCLK, một bit trong thanh ghi dữ của Master được truyền qua Slave trên đường MOSI, đồng thời một bit trong thanh ghi dữ liệu của Slave cũng được truyền qua Master trên đường MISO.15 Hình 2.21 Nguyên lí hoạt động của chuẩn SPI 2.9. Giao tiếp I2C 2.9.1. Giới thiệu I2C (InterIntegrated Circuit) là chuẩn nối tiếp 2 dây được phát minh bởi Philips Semiconductors, được chuẩn hóa và sử dụng rộng rãi trong các module truyền thông nối tiếp của vi mạch tích hợp ngày nay. 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ớ (RAM tĩnh, EEPROM…), ADC, DAC, IC điểu khiển LCD… I2C sử dụng 2 đường truyền tín hiệu: đường xung nhịp đồng hồ SCL (Serial Data Line) do Master phát ra và đường dữ liệu SDA (Serial Clock Line) truyền được cả 2 hướng. SCL và SDA được kéo lên nguồn bằng một điện trở khoảng 4.7kΩ. Điện áp thường được sử dụng là 3.3V và 5V. I2C sử dụng 7 bit hoặc 10 bit để định địa chỉ. Tốc độ bus I2C là 100kbits ở chế độ chuẩn và 10kbits ở chế độ tốc độ thấp. Hình 2.22 Sơ đồ kết nối I2C16 2.9.2. Quá trình truyền dữ liệu Thiết bị A (Master) xác định địa chỉ của thiết bị B (Slave), quyết định đọc hay ghi vào thiết bị B. Thiết bị A gửi liệu tới thiết bị B. Thiết bị A kết thúc quá trình truyền dữ liệu. Khi A muốn nhận dữ liệu từ B, quá trình diễn ra tương tự, chỉ khác A sẽ nhận dữ liệu từ B. 2.9.3. So sánh SPI, I2C SPI và I2C đều truyền được ở khoảng cách ngắn, truyền nối tiếp. Cả 2 giao thức thường được sử dụng trong các thiết bị điện tử như điện thoại thông minh, ti vi, máy tính xách tay để điều khiển thiết bị ngoại vi như chip quản lí năng lượng, thiết bị đầu vào và DAC. Bảng 2.2 So sánh sự khác nhau giữa SPI và I2C SPI I2C Tổng quan Có thể có nhiều Master Chỉ cho phép 1 Master Master điều khiển Clock cho tất cả Slave Slave có thể làm thay đổi Clock Chế độ truyền Song công toàn phần Bán song công Truyền nhận dữ liệu Master tạo xung cạnh xuống để bắt đầu Tạo điều kiện bắt đầu Master tạo xung cạnh lên để kết thúc Tạo điều kiện kết thúc Để đọc dữ liệu chỉ cần 1 tiến trình: gửi địa chỉ, số thanh ghi và byte giả. Để đọc dữ liệu cần 2 tiến trình: gửi địa chỉ. số thanh ghi sau đó gửi dữ liệu 2.10. Python Python là ngôn ngữ lập trình cấp cao cho lập trình đa mục đích (general purpose programming), được tạo ra bởi Guido van Rossum. Python tạo kiểu dữ liệu hoàn toàn tự động và dùng cơ chế cấp phát bộ nhớ động, tương tự như Perl, Ruby, Scheme, Smalltalk và Tcl. Python có hình thức, cấu trúc đơn giản, thuận tiện cho lập trình và có cộng đồng hỗ trợ đông đảo. 2.10.1. Module Thread Chạy đa luồng tương tự như chạy nhiều chương trình đồng thời, nhưng có những lợi ích sau:17  Các luồng (thread) trong một tiến trình (process) sử dụng chung dữ liệu với luồng chính vì vậy có thể trao đổi dữ liệu và giao tiếp với nhau.  Các luồng không yêu cầu nhiều memory overhead, nên nhẹ hơn tiến trình. Mỗi luồng có bắt đầu, thực thi, kết thúc và một con trỏ để theo dõi vị trí. Một luồng có thể bị ngắt (interrupted). Một luồng có thể bị tạm dừng (sleeping) trong khi các luồng khác vẫn chạy. Python cung cấp module Thread và module Threading để lập trình đa luồng. Trong đó module Thread rất hiệu quả với đa luồng tầm thấp. Để bắt đầu một thread mới bằng module Thread, ta sử dụng cú pháp: Thread.start_new_thread(function, args, kwargs) Function: hàm được gọi, khi hàm trả về, luồng chấm dứt. Args: danh sách các biến. Kwargs: từ điển tùy chọn từ khóa của biến. 2.10.2. Module Request Python hỗ trợ chúng ta làm việc với HTTP request thông qua module urllib, urllib2 và Requests. Module Requests dễ sử dụng hơn so với 2 module còn lại với nhiều tính năng. Trong đó có 2 phương thức là get va post.  Đối với các request get, có thể truyền tham số qua params: import requests r=requests.get (URL, params={‘auto’: ‘on’})  Đối với các requests post, trình duyệt cho sever đó biết nó muốn gử i thông tin tới URL và sever đó cần đảm bảo dữ liệu đó được lưu trữ và là duy nhất: r=requests.post (URL, data = {‘auto’: ‘on’}) Khi post hoăc get requests đê ̣ ́n môt URL n ̣ ào đó thông tin trang se tr ̃ ả về trong môt đô ̣ ́i tương response ̣ sau đó chı̉ cần goi c ̣ ác thuôc t ̣ ı́nh để lấy thông tin cần thiết: r.json() 2.11. HTML 2.11.1. Giới thiệu HTML (HyperText Markup Language) là ngôn ngữ đánh dấu siêu văn bản, dùng để tạo ra các trang web. HTML bao gồm một tập hợp các thẻ dùng để:  Định nghĩa cấu trúc của trang web.  Định dạng nội dung của trang web.  Tạo các siêu liên kết để liên kết đến những trang web khác.  Chèn âm thanh, hình ảnh, video… vào trang web.18 2.11.2. Thẻ HTML Khi trình duyệt web đọc một tâp tin HTML, nó s ̣ ẽ tìm trong tâp tin đó các the ̣ ̉ hay những đoạn mã đặc biệt để biết cách hiển thị tâp tin H ̣ TML đó. vùng văn bản chịu tác động . Hình 2.23 Website viết bằng HTML Các tag HTML báo cho trình duyệt biết cách khi nào thì in đậm một dòng văn bản, in nghiêng, biến dòng văn bản thành một siêu liên kết tới các trang web khác, hiển thị ảnh… 2.11.3. Cấu trúc HTML Cấu trúc của môt file HTML đươ ̣ c c ̣ ấu tao b ̣ ở i các thẻ lồng ghép vào nhau. File HTML bao giờ cũng bắt đầu bằng thẻ và kết thúc bằng thẻ . Bên trong cặp thẻ ... là các cặp thẻ ... và ... là phần thân, tại đây có thể nhập vào các đoạn văn bản cùng các thẻ khác quy định về định dạng của trang. Để chú thích, tiện cho việc xem tag HTML hoặc cập nhật một trang web, chı̉ cần đặt chú thích vào giữa < và >. 2.12. PHP 2.12.1. Giới thiệu PHP là một ngôn ngữ lập trình kịch bản (scripting language) được chạy ở phía server nhằm sinh ra mã HTML trên client. Được sử dụng để quản lí nội dung động, cơ sở dữ liệu, session tracking thậm chí xây dựng toàn bộ các trang web thương mại điện tử. PHP được tích hợp với một số cơ sở dữ liệu phổ biến, bao gồm MySQL, PostgreSQL, Oracle, Sybase, Informix và Microsoft SQL Server. 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 độ cao.19 PHP chạy trên môi trường web server và lưu trữ dữ liệu thông qua hệ quản trị cơ sở dữ liệu. 2.12.2. Phương pháp hoạt động Khi người sử dụng gọi trang PHP, web server sẽ gọi PHP Engine để thông dịch trang PHP và trả kết quả cho người dùng. Hình 2.24 Phương thức hoạt động của PHP 2.12.3. Cú pháp PHP chỉ phân tích các đoạn mã nằm trong những dấu giới hạn của nó. Bất cứ mã nào nằm ngoài những dấu giới hạn đều được xuất trực tiếp, không thông qua xử lý của PHP. Các dấu giới hạn thường dùng là . Những dấu giới hạn sẽ ngăn cách mã PHP với những đoạn mã của các ngôn ngữ khác. Biến trong PHP được xác định bằng cách thêm vào trước một dấu và không cần xác định trước kiểu dữ liệu. Ví dụ: mode=‘auto’; PHP có 3 kiểu cú pháp chú thích cho 1 đoạn, và cho 1 dòng. Phát biểu echo là một câu lệnh PHP cho phép xuất văn bản. Ví dụ: xuat ra: auto 2.13. CSS CSS là một ngôn ngữ đươc s ̣ ử đung ̣ để đinh d ̣ ang l ̣ ai c ̣ ác thẻ HTML trên trang web. CSS đóng vai trò rất quan trọng trong xây dựng giao diện Website. Phương thức hoạt động của CSS là sẽ tìm dựa vào các vùng chọn, vùng chọn có thể là tên một thẻ HTML, tên một id, class hay nhiều kiểu khác. Sau đó sẽ áp dụng các thuộc tính cần thay đổi lên vùng chọn đó.20 Hình 2.25 Trướ c và sau khi sử dung CSS ̣ 2.14. Javascript JavaScript là một ngôn ngữ lập trình kịch bản được dùng để tạo các script ở client và server. Các script ở client được thực thi tại trình duyệt, còn script ở server được thực hiện trên server. Bên cạnh HTML và CSS, JavaScript là một trong ba công nghệ cốt lõi của sản xuất nội dung web. JavaScript được sử dụng để tạo ra tính tương tác và cung cấp các chương trình trực tuyến, bao gồm video game. Phần lớn các trang web đều sử dụng JavaScript và tất cả trình duyệt web hiện đại đều hỗ trợ mà không cần cài đặt thêm phần mềm. JavaScript được sử dụng để:  Tương tác với người dùng: viết các mã để phản hồi các sự kiện. Các sự kiêṇ này sẽ có thể phát sinh bởi người dùng, nhấp chuột hay được phát sinh từ hệ thống  Thay đổi nội dung động: mã JavaScript có thể dùng để thay đổi nội dung và vị trí các phần tử một cách động trên một trang nhằm đáp lại sự tương tác với người dùng.  Kiểm tra tính hợp lệ dữ liệu: viết mã nhằm kiểm tra tính hợp lệ của dữ liệu do người dùng nhập vào trước khi nó được gửi lên web server để xử lý.  Nhúng các câu lệnh trực tiếp vào trong tài liệu bằng cách sử dụng thẻ Hình 2.26 Trang web có Javascript trước và sau khi nhấp chuột21 2.15. SQL SQL (Structured Query Language) hay còn goi l ̣ à ngôn ngữ truy vấn mang tı́nh cấu trúc, là môt lo ̣ ai ngôn ng ̣ ữ máy tı́nh phổ biến để tao, s ̣ ử a, và lấy dữ liêu t ̣ ừ môt h ̣ ê qu ̣ ản tri ̣cơ sở dữ liêu.SQL l ̣ à môt tiêu chu ̣ ẩn ANSIISO. Lấy dữ liêu: ̣ để lấy dữ liêu th ̣ ı̀ sử dung t ̣ ừ khóa SELECT và các từ khóa liên quan đến SELECT như sau:  FROM dùng để chỉ định dữ liệu sẽ được lấy ra từ những bảng nào, và các bảng đó quan hệ với nhau như thế nào.  WHERE dùng để xác định những bản ghi nào sẽ được lấy ra, hoặc áp dụng với GROUP BY.  GROUP BY dùng để kết hợp các bản ghi có những giá trị liên quan với nhau thành các phần tử của một tập hợp nhỏ hơn các bản ghi.  HAVING dùng để xác định những bản ghi nào, là kết quả từ từ khóa GROUP BY, sẽ được lấy ra.  ORDER BY dùng để xác định dữ liệu lấy ra sẽ được sắp xếp theo những cột nào. Sử a dữ liêu: ̣  INSERT dùng để thêm dữ liệu vào một bảng đã tồn tại.  UPDATE dùng để thay đổi giá trị của một tập hợp các bản ghi trong một bảng.  MERGE dùng để kết hợp dữ liệu của nhiều bảng. Nó được dùng như việc kết hợp giữa hai phần tử INSERT và UPDATE.  DELETE: xóa những bản ghi tồn tại trong một bảng.  TRUNCATE: xóa toàn bộ dữ liệu trong một bàng. 2.16. Jquery jQuery là một thư viện kiểu mới của JavaScript, được tạo bởi John Resig vào năm 2006 với một phương châm Write less, do more Viết ít hơn, làm nhiều hơn. jQuery làm đơn giản hóa việc truyền tải HTML, xử lý sự kiện, tạo hiệu ứng động và tương tác Ajax. Với jQuery, khái niệm Rapid Web Development đã không còn quá xa lạ. jQuery là một bộ công cụ tiện ích JavaScript làm đơn giản hóa các tác vụ đa dạng với việc viết ít code hơn. Một số tính năng quan trọng được hỗ trợ bởi jQuery:  Thao tác DOM: jQuery giúp dễ dàng lựa chọn các phần tử DOM để traverse (duyệt) một cách dễ dàng như sử dụng CSS, và chỉnh sửa nội dung của chúng bởi sử dụng phương tiện Selector mã nguồn mở, được gọi là Sizzle.22  Xử lý sự kiện: jQuery giúp tương tác với người dùng tốt hơn bằng việc xử lý các sự kiện đa dạng mà không làm cho HTML code rối tung với các Event Handler.  Hỗ trợ AJAX: jQuery giúp phát triển một site giàu tính năng và phản hồi tốt bởi sử dụng công nghệ AJAX.  Hiệu ứng: jQuery đi kèm với rất nhiều các hiệu ứng đa dạng và đẹp mắt.  Gọn nhẹ: jQuery là thư viện gọn nhẹ, kích cỡ khoảng 19KB. 2.17. Ajax AJAX là một kỹ thuật mới để tạo các ứng dụng web giàu tính tương tác, nhanh hơn và mượt mà hơn với sự giúp đỡ của XML, HTML, CSS và JavaScript. AJAX cho phép các trang web được cập nhật một cách không đồng bộ bằng cách trao đổi các lượng dữ liệu nhỏ với server. Tức là AJAX giúp cập nhật các phần nhỏ trong trang mà không cần tải lại toàn bộ trang. Các ứng dụng web truyền thống (trước khi có AJAX) truyền tải thông tin tới và từ server một cách không đồng bộ. Khi điền thông tin vào một form, nhấn nút submit và sau đó sẽ được hướng tới một trang khác v

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 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN VƯỜN QUA MẠNG INTERNET SVTH : MSSV : SVTH : MSSV : Khoá : Ngành : GVHD : ĐẶNG QUANG ĐĨNH 13119070 NGUYỄN TUẤN SƠN 13119131 2013 CÔNG NGHỆ KỸ THUẬT MÁY TÍNH THS LÊ MINH Tp Hồ Chı́ Minh, tháng năm 2017 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 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐIỀU KHIỂN VƯỜN QUA MẠNG INTERNET SVTH : MSSV : SVTH : MSSV : Khoá : Ngành : GVHD : ĐẶNG QUANG ĐĨNH 13119070 NGUYỄN TUẤN SƠN 13119131 2013 CƠNG NGHỆ KỸ THUẬT MÁY TÍNH THS LÊ MINH Tp Hồ Chı́ Minh, tháng năm 2017 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc *** -Tp Hồ Chí Minh, ngày tháng năm 2017 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Đặng Quang Đĩnh Ngành: Cơng nghệ kỹ thuật máy tính Họ tên sinh viên: Nguyễn Tuấn Sơn Ngành: Công nghệ kỹ thuật máy tính MSSV: 13119070 Lớp: 13119CL1 ĐT: 0989690434 MSSV: 13119131 Lớp: 13119CL1 ĐT: 0968808195 Giảng viên hướng dẫn: Th.s Lê Minh Ngày nhận đề tài: 24/2/2017 Ngày nộp đề tài: 1/3/2017 Tên đề tài: Thiết kế thi công hệ thống điều khiển vườn qua mạng Internet Các số liệu, tài liệu ban đầu: Kiến thức môn mạch điện, điện tử bản, hệ thống nhúng, kỹ thuật truyền số liệu Nội dung thực đề tài: Lập trình Raspberry Pi đọc cảm biến, điều khiển thiết bị trực tiếp bàn phím từ xa thơng qua mạng Internet Xây dựng Website tương tác với người sử dụng, lưu trữ liệu database Sản phẩm: Website, thiết bị điều khiển, mơ hình vườn TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN i CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh Phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên: Đặng Quang Đĩnh……………………………………MSSV:13119070 Ngành: Công nghệ kỹ thuật máy tính Họ tên Sinh viên: Nguyễn Tuấn Sơn…………………………………….MSSV:13119131 Ngành: Cơng nghệ kỹ thuật máy tính Tên đề tài: Thiết kế thi công hệ thống điều khiển vườn qua mạng Internet Họ tên Giáo viên hướng dẫn: Lê Minh NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghi ̣cho bảo vệ hay không? Đánh giá loại: Điểm:……………….(Bằ ng chữ: .) Tp Hồ Chí Minh, ngày tháng năm 2017 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) ii CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – 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: Đặng Quang Đĩnh………………………………….MSSV: 13119070 Ngành: Cơng nghệ kỹ thuật máy tính Họ và tên Sinh viên: Nguyễn Tuấn Sơn…………………………………MSSV: 13119131 Ngành: Công nghệ kỹ thuật máy tính Tên đề tài: Thiết kế thi công hệ thống điều khiển vườn qua mạng Internet Họ và tên Giáo viên phản biện: …………………………………………………………… NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Ưu điểm: ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Khuyết điểm: ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Đề nghi ̣cho bảo vệ hay không? ……………………………………………………………………………………………… Đánh giá loại: ……………………………………………………………………………………………… Điểm: ……………… (Bằ ng chữ: ………………………………………………………) Tp Hồ Chí Minh, ngày tháng năm 2017 Giáo viên phản biện (Ký & ghi rõ họ tên) iii LỜI CẢM ƠN Đồ án “Thiết kế thi công hệ thống điều khiển vườn qua mạng Internet” hồn thành khơng nỗ lực thành viên nhóm mà cịn đóng góp trực tiếp, gián tiếp thầy cô, bạn bè trường Đại học Sư phạm kỹ thuật Nhóm thực đồ án xin gửi đến thầy cô khoa Đào tạo Chất lượng cao lời chúc sức khỏe lời cảm ơn sâu sắc Nhờ quan tâm, bảo tận tình chu đáo thầy mà thành viên nhóm có kiến thức tảng, chuyên sâu kinh nghiệm q báu để hồn thành tốt đồ án tốt nghiệp Đặc biệt, nhóm xin gửi lời cảm ơn chân thành tới Th.s Lê Minh quan tâm giúp đỡ, hướng dẫn suốt trình thực Trong quãng thời gian làm việc với thầy, thành viên khơng hướng dẫn tận tình, giúp đỡ gặp khó khăn mà cịn học hỏi thái độ làm việc nghiêm túc, chuyên nghiệp hiệu Cảm ơn bạn bè, anh chị khóa trước tận tình giúp đỡ khó khăn, trăn trở trình thực đồ án Và cuối cùng, khơng thể khơng cảm ơn gia đình, người thân đồng hành, động viên Đặc biệt cha mẹ, người nuôi nấng, dạy dỗ, tạo điều kiện thuận lợi vật chất lẫn tinh thần để hồn thành đồ án cuối cùng, chuẩn bị hành trang bước vào tương lai iv TÓM TẮT Mạng lưới vạn vật kết nối Internet làng sóng thứ ba lên phát triển Internet Internet of Things (IoT) dự kiến có ảnh hưởng mạnh mẽ đến sản phẩm tiêu dùng, kinh doanh nhiều nữa, giai đoạn khởi đầu Tiềm áp dụng IoT lớn cho hầu hết lĩnh vực kinh doanh, công nghiệp, sản xuất, hàng tiêu dùng, chuỗi cung ứng… Lĩnh vực mà IoT sử dụng rộng Đồ án “Thiết kế thi công hệ thống điều khiển vườn qua mạng Internet” áp dụng cụ thể lên vườn rau Tưới tiêu, điều khiển ánh sáng thủ cơng gây thừa thiếu, không kịp thời gặp sai sót Đồ án trình bày ứng dụng tưới nước chiếu sáng cảm biến máy tính nhúng Phần cứng hệ thống Raspberry Pi (máy khách) thu thập xử lý liệu từ cảm biến theo thời gian thực Dữ liệu trạng thái thiết bị gửi tới máy chủ qua mạng Internet lưu lại sở liệu Hệ thống theo dõi thời gian thực thay đổi nhiệt độ, độ ẩm khơng khí, độ ẩm đất, cường độ sáng trạng thái thiết bị Có chế độ điều khiển thiết bị Chế độ tự động dựa vào liệu cảm biến khoảng lí tưởng để tự động tưới nước, chiếu sáng giúp sử dụng hiệu nước điện Chế độ tay cho phép người dùng thay đổi tất cài đặt: bật tắt thiết bị, thay đổi khoảng lí tưởng, thay đổi chế độ hoạt động v ABSTRACT The Internet of Things is emerging as the third wave in the development of the Internet Internet of things (IoT) is expected to have a massive impact on consumer products, business and wider culture, but these are still early days Given its potential for very wide applicability to almost all verticals and aspects of business, industries, manufacturing, consumer goods, supply chains, etc IOT as a whole is very broad area Project “Design and construction of garden control system via Internet” focuses specifically to its adoption to our gardens For artificial irrigation and lighting in excess or deficiency, not timely and other shortcomings, this project expounds the application in garden watering and lighting system based on wire sensors and single board computer The hardware of the system adopts Raspberry Pi as a client, by the real-time acquisition and processing of data in wire sensors The sensors data and the status of devices by Internet way are sent to server and saved to Database The system can real-time monitor the air temperature, air humidity, soil humidity, lux changes and devices status There are two modes of controlling devices Automatic mode based on garden’s ideal range and received data from the sensors to automatic watering, lighting, efficient use of water resources and electricity Manual mode gives the user full control of all settings: turn devices on or off, change ideal ranges, change mode vi MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ii 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 ABSTRACT vi MỤC LỤC vii DANH MỤC CÁC BẢNG BIỂU xii DANH SÁCH CÁC HÌNH ẢNH, BIỂU ĐỒ xiii Chương TỔNG QUAN 1.1 Giới thiệu tình hình nghiên cứu 1.2 Tính cấp thiết đề tài .1 1.3 Mục tiêu nghiên cứu 1.4 Nhiệm vụ nghiên cứu 1.5 Tổng quan đề tài 1.6 Phương pháp nghiên cứu .2 1.7 Đối tượng, phạm vi nghiên cứu .2 1.8 Bố cục đồ án Chương CƠ SỞ LÝ THUYẾT .4 2.1 Raspberry Pi 2.1.1 Giới thiệu .4 2.1.2 Phần cứng 2.1.3 Phần mềm 2.2 Cảm biến nhiệt độ, độ ẩm DHT11 2.2.1 Giới thiệu .7 2.2.2 Thông số kỹ thuật vii 2.2.3 Nguyên lí hoạt động 2.3 Cảm biến độ ẩm đất .9 2.3.1 Giới thiệu .9 2.3.2 Thông số kỹ thuật 2.4 Cảm biến ánh sáng quang trở 10 2.4.1 Giới thiệu 10 2.4.2 Thông số kỹ thuật 10 2.5 MCP3008 .10 2.5.1 Giới thiệu 10 2.5.2 Thông số kỹ thuật 11 2.6 LCD .11 2.6.1 Giới thiệu 11 2.6.2 Thông số kỹ thuật 11 2.7 Bàn phím ma trận 13 2.7.1 Giới thiệu 13 2.7.2 Nguyên lí hoạt động 13 2.8 Giao tiếp SPI 13 2.8.1 Giới thiệu 13 2.8.2 Nguyên lí hoạt động 14 2.9 Giao tiếp I2C 15 2.9.1 Giới thiệu 15 2.9.2 Quá trình truyền liệu 16 2.9.3 So sánh SPI, I2C 16 2.10 Python .16 2.10.1 Module Thread 16 2.10.2 Module Request 17 2.11 HTML .17 2.11.1 Giới thiệu 17 viii Khi cài đặt, nhấn C để xóa X # quay lại mode settings để cài đặt giá trị khác Nhấn * để hoàn tất cài đặt Nếu cài đặt thành công, LCD hiển thị ‘Done’ Nếu có lỗi phát sinh, LCD hiển thị ‘Ooops something went wrong’ Các khối cài đặt giá trị ngưỡng 4, 5, có lưu đồ tương tự khối Khối xử lý bàn phím người dùng nhấn phím D, đọc liệu từ server, hiển thị giá trị ngưỡng BEGIN Read minLux, maxLux, minAirTemp, maxAirTemp, minAirHum, maxAirHum, minSoilHum, maxSoil Hum from Server Display END Hình 3.19 Lưu đồ khối Khối hiển thị lên LCD hướng dẫn sử dụng bàn phím để điều khiển Khối kiểm tra định kỳ sau thời gian không kết nối với Server (connect=off) tự động kết nối lại BEGIN SLEEP T connect=on F get Data from Server success T connect=on F END Hình 3.20 Lưu đồ khối 40 3.2.4 Thiết kế Server Server dùng để xử lý truy cập gửi từ client Khi có yêu cầu từ phía clien (Raspberry Pi Website), server Các yêu cầu từ Raspberry Pi lưu sở liệu Các yêu cầu từ Website lưu tập tin Json Raspberry Pi sử dụng thư viện Requests để giao tiếp với server Dữ liệu cảm biến, trạng thái thiết bị tùy chỉnh người dùng post lên server xử lý PHP, cập nhập vào sở liệu Các yêu cầu điều khiển, cài đặt Website server xử lý, thay đổi tập tin Json (JavaScript Object Noattion) Raspberry Pi dựa vào thông tin tập tin mà điều khiển thiết bị Requests.post PHP Raspberry Pi Requests.get Json File SERVER DATABASE Hình 3.21 Hoạt động server Cơ sở liệu gồm bảng: users, registers, smartgarden Bảng 3.7 Bảng lưu thông tin người dùng Thứ tự Tên trường Id Username Password Email Permission Kiểu liệu tinyint varchar varchar varchar varchar Chức Số lượng người dùng Tên người dùng Mật người dùng Địa email Quyền truy cập Ghi Tự động tăng Khơng trùng Mã hóa SHA256 Khơng trùng Admin User Bảng 3.8 Bảng lưu thông tin người đăng ký Thứ tự Tên trường Id Username Password Email Kiểu liệu tinyint varchar varchar varchar Chức Số lượng người dùng Tên người đăng ký Mật đăng ký Địa email Ghi Tự động tăng Khơng trùng Mã hóa SHA256 Không trùng 41 Bảng 3.9 Bảng lưu thông tin khu vườn Thứ tự 10 11 12 13 14 15 Tên trường automatic light pump airTemp airHum soilHum lux minAirTemp maxAirTemp minAirHum maxAirHum minSoilHum maxSoilHum minLux maxLux Kiểu liệu varchar varchar varchar tinyint tinyint tinyint tinyint tinyint tinyint tinyint tinyint tinyint tinyint tinyint tinyint Chức Chế độ hoạt động Trạng thái đèn Trạng thái bơm Nhiệt độ Độ ẩm khơng khí Độ ẩm đất Cường độ sáng Nhiệt độ tối thiểu Nhiệt độ tối đa Độ ẩm khơng khí tối thiểu Độ ẩm khơng khí tối đa Độ ẩm đất tối thiểu Độ ẩm đất tối đa Cường độ sáng tối thiểu Cường độ sáng tối đa Ghi on off on off on off 0-100 0-100 0-100 0-100 0-99 1-100 0-99 1-100 0-99 1-100 0-99 1-100 3.2.5 Thiết kế Website Website tập tin HTML truy nhập dùng phương thức HTTP, viết dựa CSS, hiệu ứng Javascript, cập nhập thông tin sở liệu PHP Website sử dụng Bootstrap framework CSS Twitter phát triển, phù hợp với tất kích thước hình, giao diện đẹp Website sử dụng Font Awesome hệ thống font thiết kế dạng mã nguồn mở Bên cạnh Website cịn sử dụng Circlful plugin Jquery cho phép hiển thị số liệu thống kê vòng trịn, phù hợp cho việc hiển thị thơng số khu vườn Website có trang chính: trang đăng nhập (Login), trang đăng ký (Register), trang chủ (Home), trang biểu đồ (Chart), trang cài đặt (Settings), trang giới thiệu (About us) trang quản lí thành viên (Members) Trang đăng nhập tiếp nhận thông tin tên người dùng mật khẩu, kiểm tra bảng liệu Users, liệu trùng khớp cho phép người dùng vào trang chủ, tạo session lưu lại tên người dùng (userName) quyền truy cập (permission) máy chủ Muốn truy cập trang khác, yêu cầu phải đăng nhập 42 Trang đăng ký tiếp nhận thông tin tên người, email mật người đăng ký Kiểm tra tên, email có bị trùng với người đăng ký trước người sử dụng Nếu khơng thông tin lưu lại bảng Registers Trang chủ hiển thị thông số khu vườn (nhiệt độ, độ ẩm khơng khí, độ ẩm đất, cường độ sáng, giới hạn cài đặt, trạng thái thiết bị) switch để người dùng điều khiển khu vườn từ xa Các thông số cập theo thời gian thực Các thao tác lên switch gửi server để xử lí để điều khiển thiết bị khu vườn theo thời gian thực Khi thơng số nằm ngồi khoảng giới hạn, có thay đổi hiển thị để cảnh báo người dùng Trang biểu đồ lấy liệu từ sở liệu để hiển thị, thể thay đổi thông số theo thời gian Trang cài đặt cho phép cài đặt tất giá trị ngưỡng, sau cài đặt từ website từ bàn phím board trung tâm, giá trị ngưỡng hiển thị trang web phải cập nhập Trang quản lí thành viên cho phép thêm thành viên, xóa người đăng ký, xóa thành viên, xóa tất người đăng ký, xóa tất thành viên, ngoại trừ admin 43 Chương KẾT QUẢ 4.1 Phần cứng Kết thi công phần cứng hệ thống gồm: khối trung tâm, khối điều khiển, khối hiển thị tích hợp hộp mica, nối với cảm biến module relay để điều khiển thiết bị Hình 4.1 Kết thi cơng board trung tâm Hình 4.2 Kết thi cơng mơ hình vườn 44 Hình 4.3 Điều khiển thiết bị điện Phần cứng hoạt động ổn định, điều khiển thiết bị điện 220V 45 4.2 Phần mềm Phần mềm có tốc độ đáp ứng nhanh, cập nhập liệu kịp thời, giao diện thân thiện với người dùng Website có địa chỉ: http://smartgarden17.esy.es với username: admin password: admin theo dõi hoạt động hệ thống qua video youtube: https://www.youtube.com/channel/UC qCFUfrG9zna-YmpkIFtw 4.2.1 Trang đăng nhập Yêu cầu người dùng phải nhập username passwork Sau kiểm tra liệu bảng users bảng register Bảng 4.1 Các lỗi phát sinh đăng nhập Lỗi Sai tên đăng nhập mật Đã đăng ký chưa cho phép Thông báo Incorrect Credentials, Try again Your account has not been approved by your administrator yet Hình 4.4 Trang đăng nhập Nếu người dùng nhập tên đăng nhập mật khẩu, chuyển hướng tới trang chủ, đồng thời tạo session: name permission để quản lí Nếu truy cập URL trang web khác mà session name chưa tồn tại, người dùng bị chuyển trang đăng nhập 46 4.2.2 Trang đăng ký Cho phép đăng ký tài khoản Các thông tin yêu cầu:  Name: tài khoản đăng ký  Email: địa email  Password: mật Bảng 4.2 Các lỗi phát sinh đăng ký Lỗi Thông báo Chưa nhập name Please enter your full name Tên ngắn (

Ngày đăng: 15/06/2023, 10:57

Tài liệu cùng người dùng

Tài liệu liên quan