Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 , Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 , Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 ,Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3 ,Đồ án hệ thống giám sát môi trường ứng dụng AWS iot và raspberry pi 3
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: Hệ thống giám sát môi trường ứng dụng AWS IoT Raspberry Pi Hà Nội, 5/2018 Đồ án tốt nghiệp 2018 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: Hệ thống giám sát môi trường ứng dụng AWS IoT Raspberry Pi Hà Nội, 5/2018 Page Đồ án tốt nghiệp 2018 Đánh giá đồ án tốt nghiệp (Dùng cho giảng viên hướng dẫn) Giảng viên đánh giá: Họ tên Sinh viên: MSSV:………………………………… Tên đồ án: ……………………………………………………………………………………………………… Chọn mức điểm phù hợp cho sinh viên trình bày theo tiêu chí đây: Rất (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5) Có kết hợp lý thuyết thực hành (20) Nêu rõ tính cấp thiết quan trọng đề tài, vấn đề giả thuyết (bao gồm mục đích tính phù hợp) phạm vi ứng dụng đồ án Cập nhật kết nghiên cứu gần (trong nước/quốc tế) Nêu rõ chi tiết phương pháp nghiên cứu/giải vấn đề Có kết mơ phỏng/thưc nghiệm trình bày rõ ràng kết đạt Có khả phân tích đánh giá kết (15) Kế hoạch làm việc rõ ràng bao gồm mục tiêu phương pháp thực dựa kết nghiên cứu lý thuyết cách có hệ thống Kết trình bày cách logic dễ hiểu, tất kết phân tích đánh giá thỏa đáng Trong phần kết luận, tác giả rõ khác biệt (nếu có) kết đạt mục tiêu ban đầu đề đồng thời cung cấp lập luận để đề xuất hướng giải thực tương lai Kỹ viết (10) Đồ án trình bày mẫu quy định với cấu trúc chương logic đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, đánh số thứ tự giải thích hay đề cập đến đồ án, có lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu chương kết luận chương, có liệt kê tài liệu tham khảo có trích dẫn quy định Kỹ viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận logic có sở, từ vựng sử dụng phù hợp v.v.) Thành tựu nghiên cứu khoa học (5) (chọn trường hợp) Có báo khoa học đăng chấp nhận đăng/đạt giải SVNC khoa học giải cấp Viện trở lên/các giải thưởng khoa học 10a (quốc tế/trong nước) từ giải trở lên/ Có đăng ký phát minh sáng chế Được báo cáo hội đồng cấp Viện hội nghị sinh viên nghiên cứu khoa học không đạt giải từ giải trở lên/Đạt 10b giải khuyến khích kỳ thi quốc gia quốc tế khác chuyên ngành TI contest 10c Khơng có thành tích nghiên cứu khoa học Điểm tổng 1 2 3 4 5 5 5 5 /50 Điểm tổng quy đổi thang 10 Page Đồ án tốt nghiệp 2018 Nhận xét thêm Thầy/Cô (giảng viên hướng dẫn nhận xét thái độ tinh thần làm việc sinh viên) Ngày: / /201 Người nhận xét (Ký ghi rõ họ tên) Page Đồ án tốt nghiệp 2018 Đánh giá đồ án tốt nghiệp (Dùng cho cán phản biện) Giảng viên đánh giá: Họ tên Sinh viên: MSSV:………………………………… Tên đồ án: ……………………………………………………………………………………………… Chọn mức điểm phù hợp cho sinh viên trình bày theo tiêu chí đây: Rất (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5) Có kết hợp lý thuyết thực hành (20) Nêu rõ tính cấp thiết quan trọng đề tài, vấn đề giả thuyết (bao gồm mục đích tính phù hợp) phạm vi ứng dụng đồ án Cập nhật kết nghiên cứu gần (trong nước/quốc tế) Nêu rõ chi tiết phương pháp nghiên cứu/giải vấn đề Có kết mơ phỏng/thưc nghiệm trình bày rõ ràng kết đạt Có khả phân tích đánh giá kết (15) Kế hoạch làm việc rõ ràng bao gồm mục tiêu phương pháp thực dựa kết nghiên cứu lý thuyết cách có hệ thống Kết trình bày cách logic dễ hiểu, tất kết phân tích đánh giá thỏa đáng Trong phần kết luận, tác giả rõ khác biệt (nếu có) kết đạt mục tiêu ban đầu đề đồng thời cung cấp lập luận để đề xuất hướng giải thực tương lai Kỹ viết (10) Đồ án trình bày mẫu quy định với cấu trúc chương logic đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, đánh số thứ tự giải thích hay đề cập đến đồ án, có lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu chương kết luận chương, có liệt kê tài liệu tham khảo có trích dẫn quy định Kỹ viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận logic có sở, từ vựng sử dụng phù hợp v.v.) Thành tựu nghiên cứu khoa học (5) (chọn trường hợp) Có báo khoa học đăng chấp nhận đăng/đạt giải SVNC khoa học giải cấp Viện trở lên/các giải thưởng khoa học 10a (quốc tế/trong nước) từ giải trở lên/ Có đăng ký phát minh sáng chế Được báo cáo hội đồng cấp Viện hội nghị sinh viên nghiên cứu khoa học không đạt giải từ giải trở lên/Đạt 10b giải khuyến khích kỳ thi quốc gia quốc tế khác chun ngành TI contest 10c Khơng có thành tích nghiên cứu khoa học Điểm tổng 1 2 3 4 5 5 5 5 /50 Điểm tổng quy đổi thang 10 Page Đồ án tốt nghiệp 2018 Nhận xét thêm Thầy/Cô Ngày: / /201 Người nhận xét (Ký ghi rõ họ tên) Page Đồ án tốt nghiệp 2018 LỜI NÓI ĐẦU Với phát triển ngày nhanh chóng cơng nghệ, Internet of Things trí tuệ nhân tạo (AI) Big Data nòng cốt cho cách mạng công nghiệp 4.0 Các nghiên cứu, ứng dụng công nghệ vào sống ngày trở nên đa dạng hơn, mở nhiều hướng nghiên cứu chuyên sâu vào lĩnh vực ứng dụng đặc thù với đặc trưng riêng Đời sống người phát triển, nhu cầu việc kết nối tập trung thiết bị, cập nhật trạng thái theo thời gian thực ngày tăng cao Điều thúc đẩy phát triển IoT Trong nội dung môn học Đồ án tốt nghiệp này, em xin chọn tìm hiểu “IoT Gateways” Cụ thể, em tìm hiểu nội dung tổng quan IoT sâu tìm hiểu hạ tầng điện tốn đám mây AWS IoT, phục vụ thiết kế hệ thống giám sát môi trường với hạ tầng Em xin chân thành cảm ơn PGS.TS tận tâm hướng dẫn chúng em qua tuần, thảo luận đề tài trình em tìm hiểu thực đề tài Mặc dù thầy bảo thân cố gắng chắn không tránh khỏi thiếu sót Em mong nhận ý kiến đóng góp thầy để đề tài hồn thiện em thưc Đồ án tốt nghiệp Một lần nữa, em xin chân thành cảm ơn thầy Page Đồ án tốt nghiệp 2018 MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC DANH SÁCH HÌNH VẼ 11 TÓM TẮT ĐỒ ÁN 13 NỘI DUNG 14 Chương Tổng quan 14 1.1 Đặt vấn đề 15 1.2 Mục tiêu đạt 16 1.3 Kết luận 16 Chương Kiến trúc tảng IoT 17 2.1 Các thành phần cấu tạo nên IoT 17 2.1.1 Kết nối đồng hóa 17 2.1.2 Quản lý thiết bị 17 2.1.3 Cơ sở liệu 18 2.1.4 Quản lý xử lý hoạt động 18 2.1.5 Phân tích 18 2.1.6 Dữ liệu trực quan 18 2.1.7 Công cụ bổ sung 18 2.1.8 Các giao diện bên 18 2.2 Các loại tảng IoT 19 2.2.1 Connectivity/M2M platforms 19 2.2.2 IaaS backends 19 2.2.3 Hardware-specific software platforms 19 2.2.4 Consumer/Enterprise software extensions 19 2.3 Kết luận 20 Chương Điện toán đám mây AWS IoT 21 3.1 Các thành phần AWS IoT 21 3.1.1 Device gateway 21 3.1.2 Message broker 21 3.1.3 Rules engine 21 3.1.4 Security and Identity service 21 3.1.5 Registry 21 3.1.5 Group registry 22 3.1.6 Device shadow 22 3.1.7 Device Shadow service 22 3.1.8 Device Provisioning service 22 3.1.9 Custom Authentication service 22 3.1.10 Jobs Service 22 3.2 Hoạt động AWS IoT 23 3.3 Kết luận 24 Chương Tìm hiểu thành phần sử dụng hệ thống 25 Page Đồ án tốt nghiệp 2018 4.1 Máy tính Raspberry Pi Model B 25 4.1.1 Giới thiệu máy tính nhúng Raspberry Pi 25 4.1.2 Đặc điểm, tính Raspberry Pi Model B 26 4.1.3 Sơ đồ chân GPIO Raspberry Pi Model B 28 4.2 Module cảm biến nhiệt độ độ ẩm DHT11 29 4.2.1 Đặc điểm, tính Module DHT11 29 4.2.2 Cách thức truyền liệu 29 4.3 Module Camera cho Raspberry Pi V2 30 4.3.1 Đặc điểm, tính Module Camera cho Raspberry Pi V2 30 4.4 Các công cụ phần mềm cần sử dụng 32 4.4.1 PuTTY 32 4.4.2 VNC Viewer 33 4.4.3 Advanced IP Scanner 33 4.5 Kết luận 33 Chương Thực hệ thống 34 5.1 Thiết kế sơ đồ khối hệ thống 34 5.1.1 Sơ đồ khối hệ thống 34 5.1.2 Chi tiết khối 34 5.2 Cài đặt hệ điều hành kết nối để điều khiển Raspberry Pi 35 5.2.1 Cài đặt hệ điều hành 35 5.2.2 Kết nối để điều khiển Raspberry Pi từ máy tính Windows 36 5.3 Đọc liệu từ cảm biến DHT11 gửi lên Cloud 42 5.3.1 Kết nối DHT11 với Raspberry Pi 42 5.3.2 Tạo Cefiticate AWS 42 5.3.3 Đọc liệu từ cảm biến gửi lên cloud 46 5.4 Stremming video từ camera lên Cloud 48 5.4.1 Kết nối Module Camera với Raspberry Pi 48 5.4.2 Tạo luồng Stream Kinesis AWS 50 5.4.3 Cài đặt Kinesis video streams SDK stream video lên Cloud 54 5.5 Hoạt động hệ thống thực tế 60 5.5.1 Chức đo nhiệt độ, độ ẩm gửi thông số lên cloud 60 5.5.2 Chức stream video lên cloud 61 5.6 Kết luận 61 KẾT LUẬN CHUNG 62 TÀI LIỆU THAM KHẢO 63 Page 10 Đồ án tốt nghiệp 2018 DANH SÁCH HÌNH VẼ Hình 1.1 Sơ đồ khối hoạt động hệ thống giám sát mơi trường .16 Hình 2.1 Các thành phần tảng IoT 17 Hình 2.2 Minh họa hoạt động IoT 19 Hình 3.1 Sơ đồ khối hoạt động hạ tầng AWS IoT 23 Hình 4.1 Cấu trúc phần cứng Raspberry Pi Model B 26 Hình 4.2 Sơ đồ chân GPIO Raspberry Pi Model B 28 Hình 4.3 Cảm biến nhiệt độ, độ ẩm DHT11 29 Hình 4.4 Module Camera cho Raspberry Pi V2 .31 Hình 5.1 Sơ đồ khối hệ thống 34 Hình 5.2 Format thẻ nhớ 35 Hình 5.3 Ghi file ISO lên thẻ nhớ .36 Hình 5.4 Kích hoạt SSH Raspberry Pi .36 Hình 5.5 Kết nối mạng cho Raspberry Pi 37 Hình 5.6 Scan IP 38 Hình 5.7 PuTTY 38 Hình 5.8 Thiết lập cổng điều khiển 39 Hình 5.9 Đăng nhập vào Raspbian 39 Hình 5.10 Kích hoạt VNC server 40 Hình 5.11 Đăng nhập vào Raspbian VNC server .41 Hình 5.12 Giao diện đồ họa điều khiển Raspberryy Pi VNC server 41 Hình 5.13 Sơ đồ kết nối Raspberry Pi DHT11 42 Hình 5.14 Truy cập AWS IoT Console 43 Hình 5.15 Creat a certificate 43 Hình 5.16 Download lưu file key 43 Hình 5.17 Create a policy 44 Hình 5.18 Thiết lập thông số cho Policy 44 Hình 5.19 Attach policy .45 Hình 5.20 Cài đặt AWS IoT Python SDK 46 Hình 5.21 Chương trình đọc liệu gửi lên Cloud hoạt động 47 Hình 5.22 Camera Port Raspberry Pi .48 Hình 5.23 Raspberry Pi Configuration .49 Hình 5.24 Enabled Camera Raspberry Pi 49 Hình 5.25 Truy cập Kinesis video streams 50 Hình 5.26 Creat Kinesis video stream 50 Hình 5.27 Truy cập vào IAM 51 Page 11 Đồ án tốt nghiệp 2018 Hình 5.23 Raspberry Pi Configuration Trong thẻ Interface check mục Enable Camera Hình 5.24 Enabled Camera Raspberry Pi Nhấn OK để lưu lại khởi động lại Raspberry Pi Page 49 Đồ án tốt nghiệp 2018 5.4.2 Tạo luồng Stream Kinesis AWS Tạo luồng Stream Để stream video tới AWS IoT Cloud, ta cần tạo luồng Stream Ở ta sử dụng dịch vụ Kinesis AWS Từ trang chủ AWS IoT, tìm kiếm “Kinesis video streams”, nhấn chọn để truy cập vào Kinesis video streams Hình 5.25 Truy cập Kinesis video streams Chọn Creat Kinesis video stream, mục Stream name giao diện ra, ta đặt tên cho luồng stream, check vào Use default settings Hình 5.26 Creat Kinesis video stream Ấn Creat stream Page 50 Đồ án tốt nghiệp 2018 Tạo User Policy Để luồng stream hoạt động, ta cần tạo thêm User Policy cho việc stream Từ trang chủ AWS IoT, tìm kiếm “IAM”, nhấn chọn để truy cập vào IAM Hình 5.27 Truy cập vào IAM Chọn Add user, mục Stream name giao diện ra, ta đặt tên cho user, check vào ô Programatic access Hình 5.28 Add user Ấn Next Permissions, giao diện chọn mục Attach existing policies directly Tại tab ra, chọn Create Policy Trong giao diện chọn tab JSON Soạn thảo đoạn code sau: { "Version": "2012-10-17", Page 51 Đồ án tốt nghiệp 2018 "Statement": [{ "Effect": "Allow", "Action": [ "kinesisvideo:DescribeStream", "kinesisvideo:CreateStream", "kinesisvideo:GetDataEndpoint", "kinesisvideo:PutMedia" ], "Resource": [ "*" ] }] } Hình 5.29 Create Policy Page 52 Đồ án tốt nghiệp 2018 Chọn Review Policy Ta cần đặt tên cho Policy này, sau ấn Create Policy Đến ta hồn thành việc tạo Policy Hình 5.30 Policy tạo thành công Tiếp theo ta cần Attach Policy vừa tạo vào User Quay lại tab User ban đầu, khung tìm kiếm, ta gõ tên Policy vừa tạo Check vào ô trước tên Policy Chọn Next: Review Hình 5.31 Attach Policy User Chọn Create user Như ta hoàn thành việc tạo User Bây ta sử dụng User để stream video luồng stream tạo Chú ý việc stream video cần có Stream name key tương ứng với User Vì ta cần lưu lại Hình 5.32 User tạo thành cơng Page 53 Đồ án tốt nghiệp 2018 5.4.3 Cài đặt Kinesis video streams SDK stream video lên Cloud Khởi động driver cho Camera Trước bắt đầu trình cài đặt SDK ta cần đảm bảo driver cho Module Camera khởi động Chạy lệnh: sudo nano /etc/modules Tại dòng cuối file vừa mở thêm dòng “bcm2835-v4l2” sau ấn Ctrl+X để lưu file Khởi động lại Raspberry Pi để driver Module Camera hoạt động >sudo reboot now Hình 5.33 Thiết lập để Camera hoạt động Chuẩn bị công cụ để cài đặt SDK Khi thiết bị khởi động lại, tiến hành kết nối lại với thiết bị qua SSH, sau làm bước sau: Cài đặt Git > sudo apt-get install git Hình 5.34 Cài đặt Git Page 54 Đồ án tốt nghiệp 2018 Cài đặt Java > sudo apt-get install oracle-java8-jdk Hình 5.35 Cài đặt Java Thiết lập môi trường Java với phiên Java cài đặt > export JAVA_HOME=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/ Hình 5.36 Thiết lập môi trường Java Để biên dịch SDK cần sử dụng Cmake Do ta cần cài đặt Cmake > sudo apt-get install cmake Page 55 Đồ án tốt nghiệp 2018 Hình 5.37 Cài đặt Cmake Cài đặt SDK Sau cài đặt đầy đủ công cụ cần thiết, ta bắt đầu cài đặt SDK: Download SDK > git clone https://github.com/awslabs/amazonkinesis-video-streamsproducer-sdk-cpp Di chuyển đến thư mục chứa SDK > cd amazon-kinesis-video-streams-producer-sdk-cpp Page 56 Đồ án tốt nghiệp 2018 Hình 5.38 Download SDK Thiết lập để file cài đặt thành file thực thi > chmod +x /kinesis-video-native-build/install-script Chạy file để biên dịch SDK, q trình cài đặt từ 4-8 giờ, phụ thuộc vào tốc độ mạng Internet > /kinesis-video-native-build/install-script Hình 5.39 Biên dịch SDK Page 57 Đồ án tốt nghiệp 2018 Sau biên dịch lần đầu hoàn tất, ta cần biên dịch lại lần để đảm bảo ứng dụng liên kết với phiên phù hợp phần mềm liên quan > rm -rf /kinesis-video-native-build/CMakeCache.txt /kinesis-video-native-build/CMakeFiles > cd /kinesis-video-native-build > install-script Tới ta hoàn thành việc cài đặt SDK Stream video lên Kinesis video Ta bắt đầu Streamming Video Để stream ta cần có Stream Name, Access Key, Priviate Key (có tạo luồng Stream Kinesis) Chạy lệnh để chương trình stream tìm thư viện cần thiết: > export LD_LIBRARY_PATH=/home/pi/amazon-kinesis-videostreams-producer-sdk-cpp/kinesis-video-nativebuild/downloads/local/lib:$LD_LIBRARY_PATH Chạy chương trình Stream: > export AWS_ACCESS_KEY_ID= > export AWS_SECRET_ACCESS_KEY= > /kinesis_video_gstreamer_sample_app Hình 5.40 Chương trình Stream Video từ Camera lên Cloud hoạt động Page 58 Đồ án tốt nghiệp 2018 Xem video stream web Để xem video stream web ta thực sau: Truy cập vào Kinesis video Stream từ AWS IoT Nhấp vào Stream tạo Sử dụng công cụ bên để điều khiển phát luồng Stream Hình 5.41 Thanh cơng cụ điều khiển luống Stream Page 59 Đồ án tốt nghiệp 2018 5.5 Hoạt động hệ thống thực tế Hình 5.42 Hệ thống thực tế 5.5.1 Chức đo nhiệt độ, độ ẩm gửi thơng số lên cloud Hình 5.43 Cửa sổ Terminal đọc liệu cảm biến gửi lên Cloud Page 60 Đồ án tốt nghiệp 2018 Hình 5.44 Dữ liệu gửi lên truy cập Cloud 5.5.2 Chức stream video lên cloud Hình 5.45 Xem Stream Web 5.6 Kết luận Như ta thực xong hệ thống hệ thống hoạt động yêu cầu với chức năng: Đo đạc gửi thông số môi trường (nhiệt độ, độ ẩm) lên Cloud Stream video lên Cloud Page 61 Đồ án tốt nghiệp 2018 KẾT LUẬN CHUNG Nhờ hướng dẫn thầy thầy cô khác viện, em hoàn thành nội dung Đồ án tốt nghiệp Em thu nhiều kiến thức IoT, hạ tầng điện toán đám mây AWS IoT - thành phần thức hoạt động chúng Những kiến thức giúp ích nhiều cho em sống hành trang cho em sau tốt nghiệp, tiếp xúc với công việc thực tế Em xin phép tổng kết lại sau: Về làm được: Nghiên cứu ứng dụng tảng điện toán đám mây AWS IoT Nghiên cứu ứng dụng thiết bị phần cứng, đặc biệt máy tính Raspberry Pi Cài đặt cơng cụ, thiết lập hệ thống, viết chương trình cần thiết để thực hệ thống giám sát môi trường (cụ thể đo thông số nhiệt độ, độ ẩm gửi lên Cloud, stream video lên cloud) Về mặt hạn chế: Chưa tận dụng hết tiềm phần cứng phần mềm Raspberry Pi AWS IoT Em xin đề xuất số hướng phát triển cho Đồ án sau: Tích hợp vào Raspberry Pi thêm nhiều loại cảm biến đo đạc thông số khác vào hệ thống như: cảm biến khí, cảm biến báo cháy,… Trên AWS ta phát triển thêm giao diện biểu đồ để thống kê liệu cách trực quan hơn, phát triển chức điều khiển thiết bị (thông qua Raspberry Pi) thay nhận liệu Phát triển ứng dụng smartphone cho phép theo dõi trực tiếp thông số, xem video stream Cuối em xin lần cảm ơn PGS.TS giúp em hoàn thành Đồ án tốt nghiệp Em xin cảm ơn Page 62 Đồ án tốt nghiệp 2018 TÀI LIỆU THAM KHẢO [1] AWS IoT Developer Guide [2] AWS Documentation [3] Raspberry Pi Datasheet [4] https://iot-analytics.com/5-things-know-about-iot-platform/, truy nhập cuối ngày 20/5/2018 [5] https://www.kaaproject.org/what-is-iot/, truy nhập cuối ngày 20/5/2018 [6] http://aita.gov.vn, truy nhập cuối ngày 20/5/2018 Page 63 .. .Đồ án tốt nghiệp 2018 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: Hệ thống giám sát môi trường ứng dụng AWS IoT Raspberry Pi Hà Nội,... Web 61 Page 12 Đồ án tốt nghiệp 2018 TÓM TẮT ĐỒ ÁN Thiết kế hệ thống giám sát môi trường ứng dụng AWS IoT Raspberry Pi với chức năng: Đo đạc gửi thông số môi trường (nhiệt độ, độ ẩm)... 4.1 .3 Sơ đồ chân GPIO Raspberry Pi Model B Raspberry Pi Model B hệ thứ tính đến thời điểm gia đình Raspberry Pi, đời vào tháng năm 2016 Đặc biệt, phiên không hỗ trợ Hình 4.2 Sơ đồ chân GPIO Raspberry