HMR4007
SENSOR PRODUCTS
HMR4007
Linear Position Sensor
User’s Guide
HMR4007
SENSOR PRODUCTS
SPECIFICATIONS
Characteristics
Conditions
Min
Typ
Max
Units
General
Accuracy
0.2
0.1
0.1
0.01
0.01
30
mm
mm
mm
mm
Hz
Resolution
Hysteresis
Repeatability
Update Rate
0.1
10
(note 1)
Standoff
Distance (gap) between the target
magnet and the sensor board
0.1
5
mm
Magnetic Field
Range
magnetic field at the sensor array
80(note 1)
gauss
mm
(note 3)
length
apparent magnet length at sensor array
23
Orientation
Electrical
Axial (note 2)
Input Voltage
Current
Unregulated
6
28
20
VDC
mA
15
Digital Interface
Baud Rate
Signaling Level
nonstandard synchronous serial interface
1000
3.5
21,000
5.0
Bits / sec.
VDC
TTL levels
( “1” )
( “0” )
-0.3
1.5
VDC
Connector
In-Line 6-Pin Block (0.1” spacing)
D/A output
Analog Interface
Analog Output
Update Rate
0
2.5
VDC
Hz
10
30
Signaling Level
TTL levels
( “1” )
( “0” )
3.5
-0.3
5.0
1.5
VDC
VDC
Connector
Physical
In-Line 4-Pin Block (0.1” spacing)
Dimensions
Circuit Board Assembly
(including connectors)
HMR4007
40.0 x 80.0 x
12.0
mm
grams
°C
Weight
16.5
Environment
Temperature
Operating
Storage
-40
-55
-
-
+70
+125
Note 1: The standoff distance between the sensor board and the target magnet is highly variable. A magnet of sufficient strength,
however, must be used to maintain a magnetic field strength of 80 gauss (min.) at the sensor array and an apparent
magnet length of 23 mm.
Note 2: Sensor boards are factory calibrated in the axial mode using a 27mm cylindrical magnet. Operation in the radial mode
must be configured by the user.
Note 3: cf. "Magnet Considerations" (pg. 8)
HMR4007
SENSOR PRODUCTS
PIN CONFIGURATION
Pin Number
Pin Name
Description
Digital Interface
1
RTS
Data_Out
Data_In
CTS
Serial Clock Output
Serial Data Output
Serial Data Input
Serial Clock Input
2
3
4
5
6
Power
GND
Unregulated Power Input (+6 to +28 VDC) (see note 1)
Power and Signal Ground
Analog Interface
1
Power
Analog Out
Position Valid
GND
Unregulated Power Input (+6 to +28 VDC) (see note 2)
0 - 2.5 VDC analog output
2
3
4
TTL level (0 = position invalid, 1 = position valid)
Power and Signal Ground
Jumper Block #1
2-5
Note 1
Note 1
Analog Output port selected as power source
3-6
Serial Communications port selected as power source
Note 1: The board contains three interface connectors for digital and/or analog communications. Power is supplied to the board
through any one of these connectors and is selected by jumper block #1. All of the ground connections on all three
ports are common to the circuit ground and are not affected by the jumper position. Only ONE of the three positions on
JP1 should be shorted at a time. Shorting more than one may result in excessive power supply currents and board
damage.
CIRCUIT DESCRIPTION
The HMR4007 Linear Position Sensor circuit board includes all of the basic sensors and electronics to provide a
digital indication of position of a target magnet. The HMR4007 starts with an array of seven Honeywell HMC1501
single axis magnetoresistive (MR) sensors to determine the field geometry and direction of a target magnet attached
to the moving part of a device under test. These sensors are supplied power by a constant voltage source, and the
use of an array of sensors helps to maintain accuracy over temperature and run-out. The sensor outputs are routed
to a multiplexed Analog to Digital Converter (ADC) integrated circuit. A microcontroller integrated circuit periodically
queries the multiplexed ADC and performs sensor offset and gain corrections and computes the position of the target
magnet as a function of the distance of travel along the long axis of the sensor board. The position data, along with
an error bit, is available thought the serial interface or is present on the Digital to Analog Converter (DAC) output port.
The serial interface is not needed in order to use the board’s stand-alone analog output. The microcontroller
also performs the external serial data interface and other housekeeping functions. An onboard EEPROM integrated
circuit is employed as a nonvolatile storage to retain necessary data and configuration variables for best performance.
The HMR4007 uses an on-board low drop out (LDO) +5 volt regulator so that a regulated +5 volt power supply or an
unregulated power supply in the range of +6VDC to +28VDC can be used. The power is supplied to the board
through one of the three user ports being (serial, analog, or USB) and a jumper is used to select which port is the
power source. Only one jumper should be in place at any one time as the board does not have over current
protection and use of more than one jumper can result in excessive power supply currents and board damage.
HMR4007
SENSOR PRODUCTS
PHYSICAL CHARACTERISTICS
The circuit board for the HMR4007 Linear Position Sensor is approximately 340mm by 80mm. A 6-pin right angle
connector (J1) and two 4-pin connectors (J2, J3) protrude from the back of the board for user connections.
Components on the top-side have a maximum height of 12mm. Figure 1 shows a typical circuit board with
dimensions.
PARTS PLACEMENT
x
x
1
x
x
x
x
3
Not used
leave all OPEN
2
JP1
Where 1 = J3 (USB)
2 = J2 (Analog output)
3 = J1 (digital communications) - shown above
Sensed axis
4-40NF mounting holes
(connected to ground plane)
4 3 2 1
6 5 4 3 2 1
USB port
not used
PC (parallel port)
Sensor Board
Sensor Board
LPT bit
LPT pin
J1 pin
uP bit
RA3
RA2
RA1
RA0
Vcc
function
Tx_CLK
Tx
color
(gray)
(yellow )
(blue)
J2 pin
1
2
uP pin
Vcc
function
S3
S4
D1
D0
-
15
13
3
<
<
1
2
3
4
5
6
power input (5-28VDC)
status (TTL output)
RA4
Logic 0 = output not valid
Logic 1 = output valid
>
Rx
2
>
Rx_CLK
+ 5-28 VDC
pow er gnd
(w hite)
(red)
3
4
D/A Output
GND
analog output (0 - 2.25V)
power ground
-
< >
< >
-
19
GND
(black)
Sx = status (LPT port base address + 1, Bit x)
Dx = data (LPT port base address + 0, Bit x)
Figure 1 – Sensor board layout and connector pin designations
MATING PARTS
Connectors J1, J2, and J3 mate with GC/Waldom C-Grid crimp-style shells and terminals. Polarized shells (with a
locking tab) or unpolarized shells are available. The applicable GC/Waldom part numbers are:
Connector
pins
Polarized shell
50-57-9406
50-57-9404
50-57-9404
Unpolarized shell
50-57-9006
Crimp terminals
16-02-0097
J1
J2
J3
6
4
4
50-57-9004
50-57-9004
16-02-0097
16-02-0097
HMR4007
SENSOR PRODUCTS
APPLICATION NOTES
USING THE HMR4007 AS A STAND ALONE SENSOR
Introduction
The HMR4007 can be used as a stand-alone sensor without the need for any digital communications. The board is
configured at the factory to provide a 0-2.5 VDC analog output (axial magnet) and status signal that represents the
position of the magnet along the long axis of the device. All power and signals are available on connector J2.
Connector J2 General Description
When used in a stand-along mode, only connector J2 needs to be used. Connector J2 is a 4-pin socket header that is
used to supply power (pin 1), ground (pin 4), analog position (pin 3), and status (pin 2). When power is supplied to
the board though J2, a jumper must be placed on pins 2-5 (center pair) in jumper block JP2. The power supply can
be regulated 5VDC or unregulated 6-28VDC. If connector J2 is used in combination with the communications port,
only ONE of the ports should be used to supply power to the board.
Analog Outputs
The analog output (J2, pin 3) represents the position of the magnet along the long axis of the sensor board as seen in
Figure 2 below. In the given example, the center of the magnet lies between sensors 3 and 4. The resulting output
voltage is 1.20 volts which corresponds to a position of 33.4 mm.
69.6
33.4 m m
N
34.8
1.20 vdc
S
0
0
1.25
2.50
O utput (volts, D C )
Figure 2. Position sensing example.
An effort should be made to keep the angle of the magnet with respect to the sensor board reasonably constant along
the length of travel. The sensor, however, is quite tolerant to changes in distance (gap) between the sensor and
magnet along the length of travel.
Status Pin
Pin 2 (on port J2) is a TTL logic-level status output bit. This pin will be logic high (+5VDC) whenever the position
output is valid. Logic level low (ground) indicates that the sensor cannot calculate a magnet position. The most likely
causes of a position error signal are:
1. The magnet is beyond the sensed range of the device.
2. The magnet is too short or too weak for the sensors to track.
3. The gap between the sensor and magnet is too large.
4. The magnet is not present.
HMR4007
SENSOR PRODUCTS
USING THE HMR4007 IN DIGITAL COMMUNICATIONS MODE
Introduction
The HMR4007 is capable of communicating with a higher-level system through a proprietary communications port
(J1). This port uses a bit-clocked serial protocol for higher speed and higher data integrity than standard serial
protocols. Signal levels are standard TTL compatible. For convenience, a windows-based DLL (dynamic link library)
and sample Visual Basic demonstration program are available from Honeywell that communicates with the sensor
through a PC's parallel port. Interested developers should contact their Honeywell representatives or the factory for
details of the communications protocol and command structure. The communications port can be used independently
or in combination with the analog output described earlier. When used in combination with the analog port, only ONE
port should be used to supply power to the board. Sensor configuration, such as changing the magnet mode from
axial to radial, is available only through the communications port and DDL calls are supplied to support these basic
functions.
Connector J1 General Description
J1 is a 6-pin header which is wired to a PC parallel port for digital communications with the Honeywell demonstration
DLL software (or other user application) using the following connections:
PC (parallel port)
Sensor Board
LPT pin
data
direction
<--
J1 pin
function
color
15
13
3
2
-
1
2
3
4
5
6
RTS
Data_Out
Data_In
CTS
+5-28 VDC
power gnd
(gray)
(yellow)
(blue)
(white)
(red)
<--
-->
-->
<>
<>
19
(black)
Demonstration Software
Two programs are included with this board to demonstrate its operation.
HMR4007.dll is a dynamic link library that performs low level communications between the host PC's parallel port
and the sensor board to query the current, measured position and support operating mode changes. Several
functions are visible to the user using the following Visual Basic header formats:
Declare Function InitPort Lib "HMR4007.dll" (ByVal ADD As Integer, ByVal TOut As Long) As Integer
Declare Function CurrentPosition Lib "HMR4007.dll" () As Integer
Declare Function SetAxialMode Lib "HMR4007.dll" () As Integer
Declare Function SetRadialMode Lib "HMR4007.dll" () As Integer
Declare Function EnableDAC Lib "HMR4007.dll" () As Integer
Declare Function DisableDAC Lib "HMR4007.dll" () As Integer
The first function, "InitPort", is used to setup the PC's parallel port base address (default is 0x378) and timeout value.
This function must be called before any calls to the operating functions.
The port base address (ADD) is the address of the computer's parallel (printer) adapter and used by the software
as a base address to send and receive data to the sensor card through the parallel port adapter. The value is
passed as a 16-bit integer. Setting this value to -1 re-initializes the port with the previous value (or default value)
retained.
The timeout value (Tout) is used as an internal loop counter to return to the calling program after a fixed time if
for some reason the sensor board fails to respond. A value of 10,000 is the default and works well on a 100MHz
Pentium-class machine. Higher values will be needed for faster machines. The parameter is passed as a 32-bit
long integer. Passing a value of -1 sets the value to the previous (or default) value.
The function returns a 16-bit integer "0" to indicate that the port is active.
HMR4007
SENSOR PRODUCTS
The second function, "CurrentPosition", is used to query the current position of the magnet. The following 16-bit
integer values are returned:
0-1024
-1, -2
normal position response where 1024 represents full scale response.
communications failure. The sensor failed to respond to the PC quickly enough. This is
usually caused by improper wiring, improper power settings, a timeout value too small for
the PC speed, or the DLL not being initialized before attempting to get the position.
position error. The sensor communicated correctly, but the sensor card was not able to
calculate a valid position. A position error is usually caused by the magnet being off the end
of the board or not present.
-3
The functions "SetAxialMode" and "SetRadialMode" are used to configure the sensor to use magnets in either the
axial mode or radial (see the introduction for a description of axial and radial modes). The sensor is shipped with the
axial mode selected. Once set into an operating mode, that mode is retained in nonvolatile RAM.
The functions "EnableDAC" and "DisableDAC" are used to enable and disable the digital to analog (DAC) output on
port J2. The sensor is shipped with the DAC enabled. Once set into an operating mode, that mode is retained in
nonvolatile RAM.
HMR4007.exe: This is a simple Visual Basic 5.0 executable that demonstrates the use of the DLL and shows a
simple graphical display of the current position. Source code for the program is available and can be modified as
desired. The position window will turn yellow in the event of a communications failure, or turn red in the event of a
position error.
MAGNET CONSIDERATIONS
The choice of magnet to be used with the HMR4007 is critical to its accuracy. Because a magnet's field extends
beyond the boundaries of the material, a magnet has two dimensions to consider: its physical (material) length and its
apparent (magnetic) length. The heart of the HMR4007 is Honeywell's HMR1501 magnetoresistive (MR) sensor that
responds to the angle between the chips' sensitive axis and the magnetic field. The HMR1501 has a maximum
response when this angle is +/-45 degrees. We can, therefore, define the magnet's apparent length as the distance
between the +45 and -45 degree points at the gap distance.
As the gap between the magnet and the sensor array increases, the
apparent length of the magnet increases as well. A general rule of
HMR1501
response
= f(4)
Bx
thumb for a cylindrical bar magnet is that the apparent length will
increase by the amount of the gap. A twenty-five millimeter long
B
4
magnet for example will appear to be thirty-five millimeters long at a
gap of 10 millimeters. Since magnetic fields are highly nonlinear and
subject to the exact geometry and properties of the material, this is only
a general guide.
The HMR4007 uses three sensors in its array at all times in order to
calculate position. It automatically selects the sensors closest to the
magnet for this purpose. The apparent magnet length must, therefore
be greater than he spacing between three sensors, and this distance is
23.2mm for the HMR4007.
N
S
physical
length
apparent
length
The disadvantage of increasing the gap between the sensor and
magnet in order to increase its apparent length is that a magnet's field
strength decreases exponentially with gap. In order to maintain the MR
sensor's response the magnetic field at the sensor must be greater
than 35 gauss. Unless extremely strong rare earth magnets are
economically feasible or a large gap is required because of restrictions
on where the magnet and array can be mounted, it is usually better to
keep the gap to a minimum and use a longer magnet.
gap
Figure 3. Magnet apparent length
900301 01-03 Rev. A
|