Turinys:

Vandens lygio indikatorius su SMS: 4 žingsniai
Vandens lygio indikatorius su SMS: 4 žingsniai

Video: Vandens lygio indikatorius su SMS: 4 žingsniai

Video: Vandens lygio indikatorius su SMS: 4 žingsniai
Video: Lygio indikatorius 2024, Lapkritis
Anonim
Vandens lygio indikatorius su SMS
Vandens lygio indikatorius su SMS

Šiandien aš kalbėsiu apie labai naudingą projektą. Jis vadinamas vandens lygio indikatoriumi su SMS pranešimu. Kiekvienas turi savo namuose talpyklą. Problema ta, kad nėra sistemos, leidžiančios sekti vandens kiekį bake. Tada atsiranda antrinė problema, kai įjungus vandens siurblį jie neįsivaizduoja, kada jis pripildomas, o kartais būna situacijų, kai siurblys ir toliau siurbia vandenį į baką, o vanduo pradeda išsilieti iš bako. Yra energijos švaistymas ir vandens švaistymas. Taigi ši sistema yra labai naudinga vandens lygiui nustatyti. Tai taip pat naudinga aukštiems pastatams, kuriuose neįmanoma patikrinti vandens lygio.

Pradėkime.

1 žingsnis: komponentai

Komponentai
Komponentai
Komponentai
Komponentai
Komponentai
Komponentai
Komponentai
Komponentai

1. Atmega328

2. Arduino Uno

3. Perjunkite x1

4. Kristalų osciliatorius x1

5. 10uf kondensatorius x2

6. BC547 npn tranzistorius x4

7. Rezistorius 1k x5

8. Rezistorius 100 x8

9. PCB x1

10. LM7805 5 voltų reguliatorius

11. LM7812 12 voltų reguliatorius

12. Kondensatorius 22uf x2

13. Saulės panelis 20v

14. Šildytuvas x1

15. Laidai

16. GSM modemas 800H arba 900A

2 žingsnis: jungtys ir PCB gamyba

Jungtys ir PCB gamyba
Jungtys ir PCB gamyba
Jungtys ir PCB gamyba
Jungtys ir PCB gamyba
Jungtys ir PCB gamyba
Jungtys ir PCB gamyba
Jungtys ir PCB gamyba
Jungtys ir PCB gamyba

Sujunkite tranzistorius su rezistoriais ant duonos lentos, kaip parodyta ckt diagramoje, patikrinkite išvestį. Išvestis bus didesnė nei 3 voltai, kad logika HIGH būtų siunčiama arduino.

Sumontuokite rezistorius ir tranzistorius ant plokštės.

Ant PCB pritvirtinkite 28 kontaktų lizdą.

Mes gaminame savarankišką arduino.

Lituokite kristalų osciliatorių kartu su 22uf kondensatoriais.

Prijunkite tranzistorių išėjimus prie analoginių kaiščių.

Tinkamai prijunkite įtampos reguliatorių prie kondensatorių.

Šilumos kriauklė turi būti pritvirtinta prie 7812 įtampos reguliatoriaus, nes GSM modemas iš jo semia daugiau srovės.

Saulės kolektorius prijungtas prie 7812 ic įėjimo.

Lituokite visus komponentus, kaip nurodyta PCB ckt diagramoje. Patikrinkite jungtis.

3 žingsnis: programavimas

Programavimas
Programavimas

Prijunkite „arduino UNO“prie kompiuterio, kuriame yra „atmega328“

Įrašykite šį kodą į savo arduino

int a = 0; int b = 0;

int c = 0;

int d = 0;

negaliojanti sąranka ()

{pinMode (A1, INPUT);

pinMode (A0, INPUT);

pinMode (A2, INPUT);

pinMode (A4, INPUT);

Serial.begin (9600);

}

tuštumos kilpa ()

{int r = digitalRead (A4);

int s = digitalRead (A0);

int t = digitalRead (A1);

int u = digitalRead (A2);

jei (r == HIGH && s == LOW && t == LOW && u == LOW)

{jei (a == 0)

{Serial.println ("AT+CMGF = 1");

vėlavimas (500);

Serial.println ("AT+CMGS = \" tavo nr. / ""); // Keisti imtuvo telefono numerio delsą (500);

Serial.print („1 lygis Įjunkite variklį“); // žinutė, kurią norite išsiųsti

vėlavimas (500);

Serijinis.rašyti (26);

vėlavimas (500);

a ++; b = 0; c = 0; d = 0;

}

}

jei (r == HIGH && s == HIGH && t == LOW && u == LOW)

{jei (b == 0)

{Serial.println ("AT+CMGF = 1");

vėlavimas (500);

Serial.println ("AT+CMGS = \" jūsų nr. / ""); // Pakeiskite imtuvo telefono numerį

vėlavimas (500);

Serial.print („2 lygio vanduo“);

// žinutė, kurią norite išsiųsti

vėlavimas (500);

Serijinis.rašyti (26);

vėlavimas (500);

b ++; a = 0; c = 0; d = 0;

} }

jei (r == HIGH && s == HIGH && t == HIGH && u == LOW) {jei (c == 0)

{Serial.println ("AT+CMGF = 1");

vėlavimas (500);

Serial.println ("AT+CMGS = \" tavo nr. / ""); // Keisti imtuvo telefono numerio delsą (500);

Serial.print („3 lygio vanduo“); // žinutė, kurią norite išsiųsti

vėlavimas (500);

Serijinis.rašyti (26);

vėlavimas (500);

c ++; b = 0; d = 0; a = 0; }}

jei (r == HIGH && s == HIGH && t == HIGH && u == HIGH)

{if (d == 0) {Serial.println ("AT+CMGF = 1");

vėlavimas (500);

Serial.println ("AT+CMGS = \" jūsų nr. / ""); // Pakeiskite imtuvo telefono numerį

vėlavimas (500);

Serial.print („Visas bako išjungimo variklis“); // žinutė, kurią norite išsiųsti

vėlavimas (500);

Serijinis.rašyti (26);

vėlavimas (500);

d ++; c = 0; b = 0; a = 0;

} }

Kitas

{Serial.print („Grandinė neprijungta“);

}

}

Dabar pašalinkite „ic“ir įdiekite jį į PCB

4 žingsnis: Surinkimas ir bandymas

Surinkimas ir bandymas
Surinkimas ir bandymas
Surinkimas ir bandymas
Surinkimas ir bandymas
Surinkimas ir bandymas
Surinkimas ir bandymas

Paimkite PVC vamzdį, kurio aukštis lygus jūsų vandens talpyklai.

Prijunkite laidus nuo ckt skirtingais bako lygiais.

Atminkite, kad Vcc viela visada panardinama į vandenį.

Atlikite visus ryšius.

Prijunkite Rx of ic, esantį 2 kaištyje, prie GSM modemo Tx

Prijunkite Tx of ic, esantį 3 kaištyje, prie GSM modemo Rx

Prijunkite saulės kolektorių prie įėjimo 7812 ic.

Patikrinkite visus ryšius ir projektas paruoštas.

Padarykite sistemą pastogę, kad ji apsaugotų nuo lietaus.

Išbandyk!

Rekomenduojamas: