|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2005
Messaggi: 464
|
raspberry e lettura registri
sto pilotando la mia domotica con minimalmodbus.
sto usando degli script in python per leggere e scrivere i registri. funzionano perfettamente collegati a pagine internet.. quello che voglio fare è che nella pagina internet mi aggiorni ogni 2 secondi le letture dei registri. cosa si potrebbe fare? usare un java per aggiornare le pagine.. oppure creare un demone in pyton? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2002
Messaggi: 2511
|
Prova con un micro web server, tipo flask .
Se cerchi ci sono 2/3 micro framework carini per pagine dinamiche con micro web server incorporato, tipo flask / bottle / pyramid da far girare su gunicorn con un impatto di risorse minimo. Ultima modifica di eaman : 07-05-2014 alle 13:26. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 1999
Città: Padova
Messaggi: 561
|
Se hai la pagina internet scritta in html/php esiste la funzione per fare il refresh ogni n secondi....
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2005
Messaggi: 464
|
si la pagina è in php..
il fatto è che magari se sto navigando nella pagine e questo continua refresharmi la pagina… non è bello no? è una pagina immagina con tanti pulsanti per le lampade quindi verde se è accesa e rossa se è spenta. vorrei tenere questi pulsanti aggiornati |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Feb 2002
Messaggi: 2511
|
Ma non avevi detto che lavoravi in python?
Cosa fai, fai girare un intero webserver con php per una pagina su un device embedded? ... - https://www.google.it/search?client=...bserver+python |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: May 2005
Messaggi: 464
|
devo lanciare un file.py
sono riuscito a farlo con una pagina .php ma vorrei farlo senza refresh e in trasparenza con jscript il pulsante in html <form action="file.php" method="get"> <input type="submit" value="luce" id="luce" style="height:23px;width:150px"/><br> </form> il file "file.php" <?php $param1 = '400'; #numero registro $param2 = '1'; #bit della word in questo caso %MX400.1 $command= "python scrivi.py"; #nome del file python che scrivera' sul modbus $command .= " $param1 $param2 2>&1"; #crei la stringa da passare al python $pid = popen( $command,"r"); #passa la stringa al python pclose($pid); #chiude il processo...credo passthru("cat /var/www/pagina.html"); #ritorna alla pagina iniziale da cui hai schiacciato il bottone ?> come si può fare in un modo migliore?? |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2005
Messaggi: 464
|
non capisco il motivo…
il file python non mi viene lanciato da php se lo eseguo a mano sul terminale funziona invece con il file php non funziona.. come mai? forse ci vuole qualche permesso? |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Feb 2002
Messaggi: 2511
|
$command= "python scrivi.py"; #nome del file python che scrivera' sul modbus
...di sicuro qua bisogna che ci metti il path assoluto per l'interprete python. |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: May 2005
Messaggi: 464
|
ok stasera provo.
intanto, allora inquadro brevemnte la situzione con un esempio di pagina web ho un server debian web collegato alla domotica di casa. la pagina web in questione ha 5 link con 5 icone affianco che indicano se è accesa o spenta LUCE SALA (icona) LUCE INGRESSO (icona) LUCE CUCINA (icona) LUCE STANZA (icona) allora ho 2 script.. uno scrive i registri con python, e l'altro che li legge però sulla pagina web li voglio vedere sempre aggiornati.. quindi chiedo a voi qual'è la strada migliore 1) creare un python che legge ogni 2 secondi e scrive in un DB i registri, poi nella pagina web fare in modo che ogni secondo il java controlli il DB e aggiorni le icone. 2) non fare il database e ogni 2 secondi il java lancia il python che legge i dati e aggiorna la pagina che fare?? |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:14.



















