Features
• • • • • •
2-Phase 1A Stepping Motor Driver Compensated Half Step Operation Chopper Current Control Unidirectional Single Wire Bus Interface with Error Feedback Intelligent Travel Operation Control Referencing by Extending or Retracting
Application
• Dynamic Headlamp Adjustment
Intelligent Stepper Motor Driver ATA6830
Benefits
• • • •
Error Recognition with Feedback Short Circuit Protected Outputs Overtemperature Warning and Shut Off Supply Voltage Supervision
Electrostatic sensitive device. Observe precautions for handling.
1. Description
The circuit serves to control a stepping motor for dynamic headlamp beam adjustment in automobiles. Two chopper-controlled H-bridges serve as the stepping motor driver. The circuit receives the commands to control the stepping motor by means of a unidirectional serial single-wire bus. An integrated process control independently moves the stepping motor into the new desired position. This allows it to be automatically accelerated and slowed down. The stepping motor is operated in compensated half-step operation. The maximum clock frequency at which the stepping motor is operated depends on the supply voltage, the chip temperature, the operating mode, and position difference.
Rev. 4575D–BCD–09/05
Figure 1-1.
Block Diagram
AGND RSET COS Temperature Monitor
Supply Monitor
VDD Oscillator Biasing Voltage Regulator VSS
BUS
UART VBAT1A Command Interpreter VBAT1B
SM1A Cruising Service Control
SM1B
Driver Logic
SRA
Driver Logic
SRB
SM2A
SM2B
VBAT2A
Test Logic
VBAT2B
ATA6830
2. Pin Configuration
Figure 2-1. Pinning QFN 28
AGND
RSET
COS
VDD
23
28
27
26
25
24
BUS
22
VSS
NC
VBAT1A NC SM1A SRA SM2A NC VBAT2A
1 2 3 4 5 6 7 MLP 7x7mm 0.8mm pitch ATA6830 28 lead
21 20 19 18 17 16 15
VBAT1B NC SM1B SRB SM2B NC VBAT2B
8
9
10
11
12
13
14
SCI1
SCO1
SCI2
SCO2
TA
2
ATA6830
4575D–BCD–09/05
TTEMP
NC
ATA6830
Table 2-1.
Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
Pin Description
Symbol VBAT1A NC SM1A SRA SM2A NC VBAT2A NC SCI1 SCO1 SCI2 SCO2 TA TTEMP VBAT2B NC SM2B SRB SM1B NC VBAT1B BUS VDD VSS AGND RSET COS NC Function Battery voltage Not connected Connection for stepping motor winding A Sense resistor A connection Connection for stepping motor winding A Not connected Battery voltage Not connected Test pin, please connect to ground for EMC reasons Test pin, please connect to ground for EMC reasons Test pin, please connect to ground for EMC reasons Test pin, please connect to ground for EMC reasons Test pin, please connect to ground for EMC reasons Test pin, please connect to ground for EMC reasons Battery voltage Not connected Connection for stepping motor winding B Sense resistor B connection Connection for stepping motor winding B Not connected Battery voltage Receives the control instructions via the single wire bus from the controller 5V supply voltage output Digital signal ground Analog signal ground Reference current setting. Connected externally with a resistor to AGND. The value of the resistor determines all internal current sources and sinks. Oscillator pin, connected externally with a capacitor to AGND. The value of the capacitance determines the chopper frequency and the baud rate for data reception. Not connected
3
4575D–BCD–09/05
3. Functional Description
3.1 Analog Part
Figure 3-1. Analog Blocks
VBAT VDD
Supply Bias Oscillator Bias Generator Bandgap Voltage Regulator Voltage Supervisor Temperature Supervisor Voltage Levels Temperature Levels Clock Reset
COS
RSET
AGND
VSS
The circuit contains an integrated 5V regulator to supply the internal logic and analog circuit blocks. The regulator uses an adjusted bandgap as voltage reference. Also all other parts that require an excellent voltage reference, such as the voltage monitoring block refer to the bandgap. The bias generator derives its accurate currents from an external reference resistor. The oscillator is used for clocking the digital system. All timings like the baud rate, the step duration and the chopper frequency are determined from it. An external capacitor is used for generating the frequency. The voltage monitoring enables the circuit to drive the stepping motor at different battery voltage levels. According to the battery voltage the stepping motor will be accelerated to a maximum step velocity. In case of under or over voltage the motor will shut off. A temperature monitoring is used for shut off at overtemperature conditions and current boost in case of low temperature.
4
ATA6830
4575D–BCD–09/05
ATA6830
3.2 Digital Part
Digital Blocks
Clk Step Time Memory Voltage Levels Maximum Step Time New Step Time Actual Step Time Error Signals UART BUS Clock Recovery VREF Bitstream Recovery shiftclk bitstream rxd Data Recognition & Parity-Check reference run new position Cruise Control Stepper Motor Control Temperature Signals
Figure 3-2.
Reset
Desired Position Error Timer Error Signals Instantaneous Position
Figure 3-2 shows all digital blocks of the circuit. The stepping motor will be controlled by commands via the bus input pin. An analog comparator is used as a level shifter at the input. There is also a possibility of clamping the bus pin to ground. This will be used after detecting an error to feedback this to the microcontroller. The next block is a UART. Its task is clock recovery and data recognition of the incoming bit stream. For clock recovery a special bitstream is used after each power on. The generated bitstream will be analyzed and after a correct parity check interpreted for execution. A sophisticated cruise control generates all control signals for the two H-bridge drivers. It uses an internal step-time table for accelerating and decelerating the stepping motor depending on the actual and desired position and the temperature and voltage levels. Exception handling is integrated to interpret and react on the temperature, supply voltage, and coil-current signals from the analog part.
5
4575D–BCD–09/05
3.3
Stepping Motor Driver
H-bridge Driver Stage
Figure 3-3.
Stepper Motor Control
Driver Logic
Error Signals
VBAT
SM1x
SM2x
Temperature Shutdown
Temp. Shutdown
Temperature Warning
Temp. Warning
Clk
SRx
Reset
Vref
Shunt
Figure 3-3 shows the diagram of one H-bridge driver stage. It consists of two NMOS and two PMOS power transistors. An external shunt is used for measuring the current flowing through the motor coil. Additional comparators and current sensing circuitry is integrated for error detection.
3.4
Data Communication
The circuit receives all commands for the stepping motor via a single wire bus. In idle mode the bus pin is pulled up by an internal current source near to VBAT voltage. During the transmission the external transmitter has to pull down the bus level to send information about data and clock timing. The used baud rate has to be about 2400 baud. Because of oscillator tolerances a synchronization sequence has to be sent at the beginning of data transfer. Figure 3-4 on page 7 shows the pattern used for this sequence. The circuit uses the 1-0-1-0 sequences for adjusting the internal bit time. Later on during data transfer every 1-0-1-0 sequence coming up randomly is used for resynchronization. Thus all tolerances that occur during operation will be eliminated. To obtain a synchronization of up to 15% oscillator tolerance the pattern has to be sent at least 4 times.
6
ATA6830
4575D–BCD–09/05
ATA6830
Figure 3-4. Synchronization Sequence
SYNCHRONIZATION PATTERN
PARITY BIT
START BIT
PARITY BIT
START BIT
STOP BIT
STOP BIT
Between two commands a pause has to be included. This is necessary for a clear recognition of a new message frame (command). Figure 3-5 shows the timing diagram of two commands. Figure 3-5. Message Frame and Space
MESSAGE FRAME HIGH BYTE LOW BYTE SPACE
Every command consists of 16 bits. They will be sent with two bytes. Figure 3-6 shows the message frame. The high byte is sent first, immediately followed by the low byte. Every byte starts with a start bit and ends with a parity bit and a stop bit. The first start bit (level 0) after a pause (level 1) indicates the beginning of a new message frame. The value of the parity bit has to be odd, i.e., the crossfooting of the byte including the parity bit is odd. If a data packet is not recognized due to a transmission error (parity error), the entire command is rejected. Figure 3-6. Command Bits
MESSAGE FRAME HIGH BYTE LOW BYTE
PARITY BIT 7 START BIT 6 5 4 3 2 1 0 STOP BIT
START BIT 7 6 5 4 3 2 1
PARITY BIT 0 STOP BIT
8 DATA BITS
8 DATA BITS
7
4575D–BCD–09/05
3.5
Bus Commands
There are different commands for controlling the stepping motor. Table 3-1 shows a list of all implemented commands and their meanings. The first command, the synchronization sequence, is described above. The second group of commands are the reference commands. A reference run command causes the stepping motor to make an initial run. It is used to establish a defined start position for the following position commands. The way the reference run is executed will be described later. There are two reference run commands. The difference is the turn direction of the stepping motor. This makes the circuit more flexible for different applications. The turn direction is coded in the 4 identifier bits.
Table 3-1.
Bus Commands
High Byte Data Mode 6 0 0 0 D9 D9 D9 D9 5 1 0 0 0 0 1 1 4 0 0 0 0 0 1 1 3 1 1 0 1 0 1 0 Identifier 2 0 0 1 0 1 0 1 1 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 7 1 0 0 D0 D0 D0 D0 6 0 0 0 D1 D1 D1 D1 5 1 0 0 D2 D2 D2 D2 4 0 0 0 D3 D3 D3 D3 Low Byte Data 3 1 0 0 D4 D4 D4 D4 2 0 0 0 D5 D5 D5 D5 1 1 0 0 D6 D6 D6 D6 0 0 0 0 D7 D7 D7 D7
Bus Command Synchronization Reference run (extend) Reference run (retract) New position (0 = full extension) New position (0 = full retraction) New position (testmode, 0 = full extension) New position (testmode, 0 = full retraction)
7 1 0 0 D8 D8 D8 D8
The last class of commands are the position commands. Every new position will be sent as an absolute value. This makes the transmission more safe in terms of losing a position command. The next received command tells the stepping motor the right position again. For the position data there are 10 bits available (D0 to D9). The maximum possible step count to be coded with 10 bit is 1024. Though position commands up to 1024 will be executed, it´s prohibited to use values higher than 698, as this is the step count of the reference run. For details see chapter “Reference Run”. There are 4 new position commands. They differ in the identifier and in the modus bits. The identifier fixes the turn direction. For test purposes there are new position commands with a different mode. In this mode the stepping motor works with a reduced coil current. This may be used for end tests in the production of the application. Any command with modus or identifier different to the first reference run will be ignored. Thus it is also not possible to change modus or identifier by performing a second reference run.
8
ATA6830
4575D–BCD–09/05
ATA6830
3.6 Power-up Sequence
After power-up the circuit has to be synchronized and a reference run has to be executed before a position command can be carried out. Figure 3-7 shows a timing diagram on how the necessary sequences follow each other. Figure 3-7. Necessary Commands after Power-up
SYNCHRONIZATION SEQUENCE REFERENCE RUN SEQUENCE POSITION 1 POSITION 2
POWER UP
1 MESSAGE FRAME
2
4
1
2
10
The first sequence is the synchronization sequence. Its pattern (Figure 3-4 on page 7) should be sent at least 4 times to be sure that the following commands will be recognized. If there are distortions on the bus it is helpful to send this sequence more than 4 times. A RC lowpass filter at the bus pin (Figure 8-1 on page 20) helps to reduce distortions. After synchronization the stepping motor has to make the reference run to initialize its zero position. The first reference run will only be executed if the circuit recognizes this command three times in series. This function is implemented contributing to the importance of the reference run. After the reference run the circuit will switch to normal operation. To perform a reference run during normal operation, the command has to be sent only once. Figure 3-8 on page 10 shows the state diagram for the implemented sequence processor.
9
4575D–BCD–09/05
Figure 3-8.
Flow Diagram for the Power-up Sequence
reset state
N synchronization
Y
idle state
N 3 successive reference run commands
Y
reference run
Y
new position?
N
cruise control
idle state
10
ATA6830
4575D–BCD–09/05
ATA6830
3.7 Reference Run
In normal operation, new position commands are transmitted as absolute values. To drive the stepping motor to these absolute positions, the circuit has to know the motor’s zero position. Therefore, the stepping motor has to perform a reference run after each power-up in which it is extended or retracted to its limit stop. Before the execution of the reference run, the motor is supplied with hold current. As the actual position is not known at the beginning of the reference run the whole position range has to be passed. To optimize performance for smaller actuators, the reference run has been reduced to 698 steps. Therefore, it is prohibited to access positions higher than 698, because in a following reference run the stepping motor would not reach its zero position. If it is necessary that the entire range up to position 1024 can be used, the reference run has to be executed twice. Since any command during reference run is ignored, the second reference command has to be sent about 2.4s after the first command. To avoid any possible mistake, e.g., the loss of a step during the reference run or the bouncing at the limit stop, there is a special run to be executed. This is shown in Table 3-2. Table 3-2.
Phase
Reference Run Course
Action Drive Int. Counter 704 703 through the whole range 702 701 700 to 11 10 9 8 7 to 6 6 5 to 0 0 varied
Steptime
3300 µs 2895 µs 2540 µs 2240 µs 2240 µs 2240 µs 2549 µs 2895 µs 3300 µs 3300 µs 3300 µs 3300 µs varied
I
Ramp up to 446 Hz step frequency
Drive at constant speed
II III IV V VI VII
Ramp down to minimum step frequency (303 Hz) Wait for 6 × 3300 µs with the last coil current Perform another 6 steps with 3300 µs Wait for 5 × 3300 µs with the last coil current Set current to hold current; normal operation
(698 steps)
3.8
Cruise Control
The travel operation control independently moves the stepping motor into its new position. To reach the new position as fast as possible but without abrupt velocity changes, the stepping motor is accelerated or slowed down depending on the difference between actual and nominal position. If this difference is huge the stepping frequency will increase (acceleration). When the new position is nearly reached, the frequency will decrease again (deceleration). In the case of a new nominal position opposite to the direction of the motion being from the microcontroller, the stepping frequency will decrease to its starting value (300 Hz) before the direction can turn. The cruise control is shown in Figure 3-9 on page 12. The possible stepping frequencies for velocity control are shown in Table 3-3 on page 12.
11
4575D–BCD–09/05
Figure 3-9.
Dynamic Frequency Adaption
frequency
present frequency minimum frequency (300 Hz)
present position
nominal position time t+1
nominal positon time t
position
Table 3-3.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Frequency Ramp
Step Frequency (Hz) 303 345 394 446 493 538 575 613 649 680 714 741 769 800 826 855 877 901 926 952 980 1000 Step Time (µs) 3300 2895 2540 2240 2030 1860 1740 1630 1540 1470 1400 1350 1300 1250 1210 1170 1140 1110 1080 1050 1020 1000
Number
12
ATA6830
4575D–BCD–09/05
ATA6830
In addition to the actual step frequency there is a maximum step frequency up to which the actual step frequency can rise. To secure a correct operation at low supply voltages the maximum value for the stepping frequency is smaller at low voltages. If the supply voltage falls below the 9V threshold, travel operation will suspend. To restart operation, the supply voltage has to rise above 10.5V. The relation of the maximum step frequency and the supply voltage during operation is shown in Table 3-4. If the chip temperature exceeds the overtemperature warning threshold, the step speed is reduced to 300 Hz. If the chip temperature rises further the output driver is shut off.
Table 3-4.
VBAT < 9V 9V to 9.5V 9.5V to 10V 10V to 10.5V 10.5V to 11V > 11V > 20V
Maximum Step Frequency
Maximum Step Frequency at Rising Voltage No operation No operation No operation No operation 850 Hz (1.17 ms) 1000 Hz (1 ms) No operation Maximum Step Frequency (VBAT once > 10.5V) No operation 300 Hz (3.33 ms) 500 Hz (2.03 ms) 680 Hz (1,47 ms) 850 Hz (1.17 ms) 1000 Hz (1 ms) No operation
3.9
Step Operation
The stepping motor is operated in halfstep-compensation mode. The current for both coils is shown in Figure 3-10. The current levels are increased when the temperature is below 0°C to secure operation. For final tests at the end of the application production line the currents are reduced. Figure 3-10. Compensated Halfstep Operation
coil A
700mA 500mA
half steps
-500mA -700mA
coil B
700mA 500mA
1
2
3
4
5
6
7
8
half steps
-500mA -700mA
13
4575D–BCD–09/05
3.10
Bridge Current Control
The bridge current is controlled by a chopper current control, shown in Figure 3-11. The current is turned on every 40 µs (25 kHz chopper frequency). The current flow in the H-bridge is shown in Figure 3-12a. After a blanking time of 2.5 µs to suppress turn-on peaks the current is measured via the shunt voltage. As soon as the current has reached its nominal value it is turned off again. The current flow in this state is shown in Figure 3-12b. Figure 3-11. Chopper Current Control
turn on signal
Imax
coil current
flyback comparator
shunt resistor voltage
blanking time
Figure 3-12. Current Flow in Halfbridge
ON
OFF
ON
ON
OFF
ON
OFF
OFF
a)
b)
14
ATA6830
4575D–BCD–09/05
ATA6830
3.11 Exception Handling
During operation, different exceptional states or errors can arise to which the circuit must correspondingly react. These are described below: • Supply voltage below 9V Travel operation is suspended for the duration of the undervoltage. The output current will be set to zero. When the supply voltage rises above 10.5V, travel operation restarts. • Supply voltage above 20V Travel operation is suspended for the duration of the undervoltage. The output current will be set to zero. When the supply voltage falls below 20V, travel operation restarts. • Overtemperature warning The maximum stepping speed is reduced to 300 Hz. This ensures a safe shut-off procedure if the temperature increases to shut-off temperature. • Overtemperature shut-off Travel operation is suspended when overtemperature is detected. An error signal is sent to the bus master via the bus. Operation can only restart after the supply voltage is shut off. • Interruption of a stepping motor winding The motor windings are only checked for interruption when supplied with hold current, not during drive operation. The corresponding output is shut off. The other coil winding is supplied with hold current. An error signal is sent. Operation can only restart after the supply voltage is shut off. • Short circuit of a stepping motor winding The corresponding output is shut off. The other coil winding is supplied with hold current. An error signal is sent. Operation can only restart after the supply voltage is shut off. • Short circuit of an output to ground or VBAT The corresponding output is shut off. The other coil winding is supplied with hold current. An error signal is sent. Operation can only restart after the supply voltage is shut off. An error signal is sent to the microcontroller by clamping the bus to ground for 3 seconds. If the error should occur during a data transmission, the above described reactions will happen immediately except for the clamping. This will take place about 200 µs after the end of the stopbit of the low byte to guarantee a correct command recognintion in the second headlamp. The error signal timing is shown in Figure 3-13. Figure 3-13. Error Signal Timing
MESSAGE FRAME ca. 9.2 ms ERROR RESPONSE 3s
1 Buslevel 0
15
4575D–BCD–09/05
4. Absolute Maximum Ratings
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. This is a stress rating only and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. Parameters Power supply (t < 400 ms) DC power supply DC output current BUS input voltage Human body model Charged device model Storage temperature Operating temperature Maximum junction temperature Symbol VBAT VBAT IOUT VBUS ESD ESD TStg Top Tjmax Value –0.3 to +45 –0.3 to +28 ±1.1 –0.3 to VBAT +0.3 2 500 –55 to +150 –40 to +105 +150 Unit V V A V kV V °C °C °C
5. Thermal Resistance
Parameters Thermal resistance junction-case Thermal resistance junction-ambient Symbol RthJC RthJA Value 5 35 Unit K/W K/W
6. Operating Range
Parameters Power supply range Operating temperature range Symbol VBAT Top Value 7 to 20 –40 to +105 Unit V °C
7. Electrical Characteristics
No. 1 1.1 1.2 1.3 1.4 2 2.1 2.2 2.3 2.4 Note: Parameters Supply Supply current Supply voltage VDD voltage VDD voltage Bus Port Threshold voltage Threshold voltage Hysteresis Input current 1. cmd = command VBUS = 0V VBAT = 12.0V, rising edge VBAT = 12V, falling edge 22 22 22 22 VLH_BUS_12 VHL_BUS_12 VHYS_BUS12 IOUT_BUS_8 –400 5.5 4.5 6.5 5.5 1 –300 –220 7.5 6.5 V V V µA A A A A VBAT = 7.0V VBAT = 14V (no motor current) Normal operation 1, 7, 15, 21 1, 7, 15, 21 23 23 I_total VBATsup VVDD_13V VVDD_7V 7.0 4.9 4.8 5.0 5.0 4 7 20 5.1 5.1 mA V V V A C A A Test Conditions
Pin
Symbol
Min.
Typ.
Max.
Unit
Type*
*) Type means: A = 100% tested, B = 100% correlation tested, C = Characterized on samples, D = Design parameter
16
ATA6830
4575D–BCD–09/05
ATA6830
7. Electrical Characteristics (Continued)
No. 2.5 2.6 3 3.1 4 4.1 4.2 5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11 6 6.1 6.2 6.3 6.4 6.5 6.6 Parameters Saturation voltage Pull-down current Oscillator Frequency Reference Reference voltage Reference voltage Full Bridges RDSON Output current Output current Output current Output current Output current Output current Output current Overcurrent threshold Overcurrent threshold Chopper frequency Voltage Comparators Threshold voltage Threshold voltage Hysteresis Threshold voltage Threshold voltage Hysteresis 9.0V comparator, rising 1, 7, 15, edge 21 9.0V comparator, falling 1, 7, 15, edge 21 9.0V comparator 1, 7, 15, 21 V9_UP V9_DOWN V9_HYS V9_5_UP V9_5_DOWN V9_5_HYS 8.8 8.6 60 9.3 9.1 60 9.1 8.9 200 9.6 9.4 200 9.4 9.2 340 9.9 9.7 340 V V mV V V mV A A A A A A RDSON of half-bridge Output stage off Hold mode RSHUNT = 240 mΩ Test mode RSHUNT = 240 mΩ Normal mode RSHUNT = 240 mΩ Normal mode (T