Ankündigung

Einklappen
Keine Ankündigung bisher.

Linknx Fragen ( Werteauslesen und Autostart )

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Groej
    antwortet
    Nabend,

    habs gerade hinbekommen. Muß so aussehen:

    #!/bin/sh
    var_temp=<#temp>
    var_hyd=<#hum>
    var_tempaussen=`echo $var_temp | sed 's/,/./'`
    printf '<write>
    <object id="temp_aussen" value=%s/>
    <object id="hyd_aussen" value=%s/>
    </write>\4' "$var_tempaussen" "$var_hyd" | netcat localhost 1028
    fi
    Die Daten werden jetzt auch ganz artig im KNXWeb2 angezeigt.

    Gruß

    Jörg

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi,

    linknx sendet die Werte nur auf den Bus, wenn sie sich ändern (oder hast Du die Objekte mit dem s-Flag definiert - dann solltest Du sie aber doppelt bekommen). Die Frage ist, ob sich die humidity jedesmal ändert...

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • Groej
    antwortet
    So bin jetzt ein ganzes Stück weiter.

    Hab jetzt folgendes Script

    #!/bin/sh
    var_temp=<#temp>
    var_hyd=<#hum>
    var_tempaussen=`echo $var_temp | sed 's/,/./'`
    printf '<write><object id="temp_aussen" value=%s/></write>\4' "$var_tempaussen" | netcat localhost 1028
    printf '<write><object id="hyd_aussen" value=%s/></write>\4' "$var_hyd" | netcat localhost 1028
    fi
    Die Daten <#temp> und <#hum> werden von der Software Cumulus von Sandysoft befüllt mit Daten von meiner Wetterstation.

    Hab jetzt noch ein Problem. Es wird nur der erste Wert $var_tempaussen übergeben an den Bus und der zweite nicht. Hat jemand eine Idee dazu?

    Gruß

    Jörg

    Einen Kommentar schreiben:


  • Groej
    antwortet
    den Autostart von LINKNX hab ich jetzt hinbekommen.

    Danke für die Hilfe hier.

    Einen Kommentar schreiben:


  • Groej
    antwortet
    Hallo an Alle,

    ich hab hier im Forum was gefunden um Daten über linknx auf den Bus zu senden.

    Hab folgendes Script geschrieben:

    #!/bin/sh

    printf '<write><object id="temp_aussen" value="<#temp>"/></write>\4' | netcat localhost 1028

    fi

    Dieses Script wird von meiner Wetterstation (WH3080) in eine Freigabe auf den virtuellen Debian Rechner gebracht. Das <#temp> wird beim schreiben in die Freigabe durch die Aussentemperatur ersetzt.

    Jetzt hab ich erstmal ein Problem und noch weitere.

    Die Temperatur wird von der Wetterstation mit einen Komma ausgegeben. Nach ein paar Test direkt in der Shell habe ich rausgefunden dass das Komma durch einen Punkt ersetzt werden muß um den write Befehl überhaupt sauber auszuführen. Im PHP weiß ich wie man das Komma durch einen Punkt ersetzt aber bei einen Linux Script weiß ich das nicht. Geht das überhaupt?

    Bin leider ein Linux Anfänger.

    Danke

    Einen Kommentar schreiben:


  • Groej
    antwortet
    Hallo Michi,

    ja beide Scripte stehen in diesen Verzeichnis. Muß Dein Script anders eingebunden werden bei Debian?

    Gruß

    Jörg

    Einen Kommentar schreiben:


  • Michixx
    antwortet
    Hallo Jörg,

    wo stehen den die beiden Scripte, unter /etc/init.d/ oder woanders?

    Gruß
    Michael

    Einen Kommentar schreiben:


  • Groej
    antwortet
    Hallo an alle,

    danke für Eure Antworten die bei mir neue Fragen bzw. Probleme mit sich bringen.

    @Michixx
    Ich habe versucht das Linknx Script ein zu setzen aber es bringt beim update-rc Fehlermeldungen das eibd fehlt. Ich habe aber ein eibd Startscript was auch läuft und genau so heißt wie bei Dir oder muß ich Dein eibd Script nehmen weil die beiden aufeinander abgestimmt sind?

    @Tru
    Genau da liegt mein Problem wie ich auf Linux Scripte ausführe. Bei Windows wäre das kein Problem für mich. Linux is irgendwie kompliziert in meinen Augen.

    Einen Kommentar schreiben:


  • Tru
    antwortet
    Zitat von Groej Beitrag anzeigen
    Dadurch kann ich die Wetterdaten aus einer Textdatei auslesen.
    Neben den beiden bereits erwähnte Möglichkeiten mit LUA Script oder Schicken auf den Bus mit groupwrite (benötigt allerdings Umrechnung auf den richtigen HEX Wert) besteht auch noch die Möglichkeit direkt einen write-Befehl an linknx zu schicken: sieht SourceForge.net: Interacting with Linknx - linknx.
    Ich persönlich würde es wohl mit einem periodisch ausgeführten Script und dem groupwrite Befehl machen.

    Gruss, Othmar

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi,

    LUA ist eine Scriptsprache, die in linknx eingebaut, aber nicht properitär ist.
    linknx -v in der Kommandozeile sagt Dir, welche LUA-Version Du hast. Unter The Programming Language Lua kannst Du dann über die Sprache nachlesen. Und im linknx-Wiki findest Du die linknx-Erweiterungen von lua (so 6-8 Befehle, glaub ich). Ich kann Dir das linkx-Wiki nur ans Herz legen - Deine Fragen lassen erkennen, dass Du es nicht gelesen hast.

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • Groej
    antwortet
    Hallo Waldemar,

    blöde Frage was ist LUA???

    Gruß

    Jörg

    Einen Kommentar schreiben:


  • lobo
    antwortet
    ... mal ganz verrückt: was würde passieren, wenn man die Persist-Dateien ändert? Werden die immer wieder eingelesen, oder nur beim Programmstart?

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi,

    bei linknx und Dateiverarbeitung fällt mir nur LUA ein - hab ich aber noch nicht probiert. Oder Du wertest Deine Wetterdatei per periodisch gestartetem script aus und sendest die benötigten Daten per groupswrite auf den Bus. Oder Du kannst Cumulus dazu überreden, beim lesen der Daten von der Wetterstation auch ein groupswrite zu machen...

    Mehr fällt mir jetzt auch nicht ein.

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • Groej
    antwortet
    Hallo,

    danke für Deine Antwort. Werde das Skript bei mir mal einpflegen. Ich hoff ich schaff das .
    Zu 2. ja genau.
    Die Wetterstation ist über USB an einen Rechner angeschlossen mit Cumulus von Sandysoft. Dadurch kann ich die Wetterdaten aus einer Textdatei auslesen. Das mach ich schon mit PHP um die Daten auf meiner Homepage anzeigen zu lassen. Anhand der Werte (Taupunkt innen und aussen) möchte ich dann den Fensteröffner und einen Lüfter über KNX ansteuern um die Garage zu belüften.

    Gruß

    Jörg

    PS: Warum fummelt man an dem guten Stück mit einen Ohm-Meter rum? *ich geh mal gleich in Deckung

    Einen Kommentar schreiben:


  • Michixx
    antwortet
    Hallo Jörg,

    Zitat von Groej Beitrag anzeigen
    1. Wie bekomme ich LINKNX dazu automatisch zu starten?
    ein Initscripts für linknk findest Du hier.

    Zitat von Groej Beitrag anzeigen
    2. Ist es möglich mit LINKNX Temperaturen oder Werte zu vergleichen die man aus einer Textdatei auslesen muß um damit Aktoren zu schalten?
    Hier verstehe ich einen Teil der Frage nicht richtig.
    Temperaturen und Werte kann man vergleichen.
    Leider ist mein Raspbeery gestern meinem Ohm-Meter erlegen.
    Deshalb kann ich dir aus dem Kopf herraus auch kein Beispiel dafür zeigen.

    Aber was meinst du mit, Textdatei auslesen um einen Aktor zu schalten?

    Gruß
    Michael

    Einen Kommentar schreiben:

Lädt...
X