Innehållsförteckning:
- Steg 1: Samla material
- Steg 2: Konfigurera brödbrädorna
- Steg 3: Konfigurera LCD -skärm
- Steg 4: Konfigurera Piezo Buzzer
- Steg 5: Konfigurera DHT -temperatursensorn
- Steg 6: Konfigurera RGB
- Steg 7: Valfritt 3D -utskriftshölje
- Steg 8: Koden och filerna
- Steg 9: Arduino -kod
Video: Arduino LCD brandsäkerhetsvarningssystem: 9 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Detta är ett studentprojekt som kombinerar funktionerna hos en LCD -skärm, en summer, en RGB och en DHT -temperatursensor.
Den aktuella omgivande temperaturen visas och uppdateras på LCD -skärmen.
Meddelandet som skrivs ut på LCD -skärmen informerar användaren om graden av "brandfara".
Skärmen dimmar och blinkar för att varna användaren om fara.
Summern blir högre och snabbare för att varna användaren om fara beroende på den aktuella risknivån.
RGB ändras grönt, gult, orange och rött beroende på aktuell risknivå.
Kan sättas i ett 3D -tryckt hölje för ett mer professionellt utseende.
Detta löser ett verkligt problem med att människor inte vet när det finns risk för brand tills det är för sent
Steg 1: Samla material
Material som används i detta projekt:
1x LCD -skärm
1x DHT_11 temperatursensor
1x RGB
1x Piezo passiv summer 1.0v
2x små brödbrädor
3x standardmotstånd
1x brödbräda med normal storlek
1x Arduino UNO
Bluetack för att låsa trådarna på plats.
Ett sortiment av olika ändtrådar, både öppna och enkla.
En enhet för att köra koden
Tillgång till en 3D -skrivare om du önskar det yttre skalet och ett mer polerat utseende
Steg 2: Konfigurera brödbrädorna
1. Anslut den orange tråden från stiftet märkt "GND" på Arduino -kortet och anslut den till den negativa sidan (blå) på brödbrädet. Från och med nu, om vi behöver använda GND för externa enheter kommer vi helt enkelt att placera dem i samma kolumn som denna på brödbrädet.
2. Anslut den röda tråden från stiftet märkt "5V" på Arduino -kortet och anslut den till den positiva (röda) sidan av brödbrädet. Från och med nu, om vi behöver använda 5V för externa enheter, kommer vi helt enkelt att lägga dem i samma kolumn som detta på brödbrädan.
Steg 3: Konfigurera LCD -skärm
1. Vänd brädan så att den är vänd upp och ner med alla stift på vänster sida.
2. Anslut en kabel 5 uppifrån till vänster på den övre raden med stift och anslut den till stift nummer 4 på Arduino UNO.
3. Anslut en kabel 6 uppifrån till vänster på den övre raden med stift och anslut den till stift nummer 5 på Arduino UNO.
4. Anslut en tråd 7 uppifrån till vänster på den övre raden med stift och anslut den till stift 6 på Arduino UNO.
5. Anslut en tråd 8 uppifrån till vänster på den övre raden med stift och anslut den till stift nummer 7 på Arduino UNO.
6. Anslut en kabel 9 uppifrån till vänster på den övre raden med stift och anslut den till stift nummer 8 på Arduino UNO.
7. Anslut en tråd 10 uppifrån till vänster på den övre raden med stift och anslut den till stift nummer 9 på Arduino UNO.
8. Anslut en tråd 3 längst ned till höger och anslut den till 5V -raden på brödbrädet
9. Anslut en tråd 4 längst ned till höger och anslut den till GND -raden på brödbrädet
SE BILDER SOM CIRCUIT -DIAGRAM VISAR Olika LCD -skärmar
Steg 4: Konfigurera Piezo Buzzer
1. Anslut en kabel från GND -stiftet på summern till GND -kolumnen (blå) på brödbrädet
2. Anslut en kabel från VCC -stiftet på summern till 5V -kolonnen (röd) på brödbrädet
3. Anslut en kabel från SIG -stiftet på summern till stiftet numrerat "10" på arduino UNO -kortet
SE ÖVRIGA BILDER SOM CIRCUIT -DIAGRAM VISAR OCH SKILDA BUZZER
Steg 5: Konfigurera DHT -temperatursensorn
1. Ställ in DHT -sensorn i brödbrädan enligt bilden ovan
2. Anslut den första stiftet till vänster om DHT -sensorn (märkt VCC i deldiagrammet) till 5V -kolumnen (röd) på brödbrädet
3. Anslut den andra stiftet till vänster om DHT -sensorn (märkt DATA i deldiagrammet) till A0 -porten på Arduino UNO
4. Anslut den första stiftet till höger om DHT -sensorn (märkt GND i deldiagrammet) till GND -kolumnen (blå) på brödbrädet
5. Titta på en handledning och lägg till dht.h -biblioteket som finns i slutet av instruktionsboken till Arduino. (Detta är obligatoriskt)
Steg 6: Konfigurera RGB
1. Placera RGB i en liten brödbräda enligt bilden ovan, betona att det andra benet från vänster om RGB är en plats närmare än de andra tre
2. Placera standardmotstånd på första, tredje och fjärde stiften. Lämna utrymme för minst en tråd till (som visas ovan).
3. Anslut en kabel bakom motståndet på vänster stift på RGB till stiftet märkt 2 på Arduino UNO
4. Anslut en tråd bakom den yttre sekunden från vänster stift på RGB till GND (blå) kolumnen på brödbrädet.
5. Anslut en kabel bakom motståndet på den andra från höger stift på RGB till stiftet märkt 1 på Arduino UNO
6. Anslut en kabel bakom motståndet på höger stift på RGB till stiftet märkt 3 på Arduino UNO
Steg 7: Valfritt 3D -utskriftshölje
1. Hitta en handledning om hur du 3D -utskrift.
2. Skriv ut nedanstående bifogade design gjord på Autodesk Fusion 360 (.stl -fil)
3. Skrapa bort överflödigt 3D -material och släta över ytan
4. Se bilden ovan för vägledning om var du ska placera Arduino -delar.
Steg 8: Koden och filerna
-DHT.h -biblioteket är bifogat. (PACKA UPP)
-Koden med fullständiga detaljerade kommentarer bifogas men är också på nästa steg.
-STL -filen för 3D -höljet bifogas
-Kretsdiagrammet bifogas igen. Var noga med att hänvisa till de faktiska stegen för LCD -skärmen och piezo -summer när olika komponenter användes.
Steg 9: Arduino -kod
// LCD -VARNINGSSYSTEM // Läser indata från DHT -temperaturstift och beroende på om det är varmt eller inte, ändrar en rgb och högtalare för att indikera användaren om det är brandrisk. // Visar även temperaturen på LCD -skärmen.
// DHT -INSTÄLLNING
#include // Inkludera DHT -biblioteket
#define dht_dpin A0 // Berättar för kortet att DHT -stiftet är i analog ingång 0
dht DHT; // dht = DHT
// FLYTANDE KRISTALLINSTÄLLNINGAR
#include // Inkludera Liquid Crystal -biblioteket
LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // Förkorta till LCD /berättar för arduino vilka portar LCD -skärmen har
// DEFINERA RGB + BUZZER
#define redpin 1 // Definierar redpin för RGB i port 1
#define greenpin 2 // Definierar greenpin för RGB i port 2
#define bluepin 3 // Definierar bluepin för RGB i port 3
#define buzzerpin 10 // Definierar buzzerpin i port 10
// VARIABLE/S
int temp = analogRead (DHT.temperatur); // Upprättar heltal "temp" som är värdet från kommandot DHT.temperature
void setup () {
// UTGÅNG/INGÅNG
analogWrite (redpin, OUTPUT); // Deklarera/definiera redpin som Output
analogWrite (greenpin, OUTPUT); // Deklarera/definiera greenpin som Output
analogWrite (bluepin, OUTPUT); // Deklarera/definiera bluepin som Output
pinMode (buzzerpin, OUTPUT); // Deklarera/definiera buzzerpin som Output
// LCD SKÄRM
lcd.begin (16, 2); // Definiera LCD -skärmen som 16 kolumner och 2 rader}
void loop () {
// LCD -KOD UTAN VARIABILITET
DHT.read11 (dht_dpin); // Läs även input från dht_dpin (A0)
lcd.setCursor (0, 0); // Ställer in markören till kolumn 0, rad 0
lcd.print ("Det är"); // Skriver "It's" på LCD -skärmen
lcd.print (DHT.temperatur); // Skriver ut DHT.temperaturvärdet från DHT -stift på kolumn 0, rad 0
lcd.print (""); // Skriver ut ett mellanslag efter temperaturen
lcd.print ((char) 223); // skriver ut examensskylt efter temperatur
lcd.print ("C"); // Skriver ut ett "c" efter graderstecknet för att symbolisera celsius
// LCD -BLINKANDE
lcd.setCursor (0, 1); // Ställer in markören till kolumn 0, rad 1
lcd.noDisplay ();
lcd.print ("Ingen brandfara"); // Skriver ut "Ingen risk för eld"
lcd.noDisplay (); // Stänger av LCD -skärmen (del av blixt)
fördröjning (1000); // Stannar i 1 sekund
LCD skärm(); // Slår på LCD -skärmen igen
fördröjning (1000); // Håller på i 1 sekund
// RGB + BUZZER CODE
analogWrite (redpin, 0); // Ingen utmatning från röd stift
analogWrite (greenpin, 255); // 255 utmatning från greenpin (gör RGB grön)
analogWrite (bluepin, 0); // Ingen utmatning från blå pin
ton (buzzerpin, 20, 20); // // Avger frekvens på 20 hertz i 0,02 sekunder från summer
// OM TEMPEN ÄR 25-30
if ((int (DHT.temperatur)> = 25,00) && (int (DHT.temperatur) <= 30,00)) {
lcd.clear (); // Rensar LCD -skärmen
lcd.setCursor (0, 1); // Ställer in markören till kolumn 0, rad 1
lcd.print ("Liten varning"); // Skriver ut "Liten varning" på kolumn 0, rad 1
lcd.noDisplay (); // Stänger av LCD -skärmen (del av blixt)
fördröjning (1000); // Stannar i 1 sekund
LCD skärm(); // Slår på LCD -skärmen igen
fördröjning (1000); // Håller på i 1 sekund
analogWrite (redpin, 255); // 255 utmatning från redpin (gör RGB gul)
analogWrite (greenpin, 255); // 255 utmatning från greenpin (gör RGB gul)
analogWrite (bluepin, 0); // Ingen utmatning från blå pin
ton (buzzerpin, 200, 100); // Avger frekvens på 200 hertz i 0,1 sekunder från summer
fördröjning (300); //.3 Andra fördröjningen
} // OM TEMP ÄR 31-37 annat om ((int (DHT.temperatur) = 37,00)) {
lcd.clear (); // Rensar LCD -skärmen
lcd.setCursor (0, 1); // Ställer in markören till kolumn 0, rad 1
lcd.print ("Medium Alert"); // Skriver ut "Medium Alert" på kolumn 0, rad 1
lcd.noDisplay (); // Stänger av LCD -skärmen (del av blixt)
fördröjning (500); // Stannar i 0,5 sekunder
LCD skärm(); // Slår på LCD -skärmen igen
fördröjning (500); // Håller på i 0,5 sekund
analogWrite (redpin, 255); // 255 utmatning från redpin (gör RGB orange)
analogWrite (greenpin, 165); // 165 utmatning från greenpin (gör RGB orange)
analogWrite (bluepin, 0); // Ingen utmatning från bluepin
ton (buzzerpin, 500, 900); // Avger frekvens på 500 hertz i 0,9 sekunder från summer
fördröjning (300); //.3 Andra fördröjningen
} // OM TEMPEN ÄR 38-100
annars om ((int (DHT.temperatur) = 100,00)) {
lcd.clear (); // Rensar LCD -skärmen
lcd.setCursor (0, 1); // Ställer in markören till kolumn 0, rad 1
lcd.print ("Ring 000"); // Skriver ut "Ring 000" på kolumn 0, rad 1
lcd.noDisplay (); // Stänger av LCD -skärmen (del av blixt)
fördröjning (250); // Stannar i 0,25 sekunder
LCD skärm(); // Slår på LCD -skärmen igen
fördröjning (250); // Stannar på i 0,25 sekunder
analogWrite (redpin, 255); // 255 utmatning från redpin (gör RGB röd)
analogWrite (greenpin, 0); // Ingen utmatning från greenpin
analogWrite (bluepin, 0); // Ingen utmatning från bluepin
ton (buzzerpin, 1000, 900); // Avger frekvens på 1000 hertz i 0,9 sekunder från summer
fördröjning (300); //.3 Andra fördröjningen
}}
Rekommenderad:
Bluetooth -kontrollerad Messenger LCD -- 16x2 LCD -- Hc05 -- Enkelt -- Trådlös anslagstavla: 8 steg
Bluetooth -kontrollerad Messenger LCD || 16x2 LCD || Hc05 || Enkelt || Trådlös anslagstavla: …………………………. Vänligen prenumerera på min YouTube -kanal för fler videor …… ………………………………… Anslagstavlan används för att uppdatera människor med ny information eller Om du vill skicka meddelande med i rummet eller i hal
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)
Arduino LCD 16x2 Handledning - Gränssnitt 1602 LCD -skärm med Arduino Uno: 5 steg
Arduino LCD 16x2 Handledning | Gränssnitt 1602 LCD -skärm med Arduino Uno: Hej killar eftersom många projekt behöver en skärm för att visa data oavsett om det är någon DIY -mätare eller YouTube -prenumerationsräknare eller en kalkylator eller ett knapplås med display och om alla dessa typer av projekt är gjorda med arduino kommer de definitivt
I2C / IIC LCD -skärm - Använd en SPI LCD till I2C LCD -skärmen Använd SPI till IIC -modulen med Arduino: 5 steg
I2C / IIC LCD -skärm | Använd en SPI LCD till I2C LCD -skärmen Använda SPI till IIC -modulen med Arduino: Hej killar eftersom en vanlig SPI LCD 1602 har för många trådar att ansluta så det är mycket svårt att ansluta den till arduino men det finns en modul på marknaden som kan konvertera SPI -display till IIC -display så då behöver du bara ansluta 4 ledningar
I2C / IIC LCD -skärm - Konvertera en SPI LCD till I2C LCD Display: 5 steg
I2C / IIC LCD -skärm | Konvertera en SPI LCD -skärm till I2C LCD -skärm: Användning av spi -lcd -skärm behöver för många anslutningar att göra vilket är riktigt svårt att göra så jag hittade en modul som kan konvertera i2c lcd till spi lcd så låt oss komma igång