Problem mit Sensorabfrage

Betrieb der FHZ-Zentralen mit contronics homeputer Standard / homeputer Studio & WEB-Server

Moderator: Co-Administratoren

Futtel1
Beiträge: 8
Registriert: 08.01.2011, 09:51

Problem mit Sensorabfrage

Beitrag von Futtel1 » 27.04.2011, 10:32

Hallo hab ein Problem mit der Abfrage ich hab 4 Sensoren als Füllstandsabfrage und krieg das Programm nicht hin
die Sensoren sind übereinander in der Zisterne montiert und sollen dementsprchend den Füllstand anzeigen.
ich hab ein Programm mit dem Name Anzeige Zisterne gemacht hier sind die verschiedernen Anzeigen hinterlegt.
ich möchte je nachdem welche Sensoren bedeckt sind die Anzeigen visualisieren.
die Sensoren heißen SensorZi1-SensorZi4
die Bitmaps Ansichten sind "leer" "viertel" "halb" "dreiviertel" "voll"
kann mir einer helfen hab ich nen Gedankenfehler im Programm?
Danke
hier das Programm
wenn SensorZi4 geschlossen dann
wenn SensorZi1 und SensorZi2 geschlossen dann
wenn SensorZi1 und SensorZi2 und SensorZi3 geschlossen dann
Wenn SensorZi1 geschlossen dann
AnzeigeZisterne := "viertel"
AnzeigeZisterne := "dreiviertel"
AnzeigeZisterne := "halb"
AnzeigeZisterne := "voll"
Hauswasserwerk einschalten
sonst
AnzeigeZisterne := "leer"
Hauswasserwerk ausschalten
endewenn
endewenn
endewenn
endewenn

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Problem mit Sensorabfrage

Beitrag von buempi » 27.04.2011, 11:12

Hallo Futtel1

Ich glaube, du hast das mit den WENN-Bedingungen vollkommen falsch verstanden: Wenn eine solche Bedingung zutrifft, führt das Makro alles aus, was zwischen dem "dann" und dem (zugehörigen!) "endewenn" steht. Sonst springt es direkt auf die Zeile NACH dem (zugehörigen!) "endewenn".

In deinem Fall prüft das Makro, ob Sensor 4 geschlossen ist. Ist das nicht der Fall, werden die folgenden 3 WENN-Bedingungen gar nicht mehr abgefragt, sondern gleich hinter das zugehörige, also das letzte "endewenn" gesprungen... fertig! (Sind mehrere "Endewenn's" verschachtelt, gehören immer das äusserste WENN und ENDEWENN zusammen, dann die zweitäussersten usw. - mehr dazu findest du hier: http://homematic-forum.de/forum/viewtop ... 362#p19362)

Aus der Reihenfolge deiner Bedingungen lässt sich ferner nur mit kriminaltechnischen Überlegungen erraten, wie die Sensoren angeordnet sein könnten. Da es offenbar möglich ist, dass 1 + 2 + 3 gleichzeitig unter Wasser stehen, muss 1 unten und 4 oben sein.

Das Rätselraten geht aber weiter... Deine Bedingungen haben folgende Reihenfolge:

Code: Alles auswählen

4
1 + 2
1 + 2 + 3
1
Die Zustände dann diese:

Code: Alles auswählen

viertel
dreiviertel
halb
voll
Wenn nun Homeputer nicht schon ganz zum Ende des Makros gesprungen wäre und sich - wie ich - die Mühe machen würde, da eine Zuordnung reinzubringen, käme wohl folgendes dabei raus:

Code: Alles auswählen

viertel     = 4
dreiviertel = 1 + 2
halb        = 1 + 2 + 3
voll        = 1
oder vielleicht alles umgedreht:

Code: Alles auswählen

viertel     = 1
dreiviertel = 1 + 2 + 3
halb        = 1 + 2
voll        = 4
Du siehst: Ein Bisschen mehr Sorgfalt wird beim Programmieren schon notwendig sein!

Trotz allem nun ein Vorschlag, der funktionieren sollte; mein folgendes Makro geht so vor: Zunächst wird "leer" in die Anzeige geschrieben. Dann testet das Makro von unten nach oben, welche Sensoren "nass" sind und überschreibt - wenn ja - die Anzeige mit dem entsprechenden Niveau.

Steht am Schluss immer noch "leer" in der Anzeige, wird das Hauswasserwerk ausgeschaltet; sonst eingeschaltet.

Code: Alles auswählen

AnzeigeZisterne := "leer"

wenn SensorZi1 geschlossen dann
   AnzeigeZisterne := "viertel"
endewenn

wenn SensorZi2 geschlossen dann
   AnzeigeZisterne := "halb"
endewenn

wenn SensorZi3 geschlossen dann
   AnzeigeZisterne := "dreiviertel"
endewenn

wenn SensorZi3 geschlossen dann
   AnzeigeZisterne := "voll"
endewenn

wenn AnzeigeZisterne = "leer" dann
   Hauswasserwerk einschalten
sonst
   Hauswasserwerk ausschalten
endewenn
Ich empfehle dir auch, mal die Homeputer-Hilfe systematisch durchzuarbeiten, und ein paar Beispiele dort und solche, die du hier im Forum findest, nachzuvollziehen.

Viele Grüsse
Bümpi

Benutzeravatar
Herbert_Testmann
Beiträge: 11062
Registriert: 17.01.2009, 11:30
Danksagung erhalten: 7 Mal

Re: Problem mit Sensorabfrage

Beitrag von Herbert_Testmann » 27.04.2011, 11:37

buempi hat geschrieben:

Code: Alles auswählen

wenn AnzeigeZisterne = "leer" dann
   Hauswasserwerk einschalten
sonst
   Hauswasserwerk ausschalten
endewenn
Bümpi
Holla Buempi

mal wieder die Kristallkugel poliert, ja ?? :)

Ich _vermute_ eigentlich, dass die letzte Bedingung genau umgekehrt funktionieren soll. Zisterne voll -> Pumpe ein.
Auflösung des Rätsels folgt sicher heute noch ;-)

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Problem mit Sensorabfrage

Beitrag von buempi » 27.04.2011, 11:51

Herbert_Testmann hat geschrieben:Ich _vermute_ eigentlich, dass die letzte Bedingung genau umgekehrt funktionieren soll. Zisterne voll -> Pumpe ein.
... hast du bestimmt Recht. Ein- und Ausschalten in diesem letzten WENN-Block gehören vertauscht. - Hab auch ich mal gepfuscht :oops:

Viele Grüsse
Bümpi

Futtel1
Beiträge: 8
Registriert: 08.01.2011, 09:51

Re: Problem mit Sensorabfrage

Beitrag von Futtel1 » 27.04.2011, 12:26

Hallo, vielen Dank für die schnellen Antworten.

ich wollte die "wenn" verschachteln also wenn die oberste wenn Funktion nicht zutrifft dann die 2. usw.

zu den Sensoren


wenn kein Sensor bedeckt ist dann leer und Hauswasserwerk aus.

wenn 1 nass dann viertel
wenn 2 nass dann halb
wenn 3 nass dann dreiviertel
wenn 4 nass dann voll

ich wollte noch mit abfragen ob ein Sensor hängt desshalb die
wenn 1 und 2 und3 dann Anweisung muss aber nicht unbedingt sein. denn wenn 4 nass anzeigt kann man davon ausgehen dass 1 also der unterste auch im Wasser steht.
nochmal anders: wenn die Zisterne in wirklichkeit leer ist aber ein sensor hängen bleibt, z.B Sensor 4 (es sind Schwimmer)
läuft mein Hauswasserwerk trocken und stirbt. ich hoff ich konnte das so einigermassen erklären.



wenn kein sensor bedeckt ist dann leer und Hauswasserwerk aus.

ich werde mal dein Programm ausprobieren vielen Dank..

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Problem mit Sensorabfrage

Beitrag von buempi » 27.04.2011, 12:43

Futtel1 hat geschrieben:ich wollte die "wenn" verschachteln also wenn die oberste wenn Funktion nicht zutrifft dann die 2. usw.
... dann darfst du die WENN's eben gerade nicht verschachteln (= ein WENN ins andere "hineinpacken" - lies auch meinen Link zu diesem Thema!). Wenn eine Bedingung NICHT zutrifft, kümmert sich das Makro nicht darum, was du in diesen Block alles reingepackt hast!
Futtel1 hat geschrieben:wenn die oberste wenn Funktion nicht zutrifft dann die 2. usw.
... genau wie du es sagst: Er soll zur zweiten springen. Also die WENN's NACHeinander (wie ich es gemacht habe) und nicht INeinander. Mit SONST konnte man da auch noch operieren... aber zuerst musst du mal das ganz gewöhnliche WENN richtig handhaben können.

Viele Grüsse
Bümpi

Futtel1
Beiträge: 8
Registriert: 08.01.2011, 09:51

Re: Problem mit Sensorabfrage

Beitrag von Futtel1 » 27.04.2011, 14:32

so nu es funktioniert so nun
ich werde mir das wenn noch mal genauer anschauen ich dachte wirklich man kann das so machen
vielen Dank nochmal

Gruß Futtel1

strohfeuer
Beiträge: 194
Registriert: 19.09.2006, 12:59

Re: Problem mit Sensorabfrage

Beitrag von strohfeuer » 28.04.2011, 09:53

Hallo Futtel1

was sind denn das für Sensoren, die Du da im Wasser hast ?????
Wenns geht bitte Bild und Technik posten, danke

und an welchem FS20-Modul sind diese angeschlossen ????? (HMS100 TFK;oder FS20 S8M-8 Kanal-Sendemodul )

Viele Grüße
Strohfeuer

m.jansen
Beiträge: 219
Registriert: 16.03.2011, 16:30
Wohnort: Aachen

Re: Problem mit Sensorabfrage

Beitrag von m.jansen » 30.04.2011, 12:01

Hallo zusammen,

@strohfeuer
Ich denke da kanntste ruhig auf HMS100 Serie tippen :lol:
HMS100WD oder die TFK´s
ELV FS20 Sender wären da zum Dauerfeuer :shock:
Oder hab ich da Unrecht :oops:

Mfg.
m.jansen

leknilk0815
Beiträge: 6693
Registriert: 19.03.2007, 08:21
Danksagung erhalten: 2 Mal

Re: Problem mit Sensorabfrage

Beitrag von leknilk0815 » 30.04.2011, 13:22

Das geht mit FS20 problemlos. Meine Balkonbewässerung läuft seit Jahren mit einem FS20TKS prima.
Würde man einen FS20TFK nehmen, ginge es einfacher, aber die TKS gabs damals für 5€..., und mit Bümpis Hilfe haben wir das Makro für die TKS auch hinbekommen.
Als Wassersensor dient eine Lüsterklemme, die im Wasser liegt (oder nicht, wenn kein Wasser mehr im Kasten ist).
Gruß - Toni

KS300 + Sonnendauer + Windrichtung, KS888, HM-CC-TC/HM-CC-VD, FHT80b, und etwas FS20-xx, Keymatic, EM1000, CCU2 und FHZ2000 sowie HP Studio, HPCL + Upgrade für FHZ

Antworten

Zurück zu „homeputer Studio / Standard: allgemeine Fragen“