Synkkä
syksyteema jatkuu. Iminen tarvitsee valoa, joten luonnollisesti valon
ja myös tunnelman kohottamiseksi hän sytyttää iltojensa iloksi
kynttilän. Avotuli on kuitenkin aina riski. Tämän riskin
pienentämiseksi tekniikka onneksi tarjoaa apua, joten ihminen voi
keskittyä mielekkäämpiin tehtäviin kuin kynttilän vahtimiseen.
Vahtimisen voi hoitaa leikin tunnistin (KY-026). Se voi välittää
hätätilan releelle (KY-019), mikä puolestaan käynnistää
puhaltimen, jonka tehtävänä on sammuttaa tuli. Paremman kuvan
kylän pelastamisesta saa katsomalla pienen videopätkän
(antinarduvideo25. youtube.com).
Huojentavaa tietää, että kylä pelastuu |
Kuvassa
on kyllä ”vaahtosammuttaja”, mutta se on hämäystä. Sen
etumerkki on negatiivinen. Se on sytkäri! Puhaltimen taustalla näkyy
hiukan releen syrjää istutettuna tuohon testitasoon.
Kytkentä
Arduinoon:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBTbOGEisMPK1Nnq0kPiwo8Ngk1hNuvYPDlF53WLbd6d7z8bzXtSj_dbMtE3wphimgWcq6NxWmMogiYqmgWglBOnHD_lhkhl8ZcjDuaULJiciKKJPEGLkb1f99usBMu7M8MFjMfZe64iaG/s320/Palovartija25_v1.png)
Puhallin
(siis tämä käyttämäni) tarvitsee erilisen virtalähteen, sillä
se ei toimi 5V:in jännitteellä. Myös sen ottama teho on paljon
suurempi, mitä Arduinon pinni (noin 40mA) tai USB-linja pystyvät
syöttämään. Paristot, akku tai tässä käyttämäni virtalähde
toimivat oikein hyvin. On todella hyödyllistä omistaa jokin pieni
virtalähde tai 12V:in akku erilaisten liitätälaitteiden syöttöön.
Paristot myös, mutta niitä täytyy olla aika usein olla korvaamassa
uusiin jos on innostunut kokeilija.
Jos
Turussakin olisi aikoinaan (1827) ollut tällaisella Arduinolla
toteutettu palovahti, niin kaupunki ei olisi tuhoutunut niin pahasti.
Jos katsoo tuota videota (antinarduvideo25.
youtube.com)
voi huomata kuinka liekkianturin merkkiLEDi värähtelee sekä liekin
ilmaisun alussa, että lopussa. Siksi on tärkeätä, että relettä
ohjataan hallitusti ajan mukaan. Anturin (KY-026) levyllä on
trimmeripotentiometri, minkä avulla tunnistuksen herkkyytä voi
säätää. Arvon voi lukea ruudulta. Arvo vaihteli 30 (liekki
tunnistettu) ja 800 välillä (ei liekkiä). Siksi olen jättänyt
ohjelmaan tuon tulostuksen aliohjelman. Lisäksi printillä on
käynti- ja ilmaisuLEDit.
OHJELMA
25
/***************************************
*
Ohjelma 25
*
22.11.2016
*
Liekkivahti (TY-026) tunnistaa kynttilän, jolloin
*
rele (TY-019) vetää käynnistäen pahaltimen, mikä
*
sammuttaa liekin.
**************************************/
//
MÄÄRITTELYT:
//
Ajastukset
const
int Con_Kierrokset = 800;
unsigned
int Unt_Sekunnit = 0; // Viivelaskuri
unsigned
int Unt_Kierrokset = 0; // Ohjelmakierroslaskuri
int Int_Kierrokset = 0;
//
Tulostuksen tahdistus
const
int Con_PrintViive = 1000;
int Int_PrintViive = Con_PrintViive;
//
Tulot ja lähdöt
const
int Con_LiekData = 2;
boolean
Bol_LiekData = false;
const
int Con_Ohjaus = 3;
const
int Con_LiekAna = 0;
int Int_LiekAna = 0;
const
int Con_LED = 13;
int Seq_Ohjaus = 0;
//
ASETUKSET:
void
setup(){
Serial.begin(9600);
pinMode(Con_LiekData, INPUT);
pinMode(Con_Ohjaus, OUTPUT);
pinMode(Con_LED, OUTPUT);
}//
Asetuksen loppu
//
FUNKTIOT
void
Fun_Tulostus(){
Serial.print("Tulon arvo :");
Serial.println(Int_LiekAna);
//
Serial.print("Sekunnit :"); Serial.println(Unt_Sekunnit);
}
//
PÄÄLOOPPI
void
loop(){
Unt_Kierrokset++;
if(Unt_Kierrokset >
Con_Kierrokset){ // Luvulla sovitetaan kierr -> sek
Unt_Sekunnit++;
Unt_Kierrokset = 0;
}
// Kierroslakuri loppu
//
Mittaukset ja merkkivalo tunnistuksesta
Int_LiekAna
= analogRead(Con_LiekAna);
Bol_LiekData
= digitalRead(Con_LiekData);
digitalWrite(Con_LED, Bol_LiekData);
//
Puhallinjakson käynnistys
if(Bol_LiekData
== true && Seq_Ohjaus == 0){Seq_Ohjaus = 1;}
//
Puhallinjakson ohjaus. 5s jälkikäynti
switch
(Seq_Ohjaus) {
case
1:
Unt_Sekunnit
= 0;
digitalWrite(Con_Ohjaus, true );
Seq_Ohjaus
= 2;
break;
case
2:
if(Unt_Sekunnit > 5){
digitalWrite(Con_Ohjaus, false);
Seq_Ohjaus
= 0;
}
break;
}
Int_PrintViive--;
if(Int_PrintViive == 0){
Fun_Tulostus();
Int_PrintViive
= Con_PrintViive;
}
// Tulostuskutsu loppu
delay(1);
}
// Pääohjelma LOPPU
Ei kommentteja:
Lähetä kommentti