ADM1033
http://onsemi.com
22
R1 and R2 should be chosen such that
(eq. 3)
2Vt V
PULLUP
R2ń(R
PULLUP
) R1 ) R2) t 5V
The fan inputs have an input resistance of nominally
160 kW to ground. This should be taken into account when
calculating resistor values.
With a pullup voltage of 12 V and pullup resistor less than
1 kW, suitable values for R1 and R2 would be 100 kW and
47 kW. This gives a high input voltage of 3.83 V.
Figure 37. Fan with Strong TACH. Pullup to >V
CC
or
Totem-Pole Output, Clamped with Zener and Resistor
12 V
V
CC
FAN SPEED
COUNTER
FAN (07)
ADM1033
*CHOOSE ZD1 VOLTAGE APPROXIMATELY 0.8 V
CC
PULL-UP
TYP < 1 kW
OR TOTEM-POLE
ZD1*
Figure 38. Fan with Strong TACH. Pullup to >V
CC
or
Totem-Pole Output, Attenuated with R1/R2
12 V
V
CC
FAN SPEED
COUNTER
FAN (07)
ADM1033
*SEE TEXT
< 1 kW
R1*
R2
TACH
OUTPUT
Fan Speed Measurement
The fan counter does not count the fan TACH output
pulses directly. This is because the fan may be spinning at
less than 1000 rpm and it would take several seconds to
accumulate a reasonably large and accurate count. Instead,
the period of the fan revolution is measured by gating an
on-chip 81.92 kHz oscillator into the input of a 16-bit
counter for one complete revolution of the fan. Therefore,
the accumulated count is actually proportional to the fan
tachometer period and inversely proportional to the fan
speed.
The number of poles in the fan must be programmed in
Configuration Register 3 (Address 0x03). Bits <3:0> set the
number of poles for Fan 1, and Bits <7:4> set the number of
poles for Fan 2. This number must be an even number only,
because there cannot be an uneven number of poles in a fan.
A TACH period is output for every two poles. Therefore, the
number of poles must be known so that the ADM1033 can
measure for a full revolution.
Figure 39 shows the fan speed measurement period,
assuming that the fan outputs an ideal TACH signal. In
reality, the TACH signal output by the fan is chopped by the
drive signal. However, since the drive and the TACH signal
are synchronized, there is enough information available for
the ADM1033 to measure the fan speed accurately.
Figure 39. Fan Speed Measurement for a 4-pole Fan
CLOCK
IDEAL
TACH
FAN
MEASUREMENT
PERIOD
Fan Speed Measurement Registers
These 16-bit measurements are stored in the TACH value
registers.
Table 26. TACH VALUE REGISTERS
Register Description Default
0x4A TACH1 Period, LSB 0xFF
0x4B TACH1 Period, MSB 0xFF
0x4C TACH2 Period, LSB 0xFF
0x4D TACH2 Period, MSB 0xFF
Reading Fan Speed
Reading back fan speeds involves a 2-register read for
each measurement. The low byte should be read first. This
freezes the high byte until both high and low byte registers
have been read, preventing erroneous fan speed
measurement readings.
The fan tachometer reading registers report back the
number of 12.2 ms period clocks (81.92 kHz oscillator)
gated to the fan speed counter, for one full rotation of the fan,
assuming the correct number of poles is programmed. Since
the ADM1033 essentially measures the fan TACH period,
the higher the count value, the slower the actual fan speed.
A 16-bit fan TACH reading of 0xFFFF indicates that the fan
has stalled or is running very slowly (< 75 rpm).
Calculating Fan Speed
Fan speed in rpm is calculated as follows. This assumes
that the number of poles programmed in the Configuration
Register 3 (Address 0x03) is correct for both fans.
Fan Speed (RPM) = (81920 60)/Fan TACH Reading
where:
Fan TACH Reading = 16-bit Fan TACHometer Reading
Example:
TACH1 High Byte (Reg. 0x4A) = 0x17
TACH1 Low Byte (Reg. 0x4B) = 0xFF
What is Fan 1 speed in rpm?
Fan 1 TACH Reading = 0x17FF = 6143d
RPM = (f 60) / Fan 1 TACH reading
ADM1033
http://onsemi.com
23
RPM = (81920 60) / 6143
Fan Speed = 800 RPM
Alarm Speed
The fan ALARM speed (Bit 6) in Status Register 3
(Address 0x51) is set whenever the fan runs at alarm speed.
This occurs if the device is programmed to run the fan at full
speed whenever the THERM
temperature limits are
exceeded. The device runs at alarm speed, for example, if the
Boost Disable bit (Bit 1) of the Configuration 2 Register
(Address 0x02) is not set to 1.
Fan Response Register
The ADM1033 fan speed controller operates by reading
the current fan speed, comparing it with the programmed fan
speed, and then updating the drive signal applied to the fan.
The rate at which the ADM1033 looks at and updates the
drive signal is determined by the fan response register.
Different fans have different inertias and respond to a
changing drive signal more or less quickly than others. The
fan response register allows the user to tailor the ADM1033
to a particular fan to prevent situations like overshoot.
The user programs the number of updates the ADM1033
can make to the drive signal per second. Table 27 lists the
available options.
Table 27. FAN RESPONSE CODES
Code Update Rate
000 1.25 Updates/Second
001 2.5 Updates/Second = Default
010 5 Updates/Second
011 10 Updates/Second
100 20 Updates/Second
101 40 Updates/Second
110 80 Updates/Second
111 160 Updates/Second
Table 28. CONVERSION RATES
Bit # Function
7 Reserved
<6:4> Reserved
3 Reserved
<2:0> Fan 1 Response
Look-up Table: Modes of Operation
The ADM1033 look-up table has two different modes of
operation used to determine the behavior of the system:
Manual Mode
Look-up Table
Manual Mode
In manual mode, the ADM1033 is under software control.
The software can program the required fan speed value or
the target fan speed to the ADM1033, which then outputs
that fan speed.
Programming Target Fan Speed
In this mode, the user programs the target fan speed as a
TACH count for N poles or a TACH count for one full
rotation of the fan, assuming the number of poles is
programmed correctly in the Configuration 3 Register
(Address 0x03).
Use the following steps to program the target fan speed:
1. Place the ADM1033 into manual mode. Set Bit 7
(Table/SW) of Configuration Register 1
(Address 0x01) = 0.
2. Program the target TACH count (fan speed) using
the following equation:
(eq. 4)
TACH Count + (f 60)ńR
where:
f = clock frequency = 81.92 kHz
R = required RPM value
Example 1: If the desired speed for Fan 1 is 5000 rpm,
program the following value to the TACH count registers:
TACH Count = (f 60)/5000
TACH Count = 983d = 0x03D7
Example 2: If the desired speed for Fan 2 is 3500 rpm,
program the following value to the TACH pulse period
registers:
TACH Count = (f 60)/3500
TACH Count = 1404d = 0x057C
Table 29. REGISTERS TO BE PROGRAMMED
Fan Description Address Value
Fan 1 Look-up Table FS1, LSB 0x2A 0xD7
Fan 1 Look-up Table FS1, MSB 0x2B 0x03
Look-up Table
The ADM1033 allows the user to program a
temperature-to-fan speed profile. There are 24 registers in
the look-up table; 8 for temperature and 16 for target fan
speed (each target fan speed is two registers). In total, there
are eight available points.
There are two options when programming the look-up
table. The ADM1033 can be programmed to make the fan
speed run at discrete speeds and jump to the new fan speed
once the temperature threshold is crossed. Or, it can linearly
ramp the TACH count between the two temperature
thresholds.
ADM1033
http://onsemi.com
24
Figure 40 and Figure 41 show what the look-up table
looks like if all eight points are used on the one curve.
Figure 40 shows the transfer curve when the fan is
programmed to run at discrete speeds. The ADM1033 spins
the fan at its new speed once a threshold is crossed.
Figure 40. Programming the Look-up Table in
Discreet Fan Speeds Mode
TACH COUNT 8
TACH COUNT 7
TACH COUNT 6
TACH COUNT 5
TACH COUNT 4
TACH COUNT 3
TACH COUNT 2
TACH COUNT 1
T1 T2 T3 T4 T5 T6 T7 T8
TEMPERATURE
FAN SPEED
Figure 41 shows the transfer curve if the Linear Fan
Speeds option is chosen. At temperature T1, the fan runs at
Fan Speed 1. As the temperature increases, the fan speed
increases until it reaches Fan Speed 2 at T2.
Figure 41. Programming the Look-up Table in Linear
Fan Speeds Mode
TACH COUNT 8
T1
TEMPERATURE
FAN SPEED
T2 T3 T4 T5 T6 T7 T8
TACH COUNT 7
TACH COUNT 6
TACH COUNT 5
TACH COUNT 4
TACH COUNT 3
TACH COUNT 2
TACH COUNT 1
Figure 42. Programming Two Points on the
Look-up Table
TACH COUNT 2 TO 8
T1
TEMPERATURE
FAN SPEED
T2
TACH COUNT 1
T (3 TO 8) = C
Once the temperature exceeds the highest temperature
point in the look-up table, the fan speed remains at the
highest speed until the temperature drops below the T7
temperature value. When the look-up table is split in two, the
same applies.
If the temperatures in T1 to T8 are not programmed in
succession, the fan speed moves to the next highest
programmed temperature as the temperature increases.
Similarly, when the temperature decreases, it ignores
programmed higher temperatures and jumps to the next lower
temperature. Therefore, the temperature-to-fan speed profile
for increasing and decreasing temperature can be different.
When programming the look-up table, the user has the
option to use between two and eight points for the fan. If the
user just wants to program a transfer curve (and knows the
starting temperature, minimum speed, maximum
temperature, and maximum speed), then all the user needs
to program are four parameters: T1, T2, FS1, and FS2. The
remainder of the look-up temperature thresholds should
remain at their default values of +191C. If required, the FS3
should be programmed with the same value as FS2 to give
the flat curve, if required. Or, the fan speeds can be left at the
default value of 0. However, it is normal to program a
THERM
limit as well. Once this temperature is exceeded
and the boost bit is set, the fan run to full speed. This
overrides the look-up table.
Table 30. LOOK-UP TABLE REGISTER ADDRESS
x Temperature, x FSx, LSB FSx, MSB
1 0x22 0x2A 0x2B
2 0x23 0x2C 0x2D
3 0x24 0x2E 0x2F
4 0x25 0x30 0x31
5 0x26 0x32 0x33
6 0x27 0x34 0x35
7 0x28 0x36 0x37
8 0x29 0x38 0x39
Setting Up the Look-up Table in Linear Mode
When Discrete/Linear Speed (Bit 2) is set to 1 (default),
the TACH count decreases linearly (and therefore the fan
speed increases) with temperature.
Example: At temperature T
X
, the fans run at FS
X
and fan
speed increases with temperature to FS
X+1
at temperature
T
X+1
.
Alternatively, the fan can be run at discrete fan speeds.
When Discrete/Linear Speed (Bit 2) is set to 0, the fan runs
at a new speed once the temperature threshold is exceeded.
Setting Which Temperature Channel Controls a Fan
Fan Behavior Register (Address 0x07)
Bits <1:0> = DRIVE1 Behavior (D1B)

ADM1033ARQZ-REEL

Mfr. #:
Manufacturer:
ON Semiconductor
Description:
Board Mount Temperature Sensors +/- 1 C Digital 2-Wire
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union