Parametri di comunicazione dei contatori
Una volta completati tutti i collegamenti del contatore, è importante capire come quest’ultimo risulta configurato, prima di poter procedere.
I parametri da individuare ed appuntarsi per le successive configurazioni saranno:
- porta USB con cui il Raspberry identifica l’adattatore USB-RS485
- indirizzo modbus contatore
- velocità di comunicazione modbus del contatore
- parità della comunicazione modbus
Porta USB Raspberry
Nel caso abbiamo collegato al Raspberry un solo adattatore USB-RS485 la porta molto probabilmente sarà ttyUSB0.
Se vogliamo però essere certi su quale porta il Raspberry ha connesso l’adattatore USB-RS485, si deve guardare nella directory /dev del Raspberry mediante WinSCP:
Nel mio caso avendo due adattatori collegati il Raspberry li ha configurati come ttyUSB0 e ttyUSB1.
Indirizzo e velocità contatore
Per individuare questi parametri, basterà premere più volte il pulsante presente sull'sdm120c. In tal modo è possibile visualizzare la varie grandezze misurate dal contatore e ad un certo punto leggere anche l’indirizzo e la velocità :
Appuntiamoci quindi l’indirizzo la velocità e la parità che useremo in seguito.
Parità
Nel caso in cui il vostro contatore non visualizzi la parità, possiamo individuarla come indicato in seguito. Se invece il vostro contatore visualizza la parità come indicato sopra, saltate questo paragrafo.
In genere la parità impostata di default è Even sui primi dispositivi prodotti, mentre è None su quelli più recenti. Se sul vostro contatore non è però possibile leggerla direttamente a display, dovremo pertanto procedere per tentativi come illustrato di seguito.
Supponendo di aver individuato come indirizzo 1, velocità 2400 e porta ttyUSB0, digitare da terminale:
sdm120c -a 1 -P N -b 2400 -j10 -z10 -w10 /dev/ttyUSB0
se il contatore risponde la parità sarà None altrimenti digitare:
sdm120c -a 1 -P E -b 2400 -j10 -z10 -w10 /dev/ttyUSB0
se il contatore risponde la parità sarà Even altrimenti digitare:
sdm120c -a 1 -P O -b 2400 -j10 -z10 -w10 /dev/ttyUSB0
se il contatore risponde la parità sarà Odd.
Nel caso che per il vostro contatore l’indirizzo, la velocità o la porta sia diversa, basterà modificare il rispettivo valore ai numeri evidenziati in rosso nelle precedenti righe.
Se tutto è andato per il verso giusto ora dovreste avere:
- Indirizzo modbus
- Velocità modbus
- Porta adattatore USB
- Parità comunicazione modbus
Modifica indirizzo e velocità contatore
Affinché il sistema di monitoraggio funzioni correttamente, è necessario che l’indirizzo modbus del contatore corrisponda al numero di meter che assegneremo successivamente ai consumi (2).
Procediamo quindi ad impostare l’indirizzo del contatore a 2 e la velocità del modbus a 9600, in modo da rendere molto più veloce la lettura dei dati.
Normalmente il contatore arriva preimpostato con indirizzo 1 e con velocità 2400 pertanto, come indicato nella specifica GUIDA, dovremmo eseguire quanto segue.
NOTA: Le ultime versioni del software sdm120c sono un pò “capricciose” nella modifica dei parametri del contatore, e potreste non riuscire nel vostro intento. Il consiglio è di modificarli sotto windows con modscan, oppure utilizzando una vecchia versione del software sdm120c (che funziona sempre al primo colpo) da tenervi in parte ed utilizzare solo per questo scopo.
Modifica indirizzo contatore
Per cambiare l’indirizzo del dispositivo da 1 a 2, premere il pulsante frontale sul contatore per 3 secondi, fino a che compare la scritta - SET – sul display, quindi da terminale digitare:
Se parità N :
sdm120c -a 1 -s 2 -b2400 -j10 -z10 -w10 /dev/ttyUSB0 New address 2 You have to restart the meter for apply changes
Se parità E:
sdm120c -a 1 -s 2 –P E -b2400 -j10 -z10 -w10 /dev/ttyUSB0 New address 2 You have to restart the meter for apply changes
Riavviare il contatore staccando e riattaccando la fase in ingresso.
Modifica velocità modbus
Per cambiare la velocità di trasmissione da 2400 a 9600 premere il pulsante frontale sul contatore per 3 secondi, fino a che compare la scritta - SET – sul display, quindi da terminale digitare:
Se parità N :
sdm120c -a 2 -r 9600 –P N -j10 -z10 -w10 /dev/ttyUSB0 New baud_rate 9600 You have to restart the meter for apply changes
Se parità E :
sdm120c -a 2 -r 9600 –P E -j10 -z10 -w10 /dev/ttyUSB0 New baud_rate 9600 You have to restart the meter for apply changes
Riavviare il contatore staccando e riattaccando la fase in ingresso.
Test di lettura contatore
Per essere certi che tutto funzioni correttamente, eseguiamo ora un test di lettura del contatore. A seconda del valore di parità dovremmo digitare il relativo comando di test:
Indirizzo modbus | Velocità modbus | Porta USB | Parità | Comando test | |
2 | 9600 | ttyUSB0 | O | sdm120c -a 2 -P O -b 9600 -j10 -z10 -w10 /dev/ttyUSB0 | |
2 | 9600 | ttyUSB0 | E | sdm120c -a 2 -P E -b 9600 -j10 -z10 -w10 /dev/ttyUSB0 | |
2 | 9600 | ttyUSB0 | N | sdm120c -a 2 -P N -b 9600 -j10 -z10 -w10 /dev/ttyUSB0 |
La corretta risposta al comando di test dovrebbe già restituire l’elenco di tutti i valori disponibili:
sdm120c -a 2 -P E -b 9600 -j10 -z10 -w10 /dev/ttyUSB0 Voltage: 218.30 V Current: 0.00 A Power: 0.00 W Power Factor: 1.00 Frequency: 50.00 Hz Import Active Energy: 6409 Wh Export Active Energy: 0 Wh Total Active Energy: 6409 Wh OK
I valori ovviamente potranno essere diversi da quelli illustrati e corrispondenti a quelli rilevati in quel momento dal vostro contatore. Se il contatore non risponde correttamente ricontrollate quanto fatto in precedenza in quanto in queste condizioni MeterN non potrà funzionare.
Per approfondire il funzionamento dello script consultare la specifica guida presente in wiki.