In this video we’ll setup a SureServo in position register mode and use a push
button to initiate predefined moves.
This is using the indexing capability of the drive.
Up to eight pre-programmed positions or registers can be defined
and you can specify relative moves or absolute positions.
We’ll assume that you've already jogged the motor as shown in the earlier video.
At this point, power, fusing, and an e-stop contactor should all be wired
appropriately.
See chapter three for wiring information.
The motor code in P1-31
should also be set to the correct motor type.
With the power off we’ll add the ZIPLink cable
and terminal block I/O breakout module to our set up and a pushbutton box.
In this example, I’ve wired a two-position servo enable switch,
a momentary fault reset button,
a momentary trigger button,
and three maintained position selection buttons.
The I/O can be powered by external twenty-four volts or you can use the
limited twenty-four Volts available on the drive.
For this example, we’ll use the drives’ twenty-four Volt supply.
If your application is more complex you should consider an external twenty-four
Volt DC power supply.
To use the drives internal twenty-four Volts you need to add a jumper wire from VDD
to COM+.
To use external power you should wire twenty-four Volts to the COM+ connection and
negative twenty-four Volts to the COM- connection.
Here is a schematic that shows our connections.
For all the buttons and the switch I’ve wired one leg of each to the COM-
connection.
The switch is then connected to the digital input one - this will be the servo
enable.
The black momentary button is wired to digital input five.
This will be the alarm reset button.
The green momentary input button is wired to digital input four.
This will be the trigger to actuate the moves.
The three maintained buttons are wired to DI2, DI3, and
DI8.
These will be used to select from eight predefined positions.
In each case the pushbuttons will ground the input whenever they're pressed.
Now let's configure the drive.
Set the control mode first.
P1-01 selects the control mode and direction.
0001 will result in PR mode
that's position mode using the internal registers
with the motor spinning counterclockwise as forward.
The second most significant bit sets direction.
I’m going to use a setting of 0101 which will also result in PR
mode
but with the motor spinning clockwise as forward.
Configuring the basic digital inputs:
Select which digital inputs your system will require.
Here is a list of P2-10 through P2-17
to help you configure the drive.
A minimum configuration should contain at least servo enable,
alarm reset,
and the clockwise counterclockwise limit switches
if your system has over travel limits.
For our example we will permanently disable the over travels
P2-15 and P2-16
by setting them to 000.
Please take the time to wire over travel limit switches for safety
or to protect your machinery
especially if mechanical interference or conflict
is possible in your application.
Configuring the position selection inputs:
The drive can be configured to select the internal position set points by using
three digital inputs -
POS0, POS1 and POS2
Any of the digital inputs can be set as POS0,
that's code eleven,
POS1, that’s code twelve, or POS2, code thirteen
by configuring all three inputs all of the eight internal presets can be
selected
via external signals.
We have wired our pushbuttons to inputs two, three, and eight,
so we'll need to set up those inputs internally in the drive.
To configure digital input two as POS0
P2-11 will be set to 111.
To configure digital input three as POS1
P2-12 will be set to 112.
And to configure digital input eight as POS2
P2-17 will be set
to 113.
To save digital inputs for other uses not all of the position selection inputs
have to be configured.
If only two set points are needed
for example if the motor needs to move and then return
only one position selection set point needs to be configured.
Configuring only one input, two for example,
with POS0 and POS1 not assigned
would allow the selection of position one and position five.
We also need to set digital input four to be the command trigger
by setting P2-13
to 108.
This trigger will actuate the movements.
One additional note about the digital inputs the most significant bit selects
normally open or normally closed we've chosen one or normally open for all of
our inputs except the over travels
over travels are generally wired normally closed as a fail safe.
Parameter P1-33
selects incremental or absolute position mode.
Enter a value of zero for absolute mode or enter one for incremental mode.
We’ll start with one for incremental
or relative moves.
Remember to cycle power to the drive after configuring the drive I/O so that your
changes will take effect.
Configuring the position set points:
Parameters P1-15 through P1-30
determine the set points of positions one through positions eight.
Each set point can have two parts.
Full motor revolutions in the first register
and an additional number of pulses in the second.
so to move the motor exactly one revolution place a one in the first
position parameter P1-15
and leave zero in the second P1-16.
Let's set position two to exactly three and one half revolutions.
Set P1-17 to three and because one motor revolution consists of ten
thousand encoder counts
set P1-18 to five thousand
to achieve one-half a revolution.
Let's set position three to be one quarter of a rev.
Set P1-19 to zero
and P1-20 to twenty five hundred encoder counts.
Let’s set position four to be twenty five point four revolutions.
Set P1-21
to twenty-five
and P1-22
to four-thousand.
Finally I'm going to set position five at one hundred revolutions even.
Here is a list of the positions that I have selected.
Feel free to select your own positions.
You can set the remaining three positions P1-25 through P1-30
to any values you choose.
Okay, double-check your wiring and review the parameter settings.
We should be ready to test our setup.
I’ll power up the system
and switch the servo enable on.
The motor enables.
Without setting any of the address lines I can press the trigger and get one
revolution of the motor shaft.
This is position one.
Since we're in relative mode,
I can press it repeatedly and get exactly one revolution each time.
If I toggle the POS0 input to select position two,
and hit the trigger again the shaft rotates three and a half turns exactly.
Selecting position three yields one-quarter turns per trigger.
Position four generates a twenty five point four turns that we programmed
and selecting position five results in a long one hundred revolution move.
That's the basic position mode functionality.
You now have a Servo system set up for eight predefined moves.
Let's take a look at a couple of additional functions.
We’ve programmed the system for eight relative or incremental moves, what about
absolute mode?
Let’s set P1-33 back to zero for absolute position mode.
Now the positions set points will all be relative to the home position of the
motor shaft.
In our example home or zero position is the position where we powered up.
The SureServo supports several types of homing routines. Reference the manual and
parameters P1-47 through P1-51
for more information.
We’ll cycle power and test our position commands again.
If I now select the pre-programmed position three
the shaft will rotate one quarter of a turn.
Pressing the trigger again does nothing because we are already at the specified
position.
Selecting position one will now cause only three quarters of a revolution of
movement to reach the one revolution set point.
Selecting position three again
now results in a reverse move of three quarters of a revolution back to the
absolute position of one-quarter turn.
The SureServo also supports automatic positioning
with either absolute or relative moves
with preset dwell times for each position.
In this entire example we've been using the default speed and acceleration
values in the drive.
The SureServo allows a separate velocity value for each of the eight moves.
Separate acceleration and deceleration values are shared for all the moves.
The drive even supports “S-curve” acceleration and deceleration for smooth
starts and stops.
See parameter P1-36 for more information.
Let's increase the speed of a move
and slow the acceleration.
I'll increase the speed of position move number five
by changing P2-40 to three thousand RPM.
The default was one thousand.
I’ll slow the acceleration time P1-34
from it’s default value of two hundred milliseconds
to two thousand milliseconds.
And again let’s test the move.
You can see the dramatic difference the shaft accelerates slowly but gradually
reaches a higher speed.