Home
MC8041A / MCX314 MC8041A / MCX314
Contents
1. section BN d Dat aa omman ata 1 WRN Interpretation 1 0 gt Process P AXSP D15 D04 Section p BUSYN Circle Interpolation AX1P _ Pulse Counting Section separate Interpolation Control 2 axes IPS gt Section AX2P INT Bit Interpolation o aed Counting Section AXoP d AAA 2 axes 3 axes AX3P Main axis pulse X Axis Control Section X AXIS INT yo Main axis pulse Ni Y Axis Control Section Y AXIS Main axis pulse Z Axis Control Section Z AXIS INT yo Main axis pulse m U Axis Control Section U AXIS INTN yo Interrupt Generator Figure 1 1 14 Functional Block Diagram MCX314 P To P Interpolate Section Main Axis Pulse Command Comman Operating Data Section Action External Managing signal E Section gt i Operation External Section Signal a Pulse Generator Wave PP PLS Change PM DIR Logical Position Counter 32bit DOWN Interrupt EC A Gener tor Real Position Counter Change 6 4 Management 4 SOME 4 EMGN Compare Register COMP General
2. E 1 2 The Descriptions of 0 7 1 1 4 40 4 2 1 Pulse Output 2 0 1 2 74 2 4422 2 4441 2 2 2 4 4 2 1 1 Fixed Pulse Driving 4 2 1 2 Continuous Pulse Driving 4 2 022 0 0 0 0 0 44 22 44 5 2 2 9DOBd UV coc caedes 5 2 2 1 Constant Speed Driving 3 3 2 5 2 2 2 rapezoldal 6 2 2 3 S curve Acceleration Deceleration Driving 2 0 0 4 4172 7 2 2 4 Pulse Width and Speed 1 2 22 02022242 22222 2 222222 9 2791Position sc eet oett e RR A 11 2 3 1 Logic Position Counter Real position 11 2 3 2 Compare Register and Software 4040 4 4 2 2222 2 22 11 2t4 InterpolatioHzz do hase etis ee 12 2 4 1 Linear 2 2 2 44 4 2 0 2 12 2 4 2 Circular Interpolation 3334 eee i 14 2 4 3 The Bit Pattern Interpolation
3. 55 6 8 Manual Decelerating Point Setting 2 0 0 0 2 02 2 2 222222222 55 6 9 Circular Center 0 1 2 127222 22442 2 2 22 56 6 10 Logical Position Counter 0 2 24 4 2 024272 2 2 2 2 2 0 2222 2 2 56 6 11 Real position Counter 0 2 24902022 2 2 2 2 2 02 2 2 2 2 22 56 6 12 COMP Register 2 41 2 2 2 20 56 6 19 Register Setting e eee UTI Te T ere eee eei 56 6 14 Acceleration Counter 2 2 7 2 472 2 222 57 6 15 Used for Axis 2 002 2 2 22 722020222222 2 57 7 Commands for Reading Data 27 7 22 222 0 0 7 22 22 4 58 7 1 Logical Position Counter Reading 2 2 2 0 22 2 27 2 272 2022 2 2 58 7 2 Real position Counter Reading 4 4 2020202 2 2 2 2 2 222022222222 58 7 3 Current Drive Speed 4 2 2 2 2 2
4. 02 2 2 2 16 2 4 4 Constant Vector Speed 2 2 2 2 2 7 27 7 7 2 2 244 424 4 4 19 2 4 5 Continuous 4 2 22 2 2242 2 2 21 2 4 6 The Acceleration Deceleration Control in 24 2 4 6 Single step interpolation from Command or External Signal 27 2 5 IntetPupbr cest ecce eT ee a 28 2 6 Othier F nctionsss aber Le t toD 29 2 6 1 Driving By External 2 0 20 2 22 2 7 7 7 2 2 444 42 2 2 29 2 6 2 Pulse Output Type Selection 020204 4 4 2 7 2 2 2 2 30 2 6 3 Pulse Input Type 2 0 70 4442 2 2 2 2 22 30 2 6 4 Hardware Limit nnns 30 2 6 5 Interface to Servo Motor 22 2 2 740 0 2 2 2 2 2 2 22 31 2 6 6 Emergency Stop 1 2 31 2 027 55 N 31 2 6 8 General Purpose 1 1 2 2 2
5. Used for fixed pulse driving Prevention of Triangle Driving Profile When the fixed pulse trapezoidal driving is performed and also when the deceleration is performed before the acceleration stops the triangle driving profile is coming out The prevention of triangle driving profile in S curve acceleration deceleration driving will be discussed as follows If the initial speed is 0 and if the rate of acceleration is a then the speed at time t in acceleration region can be described as following Speed v t af 2 3 2 3 Therefore the total output pulse number p t from time to t is the integrated of speed af p t 1 1 p t 1 3x at Initial Speed i us Time Acceleration The total output pulse is 1 3 2 3 1 2 3 1 1 3 x 4 af Dec Time 50 p t 1 12 total pulse output Fig 2 10 The rule of 1 12 of Parabolic Acceleration Deceleration Therefore when the output pulse in acceleration of S curve is more than 1 12 of total output pulse MCX314 will stop increasing acceleration and start to decrease the acceleration value MCX314 The Decelerating Stop for Preventing the Triangle Driving Profile in S curve Driving When the decelerating stop is commanded or when A the external signals IN3 INO are active during the S Speed curve acceleration deceleration driving the acceleration rate is decreasing then the deceleration starts
6. 9 3 10 Emergency Stop Input Signal EMG 70 0 0 02 2 22 40 20 022 2 2 4 10 Sola 10 4 Interrupt 0 4 41 4 n n s nh nnn 11 5 Connection Examples for Motor Drivers 20 2 2 2 12 5 2 Connection with Pulse type Servo Motor 22 2 2 13 62 SIgralsbimibg EN 14 tal eoa aaa aate da ua aaa eaa daa aas aa ada daa sacas la dada daas ddadadaa aqaa SARRA 14 6 9 nterpolation 14 6 4 Input Pulse TIMING 15 6 5 Sudden Stop 16 6 6 Decelerating Stop 16 7T wJ mper dnd Switch ayo utira 17 8 1 42 4 2 1 nnns 18 1 Introduction MC8041A is a high speed 4 axis PC Based motion control card for stepper or pulse type servo motor drivers Its features are 4 axis independent position speed control for step
7. tWL It is low when BUSYN is active And BUSYN is low after 2 SCLK cycles when WRN 7 active Min Unit DF WRN f gt BUSYN J Delay Time Item tDF BUSYN Low Level Wavelength tCYC x 4 tCYC is a cycle of CL 12 2 4 SCLK Output Signal Timing a n5 K The following output single is synchronized with SCLK output signal The level at ACLK will be changed Output signals nPP PLS nPM DIR nDRIVE nASND nDSND nCMPP and nCMPM 71 MCX314 SCLK Output signal iem iD 5007 gt Output Signal 1 l Delay Time 0 20 nS 12 2 5 Input Pulses B Quadrature Pulses Input Mode phases Counting up Counting down Up Down Pules Input Mode nPPIN XI nPMIN tDE um tlCYC tIB tlCYC quadrature pulse input mode when nECA and nECB input pulses are changed the value of real position counter will be changed to the value of those input pulses changed after the period of longest SCLKA is passed in UP DOWN pulse input mode the real position counter will become the value of those input pulses changed after the period between the beginning of nPPIN nPMIN 7 and the time of SCLK 4 cycle is passed Un Phase Difference Time tCYCx2 20 15 tiL tB nECA nECB UL nPPIN and nPMIN Low Level Wavelength nPPIN and nPMIN Cycle tCYC x 2 20 B nPPIN lt nPMIN 7 Time x 2
8. _ c 0 0 1 0 Bram BPm seme ESE ESE BPM 111111 Brim t tj ty ty BP3MH Note BPmPL BPmPH BPmML BPmMH represent the following bit groups m is 1 3 BPmPL the low byte of BPmP D7 DO BPmPH the high byte of BPmP D15 D8 BPmML the low byte of BPmM D7 DO BPmMH the high byte of BPmM D15 D8 For some addresses of bit pattern data registers are as same as nWR2 nWR7 the host CPU can not write any data into the bit pattern data register since MCX314 has been reset To write the bit pattern command the host CPU should be with the following sequence Write bit Write bit pattern BP enable command 36h into command register P enable command 36h into command register Write bit _ data Write BP disable command 37h into command register Note If the host CPU doesn t disable the BP data register the data in nWR2 nWR5 registers cannot be assessed 9 The example of bit pattern interpolation The bit interpolation example is shown in Fig 2 24 We set X axis as ax1 Y axis as ax2 and a constant 18 MCX314 speed 1000PPS in a constant vector speed interpolation driving WRS lt 0104h write Defineaxi X ax2 Y BP2M lt 3FCOh write Y axis direction command WR6 lt 0900h write setting the master axis speed WRO lt 0038h write BP data stacking SC
9. re nr A 72 12 2 6 General Purpose Input Output Signals 20 72 13 Timing of Input Output 5 22 0 2424 2 2 73 SMILIES 73 13 2 Fixed Pulse or Continuous Driving 2 22 1 2 73 MCX314 Oe OI ati Td oye LAO Ms M p 74 13 4 Start Driving after Hold 0000 74 ti Keke 12180622 he OAC aan tae MMC 74 13 6 DeCelerating NE RENEE enn MM ERE D REED UE 74 reer reer creer 76 15 212252000222112225772222112222070002211225200022211222507222211020000005172 77 Appendix Speed Curve 2 7 2 0 2 0494 444 4 4441 1 4 4 4 1 411 74 42 40 1 23 MCX314 1 OUTLINE MCX314 is 4 axis motion control IC which can control 4 axes of either stepper motor or pulse type servo driveers for position speed and interpolation controls All of the MCX314 s function are controlled by specific registers There are command registers data registers status registers and mode registers This motion control IC has the following built in functions B Individual Control for 4 Axes Each of the four axes has identic
10. 1250 x 10 500 x 10 PPS SEC I Acceleration 80 125x80x10 100 10 10000PPS PPS SEC 0 2 0 4 0 6 SEC Ml Initial Speed SV 100 100 x 10 2 1000 PPS Drive Speed 4 000 4 000 10 40 000 PPS Please refer each parameter in Chapter 6 2 2 4 Pulse Width and Speed Accuracy mDuty Ratio of Driving Pulse The period time of direction pulse driving of each axis is decided by system clock CLK The tolerance is within 1SCLK For 16 2 the tolerance is 125nSEC Basically the duty ratio of each pulse is 5096 as show in Fig 2 12 When the parameter setting is R 8 000 000 and V 1000 Multiple 1 V 1000PPS the driving pulse is 500 5 on its Hi level and 50uSEC on its Low level and the period is 1mSEC 8000000 SV 1000 500 5 50005 1510 1 00 5 Fig 2 12 Output of Drive Pulse 1000PPS However during the acceleration deceleration driving the Low level pulse length is shorter than that of Hi level pulse during the acceleration the Low level pulse is longer than that of Hi level pulse during the deceleration See Fig 2 13 Acceleration Area Constant speed Area Deceleration Area gt tHA tHC tLC tHA gt tLA tHC tLC tHD lt tLD Fig 2 13 Comparison of Drive Pulse Length in Acceleration Deceleration MCX314 Accuracy of Drive Speed The clock SCLK running in
11. 22 2 2 2 2 61 9 3 CW Circular 4 22 1 61 9 4 CCW Circular 442 4422 22222 2 22 61 9 5 2 Axis Bit Pattern Interpolation 2 447 7 2 2 2 2 2422222 61 9 6 3 Axis Bit Pattern Interpolation 2 2 2 2 2 2 2 220202222 222 62 9 7 BP Register Data Writing Enabling 2 2 44 62 9 8 BP Register Data Writing 2 1 2 2 2 222 22 62 9 9 BP Data 62 9 107 BP Data Gl6dt 63 9 11 Single Step Interpolation 2 2 1 2 22 2 2 2 0 222222 222 63 9 12 Deceleration Enabling 2 2 2 2442 401 2 1 63 9 T3 Deceleration Disablingsse ooo ono ia aa sac ua gg gd aeasaa gd dudes ide 63 9 14 Interpolation Interrupt 2 4 2 2 2 2 2224222 63 LO Connection Example Samoi a eaa eaaa aaia aaa aiaiai 64 1
12. 59 MCX314 8 4 Direction Continuous Driving 23h Direction Continuous Driving Before the stop command or external signal is active the pulse numbers will be continuously output through the output signal nPM In driving real position counter will count down 1 when one pulse is output Before writing the driving command the user should set the parameters for the outputting speed curve and the correct output pulse numbers 8 5 Drive Status Holding Holding for driving starting This command is to hold on the start of driving When this command is used for starting multi axis driving simultaneously the user may write other commands after the drive status holding command is registered The drive start holding release command 25h can be written to start the driving In driving even this command is written the driving will not be stopped The next command will be held 8 6 Drive Status Holding Release Finishing Status Clear 25h Drive status holding release finishing status clearing This command is to release the drive status holding 24h and start the driving Also this command can clear the finishing status bits D15 8 of register RR1 8 7 Decelerating Stop 26h Decelerating stop in driving This command performs the decelerating stop when the drive pulses are outputting If the drive speed is lower than the initial speed the driving will be suddenly stopped when this command is engaged I
13. A3 Address Input B28 B29 B30 B31 Dt D2 03 D4 DS D6 07 D8 D10 Di D12 VO D13 Dia o Lr vo GND Ground f A11 A12 A13 A14 A16 A17 A18 A19 A20 A21 A22 A23 A24 A25 A26 A27 A28 A29 A30 A31 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13 C14 C15 C16 C17 C18 MCX314 3 2 Pin Definition of 1 0 Connector See the diagram below when the first pin is found the upper cable from right red wire to left are the pins A1 A2 A49 50 and lower cable from right red wire to left are the pins B2 B49 B50 Connector type board side FX2B 100P 1 27DS HIROSE cable side FX2B 100S 1 27R HIROSE Connector O 50 M9 2 M B50 B49 e e e eec ccc B2 B1 L 15 Pin a 50 49 2 1 50 49 B2 B1 A2 EMG Emergency Stop forallaxes 82 J Input Input_ Decelerating Sudden Stop of Xaxis B6 ZIN2 Input Decelerating Sudden Stop of Z axis Input Input DirectionLimitofY axis 59 Input Direction Limit of U axis Input Input Input a33 anD B33 oND Ground A2 anD B42 cND Ground MCX314 MCX314
14. K 1010 Jerk 619 KPPS SEC2 acc Oxf 100 A 100 Acceleration deceleration 125 KPPS SEC dec Oxf 100 startv Oxf 100 speed Oxf 4000 pulse Oxf 100000 Ip Oxf 0 D Deceleration 125 KPPS SEC 100 Initial Speed 1000 PPS N 40000 Drive Speed 40000 PPS P 100000 output pulse number 100000 LP 0 Logical position counter 0 homesrch Home searching on whole axis Trapezoidal driving at X and Y axes acc 0x3 200 Acceleration deceleration 250KPPS SEC speed 0x3 4000 V 4000 Drive Speed 4000 PPS 68 pulse 0x1 8000 8000 pulse 0x2 40000 yP 40000 command 0x3 0x20 direction constant drive wait 0x3 for drive stop wreg3 0x3 0x0004 S curve acceleration deceleration driving at X and Y axes acac 0x3 1010 K 1010 S curve Acceleration 619 KPPS SEC2 acc 0x3 200 A 200 Acceleration Deceleration 250 KPPS SEC speed 0x3 4000 V 4000 Drive Speed 4000 PPS pulse 0x1 50000 XP 50000 pulse 0x2 25000 yP 25000 command 0x0 0x21 direction constant drive wait 0x3 wreg3 0x3 0x0000 S curve acceleration deceleration mode clearing Linear interpolation drive at X and Y axis outpw adr wr5 0 0124 ax1 x ax2 ax3 z linear speed keeps constant range 0x1 800000 ax1 R 800000 Multiple 10 range 0x2 1131371 1 800000 x 1 414
15. command 0 0x38 2 axis BP interpolation drive starting bp wait Wait for data writing outpw adr bp1p Ox1fdb outpw adr bp1m 0x0000 outpw adr bp2p OxOOff outpw adr bp2m 0 00 command 0 0x38 48 63 bit3 data writing MCX314 command 0 0x37 Bits pattern data writing inhibition wait 0x3 Wait for drive stop Continuous interpolation at X and Y axes Example of figure 2 29 speed 0x1 100 Drive Speed 10 PPS constant speed pulse 0x1 4500 pulse 0x2 0 command 0 0x30 node 1 next_wait center 0x1 0 0 2 1500 pulse 0x1 1500 pulse 0x2 1500 command 0 0x33 for next data setting node 2 next wait pulse 0x1 0 pulse 0x2 1500 command 0 0x30 next wait center 0x1 1500 center 0x2 0 pulse 0x1 1500 pulse 0x2 1500 command 0 0x33 next_wait pulse 0x1 4500 pulse 0x2 0 command 0 0x30 node 3 node 4 node 5 next wait node 6 center 0x1 0 center 0x2 1500 pulse 0x1 1500 pulse 0x2 1500 command 0 0x33 next wait node 7 pulse 0x1 0 pulse 0x2 1500 command 0 0x30 next wait node 8 center 0x1 1500 center 0x2 0 pulse 0x1 1500 pulse 0x2 1500 command 0 0x33 wait 0x3 b 69 12 Electrical Characteristics 12 1 DC Characteristics B Absolute Maximum Rated Symbol Power Voltage 0 3 47 0 Input vo
16. gt 1001101001110101 ax1 PP SREG SC 2 REG2 0100000100001010 BP1M 4 N Sys CPU 0000011100001010 1000010000100000 015 id DO 0001010 SC Stack counter RRO D14 13 E 0000000000001010 s ax1 PM BP1P Data register ax1 direction SREG BP1M Data register ax1 direction so SREG 16 bit shift register REG1 16 bit buffer register 1 0 3 REG2 16 bit buffer register 2 Fig 2 25 The Structure of Register for The Bit Pattern Interpolation for 1 axis Stacking counter SC is a 2 bit counter Its value is between 0 and 3 which can be read from D14 13 of register RRO SC will decide which register for the data from the host CPU The initial value of SC is 0 So 16 MCX314 when host CPU writes bit pattern data into BP1P or BP1M the data will be stored in SREG and then SC will count up to 1 and the next data from the host CPU will be written into REG1 By this way the REG2 becomes the register when 5 2 The host CPU is not able to write any bit pattern data into MCX314 when SC 3 When the bit pattern interpolation pulse is outputting DO in SREG will be shifted output first and then in the order of D1 D When all of SREGs have been shifted output the data in REG1 will be shifted to SREG the data in REG2 will be shifted to REG1 and the SC will count down to 2 Then the host CPU is able to write a new data into MCX314 again In order to make MCX314 output the bit
17. Displaying the comparison result between logical real position counter and COMP register 1 logical real position counter gt COMP register 0 logical real position counter lt COMP register D1 CMP Displaying the comparison result between logical real position counter and COMP register 1 logical real position counter lt COMP register 0 logical real position counter gt COMP register D2 ASND It becomes 1 when in acceleration Speed D3 CNST It becomes 1 when in constant speed driving D4 DSND It becomes 1 when in deceleration D5 AASND In S curve it becomes 1 when acceleration deceleration increases Time D6 ACNST In S curve it becomes 1 when ASND 1 CNST I DSND 1 n acceleration deceleration keeps gt lt gt lt gt constant D7 ADSND InS curve it becomes 1 when Acceleration acceleration deceleration decreases D11 8 IN3 0 If the driving is stopped by one of external decelerating stop signals ja Time nINS 0 it will become 1 AASND 1 ACNST 1 ADSND 1 ACNST 1 ADSND 1 D12 LMT If the driving is stopped by direction limit signal nLMTP it will become 1 D13 LMT If the driving is stopped by direction limit signal nLMTP it will become 1 D14 ALARM Ifthe driving is stopped by nALARM from servo drivers it will become 1 D15 EMG If the driving is stopped by external emergency signal EMGN it will become 1 The Status Bits of Drivi
18. MCX314 B Signal Description Signals XOOO YOOO ZOOO and UOOO are input output signals for X Y Z and U axes where n stands for X Y Z and U If the signals are named OOON they are negative active or low active Input T Signal Name Signal Description CLK 53 Input A Clock clock signal for internal synchronous loop of MCX314 The standard frequency is 16 MHz This signal is for drive speed acceleration deceleration and jerk If the frequency setting is not 16 MHz the setting values of speed and acceleration deceleration are different D15 DO 1 8 i DATA BUS 3 state bi direction 16 bit data bus 10 17 directional A When CSN Low and RDN Low these signals are for outputting Otherwise they are high impedance inputs If 8 bit data bus is used D15 D8 can not be used and D15 D8 should be pull up to 5V through high impedance about 100 kQ A3 A0 21 24 Input A Address address signal for host CPU to access the write read registers is used only when the 8 bit data bus is used Input A Select input signal for selecting I O device for MCX314 Set CSN to the Low level for data reading and writing WRN 26 Input A Write Strobe its level is Low while data is being written to MCX314 When WRN is Low CSN A3 A0 must be assured When WRN is up J the data will be latched in the write register and while WRN is up Jthe levels of D15 DO should be assured RDN 27 Input A Read Strobe its
19. define ax1 X ax2 Y WR6 lt 8480hwrite range 2 000 000 multiple 4 WR7 lt 001 write WRO lt 0100hwrite WR6 lt 0082hwrite acceleration WRO lt 0102hwrite 130x125x4 65000 PPS SEC WR6 lt 007Dh write Initial speed 125x4 500PPS WRO lt 0104hwrite WR6 lt 1388hwrite drive speed 5000x4 20000PPS WRO lt 0105hwrite WR6 lt D8FOh write center point X 10000 WR7 lt FFFFh write WRO lt 0108hwrite WR6 lt 0000hwrite center point Y 0 WR7 lt 0000hwrite H WRO lt 0208hwrite WR6 lt 0000hwrite finish point X 0 WR7 lt 0000hwrite WRO lt 0106hwrite WR6 lt 0000hwrite finish point Y 0 WR7 lt 0000hwrite E WRO lt 0206hwrite WR6 DOF5h write manual deceleration point setting 53493 WR7 lt 0000hwrite p WRO lt 0107hwrite WRO lt 003Bh write deceleration enabling WRO lt 0033hwrite COW circular interpolation starting 25 Y 2 1 0 3 10000 7071 X 4 7 5 6 Speed PPS Output Pulse During ge Acceleration 500 0 3 Time sec MCX314 9 The Acceleration Deceleration for Continuous Interpolation In continuous interpolation same as in circular and bit pattern interpolations only manual deceleration in the trapezoidal driving is available The automatic deceleration in S curve driving is not available Before performing the continuous interpolation it is necessary to preset the
20. 0 0 WR6 lt 01F4h write drive speed 500 x 2 1000PPS WRO lt 0105h write WR6 lt 1388h write center point of X 5 000 End point WR7 lt 0000h write 5000 5000 WRO lt 0108h write WR6 lt 0000h write center point of Y 0 C WR7 lt 00008 write E WRO lt 0208h write WR6 lt 1388h write finish point of X 5 000 WR7 lt 0000h write WRO lt 0106h write WR6 lt EC78h write finish point of Y 5 000 WR7 lt FFFFh write WRO lt 0206h write WRO lt 0032h write CW circular interpolation enabling nt Vector Speed MCX314 2 4 3 The Bit Pattern Interpolation MCX314 is able to receive the interpolation data from the host CPU and output pulses at a specific speed The host CPU executes the interpolation for 2 or 3 axes generates a set of pulse data then writes the commands into MCX314 MCX314 will output the pulses at a specific speed Every axis has 2 bit data buffers for host CPU one for direction and the other for direction When performing the bit pattern interpolation the host CPU will write the designated interpolation data for 2 or 3 axes into MCX314 If a bit in the bit pattern data from CPU is 1 MCX314 will output a pulse at the time unit if it is 0 MCX314 will not output any pulse at the time unit For example if the user want to generate the X Y profile see Fig 2 24 the host CPU must write a set of pattern into those specific registers XPP the direction register for X a
21. 5 max power consumption 90mA Input Output Signal Level CMOS TTL connectable Input Clock Pulse 16 000 MHz Standard B Package 144 pin plastic pitch 0 65mm Dimension 30 9 x 30 9 x 4 36 mm 78 Appendix A Speed Curve Profile MCX314 The following curves are based on the test records from MCX314 output drive pulses and speed curve traces The complete S curve acceleration deceleration is the curve drive without linear acceleration deceleration before the appointed drive speed is reached Partial S curve acceleration deceleration is with a period of linear acceleration deceleration before the appointed drive speed is reached m 40KPPS Full S curve Acceleration Deceleration 800000 Rate 10 700 A D 200 SV 100 4000 0 50 Auto Decelerating Mode Jerk 893KPPS SEC Accel Decel 250KPPS SEC Initial Speed 1000PPS Drive Speed 40KPPS Output Pulse 50000 40000 PPS 20000 19 SEC 2 0 P 30000 9 1 9 2 0 t 0 SEC 2 0 1 0 2 0 P 5000 40000 20000 0 SE 2 0 W 40KPPS Partial S curve Acceleration Deceleration R 800000 Rate 10 300 A D 150 SV 100 V 4000 A0 20 Auto Decelerating Mode Jerk 2083KPPS SEC Accel Decel 188KPPS SEC Initial Speed 1000PPS Drive Speed 40KPPS Output Pulse 50000 P 30000 9 1 0 20 P 20000 1 0 SEC 2 0 10000 0 1 0 20 0 1 0 29 MCX314 8000PPS complete S curve Acceleration Deceleration R
22. Before those registers have been accessed the host CPU should specify which axis is going to be accessed by writing a NOP command into WRO 39 MCX314 4 2 Register Address by 8 bit Data Bus In case of the 8 bit data bus access the 16 bit data bus can be divided into high and low word byte As shown in the table below xxxxL is the low word byte 07 00 of 16 bit register xxxx xxxxH is the high word byte D15 8 of 16 bit register xxxx Only for the command register WROL WROH the user must write to the high word byte WROL then to the low word byte WROH E Write Register in 8 bit Data Bus Ades AS A2 Ar 40 o 1 Write Register o o o weoL 01011 UWR1L UM UWR1H UWR2L UWR2H Uli UWRS3L UWR3H 0 0 0 WRALBPZPL 0 0 1 011 0 0 1 1 WASH BP2MH 0 0 WRGBPSPL 1 WRGH BPSPH 1 1 1 0 WRz BPSM 1 Read Register in 8 bit Data Bus Address EAS A2 Ar o Read Register o o t RROH URR1L URR1H TN URR2L dissi URR2H meme URRSL URRSH 0 o 0 0 o 1 RR4H BP2PH__ 011 0 0 1 1 RRSH BP2MH 0 BP3PL 1 0 1 6 4 _ 1 1 o MCX314 4 3 Command Register WRO Command register
23. register can be written anytime 56 MCX314 6 14 Acceleration Counter Offsetting Data Acceleration Counter Offsetting 0 65 535 AQ is the parameter executing acceleration counter offset The offset value of acceleration counter will be set 8 while resetting 6 15 NOP Used for Axis Switching Data This command doesn t execute anything However it can be used to assign the accessing axis axes according to WR1 3 registers of each axis 57 MCX314 7 Commands for Reading Data Data reading commands are used to read the register contents of each axis After a data reading command is written into register WRO this data will be set in registers RR6 and RR7 The host CPU can reach the data through reading registers RR6 and RR7 Reading data for registers WR6 WR7 is binary and 2 s complement for negatives Note Itrequires 250 nSEC maximum to access the command code when CLK 16MHz Please read registers RR6 and 7 within this period of time after the present command is written The axis assignment is for one axis If more than one axes are assigned the data reading priority is X gt Y gt Z gt U 7 1 Logical Position Counter Reading Data Logical position counter reading 2 147 483 648 2 147 483 647 4 bytes The current value of logical position counter will be set in read registers RR6 and RR7 7 2 Real position Counter Reading Data Real position counter reading 2 147 483 64
24. 0 200 0 200 a command 0x8 0x23 wait Oxf wreg1 Oxf 0 000 2 direction motion will be continuously driven at a speed of 500 PPS speed Oxf 50 Stopped 0x21 wait Oxf IN1 OFF it will be suddenly wreg1 Oxf 0x0000 3 direction motion will be driven at a speed of 40000 PPS speed Oxf 40000 pulse Oxf 100 command Oxf 0x21 wait Oxf 100 pulse shift Ip Oxf 0 4 LP 0 for X Y Z and U axes wreg2 0xf 0x0003 Software limit on X Y Z axes ON compp 0x1 100000 1000 100000 compm 0x1 1000 compp 0x2 50000 Y 500 450000 compm ox2 500 0 4 10000 Z 100 10000 compm 0x4 100 Main gt gt void main void a int count outpw adr wrO 0x8000 for count 0 count 2 count Software reset command Oxf Oxf Whole axis mode setting outpw adr wr1 0x0000 Mode register 1 00000000 00000000 outpw adr wr2 0x0000 Mode register 2 00000000 00000000 outpw adr wr3 0x0000 Mode register 3 00000000 00000000 outpw adr wr4 0x0000 General output register 00000000 00000000 outpw adr wr5 0x0024 nterpolation mode register 00000000 00100100 Initial value settings for whole axis driving accofst Oxf 0 0 range Oxf 800000 R 800000 Multiple 10 acac Oxf 1010
25. 103 PPS SEC 500 x 10 PPS SEC 6 4 Deceleration Setting Data Deceleration setting 1 8 000 2 bytes When acceleration deceleration is set individually D1 of register WR3 1 D is the parameter determining the deceleration of the trapezoidal driving For S curve acceleration deceleration the designated deceleration can be set see fig 2 9 page 7 until a specific value D is driving The deceleration calculation is shown in the following formula 8 000 000 Deceleration PPS SEC D 125 x Multiple When acceleration deceleration is set individually D1 of register WR3 1 the automatic deceleration cannot be performed The user should use manual deceleration 6 5 Initial Speed Setting Data Initial speed setting 1 8 000 SV is the parameter determining the speed of constant speed period in trapezoidal driving The initial speed calculation is shown in the following formula 8 000 000 MEE Multiple Initial Speed PPS SVx125x For stepper motors the user should set the initial speed smaller than the self starting frequency of stepper motors For servo motors the recommended setting initial speed is higher than the value of v acceleration For example if acceleration deceleration 125000 PPS SEC the speed setting is better larger than V 125000 354 PPS 54 MCX314 6 6 Drive Speed Setting Data Drive speed setting 1 8 000 V i
26. 2 parameter WR7 lt 003Dh write range 4 000 000 multiple rate 2 command of bit 32 47th WRO 0100h rite ET n 1 1FDBh write Xaxis direction command WR6 lt 4DCOh write range of constant line speed BP1M lt 0000h_ write Xaxis direction command WR7 lt 0056h write 4 000 000 1 414 5 856 000 BP2P lt 00FFh write axis direction command WRO lt 02001 write BP2M FCO0h write Y axis direction command WR6 lt O1F4h write Initial speed 500x2 1000PPS WRO 0038h stacking Sore WRO lt 010441 write WRO lt 00348 write enable 2 axis bit pattern WR6 lt O1F4h write drive speed 500x2 1000PPS interpolation because SC 3 WRO 01051 write J1 RRO D14 13 read untilthe SC islessthan2 WRO lt 0039h write clear BP data if D14 D19 1 Jump to J1 WRO lt 0036h write enable to write into BP register command of bit 48 63th T 1 lt 4000h write Xaxis direction command o pepe of Bito TSih 1 7FF5h write X axis direction command e lt 00001 write Xaxis direction command BP2P lt 0000h write Y axis direction command BP1M e 2BFFh write Xaxis direction command BP2M OAFFh write Y axis direction command _ BP2P lt FFD4h write Y axis direction command WRO lt 0038h write data stacking SC 3 BP2M lt 0000h write Y axis direction command p 5 o WRO lt 0038h write data stacking SC 1 WRO lt 0037h write disable to writ
27. 2 4 58 7 4 Current Acceleration Deceleration 0 2 2 2 2 58 SI 59 8 17 wes veces esegue E Saeed 59 8 2 Direction Fixed Pulse 0 2 2 2 2 2 1442 2 2222 2 2 2 59 8 3 Direction Continuous 0 2 442 2 222 2 2 22 59 8 4 Direction Continuous Driving 2 24 4 60 8 5 Drive Status 1 0 2 2 12 0 60 8 6 Drive Status Holding Release Finishing Status 2 2 60 8 7 Decelerating 44 4 0 2 222 2 2 2 22 2 2 2 2 0 222 2 24 2 60 8 8 Sudden 2 2 4 4 1 444 101 60 9 Interpolation Commands 2 2 2 2 4 4 4 2 2 4 02222222 442 2 2 61 9 1 Z Axis Lt ear Interpolatlonis i idi p db bbib d db bd dde 61 9 2 3 Axis Linear 4 242
28. 20 12 2 6 General Purpose Input Output Signals The figure shown at the lower left hand side illustrates the delay time when input signals nIN3 0 nEXPP nEXPM nINPOS and nALARM are read through RR4 and RR5 registers The figure shown at the lower right hand side illustrates the delay time when writing general output signal data into nWR3 and nWR4 Input signal WRN RDN D15 0 D15 0 nOUT7 0 tDO Vin tDI Input Signal Data Delay Time 32 n WRN T nOUT7 0 Established Time i sj 72 MCX314 13 Timing of Input Output Signals 13 1 Power On Reset VDD CLK RESETN g NON SCLK BUSYN INTN Hi Z nPP PLS nPP DIR nDRIVE nOUT7 0 The reset signal input to pin RESETN will keep on the Low level for at least 4 CLK cycles When RESETN is on the Low level for 4 CLK cycles maximum the output signals of MCX314 are decided SCLK will be output after 2 CLK cycles when RESTN return to the Hi level BUSYN keeps on the Low level for 8 CLK cycles when RESTN is on the Hi level 13 2 Fixed Pulse or Continuous Dri
29. 3 3 Drive Pulse Signal nP P nP N nP P Drive pulse output signal is used for the direction drive pulse output which is through the differential output line driver AM26LS31 nP P is differential from nP N and nP P is differential from nP N nP N and nP N are on the Low level while resetting nP N and nP N are on the Hi level It will become independent 2 pulse mode while resetting It is possible to change to 1 pulse 1 direction mode Please refer to Chapters 2 6 2 and 4 5 of MCX314 manual J3 45V MCX314 2 8 14 20 O nP P 1 7 13 19 nPP PLS _ 22 5 O nP N Am26LS31 or eq J3 9V 51612 1824 5 11 17 23 nP P d 4 10 16 22 nPM DIR nP N Output Signal Loop for Drive Pulses 3 9 15 21 The above circuit shows each axis s direction output J3 jumper be switched for 5V output when the pulse input specification of motor driver needs the function However 5V is the power of internal circuit The user should pay attention to the wiring and prevent from the noise from external devices Jumper table of J3 S5VOutput 1 3 6 9 t2 15 18 21 24 OutputPin 2 5 8 t 14 17 20 93 The original setting of 1 2 4 5 7 8 10 11 13 14 16 17 19 20 and 22 23 are shorted which is line driver output If 2 3 5 6 8 9 11 12 14 15 17 18 20 21 and 23 24 are shorted 5 output can be used The foll
30. 8000000 Rate 1 2000 A D 500 SV 100 V 8000 A0 0 Auto Decelerating Mode Jerk 31KPPS SEC Accel Decel 62 5KPPS SEC Initial Soeed 100PPS Drive Speed 8000PPS Output Pulse P 20000 8000PPS Partial S curve Acceleration Deceleration R 800000 Rate 1 1000 A D 100 SV 100 8000 0 0 Auto Decelerating Mode Jerk 62 5KPPS SEC Accel Decel 12 5KPPS SEC Initial Speed 100PPS Drive Speed 8000PPS Output Pulse 20000 W 400KPPS Full S curve Acceleration Deceleration R 80000 Rate 100 K 2000 A D 100 SV 10 V 4000 A0 1000 Auto Decelerating Mode Jerk 3 13MPPS SEC Accel Decel 1 25MPPS SEC Initial Speed 1000PPS Drive Speed 400KPPS Output Pulse 400000 400K PPS 200K 0 0 1 0 SEC 2 0 200000 400K 200K P 100000 400K 200K W 400KPPS Partial S curve Acceleration Deceleration R 80000 Rate 100 500 100 SV 10 V 4000 A0 0 Auto Decelerating Mode Jerk 12 5MPPS SEC Accel Decel 1 25MPPS SEC Initial Speed 1000PPS Drive Speed 400KPPS Output Pulse 400000 400K PPS 200K 9 P 200000 MCX314 W Speed Alterations in a Continuous S curve Acceleration Deceleration Drive R 800000 Rate 10 K 2000 A D 100 SV 100 V 1000 2000 2000 decelerating stop Jerk 312 5KPPS SEC Jerk decel 125KPPS SEC Initial Speed 1000PPS Drive Speed 10K 20 20 5 40000 PPS 20000 5 25 50 m 40KPPS Linear Acceleration D
31. 91 103 127 133 143 18 54 65 5V Power Terminal 90 109 All of the 7 pins must be connected to 5V 126 144 B input Output Loop 36 Input Output A Output B Bi directional A MCX314 More than 10 hundreds of kilo impedance is for internal impedance which can pull up the VDD to the TTL level input of Smith trigger CMOS and TTL can be connected The user should open or pull up with 5V if the input is not used It is CMOS level output 4mA driving buffer Hi level output current IOH 4mA VOH 2 4Vmin Low level output current IOL 4mA VOL 0 4Vmax Up to 10 LSTTL can be driven It is open collector type output 4mA driving buffer Low level output current lIOL 4mA 0 4 max Pull up to 5V with high impedance if this output is used Input side is TTL Smith trigger Because there is no pull high resister for those signals in this IC the user should pull up the data bus with high impedance The user should pull up to 5 with high impedance about 100 when bits D15 D68 are not used Output side is CMOS level output 8mA driving buffer Hi level output current IOH 8mA VOH 2 4Vmin Low level output current IOL 8mA VOL 0 4Vmax B Notes for the Design of Circuitry 1 De coupling Capacitor Please connect VDD and GND with one or two De coupling capacitors about 0 1uF 2 Noise Generated by Terminal Induction The noise will exist because the inductance is in these pins Th user
32. ERR bits of main status register RRO become 1 H L 015 014 D13 D12 011 010 07 04 02 01 ee SLMT During the direction driving when logical real position counter gt COMP COMP enabled and used as software limit D1 SLMT During the direction driving when logical real position counter lt COMP COMP enabled and used as software limit D2 HLMT When external direction limit signal nLMTP is on its active level D3 HLMT When external direction limit signal nLMTM is on its active level D4 ALARM When the alarm signal for servo motor is on its active level D5 EMG When emergency stop signal EMGN becomes Low level In driving when hardware software limit is active the decelerating stop or sudden stop will be executed Bit SLMT will not become 1 during the reverse direction driving 4 13 Status Register 3 RR3 Each axis is with status register 3 The axis specified by NOP command or the condition before decids which axis s register will be read This register is for reflecting the interrupt factor When interrupt happens the bit which is with the interrupt factor becomes 1 The user should set the interrupt factor through register WR1 to perform the interrupt H L 015 014 013 012 D11 010 02 01 7 04 Seth gt Pos P C gt nus Eb B PULSE When the drive pulse is up drive pulse is set on the positive logical level D1 gt C
33. L D DO SLMT Enable disable setting for COMP register which is used as the direction software limit 1 enable 0 disable Once it is enabled during the direction driving if the value of logical real position counter is larger than that of the decelerating stop will be performed The DO 5 bit of register RR2 will become 1 Under this situation further written direction driving commends will not be executed D1 SLMT Enable disable setting for COMP register which is used as the direction software limit 1 enable 0 disable Once it is enabled during the direction driving if the value of logical real position counter is smaller than that of COMP the decelerating stop will be performed The D1 SLMT bit of register RR2 will become 1 Under this situation further written direction driving commends will not be executed D2 LMTMD The bit for controlling stop type when the hardware limits nLMTP and nLMTM input signals are active 0 sudden stop 1 decelerating stop D3 HLMT Setting the logical level of direction limit input signal nLMTM 0 active on the Low level 1 active on the Hi level D4 HLMT Setting the logical level of direction limit input signal nLMTM O active on the Low level 1 active on the Hi level D5 COMPSL Setting if real position counter or logical position counter is going to be compared with COMP register 0 logical position counter 1 real position counter D6
34. MCX14 is half of external input clock CLK If CLK input is standard 16MHz SCLK will be 8MHz Therefore the user had better driving the pulse speed in a exact multiple of SCLK period 125nSEC Otherwise the driving pulse will not very stable The following table shows the frequency speed of driving pulse of MCX314 can be there are all exact the multiple of 125nSEC Drive Speed PPS E Drive Speed PPS Drive Speed PPS E Drive Speed PPS 84 211 83 333 82 474 81 632 80 808 80 000 79 208 78 431 77 670 76 923 2 3 4 5 6 7 8 9 0 As shown in the table above it is not very stable to set any desired driving speed However MCX314 can make any drive speed in using the following method When the preset range value R 80 000 Multiple 100 drive speed setting value V 4900 the output pulse is set 4900 x 100 490KPPS From the able above the output 490KPPS cannot be exactly made because the period of 490KPPS is 16 326 times of SCLK 125nSEC Therefore as shown in Figure 2 14 MCX314 combines 16 times and 17 times of SCLK period in a rate of 674 326 to generate an average 490KPPS Fig 2 14 The driving pulse of 490KPPS when SCLK is 8MHz According to this method MCX314 can generate a constant speed driving pulse in a very high accuracy In general the higher of the driving speed the lower of the accuracy But for MCX314 it still can maintain relative accuracy when the driving spe
35. Output pulse numbers 0 268 435 455 2 bytes finish point setting Finish point 8 388 608 8 388 607 Output pulse number setting The parameter P is setting total output pulse numbers in fixed pulse driving The value is absolute unsigned number The output pulse numbers can be changed during the driving Interpolation finish point setting This parameter is also setting the finish point of each axis in linear and circular interpolations The finish points of these axes should be set by relative numbers in 24 bit data length Output pulse number setting and interpolation finish point setting should be set for 32 bit data length 6 8 Manual Decelerating Point Setting Data Manual decelerating point setting 0 26 8 435 455 4 bytes DP is the parameter setting the manual deceleration point in fixed pulse acceleration deceleration driving when the manual deceleration mode is engaged In manual deceleration mode the user can set the bit DO of WR3 register to 1 The decelerating point can be set Manual Decelerating Point Output Pulse Numbers Pulse Number for Deceleration 55 MCX314 6 9 Circular Center Setting Data Circular Center setting 8 388 608 8 388 607 C is the parameter setting the center point circular interpolation The coordinates of center point should be set the relative number related to the current position 6 10 Logical Position Counter Setting Data Logical po
36. PIND 1 0 The division setting for quadrature encoder input Up down pulse ofo im aE x9 ee e o D12 ALM L Setting active level of input signal nALARM 0 active on the Low level 1 active on the Hi level D13 ALM E Setting enable disable of servo alarm input signal nALARM 0 disable 1 enable When it is enabled MCX314 will check the input signal If it is active D14 ALARM bit of RR2 register will become 1 The driving stops D14 INP L Setting logical level of nINPOS input signal 0 active on the Low level 1 active on the Hi level D15 INP E Setting enable disable of in position input signal nINPOS from servo driver 0 disable 1 enable When it is enabled bit n DRV of RRO main status register doesn t return to 0 until nINPOS signal is active after the driving is finished D15 DO will be set to 0 while resetting 4 6 Mode Register3 WR3 Each axis is with mode register WR3 The axis specified by NOP command or the condition before decides which axis s register will be written WRS can be used for manual deceleration individual deceleration S curve acceleration deceleration the setting of external operation mode and the setting of general purpose output OUT7 4 H L D15 014 D13 D12 D11 D1O D8 D7 D6 D5 D4 D3 D2 D1 DO WR3 0 0 0 0 OUT7 OUT6 5 4 5 0 EXOP EXOP SACC DSND MANL L 1 0 E D DO MANLD Setting manual automatic deceleration for the fixe
37. RR5 External Operation direction drive starting signal from external source Input A When the fixed pulse driving is commanded from an external source direction driving will start if this signal is down Otherwise when the continuous pulse driving is commanded from an external source driving will start if this signal is on the Low level External Operation direction drive starting signal from external source Input When the fixed pulse driving is commanded from an external source direction driving will start if this signal is down Otherwise when the continuous pulse driving is commanded from an external source direction driving will start if this signal is on the Low level Input A Emergency Stop input signal to perform the emergency stop for all axes When this signal is on the Low level including the interpolation driving every axes will stop the operation immediately EMGi bit of register RR2 of each axis will become 1 The Low level pulse width should be more than 71 74 Input 3 0 input signal to perform decelerating sudden stop for each axis 89 92 94 InputA These signals can be used for HOME searching The active pulse width 99 102 should be more than 2CLK Enable disable and logical levels can be set for 118 121 2 Note For this signal its logical levels cannot be selected 9 19 20 Ground 0 Terminal 37 52 55 All of the 13 pins must be connected to OV 66 75
38. Register RR6 RR7 According to the data read command the data of internal registers will be set into registers RR6 and RR7 The low word 16 bits 015 DO is set in RR6 register and the high word 16 bits 031 D16 is set in RR7 register for data reading The data is binary formatted 2 s complement is for negatives H L 015 014 D13 D12 011 D10 D9 08 D7 06 D5 D4 D3 02 01 RR6 RD15 RD14 RD13 RD12 RD11 RD10 RD9 RD8 RD7 RD6 RDS RD4 RD2 RD RDO H L 015 014 D13 012 011 D10 D9 D8 D7 06 D5 D4 D3 02 01 RR 50 MCX314 5 Command Lists B Write Commands 00 Range setting R 8 000 000 multiple 1 16 000 multiple 500 02 Acceleration seng A y 2 Develeration sening D t 8mo 2 Output pulse numbers finish point Output pulse numbers 0 268 435 455 of interpolation setting finish point 8 388 608 8 388 607 V o8 Circular center point seting 09 Logical positon counter seting LP 2 147 4000640 21474838547 08 COMP register seting CP 2147463648 214748560 COMP register seting CM 2147483 648 2147 483647 4 0D Acceleration counter ofseting AO 0 6855 J gt Lor NOP used oraxis swichin _ Note Data range is shown above Some parameter data ranges are shouter than data length When those parameters are written the total data length should be
39. can add a capacitor 10 100pF to pins to reduce the noise 3 Reflection on Transfer Path The load capacity for outputting types A B and bi direction type A is 20 50pf So the reflection will happen if the PCB wiring is more than 60cm 37 MCX314 4 Register This chapter indicates the user how to access all the registers in MCX314 and what are the mapping addresses of these registers Please refer to Chapter 2 4 3 for the registers BP1P M BP2P M of bit pattern interpolation 4 1 Register Address by 16 bit Data Bus As shown is the table below when 16 bit data bus is used the access address of read write register is 8 bit BM Write Register 16 bit Data Bus All registers are 16 bit length Address Command Register for setting axis assignment and command X axis mode register 1 for setting the logical levels of external Y axis mode register 1 decelerating stop enable disable and Z axis mode register 1 the valid invalid of interrupt for each axis for U axis mode register 1 each axis X axis mode register 2 for setting the limit signal mode driving pulse Y axis mode register 2 mode encoder input signal mode and the Z axis mode register 2 logical levels and enable disable of servo U axis mode register 2 motor signal for each axis BP1P BP1P register for setting the direction bit data of the first axis in bit pattern interpolation 0 0 0 Output register for setting the general outpu
40. can be filled during the driving 9 6 3 Axis Bit Pattern Interpolation Drive Code Command 35h 3 bit pattern interpolation This command performs 3 axis bit pattern interpolation Before driving the direction bit data of the two interpolating axes should be set and the setting bit data of each axis each direction is at most 16 3 48 bit Once the data is over than 48 bit those remaining data can be filled during the driving 9 7 BP Register Data Writing Enabling Code Command 36h register data writing enabling This command enables the bit pattern data writing registers BP1P M BP2P M and After this command is issued the data writing to register nWR2 nWR5 becomes disabled The data written to the bit pattern data writing registers is disabled while resetting 9 8 BP Register Data Writing Disabling Code 37h Command BP register data writing disabling This command disables the bit pattern data writing registers BP1P M 2 After this command is issued the data writing to register nWR2 nWR5 becomes enabled 9 9 BP Data Stack Code Command 38h BP data stacking This command stacks the data of bit pattern data writing registers BP1P M BP2P M and After this command is issued stack counter SC will plus 1 When stack counter SC is 3 this command cannot be issued again 62 MCX314 9 10 BP Data Clear 39h BP data clearing This
41. completely filled oem B Formula Calculation for Parameters 8 000 000 Multiple R 62 5x10 8 000 000 Jerk PPS SEC K R Multiple Acceleration A x 125 x _ 8000088 PPS SEC R Multiple Deceleration 2 Dx 125 x E PPS SEC R Multiple 8 000 000 Drive Speed PPS V x AES c n Lo Multiple 8 000 000 Initial Speed PPS SV x m E l Multiple 51 MCX314 m Data Reading Commands Data Logical position counter reading 2 147 483 648 2 147 483 647 4 bytes Real position counter reading 2 147 483 648 2 147 483 647 Current drive speed reading 178 000 Acceleration deceleration reading 178 000 B Driving Commands B interpolation Commands 25h Drive start holding release 35h 3 bit pattern interpolation stop status clear BP bit pattern Note Please do not write the codes not mentioned above The unknown situation could happen due to IC internal circuit test 52 MCX314 6 Commands for Data Writing 6 1 Data writing is used for setting driving parameters such as acceleration drive speed output pulse numbers It is possible to write the same data for more than one axis simultaneously if more those axes are assigned If the data length is two bytes WR6 register can be used If the data is 4 bytes the high word data can be written into register WR7 and the low word into register WR6 Then the axis assignment and command code will be written into regist
42. fixed pulse 43 MCX314 driving starts once the nEXPM signal is falling to the Low level from the Hi level D7 OUTSL Driving status outputting or used as general purpose output signals nOUT7 4 0 nNOUT7 4 general purpose output The levies of D11 8 will be output through nOUT7 4 1 nOUT4 7 driving status output see the table below OUT4 CMPP if logical real position counter gt COMP register Low if logical real position counter lt COMP register OUTS CMPM Hi if logical real position counter lt COMP register Low if logical real position counter gt COMP register OUT6 ASND When the driving command is engaged the level becomes Hi once the driving status is in acceleration OUIT7 DSND When the driving command is engaged the level becomes Hi once the driving status is in deceleration 011 8 OUTm Level setting for output signals OUT7 4 as general purpose output signals 0 Low level output 1 Hi level output 015 00 will be set to 0 while resetting D15 12 D5 and D6 should be always set 0 44 MCX314 4 7 Output Register WR4 This register is used for setting the general purpose output signals 0 This 16 bit register locates 4 output signals of each axis It can be also used as a 16 bit general purpose output It is Low level output when the bit is set 0 and Hi level output when the bit is set 1 H L 015 014 D13 D12 011 D10 D9 08 D7 06 D5 D4 D3 02 01 WR4 U
43. for input signal INm 0 stop on the Low level 1 stop on the Hi level For the following bits the interrupt is set 1 enable 0 disable D8 PULSE Interrupt occurs when the pulse is up drive pulse is set on the positive logical level D9 gt Interrupt occurs when the value of logical real position counter is larger than or equal 41 MCX314 to that of COMP register D10 P C Interrupt occurs when the value of logical real position counter is smaller than that of register D11 lt Interrupt occurs when the value of logical real position counter is smaller than that of register D12 gt Interrupt occurs when the value of logical real position counter is larger than or equal to that of register D13 C END Interrupt occurs at the start of the constant speed drive during an acceleration deceleration driving D14 C STA Interrupt occurs at the end of the constant speed drive during an acceleration deceleration driving D15 D END Interrupt occurs when the driving is finished D15 DO will be set to 0 while resetting 4 5 Mode Register2 WR2 WR2 can be used for setting 1 external limit inputs 2 driving pulse types 3 encoder signal types and 4 the feedback signals from servo drivers H L D15 014 013 012 011 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 DO WR2 INP E INP L ALM E ALM L PIND1 PINDO PINM DIR L PLS L PLSM CMPS HLMT HLMT LMTM SLMT SLMT D D
44. is used for the axis assignment and command registration for each axis in MCX314 The register consists of the bit for axis assignment bit for setting command code and bit for command resetting After the axis assignment and command code have been written to the register this command will be executed immediately The data such as drive speed setting and data writing command must be written to registers WR6 and WR7 first Otherwise when the reading command is engaged the data will be written and set through IC internal circuit to registers RR6 and RR7 When using the 8 bit data bus the user should write data into the high word byte H then low word byte L It requires 250 nSEC maximum to access the command code when CLK 16MHz The input signal BUSYN is on the Low level at this moment Please don t write the next command into WRO before BUSYN return to the Hi level 015 014 013 012 2 210 D7 Axis Assignment Command Code D5 0 Command code setting Please refer to chapter 5 and the chapters following for further description of command codes D11 8 Axis assignment When the bits of the axis are set to 1 the axis is assigned The assignment is not limited only for one axis but for multi axes simultaneously It is possible to write the same parameters also However the data reading is only for one assigned axis Whenever the interpolation is commanded the bits of the assigned axis axes should be set 0 D15 RESET IC command
45. is within 0 5 LSB as showen in Fig 2 17 Y Short axis A 5 gt 20 X Long axis Fig 2 17 The Position Accuracy for Linear Interpolation As shown in Fig 2 18 it is an example for pulse output of the linear interpolation driving We define the longest distance movement in interpolation is the long axis And the other is short axis The long axis outputs an average pulse train The driving pulse of the short axis depends on the long axis and the relationship of the two axes The range for each axis is a 24 bit signed counter from 8 388 607 8 386 807 Note The user cannot set 8 388 608 Long axis eO Tunnnnnnnnnnnnnnnnnnr XPM AAA _ n Im YPP YPM me Fig 2 18 The Example for Pulse Output at Finish Point X 20 Y 9 12 9 The example of linear interpolation for 2 axes Executing linear interpolation drives in X and Y axes from the current position to the finish position X 300 Y 200 The interpolation drive speed is constant 1000PPS WR5 lt 0004h write axis WR6 WR7 WRO WR6 WRO WR6 WRO WR6 WR7 WRO WR6 WR7 WRO WRO TTT TT T T lt 1200 007Ah 0100h OSE8h 0104h OSE8h 0105h 012Ch 0000h 0106h FF38h 0000h 0206h 0030h write write write write write write write write write wri
46. nLMT nLMT decelerating sudden stop input signals nIN1 3 external driving command input signals nINPOS nALARM and emergency stop input signal EMG for each axis The proper power supply is DC12V 24V Current consumption of 1 input signal is at DC12V 7mA at DC24V 7 10 MCX314 4 Interrupt Setting Through J2 jumper terminal total ten interrupt request signals at ISA bus can be connected When the interrupt occurs in MCX314 the interrupt request signal IRQn will become Hi level from Low level After the status register 3 nRR3 of the interrupted axis is read this interrupt request signal will return to the Low level Please refer to Chapters 2 5 4 4 and 4 13 for interrupt functions 45V ISA BUS 2 MCX314 R03 o iis uo 5 INTN RQ4 o 315 o 4 e RQ5 Sto ofS 74504 RQ6 lin ol8 807 9 oll o RQ100 lllo ol 80110 8042 e 8014 19 20 80159 e The table below shows the shorted pins at J2 jumper corresponding to the interrupt request signals at ISA bus Interrupt Request Signal Short at J2 Jumper IRQS between pins 1 2 IRQ4 between pins 3 4 IRQ5 between pins 5 6 IRQ6 between pins 7 8 IRQ7 between pins 9 10 IRQ10 between pins 11 12 IRQ11 between pins 13 14 IRQ12 between pins 15 16 IRQ14 between pins 17 18 IRQ15 between pins 19 20 The initial setting
47. pattern data continuously the host CPU should write the data into 14 before SC counts down to 0 MCX314 will output a interrupt requirement signal to host CPU when SC counts down from 2 to 1 9 Mhe limitation for the speed of bit pattern interpolation driving The maximum pulse output speed of MCX314 is 4MHz in bit pattern interpolation mode However the maximum speed will depend on the data update rate of host CPU if the bit pattern data are more than 48bits For example of the X and Y axes bit pattern interpolation if the host CPU needs 100usec to update new 16 bit data for X and Y axes The maximum speed is 16 10045 160 5 9 The ending of bit pattern interpolation There are 2 ways can terminate the bit pattern interpolation Write a ending code into buffer register of ax1 The bit pattern interpolation mode will be finished and stopped if the host CPU write 1 into both and directions buffer registers D15 des DO BP1P 0000011110100000 BP1M 0000010000001111 The Interpolation Stops Once And Directions Are 1 When the ending code is executed the SC will become 0 automatically Q The host CPU stops writing any command into MCX314 When 5 0 and when no other data is updated MCX314 will stop outputting pulse Then the bit pattern interpolation is finished Otilizing the stop command to pause the interpolation The interpolation driving will be paused if a sudden stop or deceleratin
48. register to be 1 and 0 respectively and set all the parameters of continuous pulse driving Once nEXPP is falling down to the Low level the direction continuous pulse driving will start once nEXPP is raising to the Hi level the direction fixed pulse driving will start When nEXPP returns to the Hi level from the Low level the decelerating stop will be performed in trapezoidal driving and the sudden stop in constant speed driving XEXPP Low period SES Low period __ __ Figure 2 33 Example of Continuous Driving by External Signal 29 MCX314 2 6 2 Pulse Output Type Selection There are two types of pulse output independent 2 pulse type when the driving is in direction the pulse output is from nPP PLS when the driving is in direction the pulse output is from nPM DIR 1 pulse 1 direction type nPP PLS is for pulse outputting and nPM DIR is for direction signal outputting pulse direction is set on the positive logical level TEM Pulse Output Waveform FUSE Type nPP PLS Signal NPM DIR Signal 4 Direction Low level Independent 2 pulse 1 pulse 1 direction Bit D6 PLSMD of register WR2 is used for the selection of pulse output type Additionally bits D7 PLS L and D8 DIR L of register WR2can be used for pulse outputting d
49. through the external signals This function is used for JOG or teaching modes and will share the CPU load m Input Output Signal Each axis has 4 points of input signals to perform deceleration and stop in driving These input signals are for high speed near by home search home search and z phase search during the home returning Each axis is with 8 output points for general output MCX314 Servo Motor Feedback Signals Each axis includes input pins for servo feedback signals such as in positioning close loop positioning control and servo alarm Interrupt Signals Interrupt signals can be generated when 1 the start finish of a constant speed drive during the trapezoidal driving 2 the end of driving and 3 the compare result once higher lower the border lines of the position counter range An interrupt signal can be also generated during the interpolation driving Real Time Monitoring During the driving the present status such as logical position real position drive speed acceleration deceleration status of accelerating decelerating and constant driving can be read 8 or 16 Bits Data Bus Selectable MCX314 can be connected to either 8 bit or 16 bit CPU Figure 1 1 is the IC functional block diagram It consists of same functioned X Y Z and U axes control sections and interpolation counting sections Figure 1 2 is the functional block diagram of each axis control
50. to 1 If the value of logical actual counter is smaller than that of COMP the DO bit of register RR2 will change to 0 automatically Host CPU can write the COMP and COMP registers any time However when MCX314 is reset the register values are random MCX314 2 4 Interpolation This 4 axis motion control IC can perform any 2 3 axes linear interpolation any 2 axes circular interpolation and any 2 3 axes bit pattern interpolation Bits DO D1 ax 1 D2 D3 ax 2 and D4 D5 ax 3 of register WR5 can be pointed for performing the interpolation In the process of interpolation driving all the calculations will follow the main axis ax1 So the user has to set the parameters such as initial speed and drive speed of the main axis before performing the interpolation During the linear interpolation it is not necessary to set the main axis as long axis After setting all of the parameters for interpolations and writing the interpolation driving commands to command register WRO the user can start the interpolation driving During the interpolation driving D8 DRV of main status register RRO will become 1 during the interpolation and it will become 0 when the interpolation is finished Also during the interpolation driving the bit n DRV of the interpolating axis will become 1 The maximum drive speed is 4MPPS for linear circular or bit pattern interpolation For continuous interpolation the maximum drive speed is 2MPPS 9 Ove
51. 0 1 Connection Example for 68000 64 10 2 Connection Example for 280 2 2 2 64 10 9 Connectionm asacsananarnsaaccdanaannngannaraacsnagannaacnnnoassanaaannanagngnagnenannnaieesand assess 65 10 4 P lse OQutpu t Interfaces a ecce mcr 65 10 5 Connection Example for Input Signals 2 0 4 4 7 7 2 2 2 2222 4 66 10 6 Connection Example for 2 0 4 2 0040 4 4 2 22 2 2 2 66 1455 Example PTOGE alia sustinet eterna 67 12 Electrical 2 4 4242 222222 222 70 12 1 DC Characteristics 2 2 00 n nnn 70 12 2 AC Characteristic 0 0 0 0 0 n nnn nnn 70 queer DC 70 12 2 2 Read Write 44 4 4 4 0 2 7 22 2 2 2 2 2 20 14 71 122 9 B SYN Signal utentes UN 71 12 2 4 SCLK Output Signal 40 7 2 7 00 2 2 12 71 T2 2 b Input Pulsessq sehen e t LU sm E Ns E
52. 1 pulse 1 direction the direction signal nP P will be in its valid level within maximum 275 nSEC and then first pulse will be output within 375 nSEC after the direction signal is in its valid level 6 3 Interpolation Driving BUSYN lt Interpolation drive command write in nPP P Not stable Valid level Valid level lt Not stabl gt direction signal After interpolation command is written the first pulse will be output within 775 nSEC Q When the drive output pulse type is 1 pulse 1 direction the direction signal nP P will be in its valid level before and after 125 mSEC once the drive pulse is on the Hi level 14 MCX314 6 4 Input Pulse Timing Quadrature Pulse Input Counting up Counting down nECAP nECAN Ix nECBP T nbECBN TREES IO JOJO 4 9 4 Minimum time difference between EC A and 200 nSEC Up Down Pulse Input nECAP nECAN nECBP EM nECBN CENE Qo Qo Qo Qo gt lt gt 4 gt 4 gt lt gt lt Minimum Up Down pulse width 130 nSEC Minimum Up Down pulse Interval 260nSEC Minimum Up Down pulse cycle 260 nSEC MCX314 6 5 Sudden Stop Timing W External Sudden Stop Signal EMG nLMT nIN3 2 1 0
53. 23 shows an example of CCW interpolation with the start point 0 0 center point 200 500 and finish point 702 299 The finish point is in quadrant 4 and 2 is the short axis in quadrant 4 So the interpolation is finished when the ax2 is 299 The range of interpolation coordinate is from the start point to 8 388 608 8 388 607 and the interpolation error for all the range is within LSB The speed of interpolation driving is 1PPS 4MPPS 9 Example for CW Circular Interpolation MCX314 ax2 Finish point 7 20 299 Interpolation will be finished when 2 299 in the 4 quadrant Start point 0 0 Fig 2 23 Example of In position Check in Circular In terpolation This CW circular interpolation starts from the current point start point 0 0 to the finish point X 5000 Y 5000 the center point is X 5000 Y 0 The interpolating speed is constant at 1000PPS in a constant vector Center point 5000 0 e Fig EX 2 CW Circular Interpolation in speed driving WR5 lt 0104h write define ax1 X axis ax2 Y axis and with constant linear speed WR6 lt 0900h write range 4 000 000 multiple 2 WR7 lt 0O03Dh write WRO lt 0100h write WR6 lt 4DCOh write range of constant vector speed for 2 axes WR7 lt 0056h write 4 000 000 x 1 414 5 656 000 WRO lt 0200h write WRO lt 01F4h write initial speed 500 x 2 1000PPS WRO lt 0104h write Start point
54. 8 2 147 483 647 4 bytes The current value of real position counter will be set in read registers RR6 and RR7 7 3 Current Drive Speed Reading Data Current drive speed reading 1 8 000 The value of current drive speed will be set in read registers RR6 and RR7 When the driving stops the value becomes O0 The data unit is as same as the setting value of drive speed V 7 4 Current Acceleration Deceleration Reading Data 13h Current acceleration deceleration CA 1 8 000 2 bytes reading The value of current acceleration deceleration will be set in read registers RR6 and RR7 When the driving stops the read data is random number The data unit is as same as the setting value of acceleration A 58 MCX314 8 Driving Commands Driving commands include the commands for each axis s drive pulse output and other related commands After the command code and axis assignment are written in command register WRO the command will be executed immediately It is possible to assign more than one axis with same command at the same time In driving bit n DRV of each axis s main status register RRO becomes 1 When the driving is finished the bit n DRV will return to O If nINPOS input signal for servo drivers is enabled bit n DRV of main status register RRO will not return to 0 until nINPOS signal is on its active level Note requires 250 nSEC maximum to access the command code when CLK 16MHz Please writ
55. B Within the range of whole interpolation 1 4MPPS Dependent on CPU data writing time select any axis eConstant vector speed Continuous interpolation Single step interpolation Command external signals Common Specifications of Each Axis E Drive Pulses Output When CLK 16 MHz Pulse Output Speed Range Pulse Output Accuracy S curve Jerk Accelerating Decelerating Speed Drive Speed Output pulse Number Speed Curve Index Drive Deceleration Mode 1PPS 4MPPS within 0 1 according to the setting speed 954 31 25 19 PPS s 125 500 0 PPS S 1 4 496 5 0 268435455 unlimited quadrature trapezoidal parabolic S curve auto manual Output pulse numbers and drive speeds changeable during the driving Independent 2 pulse system or 1 pulse 1 direction system selectable Logical levels of pulse selectable Encoder Input quadrature pulse style or Up Down pulse style selectable Pulse of 1 2 and 4 divisions selectable A B quadrature pulse style B Position Counter Logic Position Counter for output pulse t range 2 147 483 648 2 147 483 647 Real Position Counter for feedback pulse range 2 147 483 648 2 147 483 647 Data read and write possible 77 MCX314 Comparison Register COMP Register Position comparison range 2 147 483 648 2 147 483 647 COMP Register Position comparison range 2 147 483 648 2 147 483 647 Status and signal outputs for the c
56. Berz o 6 XEXOP SW ON to Connection Example of External Driving Control Input 3 10 Emergency Stop Input Signal EMG When emergency stop input signal is on its active level the drive pulse output for all axes will be stopped J4 jumper terminal on the board is used for switching the active level When this signal is active during the driving the driving axis will be stopped and each axis s error bit of main status register will become 1 Please refer to Chapters 2 6 6 and 4 1 2 of MCX314 manual for information in details 45V VEX 12 24V MCX314 10K m Nl J4 1 2 EMGN ooo 1 ts o 044 lt h 3 3K 3 3K 74HC14 gt y J4 EMG logical setting factory setting is J1 J2 short 0 014 EMG O zy LP121 or eq Circuit diagram for emergency stop input signal External DC12 24V power supply is necessary for triggering the signal The response time of this circuit takes about 0 2 0 4 mSEC because of the delay of photo coupled and RC filter The figure below shows the display of J4 jumper 4 Short between pins 1 and 2 active when the emergent stop signal EMG 2 O4 and external GND are short 1 3 Short between pins 3 and 4 active when the emergent stop signal EMG and external GND are opened The original setting is short between pins 1 and 2 3 11 External Power Input VEX External power input is for the operation of over limit input signals
57. CX314 The figure shown below illustrates the example of 1 axis driving system 4 axes can be assigned in the same way Stepper servo Encode 4 EC M 1 Limit Home Close to home Limit UL JUL JU U CW pulse XPP a CCW pulse XPW a XLMTM Error counter clear XOUTO XINO Servo on t 1 McX314 2 QP Motor drives EC AB Z SERVO READY XIN3 1 4 Positining complete XINPOS XEXPP 7 XALARM EC A B Z XECA B XIN2 m XEXPW 10 4 Pulse Output Interface W Output to Motor Drivers in Differential Circuit MCX314 Motor Drives CW A cw Am26L31 CCW Am26L32 Twist Pair Shield Cable 1 SNR W Open Collector TTL Output MCX314 5V Motor Drives CW ew 5V CCW CCW 72LS06 M EE Twist Pair Shield Cable GND For drive pulse output signals we recommend the user to use twist pair shield cable due to the concern of EMC 65 MCX314 10 5 Connection Example for Input Signals In MCX314 except D15 DO all the input signals are inte
58. Heat XALARM O HEAT COM Note 1 Hold off timing output and over heat can be wired if necessary The hold off signal can be controlled by writing O and 1 into bit D8 of WR3 register of MCX314 For timing output signal the home position searching can be performed through the bits DO and D1 of WR1 register mode setting For over heat signal the alarm function can be performed through the bits D12 and D13 of WR2 register mode setting For timing output and over heat signals the signal level can be read through RR4 and RR5 registers Note 2 The user can use twist pair cable for long distance connection or for a strong noise circumstance 12 5 2 Connection with Pulse type Servo Motor Drives MCX314 The figure below is the example of MC8041A connected to MINAS XX series AC servo driver manufactured by PANASONIC MC8041A Connector XP N XP P XP N XECAP XECAN XECBP XECBN XINOP XINON GND XOUT4 XOUT5 XOUT6 GND VEX XIN3 XALARM XINPOS XLMT XLMT XIN1 XIN2 CW Pulse CCW Pulse Encoder Phase A Encoder Phase B Encoder Phase Z Servo On Error Counter Clear Alarm Clear DC24V Servo Ready Servo Alarm Completing Position MINAS XX series CNI F CW CW CCW CCW OA OA OB OB OZ OZ GND COM SRV ON CL A CLR COM S RDY ALM COIN CW DIR LIM
59. IRQ12 Photo coupler O 014 o amp 4 Emergency stop IRQ15 RC filter Functional Blocks of MC8041A MCX314 2 1 0 Address Setting and Read Write Register I O Address Setting The I O port address of MCX314 includes the higher 12 bits SA15 SA4 of ISA bus I O address 5 15 5 0 This address is set by SW1 and SW2 slide dip switches The lower bits SA3 SA1 are used for IC internal read write register codes The slide dip switches SW1 and SW2 are with ON and OFF level for SA15 SA4 Switch ON to set a binary value 0 switch OFF to set a binary value 1 see the graph below SW2 SW1 ON 0 OFF 1 the setting of I O address 0280 028Fh This graph shows the initial setting of 0280 028Fh The user should pay attention not to overlap setting this address with the address of PC main board and or other I O cards Read Write Register The table below lists the mapped read write registers of MC8041A All of the registers are accessed by 16 bit format The inside number of shows the register address when 0280 028Fh of SW1 and SW are set The address setting needs to use word access not byte access Please refer to Chapter 4 of MCX314 manual for register setting Addre
60. IT CCW DIR LIMIT HOME Near by HOME ert ont Note 1 The servo driver should be engaged in position control mode and the pulse input is set the CW CCW pulse mode This connection is not proper for pulse direction mode because the t6 time will not be enough Note 2 Encoder phase can be connected when the real position counter of MCX314 is used for counting It is not necessary to connect the real position data at CPU side neither to connect other signals Note 3 The user can use twist pair cable for long distance connection or for a strong noise circumstance MCX314 6 1 0 Signal Timing 6 1 Power on Reset cq 2 O 32 45V RESDRV Ll D nP P Low nP N Hi nOUT4 7 OFF Read Write Invalid Valid e Drive pulse output signals nP P nP and general purpose output signals nNOUT4 7 will be determined after 250 nSEC from the reset signal of ISA bus RESDRV rising For data reading and writing is possible from 500 nSEC the reset signal RESDRV 1 6 2 Individual Driving BUSYN lt Interpolation drive command write in state nPP P 1st pulse 2nd pulse Valid level nPP P direction signal The maximum time from the driving command write in to the first pulse starting is about 650nSEC When the drive output pulse type is
61. In such situation the absolute value of Z axis is the largest so we can set up 50000 5000 45000 to be the manual deceleration point of the master axis X Please refer to the example of 3 axis linear interpolation in 2 4 1 24 MCX314 9 Acceleration Deceleration for Circular Interpolation and Bit Pattern Interpolation In circular interpolation and bit pattern interpolation only manual deceleration in trapezoidal driving is available the automatic deceleration in S curve driving is not available The Figure on the right side shows the circular interpolation of a real circle with radius 1000 in a trapezoidal driving The user should calculate the decelerating point before driving because the automatic deceleration will not be active In the figure the circle tracks through all the 8 quadrants 0 7 In quadrant 0 Y axis is the short axis and s displace is about 10000 227071 The total output pulses numbers of the short axis are 7010x8 56568 Furthermore if the initial speed is 500PPS and will be accelerated to 20KPPS after 0 3 SEC the acceleration will be 20000 500 0 3 65000PPS SEC And the output pulses during acceleration will be 500 20000 x 0 3 2 3075 Thus if we set the deceleration as same as the acceleration the manual decelerating point will be 56568 3075 53493 Note this formula cannot be used in the constant vector speed driving WR3 lt 0001hwrite manual deceleration enabling WR5 lt 0004hwrite
62. K tCYC tDR tDF SCLK will not be output during reset vc okoy 8 5 wH CLK hi Level Wavelength 29 7 iwL CLKLowleveWavelengh mS DR CLKT SCLKTDelayTime 21 r CLKTo SCLKlDelyTime 28 r 12 2 2 Read Write Cycle Read cycle Write cycle MCX314 Valid Address A2 A0 Valid Address CSN RDN WRN D15 D0 HRA Data output tCR tRD tDF tAR tRC tRA Data input tDW tDH gaw WW MT d tWA The figure shown above is used for 16 bit data bus accessing H16L8 Hi For 8 bit data bus H16L8 Low the address signals shown in the figure become A3 A0 and data signals become D7 DO wn Address SETUPTine o _ ns CSNSETUPTme 9 RD Output Data Delay Time rom 9 IDF Output Data Reservation Tine RDN 9 39 RC CSN Reservation romRONT o RA Address Reservation Time o Address SETUP Time o Established Time for CSN Address Reservation Time 12 2 3 BUSYN Signal to WRN J D m 0w Established Time for Input Data o wany Reservation Time for Input Data rom wANT 10 WC CSN Reservation fromwANT 5 from WRN f SCLK WRN m ILLE BUSYN tDF
63. K 53 40000
64. Motion Control Card IC MC8041A MCX314 Users Manual Ver 2 0 PLENTY ISLAND TAIWAN CORPORATION MC8041A Contents UE Lo 0 2 I O Address Setting and Read Write 0 2 2 0 2 2 1 3 16 ehhh hen cob ORE RE SEO OPEROEERRERRRREREREERREGRRPERREERREERRR ERE 2 3 1 Descriptions of ISA BUS Signals 2 2 4 0 0202 0 02 00 222222 22 2 9 2 Pin Definition of O ConnectOr 42 sckdeder concen sconto teneo rea aded oed codd e deed Teranse 3 3 3 Drive Pulse Signal nP N nP P 5 3 4 General Purpose Output Signal nOUT7 4 6 3 5 Over Limit Signal NLMT 4 nLMT ssssssssssssssIIIHIHIHII I III mem hh hern 6 3 6 Decelerating Sudden Stop Input Signal nIN1 nIN2 7 3 7 Input Signal for Servo Driver nINPOS 10 2 1 1 21 2 2 7 3 8 Encoder Input Signal RECAP nECBP nECBN nINOP 8 3 9 External Driving Control Input Signal
65. OUT UOUT UOUT ZOUT 7007 ZOUT ZOUT YOUT YOUT YOUT YOUT XOUT XOUT XOUT XOUT 3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0 D15 DO will be set to 0 while resetting and NOUT3 0 signals become Low level 4 8 Interpolation Mode Register WR5 This register is used for setting axis assignment constant vector speed mode 1 step interpolation mode and interrupt during the interpolation L D15 014 D13 012 011 D10 07 04 D2 Di i a a ih T output Vector Speed ax3 ax2 01 0 11 10 axi master axis assignment for interpolation Axis codes are shown as follows Axis Code Binary tst axis X 2nd axis Y 3rd axis Z EX aros cor 2 EE HR D5 D4 D3 D2 DI DO 22 o Wo 50 For ax1 master axis will have the basic pulses of starting interpolation calculation the speed parameter which is for constant acceleration deceleration driving should be set before the driving D3 2 21 20 2 assignment according to the codes shown the table above D5 4 AX31 30 ax3 assignment for 3 axis interpolation according to the codes shown in the table above Setting any value if it is only 2 axis interpolation D9 8 LSPD1 0 Constant vector speed mode setting of interpolation driving D9 D8 Code Binary 0 0 constant vector speed invalid 0 1 2 axis constant vector speed 1 0 setting not available 1 1 3 constant vector spe
66. Once the value of logical real position counter is larger than that of COMP register D2 P C Once the value of logical real position counter is smaller than that of COMP register lt Once the value of logical real position counter is smaller than that of COMP register D4 gt the value of logical real position counter is larger than that of COMP register D5 C END When the pulse output is finished in the constant speed drive during an acceleration deceleration driving D6 C STA When the pulse output is started in the constant speed drive during an acceleration deceleration driving D7 D END When the driving is finished When one of the interrupt factors occurs an interrupt the bit of the register becomes 1 and the interrupt output signal INTN will become the Low level The host CPU will read register RR3 of the interrupted axis the bit of RR3 will be cleared to 0 and the interrupt signal will return to the non active level When 8 bit data bus is used the reading data of RR3L register is cleared 49 MCX314 4 14 Input Register RR4 RR5 RR4 and RR5 are used for displaying the input signal status The bit is 0 if the input is on the Low level the bit is 1 if the input is on the Hi level H L 015 014 D13 D12 011 D10 D9 08 D7 06 D5 D4 D3 02 01 L 015 014 D13 D12 011 D10 D9 08 D7 06 05 D4 D3 02 01 ARS nEXPP nEXPM nINPOS nALARM 4 15 Data Read
67. Output 6 Ascend general purpose output signals YOUT6 ASND Output the operation is as same as nOUT7 108 ela uot le executed UOUTG ASND 124 J i 4 and during the acceleration it becomes Hi XOUT5 CMPM 5 General Output 5 general purpose output signals YOUT5 CMPM 7 Output operation is as same as nOUT7 ZOUT5 CMPM 107 When the drive status output mode is engaged it becomes Hi if the value of logical real position counter is smaller than that of COMP it becomes Low UOUTS CMPM 125 if the value of logical real position counter is larger than that of COMP XOUT4 CMPP 60 General Output 4 Compare general purpose output signals YOUTA CMPP 80 OutputA the operation is as same as nOUT7 ZOUT4 CMPP 108 When the drive status output mode is engaged it becomes Hi if the value of logical real position counter is larger than that of COMP it becomes Low UOUT4 CMPP 128 if the value of logical real position counter is smaller than that of COMP 61 64 Output General Output 3 0 4 general output signals for each axis 81 84 nOUT3 0 can output the 1 0 data of D15 0 WR4 register to Hi Low 110 113 They become Low when the IC is reset Compared with the setting of 128 135 nOUT7 4 it is easier cause there is no need to have the appointed axis 35 MCX314 Input 2 22 Signal Name Signal Description XINPOS 67 Input A input signal f
68. PLSMD GSetting output pulse type 0 independent 2 pulse type 1 1 pulse 1 direction type When independent 2 pulse type is engaged direction pulses are output through the output signal nPP PLS and direction pulses through nPM DIR When 1 pulse 1 direction type is engaged and directions pulses are output through the output signal nPP PLS and nPM DIR is for direction signals Note Please refer to Chapter 13 2 and 13 3 for the output timing of pulse signal nPLS and direction signal nDIR when 1 pulse 1 direction type is engaged D7 PLS L Setting logical level of driving pulses 0 positive logical level 1 negative logical level D8 DIR L Setting logical level of the direction nPM DIR output signal for 1 pulse mode DIR L D9 PINMD Setting the type of encoder input signals nECA PPIN and nECB PMIN 0 quadrature pulse input type 1 Up Down pulse input type Real position counter will count up or down when encoder input signal is triggered When quadrature pulse input type is engaged the count up will happen if the positive 42 MCX314 logical level pulses are input to phase A the count down will happen if the positive logical level pulses are input to phase B So it will count up and down when these 2 signals go up Wand down When Up Down pulse input type is engaged nECA PPIN is for count up input and nECB PMIN is for count down input So it will count up when the positive pulses go WV D11 10
69. Speed SV Drive Speed V Output Pulse Numbers P Only applicable for the fixed pulse driving The items should be preset in accordance with the requirement 5 MCX314 iExample for Parameter Setting of Constant Speed The constant speed is set 980 pps as shown in the right Figure I Range R 8 000 000 Multiple M 1 initial Speed SV 980 Initial Speed gt Driving Speed Driving Speed V 980 Should be less than initial speed 980 Please refer each parameter in Chapter 6 Speed PPS Time SEC 2 2 2 Trapezoidal Driving Trapezoidal driving is starting from the initial speed to the designated drive speed The accelerating pulses will be counted and the deceleration automatic Drive Speed deceleration starts from the drive speed to initial speed once the remaining pulse numbers are less than the accelerating pulse numbers When the decelerating stop command is performed during the acceleration or when the pulse numbers of Initial Speed the fixed pulse drive do not reach the designated drive speed the driving will be decelerating during Time acceleration as show in Fig 2 8 triangle driving Fig 2 8 Trapezoidal Driving profile prevention see appendix A3 Usually the user should set the same acceleration and deceleration rates For some cases the acceleration and deceleration can be set individually by setting the D1 of WR3 to 1 When the deceleration is set individually in fixed pulse driving the auto
70. Up Down pulse input mode is selected this terminal is for UP UECA PPIN pulses input Once the input pulse is up Wthe real position counter is 4 4 4 ZPM DIR counting up UPM DIR XECB PMIN Encoder B Pulse in signal for encoder phase B input Input A This input signal together with phase A signal will make the Up Down pulse transformation to be the input count of real position counter When the Up Down pulse input mode is selected this terminal is for YECB PMIN ZECB PMIN UECB PMIN DOWN pulses input Once the input pulse is up VW the real position counter is counting down XDRIVE Drive output signal of driving YDRIVE Output It will become Hi level when the driving command of direction pulse ZDRIVE 104 output is executed When the nINPOS signal of servo motor is enabled nINPOS will be active UDRIVE 122 and the Drive will become Hi 5 5 5 7 XOUT7 DSND 5 General Output 7 Descend general purpose output signals YOUT7 DSND 7 Output A After the axis is appointed by WRO register NOUT7 4 can output the 1 0 data of D11 8 in WR3 register to Hi Low They become Low when the is ZOUT7 DSND 105 xdi reset When the drive status output mode is engaged this signal can be UOUT7 DSND 123 used for reflecting the status of deceleration While the driving command is 5 7 6 9 1 3 4 6 8 0 5 7 9 1 6 6 7 7 8 8 9 9 executed and during the deceleration it becomes Hi XOUT6 ASND General
71. Valid level nP P When external stop signal is enabled during the driving up to 400 SEC 1 pulse will be output then stopped Sudden Stop Command IOW Stop command write in nP P When the stop command issued during the driving at most one pulse will be output then the driving is stopped 6 6 Decelerating Stop Timing External Decelerating Stop Signal nLMT Valid level nIN3 2 1 0 nP P When the external decelerating stop signal is enabled during the driving up to 400 u SEC 2 pules will be output then stopped Decelerating Stop Command lOW active Decelerating command write in nP P When the decelerating stop command is issued during the driving at most two pulses will be output then the driving starts decelerating 16 7 Switch Layout MCX314 3 163 11 1 s 161 e i amp crt SW2 SW1 M 45V 24 3 24 180 24 24 NS QN Jeeeseeeeesel lee 13 1719 13 13 Ji J4 ISA BUS Y FAO A O 69 85 all 2 54 X 17 2 54 30 48 a 81 yf 32 186 SW1 2 address setting switches see Chapter 2 J1 J1 2 short circuit initial se
72. XINON t DC Power VCC R e Encoder e EC A R R ECZ END Power Voltage R Q 5 0 12 820 24 2K 1 Example of the Connection for Open Collector Output 3 9 External Driving Control Input Signal nEXOP nEXOP This signal is for starting the direction drive from external source When the fixed pulse driving is commanded the designated pulses will be output when the input signal is triggered When the continuous driving is commanded pulses will be output continuously when the input signal is on the Low level Manual control for each axis can be progressed without the CPU involving External DC12 24V power supply is necessary for triggering this signal The response time of this circuit takes about 10 mSEC because of the delay of RC filter 45V VEX 12 24V MCX314 10K O nEXPP 4 1 100 3 3K 74HC14 gt v 0 01u 777 121 or eq S n nEXPM lt A 100 YA 3 3K 01 D z O nEXOP Circuit Diagram of External Driving Control Input Signal In order to insulate this signal from photo coupler internal circuit and prevent the chattering from CR circuit it is possible to connect input signal with manual connector The figure below is the connection example of external driving control input for X axis MCX314 MC8041A VEX 3 ji
73. acceleration Initial Speed deceleration driving mode the output pulse number change will occur to an incomplete deceleration S curve Time Fig 2 2 Changing The Output Pulse Numbers in Driving E Driving Speed re Change of Output Pulse Initial Speed Initial Speed Change of Output Pulse Time Tis Fig 2 3 Changing Command During Deceleration Fig 2 4 Changing The Lesser Pulse Numbers Than Output Pulse Stop imManual Setting Deceleration for fixed pulse Acceleration Deceleration Driving As shown in Fig 2 1 generally the deceleration of fixed pulse acceleration deceleration driving is controlled automatically by MCX314 However in the following situations it should be preset the deceleration point by the users The change of speed is too often in the trapezoidal fixed pulse acceleration deceleration driving When use circular interpolation bit pattern interpolation and continuous interpolation for acceleration and deceleration In case of manual deceleration please set DO bit of register WR3 to 1 and use command 07h for presetting deceleration point As to the other operation the setting is as same as that of fixed pulse driving MCX314 B Offset Setting for Acceleration Deceleration Driving The offset function can be used for compensating the pulses when the decelerating speed doesn t reach the setting initial speed during the S curve fixed pulse driving MCX314 will calculate the accelerati
74. al function capabilities and is controlled by the same method of operation with constant speed trapezoidal or S curve driving Speed Control The speed range of the pulse output is from 1PPS to 4MPPS for constant speed trapezoidal or S curve acceleration deceleration driving The accuracy of the frequency of the pulse output is less than 0 196 at CLK 16MHz The speed of driving pulse output can be freely changed during the driving S curve Acceleration and Deceleration Each axis can be preset with S curve or trapezoidal acceleration deceleration individually Using S curve command will drive the output pulse in a parabolic shaped acceleration and deceleration Besides these 14 has a special method to prevent from the happening of triangular curve when S curve is commanded B Linear Interpolation Any 2 or 3 axes can be selected to perform linear interpolation The position boundary is between coordinates 8 388 608 and 8 388 607 and the positioning error is within 0 5 LSB Least Significant Bit The interpolation speed range is from 1 PPS to 4 MPPS Circular Interpolation Any 2 axes can be selected to perform circular interpolation The position boundary is between coordinates 8 388 608 and 8 388 607 and the positioning error is within 1 0 LSB The interpolation speed range is from 1 PPS to 4 MPPS B Bit Pattern Interpolation Any 2 or 3 axes can be selected to perform the bit pattern interpolation and the i
75. ame procedure for nodes 4 8 23 MCX314 2 4 6 The Acceleration Deceleration Control in Interpolation Different from other IC chips only allowing constant speed for executing the interpolations MCX314 supports the user to use trapezoidal and S curve driving for linear interpolation only In the process of interpolation for executing acceleration deceleration in continuous interpolation process the user can enable the deceleration by command 3Bh or disable deceleration by command 3Ch The purpose for the deceleration command is to enable the automatic deceleration or manual deceleration function the purpose of the disable deceleration command is to disable both of them It will be disable while power on reset During the driving the deceleration enable command cannot be executed The Acceleration Deceleration for 2 axis 3 axis Interpolation It is possible to perform trapezoidal and S curve acceleration deceleration driving during the execution of 2 axis 3 axis linear interpolation Either automatic or manual deceleration can be used for decelerating When the manual deceleration is executed the user can set the maximum absolute value of the axes to be the setting value of master axis decelerating point For instance while executing 3 axis linear interpolation of master axis ax1 X ax2 Y and ax3 Z the finish point X 20000 Y 30000 Z 50000 and the assumed pulse numbers needed for deceleration are 5000
76. ants to use nOUT7 4 signals D7 OUTSL of register WR3 should be set in the general purpose output mode then the output levels of D11 8 OUT7 4 of register WR3 can be set for outputting It is possible to use the general purpose output signal for motor driver current OFF deviation counting clear and alarm reset When resetting each bit of WR4 and nWR3 registers will be cleared then their output levels will be kept 31 MCX314 on the Low level 32 MCX314 3 Pin Assignments and Signal Description e299 2 2 2 2802 5229 esse Eo E gogrog 2522522 2233 222222423322555550292565222 999505 XIN2 um ZOUTS3 en aNG XLMTP 2 XALARM REGE XINPOS UINPOS UALARM ms ULM XOUTO ULMTM dk ois XOUT2 UIT XOUT3 XOUT4 CMPP HE XOUT5 CMPM XOUT6 ASND nea ANE NO A elec XOUT7 DSND UOUT6 ASND Sane UOUT5 CMPM ND s MCX314 _ CLK UOUT4 CMPP CD UECB PMIN UECA PPIN fours ZECB PMIN D ZECA PPIN Sim YECB PMIN XEXPM YECA PPIN EXER XECB PMIN VEXPM XECA PPIN UR UPM DIR HAE UPP PLS Pin 1 Mask SHE ELEM ZPP PLS YPM DIR p YPP PLS GND VDD D XD Go oc EU eee 8820885884 4 88222 22 682526 2 326 QUIE 2 gt X lt Fa 144pinQFP Dimension 30 9x30 9 mm Pitch 0 65mm 33
77. ch axis INO for encoder Z phase Input Interface photo coupler CR filter loop INO high speed photo coupler input Enable disable and logical levels selectable m Servo Motor Input Signal ALARM alarm INPOS in position Input Interface photo coupler CR filter loop Enable disable and logical levels selectable General Output Signal 4 points OUT4 7 for each axis or used for Drive Status Signals Output Interface 741506 open collector output m Drive Status Signal Output ASND speed accelerating DSND speed decelerating CMPP position CMPM position Drive status and status registers readable m Limit Signal Input 2 points for each and side Input Interface photo coupler CR filter loop Logical levels and decelerating sudden stop selectable m Emergency Stop Signal Input EMG 1 point for 4 axes Input Interface photo coupler CR filter loop Jumper logical levels selectable Operating Temperature 0 C 45 C 30 F 120 F Voltage 5V 5 max power consumption 700mA External Power Supply DC12V 24V Board Size 1619 421 9mm connector excluded Connector Style FX2B 100PA 1 27DS HIROSE Attachment 1 2m cable connector FX2B 100SA 1 2R HIROSE MCX314 MCX314 4 Axis Motion Control IC 20 MCX314 Contents
78. command clears all the bit pattern data and sets the stack counter SC to 0 9 11 Single Step Interpolation Single step interpolation This command performs 1 pulse each step output in interpolation driving When D12 bit of register WR5 is set 1 the single step interpolation can be performed After this command is issued single step interpolation starts 9 12 Deceleration Enabling 3Bh Deceleration enabling This command enables the automatic and manual decelerations In case of the individual interpolation the user can issue this command before the driving However in continuous interpolation the user should disable the deceleration than start the driving This command should be put in the final node and written before the interpolation command of the final node is written If each axis has to decelerate individually execute this command before driving But for continuous interpolation disable the deceleration first and enable it until the last node The deceleration is disabled while resetting When the deceleration enabling command is issued the enabling status is kept until the deceleration disabling command 3C is written or the reset happens Deceleration enabling disabling is active in interpolation automatic and manual decelerations are always active when individual axis is in driving 9 13 Deceleration Disabling bDeceleration disabling This command disables the automatic or manual decele
79. d pulse acceleration deceleration driving 0 automatic deceleration 1 manual deceleration The decelerating point should be set if the manual deceleration mode is engaged D1 DSNDE Setting decelerating rate which is in accordance with the rate of the acceleration or an individual decelerating rate 0 in accordance with the rate of the acceleration 1 individual decelerating rate setting When 0 is set the deceleration will follow the acceleration setting So 0 must be set for automatic deceleration When 1 is set the rates of acceleration and deceleration should be different So 1 must be set for manual deceleration D2 SACC Setting trapezoidal driving S curve acceleration deceleration driving 0 trapezoidal driving 1 S curve acceleration deceleration driving Before S curve acceleration deceleration driving is engaged jerk K should be set D4 3 EXOP1 0 Setting the external input signals nEXPP nEXPM for driving external signals disabled continuous driving mode fixed pulse driving mode external signals disabled When the continuous driving mode is engaged the direction drive pulses will be output continuously once the nEXPP signal is on the Low level the direction pulses will be output continuously once the nEXPM signal is on the Low level When the fixed pulse driving mode is engaged the direction fixed pulse driving starts once the nEXPP signal is falling to the Low level from the Hi level the direction
80. data reading register High word bits data reading register define bp1p 0 4 BP direction data register for the first axis control define bp1m 0 6 BP direction data register for the first axis control define bp2p 0 8 BP direction data register for the second axis control define bp2m BP direction data register for the second axis control define bp3p Oxc BP direction data register for the third axis control define bp3m BP direction data register for the third axis control wreg 1 axis assignment data Write register 1 setting void int axis int wdata a outpw adr wr0 axis lt lt 8 0xf outpw adr wr1 wdata b wreg 2 axis assignment data Write register 2 setting void wreg2 int axis int wdata outpw adr wr0 axis lt lt 8 0xf outpw adr wr2 wdata b wreg axis assignment data Write register 3 setting void wreg3 int axis int wdata outpw adr wr0 lt lt 8 0 outpw adr wr3 wdata b command axis assignment data For writing commands void command int axis int cmd a outpw adr wr0 lt lt 8 e b range axis assignment data For range R setting void range int axis long wdata a outpw adr wr7 wdata 16 amp Oxffff outpw adr wr6 wdata amp outpw adr wr0 lt lt 8 0x00 b acac ax
81. e into BP register command of bit 16 31th J2 pe Dn NY read X until ending interpolation drive BP1P FeFEhwrite axis direction command BP1M 0000h write X axis direction command BP2P lt 000Fh write Y axis direction command Note 1 If there is more BP data coming then repeat this process bit pattern interpolation by interrupt During the bit pattern interpolation MCX314 will generate an interrupt request signal to the host CPU while SC changes the value from 2 to 1 To enable the interrupt the host CPU must set D15 of register WR5 to 1 Then INTN of MCX314 will go low once SC changes the value from 2 to 1 The host CPU will check the SC value and write bit pattern command into the register The interrupt signal will be released if the host CPU writes the SC stacking command 38h into MCX314 The interrupt signal will be released when the clear command 3dh is written into the command register If the interrupt status is keeping on the Low level it will return to high Z level after MCX314 finishes the bit pattern interpolation 2 4 4 Constant Vector Speed Y MCX314 is with the constant vector speed control function which can control the resultant speed of two axes to keep the speed in constant Fig 2 26 shows the profile of 2 axes interpolation driving The vector speed reflects 1 414 times of the individual axis driving speed So we have to set the speed of 1 414 times to keep the vector s
82. e the next command within this period of time 8 1 Direction Fixed Pulse Driving 20h Direction Fixed Pulse Driving The setting pulse numbers will be output through the output signal nPP In driving real position counter will count up 1 when one pulse is output Before writing the driving command the user should set the parameters for the outputting speed curve and the correct output pulse numbers see the table below Multiple Jerk Acceleration Initial Speed Drive Speed Output Pulse R K A SV V P Constant speed x x of 9 x 0 o o o Soue acce o o o 8 2 Direction Fixed Pulse Driving 21h Direction Fixed pulse Driving The setting pulse numbers will be output through the output signal nPM In driving real position counter will count down 1 when one pulse is output Before writing the driving command the user should set the parameters for the outputting speed curve and the correct output pulse numbers 8 3 Direction Continuous Driving 22h Continuous Driving Before the stop command or external signal is active the pulse numbers will be continuously output through the output signal nPP In driving real position counter will count up 1 when one pulse is output Before writing the driving command the user should set the parameters for the outputting speed curve and the correct output pulse numbers
83. ecelerating region in the acceleration deceleration driving when the driving changes from the accelerating region into the constant speed region The interrupt will be generated at the D15 D END D7 D END when the driving is finished Each factor of interrupt can be masked by setting levels nWR1 register bits 1 enable and 0 disable When interrupt is generated during the driving and if the interrupt is generated each bit in nRR3 will be set to 1 INTN will be on the Low level After the nRR3 status has been read from the host CPU nRR3 will be cleared from 1 to 0 and INTN will return to the High Z level 28 MCX314 interrupt from Interpolations Enable Disable Status Check The Factors of Interrupt Happening WR5 Register RRO Register Interrupt Clearing in continuous interpolation when MCX314 is available for the interpolation data of next node DIRGUNT PENES after next interpolation command is written the interrupt will be cleared In bit pattern interpolation when the value of stack connector SC is changed from 2 to 1 and the stack is available for next BP command D15 BPINT D14 13 BPS1 0 writing after a BP command for the stack is written the interrupt will be cleared When an interrupt is generated during interpolations this interrupt can be cleared by writing the interrupt clear command 3Dh INTN will return to the High Z level automatically once the interpolation is fin
84. ecelerating stop signal are nIN3 0 and nLMTP M When the decelerating mode is engaged 74 MCX314 When speed decelerating signals become active or the decelerating stop command is written the decelerating stop function will be performed Decelerating signal i active Decelerating command write in nPP nPLs UUU LLL L nDSND 75 MCX314 14 Pinout Unit mm 30 90 4 26 0 0 2 108 73 E i gt 0 109 D 72 u c H e D WD OU 144 2 37 1 36 1 6P5TYP 0 3504 J 51011300 0 65 QJ S D _ Qu 015 lt 28 5 0 4 0 5 c NE aC coo 2 2 1 240 2 76 15 Specifications B Control Axis 4 axes Data Bus 16 8 bits selectable Interpolation Functions W 2 axes 3 axes Linear Interpolation Interpolation Range Interpolation Speed Interpolation Accuracy E Circular Interpolation Interpolation Range Interpolation Speed Interpolation Accuracy W 2 axes 3 axes Bit Pattern Interpolation Interpolation Speed Related Functions of Interpolation MCX314 Each axis 8 388 608 48 388 607 1 4 5 0 5 LSB Within the range of whole interpolation Each axis 8 388 608 48 388 607 1 4 5 1 LS
85. eceleration W Triangle wave Avoiding during the Linear Acceleration Deceleration When 1 Jerk Maxium in the S curve Accel Decel Mode 1 4 output pulses principle can be engaged Even the output pulses are few the drive is a trapezoidal drive R 800000 Rate 10 K 1 A D 100 SV 100 V 4000 R 800000 Rate 10 A D 100 SV 100 V 4000 WR3 D2 D1 00 1 0 0 S curve Mode Auto Decelerating Mode WR3 D2 D1 DO 0 0 0 Trapezoidal Mode Auto Decelerating Mode Jerk 625MPPS SEC Accel Decel 125KPPS SEC Accel Decel 125KPPS SEC Initial Soeed 1000PPS Initial Speed 100PPS Drive Speed 40000PPS Drive Speed 40000PPS Output Pulse P 40000 Output Pulse P 40000 40000 40000 PPS 20000 20000 1 0 20 1 0 S Za P 20000 20000 40000 40000 PPS PPS 20000 20000 0 x 1 0 20 0 1 0 SEC 2 0 P 10000 P 16000 40000 PPS 20000 1 0 S6 Zo P 5000 P 5000 40000 40000 PPS PPS 20000 20000 1 0 20 1 0 20 2000 2000 40000 40000 m PPS 20000 20000 9 1 0 SEC 20 1 5 C 2 0 MCX314 Initial Speed Trailing during the S curve Accel Decel fixed pulse drive Try to adjust the volumes of parameters to have a more stable drive R 800000 Rate 10 K 1000 A D 8000 SV 100 V 2000 50000 Auto Decelerating Mode 40000 40000 PPS PPS 20000 20000 2 0 SEC 4 0 9 1010 2 0 50 4 0 R 800000 Rate 10 K 50 8000 SV 200 4000 0 0 50000 Auto Decelerating Mode gt
86. ed When 2 axis constant vector speed mode is engaged the user should set the range R of ax2 to be 1 414 times of the range R of master axis ax1 When 3 axis constant vector speed mode is engaged the user should set the range R of ax2 to be 1 414 times and the range R of ax3 to be 1 732 times of the range R of master axis ax1 D11 EXPLS When itis 1 the external EXPLSN controlled single step interpolation mode is engaged D12 CMPLS Whenitis 1 the command controlled single step interpolation mode is engaged D14 CIINT Interrupt enable disable setting during interpolation 0 disable 1 enable D15 BPINT interrupt enable disable setting during bit pattern interpolation 0 disable 1 enable D15 DO will be set to 0 while resetting 45 MCX314 4 9 Data Register WR6 WR7 Data registers are used for setting the written command data The low word data writing 16 bit WD15 WD0O is for register RR6 setting and the high word data writing 16 bit WD31 WD16 is for register RR7 setting H L 015 014 D13 D12 011 D10 D9 08 D7 06 D5 D4 D3 02 01 WR6 015 014 013 012 011 010 WD9 WD8 WD7 WD6 WD5 WD4 WD3 WD2 WD1 WDO H L D15 014 D13 012 D11 D10 D8 D7 D6 D5 D4 D3 D2 D1 DO WR7 WD31 WD30 WD29 WD28 WD27 WD26 WD25 WD24 WD23 WD22 WD21 WD20 WD19 WD18 wd17 wd16 The user can write command data with a designated data length into the write registe
87. ed is high Actually the accuracy of driving pulse is still within 0 1 Using oscilloscope for observing the driving pulse we can find the tolerance about 1SCLK 125nSEC This is no matter when putting the driving to a motor because the tolerance will be absorbed by the inertia of motor system 10 MCX314 2 3 Position Control Fig 2 15 is 1 axis position control block diagram For each axis there are two 32 bit up and down counters for counting present positions and two comparison registers for comparing the present positions e gt direction pulse PM direction pulse UP Logical Position Counter 32bit DOWN W R UP ECA PPIN encoder Real Position Counter E 32bit DOWN ECB PMIN feedback pulse WIR Waveform Transformation W register D1 W COMP Register CMPM 32Bit D Fig 2 15 Position Control Block Diagram 2 3 1 Logic Position Counter and Real position Counter The logic position counter is counting the driving pulses in MCX314 When one direction plus is outputting the counter will count up 1 when one direction pulse is outputting the counter will count down 1 The real position counter will count input pulse numbers from external encoder The type of input pulse can be either quadrature pulse type or Up Down pulse CW CCW type See Chapter 2 6 3 Host CPU can read or write these two counters any time The counters are signed 32 bi
88. eleration values At the beginning the acceleration increase linearly from 0 to the specific value A with a specific rate of acceleration K which shows the driving speed increase parabolically in this region Then the driving speed increases in a constant Acceleration Deceleration acceleration in region b And in section c the Specific NE acceleration decelerates linearly to O with the rate of deceleration So the acceleration of S curve includes regions a b and c In deceleration as same as acceleration the driving Acceleratio Deceleration speed decelerate parabolically in three regions d e ud and f Fig 2 9 S Curve Acceleration Deceleration Driving Initial 5 peed Time Time ilComplete S curve and Partial S curve The desired driving speed is V When V speed in region a lt speed in region a the region b will disappear This condition is called complete S curve Otherwise it is called partial S curve Please check the parameters and examples in Appendix A In order to execute S curve acceleration deceleration the user has to set bit D2 of register WR3 to 1 and the following parameters are necessary to be set I Range M Jerk I Acceleration Deceleration I Initial Speed Drive Speed Output Pulse Number The designated value of acceleration and deceleration The designated deceleration value of individual setting V lt
89. er WRO for execution Writing data for registers WR6 and WRT7 is binary and 2 s complement for negatives Each data should be set within the permitted data range If the setting data out of range the driving can not be done Note requires 250 nSEC maximum to access the command code when CLK 16MHz Please don t write the next command or data into WRO when the present command is written Except acceleration offset OA the other parameters are unknown while resetting So please per set proper values for those driving related parameters before the driving starts Range Setting Data is the parameter determining the multiple of drive speed acceleration deceleration and jerk multiple calculation is shown in the following formula 8 000 000 Multiple R For the parameter setting range of drive speed acceleration deceleration and jerk is 1 8000 if the higher value is needed the user should have a larger multiple In case of increasing the multiple although the high speed driving is possible the speed resolution will be decreased So the user can set the multiple as small as possible if the setting speed has covered the desired speed For example the maximum value of parameter for setting the drive speed V is 8000 and the drive speed is set 4OKPPS The user can set V 8000 and R 1 600 000 Because 40K is 5 times of 8000 we set the R 8 000 000 5 1 600 000 The Range R can not be cha
90. er supply is necessary for triggering the limit switch The logical levels and decelerating stop sudden stop are selectable during the mode setting After resetting MCX314 is active on the Low level and the limit is active when the current flows to the signal terminal nNLMT nLMT Please refer to Chapter 4 5 of MCX314 manual for mode setting in details 45V VEX 12 24V MCX314 10K e o nLMTP aly 3 3K YA 3 3K 0 01u EIL O nLMT J 45V zy TLP121 or eq 10K nLMTM 3 3K YA 3 3K 01 24215 B OnLMT Ur Circuit Diagram for Movement Limit Input Signals The response time of this circuit takes about 0 2 0 4 mSEC because of the delay of photo coupled and RC filter The following figure shows the example of connecting photo sensor and over limit signal When bit D3 of X axis mode register 2 XWR2 is set to 0 the resetting mode the limit is active when the sensor is sheltered The shield wire should be used if the cable connection is long distance MC8041A VEX de T 6 DC12 24V EE SX670 OMRON XLMT 6 gt Limit is active when sensor is sheltered Example of Photo Sensor and Over Limit Signal Connection MCX314 3 6 Decelerating Sudden Stop Input Signal nIN1 nIN2 nIN3 Decelerating sudden stop signal is for decelerating stop sudden stop during the driving In MCX314 each axis is with 4 inputs IN3 INO in which INO
91. ernal Stop Signal iStop Condition for External Input IN3 INO in Continuous Driving The input pins IN3 INO can be used for home searching near by home searching and Z phase searching Enable disable and logical levels can be set at WR1 of each axis For the application of high speed searching the user can set MCX314 in the acceleration deceleration continuous driving mode and enable IN1 in WR1 And then MCX314 will perform the decelerating stop when the external signal IN1 is active For the application of low speed searching the user can set MCX314 in the constant speed continuous driving and enable IN1 Then MCX314 will perform the sudden stop when IN1 is active 2 2 Speed Curve The speed driving profile in MCX314 can be configured as constant speed driving trapezoidal driving or S curve acceleration deceleration 2 2 1 Constant Speed Driving When the driving speed set in MCX314 is lower than the initial speed the acceleration deceleration will not be Speed performed instead a constant speed driving starts If the user wants to perform the sudden stop when the home sensor or encoder Z phase signal is active it is Driving Speed better not to perform the acceleration deceleration driving but the low speed constant driving from the beginning For processing constant speed driving the following parameters will be preset accordingly Initial Speed Time Fig 2 7 Constant Speed Driving Range R M Initial
92. ers and drive speeds changeable during the driving Independent 2 pulse system or 1 pulse 1 direction system selectable Logical levels of pulse selectable m Encoder A B Z Phase Input Pulse Input Interface high speed photo coupler input line driver connectable A B quadrature pulse style or Up Down pulse style selectable Pulse of 1 2 and 4 divisions selectable A B quadrature pulse style B Position Counter Logical Position Counter for output pulse 32 bit Real Position Counter for input pulse 32 bit Data reading and writing possible Compare Register COMP amp COMP Status and signal outputs for the comparisons of position counters Software limit functioned 18 MCX314 m Interrupt Interpolations Excluded The factors of occurring interrupt the drive pulse outputting the start finish of a consistent speed drive during the accelerating decelerating driving the end of the driving the volume of position counter changed volume of COMP the volume of position counter changed volume of COMP the volume of position counter the changed volume of COMP the volume of position counter the changed volume of Enable disable for these factors selectable m External Signal for Driving EXPP and EXPM signals for fixed pulse continuous drive Input Interface photo coupler CR filter loop mechanical connector connectable m External Decelerating Sudden Stop Signal 4 points INO 3 for ea
93. ers such as nINPOS in position input signal and nALARM alarm input signal can be set by D15 12 bits of register WR2 nINPOS input signal responds to the in position signal of servo motor driver When enable is set and when the driving is finished nINPOS will wait for the active Then the n DRV bit of main status register PRO will return to 0 nALARM input signal receives the alarm signal from servo motor drivers When enable is set nALARM signal will be monitored and the D4 alarm bit of RR2 register is 1 when nALARM is active The sudden stop will occur in the driving when this signal is active These input signals from servo motor drivers can be read by RR5 and RR6 registers The user can use general output signals nOUT7 4 or nOUT3 0 to clear and or reset the out put signals such as deviation counter and alarm reset of servo motor drivers 2 6 6 Emergency Stop Signal EMGN is able to perform the emergency stop function for all of the 4 axes during the driving Normally this signal is kept on the Hi level When it is falling to the Low level all axes will stop immediately and the D5 bit of register RR2 each axis becomes 1 Please be noted that there is no way to select the logical level of EMGN signal Please check the following methods to perform the emergency stop function from the host CPU Execute the sudden stop commend for all of the 4 axes at the same time Appoint all of the 4 axes then write
94. executed and will be jumped So the user should assure and check if any error status will occur before the following interpolation command is loaded Attentions for Continuous Interpolation e point for each node finished next node during the interpolation 21 The maximum speed for the continuous interpolation is 2MHz The following interpolation command must be loaded before the previous interpolation command is It is impossible to operate 2 axis and 3 axis continuous interpolations at the same time It is not allowed to change the axis assignment during the process of continuous interpolation Before setting the interpolation command the user should first set other data such as center point finish The node driving time should be longer than the time for error checking and the command setting of MCX314 9 Example of Continuous Interpolation Fig 2 29 shows an example of executing continuous interpolation beginning at point 0 0 from node 1 2 3 to the node 8 In node 1 3 5 and 7 the linear interpolation will be executed in node 2 4 6 and 8 the circular interpolation will be executed and the track is a quadrant circle with radius 1500 The interpolation driving is at a constant vector speed 1000PPS WR5 lt 0104h write define ax1 X axis ax2 Y axis constant vector speed WR6 lt 0900h write setting the parameter of master axis WR7 lt 003Dh write range 4 000 000 multiple 2 WRO
95. g stop command is written into the master axis ax1 which is executing the bit pattern interpolation MCX314 will continue the bit pattern interpolation if the host CPU enables the bit pattern interpolation again If the host CPU wants to finish the interpolation after writing stop command all of the interpolation bit data in MCX314 must be cleared in using BP register 3Dh Otilizing hardware limit to interrupt the interpolation The interpolation driving will be terminated when any hardware limit of any axis is active And if host CPU wants to finish the interpolation all of the interpolation data in MCX314 must be cleared MCX314 9 Writing the bit pattern data into the register in MCX314 Either by 16 bit data bus or by 8 bit data bus the address map of the command buffer for bit pattern interpolation data is show as follows The addresses map of register for 16 bit data bus in bit pattern interpolation Address The register with the 0 0 WR 0 o 1 o gere nWR2 axt cirecton data we _ Pi see data wa em axe cirecton data 0 was Note BP3P and BP3M share the same registers WR6 and 7 The addresses map of register for 8 bit data bus in bit pattern interpolation Address Address Name of register Name of register 1 0 0 10 Bet
96. he cycle of deceleration should be started and finished within the same node 26 MCX314 2 4 6 Single step interpolation from Command or External Signal Single step is defined as pulse by pulse outputting Either command or external signal can execute the single step interpolation When one pulse is outputting the master axis interpolation will be set in the constant speed driving The Hi level width of each axis s output pulse is 1 2 of the pulse cycle which is decided by the interpolating master axis s drive speed The Low level width is kept until next command or external signal comes Fig 2 30 is the example showing the execution of single step interpolation from an external signal The master axis s initial speed is 500PPS the drive speed is at 500PPS constant speed driving The Hi level width of output pulse is 1msec ExPLSN L 1 mSEC XPP YPM Fig 2 30 Example of single step interpolation 500PPS by external signal EXPLSN o Controlled Single step Interpolation The command 3Ah is for single step interpolation The user can set 012 of register WR5 to 1 to enable the command controlled single step interpolation The operating procedure is shown as follow Set D12 of register WR5 to 1 It will enable the command controlled single step interpolation Set the initial and drive speeds of the master axis in the in
97. he initial and driving speeds of the master axis in the interpolation process to be the same value and the driving becomes constant speed which should be higher than the Low pulse cycle of EXPLSN This is necessary for this controlled mode And it will set the MCX314 into a constant speed mode Set interpolation data starting point center point Write interpolation command Although the interpolation command is enabled there is no pulse output because the single step is command controlled EXPLSN input on Low level The interpolation pulse will be output from each axis after 2 5 CLK the pulse falling down The Low level pulse width of EXPLSN has to be longer than 4CLK Furthermore the pulse cycle of EXPLSN has to be longer than the setting speed cycle of master axis The user may repeat the Low level of EXPLSN before the interpolation is finished 27 MCX314 If the user wants to stop sending single steps during the interpolation he can use the sudden stop command 27h then wait for more than 1 pulse cycle and then input pulse on EXPLSN Low level again to stop the driving the user may try software reset also After this all the following input pulses on EXPLSN Low level will not be active Note When connecting the EXPLSN Low level with the manual connector please assure the EXPLSN signal is not chattering 2 5 Interrupt The interrupt is generated from X Y Z or U axis bit pattern interpolation or continuo
98. ing 14 bits of mode register 2 nWR2 are set to 1 and 0 on active Low level the current flows from nINPOS signal terminal is standby and bit n DRV of RRO register returns to 0 For nALSRM input signal after D13 nALARM signal terminal becomes the alarm status Please refer to Chapters 2 6 5 and 4 5 for information in details 45V VEX 12 24V MCX314 10K e o nINPOS 4 3 3K N Y 3 3K le O nINPOS n 45V 77 121 or eq nALARM 3 3K Y 3 3K 0 011 O nALARM Input Signal for Servo Driver External DC12 24V power supply is necessary for triggering the signal For the status of these signals be read from the input register 1 and 2 RR4 5 they can be used for general purpose inputs The response time of this circuit takes about 0 2 0 4 mSEC because of the delay of photo coupled and RC filter 7 MCX314 3 8 Encoder Input Signal RECAP nECAN nECBN nINOP nINON Connecting with encoder 2 phase output signals or the encoder 2 phase output signals of servo driver N and nECBP N input signals are for the input counting of MCX314 real position counter UP DOWN pulse input and mode setting are possible Please refer to Chapters 2 3 1 2 6 3 and 4 5 of MCX314 manual for information in details Connecting with encoder or Z phase output signal of servo driver nINOP and nINON input signals are for the driving stop while drive pulses are out
99. irection and logical level setting Note Please refer to Chapter 13 2 and 13 3 for the pulse signal nPLS and direction signal nDIR in 1 pulse 1 direction pulse outputting 2 6 3 Pulse Input Type Selection For real position counter A B quadrature pulse type and Up Down pulse type can be selected for pulse input When A B quadrature pulse type is selected the position counter will count up if phase A leads phase B the position counter will count down if phase B leads phase A The pulse cycle can be set 1 2 or 1 4 nECA PPIN nECB PMIN Counting Up Counting Down When Up Down pulse type is selected nECA PPIN is used for count up input and ECB PPIN for count down input The counting is during the direction pulses are up W nECA PPIN nECB PMIN Counting Up Counting Down 2 6 4 Hardware Limit Signals Hardware limit signals nLMTP and nLMTM are used for stopping the pulse output if the limit sensors of 4 and directions are triggered When the limit signal and also the logical level are active the command of sudden stop or decelerating stop can be set by bits D3 and D4 HLMT HLMT and D2 LMTMD of register WR2 30 MCX314 2 6 5 Interface to Servo Motor Drivers Enable Disable and logical levels of the input signals for connecting servo motor driv
100. is assignment For logical position counter LP reading void readlp int axis a long a long d6 long d7 outpw adr wr0 axis 8 0x10 d6 inpw adr rr6 d7 inpw adr rr7 a d6 d7 lt lt 16 return a b readep axis assignment For real position counter EP reading void readep int axis long a long d6 long d7 outpw adr wr0 axis 8 0x11 d6 inpw adr rr6 d7 inpw adr rr7 a d6 d7 lt lt 16 return a b wait axis assignment For waiting for drive stop void wait int axis while inpw adr rr0 amp axis e b next wait Next data setting of waiting for continuous interpolation void next wait void a while inpw adr rr0 amp 0 0200 0 0 b bp Next data setting of waiting for BP interpolation void bp wait void while inpw adr rr0 amp 0 06000 0 6000 e b homesrch for homeal point searching on whole axis void homesrch void Action The same for 1 3 axes wreg1 Oxf 0x0008 If homeal signal in 1 OFF 2000 direction motion will be continuously driven at a speed of 20000 PPS if inpw adr rr4 amp 0 2 0 2 If IN1 signal ON deceleration will be stopped a command 0x1 0x23 b if inpw adr rr4 amp 0 200 0 200 a command 0x2 0x23 b if inpw adr rr5 amp 0 2 0x2 command 0x4 0x23 b if inpw adr rr5 amp
101. is assignment data For S curve acceleration K setting void acac int axis long wdata assignment laxis assignment assignment a outpw adr wr6 wdata outpw adr wr0 axis 8 0x01 b acc axis assignment data For acceleration deceleration A setting void acc int axis long wdata a outpw adr wr6 wdata outpw adr wr0 axis lt lt 8 0x02 e b dec axis assignment data For deceleration D setting void dec int axis long wdata outpw adr wr6 wdata outpw adr wr0 axis 8 0x03 e b startv axis assignment data For initial speed SV setting void startv int axis long wdata a outpw adr wr6 wdata outpw adr wr0 axis 8 0x04 e b speed axis assignment data For drive speed V setting void speed int axis long wdata a outpw adr wr6 wdata outpw adr wr0 axis 8 0x05 pulse axis assignment data For output pulse output finish point P setting void pulse int axis long wdata a outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp outpw adr wr0 axis 8 40x06 e b decp axis assignment data For manual deceleration DP setting void decp int axis long wdata a outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp outpw adr wr0 axis 8 0x07 e b center axis a
102. is for the interface feedback of encoder Z phase nIN1 nIN2 and are for home position and hear by home position input signals Enable disable and logical levels can be set When the mode is enabled the driving will stop once this signal is active The decelerating stop will be performed during the acceleration deceleration driving the sudden stop will be performed during the constant speed driving For instance when 06 and D7 bits of XWR3 register are set 1 and 0 for X axis signal on the active Low level the driving will be stopped when the current flows to the signal terminal XIN3 Please refer to Chapter 4 4 of MCX314 manual for mode setting in details read from the input register 1 and 2 RR4 5 they can be used for general purpose inputs MCX314 5V VEX 12 24V 10K MEE Q nIN3 1 I 3 3K YA 3 3K 0 011 Dd 77 TLP121 or eq The response time of this circuit takes about 0 2 0 4 mSEC because of the delay of photo coupled and RC filter nINPOS is the input signal corresponding to the in position output of servo driver Enable disable and logical levels are selectable When it is enabled and after the driving is finished this signal is active and standby n nALARM is the input signal corresponding to the alarm output of servo driver Enable disable and logical ALARM bit of status register 2 nRR2 becomes 1 The driving will be sudden stopped once this signal is in its active level during the driv
103. is shorted between pins 2 and 4 so there is no interrupt request to CPU Note For 74ALS04 is used for outputting interrupt signals the interrupt request signals should not be used for other devices or for other I O boards of PC MCX314 5 Connection Examples for Motor Drivers 5 1 Connection with Stepper Motor Drivers The figure below is the example of MC8041A connected to a 5 phase micro step driver KR515M manufactured by TECHNO DRIVE MC8041A KR515M APP CW Pulse P XP N F e CCW Pulse dd XP N R Hold Off XOUT4 H O D S M1 M2 select XOUT5 D S XINOP XINON Timing Output zb GND Z P Note 1 J3 of MC8041A is set at 5V output side for output terminals XP P and XP P Please be very careful that the external noise may happen during the wiring Note 2 Hold off M1 M2 select and timing output can be wired if necessary The hold off and M1 M2 select signals can be controlled by writing 0 and 1 into bits D8 and D9 of WR3 register of MCX314 For timing output signal the signal level can be read through RR4 and RR5 registers The figure below is the example of MC8041A connected to UPK series stepper drivers manufactured by ORIENTAL MC8041A UPK series XP P CW Pulse CW XP N CW 88 f CCW Pulse COW g 2KQ 1w Hold Off SOF ES XOUT4 H OFF DC24V VEX Timing Output XIN1 TIMMING Over
104. ished 2 6 Other Functions 2 6 1 Driving By External Pulses Fixed pulse driving and continuous pulse driving can be controlled by either commands or external signals which can reduce the load of host CPU Each axis has two input signals nEXPP and nEXPM nEXPP controls direction pulse output and nEXPM controls direction command D3 and D4 bits of register WR3 are for the setting in driving The user should preset the parameters and commands The default level of and nEXPM is normally set on Hi Fixed Pulse Driving Mode Set bits D4 and D3 of register WR3 to 1 and 0 respectively and set all the parameters of fixed pulse driving Once nEXPP is falling down to the Low level the direction fixed pulse driving will start once nEXPP is raising to the Hi level the direction fixed pulse driving will start The width of Low level signal must be larger than 4 CLK cycle Before this driving is finished a new Hi to Low level falling down of the signal is invalid XEXPP XEXPM XPM Fig 2 32 Example of The Fixed Pulse Driving by External Signal Note When connecting the input signal with a mechanical connector the signal chattering would happen especially if the output pulse numbers are few Please add a de bounce circuit to avoid the chattering ilContinuous Pulse Driving Mode Set bits D4 and D3 of
105. ister WRS5 to 1 the interrupt occurs Pin INTN of MCX314 will be on the Low level to interrupt the host CPU when D9 of register RRO become 1 The INTN will be on the Hi level if the host CPU writes the next interpolation command to MCX314 If the interrupt clear command 3Dh is written to command register the INTN signal will return to high Z level from the Low level During the ending of the interpolation it is forced to be interrupt disable and the INTN signal will return to the high Z level The 1 node data write in interpolation cmd write in errors occurrea allow to write in the next data RRO D9 12 The 2 node data write in interpolation cmd write in errors occurred allow to write in the next data MCX314 RRO D9 1 v Ending the interpolation drive Processing the errors The 3 node data write in interpolation cmd write in Brrors Occurring in the Process of Continuous Interpolation If an error such as over traveling occurs in the process of continuous interpolation the drive will stop at the present interpolation node The following interpolation command is still in the command register but will not be executed The host CPU has to reload the next command again and enable it As shown in the flow chart above the host CPU has to check the error message before loading the following command If not this command will not be
106. le before and after the Hi level pulse outputting 13 4 Start Driving after Hold Command SCLK WRN BUSYN PP nPM 1st pulse 2nd pulse nDRIVE 9 The pulses nPM and nPLS of each axis will start outputting after 3 SCLK cycles when BUSYN is nDRIVE will become Hi level when BUSYN is 7 for each axis 13 5 Sudden Stop The following figure illustrates the timing of sudden stop The sudden stop input signals are EMGN nLMTP M When the sudden stop mode is engaged and nALARM When sudden stop input signal becomes active or the sudden stop command is written it will stop the output of pulses immediately The width of external signals input for sudden stop must be more than 1 SCLK cycle The stop function will not be active if the width is less 1 SCLK cycle SCLK Decelerating signal Decelerating command write in active nPP nPM nPLS nDSND 13 6 Decelerating Stop The following figure illustrates the timing of decelerating stop input signal and decelerating commands The d
107. level is Low while data is being read from MCX314 Only when CSN is on the low level the selected read register data from 0 address signals can be output from the data bus Input A Reset reset return to the initial setting signal for MCX314 Setting RESETN to Low for more than 4 CLK cycles will reset MCX314 The RESETN setting is necessary when the power is on Note If there is no clock input to MCX314 setting the RESETN to Low still cannot reset this IC EXPLSN 29 External Pulse pulse input signal for external pulse interpolation The normal setting is Hi level When the external pulse interpolation occurs EXPLSN is down the interpolation calculation starts and one pulse for each axis interpolation is output The width of EXPLSN on the Low level must be more than 4 CLK H16L8 Hi 16 bit Low 8 bit data bus width selection for 16 bit 8 bit When the setting is Hi 16 bit data bus is selected for processing the 16 bit data reading writing in IC when the setting is Low 8 bit data bus D7 DO is active for data reading writing er Input A Test terminal for internal circuit test Please open or connect it to 5V Output Busy reflecting the execution of the input command at this moment Once the command is written to MCX314 the process will take 2 CLK to 4 CLK 250nsec for 16MHz on the Low level When BUSYN is on the Low level the other written commands cannot be executed INTN Output B Inte
108. lt 0000h WRO lt 0206h WRO lt 0030h 1 000ms 1 414ms 10005 1 414ms gt gt write write write write write write write write finish point of X finish point of Y 2 axis linear interpolation starting Fig 2 27 The Example of 2 axis Interpolation at A Constant Vector Speed speed 1000PPS Setting Constant Vector Speed for 3 Axes As same as the setting process of 2 axes the user should first set the values of D9 and D8 of register WR5 to 0 and 1 Then set the range R of ax2 to 1 414 times of the value of the master axis ax1 then set the range R of ax3 to 1 732 times of the value of the master axis After setting the range of constant vector speed for 3 axes MCX314 will use the range parameter of ax1 if only 1 axis outputs pulses However when 2 or 3 axes output pulses simultaneously MCX314 will use the range parameter of ax2 or ax3 to implement the pulse period See Fig 2 28 User may set the values of D9 and D8 of register WR5 to 0 and 1 for 2 axis constant vector speed driving even in the 3 axis interpolation XPP XPM YPP YPM 2 ZPM 1 000ms 1 414ms 1 000ms 1 732ms 1 414ms re ri rie gt Fig 2 28 Example for 3 axis Interpolation at A Constant Vector Speed speed 1000PPS Caution In
109. lt 0100h write 400 WR6 lt 4DCOh write 2 axis constant vector speed WR7 lt 0056h write 4 000 000x1 414 5 656 000 WRO lt 0200h write WR6 lt Ol1F4h write Initial speed 500x2 1000PPS WRO lt 0104h write WR6 lt Ol1F4h write drive speed 500x2 1000PPS WRO lt 0105h write WR6 lt 1194h write _ finish point X 4500 71500 PUB 4500 6000 WR7 lt 0000h write WRO lt 0106h write WR6 lt 0000h write finish point Y 0 1 WR7 lt 0000h write WRO lt 0206h write WRO lt 0030h write 2 axis linear interpolation enabling Ji RRO D4 05 read if error occurs If D4 D5 1 Jump to Error jump to handle error RRO D9 read waiting for next node s enable signal If 09 0 Jump to J1 WR6 lt 0000h write center X 0 WR7 lt 0000h write WRO lt 0108h write WR6 lt 05DCh write center Y 1500 WR7 lt 0000h write WRO lt 0208h write ds Node2 WR6 lt 05DCh write finish point X 1500 WR7 lt 0000h write WRO lt 0106h write WR6 lt 05DCh write finish point Y 1500 WR7 lt 0000h write WRO lt 0206h write WRO lt 0033h write CCW circular interpolation enabling Procedure A WR6 lt 0000h write finish point X 0 WR7 lt 0000h write WRO lt 0106h write WR6 lt 05DCh write _ finish point Y 1500 Node3 WR7 lt 0000h write WRO lt 0206h write WRO 0030h write 2 axis linear interpolation enabling Procedure A 22 MCX314 s
110. ltage B Recommend Operation Environment Symbol Power Voltage 4 75 5 25 Ambient o If the user wishes to operate the IC below 0 C please make contact with our R amp D engineer Reservation DC Characteristics Uns 0 85 C 5 5 DW _ m w 8 1 20 39 wa Dis Dompursgna Low level input 200 9 ua Input signal besides D15 D0 ess p yer Nei y y High level output 4 mA 2 4 Output Signal besides D15 DO voltage lo 8mA 24 V Df5 DOOututsigna cE Low level output voltage V_ Output signal besides 015 00 lassma o4 Dts Dooupusigna Output leakage current lor VeumVoeor V 10 mA 015 00 BUSYN INTN_ pe Consuming curent loo coma cma 99 mal Note1 BUSYN and INTN output signals have no items for high level output voltage due to the open drain output B Pin Capacity ae Tm pp 9 jOtherimputpns Ta 0 85 C VDD 5V 5 Output load condition 85 pF 1 TTL Input Output capacity Ta 25 C Input capacity f 1 MHz 12 2 AC Characteristics 12 2 1 Clock B CLK Input Pulse B SCLK Output Signal CLK CLK tWL SCL
111. manual decelerating point however this setting point is related to the master axis executing the deceleration in the last node The user should disable the deceleration then start the interpolation driving Before writing the interpolation command to the final node which will execute the deceleration the user should enable the deceleration at first The deceleration will start if the output pulses are larger than the master axis based pulses in the final node For instance there are 5 interpolation nodes in the process of continuous interpolation In case the manual deceleration has to be executed in the last node node 5 the procedure is shown as follows Setting mode acceleration deceleration for master axis Writing manual deceleration point Deceleration disabling command 3Ch Writing node 1 data interpolation command Starting continuous Error checking waiting for the allowance to write the next data interpolation driving Writing node 2 data interpolation command Error checking waiting for the allowance to write in the next data Deceleration enabling command 3Bh Writing node 5 data interpolation command 9 he manual deceleration point is related to the master axis driving pulses which comes from node 5 For instance assumed that it needs 2000 pulses for decelerating stop and the total amount of pulse output form node 5 is 5000 So the manual deceleration point will be 5000 2000 3000
112. matic deceleration will not be performed but the manual deceleration is required The user should set the bit D1 of Register WR3 as 1 then use decelerating command 03h to set the deceleration When performing the trapezoidal driving the following parameters should be preset Acceleration Acceleration slope output pulse is too low not 4 suitable for the requirement of drive speed Range R I Acceleration A Acceleration and deceleration 1 Deceleration D Option for individual deceleration I Initial Speed SV Driving Speed V Output Pulse Number P Only for fixed pulse driving The items should be preset in accordance with the requirement example of setting Trapezoidal Driving Shown in the figure right hand side acceleration is form the initial speed 500 PPS to 15 000 PPS in 0 3 sec Speed PPS 15 000 I Range R 4 000 000 Multiple M 2 I Acceleration A 193 15 000 500 0 3 248 333 48 333 125 M 193 H initial Speed SV 250 B00 M 250 I Drive Speed V 7 500 15 000 M 7 500 Please refer Chapter 6 Me Time SEC MCX314 2 2 3 S curve Acceleration Deceleration Driving In case of S curve acceleration deceleration driving Speed the acceleration profile is not linear The value of acceleration deceleration is shaped as the trapezoid Desired Drive see Fig 2 9 Speed V In acceleration there are three regions with different acc
113. n interpolation driving for main axis the decelerating stop and sudden stop commands can be written to stop the driving Once the driving stops this command will not work 8 8 Sudden Stop 27h Sudden stop in driving This command performs the sudden stop when the drive pulses are output Also the sudden stop can be performed in acceleration deceleration driving Once the driving stops this command will not work 60 MCX314 9 Interpolation Commands 9 1 Interpolation commands consist of the commands for 2 3 axes linear interpolation CW CCW circular interpolation 2 3 axes bit pattern interpolation and other related commands There is no need to make the axis assignment in setting bits D11 8 of command register WRO Please set 0 in those bits Tow procedures should be follow before the interpolation command is executed interpolation accessing axes assignment set in bits D5 DO of register WR5 Q speed parameter setting for master axis In interpolation driving bit D8 I DRV of main status register RRO becomes 1 and will return to 0 when the driving is finished In interpolation the n DRV bit of interpolating axis becomes 1 Note requires 250 nSEC maximum to access the command code when CLK 16MHz Please write the next command within this period of time 2 Axis Linear Interpolation 30h 2 axis linear interpolation This command performs 2 axis interpolation from present point to fini
114. n rns 31 3 Pin Assignments and Signal 02 2 2 22 0 0 0 0 0 12 33 AAA EE EERE ERMAN TAART ER 38 4 1 Register Address by 16 bit Data 7 4 2 38 4 2 Register Address by 8 bit Data 02 0 40 4 3 Command Register 0 2 0 0 2 2 2 2 7 07 4 0 70 0 2 2 4 4 41 4 4 Mode Register1 1 0 2 4 7177 nnns 41 4 5 Mode Register2 WR2 2 0 2 2 2 2 12 2 1 hn nnn 42 4 6 Mode Register3 1 2 1 22 43 4 7 Output Register 4 nee een n nnns 45 4 8 Interpolation Mode Register 5 1 12 45 4 9 Data Register WR6 WR7 2 4 1 1 2 2 420 2 2 027 0 44 4 4 4 2 2 46 4 10 Main Status Register 2 2 272 202 0 0 2 2 222 47 4 11 Status Register 1 1 2 7 7 242 2 7 2 2 2477 0 2 2 4 48 4 12 Status Register 2 RR2 2 ccc essen essem eset e s nnn
115. n value acc at time Speed 5 0 2sec we know the speed at time 0 2sec is 20K PPS So we 40000 get 20000 20000PPS 0 2sec x 2 SO acc 200K PPS sec 2 4 SEG To calculate the jerk we get Acceleration 9 9 PPSISEC 200KPPS 0 2sec 1000KPPS sec Pos In a complete S curve acceleration deceleration the speed 0 e gt curve is depended on the jerk Since the acceleration 0 2 0 4 SEC deceleration does not exit in the partial S curve it should be preset over than 200KPPS SEC Range R 800 000 multiple M 10 ll Jerk K 625 62 5 x 10 625 x 10 1 000KPPS SEC I Acceleration 160 125 160 x 10 200KPPS ll Initial Speed SV 100 100 x 10 1000KPPS Drive Speed 4000 4000x 10 40 000PPS Please refer each parameter in Chapter 6 MCX314 of Parameter Setting Partial S curve Acceleration Deceleration Setting a partial S curve acceleration to output the drive Speed PPS speed from 0 to 40K PPS in 0 6 sec penu At first a parabolic accelerating is executed to 10KPPS in 40000 0 2 sec then the linear acceleration goes up to 30KPPS 30000 and then the parabolic acceleration reaches to 40KPPS We get 10K PPS Acceleration x 0 2sec 2 Acceleration 100K PPS sec 10000 And the jerk is 0 100KPPS sec 0 2sec 500KPPS sec 02 9 06 SE Acceleration 5 5 Range 800 000 multiple 10 100K Jerk K 1250 62 5 x 10
116. ng Finishing These bits are keeping the factor information of driving finishing The factors for driving finishing in fixed pulse driving and continuous driving are shown as follows when all the drive pulses are output in fixed pulse driving when deceleration stop or sudden stop command is written when software limit is enabled and is active when external deceleration signal is enabled and active when external limit switch signals nLMTP nLMTM become active when nALARM signal is enabled and active and when EMGN signal is on the Low level Above factors and can be controlled by the host CPU and factor be confirmed by register RR2 even the driving is finished As for factors the error status is latched in RR2 until next driving command or a clear command 25h is written After the driving is finished if the error factor bits D15 D12 become 1 n ERR bit of main status register RRO will become 1 48 MCX314 Status bit of driving finishing can be cleared when next driving command is written or when the finishing status clear command 25h is used 4 12 Status Register 2 RR2 Each axis is with status register 2 The axis specified by NOP command or the condition before decids which axis s register will be read This register is for reflecting the error information Once the bit becomes 1 it reflects an error occurs When one or more of D5 DO bits of RR2 register are 1 n
117. nged during the driving The speed will be changed discontinuously 6 2 S curve Acceleration Rate Setting Data K is the parameter determining the increasing decreasing rate of acceleration deceleration in a time unit of S curve acceleration deceleration The jerk calculation is shown in the following formula 6 Jerk PPS SEC2 625100 00 5 posee Multiple Because the setting range of S curve acceleration is 1 65 535 the jerk range is shown as follows K 65535 1 When Multiple 1 954 PPS SEC 62 5 x 10 PPS SEC When Multiple 500 477 x 10 PPS SEC 31 25 10 PPS SEC In this manual jerk is defined the increasing decreasing rate of acceleration deceleration in a time unit However jerk should cover the decreasing rate of acceleration and increasing rate of acceleration 53 MCX314 6 3 Acceleration Setting Data Acceleration setting 1 8 000 2 bytes A is the parameter determining the acceleration or deceleration of the trapezoidal driving For S curve acceleration deceleration see fig 2 9 page 7 it shows the linear acceleration until a specific value A driving The acceleration calculation is shown in the following formula 8 000 000 Acceleration PPS SEC 125 1 Multiple For the range of A is from 1 8 000 the actual acceleration range is shown as follows A 1 A 8000 When Multiple 1 125 PPS SEC 1x 10 PPS SEC When Multiple 500 62 5 x
118. nnn 49 4 13 Status Register 3 4 2 27 7 27 7 7 2 44 4 244040 970 74 4 7 49 4 14 Input Register RR4 5 2 0 0 12 2 2 2 1 2 50 4 15 Data Read Register RR6 7 020 2 2 22 22212222 50 SI COMManGEIStS 51 6 Commands for Data 0 2 2 2 2 222 2 2 2 2 222222 2 2 2 2 4 2 53 Gal RANGE HTEEE 53 6 2 S curve Acceleration Rate Setting 0 20 22 2 2 2 2 2 53 6 3 Acceleration 442 1 442 221 2 54 6 4 Deceleration 22 2 222 0 54 6 5 Initial Speed Setting 2 7 4 4 4 0 00 4 4 0 4 7 22 54 6 6 Drive Speed 2 2 0 4 1 1 1 55 MCX314 6 7 Output Pulse Number Interpolation Finish Point
119. nterpolation data is calculated by CPU CPU writes the bit data into MCX314 Then MCX314 outputs pulses continuously at the preset driving speed So the user can process any interpolation curve by this mode Continuous Interpolation Different interpolation methods can be used continuously linear interpolation gt circular interpolation gt linear interpolation The maximum driving speed of performing continuous interpolation is 2 MHz Constant Vector Speed Control This function performs a constant vector speed During the interpolation driving MCX314 can set a 1 414 times pulse cycle for 2 axis simultaneous pulse output and a 1 732 time pulse cycle for 3 axis simultaneous pulse output Position Control Each axis has a 32 bit logic position counter and a 32 bits real position counter The logic position counter counts the output pulse numbers and the real position counter counts the feedback pulse numbers from the external encoder or linear scale B Compare Register and Software Limit Each axis has two 32 bit compare registers for logical position counter and real position counter The comparison result can be read from the status registers The comparison result can be notified by an interrupt signal These registers can be also functioned as software limits m Driving by External Signal It is possible to control each axis by external signals The direction fixed pulse driving and continuous driving can be also performed
120. olation driving for 3 axes enabling 2 20 000 15 000 MCX314 2 4 2 Circular Interpolation Any 2 axes of the 4 axes can be selected for circular interpolation The circular interpolation is starting from the current position start point After setting the center point of circular the finish position and the CW or CCW direction the user can start the circular interpolation Note The coordinates setting value is the relative value of the start point coordinates In Fig 2 19 it explains the definition of CW and CCW circular interpolations The CW circular interpolation is starting from the start point to the finish position with a clockwise direction the CCW circular interpolation is with a counter clockwise direction When the finish point is set to 0 0 a circle will come out In Fig 2 20 it explains the long axis and the short axis First we define 8 quadrants in the X Y plane and put the numbers ax2 A CCW circular interpolation Finish point Center Start point Finish point Start point CW circular interpolation Fig 2 19 CW CCW Circular Interpolation 0 7 to each quadrant We find the absolute value of ax1 is always larger than that of ax2 in quadrants 0 3 4 and 7 so we call ax1 is the long axis ax2 is the short axis in these quadrants in quadrants 1 2 5 and 6 ax2 is the long axis ax1 is the short axis The short axis will output pulses
121. omparisons of position counters Software limit functioned E interrupt Interpolations Excluded The factors of occurring interrupt the drive pulse outputting the start finish of a constant speed drive during the acceleration deceleration driving the end of the driving the volume of position counter volume of COMP the volume of position counter the volume of COMP the volume of position counter volume of COMP the volume of position counter the volume of COMP Enable disable for these factors selectable W External Signal for Driving EXPP and EXPM signals for fixed pulse continuous drive B External Deceleration Sudden Stop Signal INO 4 points for each axis Enable disable and logical levels selectable B Servo Motor Input Signal ALARM Alarm INPOS In Position Check Enable disable and logical levels selectable E General Output Signal OUTO 7 8 points for each axis wherein 4 points use with drive status output signal pin W Driving Status Signal Output ASND speed accelerating DSND speed decelerating CMPP position CMPM position Drive status and status registers readable B Limit Signals Input 2 points for each and side Logical levels and decelerating sudden stop selectable Emergency Stop Signal Input EMG 1 point for 4 axes W Electrical Characters Temperature Range for Driving 0 45 32 F 185 F Power Voltage for Driving 5V
122. on deceleration point automatically and will arrange the pulse numbers in acceleration equal to that in deceleration The method is calculating the output acceleration pulses and comparing them with the remaining pulses When the remaining pulses are equal to or less the pulses in acceleration it start the deceleration When setting the offset for deceleration MCX314 will start deceleration early for the offset The remaining pulses of offset will be driving output at the initial speed see Fig 2 5 The default value for offset is 8 when MCX314 power on reset It is not necessary to change the shift pulse value in the case of acceleration deceleration fixed pulse driving Driving Speed e Shift Pulse Initial Speed Time Fig 2 5 Remaining Pulse in Acc Dec Fixed Pulse 2 1 2 Continuous Pulse Driving Output When the continuous driving is performed MCX314 will drive pulse output in a specific speed until stop command or external stop signal is happened The main application of continuous driving is home searching teaching or speed control Two stop commands are for stopping the continuous driving One is decelerating stop and the other is Initial Speed sudden stop Four input pins IN3 INO of each axis can be connected i Time for external decelerating and sudden stop signals Enable nine disable active levels and mode setting are possible Driving Speed feng Stop Command or Ext
123. or servo driver in position YINPOS 85 Enable disable and logical levels can be set as commands When enable ZINPOS 95 is set and after the driving is finished this signal is active and standby n DVR bit of main status register returns to O UINPOS 114 XALARM 68 Input A Servo Alarm input signal for servo driver alarm YALARM 86 Enable disable and logical levels can be set as commands When it is ZALARM 96 enable and when this signal is in its active level the ALARM bit of RR2 register becomes 1 UALARM 115 69 Input A OVER Limit signal of direction over limit 87 During the direction drive pulse outputting decelerating stop or sudden 97 stop will be performed once this signal is active The active pulse width should be more than 2CLK Decelerating stop sudden stop and logical 116 levels can be set during the mode selection When it is enable and when this signal is in its active level the of RR2 register becomes 1 70 Input A OVER Limit signal of direction over limit 88 During the direction drive pulse outputting decelerating stop or sudden 98 stop will be performed once this signal is active The active pulse width should be more than 2CLK Decelerating stop sudden stop and logical 117 levels be set during the mode selection When it is enable and when this signal is in its active level the HKMT of RR2 register becomes 1 0 The signal status can be read from register RR4
124. output OUT3 0 OUT3 0 General output OUT7 4 OUT7 4 Note 1 EMGN is for all axes use Fig 1 2 Control Block Diagram MCX314 2 The Descriptions of Functions 2 1 Pulse Output Command There are two kinds of pulse output commands fixed pulse driving output and continuous pulse driving output 2 1 1 Fixed Pulse Driving Output When host CPU writes a pulse numbers into MCX314 for fixed pulse driving and configures the performance such as acceleration deceleration speed MCX314 will generate the pulses and output them automatically When output pulse numbers are equal to the command pulse numbers MCX314 stops the output The profile is showing in Fig 2 1 Concerning the execution of fixed pulse driving in acceleration deceleration it is necessary to set the following parameters I Range R Driving Speed I Acceleration Deceleration A D 1 E Initial Speed SV Auto Deceleration Driving Speed V Initial Speed llQutput Pulse Numbers P nitial Spee Specific Output Pulse Finished gt Fig 2 1 Fixed Pulse Driving Time iChanging Output Pulse Numbers in Driving The output pulse numbers can be changed in the fixed pulse driving If the command is for increasing the output pulse the pulse output profile is shown as Fig 2 2 or 2 3 If the command is for decreasing the output pulses the output pulse will be stopped immediately as shown in Fig 2 4 Driving Speed Furthermore when in the S curve
125. owing figures show the connecting examples of motor driver and photo coupler line driver Photo coupler input interface 45V or CW4 XP 4N CW L 45V or CCW XP P A vk XP N CCW L3 Line driver input interface XP 4P XP4N l Am26LS32 m d iL XP N ccw 3 Am26LS32 Twist pair with shiel GND GND wist pair with shield Motor Driver side MCX314 3 4 General Purpose Output Signal nOUT7 nOUT4 General purpose output signals NOUT7 DSND nOUT6 ASND nOUT5 CMPM and nOUT4 CMPP are output through buffer 74LS06 Each output signal is OFF while resetting MCX314 nOUT7 DSND gt o O nOUT7 nOUT6 ASND gt lt OnOUT6 nOUTS CMPM gt OnOUT5 nOUT4 CMPP ps nOUT4 74LS06 O GND DSND and ASND used for acceleration deceleration status output CMPM and CMPP are used for position counter and compare register Please refer to Chapters 2 6 8 and 4 6 of MCX314 manual for general purpose output Chapters 2 6 7 and 4 6 for acceleration deceleration status output and Chapters 2 3 and 4 6 for the comparison status of position counter and compare register 3 5 Over Limit Signal nLMT nLMT Over limit signals are used for halting direction drive pulses This input signal is connected to the limit input of MCX314 through the connection of photo coupler and RC filter External DC12 24V pow
126. peed for 2 axis driving X gt Fig 2 26 Example of 2 axis interpolation o Oonstant Vector Speed Set up The user should first set the values of D9 and D8 of register WRBto 0 and 1 set the range R of salve axis ax2 to be 1 414 times of the value of the master axis ax1 Therefore MCX314 will use the range parameter of master axis if only 1 axis outputs pulses However when 2 axes output pulses simultaneously MCX314 will use the range parameter of slave axis to implement the pulse period to 1 414 times 9 Example of Constant Vector Speed Interpolation for 2 Axes As shown below the master axis ax1 X axis the slave axis ax2 Y axis and the interpolation is at a constant vector speed 1000PPS The result of driving pulse output is shown in Fig 2 27 19 MCX314 WR5 WR6 WR7 WRO WR6 WR7 WRO WR6 WRO WR6 4 TTT TTT TTT 0104h 0900h 003Dh 0100h 4DCOh 0056h 0200h 01F4h 0104h 01F4h write write write write write write write write write write XPP XPM YPP YPM define ax1 X axis ax2 Y axis constant vector speed setting parameter of the master axis range 4 000 000 multiple 2 range of 2 axis constant vector speed 4 000 000x1 414 5 656 000 initial speed 500x2 1000PPS drive speed 500x2 1000PPS WRO lt 0105h WR6 lt O3E8h WR7 lt 0000h WRO lt 0106h WR6 lt 0190h WR7
127. per pulse type servo motor drivers Linear interpolation for any 2 or 3 axes Circular interpolation for any 2 axes Bit pattern interpolation for any 2 or 3 axes MC8041A equipped with our 4 axis motion control IC MCX314 can be directly connect to the ISA bus expansion slot on PCs and their compatible machines The following is the functional blocks of MC8401A including MCX314 ISA BUS interface and each interface Please refer MCX314 manual for the functions in details X axis interface ISA Crystal oscillator XP P N 2 REM Pulse output BUS 16MHz XP P N d Output buffer XOUT7 4 74LS 06 XOUT7 4 General output RESETDRV External power DC12 24V XLMTP Photo coupler amp XLMT Limit input XLMTM RC filter XLMT Limit input 1 0 add XIN3 1 XIN3 1 Deceleration input setting switch XINPOS AY XINPOS Servo motor signal XALARM XALARM Servo alarm High speed photo AEN T Address ae poem XECBP N Encoder signal input SA15 4 CSN decoder XINPO XINPO N MCX314 10 516 Photo coupler amp RC filter WRN Y Axis Interface i identical to the Input Output interface of X axis Bi direction buffer identical to the Input Output interface of X axis 03 o os O U xis Interface IROT i identical to the Input Output interface of X axis O ROI 2
128. putting Enable disable and logical levels can be set When the mode is enabled the drive pulse output is stopped once the signal is active during the driving 45 MCX314 470 e O nECAP M 220 lt P i O nECAN nECA PPIN 45 470 O nECBP B 220 nECB PPIM lt gt O nECBN 5 470 O NINOP B 220 nINO lt gt O NINON TLP2630 or PC9D10 Circuit Diagram of Encoder Feedback Shown in the circuit diagram above high speed photo coupler TLP2630 TOSHIBA or PC9D10 SHARP is used The encoder output can be differential line driver or open collector The figure below shows when n P is on the Hi level and n N is on the Low level the signal of MCX314 is on the Low level when n P is on the Low level and n N is on the Hi level the signal of MCX314 is on the Hi level For the signal delay time from input pin to MCX314 signal terminal is less than 100nSEC the maximum 4MHz counting is possible for 2 phase pulse input SE ee Input signal p 9 n N MCX314 signal n I X E xr XECAN Am26L531 XECBP X E XECBN XINOP X ACH XINON T Encoder Side Example of the Connection for Differential Output Line driver MCX314 The following figure shows the connection of encoder input signal and open collector output encoder XECAP XECAN XECBP XECBN XINOP
129. r It does not matter to write WR6 WR7 first when 8 bit data bus is used the registers are WR6L WR6H WR7L and WR7H The written data is binary formatted 2 complement is for negatives For command data the user should use designated data length For instance to set the finish point of circular interpolation is using 4 bytes Even the calculation range 8388608 833607 is 24 bit long the user should fill the total 32 bytes The contents of WR6 and WR7 are unknown while resetting 46 MCX314 4 10 Main Status Register RRO This register is used for displaying the driving and error status of each axis It also displays interpolation driving ready signal for continuous interpolation quadrant of circular interpolation and stack counter of bit pattern interpolation 015 014 013 012 D11 D10 D D2 D1 7 D4 aici Ei ERR DRV Status of Each n BU Status of Each m 03 0 n DRV Displaying driving status of each axis When the bit is 1 the axis is outputting drive pules when the bit is 0 the driving of the axis is finished Once the in position input signal nINPOS for servo motor is active nINPOS will return to 0 after the drive pulse output is finished 07 4 n ERR Displaying error status of each axis If any of the error bits D5 DO of each axis s RR2 register and any of the error finish bits D15 D12 of each axis s RR1 register becomes 1 this bit will become 1 D8 I DRV Displaying inte
130. r Limit Error of Interpolation When the hardware limit or the software limit of each axis is active during the interpolation driving the interpolation will stop It the stop is occurred by errors RRO main status register will confirm the error bit of the designated interpolating axis PRO will become 1 and RR2 error register of this axis will be read out Note In case of circular or bit patter interpolation the active of hardware or software limit in either or direction will stop the interpolation driving position Signal for Servo Motor During the interpolation driving when the in position signal nINPOS of each driving axis is active and also when the interpolation is finished the INPOS signal of the axis is stand by at its active level and D8 I DRV of RRO register returns to 0 2 4 1 Linear Interpolation Any 2 or 3 axes of the 4 axes can be set for linear interpolation To execute the linear interpolation the user can according to the present point coordinates 10 set the finish point coordinates and the interpolation command s for 2 or 3 axes As shows in Fig 2 17 the proceeding for linear interpolation is performing from the start point to the finish point For individual axis control the command pulse number is unsigned and it is controlled by direction command or direction command For interpolation control the 0 5 10 15 command pulse number is signed The resolution of linear interpolation
131. ration in interpolation 9 14 Interpolation Interrupt Clear 3Dh Interpolation interrupt clear This command clears the interrupt in bit pattern or continuous interpolation After the bit D15 of WR5 is set to 1 in bit pattern interpolation the stack counter SC is changed from 2 to 1 and the interrupt will be generated In continuous interpolation when the bit D14 of WR5 is set to 1 the interrupt will be generated when it is ready to write the interpolation data for next node 63 MCX314 10 Connection Examples 10 1 Connection Example for 68000 CPU 68000 Clock generator 16MHz MCX314 CLK A pull up resistance dG Add decoder 45V RI S 9 A0 Q lt 5 gt 7415348 rU 7 1 PDQ DO 7415138 B TORQ 5V form system reset signal Clock generator 16MHz RDN WRN D15 DO A2 A1 CSN INTN H16L8 RESETN MCX314 CLK RDN H o gt SI lt lt IN N o Pull up resistance E ZZ from system reset signal 64 WRN CSN A3 A2 D7 DO D15 D8 H16L8 RESETN 10 3 Connection Example M
132. re The bits of nWR1 nWR2 nWR3 nWR4 and nWRS5 will be cleared 0 after the resetting It will be unknown for other registers 000 X axis mode register 3 for setting the manual deceleration Y axis mode register 3 individually decelerating and S curve Z axis mode register 3 acceleration deceleration mode for each axis U axis mode register 3 external operation mode and general purpose output OUT7 4 axis in bit pattern interpolation 0 1 1 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 38 MCX314 Read Register in 16 bit Data Bus All registers are 16 bit length Address ul Main status register error status driving status ready for interpolation quadrant for circle interpolation and the stack of BP X axis status register 1 comparison result acceleration status and Y axis status register 1 finishing status Z axis status register 1 U axis status register 1 X axis status register 2 error message Y axis status register 2 Z axis status register 2 U axis status register 2 X axis status register 3 Y axis status register 3 interrupt message Z axis status register 3 U axis status register 3 Input register 1 input for X and Y axes O input for Z and U axes Data reading register 1 low word of data register D15 DO Data reading register 2 high word of data register D31 D16 Each axis is with WR1 WR2 mode registers Each register is for 4 axis data writing at the same address
133. regularly and the long axis will output pulses depending on the interpolation calculation In Fig 2 21 itis an example to generate a circle with the center point 11 0 and the finish point 0 0 Its radium is 11 In Fig 2 22 shows the pulse output O istart point finish point e track of interpolation solid line circle with radium 11 dash line circle with radium 11 Y ax2 A ue 2 amp Mal aid ax2 TE 6 2 2 axi Fig 2 20 The 0 7Quadrants And Short Axes in Circular Interpolation Calculation XPP IL _ XPM IL UL TI n YPM Quadrant 4 0 gt lt 1 gt 2 gt 3 gt 4 gt 5 gt 6 gt lt 7 Fig 2 22 The Example of Pulse Output in Circular Interpolation Driving 14 9 The Finish Point Checking of Circular Interpolation In the circular interpolation it assumes that the current position start point is 0 0 After the coordinates of the center point is set the radium will be decided and the circular tracking will start The maximum error range of interpolation is with in TLSB Because of the TLSB error range the designated finish point may not on the circular track The IC will make an in position checking by the short axis If the value of finish point is as same as that of short axis this circular interpolation is finished Fig 2
134. resetting When this bit is set to 1 but others are 0 the IC will be reset after command writing After command writing the BUSYN signal will be on the Low level within 875 nSEC When CLK 16 MHz maximum When 8 bit data bus is used the reset is activated when the command 80h is written to register WROH RESET bit should be set to 0 when the other commands are written 4 4 Mode Register1 WR1 WR1 Each axis is with mode register WR1 The axis specified by NOP command or the condition before decide which axis s register will be written The register consists of the bit for setting enable disable and enable logical levels of input signal IN3 INO decelerating stop sudden stop during the driving and bit for occurring the interrupt enable disable Once IN3 IN1 are active when the fixed pulse continuous pulse driving starts and also when IN signal becomes the setting logical level the decelerating stop will be performed during the acceleration deceleration driving and the sudden stop will be performed during the constant speed driving H L 215 D14 012 012 011 010 07 04 02 01 C STA gt lt P C nus IN3 E To L Ts E IN2 L TE E IN1 L INO E No L END E Interrupt Enable Disable Driving Stop Input Signal Enable Disable 07 5 3 1 INm E bit for setting enable disable of driving stop input signal INm 0 disable 1 enable D6 4 2 0 INm L bit for setting enable logical levels
135. rnal pull high and buffered by Smith trigger MCX314 5V 5 3 3k 5 10k 3 3k 0 12 24V 1 M 0 014 v 5 TLP121 Wd The response time of this loop is about 0 2 0 4 MSEC 10 6 Connection Example for Encoder The following diagram is the example for the encoder signal which is differential line drive output Then this signal can be received through the high speed photo coupler IC which can direct it to MCX314 MCX314 5V 220 EX 5 yeca VW i WK 66 11 Example Program MCX314 The example C program for MCX314 can complied by Turbo C 4 0 and the operation system DOS V include lt stdio h gt include lt conio h gt mcx314 register address definition define adr 0x280 Basic address define wrO 0 0 Command register define wr1 0 2 Mode register 1 define wr2 0 4 Mode register 2 define wr3 0 6 Mode register 3 define wr4 0 8 Output register define wr5 Interpolation mode register define wr6 Low word bits data writing register define wr7 High word bits data writing register define rrO 0 0 define rr 0x2 define rr2 0 4 define rr3 0 6 define rr4 0x8 define rr5 define rr6 define rr7 Main status register Status register 1 Status register 2 Status register 3 nput register 1 register 2 Low word bits
136. rpolation driving status While the interpolation drive pulses are outputting the bit is 1 D9 CNEXT Displaying the possibility of continuous interpolation data writing When the bit is 1 it is ready for inputting parameters for next node and also ready for writing interpolation command data D12 10 ZONEO Displaying the quadrant of the current position in circular interpolation ZONE1 ZONE2 D10 ciae ot 014 13 5 1 0 In bit pattern interpolation driving it displays the value of the stack counter SC 4 Stack Counter SC Value 0 1 0 1 In bit pattern interpolation driving when SC 3 it shows the stack is full When SC 2 there is one word 16 bit space for each axis When SC 1 there is a 2 word 16 bit for each axis When SC 0 it shows all the stacks are empty and the bit pattern interpolation is finished 47 MCX314 4 11 Status Register 1 RR1 Each axis is with status register 1 The axis specified by NOP command or the condition before decide which axis s register will be read The register can display the comparison result between logical real position counter and COMP the acceleration status of acceleration deceleration driving jerk of S curve acceleration deceleration and the status of driving finishing H L 015 014 013 012 D11 D10 D D2 D1 7 D4 i it ld d ll bal nila Stop Status DO CMP
137. rrupt outputting an interrupt signal to the host CPU If any interrupt factor occurs the interrupt the level is Low when the interrupt is released it will return to the Hi Z level SCLK Output A System Clock SCLK CLK 2 All the signals in MCX314 are controlled and synchronized by internal SCLK When the output signal of each axis is latched it can be used as an external signal source There is no SCLK output when RESETN is on the Low level XPP PLS Pulse Pulse direction dive pulse outputting YPP PLS Output When the reset is on the Low level and while the driving is starting DUTY ZPP PLS 50 at constant speed of the plus drive pulses are outputting or pulse mode is selectable When the 1 pulse 1 direction mode is selected this terminal is for drive output UPP PLS 34 MCX314 Input Signal Signal Description XPM DIR 3 Pulse Pulse direction dive pulse outputting YPM DIR 3 Output A When the reset is on the Low level and while the driving is starting DUTY 4 50 at constant speed of the plus drive pulses are outputting 4 or pulse mode is selectable When the 1 pulse 1 direction mode is selected this terminal is direction signal XECA PPIN 4 Encoder A Pulse in signal for encoder phase A input YECA PPIN 4 Input A This input signal together with phase B signal will make the Up Down ZECA PPIN 4 pulse transformation to be the input count of real position counter When the
138. s the parameter determining the speed of constant speed period in trapezoidal driving In constant speed driving the drive speed is the initial speed The drive speed calculation is shown in the following formula 8 000 000 LV d Multiple Drive Speed PPS Vx If the setting drive speed is lower than the initial speed the acceleration deceleration will not be performed and the driving is constant speed During the encoder Z phase searching at a low peed driving if the user want to perform the sudden stop once the Z phase is detected the drive speed should be set lower than the initial speed Drive speed can be altered during the driving When the drive speed of next constant speed period is set the acceleration deceleration will be performed to reach the new setting drive speed then a constant speed driving starts Note fixed pulse S curve acceleration deceleration driving there is no way to change the drive speed during the driving In continuous S curve acceleration deceleration driving the S curve profile cannot be exactly tracked if the speed alterations during the acceleration deceleration it is better to change the drive speed in the constant speed period In fixed pulse trapezoidal driving the frequent changes of drive speed may occur residual pulses in the ending of deceleration 6 7 Output Pulse Number Interpolation Finish Point Setting Data 06h Output pulse number interpolation
139. sh point Before driving the finish point of the 2 corresponding axes should be set by incremental value 9 2 3 Axis Linear Interpolation 8th 3 axis linear interpolation This command performs 3 axis interpolation from present point to finish point Before driving the finish point of the 3 corresponding axes should be set by incremental value 9 3 CW Circular Interpolation CW circular interpolation This command performs 2 axis clockwise circular interpolation based on center point from present point to finish point Before driving the finish point of the 2 corresponding axes should be set by incremental value A full circle will come out If the finish position is set 0 0 9 4 CCW Circular Interpolation 9 5 CCW circulator interpolation This command performs 2 axis counterclockwise circular interpolation based on center point from present point to finish point Before driving the finish point of the 2 corresponding axes should be set by incremental value A full circle will come out If the finish position is set 0 0 2 Axis Bit Pattern Interpolation 61 MCX314 Code Command 34h 2 bit pattern interpolation This command performs 2 axis bit pattern interpolation Before driving the direction bit data of the two interpolating axes should be set and the setting bit data of each axis each direction is at most 16 3 48 bit Once the data is over than 48 bit those remaining data
140. sition counter setting 2 147 483 648 2 147 483 647 4 bytes LP is the parameter setting the value of logic position counter Logical position counter counts Up Down according to the direction pulse output The data writing and reading of logical position counter is possible anytime 6 11 Real position Counter Setting Data Real position counter setting 2 147 483 648 2 147 483 647 4 bytes EP is the parameter setting the value of real position counter Real position counter counts Up Down according to encoder pulse input The data writing and reading of real position counter is possible anytime 6 12 Register Setting Data COMP register setting 2 147 483 648 2 147 483 647 CP is the parameter setting the value of COM register register is used to compare with logical real position counter and the comparison result will be output to bit DO of register RR1 or NOUT4 CMPP signal Also it can be used as the direction software limit The value of COMP register can be written anytime 6 13 COMP Register Setting Data COMP register setting 2 147 483 648 2 147 483 647 CM is the parameter setting the value of COMP register register is used to compare with logical real position counter and the comparison result will be output to bit DO of RR1 register or NOUT5 CMPM signal Also it can be used as the direction software limit The value of COMP
141. speed 0x1 100 Drive Speed 1000 PPS constant speed pulse 0x1 5000 xP 5000 Finish point X 5000 pulse 0x2 2000 yP 2000 Finish point Y 2000 90 0x30 2 axis linear interpolation wait 0x3 Circular interpolation drive at X and Y axes outpw adr wr5 0 0124 ax1 x ax2 ax3 z linear speed keeps constant range 0x1 800000 range 0x2 1131371 speed 0x1 100 center 0x1 5000 center 0x2 0 pulse 0x1 0 pulse 0x2 0 command 0x0 0x33 wait 0x3 I Bit pattern interpolation at X and Y axes Example of figure 2 24 speed 0x1 1 speed command 0 0x36 ax1 R 800000 Multiple 10 Tax2 R 800000 x 1 414 Drive Speed 1000 PPS constant speed xC 5000 Center of X 5000 yC 0 Center of Y 0 xP 0 Finish point of X 0 Circle IyP 0 Finish point of Y 0 CCW circular interpolation Drive Speed 10 PPS constant Bit pattern data writing permission outpw adr bp1p 0x0000 0 15 bits data writing outpw adr bp1m Ox2bff outpw adr bp2p Oxffd4 outpw adr bp2m 0x0000 command 0 0x38 Stack outpw adr bp1p Oxf6fe outpw adr bp1m 0x0000 outpw adr bp2p 0 0007 outpw adr bp2m 0 31 0 command 0 0x38 16 31 bits data writing outpw adr bp1p Ox1fdb outpw adr bp1m 0x0000 outpw adr bp2p OxOOff outpw adr bp2m 0 00 command 0 0x38 32 47 bits data writing
142. ss Write Register Read Register SA3 SA2 SA1 Symbol Register Name Symbol Register Name 0 0 0 WRO Command Register RRO Main status register 0280h 0 0 1 XWR1 X axis mode register 1 XRR1 X axis status register 1 Y WR1 Y axis mode register 1 YRR1 Y axis status register 1 0282h 2 2 axis mode register 1 ZRR1 Z axis status register 1 U WR1 U axis mode register 1 URR1 U axis status register 1 0 1 0 XWR2 X axis mode register 2 XRR2 X axis status register 2 Y WR2 Y axis mode register 2 YRR2 Y axis status register 2 0284h Z WR2 Z axis mode register 2 ZRR2 Z axis status register 2 U WR2 U axis mode register 2 URR2 U axis status register 2 BP1P BP1P register 0 1 1 XWR3 X axis mode register 3 XRR3 X axis status register 3 Y WR3 Y axis mode register 3 YRR3 Y axis status register 3 0286h Z WR3 Z axis mode register 3 ZRR3 Z axis status register 3 U U axis mode register URR3 U axis status register 3 BP1M BP1M register 1 0 0 WR4 Output register RR4 Input register 1 0288h BP2P BP2P register 1 0 1 WR5 Interpolation mode register RR5 Input register 2 028Ah BP2M BP2M register 1 1 0 WR6 Data writing register 1 RR6 Data reading register 1 028Ch register 1 1 1 WR7 Data writing register 2 RR7 Data reading register 2 028Eh BP3M BP3M register MCX314 3 1 0 Interfaces This chapter describes connector I O signals The standard ISA bus is used as the board edge connector Here the signal introduction jus
143. ssignment data For circular center point C setting void center int axis long wdata a outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp outpw adr wr0 axis 8 0x08 e b 1 assignment data For logical position counter LP setting void Ip int axis long wdata a outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp outpw adr wr0 lt lt 8 0x09 e b ep axis assignment data For real position counter EP setting void ep int axis long wdata a outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp outpw adr wr0 axis lt lt 8 0 0 e b compp axis assignment data For COMP CP setting 67 MCX314 void compp int axis long wdata a outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp outpw adr wr0 axis lt lt 8 OxOb compm axis assignment data For COMP CM setting void compn int axis long wdata a outpw adr wr7 wdata gt gt 16 amp Oxffff outpw adr wr6 wdata amp outpw adr wr0 axis lt lt 8 0 0 b accofst axis assignment data For acceleration counter shift AO setting void accofst int axis long wdata outpw adr wr7 wdata gt gt 16 amp outpw adr wr6 wdata amp OXffff outpw adr wr0 axis lt lt 8 0 00 b readlp ax
144. t OUTS 0 BP2P BP2P register for setting the direction bit data of the second axis in bit pattern interpolation WR5 Interpolation mode axis assignment register for settings the constant speed driving mode step output mode and interrupt BP2M BP2M register for setting the direction bit data of the second axis in bit pattern interpolation WR6 Data writing register 1 for setting the low word 16 bit 015 00 for data writing register for setting the direction bit data of the third axis in bit pattern interpolation WR7 Data writing register 2 for setting the high word 16 bit D31 D16 for data writing BP3M register for setting the direction bit data of the third axis in bit pattern interpolation Each axis is with WR1 WR2 and WR3 mode registers Each register is for 4 axis data writing at the same address Before those registers have been accessed the host CPU should specify which axis is going to be accessed by writing a NOP command into WRO The register for bit pattern interpolation are BP1P 3P and BP1M 3M After the resetting the data writing cannot be performed until the enable command 36h is engaged by BP register After the command 36h is enabled the data writing cannot be performed in nWR2 3 So the disable command 37h should be engaged after the bit pattern interpolation data is written Please be noted that registers WR6 and WR7 and BP3M share the same register hardwa
145. t focuses on the pins used for MX8041A nOOOO represents any one of X Y Z and U axes 3 1 Descriptions of ISA BUS Signals Pin Signal Name Descriptions vO Pin Signal Name S07 VO B2 RESTORV Reset Signal lo Bs Power _ A So a sa a Vo B5 ss a Vo B6 So a Vo er SD a Vo SD a Vo B Mo 60 EN plc qe d B SE ESS SA15 OW Read 15 TEES o SATB SA14 9 8 13 14 15 16 17 18 19 20 21 5 22 5 B23 S B24 S B25 S B26 SA4 B27 S B28 S B29 S B30 S B31 D1 D2 D3 D4 D5 D7 D10 S D11 D12 D13 D14 E Output 06 interrupt Request Signal Output Output Output Output A2 P GND SA SA se SA SM SA SA DES Se Output Output Output T Output Output ELIT Output E ne S08 3 5 o o cic 7 1 D8 SD10 SD11 SD12 SD13 SD14 SD15 B13 B14 B15 B16 B17 B18 B19 B20 B21 B22 B23 B24 B25 B26 B27
146. te write write write write map ax1 to X axis ax2 to Y range 8 000 000 Multiple 1 initial speed 1 000PPS drive speed 1 000PPS finish point of X axis 300 finish point of Y axis 200 MCX314 Ya 0 100 200 300 X 100 200 300 200 linear interpolation driving for 2 axes enabling 9 example of linear interpolation for 3 axes Executing linear interpolation drive for X Y and Z axes from the current position to the finish position X 15 000 Y 16 000 Z 20 000 The initial speed 500PPS acceleration deceleration 40 000PPS SEC drive speed 5 000PPS WR5 WR6 WR7 WRO WR6 WRO WR6 WRO WR6 WRO WR6 WR7 WRO WR6 WR7 WRO WR6 WR7 WRO WRO WRO lt TTT TEF ETE EET T 0024h 1200h 007Ah 0100h 0140h 0102h 01F4h 0104h 1388h 0105h 3A98h 0000h 0106h 3E80h 0000h 0206h 4E20h 0000h 0406h 003Bh 0031h write write write write write write write write write write write write write write write write write write write write write define ax1 X axis ax2 Y axis ax3 Z axis range 8 000 000 Multiple 1 accel decel speed 40 000 SEC 40 000 125 1 320 140h initial speed 500PPS drive speed 5 000PPS finish point of X axis 15 000 finish point of Y axis 16 000 finish point of Z axis 20 000 deceleration enabling linear interp
147. terpolation process with the same value and the driving becomes constant speed If the host CPU writes single step command into MCX314 at most 1 MSEC the user should set the drive speed more than 1000PPS Set interpolation data start point center point Write interpolation command Although the interpolation command is enabled there is no pulse output because the single step is command controlled Write the single step interpolation command 3Ah The driving pulses according to the interpolation calculation will be output for each axis The user may use command 3Ah for single step until the interpolation driving is finished If the user wants to stop sending single steps during the interpolation he can use the sudden stop command 27h then wait for more than 1 pulse cycle and then write the command 3Ah again to stop the driving After this all the following 3Ah commands will not be active External Signal Controlled Single step Interpolation The EXPLSN pin 29 is used for the single step interpolation from the external signal The user can set D11 of register WR5 to 1 to enable the external signal controlled single step interpolation Normally the EXPLSN input signal is on the Hi level When it changes to Low the interpolation step will be output The operating procedure is shown as follows Set 011 of register WR5 to 1 It will enable the external signal controlled single step interpolation Q Set t
148. the process of constant vector speed the pulse width of high level of output waveform will not be changed yet kept in the same width The pulse cycle will be changed to 1 414 or 1 732 times 20 2 4 5 Continuous Interpolation The continuous interpolation is executing a series of interpolation processes such as linear interpolation Circular interpolation finear interpolation During the continuous interpolation the driving will not stop contrarily The pulses are outputcontinuously When executing the continuous interpolation the host CPU has to write the next interpolation command into MCX314 before the previous interpolation command is finished Qontinuous Interpolation in Using D9 of RRO If D9 CNEXT of register RRO is 1 14 is ready to accept the next interpolation command If D9 is 0 the host CPU is not able to write the next interpolation command into MCX314 The D9 will become 1 only when the present command is executed MCX314 will not accept the next command and the D9 is 0 if the present command has not been executed So the standard procedure of continuous interpolation is first to write and enable the interpolation data and command then check if D9 of RRO is 1 or 0 And then repeat writing commands and checking D9 The flow chart is shown at the right side 9 D14 of register WR5 is used for enable or disable the interrupt during the continuous interpolation After setting D14 of reg
149. the sudden stop command 27h to register WRO Q Reset software limit Write 800h to register WRO to reset software limit 2 6 7 Status Output Speed nDRIVE output signals and bits D3 0 n DRV of register Acceleration Constant speed Deceleration Stop RRO can be used for drive stop status output of each axis e The driving status of acceleration constant speed deceleration will be output to bits D2 ASND D3 CNST and 04 DSDN and also the signals nOUT6 ASND and nOUT7 DSND will show the levels However these output signals and general purpose output signals share the same Time terminal D7 OUTSL bit of register WR3 should be set 1 gt for drive status output D D ND ND poo o o o iw iw Low Acceleration 1 1 0 o H H iw ConstantSpeed 1 1 0 Hi Low low Deceleration 1 0 o 1 Hi Low Hi Moreover in S curve accelerating decelerating driving the state of acceleration constant speed deceleration will be also shown to bits D5 AASND D6 ACNST and D7 ADSND of register RR1 2 6 8 General Purpose Output In MCX314 there are 8 general purpose output pins NOUT3 0 amp nOUT7 4 for each axis However during the outputting nOUT7 4 cannot be used cause they share the same terminals with the position comparison output and drive status output NOUT3 0 be output when the output levels of register WR4 have been set If the user w
150. ts and the counting range is between 2 147 483 648 2 147 483 647 The negative is in 2 s complement format The counter value is random while resetting 2 3 2 Compare Register and Software Limit Each axis has as shown in Fig 2 15 two 32 bit registers which can compare the logical positions with the real positions The logical position and real position counters are selected by bit D5 CMPSL of register WR2 The main function of COMP Register is to check out the upper limit of logical real position counter When the value the logical real position counters are larger than that of COMP Register bit DO CMP of register RR1 will become 1 On the other hand COMP Register is used for the lower limit of logical real position counter When the value of logical real position counter become smaller than hat of COMP Register bit D1 CMP of register RR1 will become 1 Fig 2 16 is an example for COMP 10000 COMP 10000 RR1 D0 0 CM RR1 D0 0 CP RR1 D0 1 COMP register CP 10000 RR1 D1 1 RR1 D1 0 RR1 D1 0 COMP register CM 1000 a a ae a 1000 0 10000 Fig 2 16 Example of Register Setting COMP and COMP registers can be used as software limit When DO and D1bits of register WR2 are set to 1 it enables the software limit In driving if the value of logical real counter is larger than COMP the decelerating stop will be performed and DO SLMT of register RR2 will change
151. tting Please don t change J2 jumper for interrupt request signal setting J3 jumper for drive pulse 5V switching see Chapter 3 3 J4 jumper for selecting EMG signal active level see Chapter 3 9 MCX314 8 Specifications m Axial Control 4 axes m ISA Bus Interface Data Bus 16 bytes Address 16 bytes Interrupt 4 5 6 7 10 11 12 14 15 connectable m Interpolation Linear Interpolation any 2 3 of 4 axes Range 8 388 608 8 388 607 Accuracy 0 5LSB Speed 1PPS 4MPPS Circular Interpolation any 2 of 4 axes Range 8 388 608 48 388 607 Accuracy 1LSB Speed 1PPS 4MPPS Bit Pattern Interpolation any 2 3 of 4 axes for CPU calculation Continuous Interpolation performing linear and circular interpolations continually Highest drive speed of continuous interpolation 2MHz Other functions interpolating axes selection constant surface speed control interpolating steps performance for each axis Drive pulse Output Pulse Output Interface line driver 26LS31 output Pulse Output Speed Range 1PPS 4MPPS Pulse Output Accuracy within 0 1 according to the setting speed Jerk 954 31 25 409 5 52 Accelerating Decelerating Speed 125 500 9 PPS S Drive Speed 1 4 40 PPS Output pulse Number 0 268435455 unlimited Speed Profile quadrature trapezoidal parabolic S curve Index Drive Deceleration Mode auto manual Output pulse numb
152. us interpolation There is only one interrupt signal INTN 33 to the host CPU So the signal will be OR calculated then output as shown in Fig 2 31 X Axis INT YAxis INT Z Axis INT U Axis INT Interpolation control unit INT INTN 33 Figure 2 31 Interrupt Signal Path in IC Every interrupt can be enabled or disabled individually During the power resetting all interrupt signals are disabled B Interrupt of X Y Z and U Axes The following table shows the interrupt factors generated by X Y Z and U axes Enable Disable Status The Factors of Interrupt Happening nWR1 Register nRR3 Register D8 PULSE DO PULSE D10 P C D2 P C D11 P lt C D3 P lt C D12 P2C4 D13 C END 5 C END D14 C STA D6 C STA when one pulse outputs rising edge of pulse output for direction driving once the value of logical real position counter is larger than or equal to the value of COMP register CM once the value of logical real position counter is smaller than the value of COMP register CM once the value of logical real position counter is larger than the value of COMP register CM once the value of logical real position counter is smaller than or equal to the value of COMP register CM in the acceleration deceleration driving when the driving changes from the constant speed region into the d
153. ving SCLK WRN 7 1 Drive command write in BUSYN 1st pulse 2nd pulse re en The final nPLS pulse nDIR _ Pre stateX valid level nDRIVE __ 2 nASND valid level nDSND This first driving pulses nPP nPM and nPLS will be output after 3 SCLK cycles when BUSYN is f The nDIR direction signal is valid after 1 SCLK cycle when BUSYN is f The dDRIVE becomes Hi level when BUSYN is f The nASND and nDSND are on invalid level after 3 SCLK cycles when BUSYN is 7 7 MCX314 13 3 Interpolation SCLK WRN BUSYN nPP nPM 1 2 nPLS 4 st pulse nd pulse nDIR invalid valid level invalid valid level invalid nDRIVE c The first pulses nPP nPM and nPLS of interpolation driving will be output after 4 SCLK cycles when BUSYN is f nDRIVE will become Hi level after 1 cycle when BUSYN is 7 DIR signal keeps the active level in 1 SCLK cyc
154. when the acceleration rate reaches 0 gt Time Acceleration a Decrease the Acceleration value A Time fonce become zero Dec begins OR equest for Decelerating Stop Fig 2 11 Decelerating Stop During S curve Dec Driving i Constraints for S curve Acceleration Deceleration Driving The drive speed cannot be changed during the fixed pulse S curve acceleration deceleration driving When the fixed pulse S curve acceleration deceleration driving is performed the change of the output pulse numbers during the deceleration will not result a normal S curve driving profile In case of executing circular interpolation bit pattern interpolation and continuous interpolation S curve acceleration deceleration cannot be executed normally If the S curve output pulses run out before the deceleration to the initial speed the user can use offset function When the S curve output pulses are decelerating to the initial speed but still some pulses remains the user can modify the parameter K and driving speed V to avoid this situation BExample of Setting Parameters Complete S curve Acceleration Deceleration Setting a complete S curve acceleration to output the drive speed from 0 to 40K PPS in 0 4 sec As shown in Fig Ex 3 if complete S curve acceleration is required the driving must be 20K PPS at time 0 2sec And then it will accelerate to 40K PPS at time 0 4sec To calculate the maximum acceleratio
155. xis XPM the direction register for X axis YPP and YPM the and directions registers With in the time unit MCX314 will check the registers once and decide to output a pulse or not depending on the bit pattern Fig 2 24 Example for Bit Pattern Interpolation 56 lt 48 lt 40 lt 32 24 16 lt 8 lt 0 01000000 00000000 00011111 11011011 11110110 11111110 00000000 00000000 XPP X direction 01111111 11110101 00000000 00000000 00000000 00000000 00101011 11111111 XPM X direction 00000000 00000000 00000000 11111111 00000000 00001111 11111111 11010100 YPP Y direction 00001010 11111111 11111100 00000000 00111111 11000000 00000000 00000000 YPM Y direction a Fig 2 25 is the block diagram of bit pattern interpolation for the 1st axis in MCX314 BP1P register and BP1M register are 16 bit data buffers for bit pattern data form the host CPU IF the system uses 8 bit data bus the host CPU has to write the data by low byte and high byte The direction data should be written into PB1P and the direction data into PB1M Once starting the bit pattern interpolation the pulse outputting is in the order from DO REG2 SC 2 0000100000000100 BP1P 1 REGI Fi Sys CPU E 0100000000100001 gt 0001001000010000 o D15 574 DO 1110101
Download Pdf Manuals
Related Search
Related Contents
J`ai une SEP et… je suis gastronome ! Tartare de noix de Saint König CSKBMU100IS Philips DIGA DMR-XS350EB User's Manual Turbo Air TBB-1SB User's Manual Mode d`emploi EXPERTmatic LUX E15 L - 1.007.5530 Guide du Formateur Kicker 2006 ZX 350.2 Owner's Manual Votre spécialiste pour vignes et vergers Copyright © All rights reserved.
Failed to retrieve file