Hình 3.1 Quạt tản nhiệt DC brushless 8025 [12]
Quạt tản nhiệt là một sản phẩm đang rất thơng dụng hiện nay với chức năng làm giảm nhiệt độ, đảm bảo tuổi thọ cho máy mĩc khi hoạt động. Quạt tản nhiệt DC brushless với chất lượng tốt, kích thước nhỏ gọn và giá cả phải chăng đang được sử dụng rất rộng rãi trên thị trường.
Thơng số:
- Chất liệu: Cánh quạt nhựa
- Phạm vi sử dụng: Vỏ máy tính, bộ khuếch đại âm thanh USB
- Kích thước: 8x8x2,5cm - Điện áp sử dụng: 5V - Dịng điện: 0.25A - Cơng suất: 3W - Kích thước lưỡi: 80mm - Tốc độ quạt: 3600 +- 5% - Tiếng ồn sản phẩm: 37(db-A)
- 2 Cực: dây đỏ cực dương, dây đen cực âm
Ứng dụng trong nhà thơng minh: quạt thơng giĩ.
3.1.2 Cịi chip 5V 9,5x12mm
20
Cịi chip 5V là linh kiện sử dụng trong các mạch điện tử với với mục đích tạo ra tín hiệu âm thanh. Loa, cịi cĩ kích thước nhỏ gọn và nhẹ giúp dễ dàng lắp đặt và sử dụng.
Thơng số kỹ thuật:
- Điện áp sử dụng: 5VDC
- Dịng tiêu thụ: <25mA
- Tần số âm thanh: 2300H z ± 500
- Âm thanh đầu ra: Bíp bíp
- Biên độ âm thanh: > 80dB
- Nhiệt độ hoạt động: -20 đến 70 độ C
- Màu sắc: Đen
- Kích thước của cịi chip 9.5x12mm (độ dày nhân đướng kính)
- 2 cực: Cực âm, cực dương (Chân dài: cực dương, Chân ngắn: Cực âm)
Ứng dụng trong nhà thơng minh: cịi báo động khí gas
3.1.3 Động cơ servo MG90S
Động cơ RC Servo MG90S cĩ các bánh răng được làm bằng kim loại và một ổ trục nhỏ và nhẹ, cho lực kéo khỏe và độ bền cao. Động cơ cĩ kích thước nhỏ gọn, cĩ thể xoay khoảng 180 độ (90 độ mỗi hướng) phù hợp cho nhiều ứng dụng khác nhau: cánh tay robot, robot nhện, cơ cấu chuyển hướng, cơ cấu quay gĩc, dùng nhiều trong các mạch điện tử, ứng dụng để làm các mơ hình điện tử, được dùng làm động cơ cho các mơ hình đồ chơi, Robot...
Hình 3.3 Động cơ servo MG90S [14]
Thơng số kỹ thuật:
- Điện áp hoạt động: 4.8 ~ 6VDC
- Kích thước: 22,5x12x35,5mm
- Mơ men xoắn: 1.8kg/cm(4.8V ),2.2kg/cm(6V)
- Tốc độ vận hành: 0,1s/60độ(4.8V), 0,08s/60độ(6V)
- Bánh răng: Kim loại.
21
- Trọng lượng: 13,4g.
- Gĩc quay 90 độ.
Sơ đồ chân:
Hình 3.4 Sơ đồ chân Servo MG90S [14]
Servo MG90S cĩ 3 chân: Chân cam (cấp xung), chân đỏ (cấp nguồn 5V), chân nâu (nối đất). Khi ta cấp xung từ 1ms-2ms ta sẽ điều khiển động cơ quay 1 gĩc theo ý muốn (nhỏ hơn 90 độ).
Ứng dụng trong nhà thơng minh: Đĩng mở cửa
3.2 Các module thiết bị sử dụng trong mơ hình và chức năng 3.2.1 Hệ thống bật/tắt quạt dựa trên nhiệt độ, độ ẩm 3.2.1 Hệ thống bật/tắt quạt dựa trên nhiệt độ, độ ẩm
Hình 3.5 Sơ đồ hệ thống bật/tắt quạt theo nhiệt độ, độ ẩm
Nguyên lý hoạt động: Cảm biến DHT11 đo nhiệt độ, độ ẩm và gửi dữ liệu về arduino qua chân D7 (tín hiệu digital). Arduino nhận dữ liệu và so sánh, nếu nhiệt độ>=30 hoặc độ ẩm>=80% thì chân D19 sẽ chuyển trạng thái lên mức cao (5V), quạt sẽ bật, ngược lại quạt sẽ tắt.
Code hoạt động: #include <DHT.h> #define DHTTYPE DHT11 const int CBND = 7;
const int Fan = 2;
22 float Temperature, Humidity;
void setup() { Serial.begin(9600); dht.begin(); pinMode(CBND,INPUT); pinMode(Fan,OUTPUT); } void loop() { Humidity = dht.readHumidity(); Temperature = dht.readTemperature(); Serial.println(Temperature); Serial.println(Humidity); if((Temperature>=30)||(Humidity>=80)) { digitalWrite(Fan,HIGH); } else { digitalWrite(Fan,LOW); } } 3.2.2Hệ thống cảnh báo khí gas
Hình 3.6 Sơ đồ hệ thống cảnh báo khí gas
Nguyên lý hoạt động: Cảm biến MQ2 đo nồng độ khí gây cháy xung quanh và gửi tín hiệu về Arduino qua chân A7 (tín hiệu analog). Arduino nhận dữ liệu và so sánh, nếu nồng độ khí gây cháy cao hơn 400 thì chân D17 sẽ chuyển trạng thái lên mức cao (5V), do đĩ cịi báo động bật, ngược lại thì cịi báo động tắt.
Code hoạt động: const int CBgas = A7; const int Buzzer = 17; float Gas; void setup() { Serial.begin(9600); pinMode(CBgas,INPUT); pinMode(Buzzer,OUTPUT); }
23 void loop() { Gas = analogRead(CBgas); Serial.println(Gas); if(Gas>=400) { digitalWrite(Buzzer,HIGH); } else { digitalWrite(Buzzer,LOW); } }
3.2.3 Hệ thống bật/tắt đèn dựa trên cảm biến ánh sáng
Hình 3.7 Sơ đồ hệ thống bật/tắt đèn theo cảm biến ánh sáng
Nguyên lý hoạt động: Cảm biến ánh sáng đo cường độ ánh sáng theo giá trị quang trở của cảm biến và gửi dữ liệu về Arduino. Arduino nhận dữ liệu và thực hiện so sánh, nếu giá trị điện trở lớn hơn 500ohm (do cường độ ánh sáng càng lớn thì điện trở của cảm biến càng nhỏ và ngược lại) thì chân D36 sẽ chuyển trạng thái lên mức cao (5V), do đĩ relay nhận được tín hiệu và chân NO của relay đĩng lại, đèn sẽ sáng. Ngược lại nếu giá trị điện trở đo được nhỏ hơn 500ohm thì đèn tắt.
Code hoạt động: const int CBAS = A9; const int Lamp = 36; float Light; void setup() { Serial.begin(9600); pinMode(CBAS,INPUT); pinMode(Lamp,OUTPUT); } void loop() { Light = analogRead(CBAS); Serial.println(Light); if(Light>=500) { digitalWrite(Lamp,HIGH); }
24 else {
digitalWrite(Lamp,LOW); }
}
3.2.4 Hệ thống mở cửa theo cảm biến chuyển động
Hình 3.8 Sơ đồ hệ thống mở cửa theo cảm biến chuyển động
Nguyên lý hoạt động: Cảm biến chuyển động HC-SR501 dị chuyển động xung quanh nĩ và gửi tín hiệu về arduino. Arduino nhận dữ liệu và xử lý, nếu tín hiệu ở mức cao thì chuyển trạng thái chân D6 lên mức cao (5V), do đĩ servo nhận được tín hiệu và quay 1 gĩc 90 độ tương ứng với cửa mở. Ngược lại nếu tín hiệu từ cảm biến gửi về arduino ở mức thấp thì Servo khơng hoạt động tương ứng với cửa vẫn đĩng.
Code hoạt động: #include <Servo.h> const int CBCD = 9; const int Door = 6; Servo myServo; float Motion; void setup() { Serial.begin(9600); myServo.attach(Door); pinMode(CBCD,INPUT); pinMode(Door,OUTPUT); } void loop() { Motion = digitalRead(9); if(Motion==HIGH) { myServo.write(90); } else { myServo.write(0); }
25 }
3.2.5 Hệ thống bật/tắt thiết bị bằng nút nhấn
Hình 3.9 Sơ đồ hệ thống bật/tắt thiết bị bằng nút nhấn
Nguyên lý hoạt động: Khi chưa nhấn Button thì chân D8 nhận tín hiệu mức thấp, khi ta nhấn nút Button thì chân D8 sẽ nhận tín hiệu mức cao. Nếu Arduino nhận được tín hiệu mức cao ở chân D8 thì sẽ chuyển trạng thái chân D11 từ mức thấp thành mức cao, do đĩ thiết bị được bật, trạng thái thiết bị sẽ được thiết lập là mức cao. Nếu ta nhấn Button lần nữa, trạng thái thiết bị sẽ đảo ngược và tín hiệu chân D11 cũng sẽ chuyển từ cao thành thấp, thiết bị sẽ tắt.
Code hoạt động: const int Thietbi = 11; const int Button_thietbi = 8; int state_thietbi=0; void setup(){ Serial.begin(9600); pinMode(Thietbi,OUTPUT); pinMode(Button_thietbi,INPUT); } void loop() { if(digitalRead(Button_thietbi)==HIGH) { while(digitalRead(Button_thietbi)==HIGH); state_thietbi=!state_thietbi; digitalWrite(Thietbi,state_thietbi); } }
26
CHƯƠNG 4. HỆ THỐNG GIÁM SÁT, ĐIỀU KHIỂN NHÀ THƠNG MINH
BẰNG WEB SERVER THƠNG QUA INTERNET 4.1 Mạng Internet
Internet hay Mạng: là một hệ thống thơng tin tồn cầu cĩ thể được truy nhập cơng cộng gồm các mạng máy tính được liên kết với nhau. Hệ thống này truyền thơng tin theo kiểu nối chuyển gĩi dữ liệu (packet switching) dựa trên một giao thức liên mạng đã được chuẩn hĩa (giao thức IP). Hệ thống này bao gồm hàng ngàn mạng máy tính nhỏ hơn của các doanh nghiệp, của các viện nghiên cứu và các trường đại học, của người dùng cá nhân và các chính phủ trên tồn cầu, được liên kết bởi một loạt các cơng nghệ mạng điện tử, khơng dây và mạng quang. Internet mang theo một loạt các tài nguyên và dịch vụ thơng tin, chẳng hạn như các tài liệu và ứng dụng siêu văn bản được liên kết với nhau của World Wide Web (WWW), thư điện tử, điện thoại và chia sẻ file.
Internet là kiểu mạng cục bộ (LAN) được sử dụng rộng rãi nhất hiện nay. Thực chất, internet chỉ là mạng cấp dưới (lớp vật lý và một phần lớp liên kết dữ liệu), vì vậy cĩ thể sử dụng các giao thức khác nhau ở phía trên, trong đĩ TCP/IP là tập giao thức được sử dụng phổ biến nhất. Tuy vậy, mỗi nhà cung cấp sản phẩm cĩ thể thực hiện giao thức riêng hoặc theo một chuẩn quốc tế cho giải pháp của mình trên cơ sở internet. High Speed Ethernet (HSE) của Fieldbus Foundation chính là một trong tám hệ bus trường được chuẩn hĩa quốc tế theo IEC 61158. Mạng Internet mang lại rất nhiều tiện ích hữu dụng cho người sử dụng, một trong các tiện ích phổ thơng của Internet là hệ thống thư điện tử (email), trị chuyện trực tuyến (chat), máy truy tìm dữ liệu (search engine), các dịch vụ thương mãi và chuyển ngân, và các dịch vụ về y tế giáo dục như là chữa bệnh từ xa hoặc tổ chức các lớp học ảo. Chúng cung cấp một khối lượng thơng tin và dịch vụ khổng lồ trên internet.
Nguồn thơng tin khổng lồ kèm theo các dịch vụ tương ứng chính là hệ thống các trang Web liên kết với nhau và các tài liệu khác trong WWW (World Wide Web). Trái với một số cách sử dụng thường ngày, Internet và WWW khơng đồng nghĩa. Internet là một tập hợp các mạng máy tính kết nối với nhau bằng dây đồng, cáp quang,.. cịn WWW, hay Web, là một tập hợp các tài liệu liên kết với nhau bằng các siêu liên kết (hyperlink) và các địa chỉ URL, và nĩ cĩ thể được truy nhập bằng cách sử dụng Internet.
Một số trình duyệt web phổ biến hiện nay:
- Internet Explorer cĩ sẵn trong Microsoft Windows, của Microsoft.
- Mozilla và Mozilla Firefox của Tập đồn Mozilla.
- Netscape Navigator của Netscape.
- Opera của Opera Software.
- Safari trong Mac OS X, của Apple Computer.
- Maxthon của MySoft Technology.
- Avant Browser của Avant Force (Ý).
27
Từ khi ra đời đến nay, internet đã chứng minh được vai trị khơng thể thay thế khơng những đối với cơng nghệ mà cịn ngay cả đời sống hằng ngày của con người trên tồn thế giới. Internet kết nối tồn cầu và kết nối cả những giá trị cơng nghệ, đưa khoa học gần hơn vào ứng dụng cuộc sống, đưa cơng nghệ lên những tầm cao mới.
4.2 Địa chỉ IP
IP là một địa chỉ của một máy tính khi tham gia vào mạng nhằm giúp cho các máy tính cĩ thể chuyển thơng tin cho nhau một cách chính xác, tránh thất lạc. Cĩ thể coi địa chỉ IP trong mạng máy tính giống như địa chỉ nhà của bạn để nhân viên bưu điện cĩ thể đưa thư đúng cho bạn chứ khơng phải một người nào khác. Mỗi địa chỉ IP gồm cĩ 2 thành phần:
- NET ID: dùng đề nhận dạng hệ thống trong cùng một mơi trường vật lí cịn
được gọi là Phân Đoạn (Segment). Mọi hệ thống trong cùng một phân đoạn phải cĩ cùng Địa Chỉ Mảng. Địa chỉ này phải là duy nhất trong số các mạng hiện cĩ.
- HOST ID: dùng để nhận dạng một trạm làm việc, một máy chủ, một Router
hoặc một trạm TCP/IP trong cùng một Phân Đoạn. Địa chỉ trạm cũng phải là duy nhất trong một mạng.
IP sử dụng trong mơ dùng là IP tĩnh: IP này là địa chỉ được cấu hình thủ cơng cho các thiết bị kết nối mạng. Nĩ được gọi là IP tĩnh do tính chất cố định và khơng thể thay đổi. Các thiết bị phải được cấu hình đúng với router để chúng cĩ thể giao tiếp.
4.3 Thiết kế hệ thống giám sát và điều khiển bằng webserver qua internet
Hình 4.1 Sơ đồ khối hệ thống giám sát và điều khiển
28
- Hiển thị giá trị nhiệt độ, độ ẩm, khí gas, ánh sáng và cảnh báo khi cĩ sự cố như rị rì khí gas, nhiệt độ hoặc độ ẩm vượt quá mức cho phép.
- Điều khiển bật/tắt các thiết bị bằng webserver thơng qua internet và hiển thị trạng thái thiết bị lên webserver.
Vai trị của các thành phần trong hệ thống giám sát và điều khiển:
- Khối cảm biến: thu thập dữ liệu từ mơi trường để gửi về khối vi xử lí.
- Khối vi xử lí: cĩ trách nhiệm xử lý dữ liệu trước khi đưa lên webserver hoặc nhận tín hiệu điều khiển từ webserver để điều khiển bật/tắt các thiết bị. - Web server: cĩ vai trị đọc các thơng tin gửi từ khối vi xử lí sau đĩ hiển thị lên giao diện web, đồng thời gửi lệnh điều khiển từ người dùng trở lại khối vi xử lí.
- Khối chấp hành: bao gồm hệ thống đèn, quạt, cửa, cịi báo động. Khối này
nhận lệnh trực tiếp từ khối vi xử lí từ đĩ đưa ra hành động phù hợp.
Trong đề tài này, hệ thống các cảm biến được sử dụng để thu thập dữ liệu từ mơi trường ngồi, sau đĩ thực hiện quá trình xử lí, gửi lệnh tới cơ cấu chấp hành và gửi lên server. Trang web điều khiển được biết bằng ngơn ngữ HTML trong mơi trường của Arduino. Arduino đã phát triền một bộ thư viện Ethernet giúp cho người dùng cĩ thể trực tiếp viết code HTML ngay trong trình soạn thảo của arduino.
4.4 Nguyên lý điều khiển truyền nhận dữ liệu
4.4.1 Nguyên lý điều khiển – Truyền nhận dữ liệu sử dụng ESP8266
Quá trình giao tiếp, điều khiển gồm 2 phần :
- Webserver nhận tín hiệu trạng thái từ cơ cấu chấp hành để quản lý, giám sát:
Hình 4.2 Sơ đồ truyền tín hiệu từ cơ cấu chấp hành đến Webserver sử dụng ESP8266
Nguyên lý: Khi cĩ thiết bị được bật/tắt thủ cơng, tín hiệu sẽ được gửi đến ESP8266 bằng giao tiếp Serial, sau đĩ được gửi lên Webserver để hiển thị trạng thái thiết bị.
- Tín hiệu điều khiển từ WEB truyền về điều khiển các cơ cấu chấp hành:
Hình 4.3 Sơ đồ truyền tín hiệu từ Webserver đến cơ cấu chấp hành sử dụng ESP8266
Nguyên lý: Khi cĩ thao tác bật/tắt trên nút ảo của webserver thì tín hiệu sẽ truyền về ESP8266, ESP sẽ xử lý và đưa ra tín hiệu điều khiển cơ cấu chấp hành.
4.4.2 Nguyên lý điều khiển – Truyền nhận dữ liệu sử dụng Ethernet Shield
29
- Tín hiệu điều khiển từ WEB truyền về điều khiển các cơ cấu chấp hành:
Hình 4.4 Sơ đồ truyền tín hiệu từ Webserver đến cơ cấu chấp hành sử dụng Ethernet
Nguyên lý: Khi thực hiện các thao tác Bật/Tắt bằng các nút ảo trên giao diện Webserver, tín hiệu được truyền về server tại Ethernet Shiled, do module Ethernet Shiled được gắn trực tiếp với vi điều khiển Arduino và giao tiếp Serial đưa tín hiệu tới vi điều khiển, tại đây dữ liệu được xử lý so sánh để biết tín hiệu điều khiển là của thiết bị nào và cấp lệnh điều khiển cơ cấu chấp hành đĩ.
- Webserver nhận tín hiệu trạng thái từ cơ cấu chấp hành để quản lý, giám sát:
Hình 4.5 Sơ đồ truyền tín hiệu từ cơ cấp chấp hành đến Webserver sử dụng Ethernet
Nguyên lý: Hồn tồn tương tự như trên, nhưng chiều đi của tín hiệu ngược lại, khi một cơ cấu chấp hành được bật/tắt thủ cơng, sẽ cĩ tín hiệu truyền về vi điều khiển và do Ethernet Shield gắn trực tiếp với vi điều khiển nên tín hiệu truyền đến server của Ethernet bằng giao tiếp Serial, cuối cùng tín hiệu được truyền lên Webserver để Webserver cập nhật hiển thị trạng thái các thiết bị.
4.4.3 Ví dụ về điều khiển, giám sát thiết bị bằng Webserver
Chức năng: bật/tắt thiết bị bằng webserver: Phần cứng:
- ESP8266 NodeMCU CP2102
- Relay 4 kênh 5VDC
Sơ đồ kết nối:
Hình 4.6 Sơ đồ kết nối thiết bị
Code hoạt động:
30 #include <ESP8266WebServer.h>
const char* ssid = "P503"; // Enter SSID here
const char* password = "caovan99"; //Enter Password here ESP8266WebServer server(80);
uint8_t LED1pin = D4; bool LED1status = LOW; uint8_t LED2pin = D2; bool LED2status = LOW; uint8_t LED3pin = D3; bool LED3status = LOW; uint8_t LED4pin = D1; bool LED4status = LOW; void setup() { Serial.begin(115200); delay(100); pinMode(LED1pin, OUTPUT); pinMode(LED2pin, OUTPUT); pinMode(LED3pin, OUTPUT); pinMode(LED4pin, OUTPUT); Serial.println("Connecting to "); Serial.println(ssid);
//connect to your local wi-fi network WiFi.begin(ssid, password);
//check wi-fi is connected to wi-fi network