This is an old revision of the document!
Table of Contents
Mitutoyo / Micromanipulator probe station with EZLAZE laser
Condition
The following issues have been noted:
- EZLAZE: PS missing
- XY stage: missing X motor and maybe some related brackets
- FS-60: possibly missing part…fine focusing knob?
- FS-60: focusing knob fell off (during shipping I think)
- Broken e-stop wire (from dissassembly?)
- Misc rusted screws. Rust has not been found on anything critical
EZLAZE
Head
Power supply
Console
Camera
Genwac GW-202B
Microscope
Mituotyo Finescope, likely FS-60
Above: focus knob
Above: likely motorized stage power/control connector
Hood
For doing optical emission analysis. Also good to block out dust in my dusty garage
Above: misc cables hanging out of the hood going to the various electronics inside
2015-08-16
Removed hood to move to proper table and overhaul control system. Notes:
- ezlaze is not water cooled
- water cooling is for chuck
- BNC connector bent
- From move?
- CPC for thermal chuck (not motors)
- Motors are synchronous stepping
- Replacing with IMS NEMA 23
Motor
IMS MDM1FSD23A7
NEMA 23
“These are 90 oz/in”
Closest match: step/direction input version
- MDMXXX174
- MDrive 17 Plus step and direction input
- SPI
Y axis test
Color | Signal | To |
White | Optocoupler reference | BBB P9.5-6 5V Red |
Orange | Step | BBB P8.15 Blue |
Blue | Direction | BBB P8.14 White |
Brown | Output bridge enable | N/C |
Black | Ground | Ground Black |
Red | Power 12-75 VDC | 24V |
Open question: do I need the programming cable?
- I think I have one
Initial current draw 50 mA. Holding torque is not very good; slightly above off level. Spikes to around 80 mA at startup
BBB: mk-test. Verified powers up
changes 10 mA (min PS resolution) when try to move. Time to play with settings cable
Cable: MD-CC4 USB to RS422 Comm Converter
Unfortunately:
The MDrive microstepping integrated motor and driver use the Serial Peripheral Interface (SPI) to configure the setup parameters.
Use bus pirate or beagle
2015-08-17
Decided to try one last time to see if I could move motors before messing with programming cables.
Hooked up a test motor without any shaft load. Spins fine and has reasonable torque.
Hooked Y2 axis back up and was able to move it just fine. Issues yesterday evidently were just due to shoddy wiring
Conclusion: don't need programming cable. Default settings seem to be good enough for now
Also validates that motors are good enough. Need to get 1-2 more for XY1. Wait until I take it apart to verify clearances etc?
X2 motor won't fit:
- original: 2.0“
- max: 2.2”
- mine: 2.7“ (official IMS docs list Lmax: 2.65”)
Looked around and it looks like its going to be difficult to find any motors with integrated drivers at this constrained size. Min length from vendors:
- IMS: 2.65“
- linengineering: 2.69”
- anaheimautomation: 2.98“
Time to see if I can make these motors work. I have some reasonably compact standalone IMS drivers (by coincidence also IMS) I can try to use
http://www.cnczone.com/forums/stepper-motors-drives/15273-slo-syn-motor-wiring-info.html
- 4 wire motors are bipolar
- 5 wire motors are unipolar
- 6 or 8 wire motors can be wired either way
Mine: 6 wire
- Red
- White-red
- Green
- White-green
- White
- Black
In stock:
- 3x IMS INT-481
2015-08-20
Briefly poked at things. Current plan:
- Try to use original motors. This is combination of tight clearance in X2 combined with advantages of using existing wiring harness in X1/Y1
- See if I can get INT-481 to work with the slo-syn motors?
- A fourth INT-481 may cost $100
- This makes OEM650 more attractive since I have more of them
- They are slightly bigger but also easier to mount
- Z1 axis is a NEMA 34 motor. Does not appear to be a slo-syn. Maybe compumotor
- Low priority
- Make a schematic
- Fix e-stop loose wire (after schematic to better understand where it should go)
2015-08-21
Working on schematic
Back connectors
Electrical:
- (STAGE): 25×2 0.1” male IDC
- T/C: type K thermocouple plug
- HEATER: 4 pin CPC twist lock
Pnematic:
- VACUUM
- STAGE IN
- STAGE OUT
- RING IN
- RING OUT
What is RING?
X1 ribbon cable
Main board: J2
Breakout board: Y
Y1 pin | 50 pin | Function | Notes |
---|---|---|---|
1 | 28 | ||
2 | 21 | ||
3 | N/C | ||
4 | N/C | ||
5 | 22 | ||
6 | 19 | ||
7 | 27 etc | ||
8 | N/C | ||
9 | N/C | ||
10 | 5 | ||
11 | 2 | ||
12 | 3 | ||
13 | 6 | ||
14 | 4 |
Main board
I did not pin this out directly since I don't need to interface it directly
Connectors:
J | Label | Notes |
---|---|---|
1 | ||
2 | X | X1 motor, limit |
3 | Y | Y1 motor, limit |
4 | Z-ROT | N/C |
5 | Z-LIM | Into chassis |
6 | Z-MOT | Directly to NEMA 34 motor |
7 | THETA | N/C |
8 | - | X1 limit? |
9 | - | estop |
Y1 ribbon cable
Main board: J3
Breakout board: Y
X1 pin | 50 pin | Function | Notes |
---|---|---|---|
1 | 29 | ||
2 | 23 | ||
3 | N/C | ||
4 | N/C | ||
5 | 24 | ||
6 | 19 | ||
7 | 20 27 29 | ||
8 | N/C | ||
9 | 7 | ||
10 | 11 | ||
11 | 8 | ||
12 | 9 | ||
13 | 12 | ||
14 | 10 |
Y1 motor
Dataplate:
Superior Electric
SLO-SYN
SYNCHRONOUS/STEPPING MOTOR
TYPE: M061-LS02
OZ. IN: HOLD 60
RPM: SPEC BM101025
STEPS: 200
V: 5.0
A: 1.0
HZ: DC
CLASS A INSULATION
IMPEDANCE PROTECTED
X1 is probably identical
With breakout board rightside up pin 1 is at P2 right (on silkscreen)
P2 pin | Color | Function | Notes |
---|---|---|---|
1 | Green | A1 | |
2 | White | AC | |
3 | White-red | B1 | |
4 | Black | BC | |
5 | Red | B2 | |
6 | White-green | A2 |
X1, Y1 breakout board
ASSY A1003958
has following connectors:
- Y : “Y ribbon cable”
- Upper right pin 1: on silkscreen and agrees with convention I was already using
- Both X and Y board have label Y
- P1: N/C. Ignore for now?
- P2: motor. Has thicker traces
- P3: limit switches?
Y pin | To | Function | Notes |
---|---|---|---|
1 | P1.2 | ||
2 | P3.3 | ||
3 | P3.4 | ||
4 | P3.6 | ||
5 | P3.5 | ||
6 | P1.4 P3.1 | ||
7 | P1.3 P3.2 | ||
8 | N/C | ||
9 | P2.1 | ||
10 | P2.6 | ||
11 | P2.2 | ||
12 | P2.5 | ||
13 | P2.3 | ||
14 | P2.4 |
e-stop (white, black)
All are N/C
Pin | 50 pin | Color | Function | Notes |
---|---|---|---|---|
1 | 47 | White | Broken button side | |
2 | 48 | Black | ||
3 | 49 | N/C | ||
4 | 50 | N/C |
e-stop (green, blue)
to heater connector
HEATER
Pin | Color | Function | Notes |
---|---|---|---|
Green | e-stop | ||
Blue | e-stop | ||
Black | chuck power | ||
White | chuck power |
Goes to large loose brown connector near wafer chuck
VACUUM
Goes to t junction near front panel
- To vacuum gauge
- To switch
Not sure where goes from switch
I don't currently need the vacuum system but have no reason to rip it out. Leave it for now
Hoses could potentially tangle into Z1 drive but I could secure them if I eventually use Z1
THETA
Main board: J7
Pin | 50 pin | Function | Notes |
---|---|---|---|
1 | N/C | ||
2 | 43 | ||
3 | 19 | ||
4 | 44 | ||
5 | 20 27 31 | ||
6 | N/C | ||
7 | N/C | ||
8 | N/C | ||
9 | 35 | ||
10 | 39 | ||
11 | 36 | ||
12 | 37 | ||
13 | 40 | ||
14 | 38 |
Z-LIM
Main board: J5
Pin | 50 pin | Color | Function | Notes |
---|---|---|---|---|
1 | 26 | Orange | ||
2 | 19 | Red | ||
3 | 27 etc | Black | ||
4 | 25 | Blue | ||
5 | 19 | Red | ||
6 | 27 etc | Black |
X2?
Main board: J8
Pin | 50 pin | Color | Function | Notes |
---|---|---|---|---|
1 | 25 | Green | ||
2 | 27 etc | Black | ||
3 | 31 | Yellow | ||
4 | 19 | Red | ||
5 | 27 etc | Black | ||
6 | 32 | Orange |
Z-ROT
Main board: J4
Pin | 50 pin | Function | Notes |
---|---|---|---|
1 | N/C | ||
2 | 30 | ||
3 | 27 etc | ||
4 | 19 |
Z-MOT
Main board: J6
Pin | 50 pin | Color | Function | Notes |
---|---|---|---|---|
1 | 13 | Green | ||
2 | 17 | White | ||
3 | 14 | White-green | ||
4 | 15 | Red | ||
5 | 18 | Black | ||
6 | 16 | White-red |
2015-08-22
collating data
STAGE
Back 50 pin connector. Its not labeled but it is on the back of the hood enclosure
Per breakout board, pin 1 lower left, pin 2 upper left
Pin | Main Board | To | Function | Notes |
---|---|---|---|---|
1 | X1.9 P2.1? | X1 motor? Opto: 5V | Missing from table but pattern indicates it should be here | |
2 | X1.11 P2.2 | X1 motor Step clock | ||
3 | X1.12 P2.5 | X1 motor Ground | ||
4 | X1.14 P2.4 | X1 motor Enable: N/C | ||
5 | X1.10 P2.6 | X1 motor V+ | ||
6 | X1.13 P2.3 | X1 motor Direction | ||
7 | Y1.9 P2.1 | Y1 motor Opto: 5V | ||
8 | Y1.11 P2.2 | Y1 motor Step clock | ||
9 | Y1.12 P2.5 | Y1 motor Ground | ||
10 | Y1.14 P2.4 | Y1 motor Enable: N/C | ||
11 | Y1.10 P2.6 | Y1 motor V+ | ||
12 | Y1.13 P2.3 | Y1 motor Direction | ||
13 | Z1 motor? | |||
14 | Z1-MOT.3 | Z1 motor | ||
15 | Z1-MOT.4 | Z1 motor | ||
16 | Z1-MOT.6 | Z1 motor | ||
17 | Z1-MOT.2 | Z1 motor | ||
18 | Z1-MOT.5 | Z1 motor | ||
19 | X1.6 Y1.6 THETA.3 Z1-LIM.19 (red) X2?.4 Z1-ROT.4 | +5V? | ||
20 | * | Ground | ||
21 | X1.2 P3.3 | X1 limit switch? | ||
22 | X1.5 P3.5 | X1 limit switch? | ||
23 | Y1.2 P3.3 | Y1 limit switch? | ||
24 | Y1.5 P3.5 | |||
25 | Z1-LIM.19 X2?.1 | |||
26 | Z1-LIM.1 | |||
27 | * | Ground | ||
28 | X1.1 | |||
29 | * | Ground? | Y1.1? | |
30 | Z1-ROT.2 | |||
31 | % * X2?.3 | Ground? | ||
32 | X2?.6 | |||
33 | ||||
34 | ||||
35 | THETA.9 | |||
36 | THETA.11 | |||
37 | THETA.12 | |||
38 | THETA.14 | |||
39 | THETA.10 | |||
40 | THETA.13 | |||
41 | ||||
42 | ||||
43 | THETA.2 | |||
44 | THETA.4 | |||
45 | ||||
46 | ||||
47 | e-stop.1 | e-stop | ||
48 | e-stop.2 | e-stop | ||
49 | e-stop.3 | N/C | ||
50 | e-stop.4 | N/C |
V+
What would it take to determine this?
- Can I make a schematic of any of the opto boards?
Likely 5V
OEM650 motor test
Materials:
- Benchtop power supply (want current monitoring)
- Slo-syn motor
- OEM650 driver
- Sparkfun level shifter?
- TODO: verify that OEM650 actually can't take 3.3V
Resistor config?
- “V: 5.0, A: 1.0”
- Series configuration
- Jumper 1 removed
- 1.0A: 18.2k
- 2.0A: 3.57k
Wiring?
- pg 13
- Figure 2-2. NEMA 23 Size OEM Motor Wiring—Series & Parallel
- LCR meter (old)
- Single: 9.5 mH
- Series: 36 mH
2015-08-23
Waiting for LCR meter to replace questionable 875B
Wiring up in preparation though
2015-09-17
Testing rewired OEM-650's
Using half motor to favor speed over torque (lower inductance but doesn't use the entire coil). if its not enough power I'll switch to using full motor. In part this should be lower power consumption
Microstepping: I was using 10,000 on pr0nscope. Start with that? pg 27 says default (reccomended?) 25,000?
Jumper config:
Jumper | Function | Pos Test | Pos Final | Notes |
---|---|---|---|---|
JU1 | Motor current range | Off | Off | pg 15 Off low range (0.83-2.5A) |
JU2 | Resolution | On | On | pg 27 |
JU3 | … | On | On | |
JU4 | … | On | On | |
JU5 | … | On | On | |
JU6 | Waveform shape | Off | Off | pg 27 Sine wave |
JU7 | … | Off | Off | |
JU8 | … | On | On | |
JU9 | Auto standby | On | On | Full current |
JU10 | … | On | On | |
JU11 | Auto test | Off | On |
Quick disconnect power connector:
Pin | Function | Connect | Notes |
---|---|---|---|
1 | REMOTE | N/C | pg 32 Can be used to disable motor by connecting to CURRENT |
2 | REF | … | |
3 | CURRENT | 18.2k 1/4W to REF | pg 15 18.2k 1.0A (w/ jumper #1 removed) Have 21.6k approx 0.87A |
4 | DUMP | N/C? | pg 32 A 35Ω, 10 watt power resistor (such as a Dale RH-10) is the recommended power dump resistor I didn't have this connected in the past. Sounds like it can probably be omitted if the load is not actuated? Least expensive resistor I could find |
5 | VDC+ | +75V | |
6 | VDC- | Ground | |
7 | A+ | Motor A1-green | |
8 | A- | Motor AC-white | |
9 | B+ | Motor B1-white-red | |
10 | B- | Motor BC-black |
DB25 signal connector:
Pin | Function | Connect | Notes |
---|---|---|---|
1 | Step+ | BBB 5V buffer | pg 32 Minimum high-level output: 4.26V (Source 24mA) |
2 | Dir+ | BBB 5V buffer | Maximum low-level output: 0.44V (Sinks 12 mA) |
9 | Fault+ | N/C | pg 32 Not needed at this time long term connect to EMC e-stop? |
11 | Gear+ | N/C | pg 33 Advanced usage |
14 | Step- | … | |
15 | Dir- | … | |
16 | Remote+ | N/C | Pg 32 See above |
17 | Remote- | … | |
21 | Fault- | … | |
23 | Gear- | … |
Successfully ran motor in test mode
BBB voltage boost
Need to convert from 3.3V to 5V per above spec
BBB breakout: https://www.adafruit.com/products/572
Logic level converter: https://www.sparkfun.com/products/12009
2015-09-10
Successfully tested BBB voltage boost X channel on standalone motor
Tested OEM650 drives and discovered only 2/4 are functional. Unclear if I broke these last time I used them or they were always broken. Discarded defective drives
Current strategy: use MDrive23 for X1, Y1. Use original motors with OEM650 for X2, Y2. Z1 will not be hooked up at this time but will still be accessible on connector if required. Only X1 and Y1 will be used in initial testing since stock BBB configuration only supports 3 axes
Working on polishing earlier tables to verify its safe to rewire X1, Y1 for completely different purpose signals. I'll then have to cut wires and solder in the MDrive23's.
X1, Y1 motor rewire
P2 pin | Orig color | New color | Function |
---|---|---|---|
1 | Green | White | Opto |
2 | White | Orange | Step clock |
3 | White-red | Blue | Direction |
4 | Black | Brown | Enable |
5 | Red | Black | GND |
6 | White-green | Red | V+ |
50 pin table updated with this in mind
2015-09-13
Both X1 and Y1 MDrive23 motors have been integrated and tested
Made a second BBB 5V cape and tested X and Y successfully. Z pinout non-intuitive and made bad assumption. Need to make a more custom config and/or review CRAMPS config
CRAMPS pinout
P8
Pin | CPU GPIO | CNC function | I/O | Note |
---|---|---|---|---|
07 | gpio2[2] | X max | I | |
08 | gpio2[3] | X min | I | |
09 | gpio2[5] | Y max | I | |
10 | gpio2[4] | Y min | I | |
11 | gpio1[13] | FET 1 : heated bed | ||
12 | gpio1[12] | X dir | O | |
13 | gpio0[23] | X step | O | |
14 | gpio0[26] | Y dir | O | |
15 | gpio1[15] | Y step | O | |
16 | gpio1[14] | eMMC Enable | O | |
17 | gpio0[27] | estop | I | |
18 | gpio2[1] | Z dir | O | |
19 | gpio0[22] | Z step | O | |
26 | gpio1[29] | estop out |
P9
Pin | CPU GPIO | CNC function | I/O | Note |
---|---|---|---|---|
11 | Z max | |||
12 | E0 dir | |||
13 | Z min | |||
14 | Axis enable | |||
15 | FET 2 | |||
16 | E0 step | |||
17 | E1 step | |||
18 | E1 dir | |||
21 | FET 4 | |||
22 | FET 6 | |||
23 | Machine power | |||
24 | E2 step | |||
25 | LED | |||
26 | E2 dir | |||
27 | FET 3 |
Seems relatively complete with the notable issue that only XYZ have limit switches (E0/E1 do not). Probably not worth it to diverge from this where not needed. E0 and E1 will become X2 and Y2. TODO: figure out where limit switches should go
Limit switches
Confirm that limit switches take 5V. Is there a part or something I can read to confirm this?
Test them
Boards have a single part:
IUGN 3140U 230
- 4.5 - 24V
- 20 mA max open collector
Successfully fired laser!
2015-09-14
Step calibration
1000 steps = 0.001“ 1,000,000 steps per inch…
20 TPI, assume 200 step steppers 4,000 real steps per inch 250 microstepping?
- 250 * 200 = 50,000 steps per rev
- This is a legal stepping value
What is the fastest step rate the BBB can generate? Is this going to be problematic?
BBB stepgen limits
latency-test by itself will just report soft stepping. How can I measure the PRUs?
Figure 6.1 Step /direction signal timing……………………………………………6-3
- Step high: >= 100 ns
- Step low: >= 100 ns
- Dir: 50 ns setup time to step rise
- Dir: 100 ns hold time to step (must be held during entire step?)
http://linuxcnc.org/docs/html/man/man9/stepgen.9.html
- stepgen.N.steplen u32 rw: The length of the step pulses, in nanoseconds. Measured from rising edge to falling edge.
- stepgen.N.stepspace u32 rw (step types 0 and 1 only) The minimum space between step pulses, in nanoseconds. Measured from falling edge to rising edge. The actual time depends on the step rate and can be much longer. If stepspace is 0, then step can be asserted every period. This can be used in conjunction with hal_parport’s auto-resetting pins to output one step pulse per period. In this mode, steplen must be set for one period or less
Calibration test: https://www.youtube.com/watch?v=6010s7QhAiw