[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Mark IV control software
- To: firstname.lastname@example.org
- Subject: Re: Mark IV control software
- From: Tom Droege <droege@FNAL.GOV>
- Date: Tue, 27 Jan 1998 14:14:56 -0600
- Date-warning: Date header was inserted by FNAL.FNAL.GOV
- Old-Return-Path: <droege@FNAL.GOV>
- Resent-Date: Tue, 27 Jan 1998 15:47:51 -0500
- Resent-From: email@example.com
- Resent-Message-ID: <"V8TrZD.A.Vh.GBkz0"@kani.wwa.com>
- Resent-Sender: firstname.lastname@example.org
OK, I guess I should write a little about how the stepping motor
drives work on the Mark IV.
At the moment there are 9 stepping motor drives build into the
Mark IV design. Eight are general purpose, one is special for
the RA drive.
The general purpose stepper drives are run by a two bit register
and an enable bit. The enable bit turns on the power. The two
bits are the phase drive. To drive a motor, one turns it on with
the enable bit, then loads a sequence of two bit codes into the
register at intervals that the stepper motor can stand. The
motors I use will go to about 200 steps a second from a dead
start. I was able to get them to 2000 steps a second with some
fancy home built hardware.
At the moment, stamp code receives a command like "step forward
300 steps", and does it at a fixed rate. There is also a command
of step until you reach a limit. In either case, the rate is
determined by code in the stamp. It would not be too hard to
program in a ramp up. Ramp down is no problem. Eventually one
might run out of room in the stamp with too fancy a step program.
I envision commands like "step to forward limit","step n steps
forward", "step n steps back", "step to backward limit". These
should solve most moves. If you keep track in the PC of where
you are, then this should be enough for any move. One should
only have to move to a limit on turn on.
The RA stepper drive is different. It is step time critical. It
will be driven by a precision VCO. We will measure the temperature
at the VCO so that it will be possible to temperature compensate
it. The VCO drives through a 7 stage binary count down, with
selection at each stage by a register bit. There is a bit that
controls the direction, and a bit to turn on the power. There is
a DAC that will provide a minor trim, and a POT that provides a
major trim. The binary count down will be used to select to
within a factor of two of the correct sideral rate. The pot
will be used to set the rate, and the DAC will be used to trim
it withing 0.01% or so. Any temperature compensation will be
done by program control. There is also a direct path where the
Stamp can pulse the RA drive to slew it, and to home it to a limit
I envision stamp commands like "start sideral drive", "stop
sideral drive", "backup n steps", "forward n steps", etc..
Again there will be limit switches to detect end points.
I have found the limit switches to be good to 0.001". This is
about 10" of arc for the RA drive. We will half step the RA
drive for about 5" of arc per step. This means that the normal
(sideral rate) for the stepper is 3 steps per second. If we
can only slew the motor at 200 steps per second, then that is
a 3/200 forward to back ratio. If we track for an hour, it will
take 54 seconds to get back to the starting point. This is not
so bad since it takes 40 seconds to read out an exposure. So
most rewinds can take place while the CCD is being read out.
For the declination drive, I have only picked part of the
gear train. It will probably go a few minutes per step. This
is negotiable. Can anyone think of a reason to step more
accurately? The slower one steps the slower one slews.
So Chris, I think everything is built in that you might want.
The only question is whether or not there is enough room in the
stamp to do the ramp up and ramp down schemes. I am using
cheap motors, so they could be improved. The Hurst SLS which
you can find in the Allied Catalog. I will think about where
I could put a header, but don't see why everything you want
to do can't be done now. The last code used about half the
space in the stamp, and that was with a 4 bit bus which caused
a lot of program problems. The new 8 bit bus is more efficient.
At 10:02 AM 1/27/98 -0600, Chris wrote:
>>Tom Droege wrote:
>>> But I always listen to arguments for
>>> other designs.
>>Well, you asked for it...
>>I am having trouble figuring out how to point the Mk IV at
>>an exact known location given my understanding of the stepper
>>motor control. What I'd like to do is move the mount at a
>>high speed to any location within it's limit of motion and
>>"stop on a dime"
>>As long as you are still doing PCB layout, could I ask for one
>>thing? Could you put a "fracture point" into the stepper motor
>>control. I think you are using a VCO driven count down register
>>to drive the motors. This must feed a power transistor driver.
>>Could you put a row of jumpers on the board such that pulling
>>the jumper disconnects the current logic level signal from the
>>power drivers. This would allow an easy upgrade path for the
>>motor controller. The jumpers could be pulled and a dual row
>>header cable would connect a replacement logic level driver.
>>I have in mind a very smart stepper motor controller that knows
>>about things like mass, rampping up and down speeds and how to
>>"go to" a commanded location and maybe even calibrate itself
>>on power up with an IR limit sensor. The controller would "talk"
>>over the same type serial interface that your DACs use and accept
>>a small set of commands much like the STAMP does. With
>>such a smart controller, the mount's slew rate would be determined
>>by the motor size and the current limit of your drive circuit.
>>This could all be done later. All that is needed now is a some
>>pins and jumpers. Keep the curent design.
>> email@example.com Voice: 818-351-0089 X127
>> Logicon RDA, Pasadena California Fax: 818-351-0699