Arduino gecontroleerd Bijenkorf Fumigator / luchtverfrisser (8 / 9 stap)

Stap 8: Arduino Code

#include "MAX31855.h"
#include "LiquidCrystal.h"

#include "Adafruit_MAX31855.h"

LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

Const int turnonAudioboard = 13;

Const int audioTrigger0 = A0;

Const int audioTrigger1 = a1 worden verkregen;

Const int audioTrigger2 = A2;

Const int audioTrigger3 = A3;

Const int audioTrigger4 = A4;

Const int fanRelay = 10; //

Const int heaterRelay = 9; Hiermee bepaalt u de verwarmingsautomaten

Const int countthreshold = 100; de beginwaarden van de max en min elke 100 seconden

Const int startfrequency = 300; Stel de frequentie van de start van de piepjes

Const int numberofbeepsmax = 50; de maximumnumber van pieptonen mogelijk instellen

int fancountdown = 0;

int i;

int count = 5;

int freq = 0;

int pieptonen = 0;

int beepthreshold = -10; De bovenstaande waarde die piepjes beginnen te worden geblazen

int
beepBeepThreshold = 0;

int audioCount0 = 0;

int audioCount1 = 0;

int audioCount2 = 0;

int audioCount3 = 0;

int audioCount4 = 0;

int alarmpotvalue = 500;

int tempsetpoint = 160;

int blowersetpoint = 20;

int bloweron = 0;

int zeropotvalue = 0;

int thermocoupleSOPin = 8;

int thermocoupleCSPin = 7;

int thermocoupleCLKPin = 6;

de variabelen van de temperatuur:

dubbele setpoint;

dubbele warmte;

dubbele uitgang;

dubbele kruising;

MAX31855 thermokoppel (thermocoupleSOPin, thermocoupleCSPin, thermocoupleCLKPin);

VOID Setup

{

pinMode (audioTrigger0, OUTPUT);

digitalWrite(audioTrigger0,HIGH); Laag activeert het audio geluid op de FX-bord

pinMode (audioTrigger1, OUTPUT);

digitalWrite(audioTrigger1,HIGH); Laag activeert het audio geluid op de FX-bord

pinMode (audioTrigger2, OUTPUT);

digitalWrite(audioTrigger2,HIGH); Laag activeert het audio geluid op de FX-bord

pinMode (audioTrigger3, OUTPUT);

digitalWrite(audioTrigger3,HIGH); Laag activeert het audio geluid op de FX-bord

pinMode (audioTrigger4, OUTPUT);

digitalWrite(audioTrigger4,HIGH); Laag activeert het audio geluid op de FX-bord

delay(500);

pinMode (turnonAudioboard, OUTPUT);

digitalWrite (turnonAudioboard, hoge);

pinMode (fanRelay, OUTPUT); initialiseren van de ventilator Relais pin als uitgang

pinMode (heaterRelay, OUTPUT);

digitalWrite (fanRelay, laag); fan relay uitschakelen.

digitalWrite (heaterRelay, laag);

Toon (A5, 400, 100); een geluidssignaal 400 hz voor 100ms

LCD.begin(20,4); Stel de lcd-dimensie

LCD.Clear(); Duidelijk LCD-scherm

lcd.setCursor(2,0); LCD.Print ("Varroa Blaster");

delay(2000);

Toon (A5, 400, 100); een geluidssignaal 400 hz voor 100ms

lcd.setCursor(2,1); LCD.Print ("geit industrieën");

delay(2000);

noTone (A5);

Lezen van de huidige temperatuur

warmte = thermocouple.readThermocouple(CELSIUS);

warmte = warmte-3; //
aanpassing voor kookpunt van water

Als thermokoppel probleem gedetecteerd

Als ((heat == FAULT_OPEN) || (warmte == FAULT_SHORT_GND) ||
(Heat == FAULT_SHORT_VCC))

delay(500);

delay(500);

Als de pot te warm is:

while(heat >
100) {}

warmte = thermocouple.readThermocouple(CELSIUS);

warmte =
warmte-3;

LCD.Clear();

lcd.setCursor(0,0); LCD.Print ("Gelieve te wachten terwijl");
lcd.setCursor(0,1); LCD.Print ("het apparaat cools");
lcd.setCursor(0,2); LCD.Print ("tot onderstaande 100");lcd.print((char)223);lcd.print("C");
lcd.setCursor (0,3); lcd.print ("Probe
Temp:");LCD.Print(heat);LCD.Print((char)223);LCD.Print("C.");

Toon (A5, 300,
100); een geluidssignaal 300 hz voor 100ms

delay(3000);

}

Als (warmte < 90) //plays audio0 wanneer temperatuur (warmte) les dan 90 graden Celsius.

{

digitalWrite(audioTrigger0,LOW); Lage
activeert het audio geluid op de FX-bord

delay(500);

digitalWrite(audioTrigger0,HIGH);

}

else {}

while(Count>0) {}

LCD.Clear();

lcd.setCursor(4,0); LCD.Print("Starting");
lcd.setCursor(2,1); LCD.Print("vapourisation");
lcd.setCursor(0,3); LCD.Print("Count:"); lcd.setCursor(6,3);
LCD.Print(Count); lcd.setCursor(8,3);
LCD.Print("temp:");LCD.Print(heat);LCD.Print((char)223);LCD.Print("C");

Toon (A5, 400,100);

Count = aantal -1;

delay(1000);

noTone (A5);

}

}

void loop

{

Lezen van de huidige temperatuur

warmte = thermocouple.readThermocouple(CELSIUS);

warmte = warmte-3;

afslag = thermocouple.readJunction(CELSIUS);

Als thermokoppel probleem gedetecteerd

Als ((heat == FAULT_OPEN) || (warmte == FAULT_SHORT_GND) ||

(Heat == FAULT_SHORT_VCC))

blowersetpoint = 20;

warmte = 17; tijdelijke regel voor foutopsporing

LCD.Clear();

lcd.setCursor(0,0); LCD.Print ("Blow tijd:"); lcd.setCursor(10,0);lcd.print(blowersetpoint,DEC);
lcd.setCursor(14,0);lcd.print("Secs.");

lcd.setCursor(0,1); LCD.Print ("Temp instelpunt:"); lcd.setCursor(15,1);
LCD.Print(tempsetpoint,DEC);LCD.setCursor(18,1);LCD.Print((char)223);LCD.Print("C");

lcd.setCursor(0,2);lcd.print("Int.Temp:");lcd.print(junction);lcd.print((char)223);lcd.print("C");

lcd.setCursor (0,3); lcd.print ("Probe Temp:");lcd.print(heat);lcd.print((char)223);lcd.print("C");

Als
((heat>100) & &(heat<105) & &(audioCount1<1)) //plays audio1 wanneer temperatuur (warmte) tot 100 graden C. krijgt

{

audioCount1 = 1;

digitalWrite(audioTrigger1,LOW); Lage
activeert het audio geluid op de FX-bord

delay(500); BELANGRIJK dit moet ten minste 500!

digitalWrite(audioTrigger1,HIGH);

}

else {}

Als
((heat>130) & &(heat<135) & &(audioCount2<1)) //plays audio2 wanneer temperatuur (warmte) tot 130 graden C. krijgt

{

audioCount2 = 1;

digitalWrite(audioTrigger2,LOW); Laag activeert het audio geluid op de FX-bord

delay(500);

digitalWrite(audioTrigger2,HIGH);

}

else {}

Als
((heat>150) & &(heat<155) & &(audioCount3<1)) //plays audio3 wanneer temperatuur (warmte) tot 150 graden C. krijgt

{

audioCount3 = 1;

digitalWrite(audioTrigger3,LOW); Laag activeert het audio geluid op de FX-bord

delay(500);

digitalWrite(audioTrigger3,HIGH);

}

else {}

piepen geluiden op het verhogen van de frequenties te maken

freq =
startfrequency;

pieptonen = 0;

beepBeepThreshold
= beepthreshold;

while(beeps < numberofbeepsmax) {}

if(heat >beepBeepThreshold)

Toon (A5, freq, 9); een opmerking van pin 1 spelen bij freq voor 9ms

pieptonen ++;

beepBeepThreshold
= beepBeepThreshold + 10;

freq = freq +
200;

delay(10);

}

noTone (A5);

Als (warmte

}

anders
{digitalWrite (heaterRelay, laag); bloweron = 1;

}

fancountdown = blowersetpoint;

delay(1000);

Nu de temperatuur heeft bereikt en de ventilator moet zijn ingeschakeld.

Begin eerst de audio:

Als (bloweron > 0) {}

digitalWrite(audioTrigger4,LOW); Laag activeert het audio geluid op de FX-bord

delay(500);

digitalWrite(audioTrigger4,HIGH);

delay(14000);

}

else {}

Schakel de ventilator:

while(bloweron >0) {/ / bloweron heeft de staus van '1' en zo deze lus is geactiveerd:

digitalWrite (fanRelay, hoge);

Als (warmte

}

anders
{digitalWrite (heaterRelay, laag);

}

Lezen van de huidige temperatuur

warmte = thermocouple.readThermocouple(CELSIUS);

warmte = warmte-3;

afslag = thermocouple.readJunction(CELSIUS);

Als thermokoppel probleem gedetecteerd

Als ((heat == FAULT_OPEN) || (warmte == FAULT_SHORT_GND) ||

(Heat == FAULT_SHORT_VCC))

Toon (A5, 1500, 100); een geluidssignaal 1500 hz voor 100ms

delay(500);

Toon (A5, 1500,100); een geluidssignaal 1500 hz voor 100ms

delay(500);

fancountdown = fancountdown -1;

LCD.Clear();

lcd.setCursor(0,0);
LCD.Print("blowing:");
lcd.setCursor(10,0);lcd.print(fancountdown,DEC);
lcd.setCursor(14,0);lcd.print("Secs.");

lcd.setCursor(0,1);
LCD.Print ("Temp instelpunt:"); lcd.setCursor(15,1);
LCD.Print(tempsetpoint,DEC);LCD.setCursor(18,1);LCD.Print((char)223);LCD.Print("C");

lcd.setCursor(0,2);lcd.print("Int.Temp:");lcd.print(junction);lcd.print((char)223);lcd.print("C");

lcd.setCursor (0,3); lcd.print ("Probe
Temp:");LCD.Print(heat);LCD.Print((char)223);LCD.Print("C");

noTone (A5);

Als (fancountdown < 1) {}

Hierdoor ontstaat een 'Gereedgemeld' lus

terwijl (fancountdown < 1) {}

LCD.Clear();

Lezen van de huidige temperatuur

warmte = thermocouple.readThermocouple(CELSIUS);

warmte = warmte-3;

afslag = thermocouple.readJunction(CELSIUS);

Als thermokoppel probleem gedetecteerd

Als ((heat == FAULT_OPEN) || (warmte == FAULT_SHORT_GND) ||

(Heat == FAULT_SHORT_VCC))

lcd.setCursor(0,0); LCD.Print("finished");
lcd.setCursor(10,0);lcd.print(fancountdown,DEC);
lcd.setCursor(13,0);lcd.print("Secs.");

lcd.setCursor(0,1); LCD.Print ("Temp set
Wijs: "); lcd.setCursor(15,1);
LCD.Print(tempsetpoint,DEC);LCD.setCursor(18,1);LCD.Print((char)223);LCD.Print("C");

lcd.setCursor(0,2);lcd.print("Int.Temp:");lcd.print(junction);lcd.print((char)223);lcd.print("C");

lcd.setCursor (0,3); lcd.print ("Probe
Temp:");LCD.Print(heat);LCD.Print((char)223);LCD.Print("C");

digitalWrite (heaterRelay, laag);

digitalWrite (fanRelay, laag);

delay(1000);

}

}

else {}

}

}

Gerelateerde Artikelen

Galvo - Laser Arduino gecontroleerd

Galvo - Laser Arduino gecontroleerd

Arduino gecontroleerd galvo laser. De servo aangedreven spiegels sturen de verlaten een fosforescerende parcours op het blad van de glow-in-the-dark vinyl UV-laser.Oorspronkelijk Gepost op notes.robives.comStap 1:Beginnen met een blad van lichtgevend
Arduino gecontroleerd CNC / 3D Printer hybride

Arduino gecontroleerd CNC / 3D Printer hybride

Moeder natuur maakt... Wij bouwen.BuildersBot zekeringen 3D printen & CNC frezen in één Builder's droom "3dprintingindustry.com"De BuilderBot is een Open ontwerp machine, die gebruik maakt van OpenSoftware en Open Hardware. Het is een produc
Arduino gecontroleerd kookwekker

Arduino gecontroleerd kookwekker

U allen moet heb meegemaakt dat je iets wordt gekookt op uw gasfornuis terwijl aan de andere kant u get drukke TV kijken of krijgen een diepe gesprek hebt dat je je realiseert op het opsporen van een geur die het was volledig verwend alleen vanwege u
Arduino-gecontroleerde Wolf staart

Arduino-gecontroleerde Wolf staart

groeten, of moet ik zeggen, "Aaaaaooooooooooooh!" Maken van uw bekende collega wolf liefhebber graag. Je hebt een innerlijke wolf geest dat zo graag bekend maken dat u mij om te leren hoe om uw zeer eigen animatronic wolf staart, zodat u kunt ec
Arduino-gecontroleerde gordijn

Arduino-gecontroleerde gordijn

In dit nieuwe project, we gecombineerd van elektronica en mechanica, en maakte een Arduino-gecontroleerde gordijn roller.Veel plezier met maken!Stap 1: Planning van het CircuitVoor dit circuit u hebt nodig:1. de roterende Potentiometer2. de Arduino U
Draadloos Arduino gecontroleerde Tank (nRF24L01)

Draadloos Arduino gecontroleerde Tank (nRF24L01)

Hallo!Vandaag zal ik u tonen how to build een Arduino gecontroleerde tank en een afstandsbediening. De 3d afgedrukt delen van de tank (met uitzondering van de controller, bijhouden gids en tank cover) werden ontworpen door timmiclark en kan worden ge
Huisdier Curfew: Een Arduino gecontroleerde huisdier deur

Huisdier Curfew: Een Arduino gecontroleerde huisdier deur

Het probleem: U wilt beperken van de tijd wanneer uw huisdier mee mag naar buiten te gaan. Dit kan zijn omdat de buurt niet veilig voor uw kat of kleine hond in de nacht is (plunderende coyotes voor de geest komt). Maar u wilt uw huisdier te kunnen t
Arduino gecontroleerd licht dimmer

Arduino gecontroleerd licht dimmer

Waarschuwing: Sommige mensen proberen om dit met een optocoupler met zerocrossing coz rechts "dat is beter"? Sommigen horen zelfs in elektronicawinkels, het is beter om te gebruiken dergelijke een optocoupler. VERKEERDE. Dit werkt alleen met een
Arduino gecontroleerd Servo Robot (SERVISCH)

Arduino gecontroleerd Servo Robot (SERVISCH)

wat een betere manier om te experimenteren met opensource micro-controllers ( Arduino ) dan door het bouwen van uw eigen bron robot open ( CC (SA-door))?Wat te doen met uw Servische?(hier) - hoe uw Servische verbinden met het internet en het rijden o
Arduino gecontroleerde auto volgsysteem op basis van SMS

Arduino gecontroleerde auto volgsysteem op basis van SMS

Hi ik een Arduino gecontroleerde auto volgsysteem op basis van SMS voor mijn vaders auto maakte.De gebruikte modules zijn;Arduino nano V3.0SkyLab GPS-moduleWaveCom GSM moduleDe SoftwareSerial bibliotheek, TinyGPS worden gebruikt om te communiceren me
Arduino-gecontroleerde Smart Home

Arduino-gecontroleerde Smart Home

Dit Instructable werd geschreven door PubNub Evangelist Ian Jennings . Ian's verhaal doorloopt zijn proces van het opbouwen van een Arduino-gecontroleerde smart home model van kras.--Terug in September, onze stichter Stephen en ik spraken over manier
Digitale venster Sticker (Arduino gecontroleerde)

Digitale venster Sticker (Arduino gecontroleerde)

een bumpersticker formaat L.E.D. matrix waarin afbeeldingen worden weergegeven in volgorde van een SD-kaart, voor de productie van een geanimeerde teken of "venster sticker." Arduino gecontroleerd! Ook bevat Windows, Mac en Linux code voor .xbm
Arduino gecontroleerd vuurtoren

Arduino gecontroleerd vuurtoren

Overzicht:Ik heb vaak gedacht dat een vuurtoren zou een groot project voor een Arduino, en dus heb ik besloten om het eens te proberen met behulp van een van de lokale vuurtorens hier in Erie, Pennsylvania als inspiratie. Ik koos voor de North Pierhe
Arduino gecontroleerd windchime

Arduino gecontroleerd windchime

De rustgevende effecten van klokkenspel normaal afhankelijk van de wind, maar deze wind klokkenspel is Arduino aangedreven.In plaats van te wachten tot de wind om te blazen, is het mogelijk om een reeks van tuned buizen met elektromagneten bestuurd d