Kurze Info: 2/5 sind vergeben
Ankündigung
Einklappen
Keine Ankündigung bisher.
KONNEKTING 16CH Binäreingang (potentialfrei) für Reed-Kontakte
Einklappen
X
-
Hi,
Ich hab mir eigentlich einen MDT Tasterschnittstelle jetzt für mein S0 besorgt..die kann aber bestimmt noch woanders einbauen.
frage zu den s0 zählern kann ich damit auch Wasser abbilden?
z.b. l pro min und Tages und Gesamtverbrauch?
Gibt man bei den impulen auch eine hochrechung auf W aus?
Eine antowort geht musst du dir aber selber machen wäre auch ok.
Viele Grüsse
Jürgen
Kommentar
-
Gibt man bei den impulen auch eine hochrechung auf W aus?
frage zu den s0 zählern kann ich damit auch Wasser abbilden?
z.b. l pro min und Tages und Gesamtverbrauch?
Eine antowort geht musst du dir aber selber machen wäre auch ok.
Würde mir sogar wünschen, wenn sich jemand meine SW anschaut und optimiert/neu implementiert. Und wenn dann jemand eine Funktion wie die Wasserverbrauchsanzeige implementiert, dann versuche ich das gerne über ein SW-Update für alle bereitzustellen.
Kommentar
-
Habe heute noch etwas an der HW optimiert und bin jetzt noch zufriedener.
Aber ich brauche mal eure Hilfe !!!
Bin gerade dabei die S0 Schnittstelle in die SW zu implementieren. Das Impulse zählen und so funktioniert soweit, aber ich weiß noch nicht genau wie ich es mit der momentan Leistung machen soll. Ich weiß, dass man die Zeit zwischen den beiden Impulsen bestimmen muss, daraus kann man die aktuelle Leistung berechnen.
Aber wie löst man die Situation wenn die momentane Leistung ziemlich klein ist, dann ist die Dauer zwischen den Impulsen schon ziemlich lang (>60sek). Geht die Leistung dann auf 0 Watt zurück, dann kommt auch kein Impuls mehr. Wie weiß ich jetzt ob die Leistung gerade gering ist, oder schon Null !? irgendwann muss man ja sagen, wenn die Zeit zwischen zwei Impulsen größer als einen bestimmten Wert hat, dann muss man davon ausgehen, dass die Leistung wohl Null ist. Was wäre dafür ein guter Wert !?
Hat das von euch schon jemand umgesetzt !?
kennt jemand schon eine fertige Arduino-Lib dafür !?
Kommentar
-
Hi,
Vielleicht die Minimale Last angeben z.b. 6W dass bedeutet das pro Stunde 6 impulse (Bei 1000imp pro kwh) kommen müssen. Wenn nach 10min nix mehr kommt ist es halt 0W
oder du berechnest es mit Sampling du fragst die Samplingrate ab. z.b. 1min wenn jetzt 1 impuls kommt bei 1000imp pro kwh
0 -> 0W
1 -> 60W
16 ->960W
17 ->1020W
usw
Ich denke je nach Anwendungsfall ist das eine oder andere besser.
Viele Grüsse
Jürgen
Kommentar
-
Wenn ich schon nach 2min einen Wert von 0Watt sende, dann kann ich keine kleineren Werte als 30Watt erkennen (wenn man typ 1000impl/KWH hat).
Habe es jetzt so gelöst, alle 60sek wird ein Wert geschickt, das wären dann alle Werte >60Watt, ist der wert zwischen 60W & 30W dann wird er nach 2min geschickt, ist der Wert noch kleiner, dann nach 3min und nach 5min dann ein Wert von 0Watt.
Ich weiß das es keine 100% perfekte Lösung ist, aber für den Anfang denke ich mal ok.
- Likes 1
Kommentar
-
Gibt es denn noch weitere Wünsche Ideen wie man die S0 Schnittstelle umsetzen kann / sollte ?!
Oder gibt es noch weitere Ideen was ein solcher Binäreingang noch an Zusatzfunktionen erhalten soll !?
Ich denke das er aber schon ziemlich viel kann:
- einlesen der Reed-Kontakte
- Jeder Kanal kann in der Suite bearbeitet werden, ob eine 1 oder 0 gesendet werden soll
- Die Kanäle werden zyklisch abgefragt, einstellbar von 300ms, 500ms bis 1000ms (Wenn jemand es schneller haben will dann kann er es selber im Code ändern.
- Es können "Zimmer" definiert werden mit einem eigenen KO
- S0 Schnittstelle für Zähler und momentaner Verlustleistung. (Bei Busspannungsabfall werden alle Werte ins EEPROM gespeichert. Zählerstände können einfach gelöscht, oder gesetzt werden.
EDIT: Wasserzähler/Gaszähler sind aktuell noch nicht in Planung, aber über ein Impulsverfahren ala S0 technisch möglich.Zuletzt geändert von Masifi; 08.05.2017, 07:48.
Kommentar
-
Feintuning macht echt Arbeit :-) :-(
Bin gerade noch dabei das EEPROM speichern zu optimieren. Aktuell würden die Zählerstände nur bei einem Zusammenbruch der Bus-Spannung ins EEPROM geschrieben. Das würde aber bedeuten, dass wenn man den Reset-Button betätigt oder den Code neu flashed, dass die aktuellen Zählerstände gelöscht sind und die letzten aus dem EEPROM wieder geladen wurden. Da ein Bus-Spannungszusammenbruch nicht jeden Tag passiert, kann das teilweise schon sehr ungünstig sein :-) :-(
Lösungen:
- Der SAMD hat aber eine integrierte RTC mit der ich einmal am Tag ein Event setze, dass die Werte ins EEPROM speichert.
- beim betätigen des Prog-Buttons wird ebenfalls immer dieses Event gesetzt.
Jetzt hat man nur noch das Problem, wenn man den Reset Button betätigt. Dann sind halt die Zählerstände von maximal einem Tag weg. Damit sollte man aber leben können. Ich hoffe ja, das dieser Reset-Button nie benötigt wird :-)
Kommentar
-
Normalerweise haben KNX Geräte keinen eigenen Reset-Knopf. Würde den als solchen auch nicht nach außen legen.
Und Firmware-Flashen ist auch keine alltägliche Funktion, ist eher was für Entwickler.
Kurzum und allgemein gesprochen:
* Reset-Button ist eigentlich irrelevant, weil "normalerweise" nicht vorhanden/herausgeführt
* Firmware-Update: Praxisrelevant, aber selten. Da wäre es cool wenn wir die Möglichkeit hätten darauf zu reagieren, statt fix mit einem Timer zu arbeiten. Aber eine Idee hab ich dazu noch nicht direkt. Vllt. ein KO das man von außen antriggern kann um "explizit" zu speichern?!
P.S. Ja, die ersten 80% eines Projekts gehen meist recht flott. Die meiste Arbeit machen die letzten 20%. Leider.
Kommentar
-
Kurzum und allgemein gesprochen:
* Reset-Button ist eigentlich irrelevant, weil "normalerweise" nicht vorhanden/herausgeführt
* Firmware-Update: Praxisrelevant, aber selten. Da wäre es cool wenn wir die Möglichkeit hätten darauf zu reagieren, statt fix mit einem Timer zu arbeiten. Aber eine Idee hab ich dazu noch nicht direkt. Vllt. ein KO das man von außen antriggern kann um "explizit" zu speichern?!
Ich will aber nichts von außen triggern, man soll das Device einbauen ohne das man noch andere Dinge außenrum bauen/implementieren muss, damit es tut. "simple is the best"
Wenn ein Binäreingang mal läuft, glaube ich nicht, dass man jemals einen Firmware-Update durchführen möchte/muss !?
Für die Entwicklung gehe ich eh mit USB für Debuging drauf, dann kann ich darüber auch flashen.
Wenn man täglich speichert und bei einer Umprogramierung mit der Suite, dann hat man alles erschlagen (Reset gibt es dann ja nicht mehr)
Kommentar
Kommentar