Exalon Delft HART® 7.7
Wired Slave Stack HPAL2
HPAL2 is the Exalon Delft HART V7.7 Slave Protocol stack for wired slave devices.
COMPLETE
HPAL2 implements everything you will reasonable need for the communication layer of your wired HART device and even for your wirelessHART maintenance port.
HPAL2 allows you to focus on your domain specific knowledge.
Best tested
HPAL2 passes all tests from the HCF Test Specifications as implemented by the HCF HART Test System (HCF_KIT-192 upd 3.6)*.
And what's more: it passes all tests implemented by the Exalon Delft HART Test Bench, the most comprehensive HART test tool on the market. HART Test Bench implements all relevant tests for which the HCF has defined test specifications, and implements these even more strictly to reduce the change of false positive test results.
You need to be sure your device conforms to HCF specifications? This is as sure as it gets.
Supported Hardware platforms
HPAL2 is distributed with 3 fully working example applications. Two for the Renesas M16 platform (M16C/62p and M16C/63) and one for ARM (STM32L on a Discovery board).
HPAL2 has been developed especially with the Renesas M16C family in mind. In combination with Renesas C compiler and On-chip debugger. You can development of your software directly on your hardware platform without expensive emulators or other specialized hardware that may interfere with your platforms power or start-up behavior. Special On-Chip facilities offered by the Renesas M16C family in combination with the software design of HPAL2 make the On-chip debugger kernel virtually invisible to your code.
The M16C family has traditionally been the obvious low-power high performance choice for fieldbus protocol stacks like Profibus PA and Foundation Fieldbus and is the only processor to date to simultaneously support all major fieldbusses with high-quality stacks.
Nevertheless you can select any other low-power microcontroller and easily port the code. The little hardware dependent code is separated into one module to make porting as straightforward as possible. With the three examples you are immediately up to speed.
The importance of timing
To achieve reliable HART communication it is extremely important that the timing of incoming and sent characters and messages precisely follow the specifications of the protocol. Specifically the timing between 2 sent or received characters must be strictly observed. Generic HART protocol stacks demand the highest interrupt priority for the processing of communication, which complicates the interrupt handling of the application.
While in past applications of HART communication was almost always point-to-point, in current multi-drop networks with WirelessHART gateways, multiple masters and bursting devices these timing aspects are particularly important as the reliability of the net works and it's ability to recover from faults depend on it.
On the M16C family HPAL2 uses built-in peripherals (RTS handshake, DMA) to there fullest extent, minimizing interference with the interrupt handling of your application or that of the software debugger. On other platforms these functions can be implemented in software as required.
Energy efficient architecture
HART devices typically have less than 1 mA current available for the microcontroller. Advanced hardware designs can store excess currents for use during computationally intensive periods. HPAL2 makes this easy with an event driven architecture, where all code runs in interrupt handlers. This way the main loop contains only one instruction: IDLE. As wake up from idle is automatic (on M16C platforms) the result is that the processor only runs when an interrupt occurs and maximum power efficiency is obtained.
Application Layer
HPAL2 implements a complete HART Application Layer based on a Generic Transducer Model. This means you start with a working transmitter that already complies with the HART V7 slave specifications.
The following table shows the functions that HPAL2 implements:
HPAL2 Functionality | |
---|---|
Feature | Support |
HART Conformity | V 7.7 |
Data Link Layer Universal Commands | |
Universal Commands | |
Dynamic Variables | |
Device Variables | Transducer Model based |
Dynamic Variable Mapping | |
Standardized Device Variables | |
Abstracted Sensor | |
Hart Device Status | |
Extended Field Device Status | |
Multi Slave Address Mode | |
Analog Channels implementation | |
Block Transfer | |
Trimming | |
PV Ranges/Transfer Function/Damping/Alarm | |
Device Variable Damping/Span/Limits | |
Device Variable Information/Classification/Family | |
Device Self Test and Reset | |
Configuration Changed Reset | |
Device Variable Set Zero | |
Device Variable Write Units | |
Device Locking | |
Device Variable Value writing | |
Device Variable Catching | |
Multiple Burst Messages | |
Burst Triggers and Periods | |
Smart Data Publishing and Event Notification | |
Time stamped Data and Real Time Clock | |
Aggregated Commands | |
Device Location and Locale | |
Persistence Maintenance (erase, compact) | |
Namur NE107 | |
Condensed Status Map | |
Status Simulation | |
Delayed Response Mechanism |
Geïmplementeerde HART commando's
HART commando's geïmplementeerd in HPAL2 |
||
---|---|---|
Category | Number | Description |
Quick Quote
Click here for a Quick Quote now!
FAQ
Getting started
The HART communications foundation has an “Application Guide” available at no cost (PDF download). Further you can purchase “HART Field Communications Protocol – A Technical Overview”. This document provides an excellent starting point to understand HART specifications and HPAL2 code.
Can HPAL2 be ported to a different processor or compiler?
Yes, the little hardware dependent code is separated into one module to make porting as straightforward as possible. The Renesas compiler used is ANSI C with a few extensions found in most other embedded microcontroller compilers. Exalon Delft can support you with the porting process and validate your results if you desire.
Where can I get the HART Protocol specifications?
Please see the Specifications & Documents page of the HART Communication Foundation or the International Electrotechnical Commission website.
Do I have to become a member of the HART Communication Foundation?
Not necessarily, but we recommend that you do.
The HART Communication Foundation holds certain Intellectual Property rights like trademarks, copyrights and patents. Becoming a member gives you certain rights to make use of this IP. Vice-versa the HART Communication Foundation defends these rights on behalf of it's members.
If you remove the parts of the stack that might be protected by IP rights (like Burst Mode), don't use HCF trademarks and purchase specification documents separately you might not need to be come a member. If in doubt about these matters contact the HCF directly or seek professional legal advice.
Can HPAL2 be used to build a HART master?
You can change any software into any other software. But realistically, a HART master is a completely different state machine then a HART slave. If you need a master you might consider our Smart HART Modem which has a built-in master.
How much memory does HPAL2 require?
This will depend a lot on what your device implements, like the number of Device Variables etc., as well as on you hardware platform and compiler.
The sample application using the Generic Transmitter model and having full bursting support, built on an M16C platform uses about 4K RAM and 48.5K ROM.
How many Source Lines of Code is HPAL2?
All source lines combined measured using sloccount tool amounts to SLOC of 12K which corresponds to 2.8 Person-Years of programming and testing.
How is the software documented?
The software is self documenting (Doxygen). In addition we have a software manual included. All documentation provided does not replace, and is intended to be read in conjunction with, protocol design analysis, specification and test documentation as provided by the HART Communications Foundation.
* Some tests implementations of the HCF Test System are erroneous or not yet up-to-date with HART revision 7.7. This has been reported to the HCF.
Quick Quote
Click here for a Quick Quote!
#### FAQ [Getting started](#faq-started)
Where can I learn about the HART protocol?
Can HPAL 2 be ported to a different processor or compiler?.
Where can I get the HART Protocol specifications?
Do I have to become a member of the HART Communication Foundation?
Can HPAL2 be used to build a HART master?
How much memory does HPAL2 require?
How many Source Lines of Code is HPAL2?
How is the software documented?