Forum eSterownik.pl Algorytm retortowy-Proporcjonalny - na podstawie pomyslu Janusza - python Subskrybuj | ||||
Pierwsza stronaPoprzednia strona13 / 38Następna stronaOstatnia strona | ||||
|
||||
Prodi
|
około godziny 16 z kawałkiem
|
|||
|
||||
Stan
|
Bartku, napisałem co robię (jak rozumiem Twój skrypt) i nie odpisałeś, co więcej mam napisać ?
dodane 2015-10-26 20:20Takie parametry ustawiłem moc_100 = 1.0/1.0 zadana_co = 50 korekcja_podawania = 0.30 korekcja_postoju = 0.30 korekcja_dmuchania = 0.30 start_podawanie = 6 start_postoj = 60 start_dmuchawa = 39 A tak wygląda log Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:0 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Delta:-1 Poprzednia:0 Przebija mi mocno temperaturę CO i nie spada poniżej zadanej, a ponieważ nie rozumiem działania algorytmu (chociaż w pewnym momencie wydawało mi się że rozumiem) więc zapewne jakieś głupoty robię w ustawieniach, i tyle. |
|||
|
||||
uzi18
|
Tak jest bo zbyt duza moc startowa masz i male obciazenie, daj start_postoj na 90-100,
Prodi to samo zwieksz start_postoj ... ustawiles moc na styk wiec skrypt nie pracuje ... dodane 2015-10-26 21:17W skrypcie nie wiele sie z logiki zmienilo ..., doszly tylko zabezpieczenia przed parametrami ktorych sterownik nie przyjmie. No i odpadl rozped na jakis czas, bez sledzenia pracy sterownika nie ma on sensu w tym momencie. dodane 2015-10-26 21:24moc_100 jest uzywana tylko do przeliczen aby pokazac jak sie zmienia moc ale to tylko info aby miec mniej wiecej rozeznanie jak sie zmienia ... dodane 2015-10-26 22:01Ok, domyslam sie o co chodzi, wczesniej skrypt reagowal na ujemna delte, ale to nie bylo poprawne ... zgodnie z idea Janusza ... chyba ze traktowac to jako poprawne? |
|||
|
||||
janusz
|
Poprawne poprawne teraz obliczam korektę na plus i minus
|
|||
|
||||
uzi18
|
Czyli warunek sie nie zgadza... bo jesli tak jest to to jest wogole niepotrzebne:
"if (c.getTempCO() < zadana_co)" |
|||
|
||||
janusz
|
A tego to nie czaję "if (c.getTempCO()" dla mnie do chińskie krzaczory
|
|||
|
||||
uzi18
|
To warunek zmiany parametrow ... jesli tCO < tZadana to ...
|
|||
|
||||
janusz
|
Udostępniłem kociołek można popatrzeć jak pracuje
|
|||
|
||||
uzi18
|
|
|||
|
||||
mark3k
|
uzi18 napisał » 2015-10-26 23:19 To warunek zmiany parametrow ... jesli tCO < tZadana to ... W zasadzie ten warunek jest niepotrzebny, zakładamy ciągłą prace kociołka. Korekta na + i na _ jak najbardziej wskazana, a wręcz niezbędna. poprzedni skrypt pracował poprawnie (oprócz "kickstartu), potrzebne było dopisanie widełek : min. i max moc dmuchawy,oraz min. i max czas postoju. Daj znać gdy to już napiszesz (wniesiesz poprawki). Przedwczoraj u mnie ni było korekty na -, stąd odpuściłem testowanie i przełączyłem na 5plus. Pozdrawiam, |
|||
|
||||
uzi18
|
Dokladnie to mialem na mysli ze ten warunek jest aktualnie niepotrzebny ...
widelki juz sa ... wraz z przeliczaniem mocy jesli nie pasuje w widelkach ... |
|||
|
||||
mark3k
|
Wyjaśnij proszę co masz na myśli pisząc "widelki juz sa ... wraz z przeliczaniem mocy jesli nie pasuje w widelkach ..."
Ja ustawiam na sztywno czas podawania = 3s. Pozostają mi tylko dwa parametry do zmiany ograniczone widełkami: min moc dmuchawy = 30% i minim. czas przerwy np: = 35s. Ustawiam przykładowo czas podawania: 3s, moc dmuchawy na pozycji startowej (początkowej) : 32%, czas przerwy np: 130s. Możliwa jest korekta w dół jedynie o dwa oczka dla mocy dmuchawy, ale nie mogę ustawiać np czasu przerwy wyższego od przykładowo 180s, bo się zrobi krater na palniku, a tego chcę uniknąć. W takim razie w jaki sposób algorytm będzie dążył do obniżenia mocy , skoro obwarowałem min i max moc palnika w algorytmie? Trochę namieszałem, ale mam nadzieje, że ideę wypowiedzi da się ogarnąć. |
|||
|
||||
uzi18
|
ach myslalem ze chodzilo Ci o widełki na ustawieniach w sterowniku,
mozemy cos nie cos pomyslec ... o dodatkowym ograniczeniu, pod wieczor moge dopisac. Jesli dopisze to co mysle, to nie przekroczy Twoich 180s. |
|||
|
||||
mark3k
|
Ok. Czekam i zaczynam testy.
dodane 2015-10-27 12:23Janusz, czy u Ciebie non stop pracuje jakiś laptop czy miniPC np. na atomie z windą na pokładzie? |
|||
|
||||
Stan
|
Czyli reasumując.
Parametr moc_100 jest czysto informacyjny i nie ma wpływu na działanie algorytmu. Na start_ ustawiamy parametry pozwalające kotłowi pracować na najmniejszej możliwej mocy. |
|||
|
||||
uzi18
|
Stan: zgadza sie
moc_100 jest po to aby orientacyjnie bylo widac jak bardzo sie zmienia moc w czasie pracy. powaznie sie zastanawiam nad ... rozbudowa skryptu do regulatora PID a przynajmniej do PD |
|||
|
||||
janusz
|
Cały czas laptop z windą
|
|||
|
||||
Stan
|
Wydaje mi się że jest błąd w skrypcie.
Po uruchomieniu skrypt chyba powinien wysłać ustawienia startowe, a tak nie jest , skrypt na początku pracuje z ustawieniami jakie były zapisane w sterowniku. dodane 2015-10-27 16:48Moje ustawienia na chwilę obecną moc_100 = 1.0/10.0 zadana_co = 50 korekcja_podawania = 0.30 korekcja_postoju = 0.30 korekcja_dmuchania = 0.30 start_podawanie = 3 start_postoj = 230 start_dmuchawa = 38 |
|||
|
||||
mark3k
|
Stan. Potwierdzam. Kocioł pracuje z ustawieniami wyjściowym zapisanymi w sterowniku.
|
|||
|
||||
uzi18
|
przed chwila dodalem widelki i tryb pracy ciaglej ...
dodane 2015-10-27 17:25Stan: bo ten fragment byl zakomentowany jak wywalilem rozped, juz to przywrocilem |
|||
Pierwsza stronaPoprzednia strona13 / 38Następna stronaOstatnia strona | ||||