Vai al contenuto
PLC Forum


Revisionare mio impianto


ilgio80

Messaggi consigliati

Ho un impianto homeplc di 4 anni fa. Con diverse slave e termostati. 
poi mi son fatto un raspberry collegato con etm3 e mi son creato una web app in python per comandare L homeplc. 
 

ora con le nuove tecnologie vorrei sapere se L homeplc si potrebbe programmare diversamente oppure solamente in ladder. 
 

perché ora per aggiungere o togliere in e out devo programmare e flashare il plc con il ladder e poi modificare il mio python per aggiungere e modificare un pulsante o altro. 
 

boh non c’è un modulo per gestire il plc via web oppure collegare nuovi dispositivi come son off eccc all homeplc

Link al commento
Condividi su altri siti


HomePLC_Manager
Quote

perché ora per aggiungere o togliere in e out devo programmare e flashare il plc con il ladder e poi modificare il mio python per aggiungere e modificare un pulsante o altro. 

 

Il modello che hai tu è sicuramente un HomePLC versione 2, programmabile in Ladder.

e come ogni logica programmabile si programma con la sua IDE.

 

quello che vuoi fare tu più che una logica programmabile richiede un ambiente unico Controller + HMI,

per capirci quello che è l'approccio del HomePLC Linux con OpenHAB integrato o prodotti similari.

 

è in debug il nuovo HomePLC,

questo permette la programmazione in 5 linguaggi della EN61131-6 utilizzando un ambiente di programmazione standard

utilizza la connessione Lan diretta e supporta anche il Modbus TCP oltre ad altre funzioni più avanzate rispetto alla versione precedente,

un HomePLC pur essendo molto evoluto per le applicazioni di Building Automation in fondo rimane una logica programmabile, la supervisione 

evoluta che permette altre integrazioni si programma sempre come per ogni altro PLC con un programma apposito.

 

In sostanza quella parte d'impianto che deve rimanere solida e  affidabile per molti anni, se serve va semmai solo integrata con altre tecnologie. 

 

 

 

 

 

Link al commento
Condividi su altri siti

Esatto. Allora diciamo allora che tutti gli slave che ho in giro per casa vanno bene. Dovrei cambiare L homeplc con homeplc.linux?

 

ho visto Home assistant come programmazione delle nuove domotiche e volevo sapere se è possibile integrare homeplc

 

insomma vorrei evitare la programmazione in ladder e poi anche sulla supervisione. 
vorrei usare una cosa sola

Link al commento
Condividi su altri siti

HomePLC_Manager

 

Se sei in grado di programmare in altri linguaggi, il consiglio potrebbe essere quello di integrare direttamente il sistema di I/O

basato sui Master di zona (che utilizzano il Modbus RTU) col tuo raspberry (quindi anche senza l'HomePLC Linux), via Bus oppure tramite un ETM4 via Lan.

 

In pratica potresti aprire anche 4 task o più (uno per Master) per ottenere velocità discrete sull'ordine dei 50-100 mS per il refresh di ogni zona di sensori e moduli.

 

 

 

 

 

Modificato: da HomePLC_Manager
Link al commento
Condividi su altri siti

Io già adesso comunico con il plc tramite etm3. 
ho collegato via usb un raspberry e mi son fatto web application in python per accendere spegnere e vedere altri dati

con:

   instrument = minimalmodbus.Instrument('/dev/ttyUSB0', 1)
 

però devo sempre usare il laddder per programmare le uscite ed entrate come variabili di registro

 

e poi con python riesco a modificare i registri. 
peró è macchinoso

 

Link al commento
Condividi su altri siti

HomePLC_Manager

 

Quote

però devo sempre usare il laddder per programmare le uscite ed entrate come variabili di registro

 

non necessariamente, scrivendo il registro %MW che corrisponde all'uscite %QX se queste sono libere da programma

dovresti poterle gestire da qualsiasi altro programma esterno,

cosi come si può fare dalla finestra di Home & Building in TEST I/O

 

Quote

e poi con python riesco a modificare i registri. 
peró è macchinoso

 

Infatti il Ladder (salvo applicazioni limitate e per scopi ben precisi) è stato inventato per semplificare la vita a chi fa

qualsiasi tipo di Impianti elettrici e termici in modo professionale, 

se esisteva qualcosa di più pratico sarebbe utilizzato anche nell'industria.

 

Quindi l'alternativa sono programmi grafici con i loro limiti (ma per domotiche di base sono passabili)

oppure programmare ad alto livello (Visual Basic, java, Python ecc..)

 

 

 

 

Modificato: da HomePLC_Manager
Link al commento
Condividi su altri siti

Quindi homeassistant non sarà mai compatibile con homeplc??
 

ma nessuno ha inventato un sistema per interfacciarsi con homeplc?

homeplc.linux a che serve alla fine???

 

 

Link al commento
Condividi su altri siti

HomePLC_Manager

 

Quote

Quindi homeassistant non sarà mai compatibile con homeplc??

 

In realtà HomePLC ha una sua APP per il controllo vocale, nata anche prima delle altre,

gratuita e molto più potente, ma da tempo sappiamo che alla fine dopo la prima sorpresa iniziale non sembra ci sia molto interesse al controllo vocale nel reale utilizzo giornaliero...

 

forse anche perché già dal 2015 l'innovazione sulla termoregolazione con HomePLC, illuminazione ecc.. non si comanda ne da tablet ne in modo vocale ma come dovrebbe essere secondo il verbo "automatico"

si regola in base alle variazioni climatiche Alias "la casa si regola da sola", cosa che al confronto rende l'uso del comando vocale già obsoleto...😉 

 

 

 

 

 

 

 

 

 

 

 

Modificato: da HomePLC_Manager
Link al commento
Condividi su altri siti

Io non intendevo L assistenza vocale. Ma un gestore di tutto in modo flessibile e automatico tutto da web come questo

 

https://www.home-assistant.io

 

a parte che quel video mi fa scappare da homeplc in confronto ad Alexa :)

 

non mi hai risposto cosa serve homeplc.linux

 

 

  •  
Link al commento
Condividi su altri siti

HomePLC_Manager

 

 

Quote

non mi hai risposto cosa serve homeplc.linux

 

 

HomePLC Linux è stato progettato su richiesta per applicazioni custom.

 

 

 

 

 

 

 

 

Link al commento
Condividi su altri siti

HomePLC_Manager

 

 

Quote

 

Ma come programmi le uscite e le entrate su homeplc.linux

non con ladder giusto?

 

 

Java

Python

Web Server con integrato PHP

C/C++

c'è anche chi vi ha installato sopra OpenHab

 

Link al commento
Condividi su altri siti

HomePLC_Manager

 

 

Quote

qualcosa che aiuti la configurazione

 

è qui l'errore,

Pensare all'approccio "configurabile" se lo fosse, sarebbe venduto come "prodotto finito"

per applicazioni specifiche e con i limiti del caso.

Cosi come per altri embedded sul Mercato, documentazione sui vari linguaggi di programmazione,

se ne trova anche online, poi tramite le risorse disponibili chi è in grado di programmare realizza quello che vuole.

 

Per darti un idea, appena acceso tramite ambiente QT in C/C++

ho realizzato la classica funzione passo-passo in poco meno di 5 minuti, e io normalmente non programmo in C++  

 

 

 

 

 

 

 

 

 

 

 

 

Modificato: da HomePLC_Manager
Link al commento
Condividi su altri siti

https://www.home-assistant.io/
lo hai visto?
questo è un web application che ti permette di programmare come vuoi tu una quantità di dispositivi però avendo una bella base sotto già pronta per poter già impostare una base di come impostare la tua domotica

 

Link al commento
Condividi su altri siti

HomePLC_Manager

 

 

 

Quote

lo hai visto?

 

Se vuoi un parere "prettamente personale"

Si come avevo visto l'EIB nel 1992 (oggi ribattezzato KNX), e il LonWorks nel 1994 (Oggi quasi Sparito??),

considerando che la mia personale abitazione era già con comandi Wireless nel 1987 e i comandi vocali li usavo con le API di Windows già nel 1998,

non mi sorprendo facilmente dagli annunci tecnologici senza prima verificare se si tratta di vera innovazione, o solo di mode del momento "o peggio".

 

Per capirci, PC, Tablet, cellulari e controllo vocale non sono automazione ma solo un telecontrollo avanzato.

 

Telecontrollo = Comando prettamente Manuale

 

Ora dato che al riguardo esistono norme e leggi e che applicando il buon senso, i comandi manuali essendo fuori norma, dovrebbero essere proposti solo in casi eccezionali

e sicuramente mai come innovazione (essendo l'esatto contrario).

Ma tutti sappiamo che molto spesso prevale il fattore commerciale su quello tecnico.

ma questa è un'altra storia.

 

Per capire meglio cosa si intende per automazione delle costruzioni del futuro, puoi valutare anche questo tipo di approccio, 

 

Il Futuro non è dover dire all'impianto cosa deve fare (anche perché in questi casi entra in gioco l'errore Umano)

ma fare in modo che l'impianto si regoli da solo e in modo Ottimizzato.

 

 

 

 

 

 

 

 

 

 

 

Modificato: da HomePLC_Manager
Link al commento
Condividi su altri siti

  • 4 weeks later...
  • 1 month later...

mi sembra di capire che non vogliano dire come fare.. per un motivo puramente economico... 

 

se si potesse interfacciare con hassio... allora tutta la parte software a pagamento della net andrebbe a cadere.

 

ormai è parecchio tempo che faccio questa domanda e nessuno (anche si sa farlo) risponde.

 

 

 

Link al commento
Condividi su altri siti

Allora dopo molto studio so interfacciare  modbus con python. 
riesco a leggere e scrivere registri variabili del hplc ( quelli del 400)

peccato che devo sempre crearmi lo schema in ladder. Non riesco a leggere gli input ed output puliti come %ix 

Link al commento
Condividi su altri siti

del_user_45696

Tutti i registri HomePLC Vers.2 ovvero quelli segnati sull'_Help di LadderHome

da 1 a 7999 si possono raggiungere tramite Modbus RTU.

 

I registri Modbus RTU sono riportati di lato alle risorse, per esempio:

 

il Registro %MW1000 in Modbus si raggiunge direttamente con la Funzione 3 oppure 4

Idem il registro %MW2000 e cosi via..

 

Allo stesso modo l'area Bit %MX400.x si può leggere come registro a 16 Bit con le funzioni Modbus 3 o 4

oppure direttamente a Bit con le funzioni Modbus 1 e 2.

 

Alcune API o HMI potrebbero richiedere l'inserimento di un Alias d'indirizzamento al posto del comando originale, in quel caso va inserito:

 

- Coils un Bit compreso tra 1 e 9999

- Distrete Input un Bit compreso tra 10001 e 19999 

- Input Register Un registro compreso tra 30001 e 39999

- Holding Register Un registro compreso tra 40001 e 49999

 

Sempre parlando di Ingressi e Uscite digitali, 

per leggere un ingresso in standard IEC %IX sulla tabella delle risorse di lato alla definizione standard si trova il relativo registro,

 

Quindi per leggere gli ingressi da %IX0.0 a %IX0.15 si utilizza il registro 1 in Modbus RTU oppure 2 se si utilizza una Funzione JBus.

 

mentre per leggere le uscite da %QX0.0 a %QX0.15 si utilizza il registro 201 in Modbus RTU oppure 202 se si utilizza una Funzione JBus.

 

 

 

 

 

Modificato: da abernini
Link al commento
Condividi su altri siti

del_user_45696

Dato che le risorse sono raggiungili direttamente in lettura/scrittura nulla toglie

che il programma o parte di esso sia scritto direttamente sul Master Modbus e non nella logica.

 

Alcune aziende infatti usano non tanto la logica programmabile ma direttamente i Master I/O interfacciandoli direttamente con i loro Master Domotici.

In questo caso si ottiene la disponibilità di un sistema con molteplici ingressi e uscite distribuite su Bus RS485 ad alta velocità e RealTime, 

 

Interrogando un unico indirizzo Modbus, eliminando cosi di fatto i ritardi tipici di questo protocollo progettato solo per soluzioni a Polling.

Link al commento
Condividi su altri siti

grazie mille

ma non riesco ancora a capire come fare a leggere gli ingressi %IX

nel senso che hassio come qualsiasi altro master controlla ogni tot secondi quel INGRESSO.

ma se io ho un pulsante che lo premo una frazione di secondo... hassio che non sta leggendo in quella frazione di tempo non lo rileverà mai

 

no?

 

Link al commento
Condividi su altri siti

del_user_45696
Quote

Ho un gateway Modbus MGWM1, come lo interfaccio?

 

HomePLC ha il Modbus RTU anche sulla porta principale a che ti serve il GW?

 

 

 

 

 

Link al commento
Condividi su altri siti

del_user_45696
Quote

Ho un gateway Modbus MGWM1, come lo interfaccio?

 

HomePLC ha il Modbus RTU anche sulla porta principale a che ti serve il GW?

 

Quote

ma non riesco ancora a capire come fare a leggere gli ingressi %IX

 

Più che leggere intendi come rilevare gli ingressi alla pressione veloce, credo?

 

Il Modbus RTU non è sviluppato per gestire le pressioni veloci, la cosa più semplice è lavorare sul Polling in modo da

disporre di un refresh continuo di un area di ingressi ben definita, l'alternativa è scrivere un programma di ritardo sullo status degli ingressi nel ladder,

ma pur rilevando l'ingresso la seconda opzione non permette più le pressioni veloci.

 

Chiaramente col Modbus non essendo ad eventi ci sono vari limiti, se fosse possibile fare con Modbus RTU,

Tutto quello che si realizza con un HomePLC in tempo reale, non sarebbe servito svilupparlo.

 

 

 

 

Link al commento
Condividi su altri siti

  • Maurizio Colombi locked this discussione
Ospite
Questa discussione è chiusa alle risposte.
×
×
  • Crea nuovo/a...