Arduino schéma - arduino.sk

Regulácia čerpadla ÚK.

Kompletné projekty s návodom a zdrojovým kódom
Príspevky: 37
Registrovaný: Pon 15. Sep 2014 13:29:24

Regulácia čerpadla ÚK.

Poslaťod JK_Soft » Ned 18. Jan 2015 18:28:08

Dobrý deň.
Pridávam sem aj ja jeden projekt na riadenie čerpadla ÚK, ovládanie ohrevu TUV a el. ohrevu TUV.
Keď som našiel toto fórum potešil som sa že mi niekto poradí ako úplnému začiatočníkovi v programovaní arduina a čohokoľvek iného. Niekedy dávno pred 30 rokmi pokusy s BASICOM. Tento projekt bol mojím tretím v poradí /1.blikanie ledkou na pine č.13,
2. výpis textu na display 2x16. 3. Projekt riadenia čerpadla ÚK.
Ako to celé vzniklo.
Moja kotolňa pozostáva len z kotla na tuhé palivo, obehového čerpadla a obojživelného ohrievača TUV.
Najskôr som chcel len zapínať obehové čerpadlo na základe teploty v kotla a vypínanie pri nižšej teplote aby sa využilo čo najviac tepla. V ďalšom kroku ma napadlo použiť arduino aj na ovládanie ventila ktorý slúži na ohrev TUV z kúrenia a jeho zatváranie aby nedochádzalo k ochladzovaniu TUV keď vyhasne. A nakoniec aj ovládanie el. ohrevu v období keď sa nekúri v kotli.
Celé to pracuje nasledovne: Čerpadlo UK sa zapína pri teplote kotla 40°C a vypína pri 28°C. Ďalej ak teplota UK je > 40 a rovná alebo vyššia ako TUV, otvorí sa ventil ohrevu TUV. Následne ak teplotu UK klesne o 2°C oproti TUV ventil zatvorí. A ešte posledná podmienka ak sa nekúri, teplota kotla nižšia ako 28°C a TUV klesne pod 40°C ventil ohrevu je zatvorený, spustí sa el. ohrev TUV.
Ohrev TUV na el. mám nastavený v rozsahu 40 - 50°C.
Nakoniec pár ochran kúrenia. Ak dôjde k poruche snímača teplota UK čerpadlo zapne a vypíše chybovú hlášku. Tak tiež zapne čerpadlo aj pri poklese teploty kotla pod 5°C ako protimrazová ochrana. Posledná ochrana, pri poruche snímača teploty TUV vypne el. ohrev ak je zapnutý a vypíše chybové hlásenie. Všetko je zrejme z kódu ktorý prikladám.
Celé toto mi trvalo dva týždne od zakúpenia arduina. A veľmi ma mrzí že návodov v SK alebo CZ je tak málo. Väčšinou každý odkazuje na anglické stránky a na uja googla ale aj tam je to väčšinou v anglitčine. Ale Google pomohol. Kód je asi amatésky ale funguje spoľahlivo.

Prikladám kód:

Kód: Vybrať všetko
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <DallasTemperature.h>


// Data wire is plugged into pin 2 on the Arduino
#define ONE_WIRE_BUS 12


LiquidCrystal_I2C lcd(0x27,16,2);

//int piezo = 9; //alarm piezo

// Setup a oneWire instance to communicate with any OneWire devices
OneWire oneWire(ONE_WIRE_BUS);

// Pass our oneWire reference to Dallas Temperature. 
DallasTemperature sensors(&oneWire);


DeviceAddress PAa= { 0x28, 0x04, 0xA7, 0xD9, 0x05, 0x00, 0x00, 0x07 };
DeviceAddress BAa= { 0x28, 0xf2, 0xfb, 0xd9, 0x05, 0x00, 0x00, 0x73 };
DeviceAddress CAa= { 0x28, 0x8c, 0xfc, 0xd9, 0x05, 0x00, 0x00, 0xa9 };
float PA;
float BA;
float CA;

int UK = 2;
int TUV = 3;
int EL = 4;
int piezo = 5;
//*************************************************************

void setup(){
 lcd.init();          // initialize LCD
 lcd.backlight();
 
 pinMode(UK, OUTPUT); //El. Ohrev
 pinMode(TUV, OUTPUT); //Ventil TUV
 pinMode(EL,OUTPUT); //Cerpadlo
 pinMode(piezo, OUTPUT); //Piezo

sensors.begin();                // nastavenie citlivosti
sensors.setResolution(PAa, 12);
sensors.setResolution(BAa, 12);
sensors.setResolution(CAa, 12);
//.............................................
lcd.setCursor(0, 0);
lcd.print("Reg. cerpadla UK");
lcd.setCursor(0, 1);
lcd.print("a ventila TUV");
delay(4000);

lcd.clear();
lcd.setCursor(0, 0);
lcd.print("   JK_SOFT ");
lcd.setCursor(0, 3);
lcd.print("****Loading****");
delay(3000);
lcd.clear();


}

//****************************************************
void loop()

BA = sensors.getTempC(BAa);
PA = sensors.getTempC(PAa);
CA = sensors.getTempC(CAa);
sensors.requestTemperatures();



lcd.setCursor(0 ,0);
lcd.print ("TUV=");
lcd.setCursor(4 ,0);
lcd.print (CA,1);
lcd.setCursor(0 ,1);
lcd.print("ST=");
lcd.print(BA,1);
lcd.print(" SP=");
lcd.print(PA,1); //(PA,1) jedno desatinne miesto
lcd.print((char)223);

if (BA > 40 || BA < 5 || BA==-127){
  digitalWrite(UK, HIGH); // podmienka T High zapni cerpadlo
  lcd.setCursor(8,0);
  lcd.print("*");
  }
if (BA < 28 && BA > 5) {
  digitalWrite(UK, LOW); //podmienka T Low vypni cerpadlo
  lcd.setCursor(8,0);
  lcd.print(" ");
  }
if (BA>40 && BA > CA) {
  digitalWrite(TUV, HIGH); //Otvor ventil TUV
  lcd.setCursor(9,0);
  lcd.print("TUV*");
}
if ((BA<35) || (BA <= CA-2)) {
  digitalWrite(TUV, LOW);   //Zatvor ventil TUV
  lcd.setCursor(9,0);
  lcd.print("TUV ");
}
if (BA < 28 && CA < 40) {
  digitalWrite(EL, HIGH);
  lcd.setCursor(13,0);
  lcd.print("EL*");
}
if (CA>50 || CA==-127) {
  digitalWrite(4,LOW);
  lcd.setCursor(13,0);
  lcd.print("EL ");
}
if (BA==-127) {
  lcd.clear();
  lcd.print ("Porucha snímaca UK");
  tone(piezo, 500, 1000); //pípání
  }
if (CA==-127) {
  lcd.clear();
  lcd.print ("Porucha snímaca TUV");
  tone(piezo, 500, 1000); //pípání
}
/*lcd.setCursor(10,0);
lcd.print("L");
lcd.print("28");
lcd.setCursor(13,0);
lcd.print("H");
lcd.print("40");*/
delay(100);
}


Príspevky: 37
Registrovaný: Pon 15. Sep 2014 13:29:24

Re: Regulácia čerpadla ÚK.

Poslaťod JK_Soft » Ned 18. Jan 2015 18:45:59

Display zobrazuje hodnoty: TUV - teplota v boileri, ST- stúpačka alebo teplota v kotli, SP - teplota spiatočky UK, hviezdička zobrazuje ktorý výstup je aktívny.
Prílohy
20150118_155402n.jpg
Takto to vyzerá.

Príspevky: 37
Registrovaný: Pon 15. Sep 2014 13:29:24

Re: Regulácia čerpadla ÚK.

Poslaťod JK_Soft » Ned 18. Jan 2015 18:54:44

Použil som arduino pro mini, 3 ks relatiek 230v, a oddelovacie triakové optočleny. //Pri použití original rele riadený tranzistorom spôsobovalo rušenie a zamŕzanie displaya.
Prílohy
20150118_155516n (2).jpg

Príspevky: 37
Registrovaný: Pon 15. Sep 2014 13:29:24

Re: Regulácia čerpadla ÚK.

Poslaťod JK_Soft » Ned 18. Jan 2015 18:57:42

A toto je vnútro. :D
V predošlom obrázku je odfotený pohon 230V 90° namontovaný na obyčajný guľový uzáver DN 25.
Prílohy
20150118_155659n (2).jpg

Príspevky: 37
Registrovaný: Pon 15. Sep 2014 13:29:24

Re: Regulácia čerpadla ÚK.

Poslaťod JK_Soft » Ned 18. Jan 2015 19:01:28

Schému nemám nakreslenú, celé to bolo poskladané len z hlavy ale nie je problém nakreslit. Teplotné čidla som použil DS18B20 a display 16X4 I2C.
Ak by niekto vedel poradiť ako by som mohol logovať teploty cez web bol by som vďačný. Stále sa učím a stále nič neviem.

Obrázok užívateľa
Príspevky: 300
Registrovaný: Pon 19. Nov 2012 12:01:08
Bydlisko: HC/BA

Re: Regulácia čerpadla ÚK.

Poslaťod tomXX » Ned 18. Jan 2015 19:33:01

Paráda, nech slúži. Keď bude čas hodím sem niečo o ethernete ;)
blog.sitepoint.sk - zaujímavé riešenia okolo Arduina

Príspevky: 174
Registrovaný: Ned 16. Mar 2014 23:22:00

Re: Regulácia čerpadla ÚK.

Poslaťod posjirka » Ned 18. Jan 2015 21:43:49

Moc hezky projekt. Jsem rad ze ses nebal udelat si na to vlastni pcb. Jinak v popisce mas chybu. Na obrazku mas lcd 16x2 ne 16x4. Logovani teploty? Jakou mas predstavu a k cemu ti to bude? Pokud chces jen videt hruby prubeh teplot za posledni hodinu muzes na lcd display v 1radku udelat prubeh ala spektrometr. Nadefinujes si vlastni znaky, teploty vlozis do pole a jeduchou funkci pak obsah pole zobrazis. Kdybys chtel teploty vycist a nekam ulozit tak ukladej teploty do eeprom a udelej si funkci ktera po zaslani prikazu z prikazove radky vypise obsah eeprom. Jinak k projektu : jsem trochu nesvuj z toho arduina volne se plandajiciho v prostoru. Sw je krasne prehledny a slusne okomentovany. Za to davam 5 hvezdicek. Urcite se v sw da spousta veci vylepsit jako volitelne adresy cidel (sw po letech nenajdes az odejde nejake cidlo a budes ho psat znovu) nebo nechat tuv zahrat na min.60 st.c kdyz by toho za posledni mesic nedosahla (kvuli bakteriim ve vode) ci udelat si vlastni znak tuv ohrivaneho z topeni (t v ramecku) z elektriky (blesk v ramecku) a pod. Kazdopadne diky ze ses s nami o to podelil a at ti slouzi.

Príspevky: 174
Registrovaný: Ned 16. Mar 2014 23:22:00

Re: Regulácia čerpadla ÚK.

Poslaťod posjirka » Ned 18. Jan 2015 21:52:13

Tady je jeden projekt zaznamniku teplot. Treba ti pomuze:http://blog.ijacek007.cz/Arduino/arduino-jako-digitalni-zaznamnik-teploty

Obrázok užívateľa
Príspevky: 300
Registrovaný: Pon 19. Nov 2012 12:01:08
Bydlisko: HC/BA

Re: Regulácia čerpadla ÚK.

Poslaťod tomXX » Ned 18. Jan 2015 22:20:47

Ja som si robil len tak na skúšku logovanie teploty s výstupom na OLED displej.
Prílohy
IMG_20141104_221207.jpg
blog.sitepoint.sk - zaujímavé riešenia okolo Arduina

Príspevky: 89
Registrovaný: Uto 03. Jún 2014 21:48:35
Bydlisko: Košice Slovakia

Re: Regulácia čerpadla ÚK.

Poslaťod kosice4 » Ned 18. Jan 2015 23:11:19

@ JK_Soft pochvala. Pekné od Teba, že si to tu zavesil. Perfektný projekt na ktorom sa dá aj veľa naučiť a určite niekto použije.
To máš pravdu tu ti skoro nikto nič neporadí, samý odkaz na google a pod. Škoda reči.
Píšem skoro, česť výnimkám.
Ďakujem za pomoc posjirka, Diego, Xeram a barado :)

Príspevky: 10
Registrovaný: Pon 19. Jan 2015 0:16:45

Re: Regulácia čerpadla ÚK.

Poslaťod Finkis » Pon 19. Jan 2015 0:28:50

Pekny projekt pochvala ja riesim nieco podobne no zlozitejsie. Ale pouzijem original releove moduly.Idem ovladat trojcestny ventil on/off na zaklade vonkajsej teploty /eqitermika/ cerpadlo UK plus ventil alebo cerpadlo TUV a zapinanie zdroja tepla. existuje mnoho hotovych rieseni no nejdu tak ako to potrebujem.

Obrázok užívateľa
Príspevky: 133
Registrovaný: Štv 06. Nov 2014 12:06:09

Re: Regulácia čerpadla ÚK.

Poslaťod budvar10 » Pon 19. Jan 2015 9:22:01

Pekné a pripájam sa s pochvalou. Tiež som si urobil ekvitermický regulátor pre kotol.

Obrázok užívateľa
Príspevky: 300
Registrovaný: Pon 19. Nov 2012 12:01:08
Bydlisko: HC/BA

Re: Regulácia čerpadla ÚK.

Poslaťod tomXX » Pon 19. Jan 2015 11:32:23

kosice4 píše:tu ti skoro nikto nič neporadí, samý odkaz na google a pod. Škoda reči.Píšem skoro, česť výnimkám.


Často sem linkujem niečo z webu čo som našiel, a často to je jediná relevantná odpoveď. Žiaľ, litánie sem vypisovať nebudem, to dám radšej na svoj blog. No a SK/CZ scéna o Arduine je dosť biedna, preto ťažko niečo nalinkovať v "rodnej" reči. Osobne keď niečo hľadám, tak na 100% len po anglicky...

PS: ak sa to teda týkalo mňa :P
blog.sitepoint.sk - zaujímavé riešenia okolo Arduina

Príspevky: 89
Registrovaný: Uto 03. Jún 2014 21:48:35
Bydlisko: Košice Slovakia

Re: Regulácia čerpadla ÚK.

Poslaťod kosice4 » Pon 19. Jan 2015 11:38:56

@ tomXX samozrejme sa to týka hlavne teba :)
Si tu najmúdrejší, najšikovnejší, všetko vieš najlepšie, na všetko máš stále odpoveď a vieš vždy človeka nasmerovať na google :D
Úprimne ja sa tu už radšej nič nepýtam, lebo ak si predstavím do minúty ako prvú odpoveď od teba prestáva ma to baviť.
Ďakujem za pomoc posjirka, Diego, Xeram a barado :)

Príspevky: 37
Registrovaný: Pon 15. Sep 2014 13:29:24

Re: Regulácia čerpadla ÚK.

Poslaťod JK_Soft » Pon 19. Jan 2015 13:01:54

Ďakujem páni za reakcie.
Chcel by som len dodať že toto fórum mi niekedy pripadá že sa tu podaktorí idú len pochváliť ale konkrétne nápady neposkytnú (vlastné Knou-How).
Logovanie teploty som si predstavoval cez web pre ďalšie spracovanie v PC napr. grafy.
V blízkej dobe chcem riešiť ešte ovládanie home made olejového horáka s automatickým zapaľovaním cez sekvenciu s kontrolou zapálenia a horenia fotobunkou a kontrola havarijných stavov.
Chcel som sa spýtať aké mate skúsenosti s PID reguláciou pomocou arduina pre trojstavový servo pohon? Ešte sa musím veľa učiť na staré kolená a hlavne lúštiť z EN.
Ešte by som rád pridal pár poznámok k predchádzajúcim reakciam. Arduino nevisí na kabloch vo vzduchu ale na zasadené v konektore na boku krabičky. Teplotu TUV nad 60°C neriešim (baktérie legionela) lebo pri kúrení na tuhé palivo túto teplotu presiahnem keď chcem rýchlo vykúriť na takzvanú trenirkovú teplotu v dome :D .
Budem rád ak tento projekt niekomu poslúži alebo pomôže.

Ďalší

Späť na Hotové projekty