background image

 

 

                                                                       Document ref. AD3007b1.doc                                                                    P.  6 / 14

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
Algoritmo di calcolo del CRC 
CRC calculation algorithm 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

CALCOLO DEL CRC (CHECKSUM) 

 
Esempio di calcolo: 
 
Frame = 0207h 
 
Inizializzazione 

CRC 

1111 1111 1111 1111 

Carica primo byte  

 

 

0000  0010 

Esegue xor con il primo  1111  1111  1111  1101 
Byte della frame 
Esegue primo shift a dx  0111  1111  1111  1110  

Carry=1,carica 

polinomio 1010 0000 0000 0001 

Esegue xor con il 

1101  1111  1111  1111 

polinomio 
Esegue secondo shift  dx  0110  1111  1111  1111  

Carry=1,carica  polinomio  1010  0000  0000  0001 
Esegue xor con il 

1100  1111  1111  1110  

 

polinomio 
Esegue terzo shift 

0110  0111  1111  1111  

Esegue quarto shift 

0011  0011  1111  1111  

Carry=1, carica polinomio  1010  0000  0000  0001 

  

Esegue xor con il 

1001  0011  1111  1110 

Polinomio 
Eseque quinto shift dx 

0100  1001  1111  1111  

Eseque sesto shift dx 

0010  0100  1111  1111  

Carry=1, carica polinomio  1010  0000  0000  0001 
Esegue xor con polinomio 1000  0100  1111  1110  

 

 
Esegue settimo shift dx  0100  0010  0111  1111  

Esegue ottavo shift dx 

0010  0001  0011  1111  

Carry=1, carica polinomio  1010  0000  0000  0001 
 
Carica secondo byte 

 

 

0000  0111 

della frame 
Esegue xor con il 

1000  0001  0011  1001 

Secondo byte della frame 
Esegue primo shift dx 

0100  0000  1001  1100  

Carry=1, carica polinomio  1010  0000  0000  0001 
Esegue xor con il  

1110  0000  1001  1101 

polinomio 
 Esegue secondo shift dx  0111  0000  0100  1110  

Carry=1, carica polinomio  1010  0000  0000  0001 
Esegue xor con il 

1101  0000  0100  1111  

 

polinomio 
Esegue terzo shift dx 

0110  1000  0010  0111  

Carry=1, carica polinomio  1010  0000  0000  0001 

  

Esegue xor con il 

1100  1000  0010  0110 

polinomio 
Esegue quarto shift dx 

0110  0100  0001  0011  

Esegue quinto shift dx 

0010  0100  0000  1001  

Carry=1, carica polinomio  1010  0000  0000  0001 
Esegue xor con il 

1001  0010  0000  1000  

 

polinomio 
Esegue sesto shift dx 

0100  1001  0000  0100  

Esegue settimo shift dx  0010  0100  1000  0010  

Esegue ottavo shift dx 

0001  0010  0100  0001  

Risultato 

CRC 

0001 0010 0100 0001 

  

12h 

 

41h 

 
Nota:

 Il byte 41h viene spedito per primo (anche se 

e’ il LSB), poi viene trasmesso 12h.

 

 
 
 

CRC CALCULATION (CHECKSUM) 

 
Example of CRC calculation: 
 
Frame = 0207h 
 
CRC 

initialization 

1111 1111 1111 1111 

Load the first byte  

 

 

0000  0010 

Execute xor with the first  1111  1111  1111  1101 
Byte of the frame 
Execute 1st right shift 

0111  1111  1111  1110  

Carry=1,load 

polynomial 1010 0000 0000 0001 

Execute xor with the 

1101  1111  1111  1111 

polynomial 
Execute 2

nd

 right shift 

0110  1111  1111  1111  

Carry=1,load 

polynomial 1010 0000 0000 0001 

Execute xor with the 

1100  1111  1111  1110  

 

polynomial 
Execute 3

rd 

right 

shift 

0110 0111 1111 1111 

 

Execute 4

th

 right shift 

0011  0011  1111  1111  

Carry=1,load 

polynomial 1010 0000 0000 0001 

  

Execute xor with the 

1001  0011  1111  1110 

polynomial 
Execute 5

th

 right shift 

0100  1001  1111  1111  

Execute 6

th

 right shift 

0010  0100  1111  1111  

Carry=1,load 

polynomial 1010 0000 0000 0001 

Execute xor with the 

1000  0100  1111  1110  

 

polynomial 
Execute 7

th 

right 

shift 

0100 0010 0111 1111 

 

Execute 8

th 

right 

shift 

0010 0001 0011 1111 

 

Carry=1,load 

polynomial 1010 0000 0000 0001 

 
Load the second byte 

 

 

0000  0111 

of the frame 
Execute xor with the 

1000  0001  0011  1001 

Second byte of the frame 
Execute 1st right shift 

0100  0000  1001  1100  

Carry=1,load 

polynomial 1010 0000 0000 0001 

Execute xor with the 

1110  0000  1001  1101 

polynomial 
 Execute 2

nd

 right shift 

0111  0000  0100  1110  

Carry=1,load 

polynomial 1010 0000 0000 0001 

Execute xor with the 

1101  0000  0100  1111  

 

polynomial 
Execute 3

rd

 right shift 

0110  1000  0010  0111  

Carry=1,load 

polynomial 1010 0000 0000 0001 

  

Execute xor with the 

1100  1000  0010  0110 

polynomial 
Execute 4

th

 right shift 

0110  0100  0001  0011  

Execute 5

th

 right shift 

0010  0100  0000  1001  

Carry=1,load 

polynomial 1010 0000 0000 0001 

Execute xor with the 

1001  0010  0000  1000  

 

polynomial 
Execute 6

th

 right shift 

0100  1001  0000  0100  

Execute 7

th

 right shift 

0010  0100  1000  0010  

Execute 8

th

 right shift 

0001  0010  0100  0001  

CRC 

Result 

0001 0010 0100 0001 

  

12h 

 

41h 

 
Note:

 The byte 41h is sent first(even if it is the 

LSB), then12h is sent. 
 

CRC xor BYTE = CRC

n = 0

CRC right shift

carry over

CRC xor POLY = CRC

n = n + 1

next BYTE

end message

End

n > 7

Hex  FFFF = CRC

no

no

yes

yes

Содержание ADX Series

Страница 1: ...Document ref AD3007b1 doc P 1 14 I134 I GB 11 02 577 AVVIATORE STATICO ADX ADX SOFT STARTER PROTOCOLLO DI COMUNICAZIONE MODBUS PROTOCOL MODBUS ADDENDUM ADDENDUM ...

Страница 2: ...ssivo e se questo tempo supera quello necessario per trasmettere 3 5 caratteri riferiti al baud rate impostato il prossimo carattere viene considerato l inizio di un nuovo messaggio MODBUS PROTOCOL Starting from software revision 10 Adx series soft starters support the Modbus protocol on their RS 232 serial port Using this feature it is possible to read the status of the starter and to control it ...

Страница 3: ...no richiesti allo slave numero 8 8 registri consecutivi a partire dall indirizzo 10h Quindi vengono letti i registri dall 10h al 17h Il comando termina sempre con il valore di checksum CRC MODBUS FUNCTIONS The available functions are 04 Read input register Allows to read the Adx measures 06 Preset single register Allows to set the setup parameters 07 Read exception Allows to read the device status...

Страница 4: ...e di coppia con il valore 10 Risposta Slave La risposta è un eco della domanda cioè viene inviato al master l indirizzo del dato da modificare e il nuovo valore del parametro Slave response Slave address 08h Function 04h Byte number 10h MSB register 10h 00h LSB register 10h 00h MSB register 17h 00h LSB register 17h 00h MSB CRC 5Eh LSB CRC 83h The response is always composed of the slave address th...

Страница 5: ...01 Funzione non valida 02 Indirizzo registro illegale 03 Valore del parametro fuori range 04 Impossibile effettuare operazione 06 Slave occupato funzione momentaneamente non disponibile es motore in marcia FUNCTION 07 READ EXCEPTION STATUS This function allows to read the status of the starter Master query Slave address 08h Function 07h MSB CRC 47h LSB CRC B2h The following table gives the meaning...

Страница 6: ...dito per primo anche se e il LSB poi viene trasmesso 12h CRC CALCULATION CHECKSUM Example of CRC calculation Frame 0207h CRC initialization 1111 1111 1111 1111 Load the first byte 0000 0010 Execute xor with the first 1111 1111 1111 1101 Byte of the frame Execute 1st right shift 0111 1111 1111 1110 1 Carry 1 load polynomial 1010 0000 0000 0001 Execute xor with the 1101 1111 1111 1111 polynomial Exe...

Страница 7: ...igned long 18h 2 Potenza attiva Active power KW 10 n Unsigned long 1Ah 2 Power factor medio Mean power factor Unsigned long 1Ch 2 Stato termico motore Motor thermal status Unsigned long 1Eh 2 Temperatura avviatore dissipatore 1 Starter temperature Heatsink 1 C Unsigned long 20h 2 Temperatura avviatore dissipatore 2 Starter temperature Heatsink 2 C Unsigned long 22h 2 Temperatura avviatore dissipat...

Страница 8: ... 17 A18 Fase L1 T1 in corto circuito A18 Phase L1 T1 shorted 18 A18 Fase L2 T2 in corto circuito A18 Phase L2 2 shorted 19 A18 Fase L3 T3 in corto circuito A18 Phase L3 T3 shorted 20 A19 Avaria sensore temperatura radiatore A19 Temperature sensor failure 21 A20 Ora e data inattendibili A20 Date time incorrect 22 A21 Errore di sistema A21 System error 23 A22 Tensione di linea troppo bassa A22 Line ...

Страница 9: ...otocol it is possible to access the base advanced and function menu parameters In the following tables it is reported the numerical range for each parameter To correctly understand the correspondence between the numeric value and the selected function and or the unit of measure please see the Adx operating manual The following parameters can be read at any time while the write access is possible o...

Страница 10: ...ed integer 2111h 1 P 25 Fondo scala uscita analogica P25 Analog output full scale 50 500 Unsigned integer 2112h 1 P 26 Range uscita analogica P26 Analog output range 0 1 n Unsigned integer 2113h 1 P 27 Assegnazione funzione PROG IN Ingresso programmabile multifunzione P27 PROG IN function assignment Programmable multifunction input 0 14 n Unsigned integer 2114h 1 P 28 PROG IN zona morta di rampa P...

Страница 11: ...ay K1 K2 K3 function Programmable output 0 OFF OFF 1 Motore in marcia Motor powered 2 Motore avviato Up to speed 3 Frenatura Braking 4 Intervento soglia di corrente Current threshold 5 Scadenza di manutenzione Maintenance requested 6 Avviamento in cascata Cascade start 7 Soglie PROG IN PROG IN thresholds 8 32 Allarme A01 A25 Alarms A01 A25 P23 Teleruttore di by pass Bypass contactor 0 OFF 1 ON P24...

Страница 12: ... linea seriale RS232 P56 RS 232 serial communications address 1 255 Unsigned integer 2213h 1 P57 Comunicazione con modem P57 Modem communication 0 1 n Unsigned integer 2214h 1 P58 Soglia di minima tensione P58 Minimum voltage threshold 169 760 o Unsigned integer 2215h 1 P59 Ritardo intervento minima tensione P59 Minimum voltage tripping delay 0 240 Unsigned integer 2216h 1 P60 Soglia di massima te...

Страница 13: ...onds 0 59 Unsigned integer 2303h 1 Minuti Minutes 0 59 Unsigned integer 2304h 1 Ore Hours 0 23 Unsigned integer 2305h 1 Giorno Day 0 31 Unsigned integer 2306h 1 Mese Month 1 12 Unsigned integer 2307h 1 Giorno della settimana Weekday 1 7 n Unsigned integer 2308h 1 Anno Year 0 99 Unsigned integer n L indicatore del giorno della settimana non viene aggiornato dall orologio interno n The weekday is no...

Страница 14: ... 01 Event nr 01 Month 1 12 Unsigned integer 248Dh 1 Anno evento nr 01 Event nr 01 Year 0 99 Unsigned integer n Il significato del codice dell evento puo essere determinato nella seguente tabella In caso non siano registrati eventi viene ritornato il codice 0 n The meaning of the event code can be found in the following table In case there is no recorded event code 0 will be returned Code Descripti...

Отзывы: