diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/CktDiagram.png b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/CktDiagram.png new file mode 100644 index 00000000..e1c1ce32 Binary files /dev/null and b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/CktDiagram.png differ diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/Code/Code.ino b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/Code/Code.ino new file mode 100644 index 00000000..7e7ec230 --- /dev/null +++ b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/Code/Code.ino @@ -0,0 +1,69 @@ +// C++ code + // + void setup() + { + // Setting Pins for their tasks i.e. inputs and outputs + + pinMode(A0, INPUT); + pinMode(A5, INPUT); + + pinMode(6, OUTPUT); + pinMode(5, OUTPUT); + pinMode(4, OUTPUT); + pinMode(3, OUTPUT); + pinMode(2, OUTPUT); + + // Monitoring over data using Serial Monitor + Serial.begin(9600); + + } + + void loop() + { + // reading Temperature and Gases input which are analog in nature + // analogRead is used to read outputs of analog devices + int temp = analogRead(A0); + int gas = analogRead(A5); + + float t = -40 + (temp - 20) / 358.0 + 165; + + // Following if-else statements denote a certain threshold level + // Above which a certain Diode is set to HIGH i.e. ON + + //digitalWrite is used for setting Diode to HIGH or LOW + + if (gas > 280) + { + digitalWrite(6, HIGH); + } + if (gas > 300) + { + digitalWrite(5, HIGH); + } + if (gas > 400) + { + digitalWrite(4, HIGH); + Serial.println(t); // This Statement reads the temperature and + // prints on a single line of the Serial Monitor + } + if (gas > 550) + { + digitalWrite(3, HIGH); + Serial.println(t); + } + if (gas > 650) + { + digitalWrite(2, HIGH); + Serial.println(t); + } + + // Delay puts a delay of 100 miliseconds on Serial Monitor output + delay(100); + + //If the smoke is not detected the LEDs must be OFF i.e. LOW state + digitalWrite(2, LOW); + digitalWrite(3, LOW); + digitalWrite(4, LOW); + digitalWrite(5, LOW); + digitalWrite(6, LOW); + } diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/arduiniunojpeg.jpg b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/arduiniunojpeg.jpg new file mode 100644 index 00000000..0d281908 Binary files /dev/null and b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/arduiniunojpeg.jpg differ diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/breadboard.jpg b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/breadboard.jpg new file mode 100644 index 00000000..09ca4ec7 Binary files /dev/null and b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/breadboard.jpg differ diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/gasSensor.jpg b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/gasSensor.jpg new file mode 100644 index 00000000..6a83ac0b Binary files /dev/null and b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/gasSensor.jpg differ diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/readme.md b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/readme.md new file mode 100644 index 00000000..62ef1cf8 --- /dev/null +++ b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/readme.md @@ -0,0 +1,127 @@ + + +# **Smoke Detection** + +This a beginner friendly IOT project. + +## **Motive** +To be able to detect smoke and notify the danger level using rgb lights. + +## **Apparatus** + +* |Arduino Uno| 1 pc + |----------- | -------- | + | ![](arduiniunojpeg.jpg)| + +* |BreadBoard| 1 pc + |----------- | -------| + |![](breadboard.jpg) | + +* |Gas Sensor| 1 pc + |-----------|---------| + | ![](gasSensor.jpg) | + +* |Temperature Sensor | 1 pc + |-----------|--------------| + |![](temperatureSensor.jpg)| + +* Resistors 6 pcs {1 - 4 Kohms and 5 - 330 ohms} + +* |LEDs| 5 pcs + |-----------|----------| + | Color | Qty. | + | Red | 1pc | + | Blue | 1pc | + | Green | 1pc | + | Yellow | 2pc | + +* TinkerCad + + If you don't have hardware to perform this. + You can try this Web Application **[TinkerCad](https://www.tinkercad.com/)** + +------ + +# Circuit Diagram + +Make connections like below schematic. + +![](CktDiagram.png) + +Below code is simple to understand. + +```cpp + // C++ code + // + void setup() + { + // Setting Pins for their tasks i.e. inputs and outputs + + pinMode(A0, INPUT); + pinMode(A5, INPUT); + + pinMode(6, OUTPUT); + pinMode(5, OUTPUT); + pinMode(4, OUTPUT); + pinMode(3, OUTPUT); + pinMode(2, OUTPUT); + + // Monitoring over data using Serial Monitor + Serial.begin(9600); + + } + + void loop() + { + // reading Temperature and Gases input which are analog in nature + // analogRead is used to read outputs of analog devices + int temp = analogRead(A0); + int gas = analogRead(A5); + + float t = -40 + (temp - 20) / 358.0 + 165; + + // Following if-else statements denote a certain threshold level + // Above which a certain Diode is set to HIGH i.e. ON + + //digitalWrite is used for setting Diode to HIGH or LOW + + if (gas > 280) + { + digitalWrite(6, HIGH); + } + if (gas > 300) + { + digitalWrite(5, HIGH); + } + if (gas > 400) + { + digitalWrite(4, HIGH); + Serial.println(t); // This Statement reads the temperature and + // prints on a single line of the Serial Monitor + } + if (gas > 550) + { + digitalWrite(3, HIGH); + Serial.println(t); + } + if (gas > 650) + { + digitalWrite(2, HIGH); + Serial.println(t); + } + + // Delay puts a delay of 100 miliseconds on Serial Monitor output + delay(100); + + //If the smoke is not detected the LEDs must be OFF i.e. LOW state + digitalWrite(2, LOW); + digitalWrite(3, LOW); + digitalWrite(4, LOW); + digitalWrite(5, LOW); + digitalWrite(6, LOW); + } + +``` + + + \ No newline at end of file diff --git a/Beginner Friendly Projects/Fire Alarm Using TinkerCad/temperatureSensor.jpg b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/temperatureSensor.jpg new file mode 100644 index 00000000..a951f3e9 Binary files /dev/null and b/Beginner Friendly Projects/Fire Alarm Using TinkerCad/temperatureSensor.jpg differ