Nach längerer Zeit wieder ucs. Es geht um ein Messprogramm für
Fußbodenheizungen. Es gibt für FBHs verschiedene Trockenbausysteme mit
Kosten zwischen 10 und 50 €/m2. Ich suche das billigste System mit
brauchbarem Ergebnis. Die Dinger unterscheiden sich im Prinzip nur
hinsichtlich der verwendeten Wärmeleitbleche. Verwendet werden Lamellen
aus verzinktem Stahlblech oder Aluminium von 0,08 bis 0,5 mm Stärke. Ich
will an einem Modell die Auswirkungen unterschiedlicher Bleche messen.
Verwendet werden sollen ds1820 - billig bewährt und ausreichend gute
Software vorhanden. Damit meine ich die von Peter Dannegger und Falk
Brunner - wobei nach meiner Erfahrung die von Falk Brunner zuverlässiger
läuft - also werde ich die verwenden.
Meine Anforderung ist, dass die ds1820-adressen automatisch vom Programm
verwaltet werden ohne dass man den Programmcode ändern muss. Etwa so:
20 mögliche 8byte-Adressen werden im eeprom gespeichert
Es gibt im eeprom ein Inhaltsverzeichnis, das status und Ordnungsnummer
in jeweils einem Byte speichert.
Beim Programmstart wird geprüft, ob die gefundenen Sensoren den als
aktiv gemeldeten Sensoren entsprechen - wenn nein, passiert irgendwas.
Ich habe sowas schon mal gemacht, es funktioniert auch - aber nicht so
gut dass ich es nach längerer Zeit ohne größeren Aufwand wieder benutzen
kann. Also neu machen - es sei denn es gibt schon irgendwas Fertiges was
meinen Anforderungen entspricht.
Das ist jetzt nach langer Vorrede die Frage: gibt es ein gutes
Verwaltungsprogramm für ds1820-Adressen?
Wenn beim Start Sensoren gefunden werden die noch nicht im eeprom
gespeichert sind wird einzeln abgefragt, an welcher Stelle sie im eeprom
gespeichert werden sollen.
> aber nicht so gut dass ich es nach längerer Zeit ohne größeren Aufwand wieder
benutzen kann. Also neu machen -
Mit deinem Lösungsansatz läufst du aber wieder in die gleiche Falle.
Ich habe gar nicht erst versucht, das zu verstehen.
Vor vielen Jahren hatte ich aber ein ähnliches Problem. Mein Ziel war,
ganz ohne Tabellen und Eingaben auszukommen, um (neue) Sensoren
anzulernen.
Ich habe es gelöst, wie in
[[Beitrag "Re: DS1820, DS18B20 in C"]]
beschrieben.
Wenn das für dich interessant ist, könnte ich dich unterstützen.
Josef D. schrieb:
"Bei der Inbetriebnahme schließt man also die Sensoren in der
Reihenfolge
einzeln an, wie sie in der Überschrift stehen, und schaltet jeweils
einmal kurz ein."
Ich hab 10 fest verklebte Sensoren. Die einzeln anzulernen wäre sehr
umständlich und ist nicht das, was ich will.
Jeder Sensor hat eine Position, die irgendwo gespeichert werden muss. Ob
im Sensor selbst oder im eeprom ist im Prinzip egal. Die Position wird
bei Programmstart einmal ausgelesen und in einem Array abgelegt. der
Zugriff auf die Sensoren erfolgt dann über die im array abgespeicherte
Position.
grundschüler schrieb:> Problem ist die Eingabe der Werte in den uc. 4Zl-Lcd + 1 Taste gestaltet> sich schwierig.
Klares Designproblem. Wenn ich komplexe Daten einzugeben beabsichtige,
sehe ich eine Möglichkeit vor, dies komfortabel tun zu können.
Mit einem 4Zeilen-Text-LCD und mindestens 5 (im Idealfall eher 6) Tasten
kann man ein sehr komfortabel bedienbares Menüsystem realisieren.
Sprich: du hast da an der absolut falschen Stelle gespart. War wohl
keine passende Wichsvorlage verfügbar...
c-hater schrieb:> Sprich: du hast da an der absolut falschen Stelle gespart. War wohl> keine passende Wichsvorlage verfügbar...
absolut unpassende Ausdrucksweise. Im übrigen frage ich hier ja gerade
nach einer passenden Vorlage. Es gibt anscheinend keine. Ist doch schön,
dass es noch zu lösende Aufgaben gibt.
c-hater schrieb:> Mit einem 4Zeilen-Text-LCD und mindestens 5 (im Idealfall eher 6) Tasten> kann man ein sehr komfortabel bedienbares Menüsystem realisieren.
Komfortable ist etwas anderes. Hat der Controller keine serielle
Schnittstelle, über die er mit einem PC o.ä. kommunizieren kann?
grundschüler schrieb:> Ich will an einem Modell die Auswirkungen unterschiedlicher> Bleche messen.
Ich kann Dir mit Sicherheit sagen, dass alle Bleche für den gewünschten
Temperaturbereich geeignet sind. Ein Beratungsgespräch beim Fachmann -
vielleicht gar beim Hersteller, wird sicher wesentlich
aufschlussreicher.
Welche Auswirkung willst du denn messen. Offenbar irgend etwas bezüglich
der Temperatur. Vielleicht geht Dir darum, deren Wärmeleitfähigkeit zu
vergleichen. Dafür müssten allerdings die Infos von Wikipedia bereits
genügen. Die Wärmeleitfähigkeit wäre allerdings ziemlich egal, da
a) Das Metall ohnehin in wesentlich stärker isolierendem Material
eingebettet ist
b) Du auch gar nicht willst, dass der Raum binnen Sekunden von 15 auf 20
Grad aufgeheizt wird. Das wäre nämlich sehr unangenehm.
Daher nochmal die Frage: Welche Auswirkung bzw. welche Unterschiede
willst du messen?
grundschüler schrieb:> Meine Anforderung ist, dass die ds1820-adressen automatisch vom Programm> verwaltet werden ohne dass man den Programmcode ändern muss. Etwa so:>> 20 mögliche 8byte-Adressen werden im eeprom gespeichert> Es gibt im eeprom ein Inhaltsverzeichnis, das status und Ordnungsnummer> in jeweils einem Byte speichert.> Beim Programmstart wird geprüft, ob die gefundenen Sensoren den als> aktiv gemeldeten Sensoren entsprechen - wenn nein, passiert irgendwas.
alles eine Frage vom vorhandenen Platz und SRAM
Ich habe sowas ähnliches gemacht mit 2 Wesserver auf AVR ATmega Basis
alle beteiligten DS mit ihrer Seriennummer erfasst und entscheide per
#define vor dem Kommpilieren ob der Webserver daheim oder @work ist.
Das kann man auch zur Laufzeit entscheiden denn man weiss ja wo die
Sensoren sitzen!
Bei weniger Sensoren und Änderungen speichere ich die Adressen gar nicht
fest, sondern lasse sie nur bei jedem Einschalten einlesen und im RAM
sortieren. Damit hat jeder Sensor erstmal eine vorläufige eindeutige
Nummer in der Konfiguration. Im EEPROM halte ich dann nur eine
Zuordnungsliste wie 1,3,2,4 und sortiere das Array danach um. Bedeutet
also "Gib dem 2-ten Sensor die Nummer/Funktion/Position 3" und so mach
ich bei einer (seltenen) Konfigurationsänderung die Zuordnung einmal
komplett neu, das geht z.B. über einen Webserver und/oder die Tabelle
als (SPIFFS-)Datei. Vorteil ist, dass man von der Benutzerseite die
Adressen nie sehen muß und die Lösung trotzdem universell mit allen
möglichen Sensoren parallel funktioniert.
Wolfgang schrieb:> Komfortable ist etwas anderes. Hat der Controller keine serielle> Schnittstelle, über die er mit einem PC o.ä. kommunizieren kann?
Ein wirklich guter Vorschlag den ich umsetzen werde. Kleines c#-Programm
auf dem PC, welches das m328-eeprom beschreibt.
Stefan ⛄ F. schrieb:> Ich kann Dir mit Sicherheit sagen, dass alle Bleche für den gewünschten> Temperaturbereich geeignet sind. Ein Beratungsgespräch beim Fachmann -> vielleicht gar beim Hersteller, wird sicher wesentlich> aufschlussreicher.
Ein richtiger Dilettant vertraut keinem Fachmann. Gekaufte Syteme kosten
zwischen 20 und 50,00€/m². Mein angestrebtes Budget liegt bei 10,00/m² -
bei angestrebt gleicher Leistungsfähigkeit. Was wird mir der befragte
Fachmann / Hersteller wohl sagen?
Die billigsten Bleche kosten 4 €/m². Alufolie ist möglicherweise
billiger. Die Fragestellung lautet, wie dick muss Alufolie sein, damit
die Wirkung mit 0,5mm Stahlblech vergleichbar ist. Reichen
möglicherweise 0,01 mm oder 0,1mm? 0,1mm kosten 1€/m2, 0,01mm lägen
unter 30Cent/m2.
Mein Messaufbau sieht bis jetzt so aus, dass eine halbe Stunde auf 50°
Vorlauf erwärmt wird. Danach wird nicht mehr zugeheizt und die
Temperaturen nach einer halben Stunde Abkühlung gemessen. Je höher die
Temperatur der steinernen Abdeckung ist- um so mehr Wärme ist dem Wasser
entzogen worden.
grundschüler schrieb:> Je höher die Temperatur der steinernen Abdeckung ist-> um so mehr Wärme ist dem Wasser entzogen worden.
Und das wird mit besser leitendem Material natürlich stärker ausfallen.
Was willst du da noch messen?
Die Frage ist eher: Wie viel Wärmeleitung ist nötig, damit das ganze
sinnvoll und wirtschaftlich funktioniert. Ich habe starke Zweifel, dass
du das "mal eben schnell" mit so einem Test ermitteln kannst.
Und dann kommen da ja noch nicht-funktionale Anforderungen, dass das
Material gut zu verarbeiten sein muss und lange genug haltbar sein soll.
Wie lange wäre das? 2 Jahre oder 100 Jahre? Ich wohne in einer 90 Jahre
alten Ruine, die aus Müll wieder aufgebaut wurde. Da sieht man ganz gut,
welche Notlösungen gut waren, und welche nicht. Aber so viel Zeit hast
du wohl nicht.
grundschüler schrieb:> Danach wird nicht mehr zugeheizt und die> Temperaturen nach einer halben Stunde Abkühlung gemessen. Je höher die> Temperatur der steinernen Abdeckung ist- um so mehr Wärme ist dem Wasser> entzogen worden.
Die willst aber gar nicht einen möglichst effektiven Wärmeentzug. Sonst
wird der Fußboden nahe der Einspeisung warm und am Ende kommt nichts
mehr an.
Die Metallflächen dienen als Heatspreader, um den Abstand der
Heizschlangen vergrößern zu können, ohne dass der Fußboden zwischen den
Rohren kalte Streifen bekommt. Es geht also um Kosten
Heizschlagen/Pumpleistung vs. Kosten Headspreader.
Stefan ⛄ F. schrieb:> Aber so viel Zeit hast du wohl nicht.
Der Corona-Tod droht.... Ich hoffe, mir bleiben noch ein paar Jahre
> Ich habe starke Zweifel, dass> du das "mal eben schnell" mit so einem Test ermitteln kannst.
Ich muss ja nur vergleichen. Trockenbau mit Wärmeleitblechen ist ja ein
bewährtes System für FBHs. Wenn ich mit Alufolie ähnliche
Oberflächentemperaturen auf meinem Prüfstand erreiche kann ich davon
ausgehen, dass es auch auf der Baustelle funktioniert.
> Und dann kommen da ja noch nicht-funktionale Anforderungen, dass das> Material gut zu verarbeiten sein muss und lange genug haltbar sein soll.> Wie lange wäre das? 2 Jahre oder 100 Jahre?
Arbeitszeit ist ein zu berücksichtigender Kostenfaktor. Haltbarkeit
nicht unter 50Jahre.
Wolfgang schrieb:> Die Metallflächen dienen als Heatspreader, um den Abstand der> Heizschlangen vergrößern zu können, ohne dass der Fußboden zwischen den> Rohren kalte Streifen bekommt.
Im Prinzip jein. Bei käuflichen System beträgt der Abstand zwischen den
Heizrohren entweder 12,5 oder 25cm (8 Rohre bzw. 4 Rohre/m). Ich
verwende 16,6 cm Abstand (6 Rohre/m). Das steht im Prinzip fest. Die
Rohre kosten 3,70€/m2 - da kommt man auch nicht mehr wesentlich runter.
40 mm Styroporplatten kosten rund 3€/m2. Einzige Möglichkeit Kosten zu
sparen, sind die Bleche, die als "Heatspreader" wirken. Auch die
Wärmeverteilung über die Bleche will ich messen. Da kommen noch mehr
Sensoren hin. Die Bleche sind für 125mm Abstand. Ich hab also 5cm
Abstand zwischen den Blechen. Es kann Sinn machen die Bleche mit Folie
abzudecken.
die Lösung:
alle Sensoren werden mit aktueller Temperatur und id erfasst. Auf dem
Display werden seitenweise jeweils drei Sensoren angezeigt. Das Programm
sucht jeweils den wärmsten Sensor heraus und zeigt die entsprechende
Seite mit diesem Sensor an. Gespeichert wird mit ir-Tastenbefehl.
Man selektiert den gewünschten sensor durch Wärmezufuhr - dieser wird
dann durch ir-Befehl an der ersten nicht belegten Stelle im eep
gespeichert.
grundschüler schrieb:> Die Fragestellung lautet, wie dick muss Alufolie sein, damit> die Wirkung mit 0,5mm Stahlblech vergleichbar ist.
Ein Tabellenbuch mit den Wärmeleitfähigkeiten von Al und Fe beantwortet
diese Frage sofort.
Interessant wäre eher das Langzeitverhalten von Al oder Fe im Kontakt
mit Beton oder Styropor. Oder das Verhalten bei Wärmedehnung des Betons.
An Deiner Preisangabe für Styro habe ich Zweifel. Schlließlich muss
Styro für diesen Zweck eine zuverlässige Druckfestigkeit haben, höher
als die für Verpackungsmaterial.
grundschüler schrieb:> Meine Anforderung ist, dass die ds1820-adressen automatisch vom Programm> verwaltet werden ohne dass man den Programmcode ändern muss. Etwa so:
Hab sowas in ASM gemacht und es ist ziemlich einfach wenn man das LCD
nur zum anzeigen nutzt. Wenn man es aber evtl wie folgt erweitert sind
den Möglichkeiten keine Grenzen gesetzt.
- einzelnen Sensor anschließen
- Controller per serieller Schnittstelle ansprechen sodass
- SrNr auslesen/abspeichern
- diese per ser. Schnittstelle zum PC Schicken (8Byte)
- 2 bis 3 Byte als Platzhalter vor oder nach der jeweiligen DS-Adresse
für
für die Beschreibung nutzen
- Den FamalyCode könnte man auch bei allen weg rationalisieren und
fest in
die Adressierungsroutine einbetten
- dies alles über ein TerminalProgramm
einfach ausgedrückt ein Frage/Antwortspiel.
DS schickt Adresse zum µC und speichert ->
µC schickt Adresse zum PC ->
Nutzer ergänzt zb WZ für Wohnzimmer = 2 Byte ->
WZ wird zum vor/nach der SerienNummer eingefügt im EEPROM µC
chris schrieb:> - einzelnen Sensor anschließen> - Controller per serieller Schnittstelle ansprechen sodass> - SrNr auslesen/abspeichern
So ähnlich habe ich es auch gemacht. Jedem DS18B20 wurde eine
fortlaufende Nr. "eingraviert" und dann die SN ausgelesen.
Dies geschieht über einen DS2482 (I2C).
Der jeweilige DS18B20 wird zur Temp.-messung mit seiner Adresse
angesprochen und der Messwert ausgelesen. Im Laufe der Zeit haben sich
30 DS18B20-fühler angesammelt, die sich nach dieser Methode sicher
auslesen lassen.