Beruflich Dokumente
Kultur Dokumente
Elsevier
Applications
There has been a great interest in :he design and develop- maximum metal removal, geometric adaptive con-
ment of modular computer numerical control (CNC) units trol for precision machining and in-process gaug-
which control and monitor several motion devices such as
stepper motors. Power integrated circuit controller/driver-
ing [1-3]. To efficiently implement such tasks
based multi-axes are extensively used in industry and other they need to be carried out sequentially and
market sectors with modular CNC systems. Existing commer- within short times.
cially available full circuit controller boards employ a com- Among the most popular motion devices are
plete set of commercially available driver/controller chips for stepper motors. Stepper motors have been widely
each stepper motor. This paper describes how it is possible, by
used in industry to provide accurate positioning
using a single driver and multi-task efficient algorithms, to
design a low-cost controller for simultaneous and independent control for computer peripherals such as paper
control of multi-axes stepper motors. This will lead to less feed mechanisms, x-y plotter positioning, and
power consumption, low cost, compact circuit, and a highly floppy disk drives [4]. They are also used exten-
reliable controller for CNC systems. The software developed sively in commercial and military applications to
and the hardware testing were done using a 68000 Develop-
perform functions such as stirring, blending, and
ment System Board with the Orental stepper motor PH264-
0213. mixing [5]. Stepper motors are used in motion
control systems to provide open-loop shaft posi-
tion control in fixed discrete increments without
Keywords: Low-cost controller; Multi-axes; Stepper motors the need for closed-loop servo control [6].
Cost is one of the long-standing concerns of
the power electronics that continues to retard
1. Introduction new motion control applications in industry and
other market sectors [7]. There is a need for
Modular CNC units are widely employed in low-cost and new techniques to efficiently imple-
industry, military, and other market sectors to ment motion control for complex systems that
provide monitoring and position control for vari- require the independent and simultaneously con-
ous applications. Examples of such applications trol of several motion control devices [1,7-9].
are control and monitoring'of in-process detec- Multi-axes stepper motor controliers that control
tion of tool wear and breakage, chatter detection one through eight axes are commercially available
and avoidance, adaptive control of chip load for [10-13]. Such controllers employ either multiple
commercially available controller/driver chips for
each stepper motor [13-15] or a specialized inte-
Correspondence to: Dr. Faisal Fadul, The Pennsylvania State
University at Erie, Division of Science, Engineering and Tech-
grated driver controller chip for one or multiple
nology, Station Road, Erie, PA 16514-0426, USA. stepper motors [1,11,15]. For example, the SGS
Electrical
Potmr
hirer
L297/L298 chips set from SGS Corporation [15] multi-axis controller board. The design can be
is commonly used to control direction, clock, easily extended to control several motion devices
half/full, reset, enable, and reference current for such as DC motors and solenoids through a single
a stepper motor [15,16]. controller since the hardware and software of the
In this paper, it is shown that the above step- proposed controller are written in a modular
per motor parameter can be independently and fashion. The proposed multi-axes controller cir-
simultaneously controller for eight stepper mo- cuit will lead to less power consumption, smaller
tors through a single L298 controller chip and size, low cost and increase in the reliability.
eight L297 drivers using a multi-task program
with a simple and low-cost microprocessor-based
2. Current implementation
1,298
! Lt' ! t
p-lqqOCeSSOP
" ConttelleP ] D~iveP
II I ilia
3. Proposed technique
Comunds •, bivel,
Chip j.-
This ~ection describes how the proposed con-
troller can be used to upgrade the performance
of the existing stepper motor controllers through
Fig. 3. Protocol 2--Control of motion device block diagram. the use of a multi-task operating system. The
controller system consists of a hardware portion
designed around the Motorola 68000 micropro-
current, and motor parameter control limitations cessor and a software program written in 68000
[16]. This paper describes the implementation of assembly language.
a muti-axes controller that can be used to simul-
taneously and independently control up to eight 3.1. Stepper motor interface unit
stepper motors with a single controller (L298)
and eight drivers (L297). The concept can be Several stepper motors can be independently
easily extended to control more and various types controlled and interfaced to the proposed con-
of motion devices such as DC motors and troller. Figure 4 skows a block diagram of a
solenoids. stepper motor interface unit. U1 receives the port
U3 U6 , U9
Controlle~
!,297
~-processo~ I ~ = : 1 g__33
U8
Latch
])ecode~
To U98 g
NH U?
address from the 68000 microprocessor. U2 and state T is made up of two oscillator pulses for the
U3 are 373 latches that represent a port in the 68000 microprocessor. Upon using 16 MHz crys-
memory. A programmable port such as the 6821 tal the T state is 125 ns. The control of each
PIA can be used for more flexible I / O opera- stepper motor requires a ten-bit control and
tions. U4 and U5 are a buffer and a precision op three-bit address identification (motor address).
amp that enable the controller to have up to 32 The control part contains information regarding
current levels established for the L297 controller, speed, direction, full or half step, reset, enable
U6. U7 is a decoder that is used to select one and five lines for current levels.
motor at a time. The output of the decoder goes It is found that the microprocessor requires
through a latch, U8, before enabling the L298 3000 ns to execute the codes of the program
driver, U9. The latch helps in protecting the which is used to control eight stepper motors.
controller circuit from any unforeseen circum- The processor also requires 3250 ns to execute
stances due to the high voltage of the driver. the codes for the screen handler. Since each
stepper motor requires 1,176,470 ns delay time
3.2. Software description between each two consecutive steps, i40,808 ns
delay subroutine is needed. The real time rela-
The system software, which may control eight tionship among the clock time, the time it takes
stepper motors, is written in 68000 assembly lan- to control a stepper motor, and the delay time
guage. It is possible to simultaneously and inde- which must be met for each stepper motor is
pendently control eight stepper motors since a shown in Fig. 5. The data in Fig. 5 suggest that up
stepper motor requires a time delay between to 123 stepper motors can be simultaneously and
each two simultaneous steps. Without such delays independently controlled with delay equal to 3250
the stepper motor will lose its current step and ns. This is a minimum delay that must be in-
therefore will react erratically [18]. For example, cluded in the program in order to ofset the branch
the maximum speed (no torque speed) of the to REPEAT, since the branch instructions require
Oriental stepper motor PH264-0213 is 850 pps 3250 ns to be executed. Initialization of the sys-
[16]. Therefol~, such motors require 1,176,470 ns tem software is not shown. The label TABLE rep-
time delay in order to perform properly. The resents a memory address to a data table whose
clock frequency, f, establishes the smallest inter- 16-bit locations each contain control and address
val of time within the microprocessor, called the information about a single stepper motor. The
T time. The smallest interval of time to accom- first ten bits of each memory location contain
plish an instruction is called the machine cycle. control information about direction, clock,
Each machine cycle consists of several T states half/full step, enable, and reference current (5
[19]. A state T is the basic time interval for bits). The next three bits are used for address
discrete operations of the microprocessor. Each information to select one of eight stepper motors
125 nseo
Clock
6250 nseo 1
~nt~ol
$teppe~
~o~ l ! [ ....
140000 nseo t
F ....
hla.q t i m /
Stepper Notor
II I..
1176470 nse© t
TNinimmDelay
ine, Steppe, J [
Noto~
through a decoder, U7. The last three bits are not same operating requirements. A multi-task oper-
used and may be utilized to select and control up ating system known as "round-robin" scheduling
to 32 stepper motors. The above description as- [16] can be used if the operating requirements for
sumes that the employed stepper motors have the the stepper motors are different or different types
I initalization 1
SP
)ata and
PointePs
Fo~ts
311mnse©
'1
Serve Noto~I1
14g8110nsec hlag
VB
3250 nsec
I
311Mnsec Serve Notor b~
|498g8 nsec klay
YES
3259 nsec
of motion devices are used. Each task consists of tool breakage in milling operations", ASME J. Eng. Ind.,
a subroutine to handle one of the eight stepper Vol. 110, 1988, pp. 271-277.
[4] M. Chiasson, "Control of a PM stepper motor by exact
motors. Figure 6 illustrates the flow chart of the linearization", in: B.C. Kuo (ed.), Proc. 19th Annu. Syrup.
system software. on Incremental Motion Control Systems and Devices, 1990,
pp. 65-70.
[5] V. Deltoro, Electric Machines and Power Systems, Pren-
4. Conclusions tice-Hall, Englewood Cliffs, NJ, 1985.
[6] "High-power, dual-bridge IC's stepper motor drive de-
sign", Motion Control Application Manual, SGS-Thom-
An efficient and practical analysis of a cost-ef- son Microelectronics, 1988, pp. 61-67.
fective modular CNC system is presented. The [7] T. Jahns, "Designing intelligent muscle into industrial
controller is implemented using a 68000 Develop- motion control", IEEE Trans. Ind. Electron., Vol. 37, No.
ment System Board with the Orental stepper 5, 1990, pp. 329-341.
[8] T. Hisa and D. Bihn, "Universal six-joint robot con-
motor PH264-0213. The proposed controller sur- troller", IEEE Control Syst. Mag., 1987, pp. 27-32.
passes existing commercially available controllers [9] S. Palmin, "Measurement and analysis of velocity control
in its power consumption, high reliability, lower for precision motors", J. Electron. Motion Control,
cost, compact size, and the numbe~ of motion May/June 1990, pp. 14-16.
devices to be controlled. The proposed controller [10] Motion Controls for Automated Positioning, DCI, Inc.,
Franklin, MA, 1990.
software is capable of independently and simulta- [11] Application Note, ASM, Inc., Hudson, NH, 1990.
neously control up to 123 stepper motors. The [12] Application Note, Arcomag, Inc., Wixom, MI, 1990.
controller hardware is capable of controlling up [13] Application Note, Technology 80 Inc., Minneapolis, MN,
to 32 stepper motors. 1990.
[14] F. Abbas and M. Ahmad, "Versatile controller for
multi-stepper motor operation", Computers in Industry,
Vol. 15, 1990, pp. 239-143.
References [15] Industrial and computer peripheral ICs, Databook, SGS-
Thomson Microelectronics, 1988.
[1] Y. Altintas and J. Peng, "Design and analysis of a [16] "Application of integrated circuits to stepping motor
modular CMC system", Computers in Industry, Vol. 13, drives", Oriental Motor, 1990.
1990, pp. 305-316. [17] P. Lawrence and K. Mauch, Real-Time Microcomputer
[2] J. Tusty and G. Andrews, "Critical review of sensors for System Design, McGraw-Hill, New York, 1987.
unmanned machining", Ann. CIRP, Vol. 32, No. 2, 1983, [18] T. Kenjo, Stepping Motors and Their Microprocessor Con-
pp. 563-572. trols, Clarendon Press, Oxford, 1984.
[3] Y. Altintas, I. Yellowley and J. Tlusty, "The detection of [19] MC68000 Microprocessor User's Manual, Motorola, 1989.