Nhà thông minh(Smarthome)là kiểu nhà được lắp đặt các thiết bịđiện, điện tửcó thểđược điều khiển hoặctựđộng hoáhoặc bán tựđộng. Thay thếcon người trong thực hiện một hoặc một sốthao tác quản lý, điều khiển.Hệthống điện tửnày giao tiếp với người dùng thông qua bảng điện tửđặt trong nhà,ứng dụngtrênđiện thoại di động,máy tính bảnghoặc một giao diện web.Nhờ ứng dụng các công nghệ như hồng ngoại, điện thoại thông minh, IoT, công nghệ đám mây...Nhà thông minh có thể tự động giúp bạn làm những công việc trong nhà. Với những nhà đầu tư thông minh, họ luôn đánh giá cao một căn nhà có thểtựđộng hóa.Khi làm mộtnhà thông minh, có nghĩa là bạn đang dùng công nghệ để làm cuộc sống thoải mái hơn. Chúng sẽ giảm khối lượng công việc của bạn. Giúp bạn có nhiều thời gian thư giãn chứ không làm bạn lười đi.Trong một cănnhà thông minh haySmarthome, mọi nơi sẽ được kiểm soát bằng các thiết bị điện tử. Chúng sẽ sử dụng các cách giao tiếp riêng đề hiểu nhau như: Bluetooth, hồng ngoại, sóng siêu âm, Wifi,... Và người điều khiển sẽ là bạn qua chính chiếc điện thoại hay giọng nói.Do đó, trong dựán này nhóm chúng em sẽgiới thiệu và thiết kếmột sốmodule nhỏtrong nhà thông minh với mong muốn có thểphát triển thành ngôi nhà thông minh đầy đủtiện nghi hiện đại hoặc có thểphù phép biến ngôi nhà truyền thống của chúng ta thành một ngôi nhà thông minh.
Giới thiệu chung
Nhà thông minh (Smarthome) là một loại nhà được trang bị các thiết bị điện và điện tử có khả năng điều khiển tự động hoặc bán tự động Những thiết bị này thay thế con người trong việc thực hiện các thao tác quản lý và điều khiển Hệ thống điện tử trong nhà thông minh giao tiếp với người dùng thông qua bảng điều khiển điện tử, ứng dụng trên điện thoại di động, máy tính bảng hoặc giao diện web.
Nhà thông minh sử dụng các công nghệ tiên tiến như hồng ngoại, điện thoại thông minh, IoT và công nghệ đám mây để tự động hóa các công việc trong gia đình Các nhà đầu tư thông minh rất coi trọng những căn nhà có khả năng tự động hóa, vì điều này mang lại nhiều tiện ích và hiệu quả.
Khi sở hữu một ngôi nhà thông minh, bạn đang áp dụng công nghệ để nâng cao sự thoải mái trong cuộc sống, giúp giảm bớt khối lượng công việc và tạo thêm thời gian thư giãn Trong một căn nhà thông minh, mọi thiết bị được kiểm soát thông qua các công nghệ như Bluetooth, hồng ngoại, sóng siêu âm và Wifi Bạn có thể điều khiển chúng dễ dàng bằng điện thoại hoặc qua giọng nói của mình.
Trong dự án này, nhóm chúng em sẽ giới thiệu và thiết kế một số module nhỏ cho nhà thông minh, với mục tiêu phát triển thành ngôi nhà thông minh hiện đại, hoặc biến ngôi nhà truyền thống thành một không gian sống thông minh và tiện nghi.
Hệ thống cảnh báo cháy
Các linh kiện điện tử
Cảm biến lửa YG1006 sử dụng công nghệ hồng ngoại để phát hiện lửa và nguồn sáng tương tự, với tốc độ đáp ứng nhanh và độ nhạy cao Thiết bị tích hợp IC LM393 cho phép chuyển đổi tín hiệu ADC, cung cấp hai ngõ ra số và tương tự, mang lại sự linh hoạt trong ứng dụng Ngoài ra, biến trở có thể điều chỉnh giúp tùy chỉnh độ nhạy của cảm biến, phù hợp cho các hệ thống báo cháy và robot chữa cháy.
Thông số cảm biến phát hiện lửa
• Tín hiệu ra: Digital 3.3 – 5VDC tùy nguồn cấp hoặc Analog
Hình 1:Sơ đồ nguyên lý cảm biến lửa
2.1.2 Cảm biến khói và khí gas (MQ2)
MQ2 là cảm biến khí chuyên dụng để phát hiện các khí có khả năng gây cháy, được làm từ chất bán dẫn SnO2 Chất này có độ nhạy thấp với không khí sạch, nhưng độ dẫn điện của nó sẽ thay đổi ngay khi có mặt các chất dễ cháy Nhờ vào đặc điểm này, người ta thiết kế mạch đơn giản để chuyển đổi sự thay đổi độ nhạy thành tín hiệu điện áp.
Khi môi trường sạch, điện áp đầu ra của cảm biến MQ2 sẽ thấp Tuy nhiên, giá trị điện áp này sẽ tăng lên khi nồng độ khí gây cháy xung quanh cảm biến cao hơn.
Cảm biến MQ2 hoạt động hiệu quả trong môi trường khí hóa lỏng LPG, H2 và các khí dễ cháy khác Với mạch thiết kế đơn giản và chi phí thấp, cảm biến này được ứng dụng phổ biến trong cả lĩnh vực công nghiệp và dân dụng.
Hình 2: Sơ đồ chân MQ2
Hình 3:Cảm biến khí MQ2
Bảng 1: Thông số kỹ thuật của cảm biến khí
Phạm vi phát hiện: Đặc điểm của khí: Độ nhạy sáng:
Dòng tiêu thụ khi nóng: Điện áp khi nóng:
R in air/Rin typical gas≥5 1KΩ to 20KΩ / 50ppm
Năng lượng khi nóng : Điện áp đo: Điều kiện làm việc:
Hàm lượng oxy môi trường: Điều kiện bảo quản:
Hình 4: Sơ đồ mạch MQ2
Mạch điện này được sử dụng để xác định hiệu số hoặc sai số giữa hai điện áp, trong đó mỗi điện áp có thể được nhân với một số hằng số nhất định Các hằng số này được xác định thông qua các điện trở.
Trong mạch có 2 chân đầu ra là Aout và Dout Trong đó:
Aout: điện áp ra tương tự Nó chạy từ 0.3 - 4.5V, phụ thuộc vào nồng độ khí xung quang MQ2
Dout: điện áp ra số, giá trị 0,1 phụ thuộc vào điện áp tham chiếu và nồng độ khí mà MQ2 đo được
Chân ra số Dout rất hữu ích cho việc kết nối các ứng dụng đơn giản mà không cần vi điều khiển Chỉ cần điều chỉnh giá trị biến trở đến nồng độ mong muốn để cảnh báo Khi nồng độ khí MQ2 đo được thấp hơn mức cho phép, Dout sẽ bằng 1 và đèn LED sẽ tắt Ngược lại, khi nồng độ khí vượt quá mức cho phép, Dout sẽ bằng 0 và đèn LED sẽ sáng lên.
• Ta có thể ghép nối vào mạch Realy để điều khiển bật tắt đèn, còi, hoặc thiết bị cảnh báo khác
Một thách thức khi sử dụng cảm biến MQ2 là việc chuyển đổi điện áp Aout thành giá trị nồng độ ppm để hiển thị và cảnh báo Điều này trở nên phức tạp do giá trị điện áp trả về khác nhau cho từng loại khí, đồng thời còn bị ảnh hưởng bởi nhiệt độ và độ ẩm.
Trong thiết bị của mình, để xác định điểm cảnh báo mình làm khá thủ công
• Đầu tiên đo trạng thái không khí sạch, giá trị thu được Vout1
Khi khí ga từ bật lửa rò rỉ, giá trị Aout sẽ tăng lên Khi đạt được khoảng cách hợp lý với nồng độ khí nguy hiểm, ta ghi lại giá trị Vout2, được xem là ngưỡng cảnh báo Nếu giá trị đo được vượt quá Vout2, chúng ta sẽ tiến hành cảnh báo.
• Chỉnh chân biến trở để điện áp đo tại chân 3 của L358 = Vout2
2.1.3 Cảm biến nhiệt độ và độ ẩm DHT11
Cảm biến DHT11 là một thiết bị phổ biến để đo nhiệt độ và độ ẩm, nổi bật với chi phí thấp và khả năng lấy dữ liệu dễ dàng thông qua giao tiếp 1-wire Với bộ tiền xử lý tín hiệu tích hợp, DHT11 cung cấp dữ liệu chính xác mà không cần tính toán phức tạp.
• Điện áp hoạt động: 3V - 5V (DC)
• Dải độ ẩm hoạt động: 20% - 90% RH, sai số ±5%RH
• Dải nhiệt độ hoạt động: 0°C ~ 50°C, sai số ±2°C
• Tần số lấy mẫu tối đa: 1 Hz
• Khoảng cách truyển tối đa: 20m
Cảm biến DHT11 có cấu tạo gồm 2 chân cấp nguồn và 1 chân tín hiệu, hiện có hai loại đóng gói phổ biến trên thị trường là 3 chân và 4 chân.
Hình 6: Sơ đồ cảm biến DHT11 3 chân
Hình 7:Sơ đồ cảm biến DHT11 4 chân Điều khiển:
DHT11 gửi và nhận dữ liệu với một dây tín hiệu DATA, với chuẩn dữ liệu truyền
Để đảm bảo dây DATA của cảm biến DHT11 ở chế độ chờ có giá trị cao, cần sử dụng một trở kéo bên ngoài với giá trị thông thường là 4.7kΩ.
DHT11 truyền tải dữ liệu dưới dạng 40 bit, bao gồm 8 bit cho phần nguyên của độ ẩm, 8 bit cho phần thập phân của độ ẩm, 8 bit cho phần nguyên của nhiệt độ, 8 bit cho phần thập phân của nhiệt độ và 8 bit kiểm tra tổng.
Ví dụ: ta nhận được 40 bit dữ liệu như sau:
8 bit checksum: 0011 0101 + 0000 0000 + 0001 1000 + 0000 0000 = 0100 1101 Độ ẩm: 0011 0101 = 35H = 53% (ở đây do phần thập phân có giá trị 0000 0000, nên ta bỏ qua không tính phần thập phân)
Nhiệt độ: 0001 1000 = 18H = 24°C (ở đây do phần thập phân có giá trị 0000
0000, nên ta bỏ qua không tính phần thập phân)
• GND nên được kết nối với mặt đất của Arduino
• VCC là nguồn cung cấp cho màn hình LCD mà chúng tôi kết nối chân 5 volt trên Arduino
Độ tương phản LCD (Vo) đóng vai trò quan trọng trong việc kiểm soát độ tương phản và độ sáng của màn hình Bằng cách sử dụng một bộ chia điện áp đơn giản kết hợp với một chiết áp, người dùng có thể dễ dàng điều chỉnh độ tương phản của màn hình LCD.
Chân RS (Chọn Đăng ký) trên Arduino giúp màn hình LCD nhận biết liệu nó đang nhận lệnh hay dữ liệu Chân này có vai trò quan trọng trong việc phân biệt giữa các lệnh và dữ liệu được gửi đến màn hình.
Khi chân RS được đặt ở mức LOW, chúng ta gửi lệnh đến màn hình LCD để thực hiện các thao tác như đặt con trỏ, xóa màn hình hoặc cuộn màn hình sang phải Ngược lại, khi chân RS ở mức CAO, chúng ta sẽ gửi dữ liệu hoặc ký tự đến màn hình LCD.
Mô hình và lập trình hệ thống
Hình 11: Mô hình và hệ thống cảm biến nhiệt độ, độ ẩm
LiquidCrystal_I2C lcd(0x27, 16, 2); int speaker = 7; // loa,den ket noi Pin 7
16 int gas = 6; // out ket noi Pin 6 int led = 8; int sensor = 6; const int DHTPIN = 9; const int DHTTYPE = DHT11;
DHT dht(DHTPIN, DHTTYPE); void setup() { dht.begin(); // khởi động cảm biến DHT pinMode(gas, INPUT); pinMode(speaker, OUTPUT); pinMode(led, OUTPUT);
Serial.begin(9600); lcd.init(); lcd.backlight(); lcd.setCursor(0, 0);
In the loop function, humidity and temperature are read from the DHT sensor, and the LCD is initialized to display these values The temperature is printed as "Nhiet do: " followed by the temperature reading, while humidity is displayed as "Do am: " along with the humidity reading Additionally, the code checks the status of a digital sensor and gas detector; if the gas detector is activated, the digital sensor reads high, or if the temperature exceeds 50 degrees Celsius, specific actions may be triggered.
17 lcd.setCursor(0, 1); lcd.print("BAO DONG_WARNING"); digitalWrite(led, HIGH); digitalWrite(speaker, HIGH);
} else { digitalWrite(speaker, LOW); digitalWrite(led,LOW); lcd.begin(16, 2); lcd.print("Nhiet do: "); lcd.print(t); lcd.setCursor(0, 1); lcd.print("Do am: "); lcd.print(h;
Một số ưu nhược điểm của hệ thống
- Sử dụng nhiều cảm biến tăng độ chính xác và độ nhạy với đám cháy
- Có thể tích hợp với hệ thống chữa cháy để dập tắt đám cháy kịp thời và lập tức
- Các cảm biến sử dụng chưa có tuổi thọ cao, một số linh kiện không chịu được với nhiệt độ cao
- Chưa tích hợp với hệ thống chữa cháy.
Hệ thống tự động sử dụng cảm biến âm thanh
Các linh kiện điện tử
3.1.1 Cảm biến âm thanh (Sound Sensor)
Cảm biến âm thanh là một module quan trọng dùng để phát hiện cường độ âm thanh, với nhiều ứng dụng như chuyển đổi, bảo mật và giám sát Độ chính xác của cảm biến này có thể điều chỉnh để phù hợp với nhu cầu sử dụng, mang lại khả năng linh hoạt và tiện lợi cho người dùng.
18 năng xác định mức độ nhiễu trong DB( decibel) ở tần số 3kHz~6kHz xấp xỉ tai người cảm nhận
Cảm biến âm thanh hoạt động dựa trên cơ chế của tai người, chuyển đổi rung động thành tín hiệu điện Chúng bao gồm một màng loa thiết kế đặc biệt với nam châm xoắn bằng dây kim loại Khi tín hiệu âm thanh tác động lên màng loa, nam châm rung lên, kích thích dòng điện từ cuộn dây.
Hình 12: Cảm biến âm thanh
Cảm biến âm thanh là thiết bị quan trọng trong nhiều dự án điện tử, đặc biệt khi kết hợp với bo mạch Arduino.
- Hệ thống bảo mật cho các chung cư và tòa nhà
- Mô hình nhà thông minh
- Nhận dạng âm thanh xung quanh
- Bộ khuếch đại âm thanh
- Nhận dạng mức âm thanh
Hình 13:Sơ đồ nguyên lý của mạch cảm biến
Cảm biến âm thanh này được trang bị một micrô để phát hiện cường độ âm thanh, với micrô điện tử có khả năng nhận diện sóng âm thanh và truyền tín hiệu đến bảng mạch cảm biến Bảng mạch này bao gồm một IC so sánh điện áp LM393 và chiết áp, trong đó IC LM393 xử lý tín hiệu âm thanh và chuyển đổi nó thành đầu ra kỹ thuật số.
Bảng 2: Thông số kỹ thuật của mạch cảm biến âm thanh
Thông số Giá trị Điện áp hoạt động 3.3V-5V
Loại đầu ra Tín hiệu Digital ( 0 hoặc 1 ) LED báo tín hiệu Nguồn ( đỏ ), đầu ra ( đỏ )
Bộ phận Microphone trên cảm biến
Microphone là một thành phần quan trọng trong cảm biến, bao gồm màng ngăn được chế tạo từ nam châm quấn dây kim loại Khi âm thanh tác động lên màng ngăn, nam châm bên trong sẽ rung, tạo ra dòng điện từ các cuộn dây.
Bộ phận Chiết áp trên cảm biến
Bộ phân chiết áp trên cảm biến âm thanh cho phép người dùng điều chỉnh độ nhạy và mức độ nhận tín hiệu Việc vặn chiết áp theo chiều kim đồng hồ hoặc ngược chiều sẽ giúp tùy chỉnh mức độ nhạy phù hợp với mục đích sử dụng.
Hình 15:Bộ phận chiết áp trên cảm biến
21 Hình 16:Các linh kiện khác sử dụng trong mạch
Mô hình và lập trình của mạch bật tắt đèn bằng cảm biến âm thanh
Hình 17: Mô hình mô phỏng trên phần mềm
Mô hình được mô phỏng trên phần mềm Circuto.io, trong đó đèn LED một chân kết nối với điện trở và chân dương được gắn vào cổng số 5 của mạch Arduino Điện trở 220 Ohm được nối với cực âm của đèn LED và một chân được kết nối với đất.
Cảm biến âm thanh có 1 chân GND nối đất, chân VCC nối với nguồn 5V của Arduino, chân out nối với cổng 4 của mạch arduino
Dây USB của Arduino được cắm với máy tính để tiến hành chạy CODE
Lập trình cho Arduino trên phần mềm Arduino.exe int sound_sensor = 4; int relay = 5; int clap = 0; long detection_range_start = 0; long detection_range = 0; boolean status_lights = false; void setup() {
In the Arduino code, the sound sensor is initialized as an input and a relay as an output The loop function continuously checks the status of the sound sensor When the sensor detects sound (status_sensor equals 0), it starts tracking the detection range If a clap is detected for the first time, it records the current time Subsequent claps are registered if they occur at least 50 milliseconds apart, allowing for accurate detection of sound events.
} if (millis() - detection_range_start >= 400){ if (clap == 2){ if (!status_lights){ status_lights = true; digitalWrite(relay, HIGH);} else if (status_lights) { status_lights = false; digitalWrite(relay, LOW);} } clap = 0;}
Một số nhược điểm và khắc phục
Việc áp dụng cảm biến âm thanh trong thiết kế mạch bật/tắt đèn là một ý tưởng sáng tạo cho nhà thông minh, đáp ứng nhu cầu sinh hoạt của nhiều gia đình Tuy nhiên, sau quá trình thiết kế và thử nghiệm, mạch này vẫn tồn tại một số nhược điểm và hạn chế cần khắc phục.
- Khoảng cách nhận âm thanh không xa chỉ từ 40cm-50cm
- Chỉ dùng được trong những không gian yên tĩnh
Để giải quyết vấn đề không loại bỏ được nhiều tạp âm, tôi đã đề xuất ý tưởng thiết kế một "Trợ lý ảo" trên máy tính sử dụng ngôn ngữ lập trình Python.
Hình 18:Ví dụ về thiết kế “Trợ lý ảo” sử dụng ngôn ngữ Python
Trong thời gian tới, mục tiêu phát triển là hoàn thiện "trợ lý ảo" để kết nối với các thiết bị điều khiển trong gia đình Đồng thời, sẽ thiết kế ứng dụng trên điện thoại giúp người dùng dễ dàng điều khiển các thiết bị qua giọng nói Sự phát triển này hứa hẹn mang lại tiện ích cho cuộc sống sinh hoạt và cho phép kiểm soát thiết bị ngay cả khi không có mặt tại nhà.
Hệ thống tự động sử dụng cảm biến hồng ngoại
Các linh kiện điện tử
Khoa học công nghệ đang phát triển mạnh mẽ, dẫn đến sự gia tăng của các ngôi nhà thông minh tại Việt Nam Một trong những sản phẩm quan trọng đồng hành với các công trình này là hệ thống cửa tự động, góp phần nâng cao tiện nghi và hiện đại cho không gian sống.
Hệ thống cửa tự động sử dụng vi xử lý thông minh, cho phép người dùng điều khiển việc đóng/mở cửa từ xa qua kết nối wifi bằng điện thoại thông minh.
Phone) Đây chắc chắn sẽ là sản phẩm tuyệt vời cho những ai là tín đồ của công nghệ
4.1.1 Cảm biến hồng ngoại – INFRARED SENSOR
Cảm biến hồng ngoại là một thiết bị điện tử đo và phát hiện bức xạ hồng ngoại trong môi trường xung quanh
Cảm biến hồng ngoại (IR sensor) hoạt động bằng cách phát và thu sóng hồng ngoại; khi sóng ánh sáng được phản xạ trở lại, ống thu sẽ nhận diện các sóng IR này Quá trình xử lý diễn ra trên mạch so sánh của bo mạch, và đèn LED báo hiệu màu xanh lá cây sẽ hoạt động khi có tín hiệu phản hồi.
◦ Bộ thu IR được bảo vệ bằng ánh sáng xung quanh
◦ 3 đầu nối giao diện dễ dàng
◦ Đèn LED chỉ báo & Đèn LED nguồn
◦ Khoảng cách từ 2cm đến 30cm
◦ Có thể phân biệt giữa màu tối và màu sáng
◦ Hoạt động Thấp khi phát hiện đối tượng hoạt động
• Thông số kĩ thuật: Mô đun cảm biến hồng ngoại có các tính năng và kích thước thước: 3.2cm x 1.4cm
◦ Khoảng cách phát hiện: 2 ~ 30 cm
◦ LED báo nguồn và LED báo tín hiệu ngõ ra
• Mức thấp - 0V: khi có vật cản
• Mức cao - 5V: khi không có vật cản
Hình 19: Cảm biến hồng ngoại
Hình 20: Cảm biến hồng ngoại
Thiết bị sử dụng cảm biến để nhận diện bước sóng ánh sáng trong phổ hồng ngoại Nó tạo ra ánh sáng đồng bước sóng bằng đèn LED, giúp người dùng xác định cường độ ánh sáng nhận được.
Khi một vật thể tiếp cận cảm biến, ánh sáng từ đèn LED sẽ phản chiếu ra ngoài và đi vào thiết bị cảm biến ánh sáng Sự thay đổi này tạo ra một bước nhảy lớn trong cường độ ánh sáng, cho phép chúng ta xác định thông qua một ngưỡng nhất định.
Hình 21: Nguyên lý làm việc của cảm biến hồng ngoại
• Sơ đồ mạch: IR so sánh LM358
Hình 22: Sơ đồ mạch IR so sánh LM 358
Cảm biến IR về cơ bản bao gồm một LED hồng ngoại và một diot quang LM
Bộ khuếch đại hoạt động 358 được sử dụng như một bộ so sánh điện áp trong mạch Trong ứng dụng này, IR LED và Photodiode có thể được lắp đặt theo cách trực tiếp hoặc gián tiếp.
Sơ đồ Diode quang sử dụng LM358 với PIN 2 phân cực ngược kết nối biến trở để điều chỉnh độ nhạy của cảm biến Đầu không đảo (PIN 3) được kết nối với giao điểm giữa diode quang và biến trở, trong khi photodiode hấp thụ phản xạ từ IRLED.
4.1.2 Cảm biến hồng ngoại PIR SENSOR
Hình 23: Cảm biến hồng ngoại PIR SENSOR
A Passive InfraRed (PIR) sensor is a type of device that detects infrared radiation emitted by warm objects This passive sensor utilizes infrared rays, which are essentially thermal emissions from heated surfaces.
Cảm biến PIR (Passive Infrared Sensor) là thiết bị điện tử dùng để phát hiện sự thay đổi của ánh sáng hồng ngoại trong một khoảng cách nhất định, từ đó tạo ra tín hiệu điện đầu ra Thiết bị này có khả năng phát hiện các đối tượng như con người hoặc động vật Thuật ngữ "thụ động" trong cảm biến PIR cho thấy rằng nó không phát ra ánh sáng hồng ngoại mà chỉ nhận diện ánh sáng này từ các vật thể xung quanh.
◦ Thường dùng cảm biến hồng ngoại thụ động PIR
◦ LED thu hồng ngoại ( Diot phát sáng)
◦ Bộ lọc hồng ngoại ( ngăn chặn tất cả các bước song ánh sáng khác)
◦ Một thấu kính Fresnel ( thu thập ánh sáng từ nhiều góc độ vào 1 điểm
Bảng 3: Thông số kỹ thuật của cảm biến hồng ngoại Điện áp làm việc 5V – 20V Điện áp đầu ra Mức CAO 3,3 V; mức THẤP 5V
Thời gian trễ 5s đến 5 phút
Hình 25:Cảm biến bức xạ hồng ngoại
Hình 24: Thấu kính Fresnel
Phạm vi cảm biến Góc phát hiện khoảng 110 0 hình nón, độ xa 3m đến 7m
Nhiệt độ hoạt động -15 đến +70 0 C
Tiêu thụ điện năng tĩnh
• Nguyên lý hoạt động: PIR HC-SR501
Hình 26: Nguyên lý hoạt động của cảm biến hồng ngoại
Hệ thống sử dụng tấm kính Fresnel để phát hiện năng lượng hồng ngoại phát ra từ cơ thể người hoặc động vật dưới dạng nhiệt Khi phát hiện, tín hiệu sẽ được gửi về trung tâm điều khiển của cánh cửa, giúp cánh cửa mở ra và giữ nguyên trạng thái cho đến khi người hoặc vật rời khỏi khu vực đó.
Sơ đồ điển hình minh họa cách kết hợp đầu cảm biến PIR với các mạch khuếch đại và so áp sử dụng LM324, cùng với mạch tạo trễ CD4538, thông qua relay để điều khiển các thiết bị điện khác.
PIR có 3 chân, chân 1 nối nguồn, chân 2 lấy tín hiệu ra, chân 3 nối đất R2
(100K) dùng đến tín hiệu Tín hiệu này cho ra 2 tầng khuếch đại với IC1Avà
IC1B Ở tầng khuếch đại thứ nhất người ta dùng mạch hồi tiếp nghịch
Hình 27: Sơ đồ nguyên lý
Mô hình và lập trình hệ thống
Hình 28: Sơ đồ chân IR Sensor và Servo kết nối với Arduino
Hình 29: Sơ đồ chân PIR sensor và servo kết nối với arduino
Hình 30: Sơ đồ chân LCD với ARDUINO
• CODE với phần mềm Arduino
Servo myServo; void setup() { lcd.begin(16, 2); myServo.attach(7); pinMode(PIR_sensor, INPUT); lcd.print(" Automatic "); lcd.setCursor(0,1); lcd.print(" Door Opener "); delay(3000);
} void loop(){ bool open = false;
32 if(digitalRead(PIR_sensor)){ lcd.setCursor(0,0); lcd.print("Movement Detected"); lcd.setCursor(0, 1); lcd.print(" Gate Opened "); if(open == false){ for(int i = 0; i = 0; i -= 10){ myServo.write(i); delay(100);
Ưu, nhược điểm của hệ thống
- Môi trường ứng dụng rộng rãi
- Tự động đóngh/mở cửa:
- Thuận tiện, tăng hiệu quả
- Đa dạng kiểu dáng và màu sắc
Cảm biến tiệm cận hồng ngoại (IR) là công nghệ hiện đại được sử dụng để phát hiện chướng ngại vật, thường thấy trên các rô bốt nhằm tránh va chạm và định tuyến đường đi Thiết bị này hoạt động bằng cách phát ra tia hồng ngoại và sử dụng đèn LED hồng ngoại cùng đầu dò ánh sáng (Điốt quang) để nhận diện sự phản xạ từ các vật thể, giúp nhận biết sự tồn tại của chúng một cách hiệu quả.
Cảm biến hồng ngoại 33 hoạt động tương tự như cảm biến siêu âm, cung cấp đầu ra kỹ thuật số với giá trị 1 hoặc 0 Để kiểm tra xem thiết bị có đủ năng lượng hay không, bạn có thể sử dụng các chỉ báo LED có sẵn Hãy tham khảo hướng dẫn chi tiết của tôi để hiểu rõ hơn về cách sử dụng thiết bị này.
- Đường ngắm là bắt buộc
- Phạm vi có giới hạn
- Chúng có thể bị ảnh hưởng bởi sương mù, mưa, bụi, v.v
Để khắc phục nhược điểm của PIR, các nhà sản xuất đang tập trung vào hai hướng chính: nâng cao độ nhạy của mạch pyroelectric và nghiên cứu các nguyên lý phát hiện vật thể mới.
Hệ thống cửa tự động sử dụng cảm biến mưa
Các linh kiện điện tử
Bảng 4: Thông số kỹ thuật của Arduino
Vi điều khiển ATmega328P Điện áp hoạt động 5V Điện áp vào khuyên dùng 7-12V Điện áp vào giới hạn 6-20V
Digital I/O pin 14 (trong đó 6 pin có khả năng băm xung)
Cường độ dòng điện trên mỗi
Cường độ dòng điện trên mỗi
• Điện áp sử dụng: 5VDC
• Kích thước tấm cảm biến mưa: 54 x 40mm
• Kích thước board PCB: 30 x 16mm
• Tín hiệu đầu ra: Digital TTL (0VDC / 5VDC) và đầu ra Analog A0 trả giá trị điện áp tuyến tính theo lượng nước tiếp xúc với cảm biến
• Lỗ cố định bu lông dễ dàng để cài đặt
• Có đèn báo hiệu nguồn và đầu ra
• Độ nhạy có thể được điều chỉnh thông qua chiết áp
• LED sáng lên khi không có mưa đầu ra cao, có mưa, đầu ra thấp LED tắt
• D0: Đầu ra tín hiệu TTL chuyển đổi
• A0: Đầu ra tín hiệu Analog
0.5 KB được sử dụng bởi bootloader
Hình 31: Cảm biến mưa
- Động cơ servo SG90 có thể xoay 180o
- Chủng loại : Động cơ servo SG90
- Điện áp hoạt động : 5V Ứng dụng
Động cơ servo chủ yếu được sử dụng để đạt được góc quay chính xác từ 90o đến 180o Ứng dụng của nó rất đa dạng, bao gồm việc điều khiển robot, di chuyển các tay máy lên xuống, và quay cảm biến để quét không gian xung quanh.
- Tốc độ hoạt động: 60 độ trong 0.1 giây
- Nhiệt độ hoạt động: 0 ºC – 55 ºC
Kết nối dây đỏ với nguồn 5V, dây nâu với mass, và dây cam với chân phát xung của vi điều khiển Tại chân xung, tạo xung từ 1ms đến 2ms để điều khiển góc quay theo ý muốn.
Mô hình và lập trình hệ thống
Hình 33:Hệ thống bảng mạch được lắp trên phần mềm Arduno
Hệ thống code chạy trên phần mềm Arduno
Servo myservo; // Tạo đối tượng myservo nhằm điều khiển động cơ int rainSensor = 6; // // Chân tín hiệu cảm biến mưa ở chân digital 6
In the Arduino setup function, the rain sensor pin is configured as an input, while the servo object is attached to pin 9 with a pulse width range of 500 to 2500 microseconds Additionally, the Serial communication is initiated at a baud rate of 9600 for data transmission.
Serial.println("Da khoi dong xong"); lcd.init(); lcd.backlight(); lcd.setCursor(3, 0); lcd.print("Cam Bien Mua");
} void loop() { int value = digitalRead(rainSensor); //Đọc tín hiệu cảm biến mưa if (value == HIGH) { // Cảm biến đang không mưa
Serial.println("Đang không mưa"); lcd.setCursor(0, 1); lcd.print("No rain"); myservo.write(90); // Servo ở vị trí 90 độ
Serial.println("Đang mưa"); lcd.setCursor(0, 1); lcd.print("Raining"); myservo.write(0); // Servo ở vị trí 0 độ
Khi trời không mưa giá trị của Logistate là 1 và trên màn hình LCD hiển thị
“No rain” và Servo ở vị trí 0 độ
Hình 34:Kết quả chạy bảng mạch khi trời không mưa
Khi trời mưa giá trị của Logistate là 0 và trên màn hình LCD hiển thị “raining” và Servo ở vị trí 90 độ
Hình 35:Kết quả chạy bảng mạch khi trời mưa
Ưu, nhược điểm của hệ thống
Các linh kiện dễ tìm mua, bảng mạch dễ dàng lắp ghép chạy thử trên các phần mềm điện tử
Mạch cảm biến mưa có khả năng mở rộng để tích hợp vào các hệ thống tự động, như hệ thống thu quần áo khi trời mưa và hệ thống đo lượng mưa.
Các linh kiện hiện tại chưa đạt được độ bền và độ chính xác cao, chỉ dừng lại ở mức mô hình Để áp dụng vào thực tế, cần phải sử dụng các linh kiện công nghiệp có độ tin cậy cao.
Hệ thống cửa từ RFID
Các linh kiện điện tử
Thẻ RFID là thiết bị lưu trữ thông tin về sản phẩm hoặc vật thể mà nó gắn lên Thẻ này bao gồm một chip để lưu trữ dữ liệu và một anten để nhận tín hiệu từ bộ đọc.
Tag RFID có 2 hoạt động cơ bản là
• Gắn tag: bất kỳ tag nào cũng đc gắn lên sản phẩm theo nhiều cách
• Đọc tag: Tag RFID phải có khả năng giao tiếp thông qua sóng radio theo nhiều cách
Nhiều tag có một hoặc nhiều thuộc tính sau:
Ghi một lần (Write once) là một loại tag được thiết kế để lưu trữ thông tin cố định Dữ liệu được ghi một lần bởi người dùng và sau đó không thể thay đổi, đảm bảo tính toàn vẹn và bảo mật cho thông tin lưu trữ.
• Ghi nhiều lần (Write many): là kiểu tag có thể được ghi dữ liệu nhiều lần
Thẻ RFID có nhiều dạng:
• Tag hình cúc áo hoặc đĩa thông thường làm bằng PVC, có khả năng tái sử dụng
• Tag RFID có hình dạng như thẻ tín dụng hay còn được gọi là thẻ thông minh
• Tag dạng nhãn dán có kích thước nhỏ
• Tag trong hộp thủy tinh có khả năng hoạt động trong môi trường ăn mòn hoặc chất lỏng
Bảng 5: Thông số kỹ thuật của RFID Điện áp 3,3V
Dòng điện hoạt động 13-26 (mA)
Tần số hoạt động 13.56 MHz
Dòng tải tối đa 30mA
Khoảng cách hoạt động 0-60mm
Cổng giao tiếp SPI, tốc độ max là 10Mbit/s
Nhiệt độ hoạt động -20 - 80 độ C Độ ẩm hoạt động 5 đến 95%
Dữ liệu trong chip nhớ (tag/MDS) được truyền qua các mô-đun, bao gồm mô-đun reader và mô-đun ASM (adapter Module) Mô-đun reader cho phép trao đổi với chip nhớ thông qua việc thu phát tín hiệu nhờ antena, trong khi mô-đun ASM đóng vai trò như một bộ chuyển đổi trung gian, là thành phần thiết yếu trong hệ thống RFID.
• Reader antenna là thành phần bắt buộc
• Mạch điều khiển (Controller) cũng là thành phần bắt buộc Tuy nhiên, hầu hết các reader mới đều có mạch điều khiển gắn liền với chúng
• Cảm biến (Sensor): Cơ cấu truyền động đầu từ và bảng tín hiệu điện
Máy chủ là trung tâm tiếp nhận thông tin từ thẻ RFID thông qua hệ thống đọc, trong khi hệ thống phần mềm đóng vai trò là công cụ hỗ trợ máy chủ trong việc tập trung và quản lý dữ liệu hiệu quả.
• Cơ sở hạ tầng truyền thông là tập hợp gồm mạng có dây và mạng không dây
Hệ thống RFID hoạt động dựa trên sóng vô tuyến, được quản lý qua chương trình trên máy chủ Thẻ RFID chứa thông tin cần thiết của vật phẩm mà nó gắn vào Khi thẻ vào vùng phủ sóng của bộ đọc, thông tin từ thẻ được truyền đến bộ đọc và gửi về máy chủ để nhận dạng Máy tính sẽ phân tích và xử lý thông tin trên thẻ, đồng thời truy xuất dữ liệu từ máy chủ.
Hình 36: Hệ thống RFID
Mô hình hệ thống
Bảng 6: Mô hình hệ thống
TT Tên chân Mô tả
1 SDA Chân lựa chọn chip khi giao tiếp SPI
2 SCK Chân xung trong chế độ SPI
3 MOSI Master Data Out - Slave In trong giao tiếp SPI
4 MISO Master Data In - Slave Out trong giao tiếp SPI
Hình 37: Sơ đồ mạch hệ thống RFID
Sơ đồ lắp đặt hệ thống
Hình 38: Sơ đồ lắp đặt hệ thống
Ưu, nhược điểm của hệ thống
Ưu điểm của RFID so với mã vạch
Công nghệ mã vạch được ứng dụng nhiều trong cuộc sống nhưng công nghệ RFID Lại có những ưu điểm vượt trội hơn mã vạch như:
• Kích thước bộ nhớ Các mã vạch chỉ có thể chứa một lượng dữ liệu một vài byte, trong khi RFID có khả năng lưu giữ lên tới 128KB
Mã vạch có nhược điểm là không thể sửa đổi thông tin sau khi đã in ra, trong khi công nghệ RFID cho phép đọc và ghi dữ liệu vào bộ nhớ, với khả năng định dạng thẻ suốt quãng đời của nó.
Mã vạch không yêu cầu đường ngắm, chỉ cần một thiết bị quét mã Thiết bị này sẽ chỉ quét các mã vạch nằm trong phạm vi mà nó có thể nhận diện.
Thiết bị RFID mới hoạt động dựa trên sóng radio, giúp tiết kiệm thời gian nhờ khả năng lan truyền qua nhiều vật rắn khác nhau.
• Tính bảo mật và độ bền tốt hơn Ưu điểm của RFID trong khóa từ so với các loại khóa thông thường
• Thiết kế nhỏ gọn, tiện lợi
Nhược điểm của thống RFID
• Giá thành triển khai cao, chưa thể áp dụng rộng rãi
• Khả năng kiểm soát thiết bị còn hạn chế
• Thẻ dễ bị nhiễu sóng trong môi trường nước và kim loại
• Các chuẩn của công nghệ RFID hiện nay vẫn chưa được thống nhất.
Truyền nhận dữ liệu qua internet
Giới thiệu chung
7.1.1 Kết nối và truyền nhận dữ liệu qua internet
Hệ thống nhà thông minh với khả năng kết nối internet mang lại sự tiện lợi và khả năng quản lý tối ưu cho người dùng Người dùng có thể dễ dàng điều chỉnh và quản lý các thiết bị trong nhà thông qua kết nối web và ứng dụng điện thoại Điều này không chỉ giúp quản lý hệ thống từ xa mà còn nhận thông báo kịp thời, tăng cường tính tiện dụng cho người sử dụng.
7.1.2 Node MCU ESP8266 ESP-12E CH340
Node MCU ESP 8266 là một module mạnh mẽ cho phép kết nối mạng wifi thông qua chip ESP 8266 Với khả năng tích hợp linh hoạt, module này rất thích hợp cho các ứng dụng IoT, giúp người dùng dễ dàng phát triển và kết nối các thiết bị thông minh.
Thông số của MCU ESP 8266:
▪ Chuẩn kết nối không dây 802.11 2.4GHz, hỗ trợ bảo mật
▪ Sử dụng vi điều khiển CH340
▪ Dòng : ~ 70mA, tối đa : 200mA
▪ Hỗ trợ giao tiếp dữ liệu UART/GPIO
▪ Kích thước bộ nhớ : 4 Mbyte
Hình 39:Sơ đồ pin của ESP8266 CH340
NodeJS là nền tảng lý tưởng để xây dựng server, cho phép thực thi JavaScript bên ngoài trình duyệt Với khả năng xử lý hiệu quả các hoạt động nặng về I/O, NodeJS vượt trội hơn so với các hệ thống như Apache sử dụng PHP Điều này khiến NodeJS trở thành sự lựa chọn phù hợp cho việc phát triển backend cho ứng dụng web và API, đặc biệt khi yêu cầu về tốc độ xử lý I/O cao mà không cần quá nhiều sức mạnh tính toán.
Cách hoạt động của hệ thống
Hệ thống xây dựng sau đây chỉ dừng lại ở việc kết nối module ESP8266 với server và trao đổi thông tin giữa module và server
Máy chủ sử dụng REST API để trao đổi thông tin, bao gồm độ ẩm và nhiệt độ từ module DHT11, trạng thái bật tắt của hai đèn LED, và trạng thái báo động cháy Trong đó, trạng thái bật tắt của đèn LED có thể được điều khiển từ phía máy chủ, trong khi thông tin về nhiệt độ, độ ẩm và báo cháy chỉ được gửi từ module ESP đến máy chủ.
Code 1 REST API nhận từ server
7.2.2 Code Arduino Đối với code Arduino, ta sẽ sử dụng thư viện của ESP8266 và DHT11, đồng thời sử dụng thư viện tương ứng để xử lý JSON dễ dàng hơn
Code 2 Khai báo thư viện
Trong quá trình lặp, module sẽ tạm dừng 0.5 giây sau mỗi lần lặp và gửi yêu cầu tới server Sau khi nhận được phản hồi từ server, module sẽ tiến hành xử lý thông tin đã nhận.
Giá trị bật tắt đèn LED được thiết lập dựa trên thông tin từ server Module thu thập dữ liệu từ các cảm biến và gửi giá trị trở lại server Nếu phát hiện giá trị tương ứng với điều kiện có nguy cơ cháy, biến firewarn sẽ được cập nhật thành 1, và thông tin này sẽ được gửi lại đến server.
35 DeserializationError error = deserializeJson(doc, input);
48 Serial.write("Humidity ");Serial.print(humidity);
49 Serial.write("Temperature ");Serial.print(temp);
Code 3 Vòng lặp xử lý của ESP8266
Sau đây là code đầy đủ đối với module ESP8266
26 while(WiFi.status() != WL_CONNECTED){
35 DeserializationError error = deserializeJson(doc, input);
48 Serial.write("Humidity ");Serial.print(humidity);
49 Serial.write("Temperature ");Serial.print(temp);
65 http.begin("http://apiaddress/data");
66 http.addHeader("Content-Type", "application/json");
68 int httpCode = http.PUT(payload);
76 http.begin("http://apiadress/data");
Code 4 Code đầy đủ cho module ESP8266
Do ứng dụng còn hạn chế, và tương đối nhỏ, cấu trúc folder file của server khá đơn giản
The file server.js serves as the main component of the program, initiating the server and managing requests from the Arduino module, while directing these requests based on their accompanying methods.
86 const {getDatabase, updateDatabase} = require('./controllers/apiContr oller')
87 const server = http.createServer((req, res) =>{
88 if(req.url === '/api/data' && req.method === 'GET'){
90 } elseif(req.url === '/api/data' && req.method === 'PUT'){
93 res.writeHead(404, { 'Content-Type': 'application/json'})
94 res.end(JSON.stringify({message: 'Route Not Found'}))
98 server.listen(PORT,()=> console.log(`Server running on port ${PORT }`))
File apiController.js sẽ trực tiếp xử lý, điều hướng đối với lấy dữ liệu hoặc cập nhật dữ liệu vào database thông qua hàm trong file utils.js
99 const { writeDataToFile } = require(' /utils.js')
100 const { getPostBody} = require(' /utils.js')
101 var database = require(' /data/database.json')
103 async function getDatabase(req, res){
105 res.writeHead(200, {'Content-Type': 'application/json'})
106 res.end(JSON.stringify(database))
110 async function updateDatabase(req, res){
112 const body = await getPostBody(req)
113 var data = JSON.parse(body)
114 writeDataToFile('./data/database.json', data)
115 return res.end("Updated database")
File utils.js chứa hàm dùng để ghi dữ liệu mới ra file data và hàm dùng để lấy dữ liệu từ request mà module Arduino gửi tới server
126 fs.writeFileSync(filename, JSON.stringify(content), 'utf8',
130 return new Promise((resolve, reject) => {
136 req.on('end', () => {resolve(body) })
Đánh giá hệ thống và hướng phát triển
Hệ thống hiện tại vẫn còn ở giai đoạn sơ khai, chỉ thực hiện được giao tiếp giữa module ESP và server Để mở rộng khả năng, cần phát triển giao tiếp giữa ESP và các module Arduino khác, với ESP đóng vai trò phụ trong việc kết nối các thiết bị trong nhà thông minh, chủ yếu phục vụ cho giao tiếp với server Hiện tại, server chỉ hỗ trợ một người dùng và một hệ thống nhà thông minh duy nhất, do đó cần xây dựng phương thức xác thực và lưu trữ thông tin của từng hệ thống trong cơ sở dữ liệu để dễ dàng tìm kiếm Tương tự như các hệ thống API khác, mỗi hệ thống sẽ có một key riêng, yêu cầu gửi kèm theo request đến server để phân biệt Để hoàn thiện khả năng quản lý từ xa, nên phát triển một ứng dụng di động, giúp người dùng quản lý thiết bị và nhận thông báo khi có sự cố xảy ra tại nhà.