MX2000 System for the 41-inch Telescope
Last Updated on 1-12-2004
Wiring Notes
Only 4 of the 6 motor wires are needed for the new MX2000 system.
The red a green wires should
not be connected to anything or each other.
The label on the MX2000 case for outputs 1,2,3 and 4 should
be wired up to black, orange, green and blue respectively.
Notes on the old Superior Electric Motor Driver Electronics
- Maximum Speed = 2520 steps per second
- Acceleration = 500 steps per second2
- Set Rate (Medium Speed) = 1000
- Track rate in pulses per second = 103(for tracking), 102 (for moves)
- Guide Rate = 40
- Motor Specifications
MX2000 Programming Notes
- The program provided by Superior is good for testing but
will not satisfy our telescope requirements.
- I have written a short Visual Basic program for testing.
It's stored in a folder called
"MX2000Tester". It has a terminal window and buttons for manual testing
of motor commands.
- The communications port settings are as follows:
COM1, 9600 baud, No parity, 8 data and 1 stop bit.
- The commands that seem relavant are MOVE, JOG, SPEED, ACCEL, DECEL, MAXSPD, ABSPOS.
Here are some examples.
- MOVE(1)=-1     ' Move motor #1 one unit (e.g. CCW)
- JOG=0,1     ' Ramps motor #2 to maximum speed (eg. CW)
- MAXSPD=1, 1     ' Sets the maximum speed of both motors to 1 unit/second
- ACCEL=1.86     ' Maximum acceleration (The minimum acceleration setting for MX2000 seems to be ~1.86 units/second2 (See required SS2000D12 settings below))
- DECEL=1.86     ' Maximum decleration
- ABSPOS     ' Returns the number of units moved from the start position. This may be good for error checking.
- The MX2000 system seems to have it own unit of measure. For example speeds must
be given in terms of units/seconds when programming.
- SFA Experimental Data:
- The setting on the SS200D12 Motor Drives is set to 20000 steps per revolution.
- Experimentally this gives 10 units = 1 revolution. For example, "MOVE=10" rotates
motor A one revolution.
- The information printed on the motor says 200 steps per revolution so I suppose
we are "microstepping".
- "SPEED=1" followed by "MOVE=10" causes Motor A to move 1 revolution in 10 seconds.
- Note: q=wt. So t=q/w=10 seconds.
- "SPEED=50","MAXSPD=50", "ACCEL=10", "DECEL=10" followed by "MOVE=250" causes Motor A to move 1 revolution in 10 seconds.
- Note: q=1/2at2,
w=at,
and w2=2aq for acceleration from rest to the maximum speed.
- So q=w2/(2a)=125 units and t=w/a=5 seconds units for ramping up all the way to MAXSPD
(wmax) from rest.
The total time for ramping up and then back down would be 10 seconds
(qa=2wmax2/(2a)=250 units).
- Calculating Move Times:
- Now consider the case where the move distance qtotal is less than
qa=wmax2/a.
- Here MAXSPD (wmax) is not reached. The total number of units moved is then
qtotal=2(1/2a(t/2)2).
- So MOVETIME = t = 2(qtotal/a)(-1/2)
for qtotal<qa.
- Now consider the case where the move distance qtotal is greater than
qa=wmax2/a.
- Here MAXSPD (wmax) is reached and maintained for some time
t2=q2/wmax
where q2 is the distance moved during the time when
the motor is moving at its maximum speed.
- The time for an accleration is t1=wmax/a
and the distance moved during an accleration is
q1=wmax2/(2a).
- Note that MOVETIME = t = 2t1 + t2 and the distance moved is
qtotal = 2q1 + q2.
- So MOVETIME = t = qtotal/wmax
+ wmax/a
for qtotal>qa.
Dan Bruton