RAMP(OPCSDEFS)		Optical Printer Control System		RAMP(OPCSDEFS)

    NAME
        ramp - configure each motor channel's max acceleration and velocity

    USAGE
        ramp [chan] [Accel] [MaxVel] [Accel] [MaxVel]
                       └────┬────┘     └────┬────┘   
		          Normal           Slew

        The "Slew" values are used by SEEK(OPCS) to find frames on the
	camera and projector as quickly as possible without exposing film.

    EXAMPLES
                        Max      
                     Velocities  
                     ┌───┴────┐  
        ramp a  10  150  15  200        ramp a  10  150  15  200
                 └───┬───┘                      ───┬───  ───┬───
                 Accelerations                  Normal     Slew

    DESCRIPTION
        As of version 2.54b the command affects ALL motor ramping,
	including film movement and shutters.

        Sets the maximum accelerations and velocities for motor movement
	commands such as CAM(OPCS), PRO(OPCS), REP(OPCS), GO(OPCS), 
	JOG(OPCS), FEED(OPCS), etc.

	Motor speeds are influenced by SPD(OPCSDEFS) and PPR(OPCSDEFS).
	Shutter motors (that move film) are additionally influenced by
        MRP(OPCSDEFS), to ensure ramping doesn't happen during exposure
	(which would cause non-uniform exposure across the image field).

	For example, a Kuper RTMC48 card operates at 120 samples per second,
	so acceleration and velocity values represent how many steps
	are sent to the stepper motor each 1/120th of a second. 

	So a max velocity of 133 means the motor won't run faster than
	133 steps per 1/120th sec, or 16kHz (around 8 fps). The math being:

	             maxvel * samps_per_sec = steps_per_sec 
		       │            │              │
	              133   *      120      = 15,960 (~16kHz)

              steps_per_sec / pulses_per_rev = frames_per_second
		    │              │                 │
	         15,960     /     2000       =     ~8 fps

	Accel values are the maximum acceleration used for ramping.
	As the motor ramps up to speed or down to a stop, the velocity
	is changed each 1/120th of a second by the 'accel' value. (See
	graph below)

	MaxVel is the maximum velocity for the motor channel.
	The motor will not try to run faster than this value.

	There are different values for "normal" motor runs and "slew".
	"Normal" values are used in all motor runs with the exception
	of SEEK(OPCS) which uses the "Slew" values.

    EXAMPLES
        Here is a typical motor run velocity profile; the motor ramps
	up to speed (left), runs at a steady rate (center), and ramps
	back down to a stop (right):

	    Motor                                    Motor
	    Start                                    Stop
	    :                                         :
	    :           o o o o o o o o o o           :  <- Max Velocity
	    :         o o o o o o o o o o o o         :
	    :       o o o o o o o o o o o o o o       :
	    :     o o o o o o o o o o o o o o o o     :
	    :   o o o o o o o o o o o o o o o o o o   :  _
	    : o o o o o o o o o o o o o o o o o o o o :  _| Acceleration

	      <-------> <----------------> <-------->
	       Ramp Up    Constant Rate     Ramp Down

    SEE ALSO
        MRP(OPCSDEFS)     - set 'maximum ramping pulses' for shutter runs
        RAMP(OPCSDEFS)    - set maximum accelerations and velocities
        SPD(OPCS)         - set the camera's exposure speed
        SPD(OPCSDEFS)     - set a motor's running speeds
    RAMPINFO(DOCS) -- detailed info about how motor ramping works

    ORIGIN
	Gregory Ercolano, Los Feliz California 08-15-91
© Copyright 1997 Greg Ercolano. All rights reserved.