[Python] R: Registri modbus

Attilio Menegon attilio.menegon a tecnoemmesnc.it
Gio 17 Feb 2022 00:27:26 CET


Ciao 

Mi sembra di capire  che acquisisci i n. 6 registri  e ci fai l’esempio: 

----------------------------------------

quando li vada a leggere il dato restituito è in questo modo

 

[3785, 25684, 15478, 4568, 598, 12589] -> numeri di esempio

 

ogni elemento della lista è un registro da 16bit questo in effetti è una stringa di 12 caratteri,  quello che non riesco a fare è rendere questa lista la stringa equivalente.

---------------------------------------

Se tu posti la lista che realmente acquisì e la stringa di 12 caratteristi che ti aspetti di ottenere dalla trasformazione, penso che qualcuno ti potrebbe aiutare nella comprensione e trasformazione……

Viceversa è un po’ dura capire cosa non riesci a decifrare.  

 

Attilio Menegon

 

Da: Python <python-bounces a lists.python.it> Per conto di Vinny Mautone
Inviato: mercoledì 16 febbraio 2022 17:33
A: Discussioni generali sul linguaggio Python <python a lists.python.it>
Oggetto: Re: [Python] Registri modbus

 

Il mio problema non è leggere i registri quelli li leggo tranquillamente, è che dopo non riesco a renderli comprensibili.

Mi spiego meglio ho un dato che occupa 6 registri e quando li vado a leggere il dato restituito è in questo modo

 

[3785, 25684, 15478, 4568, 598, 12589] -> numeri di esempio

 

ogni elemento della lista è un registro da 16bit questo in effetti è una stringa di 12 caratteri,  quello che non riesco a fare è rendere questa lista la stringa equivalente.

 

Il giorno mer 16 feb 2022 alle ore 14:22 Pietro Convalle <pietroconvalle a python.it <mailto:pietroconvalle a python.it> > ha scritto:

Ciao, non ho mai usato quel modulo ma qua vedo un esempio che sembra
proprio quello che stai cercando di fare tu:
https://pypi.org/project/pyModbusTCP/ (Read 2x 16 bits registers at
modbus address 0)

On Wed, 2022-02-16 at 06:53 +0100, Vinny Mautone wrote:
> Ciao a tutti sto provando a leggere dei dati da un apparecchiatura
> con la quale comunico tramite il protocollo modbus, sto usando il
> modulo pymodbusTCP, ho alcuni dati come ad esempio la versione del
> firmware che occupano sei registri da 16 bit, riesco a leggerli e con
> la funzione di lettura del modulo ottengo una lista di 6 elementi da
> 16bit, solo che non riesco a scomporre e a recuperare l'informazione
> in modo leggibile, dal manuale leggo che il dato è formato da 11 byte
> in caratteri ascii, quindo ho capito che devo scomporre ogni elemento
> della lista nei due byte che lo compongono e poi riassemblare il
> tutto.
> 
> Il mio problema e che non riesco a capire come fare.
> 
> Grazie
> _______________________________________________
> Python mailing list
> Python a lists.python.it <mailto:Python a lists.python.it> 
> https://lists.python.it/mailman/listinfo/python

_______________________________________________
Python mailing list
Python a lists.python.it <mailto:Python a lists.python.it> 
https://lists.python.it/mailman/listinfo/python

-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20220217/988f1361/attachment.html>


Maggiori informazioni sulla lista Python