Forum  eSterownik.pl  Algorytm retortowy-Proporcjonalny - na podstawie pomyslu Janusza - python Subskrybuj
First pagePrevious page18 / 38Next pageLast page
2015-10-28 18:31
  konto usunięte Posts: 10188 Ostrzeżenie: 0
janusz napisał » 2015-10-28 18:23
...to trzeba przetrawić potrzebny czas

Powiem Ci.. jak bym nie kombinował, wychodzi że należałoby pisać dedykowane softy pod instalację..
Bo całkiem uniwersalnego chyba się nie uda.
2015-10-28 18:53
  janusz Posts: 540 Ostrzeżenie: 0
VERB napisał » 2015-10-28 18:31

Powiem Ci.. jak bym nie kombinował, wychodzi że należałoby pisać dedykowane softy pod instalację..
Bo całkiem uniwersalnego chyba się nie uda.


Dokładnie  instalacja  i piec
razem tworzą całość i co u jednego działa u innego może sie nie sprawdzić
ale dostali chłopaki narzędzie więc powinni sobie dać radę tylko cierpliwość bo są w gorącej wodzie kąpani
puszczą skrypt na 1-2 godz i już chcą efektów za szybko
a można tak ładnie prowadzić

dodane 2015-10-28 18:53
2015-10-28 19:04
  konto usunięte Posts: 10188 Ostrzeżenie: 0
Ładnie, ładnie..
Tak, na efekty trzeba poczekać, przy obecnym zapotrzebowaniu dłużej schodzi..
2015-10-28 19:20
  Stan Posts: 2564 Ostrzeżenie: 0
Coś źle działa, na tych ustawieniach szedł mi ciągle do góry powyżej zadanej, czyli za mały odbiór mocy, ale widełek postoju nie mogę bardziej rozszerzyć bo zaraz będę miał alarm zapłonu.
Zdecydowałem wyłączyć tryb pracy ciągłej, w reakcji na to natychmiast skrócił czas postoju, gdzie jak ja zrozumiałem powinien się odstawić.
2015-10-28 20:03
  uzi18 Posts: 1346 Ostrzeżenie: 0
Prodi napisał » 2015-10-28 17:51
Jednak przy zmianie delty:

Delta:1 dmuchanie:38.0 podawanie:3.0 postoj:90
 opoznienie: 0->45
 dmuchanie:38.0->39.0
Nowa moc: 3%
Delta:2 dmuchanie:39.0 podawanie:3.0 postoj:90

Zwiększył nadmuch, ale  postoju nie zmiejszył. Dalej jest z postój_max. Dlaczego ?


podawanie_min = 3
podawanie_max = 10
postoj_min = 60
postoj_max = 90
dmuchanie_min = 32
dmuchanie_max = 50

praca_ciagla = False
moc_100 = 1.0/1.0
zadana_co = 43

korekcja_podawania = 0.0
korekcja_postoju =  4.0
korekcja_dmuchania = 1.0

start_podawanie = 3
start_postoj = 60
start_dmuchawa = 37
dodane 2015-10-28 17:51Jak miałem tak:
korekcja_podawania = 0.0
korekcja_postoju =  -4.0
korekcja_dmuchania = 1.0

start_podawanie = 3
start_postoj = 88
start_dmuchawa = 37


To zachowywał się tak samo.


Dlatego ze nie mogl juz bardziej zwiekszac, sam mu dales do wyboru nie przekraczac 90 postoju,
korekta -4.0 daje tyle ze na kazdy 1 stopien ponizej zadanej bedzie odejmowal 4 od postoju.

dodane 2015-10-28 20:03Na razie nie traccie czasu na analize skryptu, lepiej piszcie co wychodzi a czego oczekujecie i koniecznie z logami.
2015-10-28 20:08
  mark3k Posts: 484 Ostrzeżenie: 0
Bartek odnieś się proszę do mojego postu z danymi i logiem.
2015-10-28 20:48
  uzi18 Posts: 1346 Ostrzeżenie: 0
mark3k napisał » 2015-10-28 17:53
uzi18 - nie wiem zupełnie o co chodzi w nowym skrypcie.
Moje ustawienia:

podawanie_min = 3
podawanie_max = 3
postoj_min = 35
postoj_max = 200
dmuchanie_min = 30
dmuchanie_max = 50

praca_ciagla = True
moc_100 = 1.0/10.0
zadana_co = 50

korekcja_podawania = 1.0
korekcja_postoju =  10.0
korekcja_dmuchania = 1.0

start_podawanie = 3
start_postoj = 120
start_dmuchawa = 31

Rozumiem , że dla zadana_co = 50 obowiązuje start_dmuchawa = 31, start_postuj = 120.
I co się dziej po odpaleniu skryptu:
Temp CO < zadana_co i wynosi 49,1oC.
Następuje podanie opału , zwiększenie mocy dmuchania z 31 do 32% i zmiana czasu start_postoj ze 120 na 200 - co automatycznie zamiast dogrzać to powoduje spadek tempCO.
Log:

root@raspberrypi:~# /4/ret3.py reload
 dmuchanie:31->32.0
 postoj:120->200
Nowa moc: 15%
Delta:1 dmuchanie:32.0 podawanie:3 postoj:200
 opoznienie: 0->100



Swoja droga czemu skrypty uruchamiasz jako root, to nie jest zbyt bezpieczne.

OK. wiem w czym problem, pytanie czego powinnismy oczekiwac ...

dodane 2015-10-28 20:22>>> delta=1
>>> nowe_podawanie = delta * korekcja_podawania + start_podawanie
>>> nowe_podawanie
4.0
>>> nowe_postoj    = delta * korekcja_postoju   + start_postoj
>>> nowe_postoj
130.0
>>> nowe_dmuchanie = delta * korekcja_dmuchania + start_dmuchawa
>>> nowe_dmuchanie
32.0

jak widzisz musi sie wykonac warunek ze nowe_podawanie > pod_max

>>> moc = float(nowe_postoj)/float(nowe_podawanie)
>>> moc
32.5

no i wlasnie ... ile powinien teraz wyliczyc ...

Ok znalazlem, w skrypcie byla literowka

dodane 2015-10-28 20:48zaktualizowalem skrypt na serwerze, ech przez 1 literke tyle problemow
2015-10-28 21:04
  mark3k Posts: 484 Ostrzeżenie: 0
Zaraz sprawdzę.


Jestem za podwójnym NAT-em, więc w miarę bezpiecznie.
2015-10-28 21:08
  uzi18 Posts: 1346 Ostrzeżenie: 0
mark3k: czy umiesz korzystac z git-a ?
bo jesli na RPi pobierzesz repozytorium, mozesz mimo swoich zmian w konfiguracji pobierac jego uaktualnienia ...

2015-10-28 21:23
  mark3k Posts: 484 Ostrzeżenie: 0
Czy po spadku temp od zadanej czas przerwy nie powinien być skorygowany na (-) minus? Zamist skrócić czas przerwy to został czas przerwy wydłużony. Dmuchawa dostała korektę na (+) plus, czyli prawidłowo.
dodane 2015-10-28 21:22Nigdy nie próbowałem git-a. Poczytam i wrzucę na RPi.
dodane 2015-10-28 21:23Ok. dodałem (-) do korekty czasu postoju i teraz jest ok.
2015-10-28 21:53
  uzi18 Posts: 1346 Ostrzeżenie: 0
mark3k napisał » 2015-10-28 21:23
Ok. dodałem (-) do korekty czasu postoju i teraz jest ok.

Brawo!
2015-10-28 22:12
  mark3k Posts: 484 Ostrzeżenie: 0
Tak to wygląda u mnie:


root@raspberrypi:~# /4/ret4.py reload
 dmuchanie: 32%->36.0%
 postoj: 100s->60.0s
Nowa moc: 50%
Delta: 4 dmuchanie: 36.0% podawanie: 3.0s postoj: 60.0s
CO: 47.9°C.   Spaliny: 55.2°C. * PRACA *
Data: 2015.10.28  Czas: 21.51:53
 opoznienie: 0s->30s

 dmuchanie: 36.0%->35.0%
 postoj: 60.0s->70.0s
Nowa moc: 42%
Delta: 3 dmuchanie: 35.0% podawanie: 3.0s postoj: 70.0s
CO: 48.3°C.   Spaliny: 58.6°C. * PRACA *
Data: 2015.10.28  Czas: 21.55:54
 opoznienie: 30s->35s
 dmuchanie: 35.0%->34.0%
 postoj: 70.0s->80.0s
Nowa moc: 37%
Delta: 2 dmuchanie: 34.0% podawanie: 3.0s postoj: 80.0s
CO: 48.6°C.   Spaliny: 59.7°C. * PRACA *
Data: 2015.10.28  Czas: 21.57:05
 opoznienie: 35s->40s
 dmuchanie: 34.0%->33.0%
 postoj: 80.0s->90.0s
Nowa moc: 33%
Delta: 1 dmuchanie: 33.0% podawanie: 3.0s postoj: 90.0s
CO: 49.1°C.   Spaliny: 59.5°C. * PRACA *
Data: 2015.10.28  Czas: 21.59:05
 opoznienie: 40s->45s
 dmuchanie: 33.0%->32.0%
 postoj: 90.0s->100.0s
Nowa moc: 30%
Delta: 0 dmuchanie: 32.0% podawanie: 3.0s postoj: 100.0s
CO: 49.6°C.   Spaliny: 58.6°C. * PRACA *
Data: 2015.10.28  Czas: 22.00:35
 opoznienie: 45s->50s


Rano zobaczę na palnik. Mam nadzieję, że nie zastanę wypalonego krateru. Parametry dobrane intuicyjnie.
dodane 2015-10-28 22:08Jest jedna rzecz do sprawdzenia:
Po przełączeniu kotła w tryb pracy ręcznej i powrót do pracy automat retortowy ręczny skrypt nie podjął u mnie pracy. Pozostały ostatnie parametry pracy. Muszę to jeszcze przetestować, ale na teraz takie odniosłem wrażenie.
Pozostałe testy już jutro.
dodane 2015-10-28 22:12Dzięki piękne Bartek. To już jest patent na dobre ciągłe spalanie. 
Pozdrawiam,
2015-10-28 23:22
  uzi18 Posts: 1346 Ostrzeżenie: 0
teraz moze cos poprobuje z dodaniem regulatora I i D, moze taki pid powstanie z tego
dodane 2015-10-28 22:32grunt ze moj kod ma wprawionych testerow
dodane 2015-10-28 23:22ok dodalem wam jeszcze to co testowalem od wczoraj ...
2015-10-29 06:35
  mark3k Posts: 484 Ostrzeżenie: 0
Wieczorem testy, a rano  musiałem zrobić szybka korektę czasu postoju, w komorze dym i przewęglony palnik. Nie wiem czy przy tak małym zapotrzebowaniu na ciepło sensownym jest utrzymanie kotła (za wszelką cenę) w trybie pracy ciągłej. Przemyśle temat.
Brakuje zdalnego dostępu do RPi.
Wszystko zmierza w dobrą stronę .
2015-10-29 08:29
  laudo Posts: 42 Ostrzeżenie: 0
Jeżeli moge rzucić pomysł odnośnie sprawdzenia ciągu kominowego - nie będzie on doskonały, ale wymaga minimum inwestycji w HW.

Mając regulator ciągu kominowego tego typu: http://www.darco.com.pl/oferta/p,82,regulatory-ciagu-kominowego.html
Możemy badać, czy klapka jest otwarta, czy nie - wystarczy podpiąć pod wejście alarmy zewnętrznego. Cienki przewód przyklejamy u góry klapki tak, aby w momencie zamknięcia dotykał do obudowy i zwierał do masy.

Jeżeli ciąg bedzie niższy niż nastawiony na regulatorze to klapka jest zamknięta (=zwarcie). Powyżej tej wartości regulator będzie trzymał stały ciąg (=rozwarcie).

W tym układzie trzeba będzie ujmować obrotów po zwarciu, a dodawać po rozwarciu. W efekcie dmuchawa będzie oscylowała wokół wartości docelowej, a z czujnika będziemy mieli z grubsza przebieg prostokątny.

Nie jest to regulacja idealna, przede wszystkim dlatego, że nie kompensuje zmiennych oporów w kanałach wymiennika, ale chyba dobra na poczatek, bo pozwala ocenić sensowność wprowadzenia takiej korekty na stałe zanim zainwestujemy w bardziej wyrafinowane rozwiązanie.
2015-10-29 08:50
  Stan Posts: 2564 Ostrzeżenie: 0
Bartku, czy zakomentowany fragment kodu nie dotyczy przypadkiem wyjścia z pracy ciągłej ?
Wczoraj gdy ten parametr ustawiłem na False, to piec zamiast się odstawić ruszył z większą mocą.
2015-10-29 09:36
  mark3k Posts: 484 Ostrzeżenie: 0
Stan, jeśli niskie dmuchanie powoduje przegrzewanie podajnika, to może zastosujesz dodatkowy wentylator małej mocy, 1 -fazowy oczywiście (max kilka Wat), do tego kierownice strugi powietrza, aby omiatała dookoła rurę podajnika + prymitywny trermostat i po problemie. Powinno to zapewnić możliwość  ciągłej kotła kotła.
Obawiam się o mój komin, przy tak niskiej temp. spalin może to wyglądać nieciekawie w dłuższym okresie czasu.

Szkoda , że w eCoalu nie można zmiejszyć czasu podawania groszku. Przy tym zapotrzebowaniu na ciepło, aż się prosi o 2 s pracy podajnika.

dodane 2015-10-29 09:36Zdobyłem silnik 3-fazowy , ale o trochę za małej mocy (jedynie 120W). Zamontuje do napędu podajnika i odpalę go przez falownik z zadaną częstotliwości 40Hz. Powinno uleczyć zbyt duże podawanie groszku, a przy okazji będzie miękki start podajnika. Oby tylko silnik nie okazał się za słaby. Silnik 3-fazowy o mocy 90W był zbyt słaby i czasami utykał.
2015-10-29 09:37
  Stan Posts: 2564 Ostrzeżenie: 0
jest to jakieś rozwiązanie.
2015-10-29 09:40
  mark3k Posts: 484 Ostrzeżenie: 0
Prymitywna proteza, ale zawsze coś. Przy wyższym zapotrzebowaniu na ciepło prawdopodobnie wentylatorek nie będzie się włączał wogóle.
2015-10-29 09:44
  Stan Posts: 2564 Ostrzeżenie: 0
Z innej beczki , do puki temperatura CO jest poniżej zadanej to sterownik realizuje jakąś sekwencję podawania i postoju. to może gdy chcemy przejść w podtrzymanie przestawić  w sterowniku zadana na tę którą mamy w skrypcie a potem na odwrót.
Nie wiem tylko czy mamy odpowiednią komendę do realizacji czegoś takiego.
dodane 2015-10-29 09:44Wtedy podtrzymanie realizował by sam sterownik.
First pagePrevious page18 / 38Next pageLast page
Users on-line: