Field 1: PreambleThe preamble field consist of 5 to 20 bytes. In hex itis FF i.e. all are 1. Synchronization with character stream is initiatedthrough this field. As mentioned above all the 5 to 20 bytes are only 1 hereand it offers delay between the synchronization and the starting of start bitas well.
(Mishra, 2011)Field 2: Start CharacterSecond field is Start Character which consist of 1byte (8 bits). Start character can have various values and its function are:- Specify the message type. – Indicates, is it slave to master ormaster to slave?- Designate the mode of thetransmission, is it in burst mode or poll mode? (Mishra, 2011)Field 3: AddressBoth the master address and slave address isincorporated in this field. If it is 1 that indicates it is a primary masterand 0 indicates for a secondary master.
There are two frame formats of messagelike short format and long format. For short format, the polling address of theslave is 4 bits. On the other hand, it is 38 bits in long format for the same. (Mishra,2011)Field 4: ExpansionExpansion field purpose is to make a space betweencommand and address field. It allows extra 3 bytes (24 bits) between thosefields. The number of bytes (max 3 byte) is specified by the 6 and 5 bits ofstart delimiter. (Mishra, 2011)Field 5: CommandCommon field are two types:Universal Command: Range 0 to 30Common Practice Command: Range 32 to 126.
Sometimes there are device specific commands alsowhich range is 128 to 253. All type of command field consist of 1 byte (8bits). The command field is the instruction for field device to what to do.(Mishra, 2011)Field 6: Byte CountSince HART message format doesn’t has any “end ofmessage” character, Byte count field is used to confirm the receiver about themessage completion. How many bytes of status and data bytes should be followedby the receiver is confirmed by this field. The byte count field contains thenumber of bytes to follow in the status and data bytes.
And this way, it helpsthe receiver to know when the message is going to complete. (Mishra, 2011)Field 7: StatusThe other name of status field is “response code”. Itconsists of two bytes (16 bits).
Only the response message from the slavecontain this field. The purpose of the field is:- To confirm about any error in theoutgoing message.- To declare the status of receivedcommand form master.- To inform about its own (fielddevice) status as well. (Mishra, 2011) Field 8: DataAs mentioned earlier, there are several type ofcommand in HART communication protocol. And all messages don’t have the datafiled. It depends on the type of command.
In universal and common practicecommand, they use 33 bytes for reasonable message duration. Whereas some devicespecific command uses longer data field up to 253 bytes. (Mishra, 2011)Field 9: ChecksumThe last field is checksum field which contains byte 1(8 bits). This field is used to detect any communication error. Starting fromstart character to end, checksum field work as a longitudinal parity for allthe bytes and thus check the error. (Mishra, 2011)