Download getting started

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
NMIS/L-7041
4-Channel Low Power
Bipolar Stepper Motor Driver Card
GETTING STARTED
The NMIS-7041 Low Power Bipolar Stepper Motor Driver Card provides a
JEDSTACK™ computer system with four channels of low power stepper motor drive.
Each of the four On Semiconductor MC3479 Low Current Stepper Motor Driver Chip
provides circuits (bipolar transistor technology) for driving a two-phase stepper motor in
bipolar mode. The chips consist of four input sections, a logic decoding/sequencing
section two driver-stages for the motor coils and an output to indicate the Phase A drive
state counter and a code converter to drive the four outputs in the required sequence. The
step and direction control lines are placed in the memory mapped by the interfacing logic
on the card. A register with individual bits representing these lines allows processor
control of the stepping occurrences and direction of rotation.
To make use of the NMIS-7041 requires physical installation, addition of the necessary
software. The remainder of this section deals with these steps in greater detail. The user
will probably want to read this section once, then scan the Circuit Description, Register
and Programming chapters before taking any action, then again return to this section and
follow the suggested installation procedure. Finally, the other sections will tell more on
the board's design, mechanical board mounting and problem solving troubleshooting
approaches.
A few moments spent examining the NMIS-7041 will be useful. The 2x4 inch format of
the NMIS board series determines the physical outline of this board. Close observation
of the board reveals the following features. The four Stepper Motor Driver chips, On
Semiconductor MC3479, are the key parts on the board. Each is located next to its
motor connector in the upper left hand corner of the board (top view). The motor
connectors are 10 pin dual .1" center male pins. This On the outer row, the five pins are
connected to +V. On the inner row, four pins are connected to the four phase outputs
and one pin is the return for the current programming resistor. Next to each MC3479 is a
pair consisting of a resistor and capacitor. This RC pair decouples the noisy +V signal
from the logic sections of the chip. The 74HC574 and 74HC245 comprise this computer
readable-writeable latch. A Vertical Stacking Connector in the lower right hand corner
provides connections to the processor's address and data bus, control signals, 5 Volt
power and ground. Two octal comparators, 74HC688’s, and 16 two-position jumpers,
accomplish address decoding in memory. Each jumper setting corresponds to the state of
a particular address line. The NMIS-7041 occupies one address. Any single byte location
in the 64K address space of the JEDSTACK™ processor's bus can be selected by correct
jumper placement. The 74HC139 further qualifies the address selection with the timing
and direction signals from the bus to generate the strobes to the latching chips.
To install the NMIS-7041, the following procedure is suggested:
1. Select the address (or accept the factory default)
2. Set the jumpers for the selected address (or check the factory default)
3. Verify the selected address is free of memory conflict before installing the
board
4. Turn off the power to the system
5. Install the board connecting the VSC
6. Verify correct alignment visually
7. Turn on system power
8. Verify the presence of the board in memory
9. Turn off the power to the system
10. Select the motors to be used
11. Connect the motors to be used
12. Select the current programming resistor
13. Connect the current programming resistor
14. Connect motor drive power
15. Turn on system power and motor drive power
16. Select the program or program segments to be used
17. Install the program or program segments to be used
Selection of the address for the board will depend greatly on the processor card being
used, system design, and how many other boards are being used in the system. For
instance, the most popular CPU to date that can use the NMIS-7041 is the F68HC11
based NMIS-L-0021B. Although there could probably be valid reasons for mapping the
RTC almost anywhere in the 64K byte address space, a likely place would be in the B000
hex area above the registers. If no additional 2x4"sTM cards were in the system, B040
hex is a likely choice. On the other hand, an address above the EEPROM at BC00 hex
would have more merit for both the NMIS-0021 CPU and the NMIX-0022 alike. The
NMIX-0022 CPU's have a 68HC24 PRU that is loosely decoded in the B000 through
B7FF hex range. Putting the RTC at BC00 would clear any possible memory conflicts
there, while having minimal impact on the greater goal of leaving large areas of
contiguous memory unbroken. The older NMIX-0011 and NMIX-0012 CPU's can use
the NMIS-7041, but these boards use the 0100 hex page for I/O. In this case an address
such as 0110 hex would be appropriate.
Once an address is selected, it is easy to set the jumpers. Convert the address to a binary
number and, starting left to right, set the jumper corresponding to each bit in the binary
number to a "1" or "0". Refer to Appendix A for graphic examples. The factory default
address setting for the NMIS-7041 is 8000 hex and will be used in these examples.
Substitute the corrected value in place of 8000 hex if the base address has been modified.
It is advisable to verify the selected address is free of memory conflicts before installing
the board. First look at the memory addresses the RTC will occupy to see if other
devices are already mapped there. These could cause interfere, called, bus contention.
Dumping the area around 8000 will normally show an ascending number pattern if no
memory interferes, as is shown below in a dump by an F68HC11.
COLD
Max-FORTH V3.5
HEX OK
8000 40 DUMP
8000 0 1 2 3 4 5 6 7 8 9 A B C D E F
8010 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
8020 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
8030 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
OK
Selection of the correct motor for a job depends on many variables. Beyond supply
issues, motors are qualified by step angle (also labeled as steps per revolution), maximum
torque, maximum revolutions per minute (or second), maximum pull-in rate in steps per
second, etc.. For the purposes of this document the voltage and current rating limitations
of the driver chips will be the primary limitation on motor selection. The MC3479 chips
are capable of driving motors with 500mA per stator (350mA nominal) from a 9.5 to 18
Volt supply (12V nominal). Since the drivers can accommodate motors of differing
current ratings, a method of selecting the drive level for each motor is provided. The
desired current is selected by adding a programming resistor to the motor connector, R14. The value of the resistor with the power off to the system, carefully align the 34 pin
Vertical Stacking Connector (VSC) with the board to be mated. The VSC is a "straight
through" connector so the NMIS-7041 can be added to the top or the bottom of a board
stack. It's easy to get a misalignment, so double check the fit by looking at the connector
from all four directions for pins that are not correctly mated. Use the provided 4-40
male/female screw 3/4" brass hex standoffs in the hole adjacent to the VSC to increase
mechanical rigidity. Turn the system power on write a known value to the board location
and examine the memory area around 8000 hex again.
COLD
Max-FORTH V3.5
HEX OK
FF 8000 C!
8000 40 DUMP
8000 FF 1 2 3 4 5 6 7 8 9 A B C D E F
8010 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
8020 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
8030 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
OK
Notice the first location now has a different value. This is the register that allows
manipulation of the control lines of the MC3479 Low Current Stepper Motor Driver chip.
Its contents will, of course, vary depending on the power up setting taken by the latches.
In order to recognize the register in memory a known value is first written to it. If the
ascending pattern has not changed, the processor can not "see" the NMIS-7041 in its
memory map. Recheck the address jumpers for proper settings and the VSC for proper
connection. The Programming Chapter and Appendix B have selected program segments,
which can be used to read and write the Stepper Motor control register. Writing proper
programs requires a detailed understanding of the functions of the MC3479's and the bit
positions associated with each control line. To begin with, copying the programs from
those sources may be expedient. Install the program or program segments to be used. The
NMIS-7041 is now running and communicating, as it should.
CIRCUIT DESCRIPTION
The NMIS-7041 Stepper Motor Driver card is designed to stack on the 2"x4"s™ NMIS
Series, or 2”x4.75” NMIL-Series, the "100 Squared"™ NMIX and the "Generic
Target Computer"™ NMIT Series (with the Vertical Stacking Connector added to the
latter) of single board computers. The JEDSTACK™ provides the interface signals to
the board including address lines, data lines, control lines and 5 Volt power and ground.
The fast HC latches allows 90nS access times.
The addressing of the 74HC574 (U8) and 74HC245 (U9) register pair on the NMIS-7041
is sensed by two 74HC688 (U5 and U6) octal comparators that decode the 16 address
lines (A15 - A0) and one control line (AS for F68HC11 systems, CSEX for R65F11
systems) to select only one active location out of a 64K address space.
The address location where the card is active is user set by the arrangement of addressing
jumpers. Each address line can be sensed for high or low condition. (Jumpers were used
rather than switches for power savings reasons. Generally schemes that employ switches
use pull up resistors that are switched to ground for a "0" and left open for a "1". When
the switches are closed this means the resistors are hooked from the +5V rail to ground.
While this gives the comparator inputs a suitable logic level "1" or "0", the selection of
"0" wastes power. The design using jumpers hook the CMOS comparator inputs directly
to +5V or Ground without wasting power.)
When the processor selects one of the sixteen set addresses, the 74HC688's generate a
chip select to the 74HC139 (U7). This signal is also coupled back on the VSC via diode
D4 to the MEMDIS pin. The 74HC139 further decodes the generated chip selects to
provide a separate read strobe for the 74HC245 and write strobe for the 74HC574.
Gating the chip select with the processor’s Output Enable signal generates the read
strobe. Gating the chip select with the processor’s Write signal generates the write strobe.
The output of jumper J10 is also used to gate the write strobe. In cases where the
processor does not have timing impressed on the Write signal, J10 should be set to pass
the "65" for HC11, or set to “80” for 8051 controller interface for clock timing signal to
the decoder. The 74HC574 accepts data from the processor, over the parallel Data Bus,
when the read strobe is active. This latched data is applied to the 74HC245 for read
back. The 74HC245 sends data to the processor, over the parallel Data Bus, when write
strobe is active.
The four Stepper Motor Driver chips, On Semiconductor MC3479, are the key parts on
the board. Each is located next to its motor connector in the upper left hand corner of the
board (top view). Detail technical data sheet can be downloaded from,
http://www.onsemi.com/pub/Collateral/MC3479-D.PDF
The motor connectors, M1-4 are 4 pin dual .1" center male pins. On the right hand side
of each motor connector, there are 2 pin labels VMx & GND. These pins are dedicated
for motor power connections when multiple motor power sources are required for
different type of motor. In this case, J5-8 jumpers need to be removed.
Next to each MC3479 is a 150K socketted resistor, R1-4. These are the motor limiting
current resistor, and they are removable to allow user to select the appropriate resistor
value to meet there motor spec and requirements. R1-4 can be calculated as below,
Rb = (VM – 0.7) / IBS
For example, assume an application where VM = 12 V, the
motor requires 200 mA/coil, operating at room temperature
with no heatsink on the IC. IBS is calculated:
IBS = 200 x 0.86
IBS = 172 uA
RB is calculated:
RB = (12 - 0.7) V/172 uA
RB = 65.7 k
More details explained on page 8 and 9 of the MC3479 data sheet.
http://www.onsemi.com/pub/Collateral/MC3479-D.PDF
The 74HC574 and 74HC245 comprise this computer readable-writeable latch. A Vertical
Stacking Connector in the upper right hand corner provides connections to the
processor’s address and data bus, control signals, 5 Volt power and ground. Two octal
comparators, 74HC688’s, and 16 two-position jumpers accomplish address decoding in
memory. Each jumper setting corresponds to the state of a particular address line. The
NMIS-7041 occupies one address. Any single byte location in the 64K address space of
the JEDSTACK™ processor’s bus can be selected by correct jumper placement. The
74HC139 further qualifies the address selection with the timing and direction signals
from the bus to generate the strobes to the latching chips.
REGISTERS
The processor has access to the MC3479 control lines through the on board register of the
NMIS-7041. The processor can control the state of two lines on each MC3479.
DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7
DIR STEP DIR STEP DIR STEP DIR STEP
MOTOR
#1
MOTOR
#2
MOTOR
#3
MOTOR
#4
DIR: direction
STEP: Pulse
PROGRAMMING
Writing drivers for the NMIS-7041 is relatively easy. (A set of software drivers is
included in the PROGRAM SEGMENTS appendix.) The control register is read or
written in a straightforward manner.
BOARD MOUNTING
The NMIS-7041 has three mounting holes, one in the corner nearest the 34 pin Vertical
Stacking Connector which is the main mechanical mounting hole, and two in the opposite
corners used for alignment. Each hole is drilled at .110 inches. This will allow passage
of a 4-40 screw shaft.
If additional 2x4"sTM are to be used they may be stacked above or below, as desired, on
the female or male side of the Vertical Stacking Connector respectively. A simple hex
3/4-inch standoff with a male screw on one end and a female threaded hole on the other is
the ideal inter board connection device. The Vertical Stacking Connector was designed
to work with this size spacer, giving reliable board-to-board connection.
The length of the standard spacer, 0.750 inches, plus the board thickness, 0.061 inches,
gives a nominal spacing board to board of 0.811 inches. If an exact spacing of .800
inches is desired (some standard mounting hardware have .800 inch mounting board
guides) 0.011 inches of the mounting surface at the female end of the soft brass standoff
can be removed by mill or metal file.
Only the mounting hole near the Vertical Stacking Connector has sufficient clearance
around the hole to allow for the head of a screw or the flats of the standoff to rest on. The
trace closest to the hole is GND on the topside of the board. All 2x4"sTM are designed
with this same convention.
The two mounting holes at the other end board can be used for alignment pins, but do not
have sufficient clearance to allow the use of screw. All 2x4"sTM attempt to follow the
convention, maintaining these two mounting holes. If, however, there is sufficient reason
to use that board space they may not always be preserved.
The extremely small size of the boards means there is no guaranteed limits on how close
components will be placed to the edge of the 2x4"sTM. Board guides will be difficult to
use and designs should take this into account. They may be acceptable if non-conductive
and very shallow. The main mounting hole remains the best point of support.
TROUBLESHOOTING
The NMIS-7041 is a fairly simple and straightforward board. The most likely problem
encountered remains "operator error". There are a minimal number of things that could be
wrong otherwise.
JUMPERS
ADDRESSES 8000 HEX
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
10
9
8
7
6
5
4
3
2
1
0
10
9
8
7
6
5
4
3
2
1
0
ADDRESSES 011F HEX
15
14
13
12
11
ADDRESSES BC00 HEX
15
14
13
12
11
PROGRAM SEGMENTS
COLD
HEX
400 DP !
8000 CONSTANT STEP-REG
VARIABLE DELAY-VALUE 100 DELAY-VALUE !
VARIABLE LEFT-SWING C8 LEFT-SWING !
VARIABLE RIGHT-SWING C8 RIGHT-SWING !
VARIABLE ACTIVE 2 ACTIVE !
: L STEP-REG C@ . ;
CREATE PATTERN-TABLE
00 C, ( 0 )
01 C, ( 1 )
04 C, ( 2 )
10 C, ( 3 )
40 C, ( 4 )
: MOTOR-SELECT ( 1,2,3,4 ) 1 MAX 4 MIN PATTERN-TABLE + C@ ACTIVE ! ;
: LEFT STEP-REG C@ ACTIVE @ OR STEP-REG C! ;
: RIGHT STEP-REG C@ ACTIVE @ FF XOR AND STEP-REG C! ;
: TOGGLE STEP-REG C@ ACTIVE @ 2* XOR STEP-REG C! ;
: WAIT DELAY-VALUE @ 0 DO LOOP ;
: STEP TOGGLE WAIT TOGGLE WAIT ;
: RUN 0 DO ?TERMINAL IF LEAVE THEN STEP LOOP ;
: SEARCH
BEGIN
RIGHT RIGHT-SWING @ RUN
LEFT LEFT-SWING @ RUN
?TERMINAL
UNTIL
;
PARTS LIST
NMIS-7041 Low Current Stepper Motor Driver PARTS LIST REV 1.0
PART# GENERIC
DESCRIPTION
----- ------------------- ----------------------------------U5,6 20 PIN SOCKET
74HC688
OCTAL COMPARATOR
U7
14 PIN SOCKET
74HC139
DUAL 2-TO-4 DECODER
U1-4 16 PIN SOCKET
MC3479
Low Current Stepper Motor DRIVER
U8
20 PIN SOCKET
74HC574
OCTAL LATCH
U9
20 PIN SOCKET
74HC245
OCTAL DRIVER
J1-4,10 3 PIN HEADER
BERG STYLE .1" CENTER JUMPERS
J5-9
BERG STYLE .1" CENTER JUMPERS
2 PIN HEADER
J11
34 PIN VSC HEADER .1" DUAL INLINE
R1-4
150K OHM
R5-8
10K OHM
C1-7
.1uf
D1-4
D5
746A
1N4148
MONOLYTHIC BYPASS
3.3V ZENER DIODE or equivalent
SIGNAL DIODE
PCB
NMIS-7041 PCB
3x16
16
JUMPER PINS
BERG STYLE .1" CENTER JUMPERS
JUMPER SHUNTS
BERG STYLE .1" CENTER SHUNTS
NMIS-7041 Parts List Rev 1.0
REV 1.0
7
8
6
5
4
2
3
1
VM1
D1
U1
1N5221A
VM 16
1 VD
2 L2
L3 15
3 L1
L4 14
4 GND GND 13
5 GND GND 12
6 B/S
PHA 11
7 CLK CW/CC10
F/H 9
8 OIC
ADDRESS BUS
D
DATA BUS
2
MEMDIS 34
E 32
30
28
26
24
22
20
18
16
14
12
10
D0
8
D1
6
D2
4
2
A15
A14
A12
A7
A6
A5
A4
A3
A2
A1
A0
33
31
29
27
25
23
21
19
17
15
13
11
9
7
5
3
1
1
DB1
NC
RESET
INT
+5V
R/W
V+
GND
1 R5
DB0
+5V
A13
A8
A9
A11
OE
J10
3
2
2
65
3
1
11
5
D7
D6
D5
D4
D3
D2
D1
D0
6
R/W
1
7
HC139
19
18
17
16
15
14
13
12
2
3
4
5
6
7
8
9
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
D2
U2
1N5221A
VM 16
1 VD
2 L2
L3 15
3 L1
L4 14
4 GND GND 13
5 GND GND 12
PHA 11
6 B/S
7 CLK CW/CC10
F/H 9
8 OIC
+5V
U6
C
+5V
JA0
JA3
JA4
JA5
150K
A8
A10
A12
A14
A15
A13
A11
A9
J2
9
D7
2
18
DB7
D6
D5
D4
D3
D2
D1
D0
3
4
5
6
7
8
9
17
16
15
14
13
12
11
DB6
DB5
DB4
DB3
DB2
DB1
DB0
JA9
JA10
JA11
JA12
JA8
JA10
JA12
JA14
JA15
JA13
JA11
JA9
J6
FULL
VM2
VM3
D3
U3
1N5221A
VM 16
1 VD
2 L2
L3 15
3 L1
L4 14
4 GND GND 13
5 GND GND 12
PHA 11
6 B/S
7 CLK CW/CC10
F/H 9
8 OIC
HC245
DB5
1
R7
4.7K
2
DB4
+5V
R3
HALF
150K
1
2
4
6
8
11
13
15
17
C
HALF
M2
U5
JA8
JA15
15
DB2
+5V
19
HC688
JA7
JA14
11
R6
4.7K
R2
HC139
3
5
7
9
12
14
16
18
JA6
JA13
13
DB3
10
OE
19
JA2
JA4
JA6
JA7
JA5
JA3
JA2
12
1
JA1
JA2
14
U9
1
2
4
6
8
11
13
15
17
A0
A2
A4
A6
A7
A5
A3
A1
HC574
U7B
E
J5
VM1
VM2
A10
D7
D6
D5
D4
D3
J1
FULL
M1
U8
4
AS
HALF
150K
U7A
D
4.7K
2
R1
+5V
1 80
J11
B
J9
J3
FULL
M3
POWER & GND PINS TABLE
J7
B
VM3
VM4
19
3
5
7
9
12
14
16
18
REFDES
IC
+5V
GND
VM
U5,U6
74HC688
20
10
---
U7
74HC139
16
8
---
U8
74HC574
20
10
---
U9
74HC245
20
10
---
D4
1N5221A
U4
VM
1 VD
L3 16
2 L2
L1
L4 15
3
14
GND
GND
4
13
GND
GND
5
PHA 12
6 B/S
11
7 CLK CW/CC10
F/H
8 OIC
9
DB7
HC688
R8
4.7K
DB6
+5V
R4
HALF
150K
J4
M4
J8
FULL
VM4
A
NOTE:
1. Independent V-Source Inputs, VM1 - VM4: 7.2V to 16.5V
A
BiPolar Stepper Drivers
2. Unity V-Source Input, V+: 7.2V TO 16.5V, J5-J8 ARE CLOSED
TITLE
3. R1, R2, R3, and R4 user selected for
current sense of motor being used.
APPROVALS
CHECKED
8
7
DATE
NMIL-7041
DRAWN
6
L.C.
021803
L.C.
031803
FINISH
5
4
3
2
SIZE
D
SCALE
DWG NO.
REV
BCP01
0
SHEET
1
1 OF 1
J1C
J1B
J1A
J2A
L2 L4 VM3
J3
J7
M2
L2 L4 VM2
J2
J6
L1 L3 GND
M1
L2 L4 VM1
J1
J5
80
C1
L1 L3 GND
J10
U5
U7
C6
U9
J11
J22
J21
J20
J19
J18
J17
J16
J15
J14
J13
J12
J11
J10
J9
J8
J7
+5V
214 339 1585 FAX
www.newmicros.com
WWW.NEWMICROS.COM
1601 CHALK HILL RD
DALLAS TX 75212
214 339 2204
U8
74HC245
C5
74HC574
65
R5
U1
J4C
MC3479
D1
J4D
C2
J4B
R6
U2
J4A
R1
D2
MC3479
R7
MC3479
R8
C3
J3B
L1 L3 GND
J3A
R2
R3
MC3479
U6
74HC688
74HC688
R4
U3
D5
74HC139
0
1
2
3
4
5
6
7
8
M3
15 14 13 12 11 10 9
GND
0
1
2
3
4
5
J8
6
L2 L4 VM4
J4
7
GNDV+
L1 L3 GND
8
M4
D3
15 14 13 12 11 10 9
D4
C4
ADDRESS LINE
J9
U4
NMIL-7041 4CH BIPOLAR STEPPERS
C7
BCP01
1