Extras din proiect
Sistemul este compus din 3 senzori de fum(SF1, SF2, SF3), o lampa de alerta si un difuzor. Senzorii conectati la intrarile ADC1…ADC3 se citesc periodic la 20ms(SF1), 50ms(SF2), 120ms(SF3). In cazul aparitiei unui incendiu(este echivalent cu modificare tensiunii de iesire de pe senzor) un semnal luminos de alarma este pornit. Lampa de alerta este conectata pe iesirea numerica DO7 si se aprinde doar cand este sesizata aparitia unui incendiu. Difuzorul este conectat pe iesirea analogica 0 a placii PCM3712. Se cere crearea unei forme de unda sinusoidale care sa intre in difuzor si sa genereze alarma. Valorile afisate sunt salvate si intr-un fisier text.
Rezumatul solutiei
Proiectul a fost dezvoltat utilizand controlerul PC104 si platforma hardware de achizitie de date și Advantech Device Driver API. Pentru functiile de intrare analogice si de iesire digitale am folosit placa PCM3712. Solutia a fost implementata in Visual Studio 6.0 folosind limbajul de programare C.
Arhitectura aplicatiei are doua parti principale: sistemul de detectare a incendiului si sistemul de alarma de incendiu.Sistemul de detectare a incendiilor este responsabil de citirea a 3 senzori de fum periodic si pornirea alarmei de incendiu daca nivelul densitatii fumului se ridica peste limita normal.Sistemul de alarma de incendiu ,cand este declansat,este responsabil pentru luminarea LED-ului sis a genereze o unda de tensiune sinusoidala care este folosita drept semnal de intrare pentru speakere.
In sistemul de detectare a incendiului fiecare sensor este citit la un interval bine definit.Acest interval este masurat folosind un timer software.Este folosit acelas timer pentru toti cei 3 senzori.Dat fiind faptul ca senzorul trebuie verificat la fiecare 20,50 si respective 120 milisecunde , timerul software este setat sa se declanseze la fiecare 10 ms, care este cel mai putin comun multiplu al celor 3 valori. La fiecare semnalare a timerului este incrementat un numarator. Cand valoarea numaratorului este divizibila cu 2,5 sau 12 atunci este citit senzorul corespunzator. Cand valoarea numaratorului este egala cu 60, care este cel mai mare divisor comun , este setat la 0. Cand starea unui sensor indica ca nivelul de densitate a fumului este peste normal , adica voltajul citit de pe sensor este mai mare de 3 Volti, sistemul de detectare al incendiilor isi finalizeaza activitatea si sistemul de alarma de incendiu intra in scena.
Sistemul de alarma aprinde un LED si intr-o bucla infinita genereaza intrarea voltajului sinusoidal.Sistemul de alarma este oprit cand se apasa o tasta de la tastatura. Cand se opreste iesirea voltajului sinusoidal este intrerupta si LED-ul este oprit.
Bibliografie
Advantech Device Driver Manual
Preview document
Conținut arhivă zip
- proiect
- Debug
- BuildLog.htm
- rtcs_proiect.bsc
- rtcs_proiect.exe
- rtcs_proiect.exe.embed.manifest
- rtcs_proiect.ilk
- vc60.idb
- vc60.pdb
- vc90.idb
- vc90.pdb
- Include
- 839p.h
- COMM.H
- DEVICE.H
- DNET.H
- Driver.h
- EVENT.H
- OS.H
- PARAS.H
- USBErrorCode.h
- Lib
- Adsapi32.lib
- rtcs_proiect.dsp
- rtcs_proiect.dsw
- rtcs_proiect.ncb
- rtcs_proiect.opt
- rtcs_proiect.plg
- rtcs_proiect.sln
- rtcs_proiect.suo
- rtcs_proiect.vcproj
- rtcs_proiect.vcproj.Andreea-PC.Andreea.user
- SistemIncendiu.cpp
- Sistem de Prevenire a Incendiilor.doc
- SistemIncendiu UML.jpg