Prodotti/ EMU Professional II/ LoRa

Interfaccia · EMU Professional II

Il LoRa sull’EMU Professional II: LoRaWAN, TTN e decoder di payload

Radio nella banda libera EU868, portata invece di velocità, contatori che trasmettono da sé. Qui si spiega come LoRa e LoRaWAN si collegano, perché il duty cycle determina la cadenza e come il template TTN e il nostro decoder semplificano l’integrazione.

Il principio

Come funziona il LoRa?


Due termini vengono continuamente confusi. LoRa è il procedimento radio: una modulazione a spettro espanso che allarga un segnale stretto al punto da renderlo riconoscibile anche sotto il rumore. Si guadagna in portata ciò che si perde in velocità. LoRaWAN è il protocollo di rete che vi si sovrappone: gateway, server di rete, cifratura, procedura di adesione.

La logica è inversa rispetto a M-Bus e Modbus. Nessun master interroga il contatore. Il contatore invia da sé, a ritmo fisso, un piccolo pacchetto; un gateway a portata radio lo capta e lo inoltra al server di rete. Dopo ogni trasmissione, un apparecchio in classe A apre brevemente due finestre di ricezione: è la modalità di base di ogni apparecchio LoRaWAN e la più parsimoniosa. Il Professional II funziona di serie in classe C e resta in ricezione tra una trasmissione e l’altra.

In Europa questo avviene nella banda libera EU868. Libera non significa senza regole: vale una limitazione del duty cycle che restringe il tempo di trasmissione per apparecchio e per ora. È questo il motivo per cui il LoRa è fatto per valori al quarto d’ora o orari e non per valori al secondo.

Termini

LoRa

Il procedimento radio. Modulazione a spettro espanso, portata a scapito della velocità.

LoRaWAN

Il protocollo di rete: gateway, server di rete, chiavi, adesione.

Fattore di spreading

Da SF7 a SF12. Più alto significa più lontano e più robusto, ma più lento e con più tempo di trasmissione.

Duty cycle

Limitazione di legge del tempo di trasmissione per apparecchio nella banda libera.

Classe A

L’apparecchio trasmette, poi due brevi finestre di ricezione. La modalità più parsimoniosa.

OTAA

Adesione via etere con DevEUI, JoinEUI e AppKey. La via consigliata.

ABP

Chiavi di sessione programmate in modo fisso. Più semplice, ma meno sicuro.

Payload

I dati utili del pacchetto – byte impacchettati in modo compatto, non testo leggibile.

Percorso dei dati

Come arrivano in modo sicuro i valori di un contatore LoRa nel sistema di destinazione?


Con un network server proprio o direttamente in Joulio-Web: il contatore si registra via OTAA e tutti i valori viaggiano cifrati end-to-end. Vale per l’EMU Professional II LoRa come per i contatori Helvatron H2O e DELTA III. I gateway si limitano a inoltrare.

Caso d’uso 1: network server esterno con API

Radio EU868BackhaulAPIDoppione scartatoProfessional II LoRaElettricità · EMUHelvatron H2OAcquaHelvatron DELTA IIICaloreGateway 1Modem SIM (LTE)Gateway 2LANNetwork serverLNS + join serverDecoder di payloadSupervisioneFatturazioneCloud / BINel contatoreDevEUIJoinEUIAppKeyDevAddrNwkSKeyAppSKeyChiavi di sessione dopo il joinNei gatewaynessuna chiaveinoltrano soltantoNel network serverDevEUIJoinEUIAppKeyDevAddrNwkSKeyAppSKeyChiavi di sessione dopo il join
  1. Chiavi registrateOgni contatore conosce il proprio DevEUI, il JoinEUI e l’AppKey segreta. Gli stessi tre valori sono registrati nel network server. L’AppKey non viene mai trasmessa via radio.
  2. Join RequestIl contatore si annuncia con DevEUI, JoinEUI e un numero casuale. Il messaggio è firmato con l’AppKey. Ogni gateway nel raggio di ricezione lo riceve, qui entrambi.
  3. Inoltro via LTE e LANIl gateway 1 trasmette tramite il modem SIM integrato, il gateway 2 via LAN. I gateway non aprono nulla. Il network server riconosce il pacchetto ricevuto due volte e scarta il doppione.
  4. Join AcceptIl network server verifica la firma, assegna un indirizzo di rete (DevAddr) e risponde, cifrato con l’AppKey, tramite il gateway con la ricezione migliore.
  5. Chiavi di sessioneIl contatore e il network server calcolano indipendentemente le stesse chiavi di sessione: NwkSKey per l’integrità, AppSKey per i valori misurati. Nessuna delle due viene trasmessa.
  6. Invio dei valoriI contatori di elettricità, acqua e calore inviano i valori a intervalli fissi, cifrati con l’AppSKey. I gateway non possono leggerne il contenuto.
  7. Verifica e decodificaIl network server verifica la firma, scarta i doppioni, decifra con l’AppSKey e con il decoder di payload converte i byte in kWh, m³ e quantità di calore.
  8. Inoltro via APII valori decodificati arrivano a supervisione, fatturazione o cloud tramite l’API del network server, per esempio REST, webhook o MQTT.

Caso d’uso 2: Joulio-Web con network server integrato

Radio EU868BackhaulUtilizzoDoppione scartatoProfessional II LoRaElettricità · EMUHelvatron H2OAcquaHelvatron DELTA IIICaloreGateway 1Modem SIM (LTE)Gateway 2LANJoulio-WebLNS integratoDecoder + analisiDashboardSpese accessorieAPI (opzionale)Nel contatoreDevEUIJoinEUIAppKeyDevAddrNwkSKeyAppSKeyChiavi di sessione dopo il joinNei gatewaynessuna chiaveinoltrano soltantoIn Joulio-WebDevEUIJoinEUIAppKeyDevAddrNwkSKeyAppSKeyChiavi di sessione dopo il join
  1. Chiavi registrateOgni contatore conosce il proprio DevEUI, il JoinEUI e l’AppKey segreta. Gli stessi tre valori sono registrati in Joulio-Web. L’AppKey non viene mai trasmessa via radio.
  2. Join RequestIl contatore si annuncia con DevEUI, JoinEUI e un numero casuale. Il messaggio è firmato con l’AppKey. Ogni gateway nel raggio di ricezione lo riceve, qui entrambi.
  3. Inoltro via LTE e LANIl gateway 1 trasmette tramite il modem SIM integrato, il gateway 2 via LAN. I gateway non aprono nulla. Joulio-Web riconosce il pacchetto ricevuto due volte e scarta il doppione.
  4. Join AcceptJoulio-Web verifica la firma, assegna un indirizzo di rete (DevAddr) e risponde, cifrato con l’AppKey, tramite il gateway con la ricezione migliore.
  5. Chiavi di sessioneIl contatore e Joulio-Web calcolano indipendentemente le stesse chiavi di sessione: NwkSKey per l’integrità, AppSKey per i valori misurati. Nessuna delle due viene trasmessa.
  6. Invio dei valoriI contatori di elettricità, acqua e calore inviano i valori a intervalli fissi, cifrati con l’AppSKey. I gateway non possono leggerne il contenuto.
  7. Verifica e decodificaJoulio-Web verifica la firma, scarta i doppioni, decifra con l’AppSKey e con il decoder di payload converte i byte in kWh, m³ e quantità di calore.
  8. Direttamente in Joulio-WebJoulio-Web gestisce le chiavi in proprio e usa i valori direttamente per dashboard, curva di carico e conteggio delle spese accessorie. I sistemi di terzi si collegano tramite l’API di Joulio-Web.

Integrazione

Come decodifico il payload LoRa di un contatore di energia?


Ciò che arriva al server di rete è dapprima un breve blocco di byte. Perché ne esca «energia attiva prelevata, tariffa 1, 128 431 kWh» serve un decoder di payload: un piccolo pezzo di codice che scompone i byte secondo la struttura di payload dell’apparecchio.

È esattamente qui che i progetti LoRa falliscono più spesso – non sulla tratta radio, ma per il fatto che il decoder è stato scritto a mano e mai documentato. Per questo lo forniamo già pronto.

The Things Network

Nella rete TTN l’EMU Professional II LoRa è disponibile direttamente come template. Creare l’apparecchio, scegliere il template, inserire le chiavi – il decoder è incluso. Per il caso più frequente la questione è così del tutto risolta.

Altri server di rete

Per l’integrazione in altri sistemi il decoder si trova su GitHub. Si aggiungono due strumenti che girano direttamente nel browser: un decoder di payload per verificare un pacchetto ricevuto, e un generatore di payload per creare pacchetti di prova prima che sia montato il primo contatore. Entrambi evitano la ricerca dei guasti sull’impianto.

Provare prima del montaggio

Con il generatore di payload si può costruire e verificare l’intera catena, dal server di rete fino al sistema di destinazione, prima che un solo contatore sia installato nel cavedio. Questo sposta la ricerca dei guasti dalla cantina alla scrivania.

Pianificazione radio

Quale portata raggiunge il LoRa negli edifici?


Fattore di spreading

Un fattore di spreading più alto porta portata e robustezza, ma allunga il tempo di trasmissione e consuma quindi più duty cycle ammesso. I contatori in cantina finiscono spesso a SF11 o SF12, quelli in visibilità diretta a SF7.

Vincoli edilizi

Cemento armato, terreno e porte metalliche di armadi attenuano il segnale più di quanto qualsiasi indicazione di distanza lasci supporre. Un contatore a 30 m nel seminterrato è più difficile da raggiungere di uno a 2 km in vista del gateway.

Misurare prima

Un apparecchio di prova nel punto di montaggio previsto dice più di qualsiasi calcolo. Per immobili distribuiti conviene un sopralluogo con misura prima di fissare i gateway.

Collocazione

Quando il LoRa è l’interfaccia giusta?


A favore

  • Punti di misura senza percorso cavi, per esempio nell’esistente
  • Immobili distribuiti con un gateway comune
  • Retrofit in cui non si può più posare alcuna linea
  • Valori al quarto d’ora o orari come risoluzione obiettivo
  • Template TTN disponibile, decoder pubblico su GitHub

Contro

  • Valori al secondo o compiti di regolazione – il duty cycle lo vieta
  • Grandi quantità di dati per lettura
  • Consegna garantita a un istante fisso
  • Punti di misura in profondità senza percorso radio verso l’esterno
  • Impianti in cui c’è comunque un M-Bus o l’Ethernet

Vedi l’M-Bus · Vedi il TCP/IP

Documenti

Manuali e schede tecniche da scaricare


Questa pagina spiega il principio. Elenchi dei registri, struttura dei telegrammi, assegnazione dei morsetti e i parametri esatti di ciascuna versione sono nel manuale dell’interfaccia.

PDFManuale dell’interfaccia LoRa1490 · struttura del payload · inglese GITDecoder LoRaemuag/professional_II_lora GITGeneratore di payloadSorgente su GitHub WEBDecoder di payloadEseguibile nel browser WEBGeneratore di payloadEseguibile nel browser PDFScheda tecnica Professional II1441 · inglese

Domande frequenti

Domande frequenti sull’interfaccia


Qual è la differenza tra LoRa e LoRaWAN?

LoRa è il procedimento radio – una modulazione a spettro espanso che scambia portata con velocità di trasmissione. LoRaWAN è il protocollo di rete che vi si sovrappone, con gateway, server di rete, cifratura e procedura di adesione. In pratica servono entrambi.

Esiste un template pronto per The Things Network?

Sì. Nella rete TTN l’EMU Professional II LoRa è disponibile direttamente come template. Creare l’apparecchio, scegliere il template, inserire le chiavi – il decoder di payload è incluso.

Come integro il contatore in un altro server di rete?

Tramite il decoder che mettiamo a disposizione su GitHub. Ci sono inoltre un decoder e un generatore di payload come strumenti web: con il decoder verificate un pacchetto ricevuto, con il generatore create pacchetti di prova per costruire la catena prima che sia montato il primo contatore.

Con quale frequenza trasmette un contatore LoRa?

A ritmo fisso, non su richiesta. La cadenza dipende dal duty cycle nella banda libera EU868, che limita il tempo di trasmissione per apparecchio e per ora. Il LoRa è quindi adatto a valori al quarto d’ora e orari, non a valori al secondo o a compiti di regolazione.

Quale portata raggiungo?

Dipende dal luogo, non da un numero su una scheda tecnica. Cemento armato, terreno e porte metalliche di armadi attenuano il segnale molto più della distanza. Un contatore a 30 m nel seminterrato può essere più difficile da raggiungere di uno a 2 km in visibilità diretta. Una misura nel punto di montaggio previsto vale più di qualsiasi calcolo.

OTAA o ABP?

OTAA, l’adesione via etere con DevEUI, JoinEUI e AppKey, è la via consigliata: le chiavi di sessione vengono negoziate all’adesione. L’ABP lavora con chiavi programmate in modo fisso – più semplice da configurare, ma meno sicuro e più scomodo quando si cambia contatore.

Non siete sicuri che il LoRa sia adatto?


Inviateci il numero di punti di misura, le distanze e il sistema di destinazione. Vi diremo quale versione ha senso – e quando un’altra interfaccia sarebbe la scelta migliore.

Telefono
+41 (0)41 545 03 00

Supporto tecnico
helpdesk@emuag.ch

Ordini Svizzera
orders@emuag.ch