Vai al contenuto
PLC Forum


Homeplc E Openhab...


smoothhands

Messaggi consigliati

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.

Link al commento
Condividi su altri siti


  • Risposte 53
  • Created
  • Ultima risposta

Top Posters In This Topic

  • smoothhands

    28

  • del_user_56966

    16

  • cande78

    7

  • Andrea Ghensi

    1

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: da smoothhands
Link al commento
Condividi su altri siti

del_user_56966
Se venisse mai realizzato un sistema alternativo alla versione ladder

infatti 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...

B) 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... ;)

Link al commento
Condividi su altri siti

del_user_56966

Ricorda però che nessun sistema configurabile potra mai eguagliare la libertà d'uso della programmazione...

ma sicuramente se è valido farà un figurone senz'altro... :smile:

Link al commento
Condividi su altri siti

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: da smoothhands
Link al commento
Condividi su altri siti

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: da smoothhands
Link al commento
Condividi su altri siti

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.

Link al commento
Condividi su altri siti

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?

Link al commento
Condividi su altri siti

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?

Link al commento
Condividi su altri siti

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: da smoothhands
Link al commento
Condividi su altri siti

del_user_56966

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...

Link al commento
Condividi su altri siti

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

Link al commento
Condividi su altri siti

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: da smoothhands
Link al commento
Condividi su altri siti

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.

Link al commento
Condividi su altri siti

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: da smoothhands
Link al commento
Condividi su altri siti

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: da fiaful
Link al commento
Condividi su altri siti

@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.

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...