NCStepper4D Firmware
The NCStepper4D firmware is designed to allow our SS4D series of four motor controllers to operate four-axis stepper motor systems, wherein the intent is to control the set of four of motors as one unit. It supports "perfect line" drawing, wherein the firmware controls the relative W,X,Y,Z stepping rates needed to cause straight (linear) motion between specified pairs of W,X,Y,Z addresses. Additionally, the code provides a simplified arc/circle (actually, a polygon) drawing tool, which permits easy drawing of near-circles and similar figures on any selected pair of motors.
In order to perform the linked-motor operations, the firmware makes the assumption that one "step" on the any motor generates the same distance of motion as one "step" on any other motor. It supports a separate backlash setting for each motor, in order to compensate for gear train 'windup' behaviors.
The NCStepper4D firmware shares many of the features of the PotStepper4D four-motor controller firmware. The PWM control of the motors is identical, as is the general method of sending numeric parameters for commands. Many of the commands which configure the system are also identical (such as setting the step rate); however, the fundamental control theory is different. The NCStepper4D firmware explicitly controls all motors at the same time, from a single command (such as Goto or Arc), with automatic step-rate ratioing in order to generate straight lines; while PotStepper4D explicitly controls the motors independently, so that one motor may be performing a "slew" operation, while the another is executing a "goto".
The current version (using Adobe format) of the common NCStepper4D manual for all of our products is available by clicking here. Hint: If you want to save your own copy of the manual, right click on the above link, and then select the 'Save Target As...' option which appears. Tell the system where to save the manual, and then you will be able to browse it at your leisure.
- Four stepper motors are to be controlled at one time.
- Each motor most be unipolar
- Limit switches may be used to automatically request stop of motion if either motor reaches a limit in either direction.
- Rates of 1 to 38,422 microsteps per second are supported.
- Step rates are changed by linearly ramping the rates. The rate of change can be from 1 to 38,422 microsteps per second per second.
- All motor coordinates and rates are always expressed in programmable microunits of up to 1/64th step. Changing stepping modes between half, full and micro-steps does not change any other value other than which winding pairs may be driven at the same time, and how the PWM internal software is operated.
- Motor coordinates are maintained as 32 bit signed values, and thus have a range of -2,147,483,647 through +2,147,483,647.
- Both GoTo and Arc (actually, multi-line-segment) actions are fully supported.
- Arc vertex locations are calculated to a precision of about 1:10,000,000
- Four modes of stepping the motor are supported:
- Half steps (alternates 1 winding and two windings enabled at a time),
- Full power full steps (2 windings enabled at a time)
- Half power full steps (1 winding enabled at a time)
- Microstep (programmable to as small as 1/64th steps, using a near-constant-torque PWM algorithm)
- A TTL "busy" signal is available, which can be used to see if the motors are still moving. This information is also available from the serial connection.
- Complete control of the motors, including total monitoring of current conditions, is available through the 9600 baud serial connection (other baud rates may be selected at the time of ordering the board).
- Any number of motors may be run off of one serial line, when used in conjunction with one or more SerRoute controllers.
- Any motor may be 'disabled' relative to motion control. Once this has been done, its outputs may be used to drive low-current relays, under control of the firmware.
Click here if you need to download the current version Adobe Acrobat Reader from Adobe's site.
Click here if you prefer to use Foxit Reader as is available from the Foxit Software site.
