smoothhands Inserita: 25 agosto 2014 Autore Segnala Inserita: 25 agosto 2014 Ciao Aleandro, per area IO intendevo i primi 400 registri. Comunque quali registri integrare nella gestione ad eventi può essere estesa a piacimento anche in un secondo momento integrando tutte le aree di memoria che si vuole. Sul concetto di registri ritentivi bisogna fare una precisazione e cioè che il mantenimento del valore è gestito programmaticamente. Probabilmente nella versione ladder è presente un microprogramma che realizza tale funzione mentre nella versione linux, con la libreria nativa standard, non è prevista ed è lasciata al programmatore l'onere di questa gestione. A questo punto penso che anche per quelli delayed valga lo stesso concetto. Sul funzionamento di quelli delayed comunque ho le idee confuse e non ho capito il loro funzionamento.
del_user_56966 Inserita: 25 agosto 2014 Segnala Inserita: 25 agosto 2014 ma quelli delayed su linux dato che non hai un ciclo classico dei PLC non ti servono...
smoothhands Inserita: 25 agosto 2014 Autore Segnala Inserita: 25 agosto 2014 (modificato) Mmmmh... Ora intuisco l'utilizzo dei registri delayed. Quel ciclo ripetuto più volte nella versione ladder alle volte non aiuta. Si, nell'HomePLC.Linux non c'è un ciclo uguale a quello della versione ladder. Con la libreria nativa classica però un ciclo infinito con internamente dei controlli del tipo IF... THEN... è la strada standard utilizzata, senza complicarsi troppo la vita, utilizzando un linguaggio di alto livello. Questo modo di procedere però mira semplicemente a realizzare la logica di controllo che si faceva in ladder con un nuovo linguaggio e con un ambiente inevitabilmente differente dovuto al passaggio Ladder->Linux (perdita dei registri ritentivi e delayed ad esempio...). Nulla vieta di realizzare un sistema completamente nuovo. Se venisse mai realizzato un sistema alternativo alla versione ladder infatti occorrerà un cambio di mentalità per chi volesse tentare la nuova strada. La modifica alla libreria nativa, sebbene sia un prototipo, consente di evitare completamente qualsiasi ciclo infinito con al suo interno tutta la logica di controllo. Modificato: 25 agosto 2014 da smoothhands
del_user_56966 Inserita: 25 agosto 2014 Segnala Inserita: 25 agosto 2014 Se venisse mai realizzato un sistema alternativo alla versione ladderinfatti occorrerà un cambio di mentalità per chi volesse tentare la nuova strada. Per quel che vedo sul mercato della Domotica ci sono quattro tipologie di attori ben precisi... A) quelli che hanno esperienza di automazione e a cui piace programmare in Ladder, FBD e altri linguaggi standard... quelli a cui piace la programmazione ad alto livello ma non piace il Ladder/FBD... e prevalentemente non hanno esperienza di automazione... C) Quelli che si trovano bene con entrambi i tipi di programmazione e hanno esperienza d'automazione D) quelli che non sanno ne programmare ne conoscono l'automazione... e non ci credereste mai... indovina qual'è la popolazione più elevata tra tutte queste...
smoothhands Inserita: 25 agosto 2014 Autore Segnala Inserita: 25 agosto 2014 Certo che un bel sistema che non richiede doti da programmatore e particolari conoscenze secondo me farebbe un figurone ;-)
del_user_56966 Inserita: 25 agosto 2014 Segnala Inserita: 25 agosto 2014 Ricorda però che nessun sistema configurabile potra mai eguagliare la libertà d'uso della programmazione... ma sicuramente se è valido farà un figurone senz'altro...
smoothhands Inserita: 25 agosto 2014 Autore Segnala Inserita: 25 agosto 2014 (modificato) In realtà sarebbe bello se fosse programmabile ma senza per forza dover sapere di registri, bit, aree ritentive, delayed etc... Ad esempio mi piacerebbe poter esprimere la logica di controllo in un linguaggio più simile a quello parlato normalmente: come se fosse una descrizione di quell che vorrei che facesse. Che ne sò... del tipo... se viene premuto il pulsante "luce cucina" accendi la luce cucina (guarda un pò) e attiva "prese sotto pensili" ma potrebbe anche diventare più complessa. lavorare a un livello ancora più alto rispetto alla programmazione struttuata. In pratica poter descrivere "cosa" vorrei che il sistema facesse anzichè "come" lo dovrebbe fare. Modificato: 25 agosto 2014 da smoothhands
del_user_56966 Inserita: 26 agosto 2014 Segnala Inserita: 26 agosto 2014 fattibile è fattibile ma richiede uno sforzo discreto... con un impegno in tempo quasi da hobby o da lavoro...
cande78 Inserita: 28 agosto 2014 Segnala Inserita: 28 agosto 2014 Ciao, ma se non ho capito male, stai facendo un porting della libreria java di HomePLC.linux in openHAB?
smoothhands Inserita: 28 agosto 2014 Autore Segnala Inserita: 28 agosto 2014 (modificato) Ciao cande78, no... non è proprio così. Sto cercando di realizzare l'interfaccia tra openHAB e il sistema domotico HomePLC.Linux. La libreria Java l'ho modificata per includere delle funzionalità che mi sembravano interessanti: come la generazione di eventi. In questo modo l'evento viene generato dal sistema HomePLC, viene inviato tramite rete ethernet a openHAB che digerisce ed elabora. Viceversa openHAB può inviare comandi via ethernet all'HomePLC.Linux che elabora e attua sul sistema domotico tramite la libreria Java. openHAB ragiona a più alto livello rispetto all'HomePLC che invece ragiona sui registri e bit. openHAB capisce actions, rules, commands e updates ad esempio. Modificato: 28 agosto 2014 da smoothhands
cande78 Inserita: 28 agosto 2014 Segnala Inserita: 28 agosto 2014 Ah OK, ma come fai a conoscere quali sono le interfaccia per la libreria java di HP.linux? La libreria è disponibile?
smoothhands Inserita: 28 agosto 2014 Autore Segnala Inserita: 28 agosto 2014 La libreria di interfaccia standard tra Java e l'hardware HomePLC è composta da una classe Java e una libreria dinamica scritta in linguaggio c. La classe Java non contiene altro che la dichiarazione dei metodi nativi che poi sono implementati nella libreria dinamica. I metodi e la relativa documentazione sono disponibili nel manuale a corredo dell'HomePLC.Linux o liberamente scaricabili dal file manager dell'assistenza. Io ho modificato un pochetto tale libreria in codice nativo e implementato una manciata di nuovi metodi ma si tratta comunque di un prototipo. Sinceramente non so nemmeno se io possa pubblicare o rendere disponibili queste modifiche. Sicuramente prima dovrei chiedere direttamente ai tecnici della net cosa ne pensano e come dovrei comportarmi. Inizialmente avevo realizzato una cosa analoga ma interamente in linguaggio Java sfruttando la libreria originale. In quel caso non credo ci sarebbero stati particolari problemi.
cande78 Inserita: 28 agosto 2014 Segnala Inserita: 28 agosto 2014 Dici che si potrebbe averne una copia della libreria java per didattica? Grazie mille
smoothhands Inserita: 28 agosto 2014 Autore Segnala Inserita: 28 agosto 2014 Guarda che però l'interfaccia tra openHAB e HomePLC la sto ancora realizzando. A te cosa interessa di preciso? Hai una versione .Linux su cui fare le prove?
cande78 Inserita: 28 agosto 2014 Segnala Inserita: 28 agosto 2014 Sinceramente vorremmo provare a bypassare il hp.linux con una macchina più performante. Pensi che si possa fare? Oppure necessitiamo obbligatoriamente del .linux perché ci vuole un kernel particolare?
smoothhands Inserita: 28 agosto 2014 Autore Segnala Inserita: 28 agosto 2014 (modificato) Non è questione di kernel ma di processore domotico integrato nell'hardware. Non puoi pensare di interfacciarti al bus rs485, utilizzare il protocollo xComm e poi non utilizzare il processore domotico... sia quello della versione linux o quello della versione ladder. Le librerie standard (ad esempio quella per Java) non fanno altro che rendere disponibili al linguaggio in questione le api per leggere le zone di memoria elaborate dal processore domotico PLC. Hanno permesso con l'HP.Linux di accedere ai registri con linguaggi di alto livello oltre principalmente al ladder e modbusRTU. Modificato: 28 agosto 2014 da smoothhands
del_user_56966 Inserita: 29 agosto 2014 Segnala Inserita: 29 agosto 2014 Non importa quanto sia performante la CPU su Linux se non ha accesso a XComm sul Bus... non otterrai mai un sistema RealTime... XComm è l'unico protocollo con RealTime deterministico attualmente disponibile sui Bus di tipo Home & Building Automation... non avendo caratteristica Realtime avresti un ottimo processore a monte ma un Bus poco performante come avviene... già anche nelle più famose marche di controller di Domotica... e quindi un sistema comunque del tutto inferiore come perfomance complessive...
cande78 Inserita: 29 agosto 2014 Segnala Inserita: 29 agosto 2014 No No scusate, non è nostra intenzione escludere il plc domotico, anche perchè è già in ns. possesso in quanto lo abbiato comprato a seguito del corso di 1° livello a Cecina. Noi già utilizziamo l'HP ladder come core del sistema ma vorremmo anche la possibilità di accedere hai registri dello stesso dall'esterno. Come ha già detto l'utente Andrea Ghensi il protocollo modbus è "un pò lento" ( abbiamo fatto delle prove a riguardo ). Già al tempo di quando facemmo il corso si vociferava di un sistema linux con cui accedere al plc tradizionale ( si parlava anche di sostituirlo ), pertanto ora ci piacerebbe, per pura didattica, capire se vi è la possibilità di raddoppiare la logica di funzionamento del plc con una versione che giri su un sistema linux che già gestisce altri servizi. tutto qua Grazie
smoothhands Inserita: 29 agosto 2014 Autore Segnala Inserita: 29 agosto 2014 (modificato) Mah... inevitabilmente se inserisci "roba" tra la logica di controllo e la lettura e scrittura dei registri dell'HomePLC le performances calano. È possibile sicuramente anche simulare la logica di funzionamento di un PLC generico con un computer e del software (che giri su una macchina linux o altro) ma non sarà mai realtime e non sarà mai paragonabile come performances a un microprogramma inserito nel HomePLC.Ladder. Poi tutto è un compromesso... quindi quanto sei disposto ad accettare un lieve ritardo dovuto ad una architettura più complessa presente tra l'elaborazione della logica e l'attuazione dei comandi. Modificato: 29 agosto 2014 da smoothhands
cande78 Inserita: 29 agosto 2014 Segnala Inserita: 29 agosto 2014 si è vero e sicuramente andrà più veloce del modbus
smoothhands Inserita: 29 agosto 2014 Autore Segnala Inserita: 29 agosto 2014 Ma non lo so sai? Il modbus è un protocollo mentre il mezzo su cui invii eventuali comandi all'HomePLC.Ladder è il connettore rs485, oppure un convertitore usb oppure il contertitore eth. Nel caso di HomePLC.Linux o fai la stessa cosa (col vantaggio di avere la porta eth integrata) oppure metti in piedi un qualsiasi altro metodo di comunicazione basato su software e una qualsiasi delle porte fisiche di comunicazioe disponibili. Che guarda caso sono nuovamente la porta rs485, la porta usb o la porta eth integrata.
cande78 Inserita: 29 agosto 2014 Segnala Inserita: 29 agosto 2014 A questo punto mi devo fare una domanda. la libreria java del hp.linux fa il polling dei registri? perchè con il modbus non hai altra scelta
smoothhands Inserita: 29 agosto 2014 Autore Segnala Inserita: 29 agosto 2014 (modificato) Se utilizzi la libreria originale a disposizione puoi usare solo una gestione a polling. Quindi anche lo strato software in java che avevo realizzato inizialmente generava degli eventi ma grazie a un ciclo polling di base. Più in dietro su questa discussione puoi trovare una qualche idea dei tempi richiesti per questo tipo di gestione. Poi ho cercato di migliorare le cose. Per ovviare a una certa lentezza (che potrebbe anche essere accettabile) ho messo mano alla libreria nativa aggiungendo un ciclo a polling di basso livello (scritto in c) che poi passa a java gli eventi così generati. Qui andiamo decisamente meglio. In entrambi i casi però, sebbene vengano generati degli eventi, poi ti resta da progettare tutta la logica che prima realizzavi in ladder. Modificato: 29 agosto 2014 da smoothhands
fiaful Inserita: 29 agosto 2014 Segnala Inserita: 29 agosto 2014 (modificato) scusate l'intromissione... ma per acquistare un HomePLC.linux come si fa? bisogna contattare direttamente la NetBA o c'è modo di acquistarlo online da qualche parte? esiste una sola versione o versioni diverse per processori/ram/controller/etc. ? sapete indicarmi il costo (degli eventuali modelli)? l'HomePLC.linux si può sostituire completamente all'HomePLC ladder (nell'architettura generale del sistema) o bisogna affiancarlo? grazie in anticipo per le risposte Modificato: 29 agosto 2014 da fiaful
smoothhands Inserita: 29 agosto 2014 Autore Segnala Inserita: 29 agosto 2014 @cande78 Quando ho scritto... "Ma non lo sai?" intendevo una cosa del tipo... Mah!!... non lo sai?! insomma per esprimere un dubbio :-) @fiaful ti conviene contattare la NET. ne esistono versioni diverse sia come processore che come ram e sia da barra din che con display. Poi esiste una versione che sostituisce la versione ladder oppure una che viene affiancata ad esso. qualche informazione su internet la trovi basta scrivere homeplc linux o homeplc transformer sui motori di ricerca.
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