Vai al contenuto
PLC Forum


Integrazione OpenHAB con Hplc


flavio.dallara

Messaggi consigliati


  • Risposte 161
  • Created
  • Ultima risposta

Top Posters In This Topic

  • flavio.dallara

    74

  • smoothhands

    63

  • del_user_56966

    19

  • ilgio80

    4

del_user_56966
Quote

 

Quanti registri riesco a leggere con HomePLC.Linux in 19msec?

Se in 500usec ne leggevo 8000 risulta... (19 * 2 * 8000)  =  304000 registri 

nello stesso tempo in cui col modbus rtu ne leggevo 10.

 

 

certo che tu passi da un punto all'estremo opposto... cosi mi demoralizzi i modbussiani...:lol:

Link al commento
Condividi su altri siti

flavio.dallara

Forse sono leggermente OT... ma Openhab ha la possibilità di caricare delle mappe? oppure la gui utente è quella e non si può cambiare... 

ovvio che essendo open source tutto è fattibile..

Link al commento
Condividi su altri siti

openHAB esce con la possibilità di utilizzare un qualsiasi browser

con l'interfaccia simil iOS (vecchio stile) oppure applicazioni native

per Android e iOS.

 

Se intendi una grafica personalizzata tipo la piantina di appartamento

su cui posizionare dei pulsanti per azionare luci, tapparelle o altro...

... openHAB rende disponibili api REST con le quali puoi integrarlo

con altri sistemi. Sono disponibili anche diverse modalità di server-push.

 

L'idea sarebbe magari di realizzare una propria interfaccia tramite

webserver php e posizionare dei controlli tipo pulsanti o etichette.

Quando l'utente interagisce con i controlli avviene lo scambio di

dati via api rest con openhab oppure sfruttare il server-push

per l'update delle informazioni.

 

Però non ho mai tentato.

 

Link al commento
Condividi su altri siti

Questo ad esempio potrebbe essere una funzione php per

inviare comandi a uno switch openHAB...

 

function sendCommand($item, $data) {
      $url = "http://192.168.1.121:8080/rest/items/" . $item;

      $options = array(
        'http' => array(
            'header'  => "Content-type: text/plain\r\n",
            'method'  => 'POST',
            'content' => $data  //http_build_query($data),
        ),
      );

      $context  = stream_context_create($options);
      $result = file_get_contents($url, false, $context);

      return $result;

 

Link al commento
Condividi su altri siti

Ciao

 

anch'io avevo preso un homeplc linux, ma la strada è abbastanza in salita, soprattutto per me che non sono uno sviluppatore web ma ci provo ogni tanto alla sera...

 

ho frequentato l'ultimo corso homeplc ad aprile che hanno fatto in Net, e ho visto la supervisione web che c'è pubblicata anche sul sito Net in homepage

 

si configura tutto da browser con il mouse in modo intuitivo, e quello che si vede da browser si vede anche su ipad e iphone con l'app HomeControl.

luci, tapparelle, termoregolazione, sicurezza, accessi, scenari... davvero un sacco di roba pronta

 

inoltre ci hanno dato anche un programma ladderhome "base building" con già gran parte del ladder sviluppato e una cartella piena di utility per lavorare più comodi con homeplc!!

 

per me che ho iniziato a giocarci ora è un grande aiuto quel ladder.

 

Link al commento
Condividi su altri siti

Ciao,

che lo sviluppo per homeplc.linux sia in salita è fuori di dubbio.

 

In questo caso però l'utente da sviluppare ha solo la logica di

openhab in quanto il sistema software è già pronto e

basta semplicemente estrarre i file dagli archivi tar.gz e

riavviare il dispositivo.

 

Openhab rende già disponibile le sue interfacce grafiche

per browser, android e iOS e ovviamente se viene richiesto

qualcosa di aggiuntivo va studiato a tavolino e magari qualche

volenteroso trova una soluzione che tutti possono adottare.

 

HomeControl e supervisione web, anche loro, fanno egregiamente ciò

per cui sono state realizzate ma la tipologia di utilizzatore è differente.

 

Con homeplc.linux e openhab se ti manca qualcosa e vuoi

dilettarti con linguaggi di programmazione nessuno ti vieta di

realizzare componenti e funzionalità che di base il sistema

non prevede.

 

 

 

Link al commento
Condividi su altri siti

flavio.dallara

Domani mattina dovrebbe arrivare il masterweb... finalmente! così comincierò ad installare openhab.

Grazie comunque 100 arti! mi ero anche informato per homecontrol ma volevo provare la strada opensource...

Link al commento
Condividi su altri siti

flavio.dallara
Quote

per me che ho iniziato a giocarci ora è un grande aiuto quel ladder.

Vedrai che con ladder ti verrà molto semplice sviluppare la tua logica. poi magari una volta digerito un po' il sistema ti verrà voglia di approfondire!

Link al commento
Condividi su altri siti

Se ti arriva davvero domani resisti un attimo alla

tentazione di installare subito openhab.

Bisogna prima verificare che l'ambiente linux

sia adeguato.

A parte controllare gli script di avvio e i componenti

che vengono avviati sarebbe opportuno aggiornare

la java vm embedded alla versione 7 e magari acquistare

una microsd da aggiungere se non l'hai già in casa.

Una da 4GB è pure sovradimensionata ma l'importante

è che sia molto veloce. Questo perchè se la memoria

dedicata al file system è come la mia da 256MB tutto

comincia a stare un pò stretto.

Infatti se il MasterWEB arriva corredato di software, come

il controller linux, ci sono installati alcuni software demo

e degli esempi che un pò di spazio occupano.

 

Poi bisogna cominciare a configurarlo... a partire dalle

connessioni di rete e quindi l'accesso da remoto attraverso

al router.

 

Tieni presente che sono procedure che ho fatto un

pò di tempo fa e che quindi senza appunti sotto qualche

tentativo in più richiederanno. Però sotto mano ho il

mio linux dal quale copiare quindi sono abbastanza fiducioso :lol:

Link al commento
Condividi su altri siti

flavio.dallara

Si finalmente è arrivato! ho una scheda da 16GB della sandisk extreme pro di una macchina fotografica che non uso più... pensavo di utilizzare quella..

Magari questa sera provo a metterlo in rete, installare la scheda SD e se riesco, ad aggiornare la java virtual machine. Poi magari guardo cosa c'è in flash...

mi sai dire se è in DHCP oppure ha un ip statico di default? User e passowrd di default?

 

Quote

Bisogna prima verificare che l'ambiente linux

sia adeguato.

Per adeguato cosa intendi? Devo verificare la versione del kernel?

Quote

A parte controllare gli script di avvio e i componenti che vengono avviati

Intendi dire che ci sono servizi avviati che non è necessario sfruttare e quindi possono essere eliminati dall'autoesecuzione? Se è così mi sapresti indicare quali sono? Forse è meglio che prima ci guardo e faccio un elenco di quello che è in autoesecuzione..

Link al commento
Condividi su altri siti

Quote

scheda da 16GB della sandisk extreme pro

Se è la stessa che ho trovato online (U3 C10) direi che va bene.

Io l'ho formattata come ext4.

 

Quote

mi sai dire se è in DHCP oppure ha un ip statico di default? User e passowrd di default?

Se esce di fabbrica come la versione controller l'ip di fabbrica è 192.168.2.65

e quindi è impostato come ip statico.

La prima volta che lo accendi puoi provare a connetterlo direttamente al pc con un

cavo di rete e modificare l'ip sul pc per metterlo nella stessa sottorete del masterweb.

username: root

password: root

 

comando iniziale per accedere in ssh

ssh root@192.168.2.65

 

poi dopo aver acceduto puoi andare subito a modificare le impostazioni di rete

per renderle compatibili con il tuo router.

Io ad esempio ho messo 

ifconfig eth0 192.168.0.250 netmask 255.255.255.0
route add default gw 192.168.0.254
#udhcpc -b

nel file s11-network sotto /etc/init.d

 

Quote

Per adeguato cosa intendi? Devo verificare la versione del kernel?

Mah... semplicemente se decidi di mettere openhab nel file system 

principale devi probabilmente spostare della roba.

Se invece vuoi provare (come ho fatto io) a installarlo sulla sd esterna

occorre formattare la sd e poi fare in modo che risulti sempre montata

di default all'avvio.

 

Quote

Intendi dire che ci sono servizi avviati che non è necessario sfruttare e quindi possono essere eliminati dall'autoesecuzione?

Ad esempio c'è il web server impostato per avviarsi... usando completamente openhab io ho disabilitato il lighttpd.

Poi ho disabilitato smarthome-demo e modificato gli indirizzi di rete nel file s11-network.

 

Ho anche aggiunto le seguenti righe nel file rcS

# mount filesystems
mount -a
mount -t ext4 /dev/mmcblk0p1 /mnt/microsd

in modo da "montare" ad ogni avvio la microsd con filesystem ext4.

Questi file di avvio ovviamente li trovi tutti nella directory /etc/init.d

 

Per quanto riguarda Java io ti consiglio per il momento di andare

direttamente a questa pagina e scaricare il file

ejre-7u75-fcs-b13-linux-arm-vfp-sflt-server_headless-18_dec_2014.tar.gz

Io l'ho estratto nella directory /usr/local/java in quanto la versione 6 che dovresti avere

installata di default la trovi nella directory principale e prima di cancellarla farei tutte le

prove con la versione 7. Mettendola nell'altro percorso non vanno in conflitto e poi

è un pò più elegante che avere tutto nella directory principale.

Quando è tutto a posto la versione 6 la puoi anche rimuovere.

 

Per fare in modo che Java 7 venga visto all'avvio ho aggiunto le seguenti righe

JAVA_HOME=/usr/local/java/ejre1.7.0_75
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH

al file profile che trovi nella directory /etc

 

Direi che hai già un bel pò di informazioni su cui lavorare.

Se qualcosa non va fa sapere.

 

PS. Un software come filezilla è d'obbligo.

Link al commento
Condividi su altri siti

ottimo... vai pure...

quando scompatti gli archivi tar.gz ogni file

dovrebbe andare già nella directory giusta.

quindi li metti tutti nella root della sd e poi

dai i comandi per estrarli.

 

prima di ricopiare gli script di avvio sotto

la directory /etc/init.d puoi fare dei test

avviando openhab a mano.

 

nella sua directory principale ci sono 2 file .sh.

uno viene utilizzato normalmente e uno in debug.

 

Partiremo con quest'ultimo in quanto ci permetterà

di controllare ci fosse qualche errore qua e la.

 

ti ho passato anche un altro file che dovresti copiare

nella cartella addon di openhab.

quel file va a sostituire una versione vecchia del binding homeplc

quindi, ovviamente, la versione vecchia va rimossa.

 

vai pure di start in debug.

Link al commento
Condividi su altri siti

Ci mette un pò ad avviarsi completamente... diciamo dai 3 ai 5 minuti.

Però alla fine puoi utilizzare un browser qualunque per accedere 

all'interfaccia grafica.

 

l'indirizzo è del tipo...

http://192.168.0.250:8080/openhab.app?sitemap=homeplc

ovviamente può cambiare l'indirizzo o la porta.

la sitemap dovrebbe essere quella in quanto ci sono già

dei file di configurazione minimi per lavorare con homeplc.

se tutto ti si avvia possiamo iniziare a ragionare su openhab

altrimenti vediamo di risolvere qulche inghippo di avvio.

Link al commento
Condividi su altri siti

flavio.dallara

Fatto! ho avuto un po' da penare con le permissions ma ora sono a posto. Interfaccia openhab visualizzata via web!

Nella Home mi appare solo setup dove all'interno c'è un controllo per abilitare o disabilitare il controllo dell'homeplc. Come credo sia giusto..

Ho controllato i messaggi del dubug (per quello che posso capire) e non mi sembra ci siano errori.

Comincio a creare la sitemap ? 

 

Link al commento
Condividi su altri siti

del_user_56966
Quote

che lo sviluppo per homeplc.linux sia in salita è fuori di dubbio.

 

diciamo che sono scale con inclinazione diversa...

ma pensare oggi che nel prossimo futuro le cose si semplifichino è solo un illusione...

avere più esperienza su queste tecnologie di automazione porterà forse se non a un buon incremento..  almeno al mantenere lo stesso grado di fatturato..

 

 

Link al commento
Condividi su altri siti

flavio.dallara

Essendo un master immagino vada posizionato a livello 2 del bus... che indirizzamento deve avere? 

cosa sono i bus indicati come user? 

di solito nei prodotti ladder c'era la scheda informativa... con questo non mi è arrivato nulla.. e non trovo nulla nemmeno sul fm.

 

 

Link al commento
Condividi su altri siti

del_user_56966
Quote

Essendo un master immagino vada posizionato a livello 2 del bus... che indirizzamento deve avere? 

 

intendi se lo hai riconfigurato per fare il Master Web?

Link al commento
Condividi su altri siti

Quote

intendi se lo hai riconfigurato per fare il Master Web?

Non gli è arrivato già come MasterWeb? :huh:

Deve riflasharlo?

 

Quote

ho avuto un po' da penare con le permissions ma ora sono a posto.

Perchè non hai chiesto? :lol:

Te l'avevo scritto che non mi ricordavo proprio ogni passaggio.

 

Quote

Nella Home mi appare solo setup dove all'interno c'è un controllo per abilitare o disabilitare il controllo dell'homeplc.

Ecco... quel controllo, se hai inserito il binding che ti ho inviato a parte non ti serve più in quanto permetteva di

fare una lettura iniziale dei registri utilizzati. Ti può comunque servire come esempio per capire in qualche modo come

gestire comandi e state update.

Al posto di comandi come START e STOP che vengono utilizzati dalla versione controller il MasterWEB può utilizzare

un comando chiamato INIT che effettua il refresh dello stato di tutti gli Item configurati.

 

Quote

cosa sono i bus indicati come user?

Sono porte seriali con gestione condivisa... se è come il mio dispositivo quella in basso è una RS232 mentre quella superiore, a fianco

delle porte HomePLC, è una RS485.

 

Quote

Essendo un master immagino vada posizionato a livello 2 del bus... che indirizzamento deve avere? 

Se come dice Aleandro "è effettivamente un MasterWEB" va a livello 2 perchè è un master e

poi l'indirizzo dovrebbe essere 18

 

Link al commento
Condividi su altri siti

Quote

Comincio a creare la sitemap ? 

Osta te???!!... subito con la sitemap? :superlol:

e cosa ci metti dentro?  :P

 

Prima devi far capire a openHAB quali sono le risorse che deve

trattare altrimenti nella sitemap non hai nulla da inserire... o meglio...

ti fa inserire i comandi e altro ma sono completamente svincolati

dalle risorse HomePLC e quindi... non succede nulla di interessante.

Link al commento
Condividi su altri siti

Allora... prima di tutto... i file che ci servono per partire sono gli item, le rule e le sitemap.

Ho usato il plurale perchè potrei averne più di uno per tipo. Si tratta di organizzazione.

Per cominciare basta uno per tipo.

 

Per editare questi file è sconsigliato un editor apposta che si scarica dal sito di openHAB.

Si tratta di openHAB Designer. Con filezilla ti copi in locale tutta la directory configuration

e poi la dai in pasto a openHAB designer che ti mostrerà tutto il suo contenuto.

Una volta modificati i file che ti interessano ricopi con filezilla solo quelli modificati.

 

Una alternativa, ma a mio avviso da utilizzare solo successivamente aver capito come

ragiona openHAB sotto sotto, è quella di sfruttare habmin che è una interfaccia web

già inserita nel pacchetto che hai ricevuto.

 

L'indirizzo è http://192.168.0.250:8080/habmin/index.html

ovviamente l'indirizzo ip e la porta possono cambiare nel tuo caso

 

 

Link al commento
Condividi su altri siti

flavio.dallara
Quote

Se come dice Aleandro "è effettivamente un MasterWEB" va a livello 2 perchè è un master e

poi l'indirizzo dovrebbe essere 18

 

Forse ho fatto un po' di casino.. nella mia testa immagino ciò:

Openhab gira sul kernel linux del "modulo" che poi per parlare tramite Xcomm con Homeplc deve essere connesso al bus. giusto?

Immaginavo che dovendo essere xonnesso al bus lui debba avere un indirizzo.. e debba essere collegato a livello 2. 

Poi non so se questo voglia dire riconfigurarlo come MasterWeb...

 

Quote

Perchè non hai chiesto? :lol:

 

Dove sta il divertimento allora..:P e poi qualcosa dovrò pure imparare... :wallbash:

 

Quote

Sono porte seriali con gestione condivisa...

Che tipo di utilizzo potrebbero avere? Scusami ma sono curioso... 

 

Quote

se è come il mio dispositivo quella in basso è una RS232 mentre quella superiore, a fianco

delle porte HomePLC, è una RS485

 

effettivamente anche il mio è così...lo avevo intuito.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora

×
×
  • Crea nuovo/a...