| The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers. |
AMIS-30623 single-chip microstepping motordriver with position control
Top Searches for this datasheetAMIS-30623 Microstepping Motordriver AMIS-30623 single-chip microstepping motordriver with position controller control/diagnostic interface. ready build dedicated mechatronics solutions connected remotely with master. chip receives positioning instructions through subsequently drives motor coils desired position. on-chip position controller configurable (OTP RAM) different motor types, positioning ranges parameters speed, acceleration deceleration. advanced motion qualification mode enables verification complete mechanical system function selected motion parameters. AMIS-30623 acts slave master fetch specific status information like actual position, error flags, etc. from each individual slave node. integrated sensorless step-loss detection prevents positioner from loosing steps stops motor when running into stall. This enables silent, accurate position calibrations during referencing allows semi-closed loop operation when approaching mechanical end-stops. chip implemented I2T100 technology, enabling both high voltage analog circuitry digital functionality same chip. AMIS-30623 fully compatible with automotive voltage requirements. Product Features Motordriver Microstepping technology Sensorless step-loss detection Peak current 800mA Fixed frequency current-control Automatic selection fast slow decay mode external fly-back diodes required 14V/24V compliant Motion Qualification Mode Controller with memory Position controller Configurable speeds, acceleration Input connect optional motion switch interface Both physical data-link layers (conform rev. 1.3) Field-programmable node addresses Dynamically allocated identifiers Full diagnostics status information Protection Over-current protection Under-voltage management Open circuit detection High-temp warning management Low-temp flag short-circuit protection supply ground Lost safe operation Power Saving Power-down supply current 100µA regulator with wake-up activity compatibility integrated slope control outputs with slope control Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Applications AMIS-30623 ideally suited small positioning applications. Target markets include: automotive (headlamp alignment, HVAC, idle control, cruise control), industrial equipment (lighting, fluid control, labeling, process control, tables, robots) building automation (HVAC, surveillance, satellite dish, renewable energy systems). Suitable applications typically have multiple axes require mechatronic solutions with driver chip mounted directly motor. Ordering Information Table Ordering information Part AMIS-30623A AMIS-30623B AMIS-30623A AMIS-30623B Package SOIC-20 SOIC-20 NQFP-32 NQFP-32 Peak Current Temp. Range -40°C.125°C -40°C.125°C -40°C.125°C -40°C.125°C Stop voltage threshold Typ. 8.5V Typ. 7.5V Typ. 8.5V Typ. 7.5V Ordering Code Tubes Ordering Code Tapes Quick Reference Data Table Absolute Maximum Ratings Parameter Vlin Tamb Vesd Min. -0.3 Max. Unit Supply voltage input voltage Ambient temperature under bias Storage temperature Electrostatic discharge voltage Electrostatic discharge voltage other pins +150 +160 Notes limited time <0.5s circuit functionality guaranteed. Human body model (100 according std. 883E, method 3015.7) Table Operating Ranges Parameter Supply voltage Operating temperature range +125 Unit Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Contents General Description. Product Features Applications Ordering Information. Quick Reference Data Content. Block Diagram Package Thermal Resistance. SOIC-20. NQFP-32. 10.0 Parameters. 11.0 Parameters 12.0 Typical Application. 13.0 Positioning parameters. 13.1 Stepping Modes 13.2 Maximum Velocity. 13.3 Minimum Velocity. 13.4 Acceleration Deceleration 13.5 Positioning 13.5.1. Position Ranges 13.5.2. Secure Position 13.5.3. Shaft. 14.0 Structural Description 14.1 Stepper Motordriver 14.2 Control Logic (Position Controller Main control). 14.3 Motion Detection 14.4 Interface 14.5 Miscellaneous 15.0 Functions Description 15.1 Position Controller. 15.1.1. Positioning Motion Control. 15.1.2. Dual positioning. 15.1.3. Position Periodicity 15.1.4. Hardwired Address HW2. 15.1.5. External Switch SWI. 15.2 Main Control Register, memory ROM. 15.2.1. Power-up Phase. 15.2.2. Reset State. 15.2.3. Soft Stop 15.2.4. Sleep Mode 15.2.5. Thermal Shutdown Mode 15.2.6. Temperature Management 15.2.7. Autarkic functionality under-voltage condition. 15.2.8. register 15.2.9. Registers 15.2.10. Flags Table. 15.3 Motordriver. 15.3.1. Current waveforms coils 15.3.2. Regulation 15.3.3. jitter. 15.3.4. Motor Starting Phase. 15.3.5. Motor Stopping Phase. 15.3.6. Charge Pump Monitoring 15.3.7. Electrical Defect Coils, Detection Confirmation Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.3.8. Motor Shutdown Mode 15.4 Motion detection. 16.0 Controller 16.1 General Description 16.2 Slave Operational Range Proper Self Synchronization 16.3 Functional Description 16.3.1. Analog Part. 16.3.2. Protocol Handler. 16.3.3. Electro Magnetic Compatibility 16.4 Error Status Register 16.5 Physical Address Circuit 16.6 Frames 16.6.1. Writing frames 16.6.2. Reading frames 16.6.3. Preparing frames. 16.6.4. Dynamic assignment Identifiers. 16.7 Commands table. 16.8 lost behavior 16.8.1. Introduction. 16.8.2. Sleep enable 16.8.3. Fail Safe Motion 16.8.4. Autonomous motion 17.0 Application Commands 17.1 Introduction 17.2 Application Commands 18.0 Resistance Electrical Electromagnetic Disturbances. 18.1 Electrostatic Discharges 18.2 Electrical transient conduction along supply lines 18.3 EMC. 18.4 Power Supply Micro-interruptions 19.0 Package Outline 19.1 SOIC-20: Plastic small outline; leads; body width 300mil. AMIS reference: SOIC300 300G 19.2 NQFP-32: lead Quad Flat Pack; pins; body size AMIS reference: NQFP-32. 20.0 Soldering 20.1 Introduction Soldering Surface Mount Packages 20.2 Re-flow Soldering. 20.3 Wave Soldering. 20.4 Manual Soldering 21.0 Company Product Inquiries 22.0 Document History Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Block Diagram AMIS-30623 Interface Position Controller HW[2:0] Controller regulator I-sense MOTXP MOTXN Decoder Main Control Registers Sinewave Table DAC's Motion detection Vref Temp sense Oscillator regulator Charge Pump I-sense MOTYP MOTYN Voltage Regulator Figure Block Diagram Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver MOTXP MOTXN MOTYP MOTYN Table Description Name Description MOTYN MOTYP MOTXN MOTXP LIN-ADD LIN-ADD Internal supply (needs external decoupling capacitor) Ground, heat sink Test tied ground normal operation) LIN-bus connection LIN-ADD Negative connection pump capacitor (charge pump) Positive connection pump-capacitor (charge pump) Charge-pump filter-capacitor Battery voltage supply Negative phase coil Positive phase coil Negative phase coil Positive phase coil Switch input connected tied ground) tied Semiconductor June 2006, www.amis.com AMIS-30623 AMIS-30623 PC20051118.1 view NQ32 Figure SOIC NQFP-32 pin-out PC20051123.1 SOIC-20 4,7,14,17 12,19 NQFP-32 AMIS-30623 Microstepping Motordriver Package Thermal Resistance SOIC-20 lower junction-to-ambient thermal resistance, recommended connect ground leads ground plane layout illustrated Figure junction-to-case thermal resistance depending copper area, copper thickness, thickness number copper layers. Calculating with total area mm2, 35µm copper thickness, 1.6mm thickness 1layer, thermal resistance 28°C/W, leading junction-ambient thermal resistance 63°C/W, Figure Ground Plane Layout Condition SOIC-20 PC20041128.1 NQFP-32 NQFP designed provide superior thermal performance. Using exposed bottom surface package, partly contributing this. order take full advantage this, must have features conduct heat away from package. thermal grounded with thermal vias achieve this. With layout shown Figure thermal resistance junction ambient brought down level 25°C/W. NQFP-32 PC20041128.2 Figure Ground Plane Layout Condition Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 10.0 Parameters parameters given temperature their operating ranges. Convention: currents flowing circuit defined positive. Table Parameters Symbol Pin(s) Motordriver IMSmax,Peak Parameter Test Conditions Min. Typ. Max. Unit current through motor coil normal operation current through coil IMSmax,RMS normal operation IMSabs MOTXP Absolute error coil current MOTXN Error current ratio Icoilx Icoily IMSrel MOTYP 12V, MOTYN resistance each motor RDSon (including bond wire) IMSmax 12V, IMSL Pull down current mode Transmitter Ibus_on Dominant state, driver Vbus 1.4V Ibus_off Dominant state, driver Vbus Ibus_off Recessive state, driver Vbus Vbat Ibus_lim Current limitation Rslave Pull-up resistance Receiver Vbus_dom Receiver dominant state Vbus_rec Receiver recessive state Vbus_hys Receiver hysteresis Thermal Warning Shutdown Thermal warning Ttsd(1) Thermal shutdown Tlow temperature warning Supply Voltage Regulator Nominal operating supply range VbbOTP Supply voltage zapping Ibat Total current consumption Unloaded outputs Sleep mode current consumption Ibat_s Internal regulated output IddStop Digital current consumption Digital supply reset level power VddReset down IddLim Current limitation shorted ground Switch Input Hardwire Address Input Rt_OFF Switch resistance Switch Vbat, Rt_ON Switch resistance range guaranteed operation Vbb_sw Vmax_sw Maximum voltage 0.50 0.55 0.70 0.85 0.05 *Vbb 3.50 4.75 10.0 10.0 5.50 Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Symbol Pin(s) Parameter Switch Input Hardwire Address Input Ilim_sw Current limitation Hardwired Address Inputs Test Vlow Input level high Vhigh Input level HWhyst Hysteresis Charge Pump Cbuffer Output voltage Test Conditions Short Vbat 0.075 Vbb+10 TestBemf command Service mode command Service mode command 4,85 0,50 Vbb+12.5 Min. Typ. Max. Unit External buffer capacitor Cpump External pump capacitor Motion Qualification Mode Output VOUT Output voltage swing ROUT Output impedance Gain VSWI VBEMF Vbb+15 Notes more than cumulated hours life time above Ttsd. Thermal shutdown temperature warning derived from thermal warning. buffer capacitor between minimum needed. Short connections power supply recommended. must used external supply content will altered above this voltage. External resistance value seen from HW2, including series resistor. Table Limits Different Version Symbol Pin(s) Parameter Supply Thresholds AMIS-30623A Stop voltage high threshold Stop voltage threshold Supply Thresholds AMIS-30623B Stop voltage high threshold Stop voltage threshold Test Conditions Min. Typ. Max. Unit Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 11.0 Parameters parameters given temperature their operating ranges. transmitter/receiver parameters conform Protocol Specification Revision 1.3. Unless otherwise specified 18V, Load propagation delay Load slope definitions [L1] [L2] 6.8nF [L3] 10nF 510. Table Parameters Symbol Pin(s) Power-up Internal Oscillator fosc Transmitter T_slope_F/R T_slope_Sym T_tr_F T_tr_R Tsym_tr Receiver T_rec_F Parameter Power-up time Frequency internal oscillator Slope time falling rising edge Slope time symmetry Propagation delay Propagation delay high Transmitter delay symmetry Test Conditions Guaranteed design Min. Typ. Max. Unit µsµs Extrapolated between Vbus_dom T_slope_F T_slope_R 22.5 T_tr_F T_tr_R Propagation delay dominant Propagation delay recessive T_rec_R high Tsym_rec Receiver delay symmetry T_rec_F T_rec_R Twake Wake-up delay time Switch Input Hardwire Address Input Scan pulse period Scan pulse duration Tsw_on Motordriver PWMfreq Fpwm frequency PWMfreq Fjit_depth jitter modulation depth PWMJen MOTxx Tbrise Turn-on transient time Between Tbfall Turn-off transient time Tstab current stabilization time Charge Pump Charge pump frequency Notes loads [L1] [L2] Derived from internal oscillator SetMotorParam regulator 1024 20.6 41,2 22.8 45,6 25.0 50,0 Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver T_tr_F T_rec_F T_rec_R PC20051123.2 T_tr_R Figure Delay Measurement VBUSrec VBUSdom T_slope_F T_slope_R PC20051123.3 Figure Slope Measurement Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 12.0 Typical Application VBAT Connect VBAT MOTXP MOTXN MOTYP MOTYN Connect VBAT AMIS-30623 Figure Typical Application Diagram PC20051118.1 Notes: resistors minimum value 2.7nF, maximum value 10nF Depending application, value working voltage must carefully chosen must close pins must close possible pins CPN, CPP, VCP, reduce radiation must ceramic capacitor assure 13.0 Positioning Parameters 13.1 Stepping Modes four possible stepping modes programmed: Half-stepping micro-stepping micro-stepping 1/16 micro-stepping Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 13.2 Maximum Velocity each stepping mode, maximum velocity Vmax programmed possible values given Table accuracy Vmax derived from internal oscillator. Under special circumstances possible change Vmax parameter while motion ongoing. entries Vmax parameter divided into four groups. When changing Vmax during motion application must take care that Vmax parameter stays within same group. Table Maximum Velocity Selection Table Vmax index Vmax (full step/s) Group Half-stepping (half-step/s) 1091 1457 1945 Stepping mode 1/4th 1/8th micro-stepping micro-stepping (micro-step/s) (micro-step/s) 1091 1335 1579 1701 1823 1945 1091 2182 1213 2426 1335 2670 1457 2914 1579 3159 1823 3647 2182 4364 2914 5829 3891 7782 1/16th micro-stepping (micro-step/s) 1579 2182 2670 3159 3403 3647 3891 4364 4852 5341 5829 6317 7294 8728 11658 15564 13.3 Minimum Velocity Once maximum velocity chosen, possible values programmed minimum velocity Vmin. Table provides obtainable values full-step/s. accuracy Vmin derived from internal oscillator. Table Obtainable Values Full-step/s Minimum Velocity Vmin index Vmax factor 1/32 2/32 3/32 4/32 5/32 6/32 7/32 8/32 9/32 10/32 11/32 12/32 13/32 14/32 15/32 Vmax (Full-step/s) Notes Vmax factor approximation. case motion without acceleration (AccShape length steps 1/Vmin. case accelerated motion (AccShape length first step shorter than 1/Vmin depending Vmin, Vmax Acc. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 13.4 Acceleration Deceleration Sixteen possible values programmed (acceleration deceleration between Vmin Vmax). Table provides obtainable values observes restrictions some combination acceleration index maximum speed (gray cells). accuracy derived from internal oscillator. Table Acceleration Deceleration Selection Table Vmax (FS/s) index Acceleration 1004 3609 6228 8848 11409 13970 16531 19092 21886 24447 27008 29570 34925 40047 14785 29570 formula compute number equivalent full-step during acceleration phase Nstep Vmax Vmin 13.5 Positioning position programmed commands SetPosition SetPositionShort given number (micro)steps. According chosen stepping mode, position words must aligned described Table When using command SetPositionShort GotoSecurePosition, data automatically aligned. Table Position Word Alignment Stepping mode 1/16th 1/8th 1/4th Half-stepping PositionShort SecurePosition Notes LSB: Least Significant Sign Position word: Pos[15:0] Shift shift 1-bit left 2-bit left 3-bit left shift shift Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 13.5.1. Position Ranges position coded using binary two's complement format. According positioning commands used chosen stepping mode, position range will shown Table Table Position Range Command SetPosition SetPositionShort Stepping mode Half-stepping 1/4th micro-stepping 1/8th micro-stepping 1/16th micro-stepping Half-stepping Position range -4096 +4095 -8192 +8191 -16384 +16383 -32768 +32767 -1024 +1023 Full range excursion 8192 half-steps 16384 micro-steps 32768 micro-steps 65536 micro-steps 2048 half-steps Number bits When using command SetPosition, although coded bits, position word will have shifted left certain number bits, according stepping mode. 13.5.2. Secure Position secure position programmed. coded 11-bits, thus having lower resolution than normal positions, shown Table also command GotoSecurePosition lost behavior. Table Secure Position Stepping mode Half-stepping 1/4th micro-stepping 1/8th micro-stepping 1/16th micro-stepping Secure position resolution half-steps micro-steps (1/4th) micro-steps (1/8th) micro-steps (1/16th) Important Note secure position disabled case programmed value reserved code "10000000000" (0x400 most negative position). resolution secure position limited start-up. register copied illustrated below. SecPos1 SecPos0 SecPos10 SecPos9 SecPos8 SecPos2 SecPos1 SecPos0 SecPos10 SecPos9 SecPos8 SecPos2 FailSafe SleepEn 13.5.3. Shaft shaft which programmed with command SetMotorParam, defines whether positive motion clockwise counter-clockwise rotation outer inner motion linear actuators): Shaft MOTXP used positive coil, while MOTXN negative one. Shaft opposite situation Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 14.0 Structural Description also Block Diagram Figure 14.1 Stepper Motordriver Motordriver receives control signals from control logic. main features are: H-bridges designed drive stepper motor with separated coils. Each coil driven H-bridge, driver controls currents flowing through coils. rotational position rotor, unloaded condition, defined ratio current flowing torque stepper motor when unloaded controlled magnitude currents control block H-bridges including control, synchronous rectification, internal current sensing circuitry. charge pump allow driving H-bridges' high side transistors. pre-scale 4-bit DAC's maximum magnitude current through DAC's correct current ratio through Battery voltage monitoring also performed this block, which provides needed information control logic part. same applies detection reporting electrical problem that could occur coils charge pump. 14.2 Control Logic (Position Controller Main control) control logic block stores information provided interface memory) digitally controls positioning stepper motor terms speed acceleration, feeding right signals motordriver state machine. will take into account successive positioning commands properly initiate stop stepper motor order reach point minimum time. also receives feedback from motordriver part order manage possible problems decide internal actions reporting interface. 14.3 Motion Detection Motion detection based back generated internally running motor. When motor blocked e.g. when hits end-position, velocity result also generated back emf, disturbed. AMIS-30623 senses back emf, calculates moving average compares value with independent threshold levels. back disturbance bigger than threshold, running motor stopped. 14.4 Interface interface implements physical layer layers according reference model. provides gets information from control logic block, order drive stepper motor, configure this motor must driven, information such actual position diagnosis (temperature, battery voltage, electrical status.) pass master node. 14.5 Miscellaneous AMIS-30623 also contains following: internal oscillator, needed protocol handler well control logic control motordriver. internal trimmed voltage source precise referencing. protection block featuring thermal shutdown power-on-reset circuit. regulator (from battery supply) supply internal logic circuitry. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.0 Functions Description This chapter describes following functional blocks more detail: Position controller Main control register, memory Motordriver Motion detection controller discussed separate chapters. 15.1 Position Controller 15.1.1. Positioning Motion Control positioning command will produce motion illustrated Figure motion starts with acceleration phase from minimum velocity (Vmin) maximum velocity (Vmax), ends with symmetrical deceleration. This defined control logic according position required application parameters programmed application during configuration phase. current coils also programmable. Acceleration range Velocity Deceleration range Zero speed Hold current Vmax Zero speed Hold current Vmin Position Pstart Pmin Optional zero switch Pstop Pmax Figure Positioning Motion Control Table Position Related Parameters Parameter Pmax Pmin Zero speed Hold Current Maximum current Acceleration deceleration Vmin Vmax Reference Positioning Ihold Irun Acceleration Deceleration Minimum Velocity Maximum Velocity Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Different positioning examples shown table below. Table Positioning Examples Positioning Examples Velocity Short motion time Velocity positioning command same direction, shorter longer, while motion running maximum velocity Velocity time positioning command same direction while deceleration phase Note: there wait time between deceleration phase acceleration phase. time Velocity positioning command reverse direction while motion running maximum velocity time Velocity positioning command reverse direction while deceleration phase time Velocity velocity programming while motion running time Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.1.2. Dual Positioning SetDualPosition command allows user perform positioning using different velocities. first motion done with specified Vmin Vmax velocities SetDualPosition command, with acceleration (deceleration) parameter already RAM, position Pos1[15:0] also specified SetDualPosition. Then second relative motion position Pos1[15:0] Pos2[15:0] done specified Vmin velocity SetDualPosition command acceleration). Once second motion achieved, ActPos register reset zero, whereas TagPos register changed. Velocity otion 26.6 otion Reset ActPos 26.6 Figure 9:Dual Positioning Remark: This operation cannot interrupted influenced further command unless occurrence conditions driving motor shutdown HardStop command. Sending SetDualPosition command while motion already ongoing recommended. Notes priority encoder describing management states commands. notes below considered illustrative. last SetPosition(Short) command issued during DualPosition sequence will kept memory executed afterwards. This applies also commands Sleep SetMotorParam GotoSecurePosition. Commands such GetActualPos GetStatus will executed while Dual Positioning running. This applies also dynamic assignment frame DualPosition sequence starts setting TagPos register SecPos value, provided secure position enabled otherwise TagPos reset zero. acceleration/deceleration value applied during DualPosition sequence stored before SetDualPosition command sent. same applies Shaft bit, Irun, Ihold StepMode, which changed during Dual Positioning sequence. Pos1, Pos2, Vmax Vmin values programmed SetDualPosition command apply only this sequence. further positioning will parameters stored (programmed instance former SetMotorParam command). Commands ResetPosition, SetDualPosition, SoftStop will ignored while DualPosition sequence ongoing, will executed afterwards. SetMotorParam command should sent during SetDualPosition sequence. some reason ActPos equals Pos1[15:0] moment SetDualPosition command issued, circuit will enter deadlock state. Therefore, application should check actual position GetPosition GetFullStatus command prior send SetDualPosition command. 15.1.3. Position Periodicity Depending stepping mode position range from -4096 +4095 half-step -32768 +32767 1/16 microstepping mode. project these positions lying circle. When executing command SetPosition, position controller will movement direction such that traveled distance minimum. figure below illustrates that moving direction going from ActPos +30000 TagPos -30000 clockwise. counter clockwise motion required this example, several consecutive SetPosition commands used. could also larger movements command <RunVelocity>. +10000 +20000 ActPos +30000 Motion direction TagPos -30000 -10000 -20000 Figure Motion Direction Function Difference between ActPos TagPos Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.1.4. Hardwired Address Figure simplified schematic diagram shown comparator circuit. sensed switches. DriveHS DriveLS control lines alternatively closing bottom switch connecting with current resistor converter. Closing STOP (DriveHS will sense current GND. that case convertor output low, closed passing switch SPASS_T this signal comparator which output HW2_Cmp high. Closing bottom switch SBOT (DriveLS will sense current VBAT. corresponding converter output SPASS_B comparator. output HW2_Cmp will high. SPASS_T State STOP SBOT DriveHS LOGIC DriveLS "R"-Comp Debouncer High Float R2GND R2VBAT OPEN SPASS_B COMP Debouncer HW2_Cmp Figure Simplified Schematic Diagram Comparator cases distinguished (see also Figure 11): connected ground: R2GND drawing connected VBAT: R2VBAT drawing floating: OPEN drawing Table State Diagram Comparator Previous State Float Float Float Float High High High High DriveLS DriveHS HW2_Cmp State Float High Float High Float Float High High Condition R2GND OPEN R2VBAT R2VBAT OPEN R2GND R2GND OPEN R2VBAT R2VBAT OPEN R2GND R2GND OPEN R2VBAT R2VBAT OPEN R2GND Drawing logic controlling correct sequence closing switches interpreting debounced HW2_Cmp output accordingly. output this small state-machine corresponding High address address Floating Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver illustrated Table state depending previous state, condition switch controls (DriveLS DriveHS) output HW2_Cmp. Figure showing example practical case where connection VBAT interrupted. Condition R2VBAT DriveHS 1024 OPEN R2VBAT R2GND DriveLS Tsw_on "R"-Comp HW2_Cmp State Float Float Float Float High High High High High High High High Figure Timing Diagram Showing Change States Comparator R2VBAT resistor connected between VBAT HW2. Every 1024 SBOT closed current sensed, output converter HW2_Cmp output high. Assuming previous state floating, internal LOGIC will interpret this change state state will High. (see also Table 16). next time SBOT closed same conditions observed. previous state High, based Table state remains unchanged. This high state will interpreted address OPEN case connection lost (broken wire, contact connector) next time SBOT closed this will sensed. There will current, output corresponding converter High HW2_Cmp will low. previous state High. Based Table that state changes float. This will trigger motion secure position after debounce time This prevents false triggering case false micro interruptions power supply. also Electrical transient conduction along supply lines R2GND resistor connected between GND, current sensed every 1024 whet STOP closed. output converter result HW2_Cmp output switches High. Again based stated diagram Table that state will change Low. This state will interpreted address Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.1.5. External Switch illustrated Figure comparator almost identical HW2. major difference limited number states. Only open closed recognised leading respectively SPASS_T State STOP SBOT DriveHS LOGIC DriveLS "R"-Comp Closed Open R2GND R2VBAT OPEN SPASS_B COMP Debouncer SWI_Cmp Figure Simplified Schematic Diagram Comparator illustrated Figure change state always synchronised with DriveHS DriveLS. same synchronisation valid updating internal position register. This means that after every current pulse closing STOP SBOT) state position switch together with corresponding position memorised. Using GetActualPos commands reads back ActPos register status ESW. this master node synchronous information about state switch together with position motor. Figure below: Byte Content Identifier Data Data Data Data VddReset Reading Frame Structure AD[6:0] ActPos[15:8] ActPos[7:0] StepLoss ElDef Tinfo[1:0] Figure GetActualPos commando Important remark. Every 512µs this information refreshed. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver DriveHS =1024 DriveLS Tsw_on "R"-Comp SWI_Cmp ActPos ActPos ActPos ActPos ActPos Figure Timing diagram showing change states comparator 15.2 Main Control Register, memory 15.2.1. Power-up Phase Power phase AMIS-30623 will exceed 10ms. After this phase, AMIS-30623 shutdown mode, ready receive messages execute associated commands. After power-up, registers flags reset state, some them being loaded with memory content (see Table registers). 15.2.2. Reset State After power-up, after reset occurrence (e.g. micro made below VddReset level), H-bridges will high impedance mode, registers flags will predetermined position. This documented Table registers Table Flags Table. 15.2.3. Soft Stop soft stop immediate interruption motion, with deceleration phase. this action, register TagPos loaded with value contained register ActPos avoid attempt circuit achieve motion (see Table registers). circuit then ready execute positioning command, provided thermal electrical conditions allow Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.2.4. Sleep Mode When entering sleep mode, stepper-motor driven secure position. After which, circuit completely powered down, apart from receiver, which remains active detect dominant state bus. case sleep mode entered while motion ongoing, transition will occur towards secure position described Positioning Motion Control provided SecPos enabled. Otherwise, SoftStop performed. Sleep mode entered following cases: circuit receives frame with identifier 0x3C first data byte containing 0x00, required specification 1.3. Sleep case SleepEn remains inactive lost) during more than 25000 time slots (1.30s 19.2kbit/s), time-out signal switches circuit sleep mode. also circuit will return normal mode valid frame received while entering sleep mode (this valid frame addressed another slave). 15.2.5. Thermal Shutdown Mode When thermal shutdown occurs, circuit performs SoftStop command goes Motor shutdown mode (see below). 15.2.6. Temperature Management AMIS-30623 monitors temperature means thresholds shutdown level, illustrated state diagram below. only condition reset flags <TW> <TSD> (respectively thermal warning thermal shutdown) temperature lower than occurrence GetStatus GetFullStatus frame. Normal Temp. <Tinfo> "00" <TW> <TSD> Thermal warning <Tinfo> "10" <TW> <TSD> Ttsd Thermal shutdown <Tinfo> "11" <TW> <TSD> SoftStop motion ongoing Motor shutdown (motion disabled) frame: GetStatus GetFullStatus Post thermal warning <Tinfo> "00" <TW> <TSD> Ttsd Ttsd Tlow Post thermal shutdown Tlow Post thermal shutdown <Tinfo> "00" <TW> <TSD> Motor shutdown (motion disabled) <Tinfo> "10" <TW> <TSD> Motor shutdown (motion disabled) Temp. <Tinfo> "01" <TW> <TSD> Figure State Diagram Temperature Management Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.2.7. Autarkic functionality under-voltage condition Battery voltage management AMIS-30623 monitors battery voltage means threshold shutdown level, illustrated state diagram below. only condition reset flags <UV2> <StepLoss> recover battery voltage higher than receive GetStatus GetFullStatus command. Normal voltage StepLoss motion) motion ongoin frame: GetStatus GetFullStatus Stop mode Stop mode StepLoss Motor shutdown (motion disabled) StepLoss HardStop Motor shutdown (motion disabled) Figure State Diagram Battery Voltage Management Autarkic function Stop mode motor shutdown state. <UV2> flag set. case AMIS-30623 accepts updates target position means reception SetPosition, SetPositionShort, SetPosParam GotoSecurePosition commands, even <UV2> flag prior cleared. Stop mode motor stopped immediately shutdown state. <UV2> <Steploss> flags set. case AMIS-30623 autonomously resumes motion original target position using stored motor parameters (minimum maximum velocity, acceleration, step-mode, run- hold current) case reset occurred. flags only cleared after receiving GetStatus GetFullStatus command. Updates target position means reception SetPosition, SetPositionShort, SetPosParam GotoSecurePosition commands accepted, even <UV2> <Steploss> flags prior cleared. Important notes: case Stop mode care needs taken because accumulated steploss cause significant deviation between physical stored actual position. SetDualPosition command will only executed after clearing <UV2> <Steploss> flags. reset occurs when VddReset (digital Power Reset level) Autarkic function remains active long VddReset Logical implementation Autarkic function logic uses <UV2>, <CPFail> <Steploss> signal state. state clock after signal would therefore slow down reaction time. Also state only cleared after GetStatus GetFullStatus command which prevents autonomous function. Only <UV2> <CPFail> applicable finishing motion original target position: <UV2> needs cleared leave Shutdown State <CPFail> needs cleared avoid HardStop after entering GotoPos state Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver <StepLoss> signal used block successive motions. Also this signal will cleared after UV1, making updates TagPos possible. implementation illustrated state diagram below. (UV2SIG, OVC1, OVC2, CPFail, UV2SIG THEN TagPos ActPos ELSE copy TagPos ActPos GotoPos HardStop Stopped ShutDown Positioner GetStatus GetFullStatus disabled Motor TagPos ActPos Figure State Diagram Autarkic Under-voltage Handling Stop mode AMIS-30623 Stopped state. Because enters ShutDown state. Once Stopped state will entered again. Stop mode AMIS-30623 GotoPos state. Because UV2SIG HardStop state entered. After hardstop motion finished Positioner) enters Stopped state. UV2SIG TagPos copied Actpos, shutdown stated entered. Once Stopped state will entered again because TagPos Actpos C623 moves GotoPos again. <UV2SIG>, <CPFail> <Steploss> cleared when HardStop entered again. 15.2.8. register Memory Structure table below shows parameters stored memory located. Table Memory Structure Address 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 OSC3 EnableLIN AbsThr3 Irun3 Vmax3 SecPos10 SecPos7 DelThr3 OSC2 TSD2 AbsThr2 Irun2 Vmax2 SecPos9 SecPos6 DelThr2 OSC1 TSD1 AbsThr1 Irun1 Vmax1 SecPos8 SecPos5 DelThr1 OSC0 TSD0 AbsThr0 Irun0 Vmax0 Shaft SecPos4 DelThr0 IREF3 Ihold3 Vmin3 Acc3 SecPos3 StepMode1 IREF2 Ihold2 Vmin2 Acc2 SecPos2 StepMode0 IREF1 Ihold1 Vmin1 Acc1 Failsafe LOCKBT IREF0 Ihold0 Vmin0 Acc0 SleepEn LOCKBG Parameters stored address 0x00 0x01 LOCKBT already programmed memory circuit delivery. They correspond calibration circuit just documented here indication. Each when zapped. Zapping will `1'. Thus only bits having must zapped. Zapping already disabled. Each byte will programmed separately (see command SetOTPparam). Once programming completed, LOCKBG zapped, disable future zapping, otherwise could still zapped using SetOTPparam command. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Table Overwrite Protection LOCKBT LOCKBG Lock (factory zapped before delivery) Protected bytes 0x00 0x01 0x00 0x07 command used load application parameters prior Memory programming SetMotorParam. This allows functional verification before using SetOTPparam command program separately memory byte. GetOTPparam command issued after each SetOTPparam command allows verify correct byte zapping. Note: zapped bits will really "active" after GetOTPparam ResetToDefault command after power-up. Application parameters stored Memory Except physical address PA[3:0] these parameters, although programmed non-volatile memory still overridden writing operation. PA[3:0] combination with HW[2:0] forms physical address AD[6:0]of stepper-motor. Stepper-motors theoretically connected same Absolute Relative threshold used motion detection Index AbsThr AbsThr level Disable Absolute Relative threshold used motion detection Index DelThr DelThr level Disable 0.25 0.50 0.75 1.00 1.25 1.50 1.75 2.00 2.25 2.50 2.75 3.00 3.25 3.50 3.75 AbsThr[3:0] DelThr[3:0] Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Irun[3:0] Current amplitude value IRUN. Index Irun each coil stepper-motor. table below provides possible values current (mA) Ihold[3:0] Hold current each coil stepper-motor. table below provides possible values IHOLD. Index Ihold Hold current (mA) Indicator stepping mode used. StepMode Step mode stepping stepping stepping 1/16 stepping Indicator Reference Position. Shaft `0', reference position maximum inner position, whereas Shaft `1', reference position maximum outer position StepMode Shaft SecPos[10:0]Secure Position stepper-motor. This position which motor driven case communication loss when error counter overflows. SecPos[10:0] "100 0000 0000", this means that Secure Position disabled, e.g. stepper-motor will kept position occupied moment these events occur. Secure Position coded bits only, providing actually most significant bits position, coded least significant bits being `0'. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Vmax[3:0] Maximum velocity Index Vmax Minimum velocity. Index Vmin Vmax(full step/s) Group Vmin[3:0] Vmax factor 1/32 2/32 3/32 4/32 5/32 6/32 7/32 8/32 9/32 10/32 11/32 12/32 13/32 14/32 15/32 Acc[3:0] Acceleration deceleration between Vmax Vmin. Index Acceleration 1004 3609 6228 8848 11409 13970 16531 19092 21886 24447 27008 29570 34925 40047 restriction speed Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SleepEn SleepEn=1 AMIS-30623 always low-power sleep mode incase timeout. SleepEn=0 there more automatic transition low-current sleep mode (i.e. stay stop mode with applied hold current, unless there failures). FailSafe FailSafe=1 case lost start motion safe position FailSafe motion case lost Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.2.9. Registers Table Registers Register Actual position Mnemonic ActPos Length (bit) Related commands GetActualPos GetFullStatus GotoSecurePos ResetPosition GetFullStatus GotoSecurePos ResetPosition SetPosition SetPositionShort GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetMotorParam GetFullStatus SetStallParam Comment 16-bit signed 16-bit signed 11-bit signed half stepping (see Positioning) normal acceleration from Vmin Vmax motion Vmin without acceleration Operating current look-up table Irun Standstill current look-up table Ihold Section 13.3 Minimum Velocity look-up table Vmin Section 13.2 Maximum Velocity look-up table Vmax Direction movement positive velocity Section 13.4 Acceleration look-up table Target position when connection fails; MSBs 16-bit position (LSBs fixed `0') Section 13.1 Stepping Modes look-up table StepMode Reset state Note Last programmed position Pos/ TagPos 16/11 Acceleration shape Coil peak current Coil hold current Minimum Velocity Maximum Velocity Shaft Acceleration/ deceleration Secure Position Stepping mode Stall detection absolute threshold Stall detection delta threshold Sleep Enable Fail Safe Stall detection delay Stall detection sampling Jitter 100% duty cycle Stall Disable frequency AccShape Irun Ihold Vmin Vmax Shaft From memory SecPos StepMode AbsThr DelThr SleepEn FailSafe FS2StallEn MinSamples PWMJEn DC100SDis PWMFreq GetFullStatus SetStallParam GetFullStatus SetStallParam SetOTPParam SetOTPParam Enables entering sleep mode after lost also 16.8 lost behavior Triggers autonomous motion after lost also 16.8 lost behavior Delays stall detection after acceleration `000' `000' means jitter added means stall detection disabled case regulator runs 100% GetFullStatus SetStallParam GetFullStatus SetStallParam GetFullStatus SetStallParam GetFullStatus SetStallParam GetFullStatus SetMotorParam Note ResetToDefault command will reset content, except ActPos TagPos registers that modified. Therefore, application should send ResetToDefault during motion, avoid unwanted change parameter. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.2.10. Flags Table Table Flags Table Flag Charge pump failure Electrical defect Mnemonic CPFail Length (bit) Related Commands Comment charge pump charge pump failure reset only after GetFullStatus <OVC1> <OVC2> <open circuit <open circuit <CPFail> resets only after Get(Full)Status open close <CPFail> <UV2> <ElDef> <VDDreset> "x00" Stop "001" inner motion acceleration "010" inner motion deceleration "011" inner motion max. speed "101" outer motion acceleration "110" outer motion deceleration "111" outer motion max. speed over current reset only after GetFullStatus over current reset only after GetFullStatus SecPos "100 0000 0000" otherwise Sleep mode reset command step loss under voltage, over current open circuit Vbemf bemf DeltaThr Vbemf bemf DeltaThr Vbemf AbsThr Reset State GetFullStatus GetActualPos GetStatus GetFullStatus GetActualPos GetStatus GetFullStatus Internal ElDef External switch status Electrical flag Motion status Motion GetFullStatus "000" Over current coil OVC1 Over current coil OVC2 Secure position SecEn enabled Circuit going Sleep Sleep mode Step loss Delta High Stall Delta Stall Absolute Stall Stall Motor stop Temperature info StepLoss DelStallHi DelStallLo AbsStall Stall Stop Tinfo GetFullStatus GetFullStatus Internal Internal GetActualPos GetStatus GetFullStatus GetFullStatus GetFullStatus GetFullStatus GetFullStatus GetStatus Internal GetActualPos GetStatus GetFullStatus GetActualPos GetStatus GetFullStatus GetActualPos GetStatus GetFullStatus GetActualPos GetStatus GetFullStatus n.a. Thermal shutdown Thermal warning Battery stop voltage Digital supply reset VddReset GetActualPos GetStatus GetFullStatus "00" normal temperature range "01" temperature warning "10" high temperature warning "11" motor shutdown shutdown. 155°C typ.) reset only after Get(Full)Status <Tinfo> "00" over temp. 145°C) reset only after Get(Full)Status <Tinfo> "00" reset only after Get(Full)Status after power-up circuit. this supply micro-cut, warns that contents have been lost; reset with GetStatus GetFullStatus command. "00" Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.2.10.1. Priority Encoder table below describes state management performed main control block. Table Priority Encoder State Command GetActualPos Stopped motor stopped, Ihold coils GotoPos motor motion ongoing DualPosition influence TagPos SoftStop motor decelerating HardStop ShutDown Sleep motor forced motor stopped, power stop H-bridges (note Hi-Z in-frame response refresh; in-frame response in-frame response in-frame response refresh; in-frame response in-frame response in-frame response refresh; in-frame response in-frame response refresh; RAM; AccShape reset (note update in-frame response refresh; in-frame response in-frame response in-frame response refresh; in-frame response in-frame response in-frame response refresh; in-frame response in-frame response; (<TSD> <HS>) then Stopped refresh; RAM; AccShape reset update TagPos ActPos reset GetOTPparam GetFullStatus GetStatus attempt clear <TSD> <HS> flags ResetToDefault ActPos TagPos altered SetMotorParam Master takes care about proper update ResetPosition SetPosition refresh; RAM; AccShape reset update TagPos ActPos reset refresh; RAM; AccShape reset update refresh; RAM; AccShape reset update refresh; RAM; AccShape reset update TagPos updated; TagPos updated GotoPos TagPos updated TagPos updated SetPositionShort TagPos updated; TagPos updated half-step mode only) GotoPos GotoSecPosition <SecEn> then TagPos SecPos; GotoPos DualPosition <SecEn> then TagPos SecPos <SecEn> then TagPos SecPos DualPosition HardStop SoftStop Sleep timeout <Sleep> `1', reset command received later HardStop (<CPFail> <UV2> <ElDef>) <HS> HardStop; HardStop; HardStop; <StepLoss> <StepLoss> <StepLoss> SoftStop note <SecEn> then TagPos SecPos else SoftStop <SecEn> action; action; then TagPos <Sleep> flag will <Sleep> flag will SecPos; evaluated evaluated will evaluated when motor stops when motor stops after DualPosition HardStop HardStop Sleep Shutdown HardStop Thermal shutdown <TSD> Motion finished Shutdown SoftStop Stopped SoftStop Stopped Stopped; Stopped; TagPos =ActPos TagPos =ActPos n.a. n.a. n.a. With following color code: Command ignored Transition another state Master responsible proper update (see note Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Notes: Leaving sleep state equivalent power-on-reset. After power-on-reset, shutdown state entered. shutdown state only left after GetFullStatus command that master could read <VddReset> flag). DualPosition sequence runs with separate registers. parameters that specified DualPosition command loaded with values stored moment DualPosition sequence starts. AccShape forced during second motion even ResetToDefault command issued during DualPosition sequence, which case AccShape will taken into account after DualPosition sequence. GetFullStatus command will return default parameters Vmax Vmin stored RAM. <Sleep> flag when timeout Sleep command occurs. reset next command (<Sleep> cancelled activated yet). Shutdown state left only when <TSD> <HS> flags reset. Flags reset only after master could read them GetStatus GetFullStatus command, provided physical conditions allow (normal temperature, correct battery voltage electrical charge pump defect). SetMotorParam command sent while motion ongoing (state GotoPos) should attempt modify Vmin values. This done during DualPosition sequence since this motion uses parameters, parameters will taken into account next SetPosition SetPositionShort command. Some transitions like GotoPos Sleep actually done several states: GotoPos SoftStop Stopped Sleep (see diagram below). transitions possible from state Stopped when <Sleep> `1': Transition state Sleep (<SecEn> `0') ((<SecEn> `1') (ActPos SecPos)) <Stop> Otherwise transition state GotoPos, with TagPos SecPos <SecEn> when register SecPos loaded with value different from most negative value (i.e. different from 0x400 "100 0000 0000") <Stop> flag allows distinguish whether state stopped entered after HardStop/SoftStop not. <Stop> when leaving state HardStop SoftStop reset during first clock edge occurring state Stopped. Command dynamic assignment decoded states except sleep effect current state While state stopped, ActPos TagPos there transition state GotoPos. This transition lowest priority, meaning that <Sleep>, <Stop>, <TSD>, etc. first evaluated possible transitions. <StepLoss> active, then SetPosition, SetPositionShort GotoSecurePosition commands ignored (they will modify TagPos register whatever state), motion secure position forbidden after Sleep command timeout (the circuit will into Sleep state immediately, without positioning secure position). Other command like DualPosition ResetPosition will executed allowed current state. <StepLoss> only cleared GetStatus GetFullStatus command. RunInit Thermal Shutdown SoftStop HardStop HardStop RunInit Motion finished HardStop HardStop Thermal ShutDown SoftStop HardStop Thermal Shutdown Motion Finished GotoSecPos ShutDown Stopped SetPosition Motion Finished GotoPos <Sleep> timeout command Priorities Motion Finished Sleep <Sleep> (not<SecEn> <SecEn> ActPos SecPos <Stop>) Figure State Diagram Remark: "SleepEn"=0, then arrow from stopped state sleep state does exist. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.3 Motordriver 15.3.1. Current Waveforms Coils figure below illustrates current motor coils motordriver half-step mode. Coil Coil PC20051205.1 Figure Current Waveforms Motorcoils Halfstep Mode Whereas figure below shows current coil 1/16 micro stepping electrical period). Coil Coil PC20051123.4 Figure Current Waveforms Motorcoils 1/16 Microstep Mode Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.3.2. Regulation order force given current (determined Irun Ihold current position rotor) through motor coil while ensuring high energy transfer efficiency, regulation based principle used. regulation loop performs comparison sensed output current internal reference, features digital regulation generating signal that drives output switches. zoom over micro-step figure above shows circuit performs this regulation. reduce current ripple, higher frequency should selectable. register PWMfreq used this (Bit Data SetMotorParam). Table Frequency Selection PWMfreq Applied Frequency 22,8 45,6 15.3.3. Jitter lower power spectrum fundamental higher harmonics frequency, jitter added clock. register PWMJEn used this. (Bit Data SetStallParam). Readout with GetFullStatus (Bit Data Table Jitter Selection PWMJEn Status Single frequency Added jitter frequency 15.3.4. Motor Starting Phase motion start, currents coils directly switched from Ihold Irun with sine/cosine ratio corresponding first half micro) step motion. 15.3.5. Motor Stopping Phase deceleration phase, currents maintained coils their actual level (hence keeping sine/cosine ratio between coils) during stabilization time tstab(see Table). currents then hold values, respectively Ihold sin(TagPos) Ihold cos(TagPos) illustrated below. positioning order then executed. tstab Figure Motor Stopping Phase PC20051123.5 Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.3.6. Charge Pump Monitoring charge pump voltage sufficient driving high side transistors (due failure), internal HardStop command issued. This acknowledged master raising flag <CPFail> (available with command GetFullStatus). case this failure occurs while motion ongoing, flag <StepLoss> also raised. 15.3.7. Electrical Defect Coils, Detection Confirmation principle relies detection voltage drop least transistor H-bridge. Then decision taken open transistors defective bridge. This allow detect following short circuits: External coil short circuit Short between terminal coil Vbat cannot detect internal short motor Open circuits detected 100% duty cycle value during long time Table Electrical Defect Detection Pins Fault mode Short circuit Short circuit Vbat Open Short circuited Short circuited Short circuited Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.3.8. Motor Shutdown Mode motor shutdown occurs when: chip temperature rises above thermal shutdown threshold Ttsd (see Thermal Shutdown Mode) battery voltage goes below (see Battery voltage management) Flag <ElDef> `1', meaning electrical problem detected both coils, e.g. short circuit. Flag <CPFail> `1', meaning there charge pump failure motor shutdown leads following: H-bridges high impedance mode TagPos register loaded with ActPos avoid motion after leaving motor shutdown mode) interface remains active, being able receive orders send status. conditions motor shutdown mode are: Reception GetStatus GetFullStatus command four above causes more detected Which leads H-bridges Ihold mode. Hence, circuit ready execute positioning command. This illustrated following sequence given application tip. master check whether there problem decide which application strategy adopt. <ElDef> <CpFail> SetPosition frame GetFullStatus GetStatus frame GetFullStatus GetStatus frame circuit driven motor shutdown mode application aware this position set-point updated Master Motor shutdown mode motion application still unaware application Possible confirmation aware problem problem Reset <TW> <TSD> <UV2> <StepLoss> <ElDef> <CPFail> application Possible detection over temperature voltage electrical problem Circuit sets <TW> <TSD> <UV2> <StepLoss> <ElDef> <CPFail> again Figure 23:Example Possible Sequence used Detect Determine Cause Motor Shutdown Important: While shutdown mode, since there hold current coils, mechanical load cause step loss, which indeed cannot flagged AMIS-30623. Warning: application should limit number consecutive GetStatus GetFullStatus commands AMIS30623 shutdown mode when this proves unsuccessful, e.g. there permanent defect. reliability circuit could altered since Get(Full)Status attempts disable protection H-bridges. Notes Priority Encoder describing management states commands. note below considered illustrative. communication lost while shutdown mode, circuit enters sleep mode immediately Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 15.4 Motion Detection Motion detection based back generated internally running motor. When motor blocked e.g. when hits end-position, velocity result also generated back emf, disturbed. AMIS-30623 senses back emf, calculates moving average compares value with independent threshold levels: Absolute threshold (AbsThr[3:0] Delta threshold (DelThr[3:0]). Instructions correct these levels combination with three additional parameters (MinSamples, FS2StallEn DC100SDis) outside scope this datasheet. Detailed information available dedicated white paper "Robust Motion Control with AMIS-3062x Stepper Motor Drivers", available http://www.amis.com/. motor accelerated pulling propelling force resulting back increases above Delta threshold THR), then <DelStallHi> set. When motor slowing down resulting back decreases below Delta threshold THR), then <DelStallLo> set. When motor blocked velocity zero after acceleration phase, back zero. When this value below Absolute threshold, <AbsStall> set. <Stall> flag function <DelStallLo> <DelStallHi> <AbsStall>. Velocity Vbemf Vmax Motor speed Vmin Vbemf Vbemf Vbemf DeltaStallHi VABSTH Back AbsStall DeltaStallLo Figure 24:Triggering Stall Flags Function Measured Back Threshold Levels Table Truth Table Condition Vbemf Average DelThr Vbemf Average DelThr Vbemf AbsThr <DelStallLo> <DelStallHi> <AbsStall> <Stall> motion will only detected when motor running maximum velocity, during acceleration deceleration. motor positioning when Stall detected, (internal) hardstop motor generated <StepLoss> <Stall> flags set. These flags only reset sending GetFullStatus command. Stall appears during DualPosition then first phase cancelled (via internal Hardstop) after timeout (26.6 second phase vmin starts. When <Stall> flag position controller will generate internal HardStop. consequence also Steploss flag will set. position internal counter will copied ActPos register. flags read with GetStatus GetFullStatus command. Important remark: Using GetFullStatus will read clear following flags: <Steploss>, <Stall>, <AbsStall>, <DelStallLo>, <DelStallHi>. positioning possible ActPos register will further updated. Using GetStatus will read clear ONLY <Steploss> flag. <Stall>, <AbsStall>, <DelStallLo>, <DelStallHi> flags cleared. positioning possible ActPos register will further updated. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Motion detection disabled when registers AbsThr[3:0] DelThr[3:0] empty zero. Both levels programmed using command SetStallParam registers AbsThr[3:0] DelThr[3:0]. Also register AbsThr[3:0] DelThr[3:0] using command SetOTPParam. These values copied registers during power reset. Value Table: Table Absolute Threshold Settings AbsThr index AbsThr level Disable Table Delta Threshold Settings DelThr index DelThr level Disable 0.25 0.50 0.75 1.00 1.25 1.50 1.75 2.00 2.25 2.50 2.75 3.00 3.25 3.50 3.75 MinSamples MinSamples[2:0] Bemf sampling delay time expressed number cycles, more information please refer white paper "Robust Motion Control with AMIS-3062x Stepper Motor Drivers", Table Back Sample Delay Time Index MinSamples[2:0] tDELAY (µs) PWMfreq PWMfreq FS2StallEn AbsThr DelThr (i.e. motion detection enabled), then stall detection will activated AFTER acceleration ramp additional number full-steps, according following table Table Activation Delay Motion Detection Index FS2StallEn[2:0] Delay (Full Steps) more information please refer white paper "Robust Motion Control with AMIS-3062x Stepper Motor Drivers", DC100SDis When motor with large bemf operated high speed supply voltage, then duty cycle high 100%. This indicates that supply generate required torque might also result erroneously triggering stall detection. "DC100SDis" disables stall detection when duty cycle 100%. more information please refer white paper "Robust Motion Control with AMIS-3062x Stepper Motor Drivers", Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Motion Qualification Mode This mode useful debug motion parameters verify stability stepper motor systems. motion qualification mode entered means command TestBemf. will converted into analogue output which Bemf integrator output measured. Once activated, only stopped after POR. During Back observation, reading state internally forbidden. More information available white paper "Robust Motion Control with AMIS-3062x Stepper Motor Drivers". Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.0 Controller 16.1 General Description (local interconnect network) serial communications protocol that efficiently supports control mechatronic nodes distributed automotive applications. interface implemented AMIS-30623 compliant with rev. specifications. features slave node, thus allowing for: single-master multiple-slave communication self synchronization without quartz ceramics resonator slave nodes guaranteed latency times signal transmission single-wire communication transmission speed 19.2 kbit/s selectable length Message Frame: bytes configuration flexibility data checksum security error detection; detection defective nodes network. includes analog physical layer digital protocol handler. analog circuitry implements side driver with pull-up resistor transmitter, resistive divider with comparator receiver. specification line driver/receiver follows 9141 standard with some enhancements regarding behavior. control block protocol handler Filter Slope Control address from PC20051124.1 Figure 25:LIN Interface 16.2 Slave Operational Range Proper Self Synchronization interface will synchronize properly following conditions: Ground shift between master node slave node highly recommended same type reverse battery voltage protection diode Master Slave nodes. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.3 Functional Description 16.3.1. Analog Part transmitter low-side driver with pull-up resistor slope control. Figure shows characteristics transmitted signal, including delay between internal signal. Parameters timing values. receiver mainly consists comparator with threshold equal Vbb/2. Figure also shows delay between received signal internal signal. also Parameters timing values. 16.3.2. Protocol Handler This block implements: synchronization timing layer layer supervisor 16.3.3. Electro Magnetic Compatibility behavior fulfills requirements defined specification, rev. 1.3. 16.4 Error Status Register interface implements register containing error status communication. This register follows: Table Error Register used used used With: used Time error Data error Flag Header error Flag error Flag Time error: Data error flag Checksum error StopBit error Length error Header error flag Parity SynchField error error flag GetFullStatus frame will reset error status register. 16.5 Physical Address Circuit circuit must provided with physical address order discriminate this circuit from other ones bus. This address coded bits, yielding theoretical possibility different circuits same bus. combination memory bits hardwired address bits (pins HW[2:0]). However maximum number nodes network also limited physical properties line. recommended limit number nodes network exceed Otherwise reduced network impedance prohibit fault free communication under worst case conditions. Every additional node lowers network impedance approximately Physical address memory Hardwired bits Note: Pins digital inputs, whereas compliant with level, e.g. connected Vbat terminal PCB. provide cleaning current this terminal, system used also implemented (see Hardwired Address HW2). Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.6 Frames frames divided writing reading frames. frame composed 8-bit Identifier followed data-bytes. Writing frames will used Program Memory; Configure component with stepper-motor parameters (current, speed, stepping-mode, etc.); Provide set-point position stepper-motor. Whereas reading frames will used actual position stepper-motor; status information such error flags; Verify right programming configuration component. 16.6.1. Writing Frames writing frame sent master send commands and/or information slave nodes. According specification, identifiers used determine specific action. physical addressing needed, then some bits data field dedicated this, illustrated example below. Identifier byte Data byte phys. address Data byte command parameters (e.g. position) Another possibility determine specific action within data field order less identifiers. example reserved identifier 0x3C take advantage byte data field provide physical address, command needed parameters action, illustrated example below. 0x3C Data1 Data2 command Data3 physical address Data4 Data5 Data6 parameters Data7 Data8 AppCmd Note: byte Data1 must since specification requires that contents from 0x00 0x7F must reserved broadcast messages (0x00 being "Sleep" message). also command Sleep writing frames used with AMIS-30623 following: Type General purpose data bytes writing frame with dynamically assigned identifier. This type dedicated short writing actions when load issue. They used provide direct command (Broad `1') slave nodes (Broad `0'). Broad `1', physical address slave node provided remaining bits DATA2. DATA1 will contain command code (see Dynamic assignment Identifiers), while, present, DATA3 DATA4 will contain command parameters, shown below. Data1 command Data2 Physical address Broad Data3. parameters. Type data bytes writing frame with identifier dynamically assigned application command, regardless physical address circuit. Type data bytes writing frame with identifier dynamically assigned particular slave node together with application command. This type frame requires that there many dynamically assigned identifiers there AMIS-30623 circuits using this command connected bus. Type data bytes writing frame with 0x3C identifier. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.6.2. Reading Frames reading frame uses in-frame response mechanism. That master initiates frame (synchronization field identifier field), slave sends back data field together with check field. Hence, types identifiers used reading frame: Direct which points particular slave node, indicating same time which kind information awaited from this slave node, thus triggering specific command. This provides fastest access read command forbidden other action. Indirect which only specifies reading command, physical address slave node that must answer having been passed previous writing frame, called preparing frame. Indirect gives more flexibility than direct one, provides slower access read command. Notes reading frame with indirect must always consecutive preparing frame. will otherwise taken into account. reading frame will always return physical address answering slave node order ensure robustness communication. reading frames used with AMIS-30623 following: Type Data bytes reading frame with direct identifier dynamically assigned particular slave node together with application command. preparing frame needed. Type Data bytes reading frame with 0x3D identifier. This intrinsically indirect type, needing therefore preparation frame. advantage reserved identifier. 16.6.3. Preparing Frames preparing frame writing frame that warns particular slave node that will have answer next frame (hence reading frame). preparing frame needed when reading frame does dynamically assigned direct Preparing reading frames must consecutive. preparing frame will contain physical address slave node that must answer reading frame, will also contain command indicating which kind information awaited from slave. preparing frames used with AMIS-30623 type type described below. Type data bytes writing frame with dynamically assigned identifier. Byte Content Identifier Data Data Preparing Frame Structure CMD[6:0] AD[6:0] Where: According parity computation Type eight data bytes writing frame with 0x3C identifier. SetDualPositioning Writing Frame Structure AppCMD 0x80 CMD[6:0] AD[6:0] Data4[7:0] Data5[7:0] Data6[7:0] Data7[7:0] Data8[7:0] Byte Content Identifier Data Data Data Data Data Data Data Data Where: AppCMD: CMD[6:0]: AD[6:0]: Datan[7:0]: `0x80' this indicates that Data contains application command Application Command "byte" Slave node physical address Data transmitted Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.6.4. Dynamic Assignment Identifiers identifier field datagram denotes content message. identifier bits parity bits used represent content. identifiers 0x3C 0x3F reserved command frames extended frames. Slave nodes need very flexible adapt itself given network order avoid conflicts with slave nodes from different manufacturers. Dynamic assignment identifiers will fulfill this requirement writing identifiers into circuits RAM. pointers linking commands dynamic identifiers together. writing frame with identifier 0x3C issued master will write dynamic identifiers into RAM. writing frame able assign identifiers, therefore frames needed assign identifiers. Each pointer ROMp_x [3:0] place corresponding dynamic identifier Dyn_ID_x [5:0] correct place (see Table Dynamic Identifiers Writing Frame). When setting <BROAD> zero broadcasting active each slave will store same dynamic identifiers, otherwise only slave with corresponding slave address programmed. Byte Content Identifier AppCmnd Address Data Data Data Data Data Dynamic Identifiers Writing Frame Structure 0x3C 0x80 0x11 Broad DynID_1[3:0] ROMp_1[3:0] DynID_2[1:0] ROMp_2[3:0] DynID_1[5:4] ROMp_3[3:0] DynID_2[5:2] ROMp_4[2:0] DynID_3[5:0] DynID_4[5:0] ROMp_4[3:2] Where: 0x11, corresponding dynamic assignment four identifiers broad circuits connected will share same dynamically assigned identifiers. DynID_x[5:0]: Dynamically assigned identifier application command which pointer ROMp_x[3:0] frame allows only assign four identifiers. Therefore, additional frames could needed order assign more identifiers (maximum three AMIS-30623). Dynamic User Defined User Defined User Defined User Defined User Defined User Defined User Defined User Defined User Defined User Defined pointer 0010 0011 0100 0101 0110 0111 0000 0001 1000 1001 Application Command GetActualPos GetStatus SetPosition SetPositionShort SetPositionShort SetPositionShort GeneralPurpose bytes GeneralPurpose 4bytes Preparation Frame SetPosParam CMD[6:0]: Broad: Command assignement done start-up Command assignement Dynamic during operation Figure 26:Principle Dynamic Command Assignment Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.7 Commands Table Table Commands with Corresponding Pointer Command mnemonic GetActualPos GetFullStatus GetOTPparam GetStatus GotoSecurePosition HardStop ResetPosition ResetToDefault RunVelocity SetDualPosition SetMotorParam SetOTPparam SetStallparam SetPosition (16-bit) SetPositionShort motor) SetPositionShort motors) SetPositionShort motors) SetPosParam Sleep SoftStop TestBemf Dynamic assignment General purpose Data bytes General purpose Data bytes Preparation frame Command byte (CMD) 0x00 000000 0x01 000001 0x02 000010 0x03 000011 0x04 000100 0x05 000101 0x06 000110 0x07 000111 010111 0x17 0x08 001000 0x09 001001 0x10 010000 010110 0x16 0x0B 001011 0x0C 001100 0x0D 001101 0x0E 001110 n.a. 001111 011111 010001 0x0F 0x1F 0x11 Dynamic (example) 100xxx n.a. n.a. 000xxx n.a. n.a. n.a. n.a. n.a. n.a. n.a. n.a. n.a. 010xxx 001001 101001 111001 n.a. n.a. n.a. n.a. 011000 101000 011010 pointer 0010 0011 0100 0101 0110 0111 1001 0000 0001 1000 allows address physically slave node. Therefore, these dynamic cannot used more than eight stepper motors. Only pointers needed AMIS-30623. 16.8 Lost Behavior 16.8.1. Introduction When communication broken duration 25000 consecutive frames 1,30 19200 kbit/s) AMIS-30623 sets internal flag called "LIN lost". functional behavior depends state bits <SleepEn> <FailSafe>, this loss communication occurred before) power reset normal powered operation. 16.8.2. Sleep Enable <SleepEn> enables disables entering low-power sleep mode case time-out. Default entering sleep-mode disabled. Table Sleep Enable Selection <SleepEn> Behavior Entering low-power sleepmode lost DISABLED Entering low-power sleepmode lost ENABLED Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 16.8.3. Fail Safe Motion <FailSafe> enables disables automatic motion predefined safe position. also Autonomous Motion. Table Fail Safe Enable Selection <FailSafe> Behavior motion case lost ENABLES motion safe position case lost 16.8.4. Autonomous Motion AMIS-30623 able perform Autonomous Motion preferred position. This positioning starts after detection lost communication case: <FailSafe> register SecPos[10:0] 0x400 functional behavior depends communication lost during normal operation (see Figure case before) start-up (See Figure case Power content copied GetFullStatus (LIN communication Figure Flow chart power-up AMIS-30623. cases illustrated; Case lost during operation Case lost start-up Lost During Normal Operation communication lost during normal operation, assumed that AMIS-30623 referenced. other words ActPos register contains "real" actual position. lost absolute positioning stored secure position SecPos done. This further called Secure Positioning. Following sequence will followed. also Figure "SecPos[10:0]" from register will used. This different from register earlier master communication updated this. also Secure Position command SetMotorParam. communication lost FailSafe there will secure positioning. Depending SleepEn AMIS-30623 will enter STOP state SLEEP state. Table communication lost FailSafe there possibilities: SecPos[10:0] 0x400: Secure Positioning will performed Depending SleepEn AMIS-30623 will enter STOP state SLEEP state. Table SecPos[10:0] 0x400: Perform Secure Positioning. This absolute positioning (slave knows ActPos. SecPos[10:0] will copied TagPos) Important remarks: Secure Position resolution Same behavior case float lost address). also Hardwired Address Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SetMotorParam (RAM content overwritten) FailSafe SecPos 0x400 SleepEn Normal Function Secure Positioning TagPos SLEEP STOP Figure Case Lost During Normal Operation Lost Before Power-on communication lost before power ActPos register does reflect "real" actual position. lost referencing started using DualPositioning. first negative motion half positioner range initiated until stall position reached. motion parameters stored will used this. After this mechanical position reached ActPos will reset zero. second motion will start Secure Position also stored OTP. More details given below. FailSafe First motion DualPosition Half position range Negative direction Stall ActPos '0000' SecPos 0x400 Secure Positioning SecPos stored SleepEn STOP SLEEP STOP Figure Case Lost During Start-up Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver lost before power following sequence will followed. also Figure communication lost FailSafe there will secure positioning. Depending SleepEn AMIS-30623 will enter STOP state SLEEP state. Table communication lost FailSafe referencing started using DualPositioning. negative motion half positioner range initiated until stall position reached. motion parameters stored will used this. After this mechanical position reached ActPos will reset zero. direction motion given Shaft bit. SecPos[10:0] 0x400: Second Motion will performed. Depending SleepEn AMIS-30623 will enter STOP state SLEEP state. Table SecPos[10:0] 0x400: second motion SecPos performed. direction given SecPos[10] combination with Shaft. Motion done with parameters from OTP. Important remarks: Secure Position only resolution because only MSB's will copied from RAM. also Secure Position motion direction SecPos given Shaft Same behavior case float lost address). also Hardwired Address Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 17.0 Application Commands 17.1 Introduction Master will have commands manage different application tasks AMIS-30623 feature. commands summary given table below. Table Commands Summary Command Mnemonic Reading command GetActualPos GetFullStatus GetOTPparam GetStatus Code 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x17 0x08 0x09 0x10 0x16 0x0B 0x0C 0x0D 0x0E 0x2F Prep Frames Read Write Description Returns actual position motor Returns complete status circuit Returns memory content Returns short status circuit Drives motor secure position Immediate motor stop Actual position becomes zero position content reset Drives motor continuously Drives motor different positions with different speeds Programs motion parameters values current motor's coils Programs (and zaps) selected byte memory Programs motion detection parameters Drives motor given position Drives motor given position (half step mode only) Drives motors given positions (half step only) Drives four motors given positions (half step only) Drives motor given position programs some motion parameters. Drives circuit into sleep mode Motor stopping with deceleration phase Outputs Bemf voltage Writing commands GotoSecurePosition HardStop ResetPosition ResetToDefault RunVelocity SetDualPosition SetMotorParam SetOTPparam SetStallparam SetPosition SetPositionShort SetPositionShort SetPositionShort SetPosParam Service commands Sleep SoftStop TestBemf 0x0F 0x1F These commands described hereafter, with their corresponding frames. Refer Frames more details frames, particularly what concerns dynamic assignment identifiers. color coding used distinguish between master slave parts within frames highlight dynamic identifiers. example shown below. Light Blue master Byte Content GetStatus Reading Frame Structure Identifier AD[6:0] Data VddReset StepLoss ElDef Tinfo[1:0] Data White slave in-frame response Yellow dynamic identifier Figure Color Code Used Definition Frames Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Usually, AMIS-30623 makes dynamic identifiers general-purpose bytes writing frames. dynamic identifiers used other purpose, this acknowledged. Some frames implement Broad that allows address command AMIS-30623 circuits connected same bus. Broad active when `0', which case physical address provided frame thus taken into account slave nodes. 17.2 Application Commands GetActualPos This command provided circuit master actual position stepper-motor. This position (ActPos[15:0]) returned signed two's complement 16-bit format. should note that according programmed stepping mode, LSBs ActPos[15:0] have meaning should assumed `0', described Position Ranges. GetActualPos also provides quick status circuit stepper-motor, identical that obtained command GetStatus (see further). Note: GetActualPosition command will attempt reset flag. GetActualPos corresponds following reading frames. data bytes in-frame response with direct (type Reading Frame Structure AD[6:0] ActPos[15:8] ActPos[7:0] StepLoss ElDef Byte Content Identifier Data Data Data Data VddReset Tinfo[1:0] Where: ID[5:0]: According parity computation Dynamically allocated direct identifier. There should many dedicated identifiers this GetActualPos command there stepper-motors connected bus. preparing frame prior data bytes in-frame response with 0x3D indirect Preparing Frame Structure CMD[6:0] 0x00 AD[6:0] Reading Frame Structure AD[6:0] ActPos[15:8] ActPos[7:0] StepLoss ElDef 0xFF 0xFF 0xFF 0xFF Byte Content Identifier Data Data Byte Content Identifier Data Data Data Data Data Data Data Data VddReset Tinfo[1:0] Where: According parity computation Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver GetFullStatus This command provided circuit master complete status circuit stepper-motor. Refer Registers Flags Table meaning parameters sent master. Note: GetFullStatus command will attempt reset flags <TW>, <TSD>, <UV2>, <ElDef>, <StepLoss>, <CPFail>, <OVC1>, <OVC2> <VddReset>. GetFullStatus corresponds successive in-frame responses with 0x3D indirect Preparing Frame Structure CMD[6:0] 0x01 AD[6:0] Byte Content Identifier Data Data Byte Content Identifier Data Data Data Data Data Data Data Data Reading Frame Structure AD[6:0] Irun[3:0] Vmax[3:0] AccShape StepMode[1:0] Shaft VddReset StepLoss ElDef Motion[2:0] OVC1 TimeE AbsThr[3:0] Ihold[3:0] Vmin[3:0] Acc[3:0] Tinfo[1:0] OVC2 Stall CPFail DataE HeadE BitE DelThr[3:0] Byte Content Identifier Data Data Data Data Data Data Data Data Reading Frame Structure AD[6:0] ActPos[15:8] ActPos[7:0] TagPos[15:8] TagPos[7:0] SecPos[7:0] MinZCross[2:0] DC100 SecPos[10:8] DelStallLo DelStallHi DC100StEn AbsStall MinSamples[2:0] PWMJEn According parity computation Where: Important: mandatory master initiate second in-frame response ActPos, TagPos SecPos needed application. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver GetOTPparam This command provided circuit master after preparation frame (see Preparing frames) issued, read content memory segment which address specified preparation frame. GetOTPparam corresponds in-frame response with 0x3D indirect Byte Content Identifier Data Data Preparing Frame Structure CMD[6:0] 0x02 AD[6:0] Reading Frame Structure byte @0x00 byte @0x01 byte @0x02 byte @0x03 byte @0x04 byte @0x05 byte @0x06 byte @0x07 Byte Content Identifier Data Data Data Data Data Data Data Data Where: According parity computation GetStatus This command provided circuit master quick status (compared that GetFullStatus command) circuit stepper-motor. Refer Flags Table meaning parameters sent master. Note: GetStatus command will attempt reset flags <TW>, <TSD>, <UV2>, <ElDef>, <StepLoss> <VddReset>. GetStatus corresponds data bytes in-frame response with direct (type #5). GetStatus Reading Frame Structure AD[6:0] StepLoss ElDef Byte Content Identifier Data Data VddReset Tinfo[1:0] Where: ID[5:0]: According parity computation Dynamically allocated direct identifier. There should many dedicated identifiers this GetStatus command there stepper-motors connected bus. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver GotoSecurePosition This command provided master stepper-motors move secure position SecPos[10:0]. also internally triggered communication lost, after initialization phase, prior going into sleep mode. priority encoder description more details. priority encoder table also acknowledges cases where GotoSecurePosition command will ignored. GotoSecurePosition corresponds following writing frame (type #1). GotoSecurePosition Writing Frame Structure CMD[6:0] 0x04 Broad AD[6:0] Byte Content Identifier Data Data Where: Broad: according parity computation Broad stepper motors connected will reach their secure position HardStop This command will internally triggered when electrical problem detected both coils, leading shutdown mode. this occurs while motor moving, <StepLoss> flag raised allow warning master next GetStatus command that steps have been lost. Once motor stopped, ActPos register copied into TagPos register ensure keeping stop position. hardstop command also issued master some safety reasons. corresponds then following data bytes writing frame (type #1). HardStop Writing Frame Structure CMD[6:0] 0x05 Broad AD[6:0] Byte Content Identifier Data Data Where: Broad: according parity computation broad stepper motors connected will stop ResetPosition This command provided circuit master reset ActPos TagPos registers zero. This helpful prepare instance relative positioning. ResetPosition corresponds following writing frames (type #1). ResetPosition Writing Frame Structure CMD[6:0] 0x06 Broad AD[6:0] Byte Content Identifier Data Data Where: Broad: according parity computation broad circuits connected will reset their ActPos TagPos registers Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver ResetToDefault This command provided circuit master order reset whole slave node into initial state. ResetToDefault will, instance, overwrite with reset state registers parameters (See Registers). This another master initialize slave node case emergency, simply refresh content. Note: ActPos TagPos modified ResetToDefault command. Important: Care should taken send ResetToDefault command while motion ongoing, since this could modify motion parameters forbidden position controller. ResetToDefault corresponds following writing frames (type #1). ResetPosition Writing Frame Structure CMD[6:0] 0x07 Broad AD[6:0] Byte Content Identifier Data Data Where: Broad: according parity computation broad circuits connected will reset default RunVelocity This command provided circuit Master order motor continuous motion state. Note: Continuous communication required. Lost detected autonomous motion will start. also lost behavior. RunVelocity corresponds following writing frames (type #1). Byte Content Identifier Data Data RunVelocity Writing Frame Structure CMD[6:0] 0x17 Broad AD[6:0] Where: Broad: according parity computation broad stepper motors connected will start continuous motion. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SetDualPosition This command provided circuit master order perform positioning motor using different velocities. Section Dual Positioning. Note1 This sequence cannot interrupted another positioning command. Important: some reason ActPos equals Pos1[15:0] moment SetDualPosition command issued, circuit will enter deadlock state. Therefore, application should check actual position GetPosition GetFullStatus command prior start dual positioning. Another solution consist programming value stepper motor range Pos1[15:0]. same reason Pos2[15:0] should equal Pos1[15:0]. SetDualPosition corresponds following writing frame with 0x3C identifier (type #4). SetDualPositioning Writing Frame Structure AppCMD 0x80 CMD[6:0] 0x08 Broad AD[6:0] Vmax[3:0] Vmin[3:0] Pos1[15:8] Pos1[7:0] Pos2[15:8] Pos2[7:0] Byte Content Identifier Data Data Data Data Data Data Data Data Where: Broad: Vmax[3:0]: Vmin[3:0]: Pos1[15:0]: Pos2[15:0]: broad circuits connected will dual positioning velocity first motion velocity first motion velocity second motion First position reached during first motion Relative position second motion SetStallParam() This commands sets Motion Detection parameters, related Stepper Motor parameters such minimum maximum velocity, run- hold current, acceleration stepmode Motion detection meaning parameters sent Master SetStallParam corresponds 0x3C command SetStallParam Writing Frame Structure AppCMD 0x80 CMD[6:0] 0x16 Broad AD[6:0] Irun[3:0] Ihold[3:0] Vmax[3:0] Vmin[3:0] MinSamples[2:0] Shaft Acc[3:0] AbsThr[3:0] RelThr[3:0] AccShape MinZCross[2:0] StepMode[1:0] DC100StEn Byte Content Identifier Data Data Data Data Data Data Data Data PWMJEn Where: Broad: Broad circuits connected will parameters their RAMs requested Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SetMotorParam() This command provided circuit master values stepper motor parameters (listed below) RAM. Refer Registers meaning parameters sent master. Important: SetMotorParam occurs while motion ongoing, will modify once motion parameters (see Position Controller). Therefore application should change other parameters than Vmax Vmin while motion running, otherwise correct positioning cannot guaranteed. SetMotorParam corresponds following writing frame with 0x3C identifier (type #4). SetMotorParam Writing Frame Structure AppCMD 0x80 CMD[6:0] 0x09 Broad AD[6:0] Irun[3:0] Ihold[3:0] Vmax[3:0] Vmin[3:0] SecPos[10:8] Shaft Acc[3:0] SecPos[7:0] AccShape PWMfreq StepMode[1:0] Byte Content Identifier Data Data Data Data Data Data Data Data PWMJEn Where: Broad: Broad circuits connected will parameters their RAMs requested SetOTPparam() This command provided circuit master program content D[7:0] memory byte OTPA[2:0], Important: This command must sent under specific voltage value. parameter VbbOTP Parameters. This mandatory condition ensure reliable zapping. SetMotorParam corresponds 0x3C writing frames (type #4). HardStop Writing Frame Structure AppCMD 0x80 CMD[6:0] 0x10 Broad AD[6:0] OTPA[2:0] D[7:0] 0xFF 0xFF 0xFF Byte Content Identifier Data Data Data Data Data Data Data Data Where: Broad: Broad circuits connected will parameters their memories requested Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SetPosition() This command provided circuit master drive motors given absolute position. Positioning more details. priority encoder table (See Priority Encoder) acknowledges cases where SetPosition command will ignored. SetPosition corresponds following write frames. Data bytes frame with direct (type SetPosition Writing Frame Structure Pos[15 Pos[7 Byte Content Identifier Data Data Where: ID[5:0]: According parity computation Dynamically allocated direct identifier. There should many dedicated identifiers this SetPosition command there stepper-motors connected bus. Four Data bytes frame with general purpose identifier (type SetPosition Writing Frame Structure CMD[6:0] 0x0B Broad AD[6:0] Pos[15:8] Pos[7:0] Byte Content Identifier Data Data Data Data Where: Broad: According parity computation broad stepper motors connected will must Pos[15:0]. motors positioning frame with 0x3C identifier (type SetPosition Writing Frame Structure AppCMD 0x80 CMD[6:0] 0x0B AD1[6:0] Pos1[15:8] Pos1[7:0] AD2[6:0] Pos2[15:8] Pos2[7:0] Byte Content Identifier Data Data Data Data Data Data Data Data Where: Adn[6:0] Motor physical address [1,2]). Posn[15:0] Signed 16-bit position set-point motor Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SetPositionShort() This command provided circuit Master drive one, four motors given absolute position. applies only half stepping mode (StepMode[1:0] "00") ignored when other stepping modes. Positioning. more details. physical address coded bits, hence SetPositionShort only used with network implementing maximum slave nodes. These bits corresponding bits PA[3:0] memory (address 0x02) Physical Address Circuit priority encoder table (See Priority Encoder) acknowledges cases where SetPositionShort command will ignored. SetPositionShort corresponds following writing frames data bytes frame motor, with specific identifier (type SetPositionShort Writing Frame Structure Pos[10:8] Broad [7:0] Byte Content Identifier Data Data [3:0] Where: Broad: ID[5:0]: According parity computation broad stepper motors connected will Pos[10:0]. Dynamically allocated identifier data bytes SetPositionShort command. Four data bytes frame motors, with specific identifier (type SetPositionShort Writing Frame Structure Pos1[10:8] Pos1[7:0] Pos2[10:8] Pos2[7:0] Byte Content Identifier Data Data Data Data AD1[3:0] AD2[3:0] Where: ID[5:0]: Adn[3:0]: Posn[10:0]: according parity computation Dynamically allocated identifier four data bytes SetPositionShort command. Motor physical address least significant bits [1,2]). Signed 11-bit position point Motor (see Registers) Eight data bytes frame four motors, with specific identifier (type SetPositionShort Writing Frame Structure Pos1[10:8] Pos1[7:0] Pos2[10:8] Pos2[7:0] Pos3[10:8] Pos3[7 Pos4[10 Pos4[7:0] Byte Content Identifier Data Data Data Data Data Data Data Data AD1[3:0] AD2[3:0] AD3[3:0] AD4[3:0] Where: ID[5:0]: Adn[3:0]: Posn[10:0]: according parity computation Dynamically allocated identifier eight data bytes SetPositionShort command. Motor physical address least significant bits [1,4]). Signed 11-bit position point Motor (see Registers) Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver SetPosParam() This command provided circuit Master drive motor given absolute position. also sets some values stepper motor parameters such minimum maximum velocity. SetPosParam corresponds Four Data bytes writing frame with specific dynamically assigned identifier (type SoftPosParam Writing Frame Structure Pos[15:8] Pos[7:0] Vmax[3:0] AbsThr[3:0] Byte Content Identifier Data Data Data Data Vmin[3:0] Acc[3:0] Where: Broad: ID[5:0]: [15:0] according parity computation broad stepper motors connected will stop with deceleration. Dynamically allocated direct identifier Data bytes SetPosParam command. There should many dedicated identifiers this SetPosition command there stepper-motors connected bus. Signed 16-bit position set-point. Sleep This command provided circuit master slave nodes connected into sleep mode. this command occurs during motion motor, TagPos reprogrammed SecPos (provided SecPos different from "100 0000 0000"), SoftStop executed before going sleep mode. specification Sleep Mode. corresponding frame master request command frame (identifier 0x3C) with data byte containing 0x00 while followings contain 0xFF. Sleep Writing Frame Structure 0x00 0xFF Byte Content Identifier Data Data SoftStop SoftStop command occurs during motion stepper motor, provokes immediate deceleration Vmin (see Minimum Velocity) followed stop, regardless position reached. Once motor stopped, TagPos register overwritten with value ActPos register ensure keeping stop position. Note: SoftStop command occurring during DualPosition sequence taken into account. Command SoftStop occurs following cases: chip temperature rises above thermal shutdown threshold (see Parameters Temperature Management); master requests SoftStop. Hence SoftStop will correspond following data bytes writing frame (type #1). SoftStop Writing Frame Structure CMD[6:0] 0x0F Broad AD[6:0] Byte Content Identifier Data Data Where: Broad: according parity computation broad stepper motors connected will stop with deceleration. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver TestBemf This command provided circuit Master order output Bemf integrator output output chip. Once activated, stopped only after POR. During Bemf observation, reading state internally forbidden. TestBemf corresponds following writing frames (type #1). Byte Content Identifier Data Data TestBemf Writing Frame Structure CMD[6:0] 0x1F Broad AD[6:0] Where: Broad: according parity computation broad stepper motors connected will affected. Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 18.0 Resistance Electrical Electromagnetic Disturbances 18.1 Electrostatic Discharges Table Absolute Maximum Ratings Parameter Vesd Min. Max. Unit Electrostatic discharge voltage Electrostatic discharge voltage other pins Notes: Human body model (100 according std. 883E, method 3015.7) 18.2 Electrical Transient Conduction Along Supply Lines Test pulses applied power supply wires equipment implementing AMIS-30623 (see application schematic), according 7637-1 document. Operating Classes defined 7637-2. Table Test Pulses Test Levels According 7637-1 Pulse Amplitude Rise Time Pulse Duration (load dump) -100V +100V -150V (from +13.5V) +100V (from +13.5V) +21.5V (from +13.5V) Operating Class 50µs 100ns (burst) 100ns (burst) 400ms 10ms 18.3 Bulk current injection (BCI), according 11452-4. Operating Classes defined 7637-2. Table Bulk Current Injection Operation Classes Current Operating Class 60mA envelope 100mA envelope 200mA envelope 18.4 Power Supply Micro-interruptions According 16750-2 Table Immunity Power Supply Micro-interruptions Test Operating Class 10µs micro-interruptions 100µs micro-interruptions micro-interruptions 50ms micro-interruptions 300ms micro-interruptions Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 19.0 Package Outline 19.1 SOIC-20: Plastic small outline; leads; body width 300mil. AMIS reference: SOIC300 300G Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 19.2 NQFP-32: lead Quad Flat Pack; pins; body size AMIS reference: NQFP-32 Dimensions: 0.576 0.25 0.24 5.37 5.37 0.35 2.185 0.02 0.615 0.203 0.42 6.75 6.75 0.65 5.47 5.47 0.05 0.654 0.35 5.57 5.57 0.45 2.385 Unit Degree Notes Dimensions applies plated terminal measured between 0.25 from terminal tip. indication must placed surface package using identation mark other feature package body. Exact shape size this feature optional Applied exposed terminals. Exclude embedding part exposed from measuring. Applied only terminals Exact shape each corner optional NQFP Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver 20.0 Soldering 20.1 Introduction Soldering Surface Mount Packages This text gives very brief insight complex technology. more in-depth account soldering found AMIS "Data Handbook IC26; Integrated Circuit Packages" (document order number 9398 90011). There soldering method that ideal surface mount packages. Wave soldering always suitable surface mount ICs, printed-circuit boards with high population densities. these situations reflow soldering often used. 20.2 Re-flow Soldering Re-flow soldering requires solder paste suspension fine solder particles, flux binding agent) applied printed-circuit board screen printing, stencilling pressure-syringe dispensing before package placement. Several methods exist reflowing; example, infrared/convection heating conveyor type oven. Throughput times (preheating, soldering cooling) vary between seconds depending heating method. Typical re-flow peak temperatures range from 250°C. top-surface temperature packages should preferably kept below 230°C. 20.3 Wave Soldering Conventional single wave soldering recommended surface mount devices (SMDs) printed-circuit boards with high component density, solder bridging non-wetting present major problems. overcome these problems double-wave soldering method specifically developed. wave soldering used following conditions must observed optimal results: double-wave soldering method comprising turbulent wave with high upward pressure followed smooth laminar wave. packages with leads sides pitch (e): Larger than equal 1.27mm, footprint longitudinal axis preferred parallel transport direction printed-circuit board; Smaller than 1.27mm, footprint longitudinal axis must parallel transport direction printed-circuit board. footprint must incorporate solder thieves downstream end. packages with leads four sides, footprint must placed angle transport direction printedcircuit board. footprint must incorporate solder thieves downstream side corners. During placement before soldering, package must fixed with droplet adhesive. adhesive applied screen printing, transfer syringe dispensing. package soldered after adhesive cured. Typical dwell time four seconds 250°C. mildly-activated flux will eliminate need removal corrosive residues most applications. 20.4 Manual Soldering component first soldering diagonally-opposite leads. voltage (24V less) soldering iron applied flat part lead. Contact time must limited seconds 300°C. When using dedicated tool, other leads soldered operation within five seconds between 320°C. Table Soldering Process Package Soldering Method Wave Reflow(1) BGA, SQFP HLQFP, HSQFP, HSOP, HTSSOP, PLCC LQFP, QFP, TQFP SSOP, TSSOP, suitable suitable Suitable recommended (3)(4) recommended Suitable Suitable Suitable Suitable Suitable Semiconductor June 2006, www.amis.com AMIS-30623 Microstepping Motordriver Notes: surface mount (SMD) packages moisture sensitive. Depending upon moisture content, maximum temperature (with respect time) body size package, there risk that internal external package cracks occur vaporization moisture them (the called popcorn effect). details, refer drypack information "Data Handbook IC26; Integrated Circuit Packages; Section: Packing Methods." These packages suitable wave soldering solder joint between printed-circuit board heatsink bottom version) achieved, solder stick heatsink version). wave soldering considered, then package must placed angle solder wave direction. package footprint must incorporate solder thieves downstream side corners. Wave soldering only suitable LQFP, TQFP packages with pitch equal larger than 0.8mm; definitely suitable packages with pitch equal smaller than 0.65mm. Wave soldering only suitable SSOP TSSOP packages with pitch equal larger than 0.65mm; definitely suitable packages with pitch equal smaller than 0.5mm. 21.0 Company Product Inquiries more information about Semiconductor, technology product, visit site http://www.amis.com. North America Tel: +1.208.233.4690 +1.208.234.6795 Europe 55.33.22.11 55.31.81.12 22.0 Document History Table Document history Version Date Version July 2002 December 2005 June 2006 Modifications/Additions First non-preliminary issue Complete review Public release Devices sold AMIS covered warranty patent indemnification provisions appearing Terms Sale only. AMIS makes warranty, express, statutory, implied description, regarding information forth herein regarding freedom described devices from patent infringement. AMIS makes warranty merchantability fitness purposes. AMIS reserves right discontinue production change specifications prices time without notice. Semiconductor's products intended commercial applications. Applications requiring extended temperature range, unusual environmental requirements, high reliability applications, such military, medical life-support life-sustaining equipment, specifically recommended without additional processing AMIS such applications. Copyright ©2006 Semiconductor, Inc. Semiconductor June 2006, www.amis.com Other recent searchesORT4622 - ORT4622 ORT4622 Datasheet MC88HC05K - MC88HC05K MC88HC05K Datasheet KTC3199 - KTC3199 KTC3199 Datasheet IC41SV4105 - IC41SV4105 IC41SV4105 Datasheet ECN30531F - ECN30531F ECN30531F Datasheet ECN30541F - ECN30541F ECN30541F Datasheet CRO3161A - CRO3161A CRO3161A Datasheet AK63264W-72 - AK63264W-72 AK63264W-72 Datasheet AD9430 - AD9430 AD9430 Datasheet 74LVX574 - 74LVX574 74LVX574 Datasheet
Privacy Policy | Disclaimer |