(Luận văn) thiết kế điều khiển thiết bị bằng giọng nói với google assistant ( google home)

48 1 0
(Luận văn) thiết kế điều khiển thiết bị bằng giọng nói với google assistant ( google home)

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU VIỆN CNTT – ĐIỆN – ĐIỆN TỬ lu BÁO CÁO ĐỀ TÀI KHOA HỌC CẤP TRƯỜNG an n va p ie gh tn to w TÊN ĐỀ TÀI: oa nl THIẾT KẾ ĐIỀU KHIỂN THIẾT BỊ BẰNG GIỌNG NÓI d VỚI GOOGLE ASSISTANT ( GOOGLE HOME) oi lm ul nf va an lu z at nh z - Chủ nhiệm : Mai Thanh Tuấn @ m co l gm - Hướng dẫn khoa học: ThS Lưu Hoàng an Lu n va BÀ RỊA-VŨNG TÀU, THÁNG 06 NĂM 2019 ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hồng CỘNG HỒ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc o0o - TRƯỜNG ĐH BÀ RỊA VŨNG TÀU VIỆN CNTT-ĐIỆN-ĐIỆN TỬ NHIỆM VỤ ĐỀ TÀI NGHIÊN CỨU Họ tên sinh viên thực hiện: Mai Thanh Tuấn - MSSV: 15032278 - Ngày, tháng, năm sinh: 11/10/1997 - Nơi sinh: BRVT - Chuyên ngành: Điện tử công nghiệp I TÊN ĐỀ TÀI: THIẾT KẾ ĐIỀU KHIỂN THIẾT BỊ BẰNG GIỌNG NÓI lu VỚI GOOGLE ASSISTANT ( GOOGLE HOME ) an va II NHIỆM VỤ VÀ NỘI DUNG: n - Tìm hiểu hệ thống điều khiển thông minh thiết bị nhà to ie gh tn - Điều khiển giám sát từ xa việc bật mở thiết bị Google Assistant - Xây dựng mơ hình điều khiển hệ thống thiết bị giọng nói với p Google Assistant ( Google Home ) nl w III NGÀY GIAO NHIỆM VỤ ĐỀ TÀI: 01/12/2018 d oa IV NGÀY HOÀN THÀNH ĐỀ TÀI: 15/06/2019 an lu V HỌ TÊN CÁN BỘ HƯỚNG DẪN: ThS Lưu Hoàng Bà Rịa - Vũng Tàu, ngày 15 tháng 06 năm 2019 SINH VIÊN THỰC HIỆN CHÍNH (Ký ghi rõ họ tên) oi lm ul nf va CÁN BỘ HƯỚNG DẪN (Ký ghi rõ họ tên) z at nh ThS Lưu Hoàng z TRƯỞNG VIỆN (Ký ghi rõ họ tên) m co l gm @ PHỊNG KHOA HỌC CƠNG NGHỆ - HTQT (Ký ghi rõ họ tên) Mai Thanh Tuấn an Lu n va SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng LỜI CẢM ƠN Trên thực tế khơng có thành cơng mà không gắn liền với hỗ trợ, giúp đỡ dù hay nhiều, dù trực tiếp hay gián tiếp người khác Trong suốt thời gian làm đồ án tốt nghiệp, em tìm hiểu, học hỏi nhận nhiều hỗ trợ từ thầy cô anh chị khóa trước Với lịng biết ơn sâu sắc, em xin gửi lời cảm ơn đến quý thầy cô viện Công nghệ thông tin – Điện-Điện tử - Trường đại học Bà Rịa Vũng Tàu truyền đạt vốn kiến thức quý báu cho em bạn khoá Qua em xin cảm ơn anh chị khóa trước đóng góp ý kiến giúp đỡ em để hoàn thành đồ án tốt nghiệp lu an va Em xin chân thành cảm ơn ThS Lưu Hoàng tận tâm hướng dẫn em qua n buổi hướng dẫn để hoàn thành đồ án tốt nghiệp Nếu khơng có lời hướng dẫn, lần em xin chân thành cảm ơn thầy p ie gh tn to dạy bảo thầy em nghĩ đồ án tốt nghiệp em khó hoàn thiện Một d oa nl w Vũng Tàu, ngày 26 tháng 06 năm 2019 oi lm ul nf va an lu z at nh z m co l gm @ an Lu n va SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng LỜI MỞ ĐẦU Ngày nay, xã hội đại, khoa học kỹ thuật phát triển sống người có nhu cầu sử dụng đầy đủ thiết bị thông minh để phục vụ cho sinh hoạt công việc Một thực tế gần với người nhà mình, mong muốn dụng cơng nghệ tự động hóa rộng rãi, tất đồ dùng nhà từ phòng ngủ, phòng khách đến toilet gắn điều khiển điện tử kết nối với Internet điện thoại di động, cho phép chủ nhân điều khiển vật dụng từ xa lập trình cho thiết bị lu nhà hoạt động theo lịch thời gian mong muốn an Nhu cầu kiểm soát hệ thống thiết bị điện điều khiển thiết bị thông va n minh ngày phổ biến kiểm tra trạng thái đèn, quạt, máy lạnh, điện thoại di động, thiết bị máy tính thơng qua mạng internet Hiện với khoa học phát triển với trợ lý ảo thông minh hỗ trợ p ie gh tn to thiết bị khác, mở hay tắt thiết bi ̣điện nhà từ xa thiết bị w AI như: Google Assistant (Google), Alexa (Amazon), Siri (Apple), Cortana oa nl (Microsoft), … Các thiết bị ngơi nhà thơng minh ngồi điều khiển d qua app điện thoại, web,… điều khiển qua trợ lý ảo dần lu an phát triển Vì vậy, em tìm hiểu, nghiên cứu, chọn đề tài: “ Điều khiển nf va thiết bị giọng nói qua Google Asstiant (Google Home) ” để làm đề tài oi lm ul nghiên cứu khoa học cấp trường z at nh z m co l gm @ an Lu n va SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng MỤC LỤC Trang NHIỆM VỤ ĐỀ TÀI NGHIÊN CỨU LỜI CÁM ƠN LỜI MỞ ĐẦU MỤC LỤC lu an n va 1.1 Đặt vấn đề 1.2 Phương pháp nghiên cứu 1.3 Mục tiêu, nhiệm vụ CHƯƠNG 2: Tổng Quan 2.1 Trợ lý ảo 2.1.1 Khái niệm 2.1.3 Google Home 2.2 Internet Of Thing 2.2.1 Khái niệm p 2.1.2 Google Assistant ie gh tn to CHƯƠNG 1: Mở Đầu d oa nl w lu an 2.2.2 Ứng dụng 10 nf va 2.3 Blynk 13 oi lm ul 2.3.1 Hệ sinh thái Blynk 13 2.2.2 Tính Blynk 14 z at nh 2.4 Nhà thông minh 14 2.4.1 Khái niệm 14 z 2.4.2 Ứng dụng 15 @ gm 2.4.3 Các hệ sinh thái nhà thông minh giới 15 m co l CHƯƠNG 3: Thiết bị giải pháp công nghệ 17 3.1 Kit NodeMCU Lua ESP8266 17 an Lu 3.2 Công tắc cảm ứng 18 n SVTH: Mai Thanh Tuấn va 3.3 Module relay kênh 21 ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng 3.4 Đèn led 6W 23 3.5 Phần mềm IDE 24 CHƯƠNG 4: Thiết kế điều khiển thiết bị giọng nói với Google Assistant (Google Home) 28 4.1 Sơ đồ khối 28 4.2 Sơ đồ kết nối 29 4.3 Mơ hình thực tế 30 4.4 Lưu đồ giải thuật 32 CHƯƠNG : Kết Luận Và Hướng Phát Triển Đề Tài 34 lu an 5.1 Kết luận 34 n va 5.1.1 Những mặt làm 34 5.2 Hướng phát triển đề tài 34 gh tn to 5.1.2 Những hạn chế tồn 34 p ie TÀI LIỆU THAM KHẢO 35 d oa nl w PHỤ LỤC: Code chương trình 36 oi lm ul nf va an lu z at nh z m co l gm @ an Lu n va SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng Chương Mở Đầu 1.1 Đặt vấn đề Ngày nay, xã hội đại, khoa học kỹ thuật phát triển sống người có nhu cầu sử dụng đầy đủ thiết bị thông minh để phục vụ cho sinh hoạt cơng việc Một thực tế gần với người nhà mình, mong muốn dụng cơng nghệ tự động hóa rộng rãi, tất đồ dùng nhà từ phòng ngủ, phòng khách đến lu toilet gắn điều khiển điện tử kết nối với Internet điện thoại an va di động, cho phép chủ nhân điều khiển vật dụng từ xa lập trình cho thiết bị n nhà hoạt động theo lịch thời gian mong muốn minh ngày phổ biến kiểm tra trạng thái đèn, quạt, máy lạnh, ie gh tn to Nhu cầu kiểm soát hệ thống thiết bị điện điều khiển thiết bị thơng p thiết bị khác, mở hay tắt thiết bi ̣điện nhà từ xa thiết bị nl w điện thoại di động, thiết bị máy tính thơng qua mạng internet oa Hiện với khoa học phát triển với trợ lý ảo thông minh hỗ trợ d AI như: Google Assistant (Google), Alexa (Amazon), Siri (Apple), Cortana lu va an (Microsoft), … Các thiết bị nhà thông minh điều khiển ul nf qua app điện thoại, web,… điều khiển qua trợ lý ảo dần oi lm phát triển Vì vậy, em tìm hiểu, nghiên cứu, chọn đề tài: “ Điều khiển thiết bị giọng nói qua Google Asstiant (Google Home) ” để làm đồ án tốt z at nh nghiệp z Kết nghiên cứu từ đề tài giúp em có nhiều kinh nghiệm để sau gm @ tốt nghiệp chúng em có đủ khả nghiên cứu chế tạo hoàn chỉnh thiết bị l điều khiển hệ thống điện cho nhà thông minh đáp ứng sử dụng yêu kiện sống Việt Nam va Trang n SVTH: Mai Thanh Tuấn an Lu 1.2 Phương pháp nghiên cứu m co cầu thi ̣trường với giá thành hợp ̣ lý, chất lượng đảm bảo, phù hợp ̣ với điều ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng - Nghiên cứu tài liệu qua sách báo lĩnh vực IOT - Nghiên cứu sở lý thuyết để thiết kế mạch điều khiển thiết bị với trợ lý ảo Google Assistant Google - Tìm hiểu nguyên lý hoạt động module thiết bị điện nhà 1.3 Mục tiêu, nhiệm vụ - Tìm hiểu hệ thống điều khiển thơng minh thiết bị nhà - Tìm hiểu Google Assistant (Google Home), IOT - Thiết kế mạch điều khiển thiết bị giong nói qua Google Assistant (Google Home) lu an - Xây dựng mơ hình mẫu điều khiển thiết bị qua Google Assistant (Google n va Home) p ie gh tn to - Kiểm tra, đánh giá tính ứng dụng đề tài d oa nl w oi lm ul nf va an lu z at nh z m co l gm @ an Lu va Trang n SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng CHƯƠNG TỔNG QUAN 2.1 Trợ lý ảo 2.1.1 Khái niệm Trợ lý ảo khái niệm lĩnh vực công nghệ, phần mềm, lần đầu biết tới giới vào năm 1961 Hội chợ Thế giới Seattle, dạng thiết bị có tên IBM Shoebox, với khả nhận diện giọng nói Đến năm 1970, Bộ Quốc phòng Hoa Kỳ quan DARPA Bộ lu phát triển công cụ "Harpy" nhận dạng khoảng 1000 từ, tương đương an va vốn từ vựng đứa bé tuổi n Phải tới năm 1990, trợ lý ảo nhà sản xuất hàng đầu dụng máy tính cá nhân Trong đó, kiện mắt điện thoại thông ie gh tn to Microsoft, IBM, Philips Lernout & Hauspie thức nghiên cứu áp p minh IBM Simon vào năm 1994 đặt móng cho trợ lý ảo thông nl w minh mà ta biết tới ngày oa Năm 2011, trợ lý ảo số đại cài đặt điện thoại d thông minh Siri, giới thiệu tính iPhone 4S va an lu Apple ul nf Từ năm 2017 đến nay, trợ lý ảo bắt đầu người dùng ý nhờ oi lm ứng dụng thực tiễn, đặc biệt đầu tư mạnh tay từ tập đoàn lớn Amazon với Alexa, Google với Google Assistant hay Apple với Siri z at nh z m co l gm @ an Lu Trang n SVTH: Mai Thanh Tuấn va Hình 2.1: Các trợ lý ảo dịng Smartphone ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hồng Từ hiểu đơn giản trợ lý ảo phần mềm, công cụ xây dựng dựa tảng trí thơng minh nhân tạo (AI) nhà phát triển hệ điều hành, hay hãng cơng nghệ tích hợp sâu vào hệ điều hành với mục đích hỗ trợ người dùng thiết bị dễ dàng thói quen mà người dùng thường làm thiết bị 2.1.2 Google Assistant Google Assistant trợ lý cá nhân ảo phát triển Google giới thiệu hội nghị nhà phát triển hãng vào tháng năm 2016 Không giống Google Now, Google Assistant tham gia trị lu chuyện hai chiều an va Assistant ban đầu đưa vào ứng dụng nhắn tin Google Allo, loa n thông minh Google Home Sau thời gian có mặt hai điện thoại gh tn to thông minh Pixel Pixel XL hãng, Google bắt đầu triển khai Assistant ie thiết bị Android khác vào tháng năm 2017, bao gồm điện thoại p thông minh bên thứ ba thiết bị Android Wear, phát hành nl w dạng ứng dụng riêng biệt IOS vào tháng Cùng với mắt phát d oa triển phần mềm (SDK) vào tháng năm 2017 cho phép nhà phát triển bên an lu thứ ba tự xây dựng phần cứng tương thích với Google Assistant, Assistant va tiếp tục mở rộng hỗ trợ cho lượng lớn thiết bị, bao gồm ul nf xe thiết bị nhà thông minh Các chức Assistant oi lm bổ sung nhà phát triển bên thứ ba Người dùng chủ yếu tương tác với Google Assistant qua giọng nói z at nh tự nhiên, nhập qua bàn phím Các chức z tương tự Google Now, tìm kiếm Internet, đặt kiện lịch gm @ báo thức, điều chỉnh cài đặt phần cứng thiết bị người dùng hiển thị thông l tin từ tài khoản Google người dùng Google bổ sung tính m co khác cho Assistant bao gồm khả nhận diện vật thể thu thập thông tin vật thể thông qua máy ảnh thiết bị, với việc hỗ trợ mua sản phẩm va Trang n SVTH: Mai Thanh Tuấn an Lu chuyển tiền ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng CHƯƠNG THIẾT KẾ MẠCH ĐIỀU KHIỂN THIẾT BỊ ĐIỆN BẰNG GIỌNG NÓI VỚI GOOGLE ASSISTANT 4.1 Sơ đồ khối Blynk Google Assistant lu an va n Khối xử lí trung tâm Node MCU Esp8266 Relay p ie gh tn to Công Tắc Cảm Ứng oa nl w Thiết Bị Điện d Nguồn ul nf va an lu Khối nguồn: oi lm Hình 4.1: Sơ đồ khối hệ thống z at nh Đây khối để cung cấp điện cho toàn hệ thống điện Gồm có hai z nguồn: gm @ Nguồn cho mạch điều khiển: tạo dòng điện điện ổn định cung Khối xử lí trung tâm NodeMCU Lua Esp8266: m co Nguồn cho thiết bị điện: Dùng điện 220V l cấp an toàn cho mạch Ở dùng nguồn 6V-24V an Lu va Trang 28 n SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hồng Khối xử lí trung tâm NodeMCU Lua Esp8266 gồm Chip WiFi ESP8266EX bên Module ESP-12E để dễ dàng kết nối WiFi Dùng để xử lý tín hiệu điều khiển thiết bị điện từ Google Assistant, Blynk công tắc cảm ứng Khối Relay: Dùng để đóng ngắt thiết bị điện nhà Ở mơ hình tơi sử dụng module relay kênh đóng ngắt bốn thiết bị nhà Khối công tắc cảm ứng: Dùng để điều khiển tay thiết bị nhà không sử dụng lu an điều khiển giọng nói với Google Assistant Blynk n va Khối Blynk: điều khiển thiết bị điện nhà qua App Blynk SmartPhone điện gh tn to Đây sever để điều khiển thiết bị điện nhà qua wifi Ta p ie thoại Web Blynk máy vi tính w Khối Google Assistant: oa nl Đây trợ lý ảo Google để điều khiển thiết bị điện nhà d giọng nói Ở ta điều khiển giọng nói qua phầm mềm Google nf va Khối thiết bị điện: an lu Assistant qua SmartPhone, loa thông minh Google Home Mini,… oi lm ul Bao gồm thiết bị điện nhà kết nối để điều khiển giọng nói với trợ lý ảo Google Assistant, công tắc cảm ứng Blynk Các z at nh thiết bị điện là: Đèn, quạt, máy bơm, máy lạnh, … Với đề tài sử dụng đèn công suất nhỏ để mô thiết bị gm @ 4.2 Sơ đồ kết nối z điện nhà: đèn phòng khác l Phần cứng mơ hình điều khiển thiết bị điện nhà qua Wifi va Trang 29 n SVTH: Mai Thanh Tuấn an Lu Lua ESP 8266 m co kết nối với theo sơ Với khối xử lý trung tâm kít NodeMCU ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng lu an n va tn to gh Hình 4.2: Sơ đồ kết nối p ie 4.3 Mạch thực tế d oa nl w oi lm ul nf va an lu z at nh z m co l gm @ an Lu Hình 4.3 Giao diện mặt trước hệ thống va Trang 30 n SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng lu an n va ie gh tn to p Hình 4.4 Giao diện mặt sau hệ thống d oa nl w oi lm ul nf va an lu z at nh z m co l gm @ va Trang 31 n SVTH: Mai Thanh Tuấn an Lu Hình 4.5 Mạch điều khiển ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng 4.4 Lưu đồ giải thuật Bắt Đầu Nhận tín hiệu điều khiển từ Google Assistant/Blynk/Cơng Tắc Cảm Ứng lu an n va to p ie gh tn Tín hiệu điều khiển bật tắt thiết bị HIGHT nl w H d oa LOW Bật thiết bị điện oi lm ul nf va an lu Tắt thiết bị điện z at nh z Giám sát Blynk công tắc cảm ứng m co l gm @ va Trang 32 n SVTH: Mai Thanh Tuấn an Lu Hình 4.6: Lưu đồ giải thuật ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng Nguyên lý hoạt động hệ thống: Điều khiển giọng nói với Google Assistant: - Khi ta nói câu lệnh Google Assistant cài đặt sẵn để bật tắt thiết bị Google Assiatant nhận lệnh sau thơng qua IFTTT truyền xuống Blynk sau từ Blynk truyền lệnh xuống NodeMCU Lua ESP8266 Tại NodeMCU Lua ESP8266 xử lý liệu để kích relay tương ứng với mức logic để bật tắt thiết bị theo câu lệnh cài đặt Google Assistant Điều khiển Blynk: - Khi có tín hiệu điều khiển từ app Blynk khối trung tâm NodeMCU Lua lu ESP8266 xử lý liệu nhận để kích relay tương ứng để điều khiển thiết bị an điện đồng trạng thái lên công tắc cảm ứng va n Điều khiẻn công tắc cảm ứng: ESP8266 xử lý liệu nhận để kích relay tương ứng để điều khiển thiết bị gh tn to - Khi có tín hiệu điều khiển từ cơng tắc cảm ứng khối trung tâm NodeMCU Lua p ie điện đồng trạng thái lên app Blynk d oa nl w oi lm ul nf va an lu z at nh z m co l gm @ an Lu va Trang 33 n SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 5.1 Kết luận 5.1.1 Những mặt làm - Mạch điện với module nhỏ mạch thiết kế, thi cơng hồn chỉnh thử nghiệm nhiều lần động ổn định thực tế - Hệ thống điều khiển giọng nói với Google Assistant - Xây dựng mơ hình để ứng dụng điều khiển thiết bị điện lu nhà công tắc cảm ứng an va - Hệ thống điều khiển thiết bị điện từ xa thông qua wifi n phần mềm Blynk cảm ứng với app Blynk giúp giám sát thiết bị nhà ie gh tn to - Đã đồng điều khiển thiết bị điện nhà công tắc p thông qua giao diện Blynk nl w 5.1.2 Những hạn chế, tồn oa - Điều khiển thiết bị giọng nói cịn chậm d - Điều khiển thiết bị qua công tắc cảm ứng chậm lu va an - Mạch điều khiển chưa sử dụng nguồn 220 V trực tiếp mà ul nf phài sử dụng nguồn riêng để cung cấp cho mạch 5.2 Hướng phát triển đề tài oi lm - Đồng trạng thái cơng tắc cảm ứng phần mềm Blynk cịn chậm z at nh - Khắc phục hạn chế, tồn hệ thống z - Tự phát triển app Android, IOS để điều khiển thiết bị qua wifi gm @ - Tích hợp mạch cơng tắc cảm ứng với ESP 8266 để tạo thành mạch công m co trường l tắc thơng minh đồng vơ hệ sinh thái Smart Home có thị an Lu va Trang 34 n SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hồng TÀI LIỆU THAM KHẢO [1] Giáo trình Arduino cho người bắt đầu, Cộng đồng Arduino Việt Nam [2] Giáo trình Internet Of Thing with ESP 8266 [3] Trang web: Arduino.vn [4] Sách Internet Of Things [ IoT], Tg Phạm Minh Tuấn lu an n va p ie gh tn to d oa nl w oi lm ul nf va an lu z at nh z m co l gm @ an Lu va Trang 35 n SVTH: Mai Thanh Tuấn ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng PHỤ LỤC Code Chương Trình #define BLYNK_PRINT Serial #include #include // You should get Auth Token in the Blynk App lu // Go to the Project Settings (nut icon) an n va char auth[] = "…"; Token Blynk // Set password to "" for open networks ie gh tn to // Your WiFi credentials p char ssid[] = "…"; // Wifi name oa nl w char pass[] = "…"; // pass d // Set your LED and physical button pins here lu const int ledPin4 = 16; const int btnPin2 = 13; BlynkTimer timer; va Trang 36 n SVTH: Mai Thanh Tuấn an Lu void checkPhysicalButton(); m co l gm @ const int btnPin4 = 14; z const int btnPin3 = 12; z at nh const int btnPin1 = 15; oi lm ul const int ledPin3 = 5; nf const int ledPin2 = 4; va an const int ledPin1 = 0; ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng int led1State = LOW; int btn1State = HIGH; int led2State = LOW; int btn2State = HIGH; int led3State = LOW; int btn3State = HIGH; lu an n va int led4State = LOW; gh tn to int btn4State = HIGH; p ie // Every time we connect to the cloud w BLYNK_CONNECTED() { oa nl // Request the latest state from the server d Blynk.syncVirtual(V0); an lu Blynk.syncVirtual(V4); Blynk.syncVirtual(V16); oi lm ul nf va Blynk.syncVirtual(V5); z at nh // Alternatively, you could override server state using: //Blynk.virtualWrite(V12, led1State); m co an Lu va Trang 37 n SVTH: Mai Thanh Tuấn l } gm //Blynk.virtualWrite(V15, led4State); @ //Blynk.virtualWrite(V14, led3State); z //Blynk.virtualWrite(V13, led2State); ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng // When App button is pushed - switch the state BLYNK_WRITE(V0) { led1State = param.asInt(); digitalWrite(ledPin1, led1State); } BLYNK_WRITE(V4) { led2State = param.asInt(); digitalWrite(ledPin2, led2State); lu an } n va BLYNK_WRITE(V5) { tn to led3State = param.asInt(); gh digitalWrite(ledPin3, led3State); p ie } w BLYNK_WRITE(V16) { oa nl led4State = param.asInt(); d digitalWrite(ledPin4, led4State); an lu } led1State = param.asInt(); oi lm ul nf va BLYNK_WRITE(V10) { digitalWrite(ledPin1, led1State); digitalWrite(ledPin2, led2State); an Lu va Trang 38 n SVTH: Mai Thanh Tuấn m co } l digitalWrite(ledPin4, led4State); gm led4State = param.asInt(); @ digitalWrite(ledPin3, led3State); z led3State = param.asInt(); z at nh led2State = param.asInt(); ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng void checkPhysicalButton() { if (digitalRead(btnPin1) == LOW) { // btn1State is used to avoid sequential toggles if (btn1State != LOW) { // Toggle LED state led1State = !led1State; digitalWrite(ledPin1, led1State); lu an n va // Update Button Widget tn to Blynk.virtualWrite(V0, led1State); gh } p ie btn1State = LOW; w } else { oa nl btn1State = HIGH; d } an lu nf va if (digitalRead(btnPin2) == LOW) { if (btn2State != LOW) { an Lu va Trang 39 n SVTH: Mai Thanh Tuấn m co } l Blynk.virtualWrite(V4, led2State); gm // Update Button Widget @ digitalWrite(ledPin2, led2State); z led2State = !led2State; z at nh // Toggle LED state oi lm ul // btnState is used to avoid sequential toggles ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng btn2State = LOW; } else { btn2State = HIGH; } if (digitalRead(btnPin3) == LOW) { // btnState is used to avoid sequential toggles if (btn3State != LOW) { lu an // Toggle LED state n va led3State = !led3State; // Update Button Widget p ie gh tn to digitalWrite(ledPin3, led3State); oa nl } w Blynk.virtualWrite(V5, led3State); d btn3State = LOW; btn3State = HIGH; nf va an lu } else { oi lm ul } z at nh if (digitalRead(btnPin4) == LOW) { // btnState is used to avoid sequential toggles z if (btn4State != LOW) { an Lu va Trang 40 n SVTH: Mai Thanh Tuấn m co digitalWrite(ledPin4, led4State); l led4State = !led4State; gm @ // Toggle LED state ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng // Update Button Widget Blynk.virtualWrite(V16, led4State); } btn4State = LOW; } else { btn4State = HIGH; } } lu an void setup() n va { Serial.begin(9600); p ie gh tn to // Debug console w Blynk.begin(auth, ssid, pass); oa nl // You can also specify server: d //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 8442); nf va an lu //Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8442); oi lm ul pinMode(ledPin1, OUTPUT); pinMode(btnPin1, INPUT_PULLUP); an Lu va Trang 41 n SVTH: Mai Thanh Tuấn m co pinMode(btnPin3, INPUT_PULLUP); l pinMode(ledPin3, OUTPUT); gm digitalWrite(ledPin2, led2State); @ pinMode(btnPin2, INPUT_PULLUP); z pinMode(ledPin2, OUTPUT); z at nh digitalWrite(ledPin1, led1State); ac th si Báo cáo nghiên cứu khoa học GVHD: ThS Lưu Hoàng digitalWrite(ledPin3, led3State); pinMode(ledPin4, OUTPUT); pinMode(btnPin4, INPUT_PULLUP); digitalWrite(ledPin4, led4State); // Setup a function to be called every 100 ms timer.setInterval(500L, checkPhysicalButton); } void loop() lu an { n va Blynk.run(); } p ie gh tn to timer.run(); d oa nl w oi lm ul nf va an lu z at nh z m co l gm @ an Lu va Trang 42 n SVTH: Mai Thanh Tuấn ac th si

Ngày đăng: 17/07/2023, 09:45

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

  • Đang cập nhật ...

Tài liệu liên quan