Báo cáo thực hành lập trình hệ thống: Ngôi nhà thông minh
lượt xem 82
download
Mục đích Báo cáo thực hành lập trình hệ thống: Ngôi nhà thông minh là nhằm hiểu về bảng mạch arduino, cách sử dụng các linh kiện liên quan, biết nối dây và đẩy code vào arduino, hoàn thành sản phẩm demo, ứng dụng (công nghệ vào đời sống: nhà thông minh). Để nắm vững nội dung chi tiết mời các bạn tham khảo tài liệu.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Báo cáo thực hành lập trình hệ thống: Ngôi nhà thông minh
- Báo cáo thực hành lập trình hệ thống ĐỀ TÀI: NGÔI NHÀ THÔNG MINH Giáo viên hướng dẫn: Huỳnh Hữu Hưng Sinh viên thực hành: Hồ Hải Nghĩa – 13T3 Sinh viên thực hành: Trần Văn Thanh - 13T3
- Mục đích bài thực hành 1. hiểu về bảng mạch arduino 2. Cách sử dụng các linh kiện liên quan 3. Biết nối dây và đẩy code vào arduino 4. Hoàn thành sản phẩm demo 5. Ứng dụng (công nghệ vào đời sống: nhà thông minh)
- Giới thiệu về bảng mạch arduino Vi điều khiển ATmega32u4 (họ 8bit) Tần số hoạt động 16 MHz Dòng tiêu thụ ở các chân I/O 40mA Điện áp vào khuyên dùng 7-12V – DC Điện áp vào giới hạn 6-20V – DC Điện áp hoạt động 5V – DC Số chân Digital I/O 14 (7 chân PWM) Số chân Analog 12 (các chân PWM có thể dùng như chân Analog bình thường - nghĩa là có thể dùng Analog read) (độ phân giải 10bit) Dòng tối đa trên mỗi chân I/O 40 mA Dòng ra tối đa (5V) 500 mA Dòng ra tối đa (3.3V) 50 mA Bộ nhớ flash 32 KB (ATmega32u4) với 4KB dùng bởi bootloader SRAM 2.5 KB (ATmega32u4) EEPROM 1 KB (ATmega32u4) Kích thước 68.6mm x 53.3mm
- Ứng dụng của arduino trong thiết kế nhà thông minh 1. Hệ thống cảm biến: cảm biến anh sáng và cảm biến nhiệt độ 2. Các thiết bị hiển thị: đèn LED 3. Các module chức năng (shield) hỗ trợ kêt nối có dây với các thiết bị khác hoặc các kết nối không dây thông dụng (3G, GPRS, Wifi, Bluetooth, 315/433Mhz, 2.4Ghz,…), … 4. Và một số ứng dụng khác
- Bảng thiết bị (các linh kiện cần dùng) Bảng mạch Cảm biến ánh sáng Cảm biến nhiệt Module Bluetooth arduino độ LM35 HC06 Đèn LED Motor Module role Dây nối điện
- Kết nối các linh kiện và module code (lắp mạch quang trở và bóng đèn) Trên mạch có 1 biến trở 10K ohm dùng để điều chỉnh độ• nh ạy sáng: Thay đổi điện trở theo ánh sáng Vặn về bên trái (nhìn theo hướng từ dưới lên quang trở): tăng đ • HIGHT: ộ nhạy của cảm biến với ánh bật sáng: chỉ cần lượng ánh sáng nhỏ thì mạch sẽ tự ngắt. • LOW: tắt Vặn về bên phải: giảm độ nhạy của cảm biến với ánh sáng, cần lượng ánh sáng với cường độ mạnh hơ• n đCó ể ngắt m thể ạch. điều chỉnh độ nhạy Cảm biến ánh sáng
- Kết nối các linh kiện và module code (lắp mạch quang trở và bóng đèn) Sử dụng cảm biến kết hợp với arduino để lập trình bật tắt. • Tín hiệu xuất ra là giá trị Digital HIGHT (5V) và LOW • Tại chân OUT trả về hai mức là HIGHT và LOW Lắp mạch như hình trên
- Kết nối các linh kiện và module code (lắp mạch quang trở và bóng đèn) int cambien = 10;// khai báo chân digital 10 cho cảm biến int Led = 8;//kháo báo chân digital 8 cho đèn LED void setup (){ pinMode(Led,OUTPUT);//pinMode xuất tín hiệu đầu ra cho led pinMode(cambien,INPUT);//pinMode nhận tín hiệu đầu vào cho cảm biê} void loop (){ int value = digitalRead(cambien);//lưu giá trị cảm biến vào biến value digitalWrite(Led,value);//xuất giá trị ra đèn LED } Lắp mạch như hình trên
- Kết nối các linh kiện và module code (lắp cảm biến nhiệt và motor) • Cảm biến nhiệt độ LM35 sử dụng trong ứng dụng đo nhiệt độ thời gian thực. • Nhiệt độ được xác định bằng các đo hiệu điện thế ngõ ra của LM35 • Đơn vị nhiệt độ: °C • Nhiệt độ thay đổi tuyến tính: 10mmV/°C • Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng 2°C tới 150°C • LM35 có hiệu năng cao, công suất tiêu thụ là 60uA
- Kết nối các linh kiện và module code (lắp cảm biến nhiệt và motor) int sensorPin = A0;//chân analog kết nối tới cảm biến LM35 void setup() { Serial.begin(9600); //Khởi động Serial ở mức baudrate 9600 //không cần phải pinMode cho các chân analog trước khi dùng nó } void loop() { //đọc giá trị từ cảm biến LM35 int reading=analogRead(sensorPin);
- Kết nối các linh kiện và module code (lắp cảm biến nhiệt và motor) //tính ra giá trị hiệu điện thế (đơn vị Volt) từ giá trị cảm biến float voltage = reading * 5.0 / 1024.0; // ở trên mình đã giới thiệu, cứ mỗi 10mV = 1 độ C. // Vì vậy nếu biến voltage là biến lưu hiệu điện thế (đơn vị Volt) // thì ta chỉ việc nhân voltage cho 100 là ra được nhiệt độ! float temp = voltage * 100.0; Serial.println(temp); delay(1000);//đợi 1 giây cho lần đọc tiếp theo }
- Kết nối các linh kiện và module code (kết nối với bluetooth) Điều khiển arduino thông qua thiết bị bluetooth bằng điện thoại android • Ứng dụng để điều khiển các thiết bị điện trong nhà như bật tắt đèn, quạt.... từ xa. Hoặc tự làm một chiếc ô tô điều khiển từ xa • Module này gồm 4 chân GND, VCC, TX, RX • Khi kết nối cần nối chân TX với chân 0 và chân RX nối với chân 1 trên Arduino sau đó bạn có thể lập trình gửi và nhận dữ liệu như 1 cổng Serial thông thường. • Module này có 3 loại Master, Slave và loại chạy được cả 2 chế độ Master và Slave
- Kết nối các linh kiện và module code (kết nối với bluetooth) Điều khiển arduino thông qua thiết bị bluetooth bằng điện thoại android Ø sử dụng phần mềm trên điện thoại Android: DroiDuino Ø khi kết nối với điện thoại mật khẩu mặc định là: 1234
- Kết nối các linh kiện và module code (kết nối với bluetooth) char state; // Khai báo biến void setup() { /* Cài đặt các chân bạn muốn điều khiển thành thành Ouput chân 0, 1, 2*/ pinMode(0, OUTPUT); pinMode(1, OUTPUT); pinMode(2, OUTPUT); Serial.begin(9600); // Kết nối bluetooth module ở tốc độ 9600 } void loop() { if(Serial.available() > 0){ state = Serial.read(); // Đọc giá trị nhận được từ bluetooth } else state = 0; Sơ đồ kết nối arduino với module bluetooth
- Kết nối các linh kiện và module code (kết nối với bluetooth) Serial.println(state); // điều khiển các chân 0,1,2 if (state == '1') //nếu chọn 1 thì đèn sáng { digitalWrite(Led, HIGH); delay(1000); //trễ 1000 } else if (state == '2') //chọn 2 công tắc motor quay { digitalWrite(fan, HIGH); } else if (state == '0') //chọn không cả đèn và motor đề tắt { digitalWrite(fan, LOW); digitalWrite(Led, LOW); } Sơ đồ kết nối arduino với module bluetooth
- Kết nối các linh kiện và module code int cambien = 10; // khai báo chân digital 10 cho cảm biến float temperature = 0; //biến để lưu trữ nhiệt độ int fan = 9; //digital điều chỉnh motor int Led = 8; //kháo báo chân digital 8 cho đèn LED char state = 0; // trạng thái của bluetooth void setup (){ pinMode(Led,OUTPUT); /*pinMode xuất tín hiệu đầu ra cho led*/ pinMode(cambien,INPUT); /*pinMode nhận tín hiệu đầu vào cho cảm biên*/ pinMode(fan,OUTPUT); //configuracion del pin 9 Serial.begin(9600); /*Ket noi bluetooth module o toc do goc 9600.*/ }
- Kết nối các linh kiện và module code void loop (){ int value = digitalRead(cambien); //* lưu giá trị cảm biến vào value*/ digitalWrite(Led,value); //xuất giá trị ra đèn LED float temperature = ((5.0*analogRead(A0)*100.0)/1024.0); Serial.println (temperature); // in ra nhiệt độ if (temperature
- Kết nối các linh kiện và module code if(Serial.available() > 0) { state = Serial.read(); // đọc các byte bluetooth } if (state == '1') { digitalWrite(Led, HIGH); //nếu chọn 1 thì đèn sáng delay(1000); } else if (state == '2') { digitalWrite(fan, HIGH); //nếu chọn 2 thì motor quay } else if (state == '0') { /*nếu chọn không thì cả đèn cả mottor đều tắt*/ digitalWrite(fan, LOW); digitalWrite(Led, LOW); } }
- Demo sản phẩm
CÓ THỂ BẠN MUỐN DOWNLOAD
-
BÁO CÁO: THỰC HÀNH NGHIỆP VỤ KẾ TOÁN
183 p | 2131 | 822
-
Báo cáo thực tập: Dự án đầu tư xây dựng kho ngoại quan
45 p | 947 | 360
-
Báo cáo thực tập tốt nghiệp: Xây dựng website quản lý thư viện trường Đại học Điện Lực
135 p | 2072 | 331
-
Báo cáo thực tập - Công ty cổ phần- Hỗ trợ phát triển công nghệ – DETECH
33 p | 273 | 205
-
Báo cáo: Thực hành xử lý số
22 p | 440 | 141
-
Báo cáo thực tập tốt nghiệp tại Công ty Cổ phần Xây dựng Vinaconex 25
106 p | 882 | 124
-
Báo cáo thực tập tốt nghiệp: Xây dựng tại Công ty CP Xây Dựng Vinaconex 25
106 p | 696 | 107
-
Đồ án tốt nghiệp: " Website quảng cáo và bán hàng qua mạng của viện Vacxin NT "
43 p | 263 | 73
-
Báo cáo thực hành cảm biến trong điều khiển đọc xung encoder
7 p | 234 | 62
-
Báo cáo thực hành cảm biến trong điều khiển cảm biến lực loadcell
7 p | 305 | 57
-
Báo cáo thực tập quá trình thiết bị tại Công ty Trách nhiệm hữu hạn một thành viên Phân bón Dầu khí Cà Mau
55 p | 203 | 46
-
Báo cáo thực hành môn: PLC và ứng dụng
25 p | 241 | 44
-
Báo cáo thực hành ứng dụng: Giả lập mạng
88 p | 149 | 25
-
Báo cáo thực hành Vi xử lý
32 p | 135 | 22
-
Báo cáo thực tập tốt nghiệp Truyền thông và mạng máy tính: Phân tích dữ liệu tuyển sinh cho Trường đại học Giao thông Vận tải TP. Hồ Chí Minh
74 p | 33 | 18
-
Báo cáo: Tính toán lập phương thức vận hành
38 p | 100 | 13
-
Khóa luận tốt nghiệp Kế toán-Kiểm toán: Tìm hiểu quy trình lập và phát hành Báo cáo kiểm toán về Báo cáo tài chính tại công ty TNHH Kế toán và Kiểm toán AAC
86 p | 47 | 7
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn