Liten instabilitet i PID-reglering skapar pulserande kokljud...

Gonk

Member
OK, ett riktigt I-landsproblem minst sagt. Jag har en Rocket Mozzafiato R som jag är mycket nöjd med. Pumpen låter iofs betydligt mer än vad jag hoppades på. Men det är inte hela världen då den bara låter när den används.

PID-regulatorn däremot retar mig mer. Den har en pulsfrekvens närmare 1-2/sekund med korta pulser, kanske 10%, funkar bra för att hålla en jämn effekt.

Men ca var 10:e sekund så får reglerloopen en liten hicka, man ser att temperaturen på displayen sjunker en grad, sedan kompenserar regulatorn med att dra iväg 1-2 pulser med betydligt längre pulstid för att få tillbaka temperaturen.

Inte hela världen kan man tycka, men resultatet blir att kokaren ger ifrån sig ett sjudande ljud när det inträffar. Bryggaren står alltså och pustar med 10 sekunder mellan pustarna. Väldigt onödigt.

Jag misstänker att det beror på för dålig upplösning i temperaturmätaren i PID-enheten, alternativt tokigt ställda PID-parametrar i enheten. Den är av märket Gicar.

Kan jag pilla med PID-enhetens parametrar? Kanske att temperaturproben inte sitter helt på plats där den ska vara? Andra förslag? (Lev med det är så klart ett fullt möjligt alternativ...)
 

Gonk

Member
Ingen mer som upplever det här fenomenet? Jag klurar på olika alternativ för att komma till rätta med "problemet".

#1. Det är temperaturmätningen som har för dålig upplösning. Skulle kunna åtgärdas med att trycka in en liten störsignal (dithering) som gör att regulatorn får jobba lite mer hela tiden, men så klart riskerar att det blir ännu konstiga ljudeffekter...

#2. Temperaturmätaren har en långsam koppling till vattentanken. Blir ett glapp i regleringen med efterföljande självsvängning. Vet inte hur man skulle kunna förbättra det. Temperaturmätaren sitter ordentligt inskruvad i tanken som den ska.

#3. Regulatorn har en minsta pulslängd på utgången, den driver en SSR-modul. Skulle man kunna undvika genom att korta ner pulserna med lite elektronik. Fördröja tillslaget av reläet med några ms helt enkelt. Låter genomförbart. Eventuellt sätter reläet själv en begränsning på minsta pulslängd, men den borde vara 10ms (En halvperiod) för att synka in till 50Hz. Kanske är så enkelt att det är reläet som förlänger pulsen, lätt att mäta i vilket fall.

Jag får väl plocka isär maskinen, igen, för att prova några av hypoteserna ovan. Den är lätt att plocka isär, men krånglig att få ihop snyggt igen tycker jag. Alla sidorna sitter separat med i princip alla skruvar dolda och svåra att komma åt.

Någon som har några andra bra, eller dåliga, idéer?
 

hne

Well-known member
Nej, det enda ens i närheten liknande jag har är ett spänningsfall en gång i sekunden med någon minuts mellanrum när pid-regulatorn pulsar värmaren. Innan jag flyttade var det 6V spänningsfall, vilket tydligt syntes i glöd- och halogenlampor på samma fas. I nya lägenheten verkar fallet mindre, såpass att jag inte ens brytt mig om att mäta upp det.

Om temperaturen faller är nog parametrarna fel eller förutsättningarna (till exempel rumstemperatur) oväntade.

Sent from my SM-G930F using Tapatalk
 

Eismannen

Well-known member
Det är extremt svårt att få till en vettig reglering i en kaffemaskin. Du bör egentligen ha flera parameteruppsättningar för olika lägen- brygg, idle, uppvärmning, kanske även för liten och stor kopp. Det som Rocket har åstadkommit är säkerligen den bästa kompromissen.

Nåväl, jag tror att du möjligen kan åstadkomma det du vill genom att laborera med I-parametern då detta tycks vara ett fel som sker över tid. Medelvärdet driver iväg lite och detta justerar man med I-parametern.

Men min erfarenhet är att det alltid blir en kompromiss. Får du till detta till 100% så kanske du får oönskade svängningar vid bryggning eller så.
 

Eismannen

Well-known member
Vad gäller pulstiden så har du ingen praktisk nytta av att minska från 1-2 sekunder eftersom systemet är så pass trögt.
 

Gonk

Member
Om jag ändå kunde reglera PID-parametrarna direkt... Pulstiden, alltså mellan pulserna, har jag ingen åsikt om, den är säkert inget problem. Just nu är min huvudtes att den minsta pulslängden begränsas på något sätt i regulatorn eller reläet, beteendet stämmer mest in på den teorin. Alltså en kraftig olinjäritet/knä i reglerloopen. Jag har provat med olika temperaturinställningar med samma resultat. Dags att skruva isär och hänga på oscilloskopet på båda sidorna om reläet för att förstå vad som händer. (Jodå, med galvanisk isolation på proberna...)
 

Gonk

Member
Försöker mig på diverse psykiska behandlingsprogram för att inte reta mig på ljudet, det är svårt, går inget vidare. Stänga dörren till köket och/eller öka ljudet på TV:n och stereon hjälper ganska bra.

Har gjort lite grundläggande analyser av blinket (SSR-drivningen) och ljudet, får inte riktigt ihop en felmodell så att jag kan räkna ut bästa attackplan på problemet. Spontant så verkar det vara mer komplicerat än vad jag trodde först. Säkert så att det behövs ändras på PID-parametrarna, som det inte går. Att hårdvaruvägen påverka parametrarna är inget roligt och kommer ge andra nackdelar. Typ öka massan eller minska effekten i värmeelementet. Mer analys behövs först!
 

Eismannen

Well-known member
Men är du säker på att det inte går att ändra parametrarna? Se här t.ex. Inte en rocket, men den har ju en Gicar enhet tycker jag det ser ut som:
https://www.youtube.com/watch?v=j3MpFEtrToc

Annars är väl en lösning på ditt problem att byta till en industriell PID regulator. Enkelt om man är lite händig och har koll på elektronik (vilket du verkar ha) och billigare än man tror. Nu kan ju iofs den där Gicar enheten ha fler funktioner som man kanske förlorar med en sådan operation. Men det går annars alltid att lösa med någon form av mikroprocessor, och egenhändigt kodad PID-algoritm, och lite finurlighet. Men frågan är väl om du tycker det är värt en sådan ansträngning, jämfört med att bara vänja sig vid ljudet.
 

Gonk

Member
Wow, stort tack för det. Har inte lyckats hitta den infon tidigare. Gick bra att komma in i programmeringsmoden på min regulator också. Helgen är räddad!
 

Gonk

Member
Före ändringar: P=6.0 I=0.01 D=6.0
Samt b=10 Men hittar ingen info någonstans vad den parametern gör för något... Idéer? Jag får väl prova mig fram och se vad som händer...

Finns dessutom en parameter till med offset mellan uppmätt och visad temp.
 

Eismannen

Well-known member
Vet inte vad b parametern kan vara för något. Kan ju vara något tillägg till pid algoritmen.
I övrigt är det ju bara att googla sig fram till vettiga inställningar. Verkar finnas hur mkt info som helst om dessa gicar enheter.
 

Gonk

Member
Bästa gissningen just nu är att b är delta-T då den går över från on/off binär reglering till linjär pid. Men inte lyckats verifiera det. Vet att man gärna gör så för att snabba upp regleringar men ändå ha en stabil lösning. Kan vara något annat. Inte hittat någon manual, bara förslag på inställningar, ytterst sällan som b finns med och aldrig någon förklaring vad det är.

Har justerat ner det mesta rejält för att undvika instabiliteten, nu svänger med mycket mindre amplitud med lägre ljudnivå. Helt hopplöst att få den stabil.

Normalt hamnar den i den här sekvensen: 3-4 riktigt korta pulser, 1-2 längre (då susar den lite) följt av 1 saknad puls. 1 sekund mellan pulserna.

Har inte satt dit ngt mätinstrument, men jag misstänker att reläet inte kan hantera de korta pulserna som behövs. Den är säkert frekvensbegränsad för att passa 50Hz cyklerna.

Blev inte så mycket tid över just nu tyvärr.
 

Eismannen

Well-known member
Tror fortfarande det är ett problem med dina parametrar.

Två korta pulser -> oj det var för lite -ökar -> två långa pulser -> oj det var för mycket -> vi drar ner till ingenting-> oj nu måste jag brassa igen. Osv.
Regleringen överkompenserar både uppåt och nedåt.

Har du möjlighet att förbikoppla regleringen helt och köra on/off? I så fall kan du relativt enkelt logga tempen ett par cykler och sedan räkna fram dina pid parametrar.. att på måfå försöka få fram rätt värden är nästan omöjligt.


Reläet är med största sannolikhet inte problemet då periodtiden är så pass lång. Tror du överanalyserar lite.. :)
 

Gonk

Member
Hehe... får hoppas det.

Däremot håller jag inte med i ditt resonemang. Jag har ändrat PID-parametrarna nära en faktor 10 mot ett stabilare system, med enda resultatet att amplituden på svängningen minskat något. Tyder på att något inte är som det ska, något verkar inte vara linjärt i systemet.

Med reläet menar jag att de riktigt korta till-pulserna riskerar filtreras bort helt, beror på hur de löst 50Hz synkroniseringen, och/eller hur de filtreras inne i reläet.

Det tråkiga är att maskinen är så jobbig att felsöka på då det är ett mindre projekt att flytta maskinen, ta loss sidorna - för att inte tala om att få de snyggt på plats efteråt. Annars skulle oscilloskopet och lödkolven redan varit framme! Men snart så!

(Jobbar med analog elektronikkonstruktion sedan 30 år - så är hyffsat insatt i regler- och mätteknik. Nu har jag inte diskuterat den högljudda rotationspumpen. Men det lär bli en annan tråd när/om jag hugger tag i det problemet...)
 

Eismannen

Well-known member
Följande scenario är vanligt vid felsökning:
Efter att ha dragit om varenda kabel, kalibrerat om alla givare, bytt samtliga förstärkarkort, bytt huvudenhet, satt på störningsfilter på AC kabeln, kollat jorden över allt, startat om fluxkarburatorn, bett till gud och slutligen hulkandes lagt sig i fosterställning, snubblar man till slut på problemet: Det var Björn som råkade sudda bort ett decimaltecken.
Just saying.. :)
 

Eismannen

Well-known member
Kan för övrigt nämna att min PID enhet har följande inställningar. Men då har jag också singelkokare så förutsättningarna är inte helt samma. Men som referens kan det ju vara värt..

P=0,6 I=100 D=20

Då är den precis rapp nog att hinna stabilisera sig tillräckligt väl innan nästa skott, med lite rengöring, malning, tampning osv mellan. Drar man två tre skott i tät följd hinner den inte alltid med. Men E61 gruppen slätar ut rätt bra den också så det gör inget att man får lite fluktuationer i kokaren pga återfyllnad med kallvatten.

I och D avser för övrigt på min enhet integrationstid och deriveringstid. Din verkar ange åtminstone I-parametern på något annat sätt, inte solklart exakt hur, men det lär du nog begripa bättre än jag.
 

Forumstatistik

Trådar
14,632
Inlägg
155,467
Medlemmar
19,331
Senaste medlemmen
ca.nord
Topp