Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói Đồ án ngành cơ điện: điều khiển thiết bị điện bằng giọng nói
ĐẠI HỌC LÂM NGHIỆP VIỆT NAM KHOA CƠ ĐIỆN VÀ CÔNG TRÌNH BỘ MÔN KỸ THUẬT ĐIỆN VÀ TỰ ĐỘNG HÓA KHOÁ LUẬN TỐT NGHIỆP Đề tài: Thiết kế điều khiển thiết bị điện nhà giọng nói Giảng viên hướng dẫn : ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Sinh viên thực : Trần Mạnh Hùng Lớp : K58 – CƠ ĐIỆN TỬ Khoá : 58 Hà Nội - năm 2017 MỞ ĐẦU Ngày nay, khoa học công nghệ ngày phát triển, đặc biệt lĩnh vực tự động hóa Trong đó, thiết bị điện thông minh đầu tư nghiên cứu phát triển mạnh với nhiều phương thức điều khiển khác như: Touch (chạm), sử dụng cử hay sử dụng giọng nói để lệnh qua có tính ứng dụng cao khu sản xuất hay mô hình nhà thông minh Xuất phát từ thực tế trên, kết hợp với kiến thức học điện tử, tin học đại cương với hiểu biết thiết bị điện tử, em định thực đề tài: “Thiết kế điều khiển thiết bị điện nhà giọng nói” với mục đích tạo điều khiển thông minh, có khả điều khiển thiết bị điện dân dụng nhà giọng nói người, với học hỏi, trau dồi thêm kiến thức thiết bị điện tử nâng cao hiểu biết cho thân Em sử dụng phương pháp nghiên cứu lý thuyết, kết hợp với thực nghiệm khoa học để đưa hướng thiết kế, thử nghiệm hoàn thiện sản phẩm Đề tài em có bố cục gồm chương: Chương 1: Tổng quan hệ thống điều khiển thiết bị điện nhà công nghệ điều khiển giọng nói Chương 2: Giới thiệu linh kiện phần mềm sử dụng điều khiển Chương 3: Thiết kế xây dựng phần mềm điều khiển Chương 4: Thiết kế cấu trúc phần cứng lập trình cho điều khiển Lần đầu khai thác lĩnh vực mẻ kiến thức hạn chế nên chắn tránh khỏi thiếu sót, em mong có góp ý nhắc nhở từ Thầy, Cô giáo để hoàn thiện đề tài Em xin chân thành cảm ơn cô giáo ThS Đinh Hải Linh, Thầy giáo KS Nguyễn Thành Trung giúp đỡ em nhiều trình tìm hiểu, thiết kế hoàn thành đề tài đồ án Sinh viên thực Trần Mạnh Hùng NHẬN XÉT (Của giảng viên hướng dẫn) GIẢNG VIÊN HƯỚNG DẪN (Chữ ký, họ tên) NHẬN XÉT (Của giảng viên phản biện) GIẢNG VIÊN PHẢN BIỆN (Chữ ký, họ tên) MỤC LỤC CHƯƠNG TỔNG QUAN VỀ HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ VÀ CÔNG NGHỆ ĐIỀU KHIỂN BẰNG GIỌNG NÓI 1.1 Khái quát chung thiết bị điện thông minh 1.2 Công nghệ điều khiển thiết bị điện không dây sử dụng bluetooth .1 1.3 Tổng quan hệ thống điều khiển thiết bị điện nhà giọng nói .2 CHƯƠNG GIỚI THIỆU CÁC LINH KIỆN VÀ PHẦN MỀM ỨNG DỤNG DÙNG TRONG BỘ ĐIỀU KHIỂN 2.1 Giới thiệu Arduino 2.2 Phần mềm lập trình Arduino IDE 2.3 Phần mềm mô Proteus .9 2.4 Ứng dụng App Inventor 10 CHƯƠNG THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM ĐIỀU KHIỂN .12 3.1 Thiết kế xây dựng phần mềm điều khiển .12 3.1.1 Thiết kế lưu đồ thuật toán chương trình vi điều khiển 12 3.1.2 Thiết kế lưu đồ thuật toán ứng dụng điện thoại Android .13 3.1.3 Thiết kế giao diện ứng dụng thiết kế App Inventor 15 CHƯƠNG THIẾT KẾ CẤU TRÚC PHẦN CỨNG VÀ LẬP TRÌNH CHO BỘ ĐIỀU KHIỂN 20 4.1 Thiết kế cấu trúc phần cứng 20 4.1.1 Khối nguồn 21 4.1.2 Khối Module Bluetooth HC05 21 4.1.3 Khối xử lý trung tâm Arduino Uno R3 24 4.1.4 Khối công suất 25 4.1.5 Khối LED báo trạng thái .28 4.2 Lập trình cho điều khiển 29 4.3 Hoàn thành sản phẩm thực nghiệm 32 KẾT LUẬN 33 DANH MỤC TÀI LIỆU THAM KHẢO 34 DANH MỤC CÁC BẢNG, HÌNH VẼ Bảng 2.1 Bảng thông số Arduino Uno R3 Hình 1.1 Ứng dụng điều khiển thiết bị điện không dây bluetooth Hình 1.2 Sơ đồ khối hệ thống Hình 2.1 Một mạch Arduino Uno thức với mô tả cổng I/O Hình 2.2 Mạch thực tế Arduino Uno R3 Hình 2.3 Giao diện phần mềm Arduino IDE Hình 2.4 Phần mềm mô mạch điện tử Proteus Hình 2.5 Các linh kiện thư viện Arduino cho Proteus 10 Hình 2.6 Các bước để tạo ứng dụng với App Inventor 11 Hình 3.1 Lưu đồ thuật toán chương trình vi điều khiển 13 Hình 3.2 Lưu đồ thuật toán ứng dụng điện thoại Android 14 Hình 3.3 Tạo đặt tên ứng dụng 15 Hình 3.4 Thiết kế giao diện ứng dụng 16 Hình 3.5 Lập trình tính cho đối tượng 17 Hình 3.6 Lưu ứng dụng dạng apk để cài đặt vào điện thoại Android 17 Hình 3.7 Lưu cài đặt ứng dụng cách quét mã Barcode 17 Hình 3.8 Ứng dụng điện thoại Android 18 Hình 3.9 Giao diện ứng dụng sau khởi động 18 Hình 3.10 Danh sách thiết bị kết nối bluetooth 19 Hình 3.11 Ứng dụng sau kết nối thành công 19 Hình 3.12 Ứng dụng sẵn sàng nhận lệnh từ người dùng 19 Hình 4.1: Sơ đồ khối tổng quan điều khiển thiết bị điện nhà giọng nói 20 Hình 4.2 Sơ đồ nguyên lý mạch nguồn 220VAC – 9VDC 21 Hình 4.3 Sơ đồ nguyên lý mạch nguồn 220VAC – 5VDC 21 Hình 4.4 Hình ảnh thực tế Module Bluetooth HC-05 22 Hình 4.5 Sơ đồ nguyên lý Module HC-05 22 Hình 4.6 Arduino với mô hình nhà thông minh 24 Hình 4.7 IC đệm ULN2003A 25 Hình 4.8 Sơ đồ nguyên lý module relay kênh phần mềm Altium designer 27 Hình 4.9 Sản phẩm module relay kênh 27 Hình 4.10 LED đơn báo trạng thái 28 Hình 4.11 Sản phẩm module relay kênh 28 Hình 4.12 Bộ điều khiển thiết bị điện nhà giọng nói 32 Hình 4.13 Bật đèn giọng nói 32 CHƯƠNG TỔNG QUAN VỀ HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ VÀ CÔNG NGHỆ ĐIỀU KHIỂN BẰNG GIỌNG NÓI 1.1 Khái quát chung thiết bị điện thông minh Thiết bị điện thông minh hệ thống thiết bị điện, điện tử có sử dụng lượng Các thiết bị điện trở nên thông minh có phối hợp công nghệ thông tin truyền thông để chúng kết nối tự động thực thao tác từ điều khiển người Trong nhà thông minh, thiết bị điện người dùng điều khiển thông qua điện thoại hay máy tính bảng Ngoài ra, có khả tương tác với thông số môi trường, giúp người sử dụng giám sát điều khiển thiết bị từ xa, đem lại an toàn, tiện nghi, linh hoạt, tiết kiệm thể đẳng cấp người sử dụng 1.2 Công nghệ điều khiển thiết bị điện không dây sử dụng bluetooth Trong năm gần đây, công nghệ truyền nhận liệu không dây thông minh có bước phát triển mạnh mẽ, góp công lớn việc phát triển hệ thống điều khiển, giám sát từ xa, đặc biệt hệ thống thông minh Hiện nay, có nhiều công nghệ truyền nhận liệu không dây như: RF, Wifi, NFC, Bluetooth Trong đó, Bluetooth công nghệ phát triển từ lâu cải tiến để nâng cao tốc độ khả bảo mật Ứng bật bluetooth thể hình 1.1 Hình 1.1 Ứng dụng điều khiển thiết bị điện không dây bluetooth SVTH: Trần Mạnh Hùng GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung 1.3 Tổng quan hệ thống điều khiển thiết bị điện nhà giọng nói Xuất phát từ thực tế phát triển công nghệ truyền nhận liệu không dây ứng dụng quan trọng mà đem lại, em định thực đề tài: “ Thiết kế điều khiển thiết bị điện nhà giọng nói’’ Đề tài ứng dụng công nghệ Bluetooth phổ biến nhiều thiết bị sử dụng hệ điều hành Android, qua áp dụng rộng rãi cho người sử dụng, góp phần phát triển hệ thống điều khiển thông minh Bộ điều khiển thiết bị điện nhà giọng nói dạng thiết bị điện thông minh Hệ thống nhận tín hiệu từ giọng nói người thông qua ứng dụng cài đặt thiết bị Android có kết nối internet Sau đó, tín hiệu chuyển tới cho xử lý phân tích, xây dựng thuật toán cuối đưa tín hiệu đóng cắt thiết bị điện nhà nhờ relay Sơ đồ khối hệ thống điều khiển thể hình 1.2 Hình 1.2 Sơ đồ khối hệ thống SVTH: Trần Mạnh Hùng GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung CHƯƠNG GIỚI THIỆU CÁC LINH KIỆN VÀ PHẦN MỀM ỨNG DỤNG DÙNG TRONG BỘ ĐIỀU KHIỂN 2.1 Giới thiệu Arduino Arduino board mạch vi xử lý, nhằm xây dựng ứng dụng tương tác với với môi trường thuận lợi Phần cứng bao gồm board mạch nguồn mở thiết kế tảng vi xử lý AVR Atmel 8bit, ARM Atmel 32bit Những Model trang bị gồm cổng giao tiếp USB, chân đầu vào analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác Một mạch Arduino bao gồm vi điều khiển AVR với nhiều linh kiện bổ sung giúp dễ dàng lập trình mở rộng với mạch khác Một khía cạnh quan trọng Arduino kết nối tiêu chuẩn nó, cho phép người dùng kết nối với CPU board với module thêm vào dễ dàng chuyển đổi, gọi shield Vài shield truyền thông với board Arduino trực tiếp thông qua chân khách nhau, nhiều shield định địa thông qua serial bus I²C-nhiều shield xếp chồng sử dụng dạng song song Arduino thức thường sử dụng dòng chip megaAVR, đặc biệt ATmega8, ATmega168, ATmega328, ATmega1280, ATmega2560 Một vài vi xử lý khác sử dụng mạch Aquino tương thích Hầu hết mạch gồm điều chỉnh tuyến tính 5V thạch anh dao động 16 MHz (hoặc cộng hưởng ceramic vài biến thể), vài thiết kế LilyPad chạy MHz bỏ qua điều chỉnh điện áp onboard hạn chế kích cỡ thiết bị Một vi điều khiển Arduino lập trình sẵn với boot loader cho phép đơn giản upload chương trình vào nhớ flash onchip, so với thiết bị khác thường phải cần nạp bên Điều giúp cho việc sử dụng Arduino trực tiếp cách cho phép sử dụng máy tính gốc nạp chương trình Một mạch Arduino hoàn chỉnh với đầy đủ cổng giao tiếp thể hình 3.6 SVTH: Trần Mạnh Hùng GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Hình 2.1 Một mạch Arduino Uno thức với mô tả cổng I/O Trong dòng Arduino Arduino Uno R3 Board mạch phổ biến (hình 2.2) Hình 2.2 Mạch thực tế Arduino Uno R3 Các thông số Arduino Uno R3 thể bảng 2.1: SVTH: Trần Mạnh Hùng GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung CHƯƠNG THIẾT KẾ CẤU TRÚC PHẦN CỨNG VÀ LẬP TRÌNH CHO BỘ ĐIỀU KHIỂN 4.1 Thiết kế cấu trúc phần cứng Hình 4.1: Sơ đồ khối tổng quan điều khiển thiết bị điện nhà giọng nói Cấu trúc phần cứng hệ thống điều khiển thiết thiết bị điện nhà giọng nói bao gồm phận chính: + Khối nguồn: Hệ thống điều khiển sử dụng 02 nguồn 5VDC để cấp nguồn cho khối xử lý trung tâm Arduino Uno R3 khối công suất + Module Bluetooth HC05: Bộ phận đóng vai trò trung gian kết nối, xử lý tín hiệu Smartphone với Khối xử lý trung tâm Arduino Uno R3 + Khối xử lý trung tâm Arduino Uno R3: Bộ phận nhận xử lý tín hiệu đầu vào sau đưa tín hiệu điều khiển cho khối công suất hoạt động + Khối công suất: Nhận tín hiệu từ khối xử lý trung tâm Arduino Uno R3, đóng vai trò điều khiển trực tiếp thiết bị điện nhà + Khối LED báo trạng thái: Hiển thị trạng thái hoạt động hệ thống, bật/tắt thiết bị SVTH: Trần Mạnh Hùng 20 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung 4.1.1 Khối nguồn Khối nguồn sử dụng để cung cấp nguồn cho khối hoạt động bao gồm: + Nguồn Điện áp 5VDC qua cổng usb 7-12VDC qua JACK cho mulde Relay kit Arduino Uno R3 thể sơ đồ nguyên lý hình 4.2 4.3 Hình 4.2 Sơ đồ nguyên lý mạch nguồn 220VAC – 9VDC Hình 4.3 Sơ đồ nguyên lý mạch nguồn 220VAC – 5VDC + Nguồn AC 220V: Cung cấp cho ngõ khối công suất để điều khiển thiết bị điện xoay chiều 4.1.2 Khối Module Bluetooth HC05 Bluetooth chuẩn truyền thông không dây để trao đổi liệu khoảng cách ngắn Chuẩn truyền thông sử dụng sóng radio ngắn(UHF radio) dải tần số ISM (2.4 tới 2.485 GHz) Khoảng cách truyền module vào khoảng 10m Hình ảnh Module Bluetooth thực tế sơ đồ nguyên lý thể hình 4.4 4.5 SVTH: Trần Mạnh Hùng 21 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Hình 4.4 Hình ảnh thực tế Module Bluetooth HC-05 Hình 4.5 Sơ đồ nguyên lý Module HC-05 SVTH: Trần Mạnh Hùng 22 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Sơ đồ chân module bluetooth HC-05 gồm có: - KEY: Chân để chọn chế độ hoạt động AT Mode Data Mode - VCC: chân cấp nguồn từ 3.6V đến 6V bên module có ic nguồn chuyển điện áp 3.3V cấp cho IC BC417 - GND: nối với chân nguồn GND - TXD,RXD: hai chân UART để giao tiếp module hoạt động mức logic 3.3V - STATE: chân báo trạng thái module HC05 * Chế độ hoạt động module bluetooth HC-05 Nguồn cung cấp cho module bluetooth nguồn từ 3.6V đến 6V Quá áp gây cháy module Ngoài module tương thích với vi điều khiển 5V mà không cần chuyển đổi mức giao tiếp 5V 3.3V nhiều loại module bluetooth khác Moduler Bluetooth HC-05 có hai chế độ hoạt động Command Mode Data Mode Ở chế độ Command Mode giao tiếp với module thông qua cổng serial module tập lệnh AT quen thuộc Ở chế độ Data Mode module truyền nhận liệu tới module bluetooth khác Chân KEY dùng để chuyển đổi qua lại hai chế độ Có hai cách để chuyển module hoạt động chế độ Data Mode: Nếu đưa chân lên mức logic cao trước cấp nguồn module đưa vào chế độ Command Mode với baudrate mặc định 38400 Khi chuyển sang chế độ đèn led module nháy chậm (khoảng 2s) ngược lại chân KEY nối với mức logic thấp trước cấp nguồn module hoạt động chế độ Data Mode Nếu module hoạt động chế Data Mode, muốn đưa module vào hoạt động chế độ Command Mode phải đưa chân KEY lên mức cao Lúc module vào chế độ Command Mode với tốc độ Baud Rate thiết lập lần cuối Vì ta phải biết baudrate thiết bị để tương tác với Nếu module chưa thiết lập lại lần mặc định sau: + Baudrate 9600, data bits, stop bits 1, parity : none, handshake: none + Passkey: 1234 + Device Name: HC-05 SVTH: Trần Mạnh Hùng 23 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Ngoài ra, chế độ Data Mode, module HC-05 hoạt động master slave tùy người sử dụng cấu hình + Ở chế độ SLAVE: cần kết nối từ smartphone, laptop, usb Bluetooth để dò tìm module sau pair với mã pin 1234 Sau pair thành công, ta có cổng serial từ xa hoạt động baud rate 9600 + Ở chế độ MASTER: Module tự động dò tìm thiết bị Bluetooth khác (1 module Bluetooth HC – 06, usb Bluetooth, Bluetooth laptop…) tiến hành pair chủ động mà không cần thiết lập từ máy tính smartphone Đây chức sử dụng đề tài hệ thống điều khiển thiết bị điện nhà giọng nói 4.1.3 Khối xử lý trung tâm Arduino Uno R3 Lựa chọn khối xử lý trung tâm board Arduino Uno R3 Sử dụng Arduino Uno R3 kết hợp với module chức bluetooth wifi , với ứng dụng cài đặt máy tính bảng, smartphone hay trình duyệt web người dùng thiết kế hệ thống điều khiển giám sát thông minh thiết bị điện nhà nhà từ nới (được kết nối internet) Hình 4.6 Arduino với mô hình nhà thông minh Hệ thống điều khiển thiết bị điện nhà giọng nói ứng dụng bật phổ biến Arduino mô hình nhà thông minh SVTH: Trần Mạnh Hùng 24 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung 4.1.4 Khối công suất Khối công suất hệ thống gồm IC đệm ULN2003A Relay kênh điều khiển thiết bị a IC đệm ULN2003A Thông số kỹ thuật IC ULN2003A: + Điện áp max: 50V (Vce) + Điện áo vào max: 30V (Vin) + Dòng điện đầu liên tục: Ic = 500mA + Dòng điện đầu vào liên tục: IIN = 25mA + Công suất tiêu tán cặp darlington: 1W + Nhiệt độ làm việc: -55 ~ 150oC IC ULN2003A vi mạch điệm, chất cấu tạo mảng darlington chịu dòng đện lớn điện áp cao, có chứa cặp transistor NPN ghép darlington cực góp hở với cực phát chung Mỗi kênh ULN2003A có diode chặn sử dụng trường hợp tải có tính cảm ứng, ví dụ relay ULN2003A có khả điều khiển kênh riêng biệt, nối trực tiếp với vi điều khiển 5V Bên cạnh đó, kênh ULN2003A chịu dòng điện lớn khoảng thời gian dài lên tới 500mA với biên độ đỉnh lên tới 600mA Hình ảnh thực tế IC ULN2003A thể hình 4.7 Hình 4.7 IC đệm ULN2003A SVTH: Trần Mạnh Hùng 25 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung b Module Relay kênh Relay thiết bị đóng cắt bản, sử dụng nhiều sống thiết bị điện tử * Cấu tạo relay gồm có: - Vỏ (Thường làm nhựa để trần); - Lõi cuộn dây điện từ (Thường làm nhựa giấy cách điện - Cuộn dây điện từ - Tiếp điểm tĩnh - Tiếp điểm động * Nguyên lý hoạt động: Ban đầu cuộn dây chưa cấp điện, cặp tiếp điểm thường đóng tiếp xúc với cặp tiếp điểm thường mở tách xa Khi cuộn dây cấp điện trở thành nam châm điện Khi lực điện từ cuộn dây hút lõi sắt làm cho cặp tiếp điểm thường mở tiếp xúc với cặp tiếp điểm thường đóng rời Khi nối nguồn tải thông qua cặp tiếp điểm thường mở relay, việc điều khiển việc đóng/ngắt nguồn cuộn dây relay ta điều khiển việc đóng/ngắt tải khỏi nguồn điện * Thiết kế module relay kênh: Module realy tạo nên linh kiện rơ-le, transistor có thêm PC817 dùng để cách ly điện khối khác bảo vệ mạch điện tử Sơ đồ nguyên lý hình ảnh mạch in 3D module relay thể hình 4.8 hình 4.9 SVTH: Trần Mạnh Hùng 26 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Hình 4.8 Sơ đồ nguyên lý module relay kênh phần mềm Altium designer Hình 4.9 Sản phẩm module relay kênh Thông số kỹ thuật module relay: - Mặc định điều khiển: Bật 0, tắt - Thay đổi J1, J0 để thay đổi mức điều khiển - Đầu module relay: + Tiếp điểm relay 220V 10A ( tiếp điểm, điện áp ra) + NC: Tiếp điểm thường đóng + N0: Tiếp điểm thường mở SVTH: Trần Mạnh Hùng 27 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung Ký hiệu nguồn module relay: + VCC, GND nguồn chung với điều khiển + VSS+, VSS- nguồn Relay Nếu cách ly sử dụng nguồn riêng, dùng chung nguồn cần Jump chốt 2.54mm để nối VCC VSS+; GND VSS4.1.5 Khối LED báo trạng thái Hệ thống sử dụng LED siêu sáng 5mm màu xanh dương màu đỏ, có điện áp làm việc khoảng 3V, dòng tối đa 20mA để hiển thị trạng thái hoạt động (bật/tắt) thiết bị (hình 4.10) Hình 4.10 LED đơn báo trạng thái Vì LED có hiệu điện hoạt động thấp, chạy hiệu điện 5V, cần phải sử dụng điện trở để giảm hiệu điện vào LED Với loại LED có hiệu điện nhỏ, cần mắc nối tiếp vào chân dương LED điện trở có trị số khoảng 560 – 1000 Ohm, loại LED có hiệu điện lớn cần mắc với điện trở nhỏ hơn, khoảng từ 220 – 560 Ohm Sơ đồ mô khối LED báo tạng thái thể hình 4.11 Hình 4.11 Sản phẩm module relay kênh SVTH: Trần Mạnh Hùng 28 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung 4.2 Lập trình cho điều khiển Dựa vào thuật toán xây dựng, code lập trình cho điều khiển viết dựa tảng ngôn ngữ C/C++ mã nguồn mở sau: *Mã code chương trình: //Coded By: TRAN MANH HUNG //Dieu khien thiet bi dien nha bang giong noi(Bluetooth + Android) //Khai bao thu vien su dung #include SoftwareSerial BT(10, 11); //Thiết lập chân giao tiếp TX, RX 10 11 String voice; int tb1 = 2, //Chân số điều khiển thiết bị tb2 = 3, //Chân số điều khiển thiết bị tb3 = 4, //Chân số điều khiển thiết bị tb4 = 5, //Chân số điều khiển thiết bị led1 = 6, led2 = 7, led3 = 8, led4 = 9; // Chương trình bật/tắt toàn thiết bị // void allon(){ digitalWrite(tb1, HIGH); //Thiết lập chân điều khiển thiết bị output digitalWrite(tb2, HIGH); //Thiết lập chân điều khiển thiết bị output digitalWrite(tb3, HIGH); //Thiết lập chân điều khiển thiết bị output digitalWrite(tb4, HIGH); //Thiết lập chân điều khiển thiết bị output digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); digitalWrite(led3, HIGH); digitalWrite(led4, HIGH); } void alloff(){ digitalWrite(tb1, LOW); digitalWrite(tb2, LOW); digitalWrite(tb3, LOW); digitalWrite(tb4, LOW); digitalWrite(led1, LOW); digitalWrite(led2, LOW); digitalWrite(led3, LOW); digitalWrite(led4, LOW); } // -Hàm khởi tạo hệ thống // void setup() { BT.begin(9600); pinMode(LED_BUILTIN, OUTPUT); Serial.begin(9600); SVTH: Trần Mạnh Hùng 29 chân là là GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung pinMode(tb1, OUTPUT); pinMode(tb2, OUTPUT); pinMode(tb3, OUTPUT); pinMode(tb4, OUTPUT); pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(led4, OUTPUT); } void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); while (BT.available()){ //Kiểm tra byte để đọc delay(30); //Delay để ổn định char c = BT.read(); // tiến hành đọc if (c == '#') {break;} //Thoát khỏi vòng lặp phát từ khác (#) voice += c; //Shorthand for voice = voice + c } if (voice.length() > 0) { Serial.println(voice); // // // Hàm điều khiển đồng thời tất thiết bị // if(voice == "*bật hết") {allon();} //Bật tất thiết bị (Gọi hàm) else if(voice == "*tắt hết"){alloff();} //Tắt tất thiết bị (Gọi hàm) // Hàm bật thiết bị // else if(voice == "*bật đèn") {digitalWrite(tb1, HIGH); digitalWrite(led1, HIGH);} else if(voice == "*bơm nước") {digitalWrite(tb2, HIGH); digitalWrite(led2, HIGH);} else if(voice == "*bật quạt") {digitalWrite(tb3, HIGH); digitalWrite(led3, HIGH);} // Hàm tắt thiết bị // else if(voice == "*Tắt Đèn") {digitalWrite(tb1, LOW); digitalWrite(led1, LOW);} else if(voice == "*tắt máy bơm") {digitalWrite(tb2, LOW); digitalWrite(led2, LOW);} else if(voice == "*tắt quạt") {digitalWrite(tb3, LOW); digitalWrite(led3, LOW);} // // voice="";}} //Thiết lập lại biến - Giải thích mã code lập trình: + Đầu tiên, khai báo chuỗi với câu lệnh String voice setup chân giao tiếp TXD RXD câu lệnh: SVTH: Trần Mạnh Hùng 30 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung SoftwareSerial BT(10, 11); //Thiết lập chân giao tiếp TX, RX chân 10 11 + Khai báo biến tương ứng với chân tín hiệu digital cần sử dụng với câu lệnh int tb1 = 2, tb2 = 3, + Tiếp theo, khởi tạo hàm bật tắt toàn thiết bị với câu lệnh: digitalWrite(pin,value); // pin số chân digital muốn thiết đặt, value HIGH LOW (tương ứng với mức 5V 0V) Vd: digitalWrite(tb1, HIGH); //Thiết lập chân điều khiển thiết bị output digitalWrite(tb1, LOW); + Trong hàm khởi tạo hệ thống, cấu hình chân digital cần sử dụng với câu lệnh: pinMode(pin, mode); // Cấu hình pin hoạt động đầu vào (INPUT) đầu (OUTPUT) vd: pinMode(tb1, OUTPUT); + Để vi điều khiển nhận xử lý tín hiệu từ module bluetooth HC-05 thông qua cổng giao tiếp Serial, cần phải khai báo biến char c dùng câu lệnh gán: char c = BT.read(); để đọc ký tự nhớ đệm Serial Sau đọc xong ký tự lưu nhớ đệm Serial, vi điểu khiển so sánh ký tự với chuỗi voice khai báo ban đầu từ xuất tín hiệu tương tự cho chân digital thông qua hàm if Vd: if(voice == "*bật đèn") {digitalWrite(tb1, HIGH);digitalWrite(led1, HIGH);} if(voice == "*Tắt Đèn") {digitalWrite(tb1, LOW);digitalWrite(led1, LOW);} SVTH: Trần Mạnh Hùng 31 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung 4.3 Hoàn thành sản phẩm thực nghiệm Sau xây thiết kế xây dựng xong phần cứng phần mềm điều khiển, em hoàn thành xong điều khiển thiết bị điện nhà giọng nói hoạt động theo mục tiêu ban đầu đề Dưới số hình ảnh sản phẩm kết thực nghiệm sản phẩm (hình Hình 4.12 Bộ điều khiển thiết bị điện nhà giọng nói Hình ảnh thực nghiệm điều khiển: Hình 4.13 Bật đèn giọng nói SVTH: Trần Mạnh Hùng 32 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung KẾT LUẬN Sau tháng thực đề tài tốt nghiệp “ Thiết kế điều khiển thiết bị điện nhà giọng nói” thu số thành công định Đề tài lần tìm hiểu nghiên cứu Việt Nam, sản phẩm hoàn thành có số ưu điềm vượt trội đề tài trước đơn giản mạch điều khiển lập trình Như vậy, người sử dụng ngồi phòng điều khiển thiết bị mà mong muốn mà không cần phải bật công tắc Đề tài có nhiều điểm mạnh mà thiết bị điện dân dụng khác không thực được: - Người điều khiển ngồi lệnh với điều khiển sử dụng trực tiếp điện áp 5VDC tránh tiếp xúc trực tiếp với lưới điện 220VAC, gây nguy hiểm cho người tiếp cận với ổ cắm rò rỉ điện - Giảm số lượng lớn dây nối thiết bị khoảng cách xa - Một điều khiển điều khiển lúc nhiều tiếp điểm relay nối với nhiều thiết bị, qua điều khiển bật tắt chúng đồng thời cách dễ dàng - Có thể thay đổi đa dạng câu lệnh tùy theo ý muốn người sử dụng Ngoài điểm mạnh kể trên, điều khiển tồn hạn chế như: - Khoảng cách truyền chưa xa sử dụng sóng Bluetooth cần phải có thiết bị Android kết nối Wifi - Khi lệnh giọng nói bị ảnh hưởng có tạp âm cường độ lớn * Hướng phát triển đề tài: Đề tài “ Thiết kết điều khiển thiết bị điện nhà giọng nói” tiền đề cho phát triển mô hình điều khiển thiết bị giọng nói sử dụng internet wifi, với khoảng cách nhận lệnh xa hơn, hoạt động ổn định môi trường ồn mà không bị ảnh hưởng, đóng vai trò quan trọng thiếu hệ thống nhà thông minh SVTH: Trần Mạnh Hùng 33 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung TÀI LIỆU THAM KHẢO Tiếng Việt: Tài liệu học tập, Giáo trình Arduino Tiếng Việt, Học viện hàng không việt nam, Khoa Điện tử viễn thông Phạm Văn Ất, Kỹ thuật lập trình C nâng cao, Năm 2006, Nhà xuất giao thông vận tải Tiếng Anh: Don Wilcher, Learn Electronics with Arduino, TECHNOLOGY IN ACTION Địa website: http://www.arduino.vn http://diyhacking.com http://banlinhkien.vn http://arduino.cc/ SVTH: Trần Mạnh Hùng 34 GVHD: ThS Đinh Hải Lĩnh KS Nguyễn Thành Trung ... QUAN VỀ HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ VÀ CÔNG NGHỆ ĐIỀU KHIỂN BẰNG GIỌNG NÓI 1.1 Khái quát chung thiết bị điện thông minh 1.2 Công nghệ điều khiển thiết bị điện không dây... Bộ điều khiển thiết bị điện nhà giọng nói 32 Hình 4.13 Bật đèn giọng nói 32 CHƯƠNG TỔNG QUAN VỀ HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ ĐIỆN TRONG NHÀ VÀ CÔNG NGHỆ ĐIỀU KHIỂN BẰNG GIỌNG... học điện tử, tin học đại cương với hiểu biết thiết bị điện tử, em định thực đề tài: Thiết kế điều khiển thiết bị điện nhà giọng nói với mục đích tạo điều khiển thông minh, có khả điều khiển thiết