Naja, achte mal in der Variablenliste bei der Variable „LCN_Summe_TesT_Integer“ auf die Update-Time → die sollte sich schon ändern. Der Wert der Variablen (mithilfe von $Summe1) jedoch nicht, da du keinen neuen Wert setzt :rolleyes:
boah, ein Anfänger … sieht viel einfacher aus - Danke
Einen noch, dann ist gut (für heute):
Wenn ich jetzt die „echte Summe“ auswerten will, müsste ich bei false das gleiche „Spielchen“ mit -1 machen, richtig? Oder fehlt mir da wieder eine Initialisierung?
Weitere Sensoren sollten per copy/paste nicht das Problem sein …
Ich programmier grad ein Modul, dass du dann ganz simpel mit einem PHP-Script bedienen kannst. Für dies Modul ist eine Adminkonsole geplant, die dann per LAN angebunden auf einem anderen Rechner läuft. Die reagiert, wenn sie gestartet ist, dann auf deine Hotkeys und du kannst damit IPS Befehle geben. Das werd ich, wenn es fertig ist kostenlos zur Verfügung stellen. Download über meine Webseite, wenn sie denn dann schon fertig ist, oder hier im Forum, so wie mein SMSWitch.
Eigentlich nicht. IPS ist zwar nicht ganz Media-unfreundlich, aber man kämpft schon ein bissel damit weil es eigentlich nur ein kleines Modul zum Audio abspielen gab. Mittlerweile gits aber ja auch schon ein Winamp-Modul.
So richtig ins Rollen kam das dann als Leute auch, so wie du, nach Raumbeschallung gefragt haben. Daraus hab ich dann meine Ideen für mein Media-Modul gezogen. Nachdem die Machbarkeitsstudien durch waren hab ich eine ausgedehne „Spielphase“ eingelegt. Dort sind dan solche Mini-Projekte entstanden wie das mit der DBox2.
Jetzt bin ich nen deutlichen Schritt weiter und progge (fast) jede freie Minute an dem Modul. Sinn und Zweck soll sein, in jedem Raum auf einfache weise seine Musikausgabe zu steuern. Und zwar so, das das Jeder hinbekommt und eben nicht nur eine Hand voll Technik-Freaks.
Mir schwebt halt soetwas vor:
Winamp_Play("Wohnzimmer", "Lordi - Hard Rock Hallelujah.mp3");
Winamp_Play("Schlafzimmer", "Podcast.Nachrichten");
// Vielleicht ja auch mal irgendwann
DreamBox_Message("Wohnzimmer", "Es regnet - hol die Wäsche rein");
Mittlerweile geht das aber schon über das alleinige abspielen von Musik hinaus. Aber mehr wird noch nicht verraten.
Als Event-Status habe ich OnChange gewählt (?).
Schaltet B4 ein wird 1 addiert, bei aus werden 3 subtrahiert (= beide aus) - logisch nachvollziehbar, aber nicht das was ich wollte (gebrauchen kann).
Als Endergebnis möchte ich eine auswertbare Summe erhalten, mit der ich je nach Wert (bei Änderung des Wertes) verschiedene Befehle auslöse. (1 an > A, 2 an > B, 1+2 an > C usw.).
Zu den letzten Schritten meiner ersten Übung würde also dann die Auswertung der Summe1 gehören (erste Planung mit 8 Statusmeldungen).
Das Lesen der Manuals empfinde ich als „trocken“ (learning by doing macht mehr Spaß). Es bringt mich auch derzeit nur zu der Auffassung, dass es eine Lösung gibt. Dem blutigen Anfänger fehlt es schon an den Suchbegriffen. Für Begriffserklärungen ist es durchaus hilfreich. Da ich aber so viele Begriffe nicht kenne, klicke ich mich immer „kreuz und quer“ (was meist in „Verwirrung“ endet).
Mit eurer Hilfe fällt es mir leichter.
Vielleicht würde es uns helfen wenn du uns erzählst was genau du vor hast…
so vielleicht?
// true, true, false, false (also 1 an und 2 an, Rest aus) ergibt "C"
// Testvariablen füttern
$Summe=0; // immer bei 0 anfangen, dann alle Stati prüfen
$Status1=true; // Buero AN
$Status2=true; // Bad AN
$Status3=false; // Küche AUS
$Status4=false; // Wohnzimmer AUS
// Ab hier wirds interessant
if ($Status1)
$Summe = $Summe | 1;
if ($Status2)
$Summe = $Summe | 2;
if ($Status3)
$Summe = $Summe | 4;
if ($Status4)
$Summe = $Summe | 8;
// Ausgabe
echo(chr($Summe+65)); // bei mehr als 4 Stati geht dir das Alphabet aus ;)
Auf Kurzschreibweise musst du selbst umbauen, denn davon bin absolut kein Freund. Und sooo viel kürzer ist sie auch nicht.
Die Kurzschreibweise ist für Anfänger absolut unleserlich
Danke, Toni - ich verstehe dein Prinzip
bis auf:
// bei mehr als 4 Stati geht dir das Alphabet aus
LCN kann aus max. 12 Statusmeldungen nur 3 Kommandos erzeugen. ALLE (12), EINIGE (1-11), KEINE (0).
Hier (IPS) kann ich auch die Kombination von z.B. Status 2+4 erkennen und auswerten.
Es gibt noch ein Beispiel von einem LCN-Kollegen aus dem Bus-Profi-Forum:
// wenn diese Bedingung erfüllt ist
if ($MxxxR1 == 1 and $MxxxR5 == 1 and $Mxxx.temp > 10)
1 {
echo "Relais 1 und Relais 5 sind angezogen und die Temperatur ist größer 10";
1 .....
1 }