Networked Modular Control - Test Utility Help Contents

Contents

Overview

Establishing Communications

NMC Module Types

Viewing Control Panels

Additional Information

PIC-SERVO  Module Properties

Motor Status Panel

Motion Commands Panel

Servo Parameters Panel

Homing Control Panel

PIC-IO  Module Properties

I/O Bits Panel

A/D Panel

Counter/Timer Control Panel

PWM Panel

PIC-STEP  Module Properties

Motor Status Panel

Motion Commands Panel

Stepper Parameters Panel

Homing Control Panel


Test Utility Overview
Networked Modular Control Test Utility:  Overview

Overview

The Networked Modular Control (NMC) Test Utility allows users to test the functionality of control modules designed to use the NMC Communications protocol.  Modules may be motor controllers, data acquisition systems, I/O devices, IR communication devices, etc..

With a string of NMC modules connected to one of the COM ports, this utility will search for modules and initialize them with addresses starting at 1 for the module furthest from the host.  The list on the left side of the NMC Test Utility control window will show all of the modules found on the network, along with their assigned address.  Clicking on one of the modules in this list will cause that module's properties to be displayed in the control panel on the right.  Different control panels will be displayed for different types of modules.  The status properties of the selected module will be updated automatically four times per second.

During  initialization, each of the modules will be programmed with typical operating values.  Note that these values are not necessarily the same as the module's default values.

On exit, you will be prompted with the option to reset all modules to their power-up state.

Establishing Communications gives details on connecting your modules to your COM port.


Definition of furthest
NMC Modules have ADDR_IN and ADDR_OUT connections which are daisy-chained from one module to the next.  A module's communications is enabled by an active ADDR_IN signal, and it activates its ADDR_OUT signal once its own address has been programmed to a unique value.  The module furthest from the host will have its ADDR_IN connection jumpered to the active state, and its ADDR_OUT signal will be connected to the ADDR_IN connection on the adjacent module in the chain.  These connections are continued up to the closest module from the host, which has its ADDR_OUT connection left open.


Establishing Communications

Establishing Communications

Network Adapters

NMC modules operate as slave devices on a full-duplex RS485 network.  The PC, acting as the master controller, requires a simple RS232 to RS485 adapter (if using a standard RS232 COM port) to control the network.  Because the master controller never has to share the command transmit line, it is never required to disable the output of the RS485 transmitter.

Baud Rate

By default, all NMC modules power-up with a baud rate of 19200, 1 start bit, 1 stop bit, no parity.  The baud rate can be changed with the Communications Settings button to 57600 baud, 115200 baud or 230400 baud.  In operating this test program, there is no real need to operate at other than 19200 baud, except to test the hardware reliability at higher communication rates.  The baud rate of 230400 should only be used with PIC-SERVO SC controllers, and only with serial ports which support high speed baud rates.

COM Port Selection

When starting the NMC Test program, or when resetting the network, you will be prompted for the COM port and the baud rate.  If the COM port fails to open, another application may have control of it, or it may not exist.  Close the offending application or check your hardware configuration as required.  If no modules are found, re-check your connections, make sure logic power is supplied to all the modules, and make sure that the furthest module has had the proper jumpers installed.  If some but not all modules are found, re-check your connections and reset the network manually using the "Reset Network" button.

Network Reset

On startup or when the "Reset Network" button is clicked, a reset signal will be sent to all modules on the network, and all modules will be set with unique addresses, starting with 1 for the furthest module.  When power is first applied to modules, they may read or send a spurious character.  In some circumstances this may cause the initial search for modules to fail or not detect all modules.  In this case, the "Reset Network" button can be used to reset the network manually.  This can also be used to disable all modules on the network.


NMC Module Types

NMC Module Types

An NMC Module is any device which adheres to the NMC Communications Format  (see Additional Information for a complete description).  The format is suitable for motor controllers, data acquisition systems, I/O devices, IR communications devices, etc. .   Currently, however, PIC-SERVO based motion controllers, PIC-STEP based motion controllers, and PIC-I/O I/O expansion modules are the only devices currently supported by this utility.  Visit the web site "http://www.jrkerr.com" for updates to this utility.

PIC-SERVO Modules (Module Type 0)

The PIC-SERVO motor control board is designed for the motion control of D.C. Motors with incremental encoder position feedback.  It is based on the PIC-SERVO chipset which has the NMC Communications protocol build in, and provides a PID servo control filter, velocity and trapezoidal profiling modes, as well as a variety of error checking and homing functions.

PIC-I/O Modules (Module Type 2)

The PIC-I/O module is a simple I/O expansion board which has 12 bits of digital I/O (user programmable as input or output), three 8-bit A/D input channels, two PWM output channels with high current drivers, and one 32 bit counter/timer channel.  Like the PIC-SERVO, it has the NMC Communications protocol built in.

PIC-STEP Modules (Module Type 3)

The PIC-STEP motor control board is designed for the motion control standard stepper motors.  It is based on the PIC-STEP chip which outputs step & direction signals to the amplifier.  Various control modes are supported including trapezoidal profile mode, velocity profile mode, unprofiled position mode and unprofiled velocity mode.


Servo Motor Status Panel

Servo Motor Status Panel

The Motor Status panel gives information about the operating status of the motor as reported directly by the PIC-SERVO controller.

Position

The position is reported directly in quadrature encoder counts and is in the range of +/- 2,147,483,647 counts.  The "Clr" button next to the position can be used to set the position to zero.  The position should only be reset when the motor is at zero velocity.  With the PIC-SERVO SC, the position can also be set to a specific value by editing the position value and clicking on the Set button.

Velocity

The velocity is reported in quadrature encoder counts per servo tick.  It is in the range of +/- 32,676.

A/D Value

The A/D value is the 8 bit digitized value of the analog input channel and is between 0 and 255.  Note that the analog input channel can be used in conjunction with the current limiting feature if a current sense signal from an external amplifier is connected to the analog input.

Home Position

The home position is the position of the motor captured when the triggering conditions set in the Homing Control Panel are met.

Status Indicators

The first set of status indicators reflect the current state of the Limit 1 switch input, the Limit 2 switch input, the Index input, the Motor Power sense input, and whether the Servo is enabled.

The second set of indicators are for latched  flags, reflecting the error conditions of excessive Position Error, an Overcurrent condition, or of Position Wraparound of the position counter.  These flags must be cleared explicitly using the "CLEAR" button to the right.


Definition of quadrature encoder counts
Incremental encoders have two sensors which look at the lines on the code wheel.  Each of these sensors produces a square-wave, with the two square-waves either +90 or -90 degrees out of phase, depending on which way the motor is rotating.  Quadrature encoder counting refers to counting both the rising and falling edge of each square-wave, giving four counts per line on the code wheel.


Definition of index signal
The index signal on an incremental encoder is usually a single pulse which occurs only once per revolution of the codewheel.  It is typically used to determine the absolute position of the motor shaft.


Definition of servo tick
A servo tick is the amount of time it takes for one servo cycle to execute.  Each servo cycle, the velocity profiling or trapezoidal profiling calculation is performed and the PID servo calculation is performed.  The minimum servo tick time for the PIC-SERVO is 0.51 milliseconds.  The servo rate divisor can be used to set the tick time to multiples of 0.51 milliseconds.


Definition of velocity profiling
Velocity profiling is where the commanded position of the motor is incremented by current command velocity each servo tick, resulting in a uniform motor velocity.  If the current command velocity is not equal to the goal velocity, the current command velocity incremented or decremented by the command acceleration each servo tick until the current command velocity is equal to the goal velocity.


Definition of trapezoidal profiling
Trapezoidal profiling is used to move a motor smoothly from its current position to the goal position by first accelerating the motor up to the command velocity at the constant command acceleration, slewing the motor at a constant command velocity until it is near the goal position, and then decelerating the motor to a stop at the goal position.  If the goal position is near the starting position, the command velocity may never be reached before the motor begins to decelerate.  Like the velocity profiling, the trapezoidal profiling increments or decrements the commanded position each servo tick to create the motion profile.


Definition of PID servo
The Proportional-Integral-Derivative, or PID control filter uses the sum of three terms to produce an output signal based on input position data.  The proportional term is the  gain value Kp multiplied by the difference between the current motor position and the current commanded position.  The difference in these errors is the current position error.  The integral term is the gain value Ki multiplied by integral of the position error.  The derivative term is the gain term Kd multiplied by the derivative of the position error.  For a sampled control system like the PIC-SERVO, the integral of the position error is the running sum of the position error at each servo tick, and the derivative of the position error is just the difference in the position error from on servo tick to the next.


Definition of PWM
The pulse width modulated, or PWM output is a 20 KHz square-wave where the ratio of the time that the signal is high to the overall period, or the duty cycle, is used to control how much power is to be delivered to the motor by the amplifier.  A PWM value of 0 corresponds to a 0% duty cycle where the amplifier is never turned on, and a PWM value of 255 corresponds to a 100% duty cycle where the amplifier is turned on fully.  A separate direction signal is used to tell the amplifier to drive the motor in the forward or reverse direction.


Servo Motion Commands Panel

Servo Motion Commands Panel

The Motion Commands panel allows the user to specify motor motions.  The "GO" button will send the PIC-SERVO controller a motion command for the selected operating mode.  The three different stop buttons can be used to stop a motor.

PWM Mode

In PWM mode, the position servo is disables and the absolute value of the specified PWM value is sent directly to the output.  The PWM value must be between -255 and +255.  Negative values will drive the motor in the reverse direction.

Velocity Mode

In velocity  mode, the velocity profiler will be used to accelerate or decelerate the motor from its current velocity to the specified goal velocity.  The specified acceleration must be positive, but the velocity may be positive or negative.  The velocity is a 32 bit value with the lower 16 bits a fractional value.  For example to rotate at 15 encoder counts per servo tick, you would specify a velocity of 15 x 2^16, or 983,040.  The acceleration is in units of encoder counts/servo tick/servo tick and is also a 32 bit quantity with a 16 bit fractional component.  Velocity mode can be entered at anytime.

Position Mode

In position control mode, a trapezoidal profile is used to move the motor from its starting position to the to the goal position.  The specified acceleration will be used and the specified velocity will not be exceeded.  The acceleration and velocity must both be positive, and the goal position must be in the range of -2,147,483,647 to +2,147,483,647 encoder counts.  In addition, the goal position should not be more than 1,073,741,824 counts from the starting position.  Before a position mode command can be issued, the "move done" flag must be set and the motor must be at zero velocity except for the PIC-SERVO SC, where a position mode command can be issued at any time.

Move Done Indicator

The "move done" indicator is used to in position mode to indicate when the goal position has been reached, or in velocity mode, when the goal velocity has been reached.   It will also be set in PWM mode or whenever the servo is disabled.

Stop Button

This button will cause the motor to decelerate to a stop at the current acceleration rate.  It is equivalent to setting the velocity to zero and then clicking the "GO" button.

STOP! Button

This button will cause the motor to servo to its current position with zero velocity immediately.  This stop mode should only be used as an emergency stop, or for enabling the position servo from PWM mode.

Off Button

This button will turn off the motor by entering PWM mode with a PWM value of 0.

Enable Amplifier Box

Clicking on this box will raise or lower the amplifier enable output.  If this amplifier enable output is used, this box must be clicked before power can be applied to the motor.


Servo Parameter Panel
Servo Parameters Panel

Servo Parameters Panel

The Servo Parameters panel allows the user to modify the eight servo control parameters, or gains.  The "Set Gains" button will apply the gains to the selected controller.

Kp, Ki, Kd

Kp, Ki,  and Kd are the primary control parameters used by the PID control filter.  They must all be positive values in the range between 0 and 32,767.

Output Limit (OL)

The output limit. sets the maximum PWM output value.  If the control algorithm produces a larger value, the actual value will be clipped to the output limit value.  The output limit must be between 0 and 255.

Current Limit (CL)

If the A/D input is connected to a voltage signal proportional to the motor current, the current limit can be used to adjust the PWM output to prevent the motor current  from exceeding the limit.  If a current limit between 1 and 255 is used, the PWM output will be reduced if the A/D value exceeds the current limit.  If the A/D value is inversely proportional to the motor current a negative value for the current limit should be used (between 0 and -255).  This will cause the PWM output to be reduced whenever the A/D value is less than the absolute value of the current limit.  The Overcurrent flag will be set whenever an overcurrent condition occurs.  A current limit value of 0 effectively disables current limiting.

Servo Rate (SR)

The servo rate is a clock divisor which determines the length of a servo tick.  The servo tick time is equal to 0.51 milliseconds multiplied by the servo rate divisor value.  This value must be between 1 and 255.  In general, this value may be left at the default value of 1, but for systems with a large inertia and/or low encoder resolution, it may be desirable to increase the tick time to improve the servo's damping characteristics.

For the PIC-SERVO SC, the servo tick time is fixed at 0.51 milliseconds.  The servo rate is instead interpreted as the number of servo ticks which transpire between position error samples used for the derivative term.

Deadband Compensation (DC)

Some amplifier/motor combinations will exhibit a deadband around a zero PWM output.  That is, small PWM values will have no visible effect on driving the motor.  While servoing, the deadband compensation value will be added to the magnitude of the PWM output, thus boosting the control signal  into the active region outside the deadband.  Deadband compensation is only available on versions 4 and higher of the PIC-SERVO.

Step Rate Multiplier (SM)

The PIC-SERVO SC has a multiplier factor applied to the step input pulses.  The command position of the motor is incremented by the number of step pulses multiplied by the step rate multiplier.

Integration Limit (IL)

The integration limit limits the absolute value of the integral of the position error.  The integration limit must be between 0 and 32,767.  The limit value used internally is the limit value x 256.  Limiting the integration term is useful for preventing huge sums from accumulating in that case of a locked rotor.  Temporarily setting this value to zero can be used to zero out any accumulated integral error term.

Position Error Limit (EL)

The position error limit is used to detect locked rotor conditions or other situations where the motor is not tracking as accurately as it should.  If the absolute value of the  position error ever becomes greater than the position error limit, the position servo will be disabled and the PWM output value will be set to 0.  The position error flag will also be set.  The position error limit is in units of quadrature encoder counts, and must be between 0 and 16,383.

Set I/O Mode

For the PIC-SERVO SC, you can select I/O options for limit switch actions (motor off or stop abrupt), output modes (PWM & Direction, Antiphase PWM or 3-Phase commutation), and also enable Step & Direction inputs.  If the output mode for your PIC-SERVO SC has not already been stored in EEPROM, you should set the I/O mode before enabling the amplifier.  (Note: setting the I/O mode does not automatically store the I/O mode in EEPROM.)

EEPROM Configuration

The PIC-SERVO SC allows you to save parameters in EEPROM which will be restored on power-up.  (A software reset will not restore EEPROM data.)  Configuring the EEPROM will reset the PIC-SERVO SC and it will be unavailable until the entire network of controllers is reset.


Servo Homing Control Panel

Servo Homing Control Panel

The incremental encoders which are used for position feedback do not know their absolute position on power-up.  Therefore, the homing control uses limit switches, the encoder index signal, or other conditions to determine the absolute position of the motor.  When one of these homing triggers is activated, the current position of the motor is stored as the home position in the Motor Status Panel.  The distance between the current position and the home position gives the absolute position of the motor.

Typically, the homing trigger conditions are set using the "Start" button and then the motor is set in motion using one of the three motion command modes.  Any or all of the homing trigger conditions can be set, and the home position will be captured as soon as any of these triggers occurs.  The "Home in progress" flag will be set when homing is initiated, and will be cleared once the home position has been found.

Homing on Limit Switches or Index Signal

Homing on either of the limit switches or on the index signal will occur when theses input signals change value.  Typically, an inaccurate home position (within one revolution of the motor) will be found by homing to one of the limit switches.  A final, more accurate, home position can then be found by looking for the index pulse on the encoder.  Low velocities should be used while homing to insure the most accurate capture of the home position.

Homing on Position Error or Over Current

In systems which do not have limit switches or index signals, the motor may be homed by moving until a fixed limit stop is hit.  If  motor current sensing is used, the home position can be captured when the current limit is exceeded and then the motor can be commanded to stop.  If current sensing is not available, the home position can be captured when the position error limit is exceeded, and the motor will be turned off automatically.  In either of these cases, the motor should be moving at a very low velocity and the current or position error limits should be set to the minimum usable value to prevent damage to the motor or mechanism when the limit stop is hit.

Auto Stop on Home

With version 3 or higher of the PIC-SERVO, setting one of the three stop modes will cause the motor to stop automatically (in the specified mode) once the home position has been found. The "Off" option will disable the servo, allowing the motor to spin freely.  The "Abrupt" option will cause the motor to stop abruptly and servo to its current position.  (This mode may cause excessive accelerations.)  The "Smooth" option will decelerate the motor to a stop using the current programmed acceleration value.  For versions 1 & 2 of the firmware, the Auto Stop feature is not available, and the Auto Stop section is disabled.


I/O Bits Panel

I/O Bits Panel

The I/O bits panel lets you view the state of the input bits, set the value of the output bits, and define whether particular bits should be inputs or outputs.

Setting Bits as Inputs or Outputs

The two six-position dip switch controls let you define whether a bit is an input or an output.  If the switch is in the up-position, the bit is an input (the default), and if the switch is in the down position, the bit is an output.  Clicking on the white space of a dip switch will cause it to change states.  Make sure that the pin corresponding to a bit is connected to another devices input (or left open) before making it an output, otherwise, you may damage the PIC-IOs output driver.

Setting/Clearing Output Bits

The row of LED indicators below the dip switch controls are used to set or clear an output bit.  If the LED is white, the bit is clear (0 volts) and if the LED is red, the bit is set (+5 volts).  Clicking on the output LED will toggle its value.  If a bit is defined as an input, the output LED will be maroon or gray.  This indicates the state of the output bit will be set to should it become an input.  Clicking on an output LED while the bit is still defined as an input can be used to pre-set or pre-clear a bit so that it will take that state immediately when it is switched to an output.

Viewing Input Bits

The row of LED indicators above the dip switch controls indicate the state of the input bit (red for set, white for clear).  If the bit is defined as an output, the LED will be maroon or gray.  The input LED should always be maroon when the output LED is red, and it should be gray when the output LED is white.  If the input LED does not match the output LED, it means that the level read by the input is not the level set as the output; the driver is not able to drive the output to the proper voltage, potentially damaging it and the device it is connected to.  If this occurs, immediately change the bit to an input.


A/D Panel

A/D Panel

The A/D panel displays the values of the three 8-bit A/D input channels.  The values displayed are between 0 (Input = 0 volts) and 255 (Input = 5 volts).


Timer Control Panel
Counter/Timer Control Panel

Counter/Timer Control Panel

The counter/timer control panel allows you to set the operating characteristics of the PIC-IO modules 32 bit counter/timer.

Setting at a Counter or a Timer

The buttons on the right side of the panel allow you to set the counter/timer as either a counter, a timer, or to a disabled state.  As a counter, the value displayed on the right is incremented with each rising edge of I/O bit number 10.  Normally, bit 10 would be set as an input to count external events.  If bit 10 is set as an output, however, the count will reflect the number of times Bit 10 is manually set.  When set as a timer, the counter/timer counts the ticks of the PIC-IOs internal 5 MHz clock.  The time displayed is in seconds.  The Set Mode/Clear button must be clicked to make the mode change take effect.

Setting the Resolution

The counter/timer has a pre-scaler which can be set to count every event, every other event, every fourth event or every eighth event.  This is most useful for increasing the maximum duration which can be timed before the 32 bit timer rolls over.  The Set Mode/Clear button must be clicked to make the mode change take effect.

Clearing the Count/Time Value

The Set Mode/Clear button both sets the mode and clears the counter/timer value.  There is no way to change the mode (or resolution) without clearing the count.


PWM Panel

PWM Panel

The PWM allows you to type in PWM output values for the two high current output drivers on the PIC-IO module.  Values should be between 0 (0% duty cycle - output turned off) and 255 (100% duty cycle - output full on).


Viewing Control Panels

Viewing Control Panels

Normally, a control panel will be displayed which corresponds to the type of module selected from the list of modules found on the network.  For reference, however, you may wish to view the control panels for different types of modules which you dont have connected to the network.  To do this, simply click on the "Reset Network" button and then select "Cancel" when prompted to select a COM port.  The control panel will display NO MODULES SELECTED, along with buttons for viewing control panels for the currently supported module types.


Additional Information

Additional Information

Please refer to the PIC-SERVO, PIC-I/O or PIC-STEP Data Sheets for further details regarding use of these motion control chipset.  These data sheets, along with other application notes may be downloaded from the web site: "http://www.jrkerr.com/"


Stepper Motion Commands Panel

Stepper Motion Commands Panel

The Motion Commands panel allows the user to specify motor motions.  The "GO" button will send the PIC-STEP controller a motion command for the selected operating mode.  The panel includes controls for enabling/disabling the amplifier, and for stopping the motor smoothly and abruptly.

Velocity Mode

Velocity mode will move the motor at a constant velocity with or without acceleration ramping, depending on whether or not the profiled box is checked.  If the profiled box is checked, an integer Speed value between 1 and +250 (or -1 and -250) is specified, and an acceleration time of 1 to 255 is used for accelerating or decelerating to the target speed.  Larger acceleration times will cause the motor to accelerate more slowly.

If the profiled is not checked, a floating point raw speed value between 0.4 and 250.0 (or -.4 and -250.0) is used.  This speed will be commanded immediately without any acceleration or deceleration.

Speeds units are equal to  25 steps/sec. in 1x mode, 50 steps/sec. In 2x mode, 100 steps/sec. In 4x mode and 200 steps/sec. In 8x mode.

Position Mode

In position mode, the motor will move at the specified speed and stop at the specified goal position.  The motor must be stopped before giving a position mode command.  If the profiled box is checked, the motor will ramp up to the goal speed, slew at that speed, and then decelerate to a stop at the goal position.  The speed and acceleration are the same as used for the velocity mode.  If the profiled box is not checked, the raw speed value is used, and there is no acceleration or deceleration at the ends of the motion.

The goal position must be in the range of -2,147,483,647 to +2,147,483,647 steps.

Motor Moving Indicator

The motor moving indicator tells you whether or not the motor is moving.

Stop Button

This button will cause the motor to decelerate to a stop at the current acceleration rate.  Stopping smoothly switches the controller into the profiled velocity mode with a target speed of zero.

STOP! Button

This button will cause the motor to stop immediately with no deceleration.

Enable Amplifier / Disable Amplifier Buttons

The enable amplifier button enables the amplifier and causes the motor position to be held with the specified holding current.  Various error conditions may automatically disable the amplifier, and this button can be used to re-enable it.  The disable amplifier button can be used to disable the amplifier, allowing the motor to spin freely.


Stepper Motor Status Panel

Stepper Motor Status Panel

The Motor Status panel gives information about the operating status of the motor as reported directly by the PIC-STEP controller.

Position

The position is reported directly in steps and is in the range of +/- 2,147,483,647 counts.  The Clear button next to the position can be used to reset the position to zero.  The position should only be reset to zero when the motor is not moving.

Timer Count

The timer count is the raw timer value which governs the motor speed.  Please refer to the PIC-STEP data sheet for details of interpreting this value.

A/D Value

The A/D value is the 8 bit digitized value of the analog input channel and is between 0 and 255.  If the Thermal input is connected to a thermistor mounted on the motor, the A/D value will be proportional to the motor temperature.

Home Position

The home position is the position of the motor captured when the triggering conditions set in the Homing Control Panel are met.

Status Indicators

The status indicators report the state of the limit switch inputs, the emergency stop input, the homing  switch input, and the auxiliary inputs.  Also indicated is the state of the motor power, whether the amplifier is enabled, and whether the motor is at the commanded speed.  On the PIC-STEP board from J.R. Kerr, the homing switch input is connected to the amplifiers home output, and is set whenever the amplifier cycles to its initial winding energization state.


Stepper Parameters Panel

Stepper Parameters Panel

The Stepper Parameters panel allows the user set control bits governing the amplifier or driver behavior, as well as changing other parameters governing the motion.  The Set Motion Parameters button will set the parameters for the selected controller.

Output1 - Output5

Outputs 1 - 5 are general purpose outputs of the PIC-STEP controller chip, typically connected to control inputs on the amplifier.  If a PIC-STEP controller board from J.R Kerr is being used, Output2 is used to control the half-step/full-step mode, Output3 is used to control the fast or slow decay mode (leave in slow decay mode), and clearing Output4 is used to force the amplifier into energizing the motor in its initial phase state (leave set for normal operation) .  Outputs 1 and 5 are not used by the PIC-STEP board.

Ignore Limits, E-Stop, Off on E-Stop

The next set of controls determines whether or not the forward and reverse limit switches, and the emergency stop input will automatically cause the motor to stop moving, or whether these inputs will be ignored.  The Off on E-Stop control will cause the amplifier to be disabled altogether if a limit switch or E-Stop fault occurs.  (By default, the motor will stop moving but hold its current position.)

Speed Mode

The Speed Mode sets a multiplying factor for the step rate timer.  In 1x mode, one speed unit is equal to 25 steps/second.  In 2x mode, one speed unit equals 50 steps/second.   In 4x mode, one speed unit equals 100 steps/second.   In 8x mode, one speed unit equals 200 steps/second.

Minimum Speed

The Minimum Speed is the lowest speed allowable for profiled motions.  The commanded speed should be equal to, or higher than, this minimum speed.  All profiled moves will start at this minimum speed, and any command to decelerate the motor to a stop will decelerate to no lower than this minimum speed before stopping.

Running Current

The Running Current determines how much current will be sourced to the motor while it is in motion.  A value of 255 corresponds to full current, and a value of 0 corresponds to no current.  Note that the PIC-STEP board allows the amplifier to be overdriven by about 25%, so do not leave the current limit set above a value of 200 for more than a few seconds.  Whenever the motor is not moving, the motor current will revert to the holding current.

Holding Current

The Holding Current determines how much current will be sourced to the motor while it not moving.  A value of 255 corresponds to full current, and a value of 0 corresponds to no current.  Note that the PIC-STEP board allows the amplifier to be overdriven by about 25%, so do not leave the current limit set above a value of 200 for more than a few seconds.  Whenever the a motion is started, the motor current will switch to the running current.

Thermal Limit

If the thermal input of the PIC-STEP is connected to a thermistor bridge (attached to your motor) such that the thermal input voltage drops as the temperature increases, the thermal limit can be used to automatically disable the amplifier if the thermal input (A/D value) drops below the set thermal limit.  A thermal limit of 0 effectively disables this feature.


Stepper Homing Control Panel

Stepper Homing Control Panel

The homing control panel is used to capture the motor position when some homing trigger condition, such as a limit switch being tripped, occurs.  Typically, the homing trigger conditions are set using the Set Homing button and then the motor is set in motion using one of the motion command modes.  Any or all of the homing trigger conditions can be set, and the Home in progress flag will be set when homing is initiated.   When a change in any of the homing triggers occurs, the captured home position will be displayed in the status panel, and the motor will optionally stop in the specified stopping mode.

Homing on Limit Switches

Homing on either of the limit switches will occur when theses input signals change value. Low velocities should be used while homing to insure the most accurate capture of the home position.

Homing on Homing Switch

The homing switch input is an optional input which can be used for homing.  On the PIC-STEP board from J.R. Kerr, the homing switch input is tied to the HOME output of the amplifier.  When the amplifer cycles to the beginning of its 4 (full step) or 8 (half step) step phase cycle, the home switch input goes high.

Auto Stop Mode

Setting one of the three stop modes will cause the motor to stop automatically (in the specified mode) once the home position has been found. The Off option will disable the servo, allowing the motor to spin freely.  The Abrupt option will cause the motor to stop abruptly and hold its current position.  (This mode may cause excessive accelerations.)  The Smooth option will decelerate the motor to a stop using the current programmed acceleration value.