Avatar billede Ulrich Seniormester
22. januar 2006 - 12:04 Der er 3 kommentarer og
1 løsning

Formel for PID regulering.

Jeg er ved at lave et lille varme regulerings system.
Jeg har en føler og et varmelægme.
Der er et setpoint på fx. 25 grader og varmelægmet skal så også op på 25 grader og holde sig der.
Jeg har kun on / off udgang som skal pulse mellem 0 og fx 24v.
Er der en formel til det som jeg kan smide ind i mit program i Visual Basic?
Avatar billede jakoba Nybegynder
22. januar 2006 - 12:36 #1
ikke en formel, men en algoritme.
start med at definere et fast og rimeligt kort tidsinterval fx 1 sekund (1000 millisekunder). Din algoritme kører så cyklisk så varmelegemet altid er fændt i x millisekunder og slukket in 1000-x millisekunder.

algoritmen bliver så noget i retning af

1) if føler_temp > 25 then x = x-1;
2) if x<0 then x = 0;
3) if føler_temp < 25 then x = x+1;
4) if x>990 then x = 990;
5) tænd varmelegeme og vent i x millisekunder
6) slik varmelegem og vent i 1000-x millisekunder

men det er blot et filter. du må regne med at den målte varme altid vil vær lidt bagud når temperaturen i lokalet svinger. Hvis det kan ske at der er store hurtige temperatursvin kan du hjælpe lidt på det med fx:

1a) if føler_temp > 26 then x = x-4;    accelereret justering når temperaturen er
3a) if føler_temp < 24 then x = x+4;    et stykke vej fra det ønskede.

men du skal ikke regne med at kunne få en 100% konstant temperatur. den vil altid vable lidt op over eller ned under den temperatur du indstiller til.
Avatar billede Ulrich Seniormester
22. januar 2006 - 20:55 #2
Tak for det, det ser godt ud jeg prøver.
Avatar billede Ulrich Seniormester
22. januar 2006 - 20:56 #3
Skriv lige et svar...
Avatar billede jakoba Nybegynder
23. januar 2006 - 13:07 #4
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





White paper
Tidsbegrænset kampagne: Overvejer du at udskifte eller tilføje printere i din forretning? Vi kan tilbyde én eller flere maskiner gratis