Детектор утечки газа на Arduino



бет1/2
Дата26.06.2023
өлшемі1.14 Mb.
#475392
түріСамостоятельная работа
  1   2
СРС Хайбулина Дильназ

Самостоятельная работа студента


Тема: Детектор утечки газа на Arduino
Выполнила: Хайбулина Дильназ
Группа: ВТ(ПИ)-20-3
Электронный адрес: d.khaibulina@aues.kz

Содержание

  • Введение
  • Схема в TinkerCad
  • Список компонентов
  • Скетч
  • Результат работы
  • Заключение
  • Список литературы

Введение

Сжиженный нефтяной газ (LPG – liquified petroleum gas) используется сейчас в большинстве домохозяйств, однако его утечка может привести к тяжелым последствиям. Для предотвращения и обнаружения утечек этого газа разработано достаточно большое число разнообразных устройств. В данной работе мы разработаем детектор обнаружения утечки данного газа на основе платы Arduino. При обнаружении утечки газа детектор будет выдавать сигнал тревоги в виде звукового сигнала.

Схема в TinkerCad


Рисунок 1 – Схема в TinkerCad

Список компонентов


Имя

Количество

Компонент

GAS1

1

Датчик газа

U1

1

Arduino Uno R3

R1 R3 R4

3

1 kΩ Резистор

R2

1

4.7 kΩ Резистор

D1

1

Красный Светодиод

D2

1

Зеленый Светодиод

U3

1

На базе PCF8574, 39 ЖК-экран 16 x 2 (I2C)

PIEZO1

1

Пьезоэлемент

Скетч


#include //Подключение библиотеки
LiquidCrystal_I2C lcd(0x27,16,2);//Указываем I2C адрес,
//а также параметры экрана (в случае LCD 1602 - 2 строки по 16 символов в каждой)
int redled = 2;//пин подключения красного светодиода 2
int greenled = 3;//пин подключения зеленого светодиода 3
int buzzer = 4;//пин подключения пьезоэлемента 4
int sensor = A0;//пин подключения датчика газа А0
int high_gas_concentration = 400;//переменная для хранения порогового значения
//высокой концентрации горючего газа
void setup()
{
pinMode(redled, OUTPUT);//конфигурация вывода 2 на выход
pinMode(greenled,OUTPUT);//конфигурация вывода 3 на выход
pinMode(buzzer,OUTPUT);//конфигурация вывода 4 на выход
pinMode(sensor,INPUT);//конфигурация вывода А0 на вход
Serial.begin(9600);//Установка скорости обмена данными
lcd.init();//Инициализация дисплея
lcd.backlight();//Включение подсветки дисплея
lcd.setCursor(0,0);//1 столбец, 1 строка
lcd.print("LPG Gas Detector");//вывод "LPG Gas Detector" в первую строку
delay(2000);//задержка 2 секунды
}

Скетч


void loop(){
int analogValue = analogRead(sensor);//чтение аналогового входа А0
Serial.println(analogValue);//вывод аналогового представления концентрации горючего газа
//в воздухе на монитор последовательного порта
if(analogValue>high_gas_concentration){//Если значение датчика превысит 400
digitalWrite(redled,HIGH);//включение красного светодиода
digitalWrite(greenled,LOW);//выключение зеленого светодиода
tone(buzzer,1000,10000);//запуск звукового оповещения в 1000 Гц на 4 пине на 10 секунд
lcd.clear();//очистка дисплея
lcd.setCursor(0,0);//1 столбец, 1 строка
lcd.print("ALERT");//вывод "ALERT" в первую строку
delay(1000);//задержка 1 секунда
lcd.clear();//очистка дисплея
lcd.setCursor(0,1);//1 столбец, 2 строка
lcd.print("EVACUATE");//вывод "EVACUATE" во вторую строку
delay(1000);//задержка 1 секунда
}
else {//иначе
digitalWrite(greenled,HIGH);//включение зеленого светодиода
digitalWrite(redled,LOW);//выключение красного светодиода
noTone(buzzer);//отключение звука
lcd.clear();//очистка дисплея
lcd.setCursor(0,0);//1 столбец, 1 строка
lcd.print("SAFE");//вывод "SAFE" в первую строку
lcd.setCursor(0,1);//1 столбец, 2 строка
lcd.print("ALL CLEAR");//вывод "ALL CLEAR" во вторую строку
delay(1500);//задержка 1,5 секунды
}
}


Достарыңызбен бөлісу:
  1   2




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет