Witam.
Na temat sterowania CO z Atmegi i programów w bascomie jest w sieci dużo. Opisów i problemów różnych też. Ja mam może trochę bardziej nietypowy problem.
Otóż po pierwsze chcę opracować skuteczny algorytm sterowania według (może przesadzonych0 ale według mnie ważnych parametrów.
Prosty odręczny schemat w Pdf-ie.
oto założenia:
1. Dwa tryby pracy (ogrzewanie gazowe/ węglowe)
GAZ
1. Utrzymanie zadanej temperatury w mieszkaniu w oparciu o czujnik w pomieszczeniu
2. Wcześniejsze załączenie kotła jeśli temp na zewnątrz spadnie - (i tu mam problem czy wziąć po uwagę wartość temp zewn. czy np. różnicę pomiedzy temp zew a temp wewn)
3. Przeciwdziałanie zamarznięciu układu otwartego kotła węglowego (piwnica nieogrzewana)
4. nastawienie na oszczędność zużycia gazu przy maksymalnej wydajności.
TRYB WĘGIEL + CWU
W układzie który mam (patrz rysunek) nie ma bojlera na CWU, ale wykombinowałem że jeśli grzeje kocioł węglowy i wtedy załączę gazowy (ustawiony na min. moc) i zaaczy się jego pompka wówczas grzeje cwu (przepływowo za małum zbiornikiem wewnątrz kotła). Oczywiście nie wyciągnie to niewiadomo jakiej sprawności ale te 5 litrów wody zagrzanej ("za free") będzie.
tu jest jeden problem i nie wiem skąd się berze. Jeśli na piecu mam ok 90 st C (bardzo krótki obieg) na piecu gazowym termometr pokazuje ponad 100 (nie załączając palnika) i to tez by trzeba ograniczyć.
Dalej....
utrzymanie temperatury podobnie jak w przypadku gazu tyle ze tutaj etap 1 - Rozpalanie i etap 2 utrzymania .
Kocioł węglowy nie ma dmuchawy tylko klapke którą mam zamiar sterować silnikiem krokowym. Oczywiście wszystko muszę uszczelnić żeby lewe powietrze sie nie dostawało. Podobnie regulacja ciągu też na silniku krokowym
No i zabezpieczenie przed przegrzaniem pieca chce zrealizować przez dopuszxczenie zimnej wody do kotła. jest to obieg otwarty wiec nadmiar pójdzie w kanał.
Mniej wiecej tak to widze
urzadzenia:
Kocioł gaz (nowy) Junkers 2 funkcyjny kondensat
Kocioł węgiel - stary robiony przez firme uduś z udusiowa.
sterownik - Płytka z Atmega 32 z 6 pk i czujnikami na 1-wire + LCD 2x16
program (regulator C.O. v4.1 z NESTOR-electronic) ale nie bardzo pasuje pod mój układ. tak czy siak na jego podstawie chciałbym zrobić docelowy program.
prosze o ocene....
edit
dodaje plik z rysunkiem
Witam ponownie. Widze że mnóstwo wejść a żadnych odpowiedzi.
Wobec tego napisze jak ja to wymyśliłem:
Skróty jak na rysunku ale przypomnę:
T1 - czujnik temp w mieszkaniu
T2 - czujnik temp na zewnątrz
T3 - czujnik temp na kotle węglowym
T4 - czujnik temp na wymienniku W1
T5 - czujnik temp na wymienniku W2 (dołożyłem czujnik.)
Th - Histereza (póki co jedna dla wszystkich)
Tz - Temperatura zadana
W1 - Wymiennik przy kotle węglowym
W2 - Wymiennik w kotle gazowym
P1 - Pompa obiegowa w kotle gazowym
P2 - Pompa obiegowa w układzie zamkniętym (układ kotła gazowego)
P3 - pompa obiegowa w układzie otwartym (układ kotła węglowego)
Z1 - Elektrozawór na kotle gazowym (otwiera się równocześnie z P1 przez
załączenie kotła gazowego)
Z4 - elektrozawór dopuszczający wodę do układu otwartego w przypadku
przegrzania lub spadku ciśnienia /Docelowo (może na następny sezon) to
będzie zawór trójdrożny dopuszczający wodę do obydwu układów)
K1 - Klapa (przesłona) dopływu powietrza do kotła węglowego
K2 - Przesłona odpływu spalin (regulacja ciągu kominowego)
X1 - Styk załączający kocioł gazowy
Oz - obieg zamknięty
Oo - obieg otwarty
ALGORYTM: (według mnie)
I- tryb 1 ogrzewania gazem ; II tryb 2 ogrzewania węglem
Jeśli tryb I to:
- IF T1 => (Tz+Th) AND T1 < (Tz-Th) AND (T1-T2)=7 /wartość "7" do dobrania
empirycznego/ THEN
'nie rób nic' np. wyświetlenie godziny i temperatury wewnątrz i na zewnątrz
/Przygotowanie do pracy/
- IF T1 <= (Tz+Th) AND T1 < (Tz-Th) AND (T1-T2)>=7 AND T2<T1 THEN
X1 = 1 t=x /na czas dobrany doświadczalnie/
X1 = 0 t=y /na czas dobrany doświadczalnie/
WYŚWIETL "Przygotowanie do pracy"
Praca
- IF T1 < (Tz+Th) AND T1 < (Tz-Th) AND THEN
X1 = 1
WYŚWIETL "PIEC ZAŁĄCZONY Tz, T1, T2"
- IF T1 = (Tz+Th) AND X1=1 THEN
X1 = 0 WYŚWIETL "PIEC WYŁĄCZONY - PODTRZYMANIE Tz, T1, T2"
- IF T1 = (T-Th) AND X1=0 THEN
GOTO Praca
Wygaszanie
- 'Praca'=1 AND (T1-T2)>=7 AND T2<T1 THEN
X1 = 1 t=x /na czas dobrany doświadczalnie/
WYŚWIETL "Wygaszanie Tz, T1, T2"
IF T1 < (Tz+Th) AND T1 AND T2=>Tz AND T2>T1 THEN
X1=0
Przeciwzamarzanie układu otwartego
Ponieważ układ przy kotle węglowym podczas grzania gazem nie będzie odbierał ciepła (zawory Z2 i Z3 zamknięte), istnieje ryzyko zamarznięcia znajdujazej sie tam wody.
Widzę tu 3 rozwiązania: 1. zastosować glikol (tam jest ok 50 - 75 l), 2. Zaprogramować alarm informujacy o niskiej temperatrurze wody (np 2stC) i poleceniu otwarcia zaworów na wymiennik (ręcznego), lub 3. zastozować zawór termostatyczny sterowany elektrycznie i programowo.
IF T3=2 Then Z(2,3) = 1 WYŚWIETL ALARM
IF T3=5 Then Z(2,3) = 0
end
Tyle jeśli chodzi o tryb gazowy, natomiast algorytm weglowego jest troche bardziej złożony i zrobie go później....
Prosze o ocene i sugestie również pod kątem bascom'a
Dodano po 1 [godziny] 59 [minuty]:
Dopisuje reszte
tryb kotła węglowego
IF Tryb II = 1 THEN
WYŚWIETL „Otwórz zawory Z2 i Z3 i zapal w piecu ”
IF T3 => 30 THEN /30 stC wartość ustawialna/
P2=1
P3=1
K1=100% (max otwarcia)
K2=100% (max otwarcia)
WYŚWIETL „ROZPALANIE T1,T2,T3”
ELSEIF
P2=0
P3=0
K1=0
K2=0
WYŚWIETL „PIEC WYGASZONY”
/PRACA/
IF T3=>50 THEN /50 stC wartość ustawialna/
P2=1
P3=1
K1=50% (max otwarcia)
K2=50% (max otwarcia)
WYŚWIETL „PRACA T1,T2,T3”
IF PRACA=1 AND T3<50 THEN
BUZZER
WYŚWIETL „Dorzuć do pieca”
/CWU/
IF CWU=1 THEN AND PRACA=1 /Załączono tryb ciepłej wody użytkowej/
X1=1
IF T4 >98 THEN
X1=0
Elseif
/PRZEGRZANIE/
IF T3>90 THEN
K1=0%
K2=0% /Spaliny i „wydostaną” się przez nieszczelności przesłony/
pętla
IF T3>100 THEN
Z4=1
Wait 5
Z4=0
Wait5
Pętla
END
Na temat sterowania CO z Atmegi i programów w bascomie jest w sieci dużo. Opisów i problemów różnych też. Ja mam może trochę bardziej nietypowy problem.
Otóż po pierwsze chcę opracować skuteczny algorytm sterowania według (może przesadzonych0 ale według mnie ważnych parametrów.
Prosty odręczny schemat w Pdf-ie.
oto założenia:
1. Dwa tryby pracy (ogrzewanie gazowe/ węglowe)
GAZ
1. Utrzymanie zadanej temperatury w mieszkaniu w oparciu o czujnik w pomieszczeniu
2. Wcześniejsze załączenie kotła jeśli temp na zewnątrz spadnie - (i tu mam problem czy wziąć po uwagę wartość temp zewn. czy np. różnicę pomiedzy temp zew a temp wewn)
3. Przeciwdziałanie zamarznięciu układu otwartego kotła węglowego (piwnica nieogrzewana)
4. nastawienie na oszczędność zużycia gazu przy maksymalnej wydajności.
TRYB WĘGIEL + CWU
W układzie który mam (patrz rysunek) nie ma bojlera na CWU, ale wykombinowałem że jeśli grzeje kocioł węglowy i wtedy załączę gazowy (ustawiony na min. moc) i zaaczy się jego pompka wówczas grzeje cwu (przepływowo za małum zbiornikiem wewnątrz kotła). Oczywiście nie wyciągnie to niewiadomo jakiej sprawności ale te 5 litrów wody zagrzanej ("za free") będzie.
tu jest jeden problem i nie wiem skąd się berze. Jeśli na piecu mam ok 90 st C (bardzo krótki obieg) na piecu gazowym termometr pokazuje ponad 100 (nie załączając palnika) i to tez by trzeba ograniczyć.
Dalej....
utrzymanie temperatury podobnie jak w przypadku gazu tyle ze tutaj etap 1 - Rozpalanie i etap 2 utrzymania .
Kocioł węglowy nie ma dmuchawy tylko klapke którą mam zamiar sterować silnikiem krokowym. Oczywiście wszystko muszę uszczelnić żeby lewe powietrze sie nie dostawało. Podobnie regulacja ciągu też na silniku krokowym
No i zabezpieczenie przed przegrzaniem pieca chce zrealizować przez dopuszxczenie zimnej wody do kotła. jest to obieg otwarty wiec nadmiar pójdzie w kanał.
Mniej wiecej tak to widze
urzadzenia:
Kocioł gaz (nowy) Junkers 2 funkcyjny kondensat
Kocioł węgiel - stary robiony przez firme uduś z udusiowa.
sterownik - Płytka z Atmega 32 z 6 pk i czujnikami na 1-wire + LCD 2x16
program (regulator C.O. v4.1 z NESTOR-electronic) ale nie bardzo pasuje pod mój układ. tak czy siak na jego podstawie chciałbym zrobić docelowy program.
prosze o ocene....
edit

Witam ponownie. Widze że mnóstwo wejść a żadnych odpowiedzi.
Wobec tego napisze jak ja to wymyśliłem:
Skróty jak na rysunku ale przypomnę:
T1 - czujnik temp w mieszkaniu
T2 - czujnik temp na zewnątrz
T3 - czujnik temp na kotle węglowym
T4 - czujnik temp na wymienniku W1
T5 - czujnik temp na wymienniku W2 (dołożyłem czujnik.)
Th - Histereza (póki co jedna dla wszystkich)
Tz - Temperatura zadana
W1 - Wymiennik przy kotle węglowym
W2 - Wymiennik w kotle gazowym
P1 - Pompa obiegowa w kotle gazowym
P2 - Pompa obiegowa w układzie zamkniętym (układ kotła gazowego)
P3 - pompa obiegowa w układzie otwartym (układ kotła węglowego)
Z1 - Elektrozawór na kotle gazowym (otwiera się równocześnie z P1 przez
załączenie kotła gazowego)
Z4 - elektrozawór dopuszczający wodę do układu otwartego w przypadku
przegrzania lub spadku ciśnienia /Docelowo (może na następny sezon) to
będzie zawór trójdrożny dopuszczający wodę do obydwu układów)
K1 - Klapa (przesłona) dopływu powietrza do kotła węglowego
K2 - Przesłona odpływu spalin (regulacja ciągu kominowego)
X1 - Styk załączający kocioł gazowy
Oz - obieg zamknięty
Oo - obieg otwarty
ALGORYTM: (według mnie)
I- tryb 1 ogrzewania gazem ; II tryb 2 ogrzewania węglem
Jeśli tryb I to:
- IF T1 => (Tz+Th) AND T1 < (Tz-Th) AND (T1-T2)=7 /wartość "7" do dobrania
empirycznego/ THEN
'nie rób nic' np. wyświetlenie godziny i temperatury wewnątrz i na zewnątrz
/Przygotowanie do pracy/
- IF T1 <= (Tz+Th) AND T1 < (Tz-Th) AND (T1-T2)>=7 AND T2<T1 THEN
X1 = 1 t=x /na czas dobrany doświadczalnie/
X1 = 0 t=y /na czas dobrany doświadczalnie/
WYŚWIETL "Przygotowanie do pracy"
Praca
- IF T1 < (Tz+Th) AND T1 < (Tz-Th) AND THEN
X1 = 1
WYŚWIETL "PIEC ZAŁĄCZONY Tz, T1, T2"
- IF T1 = (Tz+Th) AND X1=1 THEN
X1 = 0 WYŚWIETL "PIEC WYŁĄCZONY - PODTRZYMANIE Tz, T1, T2"
- IF T1 = (T-Th) AND X1=0 THEN
GOTO Praca
Wygaszanie
- 'Praca'=1 AND (T1-T2)>=7 AND T2<T1 THEN
X1 = 1 t=x /na czas dobrany doświadczalnie/
WYŚWIETL "Wygaszanie Tz, T1, T2"
IF T1 < (Tz+Th) AND T1 AND T2=>Tz AND T2>T1 THEN
X1=0
Przeciwzamarzanie układu otwartego
Ponieważ układ przy kotle węglowym podczas grzania gazem nie będzie odbierał ciepła (zawory Z2 i Z3 zamknięte), istnieje ryzyko zamarznięcia znajdujazej sie tam wody.
Widzę tu 3 rozwiązania: 1. zastosować glikol (tam jest ok 50 - 75 l), 2. Zaprogramować alarm informujacy o niskiej temperatrurze wody (np 2stC) i poleceniu otwarcia zaworów na wymiennik (ręcznego), lub 3. zastozować zawór termostatyczny sterowany elektrycznie i programowo.
IF T3=2 Then Z(2,3) = 1 WYŚWIETL ALARM
IF T3=5 Then Z(2,3) = 0
end
Tyle jeśli chodzi o tryb gazowy, natomiast algorytm weglowego jest troche bardziej złożony i zrobie go później....
Prosze o ocene i sugestie również pod kątem bascom'a
Dodano po 1 [godziny] 59 [minuty]:
Dopisuje reszte
tryb kotła węglowego
IF Tryb II = 1 THEN
WYŚWIETL „Otwórz zawory Z2 i Z3 i zapal w piecu ”
IF T3 => 30 THEN /30 stC wartość ustawialna/
P2=1
P3=1
K1=100% (max otwarcia)
K2=100% (max otwarcia)
WYŚWIETL „ROZPALANIE T1,T2,T3”
ELSEIF
P2=0
P3=0
K1=0
K2=0
WYŚWIETL „PIEC WYGASZONY”
/PRACA/
IF T3=>50 THEN /50 stC wartość ustawialna/
P2=1
P3=1
K1=50% (max otwarcia)
K2=50% (max otwarcia)
WYŚWIETL „PRACA T1,T2,T3”
IF PRACA=1 AND T3<50 THEN
BUZZER
WYŚWIETL „Dorzuć do pieca”
/CWU/
IF CWU=1 THEN AND PRACA=1 /Załączono tryb ciepłej wody użytkowej/
X1=1
IF T4 >98 THEN
X1=0
Elseif
/PRZEGRZANIE/
IF T3>90 THEN
K1=0%
K2=0% /Spaliny i „wydostaną” się przez nieszczelności przesłony/
pętla
IF T3>100 THEN
Z4=1
Wait 5
Z4=0
Wait5
Pętla
END