0
Offline
Jr. Member
Karma: 0
Posts: 92
Arduino rocks
|
 |
« Reply #15 on: August 15, 2011, 03:24:44 pm » |
Also eine ganz einfache lineare Heizkurve kann man mit vier Eckpunkten nachbilden, also x1,x2,y1,y2
x ist die Aussentemperatur y der errechnete Wert der Vorlauftemperatur.
x1 also dann z.b. -15 Grad x2 +15 Grad y1 =30 Grad y2 = 80 Grad
dann gilt SW = y1 + (AT - X1)/(X2-X1) * (y2-y1)
Das ist jetzt erst mal eine sehr einfache Heizkurve, man nimmt natuerlich am besten die geglaetttete AT , ( y.b. wegen Mittagssonne), Dann eine Nachtabsenkung (dann kann man das auch logarithmisch aufbauen, weil sich ein Gebaeude und die Verbraucher nicht linear verhalten), dann kann man eine Raumponpensation einbauen wenn man einen Referenzraum hat, und man kann mit einer Auskuehlkonstante die Zeit errechnen, die zum aufheizen notwendig ist, ebenso, die Zeit die der Heizkreis frueher abgeschaltet werden kann, ohne dass Komforteinbussen zu befuerchten sind.
Zurueck zum Thema mit dieser einfachen linearen Gleichung hat man aber schon mal eine witterungsgefuherte Vorlaufregelung...
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 89
|
 |
« Reply #16 on: August 15, 2011, 04:18:15 pm » |
da sollte die PID Libary wie für geschaffen sein. Falls gewünscht kann ich da ein kleines Tutorial für anfertigen, zumindest für die Basics. Hab zwar bis jetzt nur einen Thermofühler als Istwert mit einem Sollwert verglichen und anschließend per PMW einen Lüfter eingestellt der den Thermofühler auf Sollwert hält. Sollte aber für kleines Tutorial \ Einstieg reichen.
Gruß
|
|
|
|
« Last Edit: August 15, 2011, 04:20:03 pm by Yeahuno »
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 27
|
 |
« Reply #17 on: August 16, 2011, 12:32:45 am » |
@Yeahuno gegen ein tutorial hätte ich nichts einzuwenden wenn du zeit hättes @inside-man wenn x die aussentemp ist was ist dann AT oder habe ich da was falsch verstanden? Gruß
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 89
|
 |
« Reply #18 on: August 16, 2011, 07:00:15 am » |
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 27
|
 |
« Reply #19 on: August 16, 2011, 11:10:13 am » |
@Yeahuno du hast da ein super tutorial verfasst. Habe angefangen es abzuarbeiten nach dem lesen mal sehen wie weit ich komme. Gruß
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Jr. Member
Karma: 0
Posts: 92
Arduino rocks
|
 |
« Reply #20 on: August 16, 2011, 03:04:12 pm » |
@inside-man wenn x die aussentemp ist was ist dann AT oder habe ich da was falsch verstanden? Gruß
Stell dir ein Diagramm vor, x sind die beiden (Grenz-)sollwerte fuer die Aussentemperatur, Z sind die Grnzsollwerte fuer die vorlauftemperatur. AT ist dann die aktuelle Temperatur und VL die errechnete Vorlauftemperatur. Good Luck
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Jr. Member
Karma: 0
Posts: 92
Arduino rocks
|
 |
« Reply #21 on: August 16, 2011, 03:08:41 pm » |
Sehr Guter Beitrag! Aber wrum nicht ins Wiki stellen? dort kann er von weiteren Benutzern angepasst werden, und wandert nicht nach hinten wie in eine forum. Inside-Man
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 89
|
 |
« Reply #22 on: August 16, 2011, 03:14:11 pm » |
Hi erstmal sollten ein paar Leute ihren Senf dazu abgeben, egal ob Positiv oder Negativ  Ich bin selber ein Newbi in Sachen Arduino \ Elektrik und co. Hab mehrere Tage damit verbracht den Kram zu installieren etc. Gruß
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 27
|
 |
« Reply #23 on: August 20, 2011, 09:43:46 am » |
so habe mich einwenig damit beschäftigt aber wie gebe ich die formel mit klammer ein. einige versuche sind scho fehlgeschlagen. so komplexe aufgaben hatte ich noch nicht für das programm gruß
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Jr. Member
Karma: 0
Posts: 92
Arduino rocks
|
 |
« Reply #24 on: August 20, 2011, 03:01:38 pm » |
Hallo, tatsaechlich habe ich das noch nicht in eine arduino IDE eingegeben. Ich habe sowas bisher immer wie folgt geloest, jede Menge interne Variablen anlegen, und dann jeweils die Rechnung die in einer Klammer steht auf eine Variable schreiben, und dann jeweils diese Teilrechnungen verbinden, das sollte klappen.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 27
|
 |
« Reply #25 on: August 21, 2011, 04:22:49 am » |
diesen gedanken hatte ich auch schon dacht aber es gäbe eine andere lösung weil bei mehr als eine klammerrechnung spielt der arduino nicht mehr mit aber wieviel variablen kann ich im arduino anlegen beliebig viel oder wie bei einer sps nur eine gewisse anzahl gruß
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Jr. Member
Karma: 0
Posts: 92
Arduino rocks
|
 |
« Reply #26 on: August 21, 2011, 09:16:35 am » |
Ich vermute mal jede Variable nimmt letztlich etwas Speicher in Anspruch, da ist sicher dann irgendwann mal Ende, aber 50 solcher Variablen sind problemlos moeglich, sprich ich bin mir ziemlich sicher das es da keine Ressourcenprobleme gibt, weil zu viele Variablen angelegt sind! Viel Erfolg
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 27
|
 |
« Reply #27 on: August 21, 2011, 12:35:17 pm » |
so habe mal etwas mit der formel gespielt und bin an einem problem hängengeblieben wenn ich den ersten teil der formel durch den zweiten teil dividiere dann erhalte ich null also at=at1/-35 dann erhalte ich null! warum? at und at1 sind variable. wer kann mir weiter helfen. gruß
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 89
|
 |
« Reply #28 on: August 21, 2011, 01:02:23 pm » |
verfasse das ganze doch mal so, das jemand ohne Ahnung dir helfen könnte
was ist erster teil was ist zweiter teil, blick da nicht durch
schreib doch mal die nackte Formel auf
Gruß
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Jr. Member
Karma: 0
Posts: 92
Arduino rocks
|
 |
« Reply #29 on: August 21, 2011, 03:48:16 pm » |
also at=at1/-35 dann erhalte ich null!
Schau am besten nochmal genau welche Variablentypen Du nimmst http://arduino.cc/en/Reference/HomePageAlso eine Division darf kein integer sein, logisch oder? Ich glaube double oder float waeren geignet. Teste also einfach ob Der Wert der bei einer Rechnung von einer Variable gefasst werden kann, wenn also -0.5 rauskommen soll, dann kannst Du meines Erachtens schreiben: at1=-0.5 lprint at1 wenn das dort wieder korrekt ausgegeben wird sollte es klappen. Ich entschuldige mich fuer meine unscharfen antworten, habe keinen Arduino hier, und kann nur mutmassen, (naechste woche habe ich wieder Zugriff auf einen, dann koennte ich es testen )
|
|
|
|
|
Logged
|
|
|
|
|
|