Mein Redesign ist fertig, hier das Ergebnis :-)

User stellen ihre Haussteuerung vor

Moderator: Co-Administratoren

kja
Beiträge: 17
Registriert: 26.11.2006, 16:44

Beispielprojekt

Beitrag von kja » 17.11.2007, 22:11

Hallo squeezer,
super Visualisierung!
Wie bekommt amn denn die einzelnen FHT Temp. in den Räumen angezeigt.
Ich begrüge mich momentan noch mit den Standrd FHT Anzeigen.
Gruss KJA

Hobby
Beiträge: 6
Registriert: 01.12.2007, 02:46

Beitrag von Hobby » 01.12.2007, 02:59

Bin Ziemlich neu hier und muß sagen ist wirklich super gelungen.

Sehr schön übersichtlich das ganze.

:D

Und bestimmt mächtig viel Arbeit reingesteckt.

Benutzeravatar
squeeezer
Beiträge: 545
Registriert: 17.07.2006, 00:00
Wohnort: Idstein

Beitrag von squeeezer » 06.12.2007, 20:57

@kja:

das ist ein selbstdefinierter objekttyp mit entsprechenden graphiken dahinter ... wenn du die graphiken brauchst, schick mir mal ne pm ...

@hobby:

jawoll, arbeit ist genug drin, vielen dank für die blumen :-)
... squeeezer

joesch
Beiträge: 789
Registriert: 03.02.2007, 14:57
Hat sich bedankt: 64 Mal
Danksagung erhalten: 2 Mal

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von joesch » 23.01.2008, 13:21

Hallo!

Kannst du mir einen Tipp geben, wie diu die Ausgabe des Ereignisprotokolls realisiert hast?

Danke schon mal und VG
Joesch
System: RaspberryMatic auf Raspberry Pi 3 Model B Rev 1.2 (rpi3) mit RPI-RF-MOD (4.4.22)

Benutzeravatar
squeeezer
Beiträge: 545
Registriert: 17.07.2006, 00:00
Wohnort: Idstein

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von squeeezer » 23.01.2008, 15:03

@joesch:

ich hab ein text-objekt namens "LOGFile" mit ein paar variablen (ebenfalls von typ text, z.b. date, time last1, last2, last3). als quelltext im makro steht:

Code: Alles auswählen

log := LOGFile
date := datum
time := uhrzeit
last15 := last14
last14 := last13
last13 := last12
last12 := last11
last11 := last10
last10 := last9
last9 := last8
last8 := last7
last7 := last6
last6 := last5
last5 := last4
last4 := last3
last3 := last2
last2 := last1
last1 := LOGFile.time + " - " + LOGFile.log
schreibedatei("c:\homecontrol\log\logfile.log","%<LOGFile.date> - %<LOGFile.time> - %<LOGFile.log>")
LOGAnzeige := LOGFile.last15 + "<<" + LOGFile.last14 + "<<" + LOGFile.last13 + "<<" + LOGFile.last12 + "<<" + LOGFile.last11 + "<<"
LOGAnzeige := LOGAnzeige + LOGFile.last10 + "<<" + LOGFile.last9 + "<<" + LOGFile.last8 + "<<" + LOGFile.last7 + "<<" + LOGFile.last6 + "<<"
LogAnzeige := LogAnzeige + LOGFile.last5 + "<<" + LOGFile.last4 + "<<" + LOGFile.last3 + "<<" + LOGFile.last2 + "<<" + LOGFile.last1
LOGFile := ""
wenn du jetzt z.b. protokollieren möchtest, wann dein wohnzimmerlicht an oder ausgeht, schreibst du in das makro des aktors:

Code: Alles auswählen

wenn WohnzimmerLicht = "aus" dann
   LOGFile := "Wohnzimmerlicht wurde ausgeschaltet"
sonst
   LOGFile := "Wohnzimmerlicht wurde eingeschaltet"
endewenn
starte(LOGFile)
das wars :-) ...

viele grüße ...
... squeeezer

joesch
Beiträge: 789
Registriert: 03.02.2007, 14:57
Hat sich bedankt: 64 Mal
Danksagung erhalten: 2 Mal

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von joesch » 23.01.2008, 17:57

Bevor ich das ausprobiere, möchte ich noch um deine Hilfe in einer anderen Sache bitten:

Beim Schalten der Ansichten/Navigation hast du vermutlich ein Objekt mit 2 Zuständen definiert und jedem Zustand die entsprechende Grafik zugeordnet (?).

Um nun beim Klick auf die jeweilige Grafik eine Aktion zu starten, habe ich die dahinterliegenden Objekte "Umschalten bei Mausklick" und "Ausführen bei Änderung" definiert.

Mein Problem: Um die Grafiken der gerade nicht aktiven Ansichten in die Darstellung "inaktiv" zu schalten, ändere ich den jeweiligen Objektzustand der Buttons der nicht sichtbaren Ansichten auf 0, wodurch die "inaktive" Grafik angezeigt wird. Jedoch ist das ja auch eine Objektänderung, wodurch das Makro erneut schalten würde, und die eigentlich weggeklickte Ansicht wieder aktiv werden würde usw. Sprich, ich lande in einer Endlosschleife.

Frage: Wie hast du das Problem gelöst, beim Klick auf die jeweilige Grafik ein Makro auszuführen, die anderen Symbole inaktiv zu schalten und nicht in einer Endlosschleife zu landen? Geht das nur über ein weiteres, separates Objekt als "Ansichtenstack"?

VG - Joesch
System: RaspberryMatic auf Raspberry Pi 3 Model B Rev 1.2 (rpi3) mit RPI-RF-MOD (4.4.22)

Benutzeravatar
squeeezer
Beiträge: 545
Registriert: 17.07.2006, 00:00
Wohnort: Idstein

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von squeeezer » 23.01.2008, 23:37

joesch hat geschrieben:Beim Schalten der Ansichten/Navigation hast du vermutlich ein Objekt mit 2 Zuständen definiert und jedem Zustand die entsprechende Grafik zugeordnet (?)
ganz genau :-)
Um nun beim Klick auf die jeweilige Grafik eine Aktion zu starten, habe ich die dahinterliegenden Objekte "Umschalten bei Mausklick" und "Ausführen bei Änderung" definiert.
"ausführen bei änderung" ist nicht erforderlich, da du die ansichten ja sowieso mit mausklick umschaltest. in den jeweiligen makros des schalters (objekt) definierst du alle anderen schalter auf "aus". da du eben _nicht_ "ausführen bei änderung" aktiviert hast, wird das makro dann nicht ausgeführt.
... squeeezer

joesch
Beiträge: 789
Registriert: 03.02.2007, 14:57
Hat sich bedankt: 64 Mal
Danksagung erhalten: 2 Mal

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von joesch » 24.01.2008, 16:19

squeeezer hat geschrieben:... da du die ansichten ja sowieso mit mausklick umschaltest. in den jeweiligen makros des schalters (objekt) definierst du alle anderen schalter auf "aus". da du eben _nicht_ "ausführen bei änderung" aktiviert hast, wird das makro dann nicht ausgeführt.
Das funktioniert bei mir nicht so. Ein Klick auf das jeweilige Symbol ändert zwar dessen Objektzustand, jedoch wird das hinterlegte Makro nicht ausgeführt. Im konkreten Fall möchte ich den Indexwert eines anderen Objektes auf einen bestimmten Wert setzen, das Objekt nimmt diesen Wert jedoch nicht an.

Folgendes schwebt mir vor:
Ich möchte über die Navigations-Icons auch Zustände innerhalb der jeweiligen Ansicht kennzeichnen. Also z.B. "Gefahr".
- Ist die zugeordnete Ansicht nicht aktiv, erscheint in diesem Fall z.B. der Navigationsbutton "grau", jedoch mit rotem Rand.
- Ist die zugeordnete Ansicht aktiv, dann erscheint der Navigationsbutton mit farbigem Symbol und rotem Rand.
- Ist die zugeordnete Ansicht aktiv und besteht keine Gefahrenmeldung, erscheint der Navibutton mit farbigem Symbol ohne rotem Rand.
usw.

Dazu habe ich für die Navigationsbutton Objekte mit einer entsprechenden Anzahl von Zuständen definiert und den jeweiligen Grafiken hinterlegt.
Das Programm weist beim Start allen Objekten bis auf das der Startansicht den Wert 0 zu, so dass bei allen Button die "nur grauen" Symbole erscheinen.
In jedem Navigationsobjekt ist als Makro festgelegt, dass ein Unterprogramm ausgeführt wird, welches zunächst alle Objektzustände auf 0 (einschließlich des angeklickten und zuzüglich eines Offsets für die umrahmten grauen Symbole) setzt. In jedem Makro wird danach die entsprechende Ansicht aufgerufen und der eigene Objektwert so gesetzt, dass als Navigationsbutton der mit den farbigen Symbolen für den Zustand aktiv gesetzt wird.

VG - Joesch
System: RaspberryMatic auf Raspberry Pi 3 Model B Rev 1.2 (rpi3) mit RPI-RF-MOD (4.4.22)

Benutzeravatar
squeeezer
Beiträge: 545
Registriert: 17.07.2006, 00:00
Wohnort: Idstein

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von squeeezer » 25.01.2008, 11:40

moin ...

ich poste mal das makro, welches ich zum umschalten verwende:

Code: Alles auswählen

wenn NAVMedia = "an" dann
   aufrufen(MAKROAudioTag)
   ansicht("Media")
   NAVGrundriss := "aus"
   NAVGrundrissEG := "aus"
   NAVGrundrissUG := "aus"
   NAVGrundrissAussen := "aus"
   NAVBereiche := "an"
   NAVProtokolle := "aus"
   NAVKlima := "aus"
   NAVSicherheit := "aus"
   NAVMedia := "an"
   NAVNetzwerk := "aus"
   NAVSteuerung := "aus"
   NAVBewohner := "aus"
   NAVLicht := "aus"
   NAVRollladen := "aus"
   NAVSystem := "aus"
   NAVTemperatur := "aus"
   NAVApplikationen := "aus"
   aktivieren(OBJAudioStatus)
sonst
   warte("00:00:01")
   NAVMedia := "an"
endewenn
hierbei ist lediglich "ausführen bei eingabe" aktiviert.

die Objekte fangen bei mir alle mit "NAV" an und haben meist zwei zustände. ich habe aber eine ausnahme: ein button namens exit. dieser hat mehrere zustände: oberfläche schliessen, rechner-neustart, rechner-neustart mit löschen der variablen ... die verschiedenen zustände erreiche ich durch mehrmaliges antippen des buttons bis zur gewünschten funktion. durch die warte-anweisung am anfang wird das makro erst mit verzögerung ausgeführt:

der code hierfür ist:

Code: Alles auswählen

warte("00:00:03")
wenn NAVExit = 0 oder NAVExit = 4 dann
   NAVExit := 0
   verlassen
endewenn
wenn NAVExit = 1 dann
   NAVExit := 0
   display(0)
endewenn
wenn NAVExit = 2 dann
   NAVExit := 0
   starte(MAKRONeustart)
endewenn
wenn NAVExit = 3 dann
   NAVExit := 0
   starte(MAKRONeustartWerteLoeschen)
endewenn
vielleicht hiflt dir das weiter ...

die idee mit den zustandsanzeigen über den button find ich übrigens gut ...

viele grüße ...
... squeeezer

joesch
Beiträge: 789
Registriert: 03.02.2007, 14:57
Hat sich bedankt: 64 Mal
Danksagung erhalten: 2 Mal

Re: Mein Redesign ist fertig, hier das Ergebnis :-)

Beitrag von joesch » 26.01.2008, 09:55

Ebenfalls Moin!
squeeezer hat geschrieben:hierbei ist lediglich "ausführen bei eingabe" aktiviert.
Das war der entscheidende Hinweis. Diese Option hatte ich voll übersehen. Danke!

Die Exit-Lösung mit der Warteanweisung ist übrigens clever gelöst.

VG - Joesch

Antworten

Zurück zu „Projektvorstellungen“