Beiträge von diskus-tempel

    guten morgen ,

    ich verstehe diese script schnipsel nicht ..

    ich möchte ja nur aus der "config" datei lesen vom python script aus .. das python script soll nichts in die datei schreiben .

    mir ging es darum meine zeit angaben in zb. zeit.txt rein zu schreiben und python soll beim start des scripts einfach die txt abfragen mit den zeit einstellungen . und mit diesen durch starten

    ich verstehe in den schnipsel nicht das mit dem schreiben !

    lg

    hi ja war mit absicht um etwas in erfahrung zu bringen .

    ich muss ja etwas in die haupt python datei schreiben und etwas in die datei zb zeit.txt

    import pickle

    #Zeiten speichern

    Code
    licht_wohnen = {l1:"06:00", l2:"18:30"}
    pickle.dump(licht_wohnen,open("C:\\Test\\test.p","wb")

    das oben in das txt/py file ?

    #Zeiten laden

    Code
    lade_lichter = pickle.load(open("C:\\Test\\test.p","rb"))

    und das hier dann an stelle der jetzigen variable ?

    sehe ich das so richtig ?

    toml sieht auch brauchbar aus und ist deutlich umfangreicher als pickle.

    hab das mal in dein geschriebenes geschrieben um besser zu verstehen

    lg

    Hallo zusammen ,

    Ich habe mir ein Script gemacht in dem ich eine Zeitschaltung habe , nun wollte ich mir eine art. config datei erstellen . nur komme ich nicht weiter !


    ich habe im zeit.py folgendes


    #licht wohnen

    l1 = "06:00"

    l2 = "18:30"

    in diesen script läuft es ohne probleme mit ein und aus schalten

    mein vorhaben ist aber das ganze nun aus einer config datei zu laden zb. licht_zeiten.py oder .txt

    und in dieser datei sollten nun die variablen stehen und von dem zeit.py gelessen und übernommen werden .

    dies muss nur bei start des scripts passieren , da ich nach änderungen eh mein script neu starte

    mir geht es nur darum !

    das ich eine datei mit licht zeiten habe und eine mit anderen schaltzeiten . um nicht im eig. script alles ändern zu müssen

    hoffe ich habe das halbwegs gut erklärt was ich den vor habe

    und hoffe auf hilfe

    lg

    Hallo zusammen ,
    erstmal danke für die infos .

    ich habe es noch nicht ohne sleep´s probiert , diese habe ich eigentlich eingebaut , damit der pi auch die möglichkeit hat zu verschnaufen , und weil ich 2 weitere python programme am laufen habe . die ebenfalls im shell script eingebunden sind

    der tipp mit dem überflüssigen sudo , das dachte ich mir schon fast :/

    die shell scripte brauch ich ja dann auch nicht mehr wenn ich mir eeinen webserver via python baue ? richtig

    also ich arbeite eigentlich auch nur mit python scripten , wenn die steuerung über einen python websocket besser wäre , dann werd ich mich diesbezüglich mal einlessen .. ist es da dann auch möglich einzellne prozesse nur zu killn ?

    also python prozesse

    und wie sieht es dann aus mit dem hängen des browsers aus?

    wäre das problem dann auch gelöst ?

    liebe grüße aus nürnberg

    <button name="sid">starten </button><br> variable anpassen


    <td><a href="<?php print($_SERVER['PHP_SELF']); ?>?sid=start">schtarten</a></td> variablen anpassen

    mit folgenden befehlen konnte ich in mein webinterface prozesse starten via php

    ich starte jedoch über shell script mein python programm da ich ebenfalls probleme hatte das python starten wollte

    aber mit den start von ein shell script hats wunderbar geklappt

    grüße

    Hallo zusammen ich hab mal wieder eine Frage bei der ich etwas hilfe benötige .

    ich habe einen Raspi 3 mit apache2 und php

    auf diesen 2 python programme diese laufen auch ordenlich beim start über konsole zb

    sudo python test1.py

    ich habe mir ein mini interface gebaut bez. bin drüber .

    einmal die funktion den raspi neu zu starten und eben das besagte programm ( dies mach ich mit start_Stop.sh )

    script leg ich dann mit bei

    das ganze python programm ist für meine solar anlage

    mein problem ist wenn ich es starte über meinen Browser (php) dann läd die seite ewig und macht nichts mehr , obwohl der prozess ausgeführt wurde

    was kann ich da machen =?

    code von meiner config.php (includet datei)

    PHP
    <?php 
    if (isset($_POST['solar']))
    {
    shell_exec("sudo /home/pi/./solar.sh");
    }
    ?>

    Code von meiner solar.php

    Code
    <center>
      <form method="post">
        <button name="solar">solar-Neustart</button><br>
        <a href="index.php?page=ausloggen">
                    Ausloggen
    
    </center>

    und hier noch die solar.sh die python killt und eben das programm neustartet

    Bash
    #!/bin/bash
    
    sudo killall python 
    sleep 5
    clear 
    
    cd /home/pi
    sudo python solarsteuerung.py &
    sleep 15
    exit

    könnt ihr mir helfen ?

    wenn ich den Browser schliese und neu öffne und mich neu einlogge auf meiner seite dann geht wieder alles

    aber auch nur dann wenn ich ohne browser schliesen das mach dann läd die seite ewik und es passiert nix

    lg aus nbg

    Ich habe mir eine Steuerung zu Heizung von Solar Kollektoren Gebastelt via Python und einen Display 2004

    und bin sehr zufrieden , da dies nur ein kleines programm wurde mit abfragen von sensoren und ansteuern der relais

    und das läuft bei mir in der endlosschleife ..

    ich habe auch nicht so viel ahnung von programmierung und hatte es ohne nur eine ahnung von python zu haben in max 1 woche alles fertig gehabt bis dato läuft meine solaranlage über den raspi ohne probleme

    lg

    hallo meigrafd

    danke zu deiner Antwort !

    ich bin kein php scripter und versuche mich in der ganzen sache , ob jetzt aufbau usw gut oder schlecht ist lass ich mal so stehen , ich bin ja schon froh irgenwas im ganz zu bekommen
    was ich denoch nicht verstehe ist bei dem freehost würde es anzeigen auf den pi nicht also denke ich liegt es ja wohl an dem pi , bez. an php selbst . oder dessen beider configen !

    lg

    Zitat von &quot;Masterkennie&quot; pid='301399' dateline='1506522072'


    sven: Du solltest die http.conf des Apaches mal anfassen und DISPLAY_ERRORS auf E_ALL setzen. Dann werden dir Fehlermeldungen angezeigt anstatt dass dein Interpreter mit einer weißen Seite stoppt. Man sollte aber, wenn die Website in den Produktivbetrieb geht - also öffentlich einsehbar/verwendbar wird - DISPLAY_ERRORS wieder auf NONE setzen.

    Ich komme da immer durcheinander, also entweder in der Apache-Conf oder in der PHP.INI MUSS Error-Reporting auf E_ALL gesetzt werden. Dann siehst du einfach mehr was Synthaxfehler usw. angeht. Versuch das erst mal.

    Code
    error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

    ist in der php.ini ich finde aber keine error log in var


    doch diese ist drin , und diese funtzt auch auf den free host server , nur das ich da die daten meines systems ned angezeigt bekomme
    Automatisch zusammengefügt:
    hier die selben datein , er zeigt fehler an is klar da er ned auf mein raspi zugreifen kann , aber er würde sie anzeigen

    link hier zum free hoster

    hier

    ich Poste jetzt mal die Codes!

    die index.php sieht wie folgt aus (aktuell)
    [code=php]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <?php

    $fileToInclude = "home.php";


    if (isset($_GET["site"]))

    {

    $site = $_GET["site"];

    if (strlen($site) != 0)

    {

    if ($site == "home")

    $fileToInclude = "home.php";


    if ($site == "sys_inf")

    $fileToInclude = "system.php";
         
       
    }

    }

    ?>


    <html xmlns="http://www.w3.org/1999/xhtml">


    <head>

    <meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />

    <meta name="generator" content="Adobe GoLive" />

    <title>Diskus-Tempel NBG Diskuszucht Nürnberg</title>

    </head>


    <body>

    <table width="995" border="0" cellspacing="2" cellpadding="0" height="908">

    <tr>

    <td align="left" valign="top" background="backr.jpg">

    <table width="987" border="0" cellspacing="2" cellpadding="0" height="862">

    <tr height="260">

    <td width="179" height="260"></td>

    <td align="left" valign="top" width="794" height="260">

    <table width="771" border="0" cellspacing="2" cellpadding="0" height="128">

    <tr height="19">

    <td width="290" height="19"></td>

    <td height="19"></td>

    </tr>

    <tr>

    <td width="290"></td>

    <td align="center" valign="top"><br /><?php include ("aktuell.php"); ?>

    </td>

    </tr>

    </table>

    </td>

    </tr>

    <tr height="480">

    <td align="center" valign="top" width="179" height="480"><a href="index.php?site=home">Home</a><br />

    <strong>Nürnberg<br>

    </strong><br>
    <a href="index.php?site=sys_inf">System-Info</a><br />
    </td>

    <td align="left" valign="top" width="794" height="480">

    <table width="624" border="0" cellspacing="2" cellpadding="0" height="570">

    <tr>

    <td align="center" valign="top"><? include($fileToInclude); ?></td>

    </tr>

    </table>

    </td>

    </tr>

    <tr height="105">

    <td align="center" valign="top" width="179" height="105"></td>

    <td width="794" height="105"></td>

    </tr>

    </table>

    </td>

    </tr>

    </table>

    <p></p>

    </body>

    </html>
    [/php]
    dann die home.php sieht wie folgt aus (aktuell)
    [code=php]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


    <html xmlns="http://www.w3.org/1999/xhtml">


    <head>

    <meta http-equiv="content-type" content="text/html;charset=utf-8" />

    <meta name="generator" content="Adobe GoLive" />

    <title>home</title>

    </head>


    <body>

    <div align="center">

    <p><strong>Willkommen Sven ! </strong></p>
    <p><strong>Hier kannst du alles Steuern ! </strong></p>
    <p></p>
    <p>Infos zum System </p>
    <p><div align="center">
    <table width="481" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><?php
    $output = shell_exec(' gpio -g read 15');

    if( $output == 1 )
    echo "<p><img src='/icon/licht_off.jpg' /></p>";
    else
    echo "<p><img src='/icon/licht_on.jpg' /></p>";
    ?></td>
    <td></td>
    <td><?php
    $output = shell_exec(' gpio -g read 8');

    if( $output == 1 )
    echo "<p><img src='/icon/ww_off.jpg' /></p>";
    else
    echo "<p><img src='/icon/ww_on.jpg' /></p>";
    ?></td>
    <td></td>
    <td><?php
    $output = shell_exec(' gpio -g read 27');

    if( $output == 1 )
    echo "<p><img src='/icon/Solar_off.jpg' /></p>";
    else
    echo "<p><img src='/icon/Solar_on.jpg' /></p>";
    ?></td>
    <td></td>
    <td><?php
    $output = shell_exec(' gpio -g read 17');

    if( $output == 1 )
    echo "<p><img src='/icon/heizung_off.jpg' /></p>";
    else
    echo "<p><img src='/icon/heizung_on.jpg' /></p>";
    ?></td>
    <td></td>
    <td><?php
    #Mit folgender Zeile kann man die Verzeichnisse der angeschlossenen Sensoren auslesen
    #Für jeden Sensor der angeschlossen wird, wird automatisch ein Unterverzeichnis erstellt
    #cat /sys/bus/w1/devices/w1_bus_master1/w1_master_slaves


    $sensors = array("Anlage"=>"28-0416a43a81ff");


    foreach ($sensors as $room => $directory)
    {
    $temp = exec('cat /sys/bus/w1/devices/'.$directory.'/w1_slave |grep t=');
    $temp = explode('t=',$temp);
    $temp = $temp[1] / 1000;
    $temp = round($temp,2);
    $temp = number_format($temp,1,',','.');

    echo "<div class=\"box\">";
    echo "<div class=\"room\">".$room.":</div>\n";
    echo "<div class=\"temp shadow\"> ". $temp . " C</div>\n";
    echo "<div style=\"clear:both;\"></div>\n";
    echo "</div>";
    }
    ?></td>
    </tr>
    </table>
    <br />
    </div>
    </p>
    <p></p>
    </div>

    </body>


    </html>[/php]

    so wenn ich die home.php allein aufrufe geht diese aber sie wird nicht in der index angezeigt , bereich bleibt leer (weis)

    link hänge ich auch mal mit an

    link zu normalen index
    link zu home.php ( die eigentlich in der index angezeigt werden müsste

    Zitat von &quot;Tiieto&quot; pid='301384' dateline='1506518518'


    Du hast im obigen Teilscript in den if Anweisungen schonmal die geschweiften klammern vergessen..

    if(Bedingung == wert)
    {
    Auszuführender Code
    }

    Was steht denn in den zu icludierenden Files?
    Hast du „display errors“ auf „on“?

    Falls ja, gibt das schonmal diverse Hinweise, die du abarbeiten kannst...

    Gruß...

    http://diskus-tempel.myftp.org/webinterface/index.php
    ist meine startseite in dieser sollte ja die home angezeigt werden , ich probiere schon die ganze zeit herrum
    evtl hilf der link in der datei home.php steht derzeit das selbe wie ich nun auf der index php zum start rein geschrieben habe

    ich poste nachher nochmal alle dateien und deren codes ,

    ich denke das es an den webserver/php liegt den apache hat keine error logs


    lg sven

    Hallo zusammen ,

    Ich bin gerate dran mir ein kleines Webinterface zu basteln . um zb. Status der gpio usw anzuzeigen , im zb. status.php geht das auch alles super


    jetzt stehe ich aber vor einen problem !
    ich poste mal den teil des codes

    [code=php]<?php

    $fileToInclude = "home.php";


    if (isset($_GET["site"]))

    {

    $site = $_GET["site"];

    if (strlen($site) != 0)

    {

    if ($site == "home")

    $fileToInclude = "home.php";


    if ($site == "status")

    $fileToInclude = "status.php";
         
    }

    }

    ?>


    <html xmlns="http://www.w3.org/1999/xhtml">


    <head>

    <meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />

    <meta name="generator" content="Adobe GoLive" />

    <title>Diskus-Tempel NBG Diskuszucht N&uuml;rnberg Webinterface</title>

    </head>


    <body>

    <table width="995" border="0" cellspacing="2" cellpadding="0" height="908">

    <tr>

    <td align="left" valign="top" background="backr.jpg">

    <table width="987" border="0" cellspacing="2" cellpadding="0" height="862">

    <tr height="260">

    <td width="179" height="260"></td>

    <td align="left" valign="top" width="794" height="260">

    <table width="771" border="0" cellspacing="2" cellpadding="0" height="128">

    <tr height="19">

    <td width="290" height="19"></td>

    <td height="19"></td>

    </tr>

    <tr>

    <td width="290"><strong><font size="+2"> WEBINTERFACE</font></strong></td>

    <td align="center" valign="top"><br /><?php include ("aktuell.php"); ?>

    </td>

    </tr>

    </table>

    </td>

    </tr>

    <tr height="480">

    <td align="center" valign="top" width="179" height="480">
    <div align="center">
    <a href="index.php?site=home.php">Home</a><br />
    <br>
    Webinterfae<br />
    Start<br />
    <strong>AquaPC</strong><br />
    System Infos<br />
    Licht<br />
    Bel&uuml;ftung<br />
    Co2<br />
    Heizung<br />
    Wasserwechsel<br />
    <br />
    Aqua-Solar<a href="index.php?site=aquapc"><br />
    Solar Kollektor</a><br />
    W&auml;rme-Tausche <br />
    Heizk&ouml;rper<br />
    <br />
    <br />
    <br />
    <br />
    <br />
    <br />
    </div>
    </td>

    <td align="left" valign="top" width="794" height="480">

    <table width="624" border="0" cellspacing="2" cellpadding="0" height="570">

    <tr>

    <td align="center" valign="top"><? include($fileToInclude); ?></td>

    </tr>

    </table>

    </td>

    </tr>

    <tr height="105">

    <td align="center" valign="top" width="179" height="105"></td>

    <td width="794" height="105"><font size="+2">&copy; Diskus-Tempel-N&uuml;rnberg (http://www.diskus-tempel.myftp.org)</font></td>

    </tr>

    </table>

    </td>

    </tr>

    </table>

    <p></p>

    </body>

    </html>
    [/php]

    hier wenn ich die seite so auf einen free hoster liegen habe läd er zb. zum start home.php

    aber auf meinen raspberry leider nicht ich habe php5 und apache2 drauf

    bei der abfrage " ip-pi/index.php kommt stat die home datei eine leere seite und auch die links dazu klappen nicht
    obwohl die datei home.php mit text vorhanden ist

    hoffe ihr könnt mir helfen

    lg sven

    Zitat von &quot;4zap&quot; pid='301052' dateline='1506251759'


    Hallo Sven
    ich habs nicht mehr geschafft, hatte zu viel zu tun bevor ich abgehauen bin. Sorry...Hier an Bord sind aber echt pfiffige User die mir das gezeigt haben. Manul z. Bsp.
    Vielleicht kann er deine Textdateien auswerten und slope/intercept berechnen. Internet geht hier zwar, aber is echt ne Krücke.

    kein problem , wie gesagt ich kann auch etwas warten , da es kein zwang projekt ist .. lg sven

    Hallo zusammen ,

    ich bin mal wieder vor einen kleinen Problem und zwar folgendes

    ich habe im php eine abfrage des gpio 27

    [code=php]<?php $output = shell_exec(' gpio -g read 27'); echo "$output"; ?>[/php]

    hier gibt er mir eine 1 oder eine 0 aus das funzt auch

    wie kann ich aber den text umbauen zb das er sagt
    an oder aus

    oder zb. sogar ein icon einbauen damit er es als bild da stellt

    zb aus.jpg oder an.jpg
    das er das dann anzeigt was der status ist

    hoffe ihr könnt mir helfen
    lg sven