Cách tạo mạch đồng hồ đo ô nhiễm không khí bằng đèn LED với Arduino

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Trong dự án này, chúng tôi sẽ xây dựng một máy đo ô nhiễm không khí sử dụng cảm biến MQ-135 và arduino. Mức độ ô nhiễm trong không khí được biểu thị bằng dãy 12 đèn LED. Nếu số lượng đèn LED phát sáng càng nhiều thì hàm lượng ô nhiễm trong không khí càng cao và ngược lại.



Tổng quat

Dự án này có thể tỏ ra rất hữu ích ở những nơi mà chất lượng không khí đóng một vai trò quan trọng như trong bệnh viện. Ngoài ra, đây cũng có thể là một dự án sở thích khác cho ngôi nhà của chính bạn.

Mặc dù điều này chúng tôi không thể mong đợi mức độ chính xác cao với dự án này, nhưng nó chắc chắn có thể đưa ra một ý tưởng hợp lý tốt về mức độ ô nhiễm tại môi trường xung quanh bạn.



Ô nhiễm trong không khí có thể là carbon dioxide, carbon monoxide, butan, methane và một số khí không mùi. Cảm biến không thể phân biệt giữa các loại khí nhưng nó sẽ lấy tất cả các mẫu khí từ không khí trong một thời gian.

Nếu bạn đang sống ở thành phố đô thị và căn hộ của bạn nằm gần một con đường đông đúc, dự án này có thể hữu ích để cung cấp cái nhìn sơ bộ về không khí xung quanh.

Hầu hết mọi người bỏ qua các biện pháp chất lượng không khí tại nơi ở của họ, ước tính chỉ riêng Ấn Độ đã góp phần gây ra 1,59 triệu ca tử vong hàng năm, bao gồm cả ô nhiễm trong nhà và ngoài trời.

Phần lớn dân số không biết đến máy lọc không khí có sẵn trên thị trường và các trang thương mại điện tử, loại máy này không đắt hơn điện thoại thông minh.

Được rồi, bây giờ ngoài các cảnh báo, chúng ta hãy đi sâu vào mạch điện.

Thiết kế:

Máy đo ô nhiễm không khí sẽ thú vị hơn nếu sử dụng đèn LED hình chữ nhật và thiết kế bố trí phía trên. Tuy nhiên, bạn có thể sử dụng trí tưởng tượng của mình để làm cho dự án này trở nên thú vị hơn với bạn.

Cách tạo mạch đồng hồ đo ô nhiễm không khí bằng đèn LED

Sơ đồ trên minh họa, cách kết nối cảm biến với arduino. Nguồn điện bên ngoài được thực hiện cho cuộn dây nóng của cảm biến. Các mặt của cảm biến có thể được hoán đổi cho nhau.

Chân A0 của arduino cảm nhận sự thay đổi điện áp trong cảm biến do sự thay đổi của hàm lượng ô nhiễm trong không khí.

Cảm biến hoạt động như một biến trở (để phản ứng với ô nhiễm) và 10K là điện trở cố định, điều này hoạt động như một bộ chia điện áp. Arduino có ADC 10 bit, giúp đèn LED phát sáng tùy ý theo mức độ ô nhiễm không khí, đây là một chức năng tương tự.

Mạch đồng hồ đo ô nhiễm không khí LED với Arduino

Khi mức điện áp tương tự vượt qua một mức ngưỡng nhất định được xác định trước trong chương trình, nó sẽ bật đèn LED.

Các đèn LED kế tiếp được xác định trước với mức ngưỡng cao hơn.

Nó bắt đầu với kiểm tra đèn LED, mỗi đèn LED được bật tuần tự với một số độ trễ và người dùng có thể xác định lỗi trong các kết nối đèn LED, chẳng hạn như đèn LED không được kết nối và đèn LED không được sắp xếp theo thứ tự. Chương trình tạm dừng trong 5 phút và tất cả các đèn LED phát sáng đồng thời.

Điều này sẽ cung cấp đủ thời gian để cảm biến ấm lên, chúng ta có thể thấy một số hành động được thực hiện bởi arduino trong màn hình nối tiếp. Khi cảm biến đạt đến nhiệt độ tối ưu, arduino sẽ gửi một số kết quả đọc đến màn hình nối tiếp. Dựa trên kết quả đọc, đèn LED sẽ BẬT và TẮT. Các giá trị in trên màn hình nối tiếp càng cao thì số lượng đèn LED bật nhiều hơn.

Màn hình nối tiếp không bắt buộc trong dự án này, nhưng có thể là một công cụ hữu ích cho mục đích thử nghiệm.

Hình ảnh nguyên mẫu:

Mạch đồng hồ đo ô nhiễm không khí LED nguyên mẫu đã được thử nghiệm với Arduino

Làm thế nào để kiểm tra:

• Bật arduino và nguồn điện bên ngoài. Kiểm tra đèn LED sẽ bắt đầu và nó chỉ chạy một lần.
• Chương trình đợi 5 phút để cảm biến nóng lên.
• Sau khi các kết quả đọc được hiển thị trên màn hình nối tiếp, hãy mang bật lửa xì gà và xì gas mà không châm lửa.
• Ngay sau đó, các kết quả đọc đạt đến đỉnh điểm và nhiều đèn LED hơn bắt đầu phát sáng.
• Khi bạn dừng dòng khí trên cảm biến, đèn LED dần dần tắt. Bây giờ máy đo ô nhiễm không khí bằng đèn LED của bạn đã sẵn sàng phục vụ bạn trong phòng.

Mã chương trình:

//--------------Program developed by R.Girish---------------//
int input=A0
int a=2
int b=3
int c=4
int d=5
int e=6
int f=7
int g=8
int h=9
int i=10
int j=11
int k=12
int l=13
int T=750
unsigned long X = 1000L
unsigned long Y = X * 60
unsigned long Z = Y * 5
void setup()
{
Serial.begin(9600)
Serial.println('Sensor is getting ready, please wait for 5 min.')
pinMode(a,OUTPUT)
pinMode(b,OUTPUT)
pinMode(c,OUTPUT)
pinMode(d,OUTPUT)
pinMode(e,OUTPUT)
pinMode(f,OUTPUT)
pinMode(g,OUTPUT)
pinMode(h,OUTPUT)
pinMode(i,OUTPUT)
pinMode(j,OUTPUT)
pinMode(k,OUTPUT)
pinMode(l,OUTPUT)
pinMode(a,HIGH)
delay(T)
digitalWrite(a,HIGH)
delay(T)
digitalWrite(b,HIGH)
delay(T)
digitalWrite(c,HIGH)
delay(T)
digitalWrite(d,HIGH)
delay(T)
digitalWrite(e,HIGH)
delay(T)
digitalWrite(f,HIGH)
delay(T)
digitalWrite(g,HIGH)
delay(T)
digitalWrite(h,HIGH)
delay(T)
digitalWrite(i,HIGH)
delay(T)
digitalWrite(j,HIGH)
delay(T)
digitalWrite(k,HIGH)
delay(T)
digitalWrite(l,HIGH)
delay(T)
delay(Z)
}
void loop()
{
Serial.println(analogRead(input))
if(analogRead(input)>=85) digitalWrite(a,1)
if(analogRead(input)>=170) digitalWrite(b,1)
if(analogRead(input)>=255) digitalWrite(c,1)
if(analogRead(input)>=340) digitalWrite(d,1)
if(analogRead(input)>=425) digitalWrite(e,1)
if(analogRead(input)>=510) digitalWrite(f,1)
if(analogRead(input)>=595) digitalWrite(g,1)
if(analogRead(input)>=680) digitalWrite(h,1)
if(analogRead(input)>=765) digitalWrite(i,1)
if(analogRead(input)>=850) digitalWrite(j,1)
if(analogRead(input)>=935) digitalWrite(k,1)
if(analogRead(input)>=1000) digitalWrite(l,1)
delay(1000)
if(analogRead(input)<=85) digitalWrite(a,0)
if(analogRead(input)<=170) digitalWrite(b,0)
if(analogRead(input)<=255) digitalWrite(c,0)
if(analogRead(input)<=340) digitalWrite(d,0)
if(analogRead(input)<=425) digitalWrite(e,0)
if(analogRead(input)<=510) digitalWrite(f,0)
if(analogRead(input)<=595) digitalWrite(g,0)
if(analogRead(input)<=680) digitalWrite(h,0)
if(analogRead(input)<=765) digitalWrite(i,0)
if(analogRead(input)<=850) digitalWrite(j,0)
if(analogRead(input)<=935) digitalWrite(k,0)
if(analogRead(input)<=1000) digitalWrite(l,0)
}
//--------------Program developed by R.Girish---------------//




Trước: Cảnh báo tin nhắn SMS rò rỉ LPG bằng MQ-135 - Nhận tin nhắn cảnh báo trong điện thoại di động của bạn Tiếp theo: Nguồn cung cấp chế độ công tắc biến đổi LM317 (SMPS)