Anonymous
Not logged in
Talk
Contributions
Create account
Log in
RS-485
Search
Editing
Highway Addressable Remote Transducer Protocol
From RS-485
Namespaces
Page
Discussion
More
More
Page actions
Read
Edit
Edit source
History
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Industrial automation protocol}} {{Infobox fieldbus protocol | Name = HART | Type_of_Network = Device (Process Automation) | Physical_Media = [[current loop|4β20 mA]] analog instrumentation wiring or 2.4 GHz wireless | Network_Topology = Point-to-point, multidrop, wireless mesh | Maximum_Devices = 15 in multidrop | Maximum_Speed = Depends on physical layer employed | Device_Addressing = Hardware/software | Governing_Body = FieldComm Group | URL = {{URL|http://www.FieldCommGroup.org/}} }} The '''HART Communication Protocol (Highway Addressable Remote Transducer)''' is a hybrid analog+digital industrial automation open protocol. Its most notable advantage is that it can communicate over legacy 4β20 mA analog instrumentation current loops, sharing the pair of wires used by the analog-only host systems. HART is widely used in process and instrumentation systems ranging from small automation applications up to highly sophisticated industrial applications. Based on the [[OSI model]], HART resides at Layer 7, the Application Layer. Layers 3β6 are not used.<ref>instrumentationtools ''https://instrumentationtools.com/hart-communication-tutorial-part-3/'' </ref> When sent over [[current loop|4β20 mA]] it uses a [[Bell 202 modem|Bell 202]] for layer 1. But it is often converted to RS485 or RS232. According to Emerson,<ref>Emerson ''https://web.archive.org/web/20181107104043/https://www.automation.com/automation-news/industry/emerson-proves-advancements-in-eddl-electronic-device-description-language-technology'', rev. 2005-04-14</ref> due to the huge installation base of 4β20 mA systems throughout the world, the HART Protocol is one of the most popular industrial protocols today. HART protocol has made a good transition protocol for users who wished to use the legacy 4β20 mA signals, but wanted to implement a "smart" protocol. ==History== The protocol was developed by [[Rosemount Inc.]], built off the [[Bell 202 modem|Bell 202]] early communications standard in the mid-1980s as a proprietary digital communication protocol for their smart field instruments. Soon it evolved into HART and in 1986 it was made an [[open protocol]]. Since then, the capabilities of the protocol have been enhanced by successive revisions to the specification. ==Modes== [[File:Locale_RS6_Smart current loop positioner.png|thumb|Example of current loops used for sensing and control transmission. The HART protocol can be overlaid on the 4β20 mA loops.]] There are two main operational modes of HART instruments: point-to-point (analog/digital) mode, and multi-drop mode. ===Point to point=== In point-to-point mode the digital signals are overlaid on the [[Current loop#Process-control use|4β20 mA]] loop current. Both the 4β20 mA current and the digital signal are valid signalling protocols between the controller and measuring instrument or final control element. The [[polling (computer science)|polling]] address of the instrument is set to "0". Only one instrument can be put on each instrument cable signal pair. One signal, generally specified by the user, is specified to be the 4β20 mA signal. Other signals are sent digitally on top of the 4β20 mA signal. For example, pressure can be sent as 4β20 mA, representing a range of pressures, and temperature can be sent digitally over the same wires. In point-to-point mode, the digital part of the HART protocol can be seen as a kind of [[digital current loop interface]]. ===Multi-drop=== In multi-drop mode the analog loop current is fixed at 4 mA and it is possible to have more than one instrument on a signal loop. HART revisions 3 through 5 allowed polling addresses of the instruments to be in the range 1β15. HART revision 6 allowed addresses 1 to 63; HART revision 7 allows addresses 0 to 63. Each instrument must have a unique address. ==Packet structure== The request HART packet has the following structure: {| class="wikitable" |- ! Field Name ! Length (in bytes) ! Purpose |- | Preamble | 5β20 | Synchronization and Carrier Detect |- | Address | 1 or 5 | defined by bit 7 in Delimiter. Specifies slave, Specifies Master and Indicates Burst Mode |- | Expansion | 0β3 | This field is 0β3 bytes long and its length is indicated in the Delimiter (Start byte) |- | Command | 1 | Numerical Value for the command to be executed |- | Number of data bytes | 1 | Indicates the size of the Data Field |- | Data | 0β255 | Data associated with the command. BACK and ACK must contain at least two data bytes. |- | Checksum | 1 | XOR of all bytes from Start Byte to Last Byte of Data |} ===Preamble=== Currently all the newer devices implement five byte preamble, since anything greater reduces the communication speed. However, masters are responsible for backwards support. Master communication to a new device starts with the maximum preamble length (20 bytes) and is later reduced once the preamble size for the current device is determined. Preamble is: "ff" "ff" "ff" "ff" "ff" (5 times ff) ===Start delimiter=== This byte contains the Master number and specifies that the communication packet is starting. {| class="wikitable" style="margin: 0 auto; text-align:center" |+Delimiter Field |- ! [[Bit]] ! style="text-align:center;" | 7 !! 6 !! 5 !! 4 !!3 !! 2 !! 1 !! 0 |- ! Desc | Address size |colspan="2"| Number of Expansion bytes |colspan="2"| Physical layer type |colspan="3"| Frame type |} ;bit 7, if high use Unique (5 byte) address, else use Polling (1 Byte) addresses. ;bit 6 and 5, Number of Expansion bytes: normally it set if Expansion field is used, normally 0. ;bit 4 and 3, Physical layer type: 0=Asynchronous, <br> 1=Synchronous ;bit 2, 1 and 0, Frame type: 1=BACK Burst Acknowledge send by Burst-mode Device<br> 2=STX Master to Field Devices.<br> 6=Slave Acknowledge to STX frame. ===Address=== Specifies the destination address as implemented in one of the HART schemes. The original addressing scheme used only four bits to specify the device address, which limited the number of devices to 16 including the master. The newer scheme utilizes 38 bits to specify the device address. This address is requested from the device using either Command 0, or Command 11. ===Command=== This is a one byte numerical value representing which command is to be executed. Command 0 and Command 11 are used to request the device number. ===Number of data bytes=== Specifies the number of communication data bytes to follow. ===Status=== The status field is absent for the master and is two bytes for the slave. This field is used by the slave to inform the master whether it completed the task and what its current health status is. ===Data=== Data contained in this field depends on the command to be executed. ===Checksum=== [[Checksum]] is composed of an XOR of all the bytes starting from the start byte and ending with the last byte of the data field, including those bytes. ==Manufacturer codes== Each manufacturer that participates in the HART convention is assigned an identification number. This number is communicated as part of the basic device identification command used when first connecting to a device. ==References== {{Reflist}} ==External links== * [http://www.FieldCommGroup.org/ FieldComm Group] * [http://hartprotocollite.codeplex.com/ .NET Open Source project] {{Webarchive|url=https://web.archive.org/web/20171223221824/http://hartprotocollite.codeplex.com/ |date=2017-12-23 }} {{List of automation protocols}} {{Authority control}} [[Category:Network protocols]] [[Category:Industrial computing]] [[Category:Serial buses]] [[Category:Industrial automation]]
Summary:
Please note that all contributions to RS-485 may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
RS-485:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Templates used on this page:
Highway Addressable Remote Transducer Protocol
(
edit
)
Template:Authority control
(
edit
)
Template:Automation protocols
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox fieldbus protocol
(
edit
)
Template:List of automation protocols
(
edit
)
Template:Main other
(
edit
)
Template:Navbox
(
edit
)
Template:Pagetype
(
edit
)
Template:Reflist
(
edit
)
Template:SDcat
(
edit
)
Template:SHORTDESC:Industrial automation protocol
(
edit
)
Template:Short description
(
edit
)
Template:Short description/lowercasecheck
(
edit
)
Template:Template other
(
edit
)
Template:Webarchive
(
edit
)
Module:Arguments
(
edit
)
Module:Authority control
(
edit
)
Module:Authority control/config
(
edit
)
Module:Check for unknown parameters
(
edit
)
Module:Disambiguation/templates
(
edit
)
Module:Infobox
(
edit
)
Module:InfoboxImage
(
edit
)
Module:Navbar
(
edit
)
Module:Navbar/configuration
(
edit
)
Module:Navbox
(
edit
)
Module:Navbox/configuration
(
edit
)
Module:Pagetype
(
edit
)
Module:Pagetype/config
(
edit
)
Module:Pagetype/disambiguation
(
edit
)
Module:Pagetype/rfd
(
edit
)
Module:Pagetype/setindex
(
edit
)
Module:Pagetype/softredirect
(
edit
)
Module:SDcat
(
edit
)
Module:String
(
edit
)
Module:TableTools
(
edit
)
Module:Webarchive
(
edit
)
Module:Webarchive/data
(
edit
)
Module:Wikitext Parsing
(
edit
)
Module:Yesno
(
edit
)
Navigation
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Wiki tools
Wiki tools
Special pages
Page tools
Page tools
User page tools
More
What links here
Related changes
Page information
Page logs