flavio.dallara Inserita: 29 maggio 2016 Autore Segnala Inserita: 29 maggio 2016 Quote Per editare questi file è sconsigliato un editor apposta che si scarica dal sito di openHAB. Si tratta di openHAB Designer Sconsigliato a parte... avevo già installato openHab Designer avendo provato a connettere la stazione meteo netatmo.. è stato dopo questo test che mi era balzata l'idea di connettere homeplc.. Quote Osta te???!!... subito con la sitemap? Si forse ho accelerato un po' i tempi... da che parte comincio per leggere qualcosa da HPLC ? un minimo credo di aver capito la logica di openhab
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Cerco di chiarirti un pò la cosa. L'HomePLC.Linux è un dispositivo composto da due processori distinti. A livello linux si tratta di un ARM Cortex A8 mentre a livello domotico c'è un PIC di qualche tipo (almeno mi pare). Il concetto è che a livello domotico si comporta come un qualsiasi altro dispositivo del mondo HomePLC mentre in più ha una macchina linux che lo ingloba. Il processore ARM è connesso tramite qualche bus di sistema al processore domotico... posizionato sulla scheda principale. Il componente domotico e le sue risorse (vedi ad esempio la tabella dei registri) vengono visti a livello linux e interfacciati tramite driver di sistema più alcune librerie scritte in c (diverse librerie a seconda del linguaggio di programmazione). Nel nostro caso utilizziamo una libreria che rende disponibili alcune API per l'accesso ai registri della tabella di risorse HomePLC e che si interfaccia con Java. Il bello di questo approccio è che il sistema domotico non si deve preoccupare di accessi al bus HomePLC, richieste a master o slave ma semplicemente elaborare bit, byte e word della tabella in questione. Grossomodo come poi viene fatto col Ladder. A seconda del firmware che viene inserito nel processore domotico l'HomePLC.Linux si può comportare come Controller o come MasterWEB. Nel primo caso è lui che comanda tutto il sistema HomePLC mentre nel secondo caso la logica principale è quella del controller classico (comunque presente) e lui si occupa di interfacciare il sistema HomePLC all'utente e ad altri dispositivi tramite tecnologie web o sistemi come openHAB. Quindi andrebbe subito verificato con l'assistenza se tu hai installato il firmware per controller o per MasterWEB. E provvedere a un reflash nel caso sia necessario.
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Visto che hai già fatto delle prove con la stazione meteo Netatmo puoi tranquillamente integrarla con HomePLC e sfruttare le sue caratteristiche a tuo favore e ad uso e consumo della logica Ladder. Lo scopo di openHAB è proprio questo. Bene... supponendo che hai risolto il dubbio sul firmware domotico occorre spiegare come istruire il binding per HomePLC. Questo binding si trova tra il sistema openHAB e la libreria nativa con le API Java di cui parlavo prima. Il suo scopo è quello di creare tanti canali bidirezionali tra gli Item di openHAB e i registri della tabella delle risorse HomePLC. Quando devo scrivere sui registri si parla di "command" mentre quando leggo ottengo degli "state update". Il binding HomePLC accetta Item di tipo Switch, Contact, Dimmer e Number. Tra questi quattro, Contact, è l'unico al quale è inutile inviare comandi. Switch e Contact sono item che è possibile connettere a risorse HomePLC espresse in bit mentre Dimmer e Number vengono usati per byte, word, ecc. Se hai già lavorato in Ladder sai già come accedere alle risorse HomePLC e allora da qui alla configurazione degli itam il passo è breve.
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Dal wiki di openHAB puoi vedere che un item è definito come itemtype itemname ["labeltext"] [<iconname>] [(group1, group2, ...)] [{bindingconfig}] Itemtype sono gli Switch, Contact, Dimmer e Number che dicevamo prima. Itemname è una stringa qualunque, purchè non contenga spazi, che identificherà una particolare risorsa HomePLC. {bindingconfig} è quello su cui ci concentreremo inizialmente. Immaginiamo di voler definire un ingresso digitale di uno slave. La risorsa può essere ad esempio definita in Ladder con %IX5.3 o anche con %MX.... Con openHAB è analogo... Contact Pulsante_Cucina {homeplc="IX:5.3"} oppure Contact Pulsante_Ingresso {homeplc="MX:8.14"} a questo punto potresti già andare nella sitemap e aggiungere i due ingressi come... Switch item=Pulsante_Cucina label="Pulsante della cucina" Prova a inserire qualche ingresso HomePLC così vediamo se il sistema ad eventi funziona correttamente.
ilgio80 Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 scusate se mi intrometto in questa discussione... io sono rimasto indietro di un paio di anni.... quando con un raspberry ho fatto un sistema per interfacciarmi al hplc con RTU utilizzando il convertitore USB. facendo un demone python che continua ad interrogare l HPLC sullo stato dei registri. oraho visto questo openHAB. ma se prendo un master linux, questo openHUB ha tutto integrato? cioè l'interfaccia e devo solo settare imiei ingressi e uscite? oppure mette a disposizione solo le API e io devo ricrearmi tuta la programmazione per fare la APP?
del_user_56966 Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Quote ma se prendo un master linux, questo openHUB ha tutto integrato? cioè l'interfaccia e devo solo settare imiei ingressi e uscite? mi pare che sia tutto pronto devi sono impostare le regole (funzioni) della tua applicazione... in questo video viene spiegato chiaramente... chiaramente i tempi di accesso al sistema HomePLC ti cambiano drasticamente... passando dai secondi ai microsecondi... | ma d'altra parte le tecnologia non si misura solo con la potenza del Processore... ma considerando l'intera architettura di un sistema... Il Modbus RTU è un alternativa valida per il monitoraggio ma questo non lo rende ne innovativo ne performante... oggi ci sono soluzioni molto più potenti... come appunto questa!
ilgio80 Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 cioè da quel che ho capito... l openHAB sostituisce anche la programmazione con il ladder? mi sembra di aver capito che programma anche i pulsanti con openHAB è vero??
flavio.dallara Inserita: 30 maggio 2016 Autore Segnala Inserita: 30 maggio 2016 Quote openHAB sostituisce anche la programmazione con il ladder? Ni... A mio avviso la soluzione migliore è quella di mantenere la logica della domotica in ladder ( o script linux nel caso di HomePLC Linux ) ed utilizzare OpenHAB per l'interfaccia Web o APP da dispositivi mobili. Inoltre lo puoi utilizzare per scambiare dati con altri dispositivi compatibili OpenHAB via TCP/IP.
flavio.dallara Inserita: 30 maggio 2016 Autore Segnala Inserita: 30 maggio 2016 Quote Prova a inserire qualche ingresso HomePLC così vediamo se il sistema ad eventi funziona correttamente Si sono fermo un tantino prima... devo collegare il masterweb al bus... appena ho un minuto vedo di farlo... Quindi collego il bus sul morsetto bus1 e lui dovrebbe già avere l'ID 18 corretto? Lo dovrei vedere da ABS come tutti gli altri master? Non vedo switch per impostare l'ID del processore domotico.. o forse si fa dal device discovery...
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Quote ma se prendo un master linux, questo openHUB ha tutto integrato? cioè l'interfaccia e devo solo settare imiei ingressi e uscite? oppure mette a disposizione solo le API e io devo ricrearmi tuta la programmazione per fare la APP? Ha tutto integrato... interfaccia web, interfaccia nativa Android e iOS, supervisione/programmazione web tramite Habmin oppure tool di programmazione chiamato openHAB Designer (per Windows, Linux e Mac). Quote cioè da quel che ho capito... l openHAB sostituisce anche la programmazione con il ladder? Io ho acquistato un HomePLC.Linux (non MasterWeb) assieme a un HomePLC.Ladder... ...non ho mai attivato la licenza di LadderHome e non ho mai installato l'HomePLC.Ladder. Tutta la logica del mio appartamento è interamente realizzata con il linguaggio attualmente utilizzato da openHAB. Si tratta di Xtend ed è un dialetto Java. Questa logica è contenuta nei file di rule. Quote Ni... A mio avviso la soluzione migliore è quella di mantenere la logica della domotica in ladder ( o script linux nel caso di HomePLC Linux ) ed utilizzare OpenHAB per l'interfaccia Web o APP da dispositivi mobili. Dubito che qualche script linux possa essere interfacciato con openHAB... a meno che sia stato realizzato apposta. Sicuramente lo scenario pensato da Flavio è uno di quelli possibili. Si va dall'utilizzare semplicemente openHAB come interfaccia grafica (mediante MasterWEB) per la logica di un HomePLC.Ladder al completo controllo di una installazione utilizzando HomePLC.Linux come controller. Nel mezzo è possibile anche integrare logica del MasterWEB con logica dell'HomePLC.Ladder magari esplorando scenari che prima non erano realizzabili. Ne è un esempio l'integrazione con il dispositivo NetAtmo di cui parlava Flavio ma è possibile pensare anche a servizi web (quindi non dispositivi hardware). Quote mi sembra di aver capito che programma anche i pulsanti con openHAB è vero?? Lo fa si... e puoi riprogrammare i pulsanti senza ricompilare nulla. Basta cambiare qualche riga di testo nel file delle rule senza arrestare il sistema. Ovviamente l'HomePLC.Linux essendo il controller ha una autonomia maggiore mentre il MasterWEB deve in parte appoggiarsi alla logica Ladder.. Ovviamente le cose possono essere migliorate... magari per come viene gestita la programmazione col MasterWEB; ma sicuramente per chi ha già in mente di acquistare un MasterWEB per altri motivi, una prova con openHAB tanto per vedere come si comporta secondo me vale la pena di farla. E' tutto gratis.
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Quote Non vedo switch per impostare l'ID del processore domotico.. o forse si fa dal device discovery... No, non ne ha. Immagino si faccia dal Device Discovery. Io con la versione controller non ho avuto di questi problemi
ilgio80 Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 a saperlo prima... risparmiavo sul hplc.ladder, la licenza ladder e l etm3 un bel botto
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Può anche essere ma non è detto che ti avrebbe soddisfatto pienamente. L'ambiente ufficiale di programmazione è quello Ladder ed è anche quello che ti permette di gestire tutti i dispositivi HomePLC nelle versioni firmware più aggiornate. Compresa la biotermoregolazione. L'ETM3 lo uso comunque per programmare i dispositivi con Device Discovery e la supervisione tramite ABS è sempre necessaria. La versione HomePLC.Linux supporta la sua serie di dispositivi e solo con versioni di firmware compatibili. Quindi va valutato bene. Io avevo già intenzione di lavorare con quello e quindi ho accettato questo vincolo. Va detto comunque che in caso di acquisto di un particolare dispositivo non ancora supportato l'assistenza provvede, nel limite del possibile, ad integrarlo nel firmware dell'HomePLC.Linux. Attualmente le priorità della NET sono altre e quindi lo sviluppo di supporto per questo prodotto è limitato al solo necessario. La versione MasterWEB invece affianca la versione Ladder e quindi non elimini licenze e HomePLC.Ladder. Poi considera che questo binding per openHAB l'ho realizzato un anno fa... e c'è voluto un pò per aggiustare alcune cose. E ancora ce ne sarebbe da fare.
flavio.dallara Inserita: 30 maggio 2016 Autore Segnala Inserita: 30 maggio 2016 Quote Dubito che qualche script linux possa essere interfacciato con openHAB... Da profano di Homeplc Linux ho spiegato male la cosa... quello che intendevo era proprio quello che Smoothhands è riuscito a spiegare egregiamente.. Toglimi una curiosità per capire un po' il mondo Hplc Linux. La programmazione della logica ( quello che verrebbe fatto in ladder ) se non volessi usare openhab come nel tuo caso... dove viene fatta? Immagino con quello che io sbagliando ho chiamato "script" dentro al PLC con qualche tipo di linguaggio...
flavio.dallara Inserita: 30 maggio 2016 Autore Segnala Inserita: 30 maggio 2016 Quote Poi considera che questo binding per openHAB l'ho realizzato un anno fa... e c'è voluto un pò per aggiustare alcune cose. E ancora ce ne sarebbe da fare. Quindi l'hai realizzato tu il binding in java? Complimenti!
smoothhands Inserita: 30 maggio 2016 Segnala Inserita: 30 maggio 2016 Beh... con script solitamente ci si riferisce si a certi tipi di programmi ma realizzati in linguaggi chiamati di scripting. Linguaggi interpretati... cioè sorgenti che vengono dati in pasto ad altri programmi (interpreti) che ne eseguono il codice. Nel caso di linux ricadono gli script di shell, ovvero programmi anche abbastanza complessi il cui ambiente di esecuzione è la riga di comando. Comunque non credere, con HomePLC.Linux, ho appreso quello che mi serviva per andare avanti. Saper destreggiare un embedded è un'altra cosa. Se non vuoi usare openHAB hai a disposizione C/C++, PHP, Python e ovviamente Java. Anche una versione particolare di Basic di cui però si è persa traccia. Nel caso di versione con display ha senso anche sfruttare le librerie QT per l'interfaccia grafica. In eventuale programma scritto con questi linguaggi si interfaccia alla tabella delle risorse tramite opportune librerie rilasciate dalla NET. In parte, quella che sfrutta openHAB, è stata riscritta per consentire una gestione ad eventi della comunicazione nella direzione HomePLC --> openHAB. Il programma che vai a scrivere deve contenere la logica che intendi implementare e nel caso più semplice si tratta di un loop infinito dove leggi gli ingressi, confronti i valori e applichi i comandi. Se ci pensi, come logica, è simile al ladder.
smoothhands Inserita: 31 maggio 2016 Segnala Inserita: 31 maggio 2016 Inizialmente era nato con un'altra idea in testa. Cioè di realizzare un sistema autonomo. Poi guardando bene openHAB era una soluzione molto intelligente che offriva e offre molte funzionalità. Allora perchè non integrare il sistema HomePLC con tutti gli altri supportati da openHAB? La primissima versione prevedeva di installare openHAB su un dispositivo separato: come un raspberry pi. In questo modo il trasferimento dei dati tra raspberry e HomePLC.Linux avveniva via rete. L'elaborazione dell'evento avveniva sempre in modo nativo nella libreria per linux quindi poi inviato ad openHAB via rete. In questo modo la lentezza del trasferimento via rete non pregiudicava più di tanto le prestazioni. Tra l'altro questa sarebbe l'applicazione ufficialmente accettata dalla community openHAB. Tutti gli altri binding sono realizzati così. Poi mi si è fatto notare che HomePLC.Linux sarebbe stato in grado di eseguire una installazione di openHAB direttamente e allora è nata una versione di openHAB leggermente modificata per avviarsi senza errori su HomePLC.Linux. Per ultimo è stato realizzato la versione per MasterWEB del binding, che lavora in modo leggermente differente, e che nel tempo è stato migliorato grazie a qualche test gentilmente eseguito da alcuni utenti.
smoothhands Inserita: 31 maggio 2016 Segnala Inserita: 31 maggio 2016 La "magia" comunque la fa openHAB. La quantità del codice del binding non è poi così elevata. Il più è stato capire dove mettere le cose... e poter copiare da altri sorgenti ovviamente ha aiutato.
ilgio80 Inserita: 31 maggio 2016 Segnala Inserita: 31 maggio 2016 nella prima versione con il raspberry... cosa che ho anche io e comunico con il convertitore USB via RTU tu come comunicavi tras raspberry e hplc?
smoothhands Inserita: 31 maggio 2016 Segnala Inserita: 31 maggio 2016 Comunicavo inizialmente tramite socket e scambio di dati mediante connessione TCP di pacchetti binari in Java. Poi ho fatto della prove tramite protocollo CoAP. In ogni caso era richiesto l'HomePLC.Linux. Non direttamente con la versione Ladder.
del_user_56966 Inserita: 1 giugno 2016 Segnala Inserita: 1 giugno 2016 Quote In ogni caso era richiesto l'HomePLC.Linux. HomePLC Linux ha anche una libreria Modbus TCP e mi pare sia utilizzabile sia come Server che in modalità Client....
flavio.dallara Inserita: 16 giugno 2016 Autore Segnala Inserita: 16 giugno 2016 Ciao Smoothhands.. non sono scappato, ma non sono ancora riuscito a collegare il masterweb al bus... dovrei prendermi qualche giorno di ferie... Nel frattempo stavo provando qualche binding... sono riuscito a collegarlo alla stazione meteo netatmo e stavo tentando di collegarlo ai condizionatori daikin emura. Credo di avere qualche problema con la versione di java... secondo te se lo aggiorno alla versione 1.8 ho poi problemi con il binding homeplc?
smoothhands Inserita: 17 giugno 2016 Segnala Inserita: 17 giugno 2016 Perchè pensi di avere qualche problema con la versione di Java? Il binding DAIKIN richiede che sia installato il KKRP01A Controller sulle unità. Tempo fa eri obbligato ad utilizzare il tool JCreate per realizzare una versione custom del JRE che funzionasse su embedded. Adesso pare che non serva più. Il binding homeplc non dovrebbe aver nessun problema con la versione 1.8 Tieni comunque presente che openhab è dato per funzionante con la versione 1.7 di Java
flavio.dallara Inserita: 17 giugno 2016 Autore Segnala Inserita: 17 giugno 2016 Quote Il binding DAIKIN richiede che sia installato il KKRP01A Lo so, ma sul forum openhab vedo che si dovrebbe far funzionare anche con l'interfaccia wireless. ( Ovviamente ce l'ho installata ) https://community.openhab.org/t/http-commands-for-daikin-brp072a42-wifi-control-working/10314 Ho provato e non mi funziona... un tentativo era quello di aggiornare Java... Nell'articolo c'è un binding modificato per funzionare con le unità wireless.. Non riesco a vedere errori nemmeno sul file openhab.log Attraverso le API non uffciali vedo che l'unità mi risponde ma da openhab non funziona.. Quote Tieni comunque presente che openhab è dato per funzionante con la versione 1.7 di Java grazie
flavio.dallara Inserita: 17 giugno 2016 Autore Segnala Inserita: 17 giugno 2016 Forse sono veramente Off topic.... ma secondo te per capire ed analizzare il problema se volessi provare almeno ad accendere l'unità tramite le API non uffciali come dovrei impostare il comando "/common/set_control_info" ? http://192.168.X.X/"/common/set_control_info ... e poi? pow=1 ?
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora