Salicru CV50-008-4F User Manual page 110

Cv50 series
Table of Contents

Advertisement

DATA (0)
CRC CHK low bit
Detection value: CRC (16BIT)
CRC CHK high bit
END
T1-T2-T3-T4 (transmission time of 3.5 bytes)
9.3.2.2 RTU communication frame error checkout
Various factors (such as electromagnetic interference) may cause error in the data transmission. For example,
if the sending message is a logic "1", A-B potential difference on RS485 should be 6V, but in reality, it may be
-6V because of electromagnetic interference, and then the other devices take the sent message as logic"0". If
there is no error checkout, the receiving devices will not find the message is wrong and they may give
incorrect response which cause serious result. So the checkout is essential to the message.
The theme of checkout is that: the sender calculate the sending data according to a fixed formula, and then
send the result with the message. When the receiver gets this message, they will calculate another result
according to the same method and compare it with the sending one. If two results are the same, the message
is correct. If not, the message is incorrect.
The error checkout of the frame can be divided into two parts: the bit checkout of the byte and the whole data
checkout of the frame (CRC check).
Bit checkout of the byte
The user can select different bit checkouts or non-checkout, which impacts the check bit setting of each byte.
The definition of even checkout: add an even check bit before the data transmission to illustrate the number of
"1" in the data transmission is odd number or even number. When it is even, the check byte is "0", otherwise,
the check byte is"1". This method is used to stabilize the parity of the data.
The definition of odd checkout: add an odd check bit before the data transmission to illustrate the number of "1"
in the data transmission is odd number or even number. When it is odd, the check byte is "0", otherwise, the
check byte is"1". This method is used to stabilize the parity of the data.
For example, when transmitting "11001110", there are five "1" in the data. If the even checkout is applied, the
even check bit is "1"; if the odd checkout is applied; the odd check bit is "0". The even and odd check bit is
calculated on the check bit position of the frame. And the receiving devices also carry out even and odd
checkout. If the parity of the receiving data is different from the setting value, there is an error in the
communication.
CRC check
The checkout uses RTU frame format. The frame includes the frame error detection field which is based on
the CRC calculation method. The CRC field is two bytes, including 16 figure binary values. It is added into the
frame after calculated by transmitting device. The receiving device recalculates the CRC of the received frame
and compares them with the value in the received CRC field. If the two CRC values are different, there is an
error in the communication.
During CRC, 0*FFFF will be stored. And then, deal with the continuous 6-above bytes in the frame and the
value in the register. Only the 8Bit data in every character is effective to CRC, while the start bit, the end and
the odd and even check bit is ineffective.
The calculation of CRC applies the international standard CRC checkout principles. When the user is editing CRC
calculation, he can refer to the relative standard CRC calculation to write the required CRC calculation program.
Here provided a simple function of CRC calculation for the reference (programmed with C language):
unsigned int crc_cal_value(unsigned char *data_value,unsigned char data_length)
{
int i;
unsigned int crc_value=0xffff;
while(data_length--)
{
crc_value^=*data_value++;
for(i=0;i<8;i++)
{
if(crc_value&0x0001)crc_value=(crc_value>>1)^0xa001;
else crc_value=crc_value>>1;
}
}
return(crc_value);
}
In ladder logic, CKSM calculated the CRC value according to the frame with the table inquiry. The method is
advanced with easy program and quick calculation speed. But the ROM space the program occupied is huge.
So use it with caution according to the program required space.
110 - 144
Communication Protocol

Advertisement

Table of Contents
loading

Table of Contents