1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

XÂY DỰNG HỆ THỐNG IOT ĐIỀU KHIỂN THIẾT BỊ TỪ XA CÓ KHẢ NĂNG TÙY CHỈNH THEO YÊU CẦU NGƯỜI SỬ DỤNG

111 982 11

Đ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

Thông tin cơ bản

Định dạng
Số trang 111
Dung lượng 5 MB

Nội dung

Trong đề tài “ Xây dựng hệ thống IoT điều khiển thiết bị từ xa có khả năng tuỳ chỉnh theo yêu cầu người dùng” với nhiệm vụ nghiên cứu, xây dựng một mô hình thực tế từ phần cứng đến phần mềm phục vụ cho người sử dụng. Đề tài được chia thành 3 chương với nội dung như sau: Chương 1: Cơ sở lý thuyết xây dựng một hệ thống IoT : chương này đề sẽ tìm hiểu lý thuyết cơ bản về trong một IoT, các công nghệ không dây được sử dụng. Chương 2: Phân tích, xây dựng hệ thống IoT điều khiển từ xa có khả năng tuỳ chỉnh theo yêu cầu của người dùng : Sau khi tìm hiểu lý thuyết chương 1, chương này sẽ đi vào xây dựng bài toán xây dựng hệ thống IoT điều khiển thiết bị trong thực tế, vẽ mạch phần cứng và xây dựng chức năng phần mềm. Chương 3: Mô phỏng, viết ứng dụng android , đánh giá hệ thống : chương này sẽ mô phỏng hệ thống IoT trên phần mềm Packet Tracer, đánh giá tính ứng dụng của hệ thống, sau đó sẽ đi vào lập trình trên mạch phần cứng thật và viết phần mềm tuỳ chỉnh trên nền tảng hệ điều hành Android.

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: XÂY DỰNG HỆ THỐNG IOT ĐIỀU KHIỂN THIẾT BỊ TỪ XA CÓ KHẢ NĂNG TÙY CHỈNH THEO YÊU CẦU NGƯỜI SỬ DỤNG Sinh viên thực hiện: Giảng viên hướng dẫn: Cán phản biện: 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: XÂY DỰNG HỆ THỐNG IOT ĐIỀU KHIỂN THIẾT BỊ TỪ XA CÓ KHẢ NĂNG TÙY CHỈNH THEO YÊU CẦU NGƯỜI SỬ DỤNG Sinh viên thực hiện: Giảng viên hướng dẫn: Cán phản biện: ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP (Dùng cho giảng viên hướng dẫn) Tê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 đề 5 5 5 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 đồ án (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; lề thống nhất, có 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) 0a SVNCKH giải cấp Viện trở lên/Có giải thưởng khoa học (quốc tế nước) từ giải trở lên/Có đăng ký phát minh, sáng chế 0b Được báo cáo hội đồng cấp Viện hội nghị SVNCKH không đạt giải từ giải trở lên/Đạt giải khuyến khích kỳ thi quốc gia quốc tế khác chuyên ngành (VD: TI contest) 0c Có báo khoa học đăng chấp nhận đăng/Đạt giải Khơng có thành tích nghiên cứu khoa học Điểm tổng /50 Điểm tổng quy đổi thang 10 Nhận xét khác (về thái độ tinh thần làm việc sinh viên) Ngày: … / … / 20… Người nhận xét (Ký ghi rõ họ tên) ĐÁNH GIÁ QUYỂN ĐỒ Á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 đề 5 5 5 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 đồ án (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; lề thống nhất, có 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) 0a SVNCKH giải cấp Viện trở lên/Có giải thưởng khoa học (quốc tế nước) từ giải trở lên/Có đăng ký phát minh, sáng chế 0b Được báo cáo hội đồng cấp Viện hội nghị SVNCKH không đạt giải từ giải trở lên/Đạt giải khuyến khích kỳ thi quốc gia quốc tế khác chuyên ngành (VD: TI contest) 0c Có báo khoa học đăng chấp nhận đăng/Đạt giải Khơng có thành tích nghiên cứu khoa học Điểm tổng /50 Điểm tổng quy đổi thang 10 Nhận xét khác cán phản biện Ngày: … / … / 20… Người nhận xét (Ký ghi rõ họ tên) LỜI NÓI ĐẦU Trong năm gần với bùng nổ cách mạng công nghiệp 4.0 diễn mạnh mẽ lĩnh vực bao gồm công nghệ sinh học, kỹ thuật số vật lý Những yếu tố cốt lõi Kỹ thuật số Cách mạng Cơng nghiệp 4.0 là: Trí tuệ nhân tạo (AI), Vạn vật kết nối - Internet of Things (IoT) liệu lớn (Big Data) Trên lĩnh vực công nghệ sinh học, Cách mạng Công nghiệp 4.0 tập trung vào nghiên cứu để tạo bước nhảy vọt Nông nghiệp, Thủy sản, Y dược, chế biến thực phẩm, bảo vệ mơi trường, lượng tái tạo, hóa học vật liệu Trên lĩnh vực Vật lý với robot hệ mới, máy in 3D, xe tự lái, vật liệu (graphene, skyrmions…) công nghệ nano Cuộc cách mạng công nghiệp 4.0 đem lại nhiều hội để nâng cao chất lượng sống người, giúp làm việc, giải trí hiệu hơn, nghành cơng nghiệp tự động hố, sử dụng sức lao động người đặt nhiều khó khan thách thức Khơng năm ngồi xu hướng tồn cầu Cách mạng Cơng nghiệp 4.0 tơi muốn góp cơng sức vào nghiên cứu lĩnh vực giúp ích cho sống Tôi định chọn đề tài nghiên cứu lĩnh vực kỹ thuật số ‘Internet of Things’ đề tài lựa chọn “ Xây dựng hệ thống IoT điều khiển thiết bị từ xa có khả tuỳ chỉnh theo yêu cầu người sử dụng” Tôi xin chân thành gửi lời cảm ơn sâu sắc đến TS Nguyễn Nam hướng dẫn, giúp đỡ, đưa nhiều đóng góp để tơi hồn thành đồ án Cảm ơn quý thầy cô viện Điện tử - Viễn thơng mang lại kiến thức bổ ích, quý giá suốt trình học rèn luyện trường Đại Học Bách Khoa Hà Nội LỜI CAM ĐOAN Tôi , mã số sinh viên , sinh viên lớp, khóa 58 Người hướng dẫn TS Nguyễn Anh Quang Tơi xin cam đoan tồn nội dung trình bày đồ án “Xây dựng hệ thống IoT điều khiển thiết bị từ xa có khả tuỳ chỉnh theo yêu cầu người sử dụng” kết trình tìm hiểu nghiên cứu Các liệu nêu đồ án hoàn toàn trung thực, phản ánh kết đo đạc thực tế Mọi thơng tin trích dẫn tn thủ quy định sở hữu trí tuệ; tài liệu tham khảo liệt kê rõ ràng Tôi xin chịu hoàn toàn trách nhiệm với nội dung viết đồ án Hà Nội ngày tháng năm Người cam đoan MỤC LỤC DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT i DANH MỤC HÌNH VẼ ii DANH MỤC BẢNG BIỂU v TÓM TẮT ĐỒ ÁN .vi CHƯƠNG CƠ SỞ LÝ THUYẾT XÂY DỰNG MỘT HỆ THỐNG IOT .1 1.1 Internet Of Things vấn đề 1.1.1 Internet of Things xu toàn cầu .1 1.1.2 Những thách thức thời kì bùng nổ Internet Of Things : 1.2 Thành phần hệ thống IoT 1.2.1 Hệ thống điều khiển (Controller) : 1.2.2 Cảm biến (Sensor) 1.2.3 Bộ phận chấp hành (Actutor) 1.3 Công nghệ không dây phổ biến hệ thống IoT 1.3.1 Bluetooth 1.3.2 Zigbee 10 1.3.3 Z-wave 10 1.3.4 WiFi 11 1.3.5 LoRa .11 1.4 Giao thức truyền thông MQTT .12 1.4.1 Publish subscribe .13 1.4.2 QoS 13 1.4.3 Retain .14 CHƯƠNG PHÂN TÍCH, XÂY DỰNG HỆ THỐNG IOT ĐIỀU KHIỂN TỪ XA CÓ KHẢ NĂNG TUỲ CHỈNH THEO YÊU CẦU CỦA NGƯỜI DÙNG 15 2.1 Bài toán 15 2.2 Mơ hình hệ thống IoT điều khiển từ xa 16 2.3 Xây dựng thiết bị Node 17 2.3.1 Phần mềm thiết kế mạch Altium Designer: 17 2.3.2 Mạch nguyên lí : 18 2.3.3 Mơ hình mạch 3D 19 2.3.4 Linh kiện thông số kỹ thuật : .20 2.3.5 Mơ hình mạch thực tế : 26 CHƯƠNG MÔ PHỎNG, VIẾT ỨNG DỤNG ANDROID , ĐÁNH GIÁ HỆ THỐNG 27 3.1 Mô hệ thống phần mềm Packet Tracer 27 3.1.1 Giới thiệu phần mềm Packet Tracer : .27 3.1.2 Xây dựng mô hình hệ thống IoT Packet Tracer 28 3.1.3 Mô hệ thống IoT Packet Tracer 31 3.2 Lựa chọn MQTT Broker : .45 3.3 Lập trình cho Node MCU : .46 3.3.1 Giới thiệu Arduino IDE : .46 3.3.2 Lập trình cho bo mạch Node MCU 47 3.4 Viết ứng dụng Android 73 3.4.1 Thiết kế giao diện đăng nhập : .73 3.4.2 Thiết kế giao diện : .79 3.4.3 Thiết kế dialog : publish, subscribe, timer, automation 82 KẾT LUẬN 88 TÀI LIỆU THAM KHẢO 89 app:layout_constraintRight_toRightOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@id/tip_login_hostname"> 80 81 Xử lí thơng tin đăng nhập : Kiểm tra thơng tin nhập vào có rỗng khơng, khơng rỗng chuyển tiếp tới giao diện điều khiển thiết bị, lúc thông tin vừa dùng cho login đến public void ConnectBroker(){ try{ hostMQTT = edtHost.getText().toString(); if(hostMQTT.isEmpty()) edtHost.setError("Empty"); portMQTT = edtPort.getText().toString(); if(portMQTT.isEmpty()) edtPort.setError("Empty"); userMQTT = edtUser.getText().toString(); if(userMQTT.isEmpty()) edtUser.setError("Empty"); passMQTT = edtPass.getText().toString(); if(passMQTT.isEmpty()) edtPass.setError("Empty"); if(!hostMQTT.isEmpty() && !userMQTT.isEmpty() && ! portMQTT.isEmpty() && !passMQTT.isEmpty()){ if(cbRememberLogin.isChecked()){ SharedPreferences.Editor editor = loginSharedPreferences.edit(); editor.putString(HOST,hostMQTT); editor.putString(PORT,portMQTT); editor.putString(USER,userMQTT); editor.putString(PASS,passMQTT); editor.apply(); } Intent i = new Intent(this, MainActivity.class); 82 MQTTInfo mqttInfo = new MQTTInfo(hostMQTT,portMQTT,userMQTT,passMQTT); i.putExtra("mqtt",mqttInfo); startActivity(i); } } catch (Exception e){ e.printStackTrace(); } } 3.4.2 Thiết kế giao diện : Giao diện gồm việc thao tác , thêm thiết bị điểu khiển thiết bị Sau đăng nhập từ giao diện Login chuyển tới giao diện hình MainActivity Tại hiển thị lên cửa sổ popup (dialog) chờ kết nối Khi kết nối thành công cửa sổ popup tự ẩn 83 Hình 3.61 Giao diện hình chinh Android 84 Hình 3.62 Giao diện hình sau thêm thiết bị Thiết bị thêm ID, thông tin lưu nga, người dùng thêm lại thiết bị sau lần sử dụng Code thiết kế giao diện hình : activity_main.xml 85 content_main.xml 86 3.4.3 Thiết kế dialog : publish, subscribe, timer, automation Hình 3.63 Dialog hẹn Hình 3.64 Dialog tự động Hình 3.65 Dialog Publish Hình 3.66 Dialog Subscribe Lập trình kết nối với MQTT Broker Một thư viện hỗ trợ việc kết nối trao đổi thông tin với Broker Eclipse Paho Thêm thư viện vào build.grade Android Studio : implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.2' 87 implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.1.1' Để lắng nghe thông tin từ MQTT Broker cần khởi chạy dịch vụ service Khai báo Android Manifests 88 Hàm kết nối đến MQTT Broker : public void connect(){ MqttConnectOptions options = new MqttConnectOptions(); options.setMqttVersion(MqttConnectOptions.MQTT_VERSION_3_1_1); options.setCleanSession(false); options.setUserName(user); options.setPassword(pass.toCharArray()); try { IMqttToken token = client.connect(options); token.setActionCallback(new IMqttActionListener() { @Override public void onSuccess(IMqttToken asyncActionToken) { // We are connected callBack.connected(); client.setCallback(new MqttCallback() { @Override public void connectionLost(Throwable cause) { 89 callBack.disconnected(); } @Override public void messageArrived(String topic, MqttMessage message) { callBack.messageArrived(topic,message); } @Override public void deliveryComplete(IMqttDeliveryToken token) { } }); } @Override public void onFailure(IMqttToken asyncActionToken, Throwable exception) { callBack.noConnection(); } }); } catch (MqttException e) { e.printStackTrace(); } } Có kết trả qua CallBack : // kết nối connectionLost() // Tin nhắn nhận messageArrived(String topic, MqttMessage message) Publish thông tin đến MQTT Broker : public void publish(String topic, String payload) 90 { byte[] encodedPayload; try { encodedPayload = payload.getBytes(StandardCharsets.UTF_8); MqttMessage message = new MqttMessage(encodedPayload); client.publish(topic, message); } catch (MqttException e) { e.printStackTrace(); } } Subscribe topic : public void subscribe(String topic) { int qos = 1; try { IMqttToken subToken = client.subscribe(topic, qos); subToken.setActionCallback(new IMqttActionListener() { @Override public void onSuccess(IMqttToken asyncActionToken) { } @Override public void onFailure(IMqttToken asyncActionToken, Throwable exception) { } }); } catch (MqttException e) { e.printStackTrace(); } } 91 Gửi thông tin bật tắt xuống thiết bị, kiểm tra thơng tin xác hay chưa Hình 3.67 Kiểm tra gửi thơng tin từ ứng dụng Android xuống thiết bị Node 92 KẾT LUẬN Xây dựng hệ thống IoT tốn nhiều khó khăn thách thức, để áp dụng hệ thống hiệu quả, phù hợp sống sử dụng ngày, đơn giản hố cơng việc phức tạp Đề tài xây dựng hệ thống IoT điều khiển thiết bị từ xa có khả tuỳ chỉnh theo yêu cầu người sử dụng giúp tơi tìm hiểu kiến thức thành phần hệ thống IoT, cách thiết bị phối hợp hoạt động để tạo hệ thống thông minh Đề tài phát triển số vấn đề chưa khắc phục chưa đồng cài đặt cho cổng (port) sử dụng nhiều thiết bị Đề tài dừng mức độ điều khiển bản, hẹn giờ, tự động tương lại muốn phát triển thêm cho dự án ví dụ tích hợp thêm nhiều cảm biến, tương tác nhiều với người dùng, hỗ trợ nhận diện giọng nói qua trợ lí ảo Google 93 TÀI LIỆU THAM KHẢO [1] https://arduino-esp8266.readthedocs.io/en/latest/ truy cập cuối ngày 30/12/2019 [2] http://mqtt.org/ truy cập cuối ngày 3/01/2020 [3] https://developer.android.com/docs truy cập cuối 1/1/2020 [4] https://www.cisco.com/c/en/us/solutions/internet-of-things/overview.html truy cập cuối ngày 10/12/2019 [5] https://www.eclipse.org/paho/ truy cập cuối 3/1/2020 [6] TIMOTHY CHOU “Precision princiles, practices and solutions for the internet of things” 94 ... TÍCH, XÂY DỰNG HỆ THỐNG IOT ĐIỀU KHIỂN TỪ XA CÓ KHẢ NĂNG TUỲ CHỈNH THEO YÊU CẦU CỦA NGƯỜI DÙNG 15 2.1 Bài toán 15 2.2 Mơ hình hệ thống IoT điều khiển từ xa 16 2.3 Xây dựng. .. thuyết xây dựng hệ thống IoT : chương đề tìm hiểu lý thuyết IoT, công nghệ không dây sử dụng Chương 2: Phân tích, xây dựng hệ thống IoT điều khiển từ xa có khả tuỳ chỉnh theo yêu cầu người dùng... TỬ - VIỄN THÔNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: XÂY DỰNG HỆ THỐNG IOT ĐIỀU KHIỂN THIẾT BỊ TỪ XA CÓ KHẢ NĂNG TÙY CHỈNH THEO YÊU CẦU NGƯỜI SỬ DỤNG Sinh viên thực hiện: Giảng viên hướng dẫn: Cán

Ngày đăng: 16/01/2020, 18:53

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w