FS20S8M Spezialfirmware, S0 für Energiezähler, AD Wandler usw.

Begonnen von Noname, 01 Juni 2014, 23:47:28

Vorheriges Thema - Nächstes Thema

ext23

Ich versuche das jetzt auch mit einem Drucksensor. Hast du ein Differenzdrucksensor genommen oder ein normalen?

/Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

Noname

#31
Hi Daniel,

Der passt:
http://www.elv.de/freescale-semiconductor-drucksensor-mpx5010dp-10-kpa-5-0-c867c.html

und bei Akku / Batteriebetrieb zusätzlich:
http://www.elv.de/3-v-5-v-dc-dc-wandler-suw3-5-komplettbausatz.html
UE+ und GND mit den 3V Pins des TX868 verbinden, EN mit dem Gate von (T1/R4/PD5).
UA+ und GND zum Freescale und den Analogwert mit einem Draht zum Spannungsteiler.

Oder einen DCDC Wandler mit Potentialtrennung verwenden,
dann kann für die Versorgung der geschaltete Minus von ST1/18 verwendet werden.


zusätzlich 2 Widerstände für den Spannungsteiler siehe Bild

Gruß Noname


ext23

Moin,

jut also eine Differenzdrucksensor. Na dann schau ich mal in meine Grabbelkiste was ich da so finde.

Gruß
Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

ext23

Nabend, mit dem Drucksensor klappt. Wie wertest du das aus? Hast du da eine FHEM Funktion die das in 0-100% umsetzt? Für den Spannungsteiler werd ich mal lieber ein Poti nehmen, dann kann ich den Wertebereich voll ausnutzen. 10-Bit sind ja nun nicht so viel.

Sag mal wieso habe ich jetzt 2 Geräte?
FS20Value_fd0504 und
FS20Value_fd0505

eigentlich habe ich nur den ersten erwartet, der liefert aber nur 0 Werte und der zweite bringt den richtigen Wert, aber ich habe als Adresse eigentlich 4 und nicht 5 eingestellt...

Gruß
Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

Noname

#34
Hallo,

ich habe bei mir auf 108% Skaliert (ohne Nachkommastellen),
das ist der Überlauf. Der Einlauf liegt bei 100%, den Wert 0
habe ich auf 0% Begrenzt, so dass der Wert nicht ins Negative geht.
(ValueMin 0) Den Maxwert habe ich nicht begrenzt, könntest
du aber wenn du willst.

Wenn du nur den Analogeingang benutzt,
dann solltest du nur Mod2 aktivieren, dann wird auch nur
ein Gerät erzeugt. Wenn zusätlich noch die TA1-8 verwendet
werden, kannst du Mod1 und Mod2 gleichzeitig aktivieren. Dann
werden auch zwei Geräte erzeugt.

Einstellung am FS20S8M Modul
Mod: 1 = Zustandsmeldung TA1-TA8 aktiv
Mod: 2 = Analog Spannung 0-3V = 0-1024 aktiv
Mod: 3 = Analog Widerstandsmessung 220 KOhm = 0-512 aktiv
Mod: 4 = Cap Füllstand / Frequenzmessung aktiv
Mod: 5 = Option nicht belegt
Mod: 6 = Option nicht belegt
Mod: 7 = Option nicht belegt
Mod: 8 = LED / DA beim Senden aktiv

so sieht es bei meiner Füllstandsmessung aus:

# FS20 S8M Füllstandsmessung Regenfass ------------------------------------------------------
# leer 0% 115 Digit 0%; Voll bei 65cm, 100%; Überlauf bei 893 Digit, 70cm, 108%
# Spannungsteiler 100k <-> 22K, Wandlung 5V auf 3V AD Wandler
# Offset = raw leer; Faktor = State voll / (raw voll - raw leer)
# Offset = 115; Faktor = 108 / (893 - 115) = 0,1388
# -------------------------------------------------------------------------------------------
define RE_Fuellstand FS20Value fd04 0B
attr RE_Fuellstand IODev CUL
attr RE_Fuellstand ValueDpoint 0
attr RE_Fuellstand ValueFactor 0.1388
attr RE_Fuellstand ValueMin 0
attr RE_Fuellstand ValueOffset 115
attr RE_Fuellstand ValueUnit %
attr RE_Fuellstand model FS20Value
attr RE_Fuellstand room Terasse

Nur wenn du TA1-8 verwendest!
# Einzelmeldungen definieren -------------------------------------------------------------------------------------------
define FS20_Meldung_TA1 FS20Value fd04 11 Y00X
attr FS20_Meldung_TA_1 IODev CUL
attr FS20_Meldung_TA_1 model FS20Value

Bitauswertung State ON OFF:
X=1-8 für Bitauswertung Taster 1-8

Signal Invertieren :
Y=0, TA geschlossen Anzeige ON , TA geöffnet  Anzeige OFF
Y=8, TA geschlossen Anzeige OFF , TA geöffnet Anzeige ON

Beispiel Taster 3 normal
define FS20_Meldung_TA1 FS20Value fd04 11 0003
attr FS20_Meldung_TA_1 IODev CUL
attr FS20_Meldung_TA_1 model FS20Value

Beispiel Taster 3 invertiert
define FS20_Meldung_TA1 FS20Value fd04 11 8003
attr FS20_Meldung_TA_1 IODev CUL
attr FS20_Meldung_TA_1 model FS20Value



Gruß Noname

ext23

Mhh komisch ich hab nur Mode 2 aktiviert, aber gut mit dem Mäuseklavier ist das immer nicht so einfach ;-) Vielleicht bin ich noch auf den anderen Taster gekommen. Ja Spannungsteiler ist ein anderer bei mir, ich hab 12V ... Wobei bei deinem Teilungsverhältnis doch von 4,7V keine 3V werden oder, aber gut ist auch Hupe.

Mal was anderes. Ich wollte mein Schlauch einfach in die Tonne legen und unten Fest machen so das er 5 cm über dem Boden hängt. Der Sensor ist dann neben der Tonne auf Deckelhöhe. Ich kann mir aber nicht vorstellen, dass das so lange funktioniert. Ich meine den Schlauch bekommt man doch nicht 100% Dicht, im Idealfall über eine gesamte Saison. Nun wenn ich unten 5 cm Platz habe und die Pumpe bis unter die 5 cm pumpt, habe ich an dem Punkt das ganze ja quasi wieder "kalibriert". Der bessere Weg ist vermutlich aber wirklich unten ein Loch in die Tonne zu bohren und da den Schlauch ran zu machen. Dann muss der Drucksensor aber wirklich eine Wasser unempfindliche Membran haben. Im Fehlerfall liegt ja dann irgend wann das Wasser direkt an wenn die ganze Luft raus ist. (Mal abgesehen davon ob das wirklich passieren würde weil geht man davon aus, dass der Sensor an sich dicht ist, wird da immer eine kleine Luftblase bleiben zwischen Membran und Schlauchanschluss.

Naja ich bin mir jedenfalls noch nicht so sicher wie ich das machen. Im Moment hab ich Variante 1 am Start, mal schauen wie lange das stabil arbeitet.

Gruß
Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

ext23

Nabend,

ich hab mir das Datenblatt noch mal genau angeschaut, das ist geschützt. Da ist irgend so ein Gel auf dem Sensorfeld.

ZitatThe Pressure (P1) side is the side containing fluorosilicone gel which protects the die from harsh media.
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

Noname

#37
Hi ext23,

wie gesagt habe den Drucksensor schon lange im Einsatz, bis jetzt keine Probleme.

Das mit den Spannungsteiler hast du richtig erkannt, ich habe die Werte für
meinen genutzten Messbereich so einigermaßen angepasst.

Hast du das mit den zwei erzeugten FS20Value hinbekommen, so dass nur noch ein FS20Value
angezeigt wird?

ext23

Jupp ich hab das noch mal neu konfiguriert jetzt passt es.

Ich hab jetzt die Variante mit Schlauch von oben im Einsatz. Mal schauen wie lange das stabil läuft.

Gruß
Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

ext23

Also Schlauch oben drüber ging gar nicht, wenn es warm wurde stieg der Druck an.
Jetzt habe ich es wie du gemacht, unten in die Tonne eine Schlauchdurchführung (Vom Modellbau ne Spritdurchführung) und dann ein 3x5er Silikonschlauch ran. Tonne gefüllt, 775 als raw. Jetzt nach 3h nur noch 700. Der Pegel hat sich aber null verändert. Also kein Leg im Schlauch...

Entweder ist das verdammt Temperatur abhängig oder der Drucksensor ist Asche. Ich versteh das nicht. Der Spannungsteiler sollte ja auch relativ Temperatur unabhängig sein, die Werte ändern sich wenn dann ja im gleichen Rahmen.

Alles ist bei mir auch dauerhaft unter Saft, also der Drucksensor bekommt seine 5V 24/7.

Gruß
Daniel

HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

Noname

#40
Hallo ext23

Im Datenblatt steht folgendes:

• 5.0% Maximum Error over 0 to 85 C
• Ideally Suited for Microprocessor or Microcontroller-Based Systems
• Durable Epoxy Unibody and Thermoplastic (PPS) Surface Mount Package
• Temperature Compensated over -40 to +125C
• Patented Silicon Shear Stress Strain Gauge
• Available in Differential and Gauge Configurations
• Available in Surface Mount (SMT) or Through-hole (DIP) Configurations

Der Sensor arbeitet im Bereich von o bis 85°C, allerdings ist ein Maximaler Messfehler
von 5% angegeben. Bei vollem Fass (ca 70cm hoch) ist das 3,5 cm!
ist wohl nicht der beste Sensor, mir ist das allerdings genau genug und es
funktioniert schon fast 2 Jahre ohne Probleme.

Wenn ich mir meine Daten ansehe sind es Maximal ca. 3% Messfehler.

Allerdings wird bei mir der Sensor bei jedem Messzyklus ein und wieder abgeschaltet, um
Energie zu sparen. (Batterie / Akku). Ich dachte die Schwankungen entstehen deswegen.
Es könnte aber auch der angegebene Messfehler vom Datenblatt sein?


Auszug aus meinem Log bei vollem Fass:

2015-08-26_00:05:42 RE_Fuellstand 98 %
2015-08-26_00:10:37 RE_Fuellstand 98 %
2015-08-26_00:15:31 RE_Fuellstand 98 %
2015-08-26_00:20:26 RE_Fuellstand 99 %
2015-08-26_00:25:20 RE_Fuellstand 100 %
2015-08-26_00:30:15 RE_Fuellstand 100 %
2015-08-26_00:35:09 RE_Fuellstand 97 %
2015-08-26_00:40:04 RE_Fuellstand 97 %
2015-08-26_00:44:58 RE_Fuellstand 98 %
2015-08-26_00:49:53 RE_Fuellstand 98 %
2015-08-26_00:54:47 RE_Fuellstand 97 %
2015-08-26_00:59:42 RE_Fuellstand 98 %
2015-08-26_01:04:36 RE_Fuellstand 99 %
2015-08-26_01:09:31 RE_Fuellstand 98 %

ext23

Naja also bei mir ist da nichts mit 5%. Schau mal das Bild im Anhang an, das sind jetzt 3 Tage nach Installation. Die Wassersäule steht im Schlauch jetzt 3 cm vor dem Drucksensor, vermutlich entweicht da doch irgendwo etwas Luft obwohl ich den Schlauch angestrapst habe. Aber gut das sollte ja egal sein weil ich den Schlauch ja jetzt unten am Fass raus führe, da wird also immer mit kontinuierlichem Druck unabhängig von der Temperatur "nachgeschoben". Aber dennoch bekomme ich hier misst. Die Spannung stimmt, genau 5V und ach die Spannungsunterbrechung bring nichts. Kann doch nur noch sein das mein Sensor defekt ist.

Gruß
Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

matthias soll

Hallo zusammen,

ich habe den Füllstandssensor nachgebaut.
Ich bekomme im Event Monitor nur meldungen wie:

2015-11-29 16:27:38 FS20 FS20_00ff0b unknown_80
bis unknown_96 wenn er voll eingetaucht ist, ist das richtig?

Gruß
Matthias

ext23

HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

matthias soll

Ich habe die cul.pm überschrieben und 09_FS20Value.pm hineinkopiert.
shutdown reboot
2015-11-29 17:24:14 FS20 FS20_00ff0b unknown_80
hat sich nichts geändert...?