Sistem antiincendiu
Introducere
Sistem antiincendiu bazat pe un senzor de fum. Cand valoarea citita de acest senzor depaseste o limita, se va porni un sprinkler. Acesta se va opri cand un senzor de umiditate citeste o valoare a umiditatii destul de mare.
Schema bloc
Hardware Design
Lista de piese necesare:
Arduino Uno
senzor de fum
senzor de umiditate
releu
fire
pompa
furtun
sprinkler
Schema Electrica
Software Design
Diagrama de activitate
Descrierea codului aplicatiei
Mediu de dezvoltare:
Codul sursa se afla in fisierul project.ino. In primul rand am definit constantele: pompa, senzorul de gaz si senzorul de umiditate.
Functiile implementate:
functia setup: aici declar pinii ca fiind de tip input sau output: pentru senzorul de umiditate si senzorul de gaz input, iar pentru pompa output. De asemenea, tot aici initializez si seriala.
functia print: in aceasta functie afisez intr-un mod elegant pe seriala valorile citite de cei doi senzori.
functia loop: citesc valorile de pe cei doi pini conectati la cei doi senzori cu ajutorul functiei analogRead(). Compar valoarea umiditatii citita de catre senzor cu o valoare de threshold definita in prealabil de mine. Acea valoare de threshold reprezinta un prag, daca valoarea citita de pe senzor depaseste acest prag este echivalent cu faptul ca incendiul a fost stins. In acest caz, afisez pe ecran valorile citite de senzori prin intermediul functiei print() descrisa anterior si mesajul “PUMP OFF”. Daca nu se intra pe acest caz, verific daca valoarea citita de senzorul de gaz este mai mare decat o valoare de threshold pentru gaz definita in prealabil. Si aceasta valoare este un prag, daca valoarea citita de senzorul de gaz depaseste acest prag inseamna ca a pornit un incendiu. Si in acest caz, afisez valorile citite de catre senzori pe seriala, dar de data aceasta alaturi de mesajul “PUMP ON”. Daca nu suntem in niciunul din cele doua cazuri, inseamna ca nu s-a intamplat nimic si doar afisez valorile citite de pe senzori. Aceste citiri si verificari se intampla o data la doua secunde.
Rezultate Obţinute
DEMO
Concluzii
Mi-a placut sa lucrez la acest proiect si spre surprinderea mea a iesit mult mai repede decat ma asteptam. Cea mai mare greutate a fost sa atasez pompita la tot sistemul, asta pentru ca prima data am comandat un releu de 24V si mi-a dat multe batai de cap. In final, am mai comandat un releu de 5V si cu acela a mers totul foarte repede (probabil si pentru ca pana in momentul respectiv m-am uitat la aproape toate tutorialele de pe internet legat de acest subiect ).
Download
Pentru versionarea codului am folosit GitHub, iar la urmatorul link se afla codul sursa project.ino: Link github
Bibliografie/Resurse