Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
1,37 MB
Nội dung
MỤC LỤC Giới thiệu đề tài: a Tên mục tiêu đề tài: b Các tính bản: c Phương pháp thực hiện: Thực hiện: 2 Mơ hình hệ thống: a i Mô tả sơ lược hệ thống: ii Vẽ mơ hình hệ thống dạng khối: Thiết kế phần cứng mạch : b i Mô tả sơ lược hoạt động mạch điện: ii Vẽ sơ đồ khối phần cứng mạch điện iii Thiết kế chi tiết : iv Sơ đồ ngun lí tổng hợp tồn mạch : 12 Thiết kế phần mềm điều khiển board Arduino Uno R3: 13 c i Mô tả chức phần mềm: 13 ii Vẽ lưu đồ chương trình chính: 13 iii Đoạn code chương trình: 14 Thiết kế phần mềm điều khiển điện thoại Android: 15 d i Mơ tả chức chính: 15 ii Giao diện chương trình: 17 iii Đoạn code chức chính: 17 Kết thực hiện: 18 a Mơ hình thực tế: 18 b Phần cứng mạch điện: 19 c Trình bày kết thực tính đặt hệ thống: 19 i Tính đặt ra: Có thể bật/ tắt thiết bị điện nhà 220VAC 19 ii Kết thực hiện: Mạch điện có khả điều khiển bật tắt bóng đèn 220VAC với độ nhạy cao khoảng cách vài mét 19 d Nhận xét chung ưu nhược điểm hệ thống: 19 e Nêu hướng phát triển: 20 Tài liệu tham khảo: 20 Phụ lục: 20 Giới thiệu đề tài: a Tên mục tiêu đề tài: - Đề tài số 15 : Tìm hiểu Module Bluetooth, thiết kế ứng dụng làm mạch điều khiển thiết bị điện nhà từ xa - Mục tiêu đề : Thiết kế mạch điều khiển thiết bị điện từ xa, điều khiển App android điện thoại ( tất điện thoại sử dụng hệ điều hành android ) b Các tính bản: - Mạch điều khiển bật/ tắt thiết bị điện - Có thể điều khiển từ xa app điện thoại c Phương pháp thực hiện: - B1: Từ sơ đồ khối ta thiết kế mạch nguyên lý chi tiết để mô phần mềm Proteus - B2: Từ lưu đồ, thuật tốn hình thành, viết code phần mềm Arduino, nạp vào mạch mô Proteus để chạy mô - B3: Nếu chạy mô với mục tiêu đề bắt đầu làm phần cứng theo mạch mơ ( chuẩn bị linh kiện dụng cụ cần thiết ) Nếu mạch mô chạy không mục tiêu đề quay lại B2 - B4: Nạp chương trình vào mạch thực tế để chạy lấy kết so sánh với mạch mô proteus sau hồn thiện mạch theo mục tiêu đề tài Thực hiện: a Mơ hình hệ thống: i Mô tả sơ lược hệ thống: Hệ thống gồm có khối : Khối điều khiển : App android điện thoại android Khối xử lý : Board Arduino Uno R3 Khối hiển thị : Hiển thị trạng thái lên hình điện thoại Khối chấp hành : Module relay kênh (5VDC) Hệ thống gồm khối xử lý trung tâm dùng Arduino Uno R3 để xử lý Hệ thống có nút ấn giao diện điện thoại để điều khiển thiết bị điện nhà Phần hiển thị, hiển thị trạng thái hoạt động thiết bị điện nhà (đèn sáng hay đèn tắt) hình điện thoại ii Vẽ mơ hình hệ thống dạng khối: Khối nguồn 9VDC ( Pin vuông ) Khối xử lý (Arduino UNO R3) Điện thoại android Module Bluetooth Khối chấp hành (Module Relay) Nguồn 220VAC Khối thiết bị b Thiết kế phần cứng mạch : i Mô tả sơ lược hoạt động mạch điện: Vi điều khiển Arduino UNO R3 đóng vai trò khối xử lý trung tâm hệ thống Về phần điều khiển ta viết app android sử dụng điện thoại, lệnh điều khiển ON/OFF thiết bị ON/OFF thiết bị app truyền xuống Arduino thông qua module Bluetooth, nhận lệnh Arduino xử lý cho tín hiệu điều khiển ON/OFF thiết bị ON/OFF thiết bị ii Vẽ sơ đồ khối phần cứng mạch điện iii Thiết kế chi tiết : Khối điều khiển: Module Bluetooth HC-05 Phân loại: Module Bluetooth có loại module Bluetooth HC-05 module Bluetooth HC-06 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 Module Bluetooth HC-05 thiết kế dựa chip BC417 Con chip phức tạp sử dụng nhớ flash 8Mbit Nhưng việc sử dụng module hoàn toàn đơn giản nhà sản xuất tích hợp thứ cho bạn module Bluetooth HC05 Chọn Module Bluetooth HC-05 sử dụng chế độ master slave module Bluetooth HC-06 chạy chế độ slave Chức năng: Module Bluetooth có chức nhận tín hiệu điều khiển từ app android đưa Arduino xử lý điều khiển hoạt động module relay Cấu tạo Module Bluetooh HC-05: CSR Bluetoothing Radio MB Flash Memory Atenna RF Xformer, Matching 26 Mhz Xtal Level Shifting 5V-3.3V Regulator Hình ảnh thực tế: Thông số Module Bluetooth HC-05: Dải điện áp hoạt động : 3.3 - 5VDC Dòng điện hoạt động : Khi Pairing 30mA (ghép nối), sau pairing hoạt động truyền nhận bình thường 8mA Baudrate : 1200,2400,4800,9600,19200,38400,57600,115 20 Dải tần hoạt động : 2.4GHz Kích thước : 26.9mm x 13mm x 2.2mm Giao tiếp : Bluetooth serial port (master and slave) Nhiệt độ làm việc : -20℃ ~ +75℃ Tốc độ: Asynchronous : 2.1Mbps(Max)/160kbps Synchronous : 1Mbps/1Mbps Sơ đồ nguyên lý: Nguyên lý hoạt động: - Module HC-05 có hai chế độ hoạt động Command Mode Data Mode(có thể lựa chọn chế độ làm việc cách thay đổi trạng thái chân 34 - chân KEY): + Ở chế độ Command Mode ta giao tiếp với module thông qua cổng serial module tập lệnh AT quen thuộc Lưu ý lệnh AT chữ in hoa + Ở chế độ Data Mode module truyền nhận liệu tới module bluetooth khác - Chân UART_TXD có chức truyền liệu tới chân RXD, nối với chấn RXD vi điều khiển - Chân UART_RXD có chức nhân liệu từ chân TXD, nối với chấn TXD vi điều khiển - 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 Chế độ hữu ích bạn khơng biết baudrate module thiết lập tốc độ 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 để đưa module vào hoạt động chế độ Command Mode bạn đưa chân KEY lên mức cao Lúc module vào chế độ Command Mode với tốc độ Baud Rate bạn thiết lập lần cuối Vì bạn phải biết baudrate thiết bị để tương tác với Chú ý module bạn chưa thiết lập lại lần mặc định sau: - Thiết lập mặc định Module Bluetooth HC-05: + Thiết lập UART mặc định: Baudrate 9600, N, 8, - - - - - + Tên: HC-05 + Pairing code mặc định: 1234 0000 + Chân EN nhận mức logic TTL 3V3 Khơng có chức chọn vào chế độ AT COMMAND Ở chế độ Data Mode HC-05 hoạt động master slave tùy vào việc bạn cấu hình (riêng HC-06 bạn cấu hình chế độ SLAVE) Ở chế độ SLAVE: bạn cần thiết lập 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, bạn 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 Ưu điểm: + Truyền liệu thiết bị khơng cần cáp + Tốn lượng + Bảo mật tương đối cao + Giá thành rẻ Nhược điểm: + Truyền khoảng cách ngắn + Số lượng kết nối hạn chế + Tốc độ truyền khơng cao + Dễ nhiễu - Phần cấu hình cho module Bluetooth HC-05: + Lệnh AT+NAME= Nhom_04 (Set Name) + Lệnh AT+PSWD=“0004“ (Set Password) + Lệnh AT+RESET (Reset and exit AT mode) - Chỉ cần cài đặt cấu hình cho module lần sử dụng cho sau khơng cần phải cấu hình lại - Sơ đồ kết nối để cấu hình cho module Bluetooth HC-05: Khối xử lí : Board Arduino Uno R3 - Arduino UNO sử dụng vi điều khiển họ 8bit AVR ATmega8, ATmega168, ATmega328 Bộ não xử lí tác vụ đơn giản điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm trạm đo nhiệt độ - độ ẩm hiển thị lên hình LCD,… - Arduino UNO cấp nguồn 5V thơng qua cổng USB cấp nguồn ngồi với điện áp khuyên dùng 7-12VDC giới hạn 20V Thường cấp nguồn pin vng 9V hợp lí khơng có sẵn nguồn từ cổng USB Nếu cấp nguồn vượt ngưỡng giới hạn trên, bạn làm hỏng Arduino UNO - Nhắc tới dòng mạch Arduino dùng để lập trình, mà người ta thường nói tới dịng Arduino UNO Hiện dòng mạch phát triển tới hệ thứ (R3) - Chức năng: Xử lí tín hiệu đưa vào từ App điện thoại Android thông qua Module Bluetooh từ điều khiển thiệt bị - Hình ảnh thực tế: - Thơng số kỹ thuật board Arduino Uno R3 - Chip vi điều khiển ATMEGA 328P Arduino Uno R3 chân chip: Khối hiển thị: App android điện thoại android - Sử dụn MIT APP INVENTOR tạo ứng dụng android để điều khiển có biết trạng thái điều khiển thiết bị - Giao diện hiển thị gồm trạng thái bật/ tắt thiết bị điện độc lập Giao diện thực điện thoại: Khối chấp hành: Module relay kênh (5VDC) - (Rơ-le công tắc (khóa K) dùng nhiều ứng dụng đóng ngắt thiết bị tiêu thụ dịng điện lớn (0 Yes Relay đóng Bật thiết bị BamNut_Arduino= ="On_Thiet_Bi_1" No Yes BamNut_Arduino= ="On_Thiet_Bi_2" No B A Relay đóng Bật thiết bị A B Yes Relay hở Tắt thiết bị BamNut_Arduino= ="Off_Thiet_Bi_1" No Yes No BamNut_Arduino= ="Off_Thiet_Bi_2" iii Relay hở Tắt thiết bị Đoạn code chương trình: #include SoftwareSerial HC05(0, 1); String BamNut_Arduino=""; void setup() { // put your setup code here, to run once: Serial.begin(9600); HC05.begin(9600); Serial.setTimeout(100); pinMode(2, OUTPUT); digitalWrite(2, LOW); pinMode(4, OUTPUT); digitalWrite(4, LOW); } void loop() { // put your main code here, to run repeatedly: if(HC05.available()) { BamNut_Arduino=HC05.readString(); if(BamNut_Arduino=="On_Thiet_Bi_1") { digitalWrite(4, HIGH); Serial.println(BamNut_Arduino); } if(BamNut_Arduino=="Off_Thiet_Bi_1") { digitalWrite(4, LOW); Serial.println(BamNut_Arduino); } if(BamNut_Arduino=="On_Thiet_Bi_2") { digitalWrite(7, HIGH); Serial.println(BamNut_Arduino); } if(BamNut_Arduino=="Off_Thiet_Bi_2") { digitalWrite(7, LOW); Serial.println(BamNut_Arduino); } } } d Thiết kế phần mềm điều khiển điện thoại Android: i Mô tả chức chính: - Tất loại điện thoại chạy hệ điều hành android cài ứng dụng android, ứng dụng viết online MIT App Inventor nhằm tạo giao diện trực quan, dễ sử dụng cho việc điều thiết bị điện Có khả điều khiển thiết bị - Khi nhấn button điều khiển bật thiết bị app gửi lệnh thông qua module Bluetooth đến Arduino để Arduino xử lý điều khiển bật thiết bị - Khi nhấn button điều khiển tắt thiết bị app gửi lệnh thông qua module Bluetooth đến Arduino để Arduino xử lý điều khiển tắt thiết bị - Khi nhấn button điều khiển bật thiết bị app gửi lệnh thông qua module Bluetooth đến Arduino để Arduino xử lý điều khiển bật thiết bị - Khi nhấn button điều khiển tắt thiết bị app gửi lệnh thơng qua module Bluetooth đến Arduino để Arduino xử lý điều khiển tắt thiết bị - Lưu đồ chương trình Smart Phone: start Yêu cầu điện thoại bật Bluetooth Gửi ký tự (Led_on, Led_off, …) Nếu đầy lần kết nối yêu cầu nhập pass Từ lần thứ bỏ qua nước nhập pass No Tìm địa MAC thiết bị Yes No Button nhấn “Kết nối thành công !!!” Yes ii Giao diện chương trình: iii Đoạn code chức chính: Kết thực hiện: a Mơ hình thực tế: b Phần cứng mạch điện: Board Arduino Uno R3 Module Relay kênh (5VDC) Module Bluetooth HC-05 c Trình bày kết thực tính đặt hệ thống: i Tính đặt ra: Có thể bật/ tắt thiết bị điện nhà 220VAC ii Kết thực hiện: Mạch điện có khả điều khiển bật tắt bóng đèn 220VAC với độ nhạy cao khoảng cách vài mét d Nhận xét chung ưu nhược điểm hệ thống: - Ưu điểm: + Truyền liệu thiết bị khơng cần cáp + Tốn lượng + Bảo mật tương đối cao + Giá thành rẻ - Nhược điểm: + Truyền khoảng cách ngắn + Số lượng kết nối hạn chế + Tốc độ truyền không cao + Dễ nhiễu - e Nêu hướng phát triển: Điều khiển tất thiết bị điện nhà Đồng tín hiệu để biết trạng thái relay Tài liệu tham khảo: http://wikiarduini.blogspot.com/2017/08/gioi-thieu-module-bluetooth-hc05.html https://www.viralsciencecreativity.com/post/hc-05-bluetooth-modulechange-name-and-password-at-commands http://arduino.vn/bai-viet/333-dieu-khien-arduino-thong-qua-bluetoothbang-dien-thoai-android LỜI CÁM ƠN Xin chân thành cám ơn Thầy nhiệt tình giảng dạy giúp đỡ nhóm suốt q trình thực đề tài !!! Phụ lục: a Quá trình thực đề tài: i Kế hoạch thời gian: tuần ii Những thuận lợi khó khăn q trình thực kiến nghị: b Danh sách thành viên bảng phân chia cơng việc: - Tìm hiểu thiết bị sử dụng: Phi, Sơn - Lên ý tưởng chức cho đề tài: Nhàn, Phi, Sơn - Thiết kế phần cứng: Phi, Sơn - Thiết kế phần mềm: Nhàn c Trả lời câu hỏi: Phần trả lời câu hỏi: -Huỳnh Thanh Nhàn B1609402 Câu hỏi: Giao tiếp Bluetooth với Arduino dạng gì? Thơng số ? Trả lời: Arduino Uno R3 giao tiếp với module Bluetooth HC-05 qua truyền thông UART Cài đặt tốc độ baud cho Arduino 9600 module Bluetooth 9600, tốc độ baud phải giống kết nối, truyền nhận liệu qua lại với -Nguyễn Tấn Phi B1609406 Câu hỏi : Lệnh gừi từ App Android xuống cho Arduino gì? Trả lời : Khi bấm button bật thiết bị app Android , App gửi liệu (chuỗi “On_Thiet_Bi_1”) đến board Arduino thông qua Module Bluetooth liệu so sánh với liệu Arduino để thực công việc bật Relay -Hồng Sơn B1609416 Câu hỏi: Nếu muốn đo nhiệt độ từ board Arduino làm nào? Trả lời: Ta nối chân OUT cảm biến nhiệt độ vào chân analog input board Arduino ( ví dụ chân A0 ), khai báo chân input sau đọc liệu từ cảm biến về, dùng cơng thức tính tốn để quy đổi giá trị đọc nhiệt độ thực tế, gán giá trị cho biến sau viết lệnh gửi giá trị biến qua app android thơng qua chuẩn uart đến module bluetooth Trên app android ta viết lệnh đọc giá trị biến gửi, cho hiển thị giá trị lên hình ... ứng dụng làm mạch điều khiển thiết bị điện nhà từ xa - Mục tiêu đề : Thiết kế mạch điều khiển thiết bị điện từ xa, điều khiển App android điện thoại ( tất điện thoại sử dụng hệ điều hành android... UNO sử dụng vi điều khiển họ 8bit AVR ATmega8, ATmega168, ATmega328 Bộ não xử lí tác vụ đơn giản điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm trạm đo nhiệt độ - độ... dụng cho việc điều thiết bị điện Có khả điều khiển thiết bị - Khi nhấn button điều khiển bật thiết bị app gửi lệnh thơng qua module Bluetooth đến Arduino để Arduino xử lý điều khiển bật thiết