RRR-robot : instruction manual - Pure

RRR-robot : instruction manual - Pure
RRR-robot : instruction manual
van Beek, A.M.
Published: 01/01/1998
Document Version
Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers)
Please check the document version of this publication:
• A submitted manuscript is the author's version of the article upon submission and before peer-review. There can be important differences
between the submitted version and the official published version of record. People interested in the research are advised to contact the
author for the final version of the publication, or visit the DOI to the publisher's website.
• The final author version and the galley proof are versions of the publication after peer review.
• The final published version features the final layout of the paper including the volume, issue and page numbers.
Link to publication
Citation for published version (APA):
van Beek, A. M. (1998). RRR-robot : instruction manual. (DCT rapporten; Vol. 1998.012). Eindhoven:
Technische Universiteit Eindhoven.
General rights
Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners
and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.
• Users may download and print one copy of any publication from the public portal for the purpose of private study or research.
• You may not further distribute the material or use it for any profit-making activity or commercial gain
• You may freely distribute the URL identifying the publication in the public portal ?
Take down policy
If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately
and investigate your claim.
Download date: 07. Oct. 2017
RRR-robot
Instruction manual
A.M. van Beek
WFW report 98.012
Trainee project
Supervisor: ir. L. Kodde
Faculty of Mechanical Engineering
Eindhoven University of Technology (TUE)
March 1998
Operational warnings
1. Do not operate the robot unsupervised, or without the emergency stop within reach. The
motors can rotate at high speed with high torque; beware of the rotating radius of the
robot.
2. Do not touch any part of the robot when the power is switched on. Dangerously high
voltage is present at the location of brush terminals (shielded with plexiglas covers), and
inside the octagonal shaped, silver colored housing.
3. Keep clear of the rotating radius of the robot while the servos are powered and enabled.
4. Do not exceed the following velocities in order to stay below the allowed moment for
alternating load, DM60: 0.5 [rps], DM30: 1 [rps], and DM15: 1.5 [rps].
5. Do not operate the DM15 servo while the DM60 and/or DM30 are at a continuous standstill
in order to prevent wear or damage to the power sliprings due to welding effects.
6. Do not operate the DM30 servo while the DM60 is at a continuous standstill in order to
prevent wear or damage to the power sliprings due to welding effects
7. Ensure that the motor phases VA,VB,and Vc are connected correctly. If not, the encoder
feedback-loop results in unstable behavior, i.e., the motor will start rotating at maximum
velocity and with maximum torque in a direction opposite to the desired trajectory.
8. After modifying the Simulink controller, always perform a “test run” to see if error messages occur.
9. When performing an experiment, do not start the controller before the servos are powered
and enabled; the introduced tracking error may cause a large and unwanted response.
10. Do not use the enable circuit as an alternative emergency stop. There is a considerable
delay (approximately one second) before opening the circuit has effect.
11. Use the emergency stop if the control software or the operating system crashes; or if error
messages occur after the Simulink controller has been started.
12. Use the emergency stop and perform a (hard) reboot of the PC containing the MultiQ
1/0 board, if the encoder read-out becomes discontinuous or otherwise erratic.
13. Do not apply more than 5.3 [VI to the (analog) inputs of the MultiQ 1/0 board to avoid
overload. As a consequence, do not use any of the analog driver outputs without additional
overload protection since a surge of 8 [VI occurs when the power is switched on.
-
... -
111
iv
14. Ensure that the power is switched off before opening the Driver cabinet. Dangerously high
voltage is present inside this unit.
15. Use the base connection to move or lift the robot (approximate weight 90 [kg]). Do not
use the octagonal shaped, silver colored housing to lift the robot; unless with extreme care
to prevent damage to the spherical joint at the base of the robot.
iii
Operational warnings
Terminology
1
1 Introduction
1.1 Objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
a
2 General description
7
3
4
3 Manipulator frame
3.1 Composition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Assembly and installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Power connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.2 Signal connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5 Inertia parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
4 Joint actuation System
4.1 Dynaserv motors . . .
4.2 Driver cabinet . . . . .
4.3 Dynaserv drivers . . .
4.4 Dynaserv brakes . . .
25
25
26
27
.................................
.................................
.................................
.................................
11
12
18
18
20
23
23
27
5 Control System
5.1 MultiQ plug-in and terminal board . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 External controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Personal Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 PCHardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.2 Pcsoftware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
29
30
31
31
31
6 Maintenance and inspection
33
A Addresses
35
.v
-
CONTENTS
vi
B Components
B.l
B.2
B.3
B.4
B.5
B.6
B.7
B.8
37
Wincon software manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
70
MultiQ board manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Manual: Dynaserv DD Servo-Actuator DM/SD series . . . . . . . . . . . . . . . 91
Manual: BE-A/B Type Dynamic Brake . . . . . . . . . . . . . . . . . . . . . . .
113
122
Cabinet manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power sliprings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
133
135
Signal sliprings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
137
Conceptualdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terminology
When applicable, parts are numbered from the base to the end-effector, i.e., the stationary base
is link O (black parts), the rotating octagonal silver housing is the top of link 1, link 2 is green,
and the end-effector is link 3.
Table 1: Terminology
Short
A/D
AC
BDC
BE60
BE30
CTD
D/A
DC
DM60
DM30
DM15
Driver cabinet
MultiQ
PSR-1
PSR-2
RTW
SSR-1
SSR-2
SSR-3
SD60
SD30
SD15
Terminal board
Watcom
Wincon
Synonym
AD(C)
Brushless DC
Brake 1
Brake 2
GTD
DA(C)
Motor/servo 1
Motor/servo 2
Motor/servo 3
PC plug-in board
Power Slipring 1
Power Slipring 2
Real Time Workshop
Signal Slipring 1
Signal Slipring 2
Signal Slipring 3
Driver 1
Driver 2
Driver 3
Watcom C/C++
WinCon V2.0
Description
Analog-to-Digital (Converter)
Alternating Current
Brushless Direct Current (motor)
Electro-mechanical brake BE1060B
Electro-mechanical brake BE1030B
“Centrale/Gemeenschappelijke Technische Dienst”
Digital-to-Analog (Converter)
Direct Current
Dynaserv Motor DM1060B50*1, max. torque 60 [Nm]
Dynaserv Motor DM1030B50*1, max. torque 30 [Nm]
Dynaserv Motor DM1015B50*1, max. torque 15 [Nm]
Shielded cabinet for drivers, brakes and line filters
board with ADC, DAC, encoder inputs, and digital 1/0
SM140-6 and -2 combined
M-SM204-12
Matlab toolbox to generate C-code
Capsule AC-267 modified
Capsule AC-267 modified
Litton 12-ring capsule
Driver SDl060B52-2, driving DM60
Driver SD1030B52-2, driving DM30
Driver SD1015B52-2, driving DM15
Board with connectors to the internal MultiQ board
Watcom C/C++ compiler version 10.6
Software to interact with real-time running C-code
- 1 -
Lnapter i
N
T
Introduction
1.1
Objective
The RRR-robot is designed as a manipulator-like system (with three rotational degrees of freedom), to test a variety of advanced nonlinear control strategies. Since for high-speed tracking
of complex trajectories, Coriolis and centrifugal torques form an essential part of the occurring
nonlinear effects, the main requirement of this robot is to highlight these velocity dependent
torques. This has led to two important features of the RRR-robot:
0
0
the use of sliprings to facilitate unconstrained rotation of each link, and
the use of direct-drive servos.
In addition, the system has a Simulink based control interface for fast implementation of various
control strategies.
Figure 1.1: RRR-robot pictures, notice the brush block terminals to connect the two power
sliprings.
The aim of this manual is to describe the composition and use of the RRR-robot as a whole.
With regard to the individual components, only key parameters, and non-documented features
- 3 -
Introduction
4
(from personal communications and experiences) are listed. For more detailed information, the
reader is referred to the included component manuals in Appendix B. Before actually operating
the robot, the user should also read the Wincon software manual in Appendix B.1.
1.2
Getting started
I
The procedure listed below can be used to get familiar with the basic operation of the RRRrobot and its control system. However, it is recommended to read the remaining of this manual
and Appendix B.1 first in order to understand the entire background.
1. Switch on the PC.
2. Start Windows. Matlab should start automatically (in the directory c :\rrr\demo\).
3. Inside the Matlab Command Window type: demo. The Simulink window with the controller should open.
4. Double click on the button i n i t inside the Simulink window. The matrices Kp and Kd
should be read into the Matlab workspace.
5 . Select Generate and B u i l t Realtime Code from the Code menu of the Simulink window. A DOS window should open, displaying the compilation procedure. This should be
completed without errors (warnings may be disregarded). After successful compilation,
close the DOS window.
A
A
Do not yet enable the servos.
6. Select S t a r t from the Simulation menu of the Simulink window. Now Wincon should
starts automatically and the controller should run “dry” without error messages.
After modifying the Simulink scheme, always perform a “test run” with the controller
before enabling the servos. If error messages occur, recompile the controller.
7. Stop the controller by pressing the traffic light inside the Wincon window.
8. Use the File menu of the Wincon window to load demo. Now a number of plot windows
should appear (if not, push the Scopes/Workspace button, and select the desired plot
variables).
9. Make sure the controller is not running (the traffic light is red, the time display is frozen).
10. Switch on the central power of the Cabinet driver (if necessary pull out the emergency
button on the cabinet.
11. Enable the servos by switching on the separate power supply.
12. Put one hand on the emergency stop.
A
Use the emergency stop if error messages occur after the Simulink controller has been
started; i f the control software or the operation system crashes; or if the encoder read-out
becomes discontinuous or otherwise erratic.
1.2 Getting started
5
13. Start the controller (push the traffic light or select start form the Simulink window). After
1 second delay, each joint should start moving at a constant velocity.
Chapter
2
General description
The RRR-robot is actuated by three brushless direct-drive servos with maximum torques of 60,
30 and 15 [Nm]. Each motor has its own driver to generate the driving stator phases (both are
shown in Fig. 2.1 on the right). The so-called Dynaserv servo is of an outer-rotor type with
internal encoder, and internal bearings, providing direct coupling between the outside housing
and the attached link. Basicly, the robot is constructed by simply combining these servos, i.e.,
joints and the links in a chain structure.
Figure 2.1: On the left, manipulator frame (servos, sliprings, and other frame parts); and on
the right, the connections between one Dynaserv motor-driver pair.
To facilitate unconstrained rotation of all joints - the connection to and from the DM30
and DM15, shown in Fig. 2.1 by cable @ and @ - are implemented using (power and signal)
sliprings. The DM60 is connected directly from the base.
Servos, sliprings, and other frame parts (e.g., links) together constitute the Munipulutor
frame (shown in Fig. 2.1 on the left). The assembly of the manipulator frame, and all required
wiring is described in Chapter 3.
- 7 -
General description
8
To bring the DM60 and DM30 (with considerable inertia) to a controlled stop, electromechanical brakes are placed between motor and driver to short the motor coil. Line filters are
used to filter out external disturbances on the power supply (cable 6).
Drivers, brakes and
line filters are mounted in a shielded Driver cabinet. This cabinet has a central power supply
which cari be switched of by an external emergency stop. Servos, drivers, brakes, and line filters
constitute the joint actuation system described in Chapter 4.
_________._..._.__________.____________.
f Joint actuation system
Manipulator frame
3 servos:
Sliprings:
2 power sliprings
3 signal sliprings
DM15
DM30
DM60
Appendix B.6 and B.7
I
Driver cabinet
I
Other frame parts
Control system
~
3 drivers:
SD15
SD30
SD60
MultiQ 1/0 (App. B.2)
I
Appendix B.3
I
Line filters
AppendixB.4
I
+- 4
+
1
A
P C with:
- Matïab/Simuiink
- RTW/Watcom
- Wincon (App. B . l )
Enable servos
I
I
Appendix B.5
4
.___
Ï
Emergency stop
Chapter 4
;
_____..................
.
Chapter E
Figure 2.2: Schematic description and reference of the RRR-robot components.
9
In Chapter 5 , the Control system is addressed. A P C plug-in control board, the MultiQ
(Fig. 2.3), is used to communicate with the motor drivers, e.g., read-in the output of the encoders,
and apply the torque command voltage. The terminal board of the MultiQ is placed inside a
to each
casing (the ”controller” in Fig. 2.1), and connected by a 50-pole connection (cable 8)
d,’
river.
Figure
right)
3: 1 ..i& plug-in board, placed inside the PC (bottom), an, terminc ,oar(
L
The actual control algorithm is implemented in Simulink. If desired, the algorithm can be
tested and analyzed by means of simulation. If the results are satisfactory, the simulink blocks
can be automaticly converted to C-code by the Real Time Workshop (RTW), and subsequently
compiled by the Watcom C-compiler. The compiled C-code can be executed directly (using
DOS), or in interaction with the Wincon software (using Windows). Using Wincon selected
Simulink variables can be displayed and modified in real-time.
In Fig. 2.2 all main components of the RRR-robot are depicted schematically.
Chapter 3
Manipulator frame
3.1
Composition
The manipulator frame consists of servos, sliprings and non-standard frame parts (e.g. links)
manufactured by the CTD. Furthermore, it includes all internal wiring. In Table 3.1 the main
components are listed, together with their origin and mass. In Fig. 3.1, the conceptual design,
all components are assembled. Based on this design the CTD constructed the non-standard
components. Therefore, the design sketch can only serve as an indication for the composition of
the final RRR-robot (several dimensions may be slightly altered).
Table 3.1: RRR-robot main components (see Fig. 3.1). With the exception of part 8, all parts
manufactured by the CTD are made of Aluminum. The masses are either measured, estimated,
calculated (indicated with a *), or supplied by the manufacturer.
No.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Part
Base
Spherical joint
Housing DM60
DM60
Signal slipring 1 (SSR-1)
Rotor extension DM60
Power slipring 1 (PSR-1)
Bearing 165-120-22
Bearing cover
Housing DM30
Stator extension DM30
DM30
Signal slipring 2 (SSR-2)
Rotor extension DM30
Power slipring 2 (PSR-2)
Arm 2
DM15
Signal slipring 3 (SSR-3)
-
Source
CTD
CTD
CTD
Litton
Litton
CTD
Litton
CTD
CTD
CTD
CTD
Litton
Litton
CTD
Litton
CTD
Litton
Litton
11
-
Appendix
B.8
B.8
€3.8
B.3
B.7
B.8
B.6
B.8
B.8
B.8
B.8
B.3
B.7
B.8
B.6
B.8
B.3
B.7
Mass [kg]
15*
2*
6*
12
< 0.1
}3.504
< 0.5
< 0.1
15.5
1.620
7.5
< 0.1
1.482
3.464
3.908
5.5
< 0.1
Manipulator frame
12
Figure 3.1: RRR-robot conceptual design, used as a basis for the realization of the various nonstandard components. Note that some dimensions were slightly altered during the manufacturing
3.2
Assembly and inst allation
In the following, the assembly steps of the frame components are listed. Here, the emphasis is
on the mechanical connections. In Section 3.3, the wiring of the sliprings will be treated in more
detail.
1. The signal sliprings (5.,13., and 15.) are clamped and glued inside the three motors. The
wires to and from the sliprings are bundled and shielded.
3.2 Assembly and installation
13
2. The Spherical joint (2.) and Housing DM60 (3.) are connected to the Base (1.) with two
series of bolts at the bottom of the Base (1.).
3. The DM60 (4.) is bolted to the Spherical joint (2.), through the Base.
Figure 3.2: Step 2 and 3: connections made from the bottom, three sets of bolts are tightened
while the Base stands on its side.
4. PSR-1 (7.) is placed around Rotor extension DM60 (6.) and secured with radial screws.
Both are mounted on the rotor of the DM60 (4.). The 8 slipring cables are extended (see
Table 3.3, third column). Now the brush block (part of 7.) can be placed.
Figure 3.3: Step 4: PSR- (inclui ing brush block) and Rotor extension DM60. The three cable
bundles inside the Rotor extension are, from left to right, encoder extension cables to DM15
and DM30; and the 8 extended PSR-1 leads.
5. The Bearing (8.) and the Bearing cover (9.) are mounted.
Manipulator frame
14
Fzgure 3.4: step 5: additionai bearing.
6. Housing DM30 (10.) is placed on Rotor extension DM60 motor (6.). The cables for data
and power originating from PSR-1 (7.) and SSR-1 (5.) enter Housing DM30 through 4
slots (which can be seen at the backside of Housing DM30 when the cover is removed).
For details and the connection to PSR-2 (15.) see Table 3.3 and Table 3.5.
7. The bolts (screwed into plugs) connecting Housing DM30 (10.) to the Rotor extension
DM60 (6.) are fastened from the inside of the housing. This is done before Stator extension
DM30 (11.) is in place.
Figure 3.5: Step 6 and 7: mounting Housing DM30 (10.)
8. Stator extension DM30 (11.) is bolted to Housing DM30 (10.).
Figure 3.6: Step 8: mounting Stator extension DM30 (11.)
3.2 Assembly and installation
15
9. DM30 (12.) is mounted on Stator extension DM30 (11.) through the back of Housing
DM30 (10.). The DM30 motor cable, the DM30 encoder cable and the PSR-2 bundles can
be connected with the appropriate cables (entering through the 4 slots). For details see
Table 3.3 and Table 3.5.
Figure 3.7: Step 9: mounting DM30 (12.).
10. PSR-2 (15.) is mounted on Rotor extension DM30 (14.). Both are placed over DM30 (12.)
and bolted to arm2.
Figure 3.8: Step 10: PSR-2 (15.) and Rotor extension DM30 (14.) are placed over DM30 (12.)
11. Arm 2 (16.) is bolted to the DM30 motor, and Rotor extension DM30 (14.) is fixed to
Arm 2. Now the brush block (part of PSR-2) can be placed, and subsequently connected
to 8 of the 4 leads originating from PSR-1 (7.).
Manipulator frame
16
Figure 3.9: Step 11: Mounting arm 2 (16.) and securing the Rotor extension DM30 (14.).
12. DM15 (17.) is mounted on Arm 2. (16.) The 12 leads from PSR-2 (15.) are grouped in
sets of three and connected to the DM15 motor cable. The bundle from SSR-2 (13.) is
split up and connected to the DM15 encoder cable and SSR-3 (18.).
Figure 3.10: Step 12: DM15 (17.) mounting and connecting.
13. Arm 3 (19.) is bolted to the DM15 motor
17
3.2 Assembly and installation
Remark
o
It is possible to remove DM30 and everything connected to it as a whole:
-
remove the PSR-2 brushes,
disconnect the power to DM30 and all signal wires in the DM30 housing, and
carefully support the parts to be disconnected, and unscrew the bolts (inside housing
DM30) which connect the stator extension to the DM30.
Figure 3.í í r Partial disassembly
Manipulator frame
18
3.3
3.3.1
Wiring
Power connections
The DM60 motor is directly connected to de SD60 driver with its (extended) motor cable (l=red,
2=white, 3=biack, and 4=green), see Fig. 3.12.
To connect the DM30 and the DM15, power sliprings are used: PSR-1 (7.) and PSR-2
(15.). For the location of these sliprings see Fig. 3.1 and assembly steps 4 and 10. The main
specifications of these rings are summarized in Table 3.2.
Table 3.2: Main specifications of power sliprings PSR-1 and PSR-2.
PSR-1
PSR-2
property
SM140-6 and -2
M-SM204-12
number of circuits
8
12
maximum current/circuit 15 [A]
6 [Al
15 [A] x 50 [V]/circuit maximum total load
maximum velocity
250 [rpm]
150 [rpm]
circuit resistance
< 0.1 [Ohml
PSR-1 is connected from the base, through a brush-block terminal with 8 contact points,
schematically depicted by the 8 “x”’sin Fig. 3.12 (right).
X
X
X
X
X
X
x
X
Figure 3.12: Connections to the DM60 (left) and PSR-1 with brush-block terminal
(right). Each “x” denotes a clamp bolt (see also Fig. 1.1).
In Table 3.3, the same symbols are used to describe the motor cable connections. For example the DM15 motor cable from the SD15 driver with 4 leads is connected to the bottom
4 clamps of the PSR-1 terminal. Inside PSR-1, 4 leads are extended and (through slot 4 of
Housing DM30, depicted by [o o o XI) led to the PSR-2 terminal shown in Fig. 3.13.
A
Do not push any of the power leads in Housing DM30 (green, black, yellow and red) further
back into slot 3 and 4. T h e n they might come into contact with power slipring 2.
3.3 Wiring
19
!
!
!
!
!
!
......
__..ii :::1
.--J
!
!
!
!
!
!
!
!
[o o o o]
Figure 3.13: Cable slots and brush-block PSR-2 (left), and PSR-2 (right). Each “.”
denotes a brush (see also Fig. 1.1).
::I.
The PSR-2 terminal has 24 brushes (12 circuits, 2 brushes per circuit) denoted by [::: ::: :::
Groups of 6 brushes are interconnected to form 4 channels each consisting of 3 circuits. The
same is done on the side of DM15 to power this last servo.
Table 3.3: Connections to power slipring 1and 2 (PSR-1 and PSR-2). The “x” in [o o x o] denotes
a cable entering motor housing 2 via slot 3. The “x” in [::: ::: ::: xxx] denotes a connection to
the fourth set of 6 brushes on the horizontal terminal block of slipring 2.
driver
SD30
VA
VB
VC
GND
driver
SD15
GND
VC
VB
VA
red
white
black
green
yellow
black
housing
DM30
via slot 3
[o o x o]
to DM30
terminal
PSR-2
green
black
white
red
green
yellow
via slot 4
[o o o XI
to PSR-2
......
......
xxx
::: ::: xxx :::
::: xxx ::: :::
xxx ::: ::: :::
:::
side PSR-2/
to DM15
green
black
white
red
Manipulator frame
20
3.3.2
Signal connections
The encoder cable of the DM60 is directly connected with the SD60 driver. To transfer the
encoder signals of the DM30 and the DM15 and to transfer additional measurement signals,
three signal sliprings are used: SSR-1 (5.), SSR-2 (13.), and SSR-3 (18.). The dimensions and
main specifications off these rings are listed in Fig. 3.14 and Table 3.4.
tor
Figure 3.14: Signal sliprings: on the left, a photograph of the original AC-267 slipring; in the
middle, the modified AC-267 (used for SSR-1 and SSR-2); and on the right, SSR-3.
The stator of each sliprings is clamped and glued on the inside of the servos (see position
5., 13., and 18. in Fig. 3.1), i.e., attached to the DM rotors. Since the slipring friction torques
are small, the slipring leads are used to fix the slipring rotors to the DM stators. For the SSR-1
and SSR-2, tie-raps are used to tie 2 bundles of 18 wires to the motor cable and the encoder
cable. Note that, every wire is attached separately to the slipring (see Fig. 3.14), i.e. there is no
mechanical connection between the (white) bundle of 18 wires and the slipring itself. Below the
base, a cable relieve clamp is placed to prevent any damage to SSR-1.
A
Do not pull any of the bundled slipring cables (white) originating from SSR-I (below the base),
or SSR-2 (an the octagonal shaped, salver colored Housing DM30 (IO.)).
Table 3.4: Main specifications of the signal sliprings (see Fig. 3.14).
property
SSR-1 and 2
number of circuits
maximum current/circuit
maximum total load
maximum velocity
total friction torque
Capsule AC-267 modified
36
1.2 [A]
25 [Al
100 [rpm]
0.0054 [Nm]
SSR-3
Litton 12-ring capsule
12
1 [Al
50 [WI
120 [rpm]
0.0023 [Nm]
To reduce the sensitivity of the signal data to external disturbances (e.g. originating from
the servos) two precautions have been taken:
o
Slipring leads are bundled and provided with an external shield.
3.3 Wiring
0
21
For the encoder feedback, redundant circuits are used to cancel out possible disturbances.
In total 10 circuits are used: 2 for power, and 8 for data. The latter consist of 4 twisted
pairs transmitting the pulse trains A, Ä (A inverse), B, and B. Assuming a disturbance
acts both A (or B) and the inverted, it can be canceled out as shown in Fig. 3.15.
/
L 90° Phase Shift (+Tolerance)
Figure 3.15: On the left, basic quadrature encoder output; and on the right complementary
outputs to cancel out disturbances.
The slipring wires are connected to the encoder leads of DM30 and DM15. On Arm 3, 12
wires are available for future sensors. All slipring wires are numbered on both the stator and
rotor side. In Table 3.5 all connections are listed. For example, the blue wire with label 27 goes
through the base to the rotor of SSR-1. On the stator side another blue wire (part of bundle
2) enters Housing DM30 through the second slot, and is connected to a blue-brown wire (again
with label 27) leading to the rotor of SSR-2. On the stator side of SSR-2, the blue-brown wire
is connected to a grey wire (label 3) belonging to SSR-3, and ending on link 3.
Manipulator .frame
22
Table 3.5: Connections to the 36-circuit signal sliprings (SSR-1 and SSR-2) mounted inside the
DM60 and the DM30 motor. Wires are numbered with the least significant number closest to
1- or -1 3-.
SSR-1.1 [x o o o] denotes signal slipring 1,
the end of the wire, e.g. wire 31: -3
bundle i, entering motor house 2 through the utmost left slot (Fig. 3.i3).
no.
1.
2.
3.
4.
5.
6.
-
7.
8.
9.
10.
11.
12.
-
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
SSR-1.1 [x o o o]
red
orange
black-orange
black-red
blue
blue-whi te
blue-orange
white-yellow
black-blue
green-red
blue-red
red-white
SSR-1.2 [o x o o1
grey-red
(dark) grey-red
black-purple
black-yellow
blue-brown
blue-yellow
brown
brown-white
green
green-white
orange
orange-white
encoder DM30
1. red
1. shield
2. black
2. black
3. blue
4. blue-white
5. brown
6. brown-white
7. green
8. green-white
9. orange
10. orange-white
SSR-2.2
grey-red
red
black-purple
black
blue-red
blue-white
grey
red-white
blue- yellow
white- yellow
brown-red
red-yellow
-
25.
26.
27.
28.
29.
30.
-
31.
32.
33.
34.
35.
36.
blue- (purple)
purple
black-yellow
red- yellow
blue-brown
b!ue
blue
blue-red
black-white
purple-white
yellow
white
SSR-1.1 [xo o o1 SSR-2.1
blue-black
blue
brown-white
grey
black-red
black-green
red
black
green
black-white
purple-white
yellow
encoder DM15
1. red
1. shield
2. black
2. black
3. blue
4. blue-white
5. brown
6. brown-white
7. green
8. green-white
9. orange
10. orange-white
SSR-3
1. blue
2. purple
3. grey
4. brown
5. black
6. yellow
SSR-3
7. white
8. brow n-w hit e
9. red
10. black-white
11. orange
12. green
3.4 Operation
23
Remarks
o
Two parallel circuits are used for one of two the encoder-power leads to both the DM30
and the DM15 encoder: wire 3 and 4 to SSR-1.1 and wire 15 and 16 to SSR-1.2 (and
SSR-2.2). In a non-parallel configuration, two circuits could be saved, resulting in two
additionai data channels from the Base to Arm 2 (no further since SSX-3 has i 2 circuits).
o
Because SSR-3 has only 12 circuits, SSR-2 has 12 unused circuits (on bundle 1). Currently,
these wires are connected to the shield of SSR-2.1.
3.4
Operation
Lifting
Preferably, use the Base ( I . in Fig. 3.1) to move or lift the frame (approximate weight 90 [kg]).
If this is not possible, use a strap around Housing DM60 (4., black). Do not use the octagonal
shaped, silver colored Housing DM30 (10.) to lift the robot; unless with extreme care to prevent
damage to the Spherical joint (2.) a t the base of the robot.
Slipring standstill
Using the power slipring to transfer power while at a continuous standstill m a y cause wear and/or
damage to the brushes and ring surfaces due to welding effects.
3.5
Inertia parameters
After completion of the robot, Microstation Modeler was used to generate a 3D model of the
robot in order to calculate the inertia tensors of each joint-link pair expressed in the appropriate
link coordinates (see Fig. 3.16).
Y
X
, 0-1
O
2.5
5
7I .I>
c
Figure 3.16: Orientation of the coordinate frames: 00is placed at the center-base of link 1;
at he intersection of the DM60 and DM30 rotation axes; 0 2 at the intersection of the DM15
rotation axis and the line parallel to the length axis of Arm 2 , through its center of gravity; and
0 3 at the end of the line parallel to the length axis of Arm 3 through its center of gravity. Note
that Arm3 is not yet present, so 0 3 is located at the end of a virtual link with length 0.3 [m].
01
A
A
Manipulator frame
24
In Table 3.6, all moving components are grouped to form joints (the motors) and links.
part
Joint 1
Link 1 (vertical)
Joint 2
Link 2 (green)
Joint 3
Link 3
Table 3.6: Moving parts: joints and links
sub components
mass ilgj
DM60
12
Rotor extension DM60, PSR-1, Housing 20.6
DM30, and Stator extension DM30
DM30
7.5
Rotor extension DM30, PSR-2 and Arm 2 8.9
DM15
5.5
Arm 3 (not present)
-
The combined inertia tensor of Link i and Joint i with respect to frame i is given by Ji:
J1=
(
J2=
2.2334
-2.6560
2.7755 lo-'
O
(
0.1921
1.9029 lop4
-0.2068
-2.8439
-2.6560 loe7
0.2213
-0.01456
-6.1425
1.9029
0.7340
O
O
2.7755 lo-'
-0.01456
2.2623
-0.2270
-0.2068
O
0.6474
-1.0222
O
-6.1425
-0.2270
32.9305
(3.1)
-2.8439
O
-1.0222
16.3123
O
O
0.01238 O
0.01190 o
O
0.012 o
O
O
5.4763
(3-3)
)
Chapter 4
Joint actuation System
4.1
Dynaserv motors
The Dynaserv motors are self-contained units containing precision ball bearings, magnetic components, and integral feedback. The motor is outer-rotor, providing direct motion of the outside
of the motor. On the inside, the motor has a hollow core (diameter 25 [mm]) which is part of
the rotor. With regard to the stator, only the base part is visible.
Figure 4.1: On the left, Dynaserv motor V.S.a conventional motor; and on the right, an exploded
view of the Dynaserv servo.
In Table 4.1, the main specifications of the motors are summarized. The listed maximum
torque and maximum velocity cannot be achieved simultaneously, as illustrated in Fig. 4.2.
The torque of each motor can be controlled by sending a command voltage to its respective
driver (i= 8 [VI). Although Litton stated the motor torques listed in Table 4.1, the relation
between torque and voltage is not linear. Preliminary measurements confirm the trend shown
in Fig. 4.2 (taken form the on line manual of Compumotor): Moving Arm 2 to an horizontal
position (14.62 [Nm], or 49 % of 30 [Nm]) required input voltages between 2.6 and 2.9 [VI ( 31
% to 34 % of 8.5 [VI).
-
25 -
Joint actuation System
26
Table 4.1: Main specifications of the Dynaserv motors. Source: Appendix B.3 and personal
communications with Litton (marked by *).
property
unit
max. output torque
max. velocity
mass
inertia
allowed axial load
allowed moment load
allowed velocity
torque constant*
max. power
[Nm]
[rpsl
[kgl
[kg m2]
[NI
[Nm]
[rps]
[Nm/V]
[kW]
DM30
DM15
DM60
Motor 1 Motor 2 Motor 3
30
15
60
2.4
2.4
2.4
12
7.5
5.5
0.023
0.015
0.012
3 io4 (compression), 3 io4 (tension)
200 (static load), 60 (alternating load*)
0.5
1
1.5
15.6
7.8
3.9
2.2
2.0
1.6
Do not exceed the following velocities in order to stay below the allowed m o m e n t f o r alternating
load, DM60: 0.5 [rps],DM30: 1 [rps], and D M l 5 : 1.5 [rps].
A
Ensure that the motor phases VA, VB, and Vc are connected correctly. If not, the position
feedback-loop results in unstable behavior, i.e., the motor will start rotating at m a x i m u m velocity
and with m a x i m u m torque in a direction opposite to the desired trajectory.
-//
Figure 4.2: On the left, the DM series motor performance (torque V.S. velocity), on the right
the saturation of the motor output torque as as a function of the command voltage send to the
driver.
4.2
Driver cabinet
The Driver cabinet contains three Dynaserv drivers (mounted on rails for access to the jumpers
and the notch filter), line filters and two brakes (for DM60 and DM30). All drivers and brakes
are powered by one central power supply which can be controlled by a switch, and two emergency
stops (on the cabinet and remote).
1.3 Dunaserv drivers
27
Ensure that the power is switched off before opening the Driver cabinet (e.g. t o change driver
settings). Dangerously high voltage is present inside this unit.
A
On the back of the cabinet are connectors for (from left to right): the control of the bra,kes (two
x 6 poi. UIIU Connectors), the encoder Îeeciback from the motors (three x 15 poi. sub D), the
power to the motors (three x 5 pol. Harting), and the remote emergency stop. Furthermore,
here the extended CN-1 terminals leave the cabinet.
- T I T
4.3
Dynaserv drivers
Since the Dynaserv motor is a brushless DC motor, the commutation of currents is accomplished
by measuring the rotor position using an encoder. The driver is powered by 220 [VI AC (cable
6 in Fig. 2.1). Based on the encoder feedback (cable Q) and the internal/external controller,
to actuate the motor are determined.
the motor phases VA,VB,and Vc (cable 8)
Each Driver has several control modes:
o
Position Control Mode (I-PD, P-P and P-I type)
o
Speed Control Mode (P and PI type)
o
Torque Control Mode
When using the external controller (PC and MultiQ) the driver is set to the torque control mode
(for more detailed information on the required jumper settings, see Appendix B.3)
Furthermore, each driver has a first-order lag filter and a notch filter to reduce vibrations.
At present both are unused.
Although, the manual recommends a maximum filter offset voltage of 0.05
this can, and
should be set below 0.005 [ to avoid a noticeable offset in the torque command voltage.
[u,
A
The control system interfaces with each driver through the CN-1 terminal (cable @ in Fig. 2.1).
From the Driver cabinet all CN-1 connections are extended to the casing of the MultiQ plug-in
board.
W h e n switching on the power, a surge of approximately 8 [ v] occurs at the driver outputs (CN-1,
VEL, P O S N and TORQ in Fig. 2.1)
4.4
Dynaserv brakes
The DM60 and DM30 are equipped with an electro-mechanical brake to bring the robot to a
controlled stop. Each brake consists of a board with power electronics and relays to short the
motor phases (VA,VB and Vc) either directly (at low velocities), or by using a dissipative RCcircuit (at high velocities). Simply stated, the brake is wired by cutting the motor cable (cable
8 in Fig. 2.1), and connecting both sides to the board. For more details see Appendix B.4.
Each brake has a separate power supply, and is mounted inside the Driver cabinet. On the
backside of the Driver cabinet are connections to engage the breaks. If the power is switched of
(power failure or emergency stop), the brakes are engaged automatically.
A
Chapter 5
Control System
5.1
MultiQ plug-in and terminal board
The MultiQ 1/0 board from Quanser Consulting has 8 x 13 bits ADC, 8 x 12 bits DAC, 8
digital I/O, 6 encoder inputs, and 3 hardware timers. Also included is a terminal board with
several connectors.
Using separate test software the 1/0 times of the MultiQ board can be measured:
Digital input (16 [bit])
5 ps
Digital output (16 [bit]) 2 ps
Encoder read (24 [bit]) 5.5 ps
ADC (16 [bit])
20 ps
DAC (16 [bit])
5 PS
For a computed torque controller based on encoder data only (see Fig. 5.2), the total 1/0
time amounts to 31.5 ps. Using external timing it was verified that a sampling frequency of 1
[kHz] can be achieved without interruptions. Higher frequencies require the use of one of the
on-board clock timers, and were not yet tested.
The terminal board (see Fig. 2.3) is located inside a casing with three 50-pole connectors.
Here, the three driver-CN1 extensions (originating from the back of the Driver cabinet) are
inserted. Inside the casing, the MultiQ inputs, and outputs are connected t o the right CN1
pins. Furthermore, through here, the servo enable signal is fed to the drivers (originating from
an independent power supply).
Connections to the three driver-CN1 extensions inside the casing:
o
Encoder read (pin 13, 14, 29 and 30):
The 4 encoder outputs are connected to a AM26LS32 line driver (white=[13. A+], brown=[14.
A-], green=[28. Bf], yellow=[30. B-1, black=ground). The outputs are connected to the
first three encoder DIN connectors (O, 1, and 2).
Use the emergency stop and perform a (hard) reboot of the PC containing the MultiQ
1/0 board, i f the encoder read-out becomes discontinuous or otherwise erratic.
o
Torque command (pin 49 and 50):
Pin [49. VIN] is connected to the core of a coax cable, the shield is connected to pin
[50. AGND]. Using tulip connectors the three cables are plugged in analog MultiQ output
O, 1 and 2.
-
29
-
A
Control Sustem
30
o
Enable servo (pin 23 and 24):
See Section 5.2.
Although, an analog velocity output is present (pin 17 and
is), currently, it is unused because:
o
Differentiating the encoder yielded better (without a bias) results.
o
A surge of 8 [VI occurs at the CN1 outputs when the power is switched on. Without
additional overload protection, this may cause damage to the MultiQ board:
A
Do not apply more than 5.3 [q to the (analog) input of the MultiQ 1/0 board to avoid
overload.
o
5.2
A/D conversions are the most time consuming operations of the MultiQ board.
External controls
Enable Servos and Brakes Both servos and brakes are enabled, i.e., made ready for operation, by closing a circuit (like the one shown in Fig. 5.1) between two pins of each driver-CN1
terminal (inside the terminal board casing), and each brake-CN2 terminal (extended to the back
of the Driver cabinet).
A
Do not use the enable circuit as a n alternative emergency stop. There i s a considerable delay
(approximately one second) before opening the circuit has eflect.
Figure 5.1: Example (enable) circuit for both the three drivers and the two brakes. On the
driver-CN1, the circuit is between pin [24. VCC], and [23. SRVON]. On the brake-CN2, it is
between [3. VCC] and, [4. SRVON]. Normally the circuit is open, i.e. the SRVON-signal is set
to HIGH, and driver (or brake) does not accept commands. After closing the circuit, i.e., setting
SRVON to LOW, the driver (or brake) is ready for operation.
Emergency Stop
A
Always keep the (remote) emergency stop within reach while operating the robot.Use the emergency stop i f error messages occur after the Simulink controller has been started; i f the control
software or the operation system crashes; or i f the encoder read-out becomes discontinuous or
otherwise erratic.
5.3 Personal Computer
31
Personal Computer
5.3
5.3.1
P C Hardware
The P C configuration consists of a Pentium Pro 200 with 32 MB RAM, it has three free PCI
siots and three ISA siots.
5.3.2
P C software
The P C software for controlling the robot consists of several programs (between brackets are
the untested updated versions):
o
The operating system Windows 3.11 (Windows 95).
o
Matlab 4 . 2 ~(Matlab 5.1) and Simulink 1.3 (Simulink 2.1) to design, analyze, and implement the controller.
o
The Real-Time Workshop 1.1C (RTW 2.1) to convert the controller - consisting of Simulink
blocks - to C-code.
o
The Watcom C-compiler 10.6 (Microsoft visual C compiler) to compile the generated Ccode to an executable.
o
Wincon V2.0 (Wincon V3.0) to run the executable under windows while displaying and
modifying selected Simulink variables.
W h e n performing an experiment, do not start the control algorithm before the servos are
powered and enabled; the introduced tracking error m a y cause a large and unwanted response.
A
An example of a Simulink controller is shown in Fig. 5.2. This diagram also displays the
trajectory generation, the blocks for the data acquisition board, and the feedback-loop signal
flow.
Pasivity Based Computed Torque Controller version: 07
date: 12-1 2-9kplotI
----RRR
Figure 5.2: Simulink block scheme of a Passivity Based Computed Torque Controller.
After modifying the Simulink controller, always perform a “test run” to see i f error messages
occur.
A
Chapter 6
Maintenance and inspection
Motors Check daily if changes in noise level or excessive vibration occur. After 20.000 hours
or 5 years, some parts may need to be replaced. When an overhaul or motor disassembly is
required, contact Litton. (Appendix A).
Driver cabinet To prevent problems due to poor insulation, periodically remove accumulated
dust inside the Driver cabinet and the individual drivers.
Sliprings To prevent problems due to poor insulation, periodically remove accumulated dust
inside the Base (1.) and Pedestal; inside Housing DM30 (10.); and behind the (silver colored)
cover on Arm 2 (16.).
Additional frame parts The bearing 165-120-22 (8.) provided by the CTD has a lifespan of
at least 15 year, and requires no maintenance.
Control system Periodically, defragment the hard disk of the PC.
-
33
-
ADpendix A
A
Addresses
Litton Precision Products International
product:
address:
contact person:
web site:
technical support servos:
Dynaserv servos, sliprings and brakes
Griendstraat 10
2921 LA Krimpen a/d Yssel
The Netherlands
tel. 0180-596888
fax. 0180-596899
Rolf van de Weijer
lit t [email protected]
ht tp: // www .litt on.com
Reto Muff (Switzerland)
tel. 0041-1313 1450
fax. 0041-1313 1255
email: RMuff94444Qa0l.com
CTD
product:
contact:
frame manufacturing
Erwin Dekkers
W-hal 1.58
tel. 3356
GTD Groep Electronica/Energietechniek
product:
Realization:
Driver cabinet
B. Viveen
tel. 3494
-
35
-
Addresses
36
Quanser Consulting Inc.
product:
address:
web site:
MultiQ 1/0 board and Wincon
102 George Street
Ham-ilt,OnjOntario
Canada
tel. 001905 527-5208
fax. 001905 570-0177
[email protected]
ht t p ://www .quanser .com
Scientific Software Benelux
product:
address:
Matlab
Bleulandweg 1B
2803 HG Gouda
tel. 0182-537644
fax. 0182-570380
AC-2000 Software Ingenieurs
product:
address:
Watcom C/C++
Standerdmolen 8-302
3990 DB Houten
P O box 83
tel. 030-635 1840
fax. 030-635 1839
Appendix B
Components
In the following sections several component manuals and drawings are included:
B.l Wincon software manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
70
B.2 MultiQ board manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.3 Manual: Dynaserv DD Servo-Actuator DM/SD series . . . . . . . . . . . . . . . 91
113
B.4 Manual: BE-A/B Type Dynamic Brake . . . . . . . . . . . . . . . . . . . . . . .
123
B.5 Cabinet manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
133
B.6 Power sliprings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.7 Signal sliprings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
135
138
B.8 Conceptual design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.37 .
Components
38
B.l
Wincon software manual
Instruction manual, 32 pages
Quanser Consulting Inc.
WinConTM,WindowsTMbased
Realtime Controller for SIMULINKTM
Quanser Consulting Inc
1 .O General Description
WinCon is a realtime program that will run SIMULINK controllers in Realtime under Windows. In order to
use the controller you will need the following:
- MAT LAB^"
- SIMULINKTM
- Real-Time WorkshopTM
- WatcomTMC++ compiler version 10.a or higher
- WindowsTM3.1 1 or Wir195~~
- DOSTMversion 6.2
- 8 MB RAM
- IBM 486 compatible computer or higher, with math co-processor
- 1 Mbytes of free hard disk space
You will also need the SIMULINK device drivers for the data acquisition board you are using (A/D, D/A,
Encoder input).
To date the following devices are supported:
- MultiQ : N D , D/A, Quadrature Encoder interface board (Quanser Consulting Inc)
- DT2811: A/D, D/A interface board (Data Translation)
- CIO DAS16: A/D, D/A interface board ( Computer boards)
The general functional description of WinCon is the following: Draw the SIMULINK controller and
generate the realtime code (RTC) using the Real-Time Workshop. Run WinCon and load the RTC you
created into WinCon and run it. You now have the controller you created running in realtime, at the sample
rate you selected, under Windows. You can plot all the "Scope" variables you had selected in SIMULINK
while the controller is running using the plotting facilities of WinCon. The data buffer allows you to store up
to 16348 points per variable. Scope data can be saved to disk at will. You can change windows while the
controller is running and start another Windows application without interfering with the performance of the
running controller. Specifically you can start up SIMULINK, load the diagram of the controller you are
running and change parameters in realtime while the controller is running in order to instantaneously
observe the effects of the gains, filters or other parameters on system behaviour! Once you are satisfied
with the performance, you can start WinCon independent of SIMULINK, load the RTC and run it in
realtime. You can also run WinCon along with the RTC from SIMULINK on a computer that does not have
SIMULIMK on it.
T'WinCon is a trademark of Quanser Consulting Inc. All other trademarks are the properties of their respective owners
-39-
Wincon 1
WINCON S ~ U &
P OPERATION
2.0 Setting up
It is assumed that you are well versed in Windows, MATLAB and SIMULINK
2.1 Install WinCon
- Start Windows
- Insert the WinCon distribution diskette into your a: drive
- From Program Manager Select File
- Select Run from the Pull Down Menu
- Type a:setup Hit enter
- Select Full Installation.. Follow the instructions on the screen
2.2 Copying sample files
- make a directory c :\winsim on your hard drive
- copy the contents of a : \winsim to c :\winsim
2.3 Configuring the directories for the makefiles
2.3.1 Using any text editor (eg notepad) edit the file
c:\matlab\codegen\rt\tmf\wc-watt-tmf
and modify the lines
WATCOM-ROOT = C:\WATCOM
WINCON-ROOT = C:\WINCON
to match the drive and directories for where you have installed WATCOM and WinCon
2.3.1.2 Re Compilers
-
W I ~ C 1Q
i . i~a Users: ckunge u!! references of " b i ~ w to
" "kink" in the iI!e
c: \matlab\codegen\rt\tmf\wc-watc. tmf (globai substitute "binw"to "binb")
- Waicom should be abie io generate Win3.11 code even if you are running on Win95 (ie 16 bit
compile)
2.3.2 Edit autoexec. bat and ensure that c :\watcomc\binw is in the PATH
also ensure that the lines:
SET INCLUDE=C:\WATCOM\H;C:\WATCOM\H\WIN
SET WATCOM=C:\WATCOM
SET EDPATH=C:\WATCOM\EDDAT
Are appropriately directed in the autoexec.bat file
WinCon 2
-467-
.
. ..
.
WINCON SETUP
& OPERATION
2.3.3 Edit c : \matlab\matlabrc.m and add the following directories to the MATLABPATH:
c : \winsim
c:\matlab\codegen\rt\wincon\devices
c:\matlab\codegen\rt\dos\devices
for exampie the foiiowing shouia be part of your c :\matlab\rnatlabrc.m,
matlabpath( [ . . .
'C:\winsim',
...
';C:\matlab\codegen\rt\wincon\devices',
...
';C:\matlab\codegen\rt\dos\devices',
...
';C:\MATLAB\toolbox\local',
...
';C:\MATLAB\toolbox\fuzzy\fuzdemos',
...
I);
WinCon 3
-41 -
WINCON SETUP & OPERATION
Block name: ADC
3.0 Operation
Blocktype:
The guidelines for operating WinCon are given
below. in order to use the full potentiai of
WinCon,
remember that in Windows you switch active
windows by pressing [Ctrl Tab]. You can also
Switch to a desired Window by entering [Ctrl
Esc] and selecting the Task from the Task List
(or use [Alt Esc].
Analog input (Mask]
Quanser Consulting
MuitiQ I10 Card
Base 110 Address:
ND Channels to Use:
101
Effectie Number of Bits:
Sample Time (sec):
Computer
Boards
CIO-DAS16
Data
Translation
D n 8 11
Quanser
Consulting
MultiQ
I strZnurn(cg-get(bdroot 'Real-time step size'))
I
Access hardware during simulation (O = no: 1 =yes):
O
Figure 3.2 Configure the board to the right address
Sources
Sinks
igure 3.1 winlib supplied with WinCon
1) Install a data acquisition board into your computer. To date, the following boards are supported by
WinCon/SlMULlNK:
a) MÜltiU - Cuansz; C0iìsül:ing
b) DT2811 - Data Translation
c) CIO DAS16 - Computer Boards
If you have a different board, Quanser Consulting will write the appropriate drivers at a nominal fee.
2) Draw the controller in SIMULINK. Draw the SIMULINK controller as you usually would. The data
acquisition blocks and other WinCon blocks are accessed by typing winlib in the MATLAB Command
Window. Make sure the Data acquisition blocks are configured for the right base address of the device. If
there is any data you would want to monitor while the controller is running, attach them to a SIMULINK
Scope and select an appropriate name for the block.
Note the sample time of the data acquisition blocks. You must ensure that the sample time of these
blocks is the same as the actual sample time of the controller. In case of MultiQ drivers, this is
automatically performed by using the cg-get MATLAB function as shown in Figure 3.2. You may override
this by typing in the sample time you want.
WinCon 4
WINCON SETUP & OPERATION
3) Configure the Real Time Code Generator. Select Code from
the menu of the drawing of the controller. Select Real Time
Options:
a) Step size: set the controller sampling period ( eg .O05
seconds)
b) Template Makefile: w c w a t c . trnf
c) Build Command: make-wc
Note about Template makefile: You can also use
wcwatg-tmf
You may make these choices the default by editing the file :
b u i l d o p t .m (typically under c:\matlab\toolbox\local)
Figure 3.3 Realtime Options
4) Configure the simulation : Select Simulation in the
controller drawing. Select External ( J ). Also from
Simulation select External Options and enter WC-comm
under File for External Simulation. Note that from this
point on, the word "simulation" is a misnomer. You will
be running a realtime controller but it will be referred to
as Simulation from within SIMULINK.
Figure 3.4 External Options
5)Save the drawing in a file under the directory c :\winsim (or any other directory you create.) It is
highly recommended that the controllers and the associated m files reside in a separate directory from
MATLAB or WinCon. It is also good practice to start the file name with the characters wc- in order to find
them easily later on.
6) Change the MATLAB data directory Switch to the MATLAB Command Window ([Ctri Esc]) and type
cd c : \ w i n s i m ( or the directory you chose in part 5). This ensures that all generated code and
associated files are stored in that directory. If you do not change directory from inside MATLAB, the
generated code will be added to the MATLAB directory and may create unnecessary confusion.
7) Generate and Build Reaitime Code Switch back to the SIMULINK drawing ([Ctrl Esc] or [Alt Tab]) and
select Code and Generate and Build Realtime. This starts the compilation of the diagram in to C code that
can be linked with WinCon. The output file for this operation has the extension .wcl . This means it is a
SIMULINK controller that can link with WinCon.
WinCon 5
WINCONSETUP ZS OPERATION
8) Start the Controller From the SIMULINK drawing, select Simulation and Start. This starts WinCon,
loads the controller for which you just generated code and starts the realtime controller. Note that this
operation also starts a SIMULINK simulation which is automatically paused. You can also start and stop
the sinulation by typing s t a r t and s t o p from within the MATLA5 Command Window (MCVV): The
the siil,.ula~ion but keep; the eoiltiv(leï
iuiiiiing. youn;â$ find :his
startcomniand auior,aticaiiy.
a mo:e convenient method of starting the controller from MATLAE. Note that these commands start and
stop the controller in the block diagram in the last window that you had clicked on before going to the
MATLAB command window. Make sure you issue the command after you have clicked on the window of
the controller you want to start. If WinCon is already up and the controller you want loaded, you can start
the controller from any window by entering [Alt Pause] on the keyboard.
To stop the controller, you can either
- Stop the controller from any Windowwith the [Pause] key on the keyboard (this is the fastest and
easiest way)
- Stop Simulation in the SIMULINK Window [Ctrl TI or issue s t o p from the MCW
- Stop the controller from the WinCon Main Window ( WMW), click on the Traffic Light Button, or select
File-Stop from the puli down menu.
You can also use the buttons that are in winlib ( Figure 3.1). You can drag copies of these buttons into
the SIMULINK diagram itself. double clicking on these buttons will start and stop the controller.
From where
How
Condition
From SIMULINK Menu
of Diagram
[Ctri
or Simulation Menu
SIMULINK up
Strats WinCon, loads diagram RTC
From SIMULINK
Diagram itself
Double click Start button
Double click Stop button
SIMULINK up
(Obtain Stop and Start from winlib)
From MATLAB
Command line
Start
stop
Last SIMULINK diagram that was
active
From WinCon
Traffic light Button
Or File/Run Menu item
WinCon loaded
From Anywhere
[Alt pause]
[Pause]
WínCon loaded
WinCon 6
- 49-
WINCON SETUP & OPERATION
1
File Status
Confiaure
Calibrate Plots About
0ON
@ OFF
Outputs:
O
References: O
Figure 3.5 WinCon Main Window
WinCon 7
WINCON SETUP & OPERATION
9) Plotting realtime and saving data
"Scope" data selected in SIMULINK may be plotted in realtime by clicking on the ScopesNVorkspace
button in the WinCon main window. Select the variabie you want to plot ana ciick OK. if you want more
than one variable plotted on the same graph (eg reference and output) click on the first variable then hold
down the [Ctrij key and ciick the iefî mouse button on the other variables you wish to piot. Once you are
satisfied with the variable list click [OK].
Once the plot is showing you can alter some of the plot parameters such as Update Frequency, Buffer
duration, axes etc... You can also select if you want plot windows to be a child of WinCon or be treated
as an independent window accessible from the Windows Task List (Ctrl Esc ). This is done using the Plot /
Are Children menu in the WinCon Main Window.
If you would like to open another plot window, you may do so using the ScopesNVorkspace button or by
clicking on File - New in any active plot Window. From an active plot Window you may switch to the
WinCon main window or any other plot that is in the background using the Window Menu in the Plot
Window.
If you want to change the variables being plotted in a given Plot Window, click on FileíVariabIes in the
Plot Window and select the new variables you want to plot.
You can also save the drawn data in two formats: (.mand .mat). Select File from the Plot Window and
Save. Select the directory ( we highly recommend that you place the data files in a different directory eg
c : \winsim\data) Select the type of file you want to
save from the selection list. Caution: If you select a
.m"type file for output, make sure you do not use
the same file name as your controller as you will
Variables t o piot ...
overwrite your controller diagram with the data file!
Enter a filename (no extension) and click [OK]. The " .m"
file will contain an acciifile of the variables you plotted
Volts
in WinCon as well as a MATLAB plot statement. You
can then switch to MATLAB and enter the file name.
i h i s wili auiomaticaiiy piot the data you saved. if the fik
i
M
is saved as a ".mat" file, it will be in binary format and
you will have to load it into MATLAB using the MATLAB
load command. The data will consist of individual
vectors with the Scope names you had chosen. If the
Figure 3.6 Selecting plot variables
variable name has a blank in it, the blank will be
replaced with an underscore(-). There will also be a
variable holding the time vector for the data named T. Both of these plot features are very useful if you
want to perform parameter estimation or make hard copies of the plot to include in a report.
'I
a
/I
WinCon 8
WINCON S ~ U&P
OPERATION
In summary, the following features are available
from a Plot window menu:
File
-
Under Fik
Update Axes
Window
20
15
New Open a new plot window
Save Saves the plotted data in a .m or .mat
file
Variables Select which Scope variables you
want to plot
Close Closes the plot window
10
5
O
-5
-10
-15
-20
Under
5
- Fixed interval or Realtime: Selects whether
6
7
8
9
10
The
you want to plot in realtime or plot just one trace
and hold the trace on the plot(single sweep).
Buffer (Tb) : Is the duration of the data buffer Figure 3.7 Sample WinCon plot window
for the plot. This is a circular buffer of duration
Tb. Only the last Tb seconds of data are available for plotting and saving.
Frequency (P&):The sampling period of the data buffer. The fastest frequency possible is the actual
sampling frequency of the controller. P, may be larger than the actual sampling period (T,) thus allowing
decimation. You can then save a longer duration of data by compromising resolution. The maximum
number of points per trace is 16000.
-
hinder A m
- Auto Scale or Fixed: Select whether or not the scale of the y axis is adjusted to fit the last sweep
maximum and minimum. In Fixed mode, you select the scale.
- Time (Tp): This is the duration of the displayed plot along the time axis. Tp is always less than or equal
to the buffer duration Tb. If Tp is less than Tb and you are plotting in Fixed mode, then a scroll bar
appears under the plot that lets you scroll though the data over the last Tb seconds.
Grid Self explanatory
-
- Legend Self explanatory
-
Main Window Takes you back to the WinCon main Window. A handy feature to help you navigate
through many open windows.
Other piot windows list Takes you to another open plot window. Also helps you navigate through a
. maze of plot windows.
Furthermore, if you want to access the plotting facilities straight from the SIMULINK diagram, you can
drag and drop the [plot] button from winlib (Figure 1.1) into the SIMULINK diagram. Double clicking on
this box is just like clicking on the [ScopesNVorkspace] button in WinCon.
Q
WinCon 9
- 47-
WINCON SETUP& OPERATION
1 O) Changing controller parameters
If WinCon and SIMULINK are up, and the loaded controller in WinCon is the same as the diagram in
SIMULINK, then parameters changes in the diagram automatically take effect in the running controller. It
W usud!y good practice to stop the controller in SIMULINK, change the parameter ana then siarf if
again. This is especially true if you are changing filter parameters drastically and the system you are
controlling is sensitive to parameter changes. If the diagram is altered in any way (eg, cutiing connections,
adding blocks) you will need to regenerate realtime code as in step 7.
7 7) Saving and Running a WinCon Project
You may save a running WinCon controller as an independent project, including the status of all plots you
had opened. Do this from the WinCon main window and select File/Save as. Select a directory and
filename then click OK. You can then load this new project file ( . p r j extension) into WinCon in the future.
You can start the loaded project from WinCon by entering [Alt Pause] or clicking on the Traffic Light
Button (TLB) to the right of the Time display in WinCon. Starting the controller from WinCon, will start the
controller that was originally saved during Realtime Code Generation. If you want to use a controller with
different parameters, Stop the controller using the pause or TLB. Click the To SIMULINK button. This
starts MATLAB, and loads the SIMULINK diagram of the controller you have loaded into WinCon. You can
then Start from SIMULINK which will now start the WinCon Controller and will allow you to change
controller parameters. Once you are satisfied with controller performance, it is advisable to generate the
final realtime code so that the project you eventually save will contain the desired parameters. This way
'
yo0 can
m
I,
It
As in any application, practice makes perfect. Try out a few simple systems (our examples) first before
you start a serious project. Learn the sequence of operations, you'll eventually become an expert!
72) Notes on Step size In WinCon, you may select the source of the timer interrupt that controls the
sampling frequency. For sampling frequencies below 1KHz. you may select the Windows System clock.
This is done by selecting Clock, in the I/O Card option of WinCon (on the screen, top right). If you want to
sample at a higher frequency, you have to use an external hardware clock tied to an interrupt line on the
PC. MultiQ supports this option, If you have other cards, a WinCon driver must be written for that card.
Contact Quanser Consulting in order to have a Clock driver written for your card. The card must be
equipped with a programmable realtime clock that can be tied to interrupt h e s .
Be careful when selecting the step size. Make sure that it is not too small. Read the section on Maximum
Sampling Frequency under Hinfs and Troubleshootingat the end of the manual.
WinCon 10
LOOPBACK
EXAMPLE
4.0 Examples
4.1 Simple loopback
This is an exampk ohaf everyone shsuid try. Not only do you practice the use of WinCori but you also
test your A/D, D/A board. The example ISa loopback system. You need to wire the output of channel # O
on the D/A subsystem of your board to
the input of channel ##O on the N C
subsystem on your board. This is shown
in Figure 4.1.1
The "controller"will simply apply a sine
function to the D/A output and will
measure the voltage from the A/D. No
other hardware is required for this
example.
1) Start MATLAB for windows and type
cd c :\winsim . Type ws-lpbk This
loads the diagram shown in Figure 4.1.2.
You could have generated this diagram
yourself using SIMULINK.
Loopback
Wire
M D connector
Computer
MULTIQ DIA
Connector
'igure 4.1.1 Wiring for loopback experiment
2) If you have a Multi board you can skip to step 4
3) If you do not have a Multi board installed in your system, switch to the MATLAB Command Window and
type doslib.Double click on the card you have from the list of cards available in dosfib. Copy one A/D
block and one D/A block to the ws-lpbk diagram. Delete the Multi A/D block in the ws-lpbk diagram and
replace it with your board's A/D block. Delete the Multi D/A block and replace it with the D/A block for your
card. Make sure the drivers are configured for the correct base address and channel. You can select the
A/D board you are using from the doslib or winlilb Simulink blocks.
4) Select Code from the menu and click on Generate and Build Realtime . This generates the realtirne
cûde for the diayram. Wait mti! the corripi!atior! is comp!ete. 4, EQS window Is automatica!!y Qpened and
upon completion the message :
* * * * * Make of ws-1pbk.wcl is complete * * * * *
is printed in the DOS Window. You can then close the DOS window.
5) Click on Simulation/Start in the ws-lpbk SIMULINK window. This starts WinCon, loads the compiled
controller and starts running it at the sampling frequency specified in Real Time Options in SIMULINK.
Alternatively, you could switch to the MATLAB Command Window and type start to start the controller
and automatically pause the simulation. (See section 3.8).
6) Switch to WinCon using [Alt Tab]
7 ) Click on ScopesNVorkspace. The names of scopes defined in ws-lpbk will appear in a list. Plot both
variable on the same graph by selecting [Click] Command then [Ctrl Click] on Measured and then select
LPBK 1
-4.9-
LOOPBACK EXAMPLE
[OK]. Note that the commanded voltage has an amplitude of 10 volts. However the saturation block limits
it to 5 volts. Therefore the real output to the D/A is a clipped sinusoid at 5 Volts. This voltage is measured
by the A/D ( due to loopback wire) and displayed under the variable Measured. The plot will display a 1O V
peak sine wave and a clipped sine wave. The command and the measured value should otherwise
superimpose. if we apply a voitage smaller than 5 Volis p-p ai the conmand, then the measuïed and
command would (should) match exactly.
8) Click To SIMULINK from WinCon. This takes you to SIMULINK. Stop the controller [Ctr! r]. Click on the
signal generator and change the source to a triangular wave. Keep the Plot Window of WinCon open so
you can monitor the changes you are making. Start the Controller [Ctrl TI and note that the change you
made took effect in WinCon by observing the plot. Change the signal generator parameters and observe
that you are changing parameters in realtime.. without interruption in control !
9) Select a signal source different from the original sine wave (eg. triangular) , start the controller and
switch to WinCon. Plot the variables as before. With the plot active, save this "controller" as a project by
selecting File - Save as from the WinCon main window and select the filename as c : \winsim\ws-lpbk
10) Click on To SIMULINK. Stop the controller ( or issue stop from MATLAB). Save the changed diagram
(with a triangular wave as signal source). Close SIMULINK. Close MATLAB. Close WinCon.
11) Open WinCon from scratch. From File/Open load c :\winsim\ws-lpbk .pr j . This is the project you
1 Eik
Clipboard
Edit
Options
Simulation
Swle
P
P
Command
I
I-.
MultiQ
A
signal Sat uration
Generator
I
I
DAC kD
I
Code
this connection is external
you must have a wire
from DIA chm t o ArD chm
m
Measured
MultiQ
ADC #o
Figure 4.1.2 Sl6lUL!NK diagram of loopb&k "controller"
saved in step 9. Start the controller directly from WinCon. What are the plots showing? Triangular or Sine
waves? It wil be sine waves because the compiled code in step 4 was using a sine wave! Stop the
controller using the Pause button. Click on To SIMULINK. This starts MATLAB and loads wc-lpbk .m
diagram into SIMULINK. Click on Simulation - Start. Switch to WinCon. What do the plots show now? A
triangular wave because you just loaded the parameters from the SIMULINK diagram into the running
controller! This is where you have to be cautious. WinCon runs realtime generated code that can only
be changed via SIMULINK or re-compiling.
LPBK 2
- 50 -
PID EXAMPLE
4.2 PID Controller
This example demonstrates a PID controller that positions the output of the Servo plant shown in Figure
4.2.1. Start MATLAB from Windows , change directory to c : \winsim and type, ws-srv-r This brings up
the diagram of the controlier shown in Figure 4.2 2. (Ncte this,example is shown in Win%).
The eontiolied output of the Servo Plant is measured using the A/D
channel #O. The command to the system is generated from the
Command Generation block. The difference between the command and
the actual angle is the error signal which is multiplied by a proportional
gain Kp. The error is also integrated and multiplied by a gain Ki. The
measured variable (eg motor angle) is also differentiated using a high
pass filter and multiplied by a gain Kd. The three gains are the PID gains
of the controller. The sum of these terms is applied to the D/A output
channel #O. The signal from the Command Generation block could be
anything you want. In this example it is a signal generator applying a
square wave of 4-45 degrees. You may replace this block with a
another N D channel for example which has a potentiometer attached to
it. The controlled system will track the signal generated by the command
generation block. The PID gains in the Figure could be constants or
position
Figure 4-2-1 *Ota?'
variables defined in the MATLAB Command Window. If you enter
Servo plant
variable names in the PID gains (or in any other block for that matter)
they must have a value assigned to them before you can generate the
realtime code. Once you generate the code, the controller (.wcl extension file) will have these gain values
hard coded into it. Changing the values of the variables in the MATLAB command window will not
immediately change the value in a running controller. You will have to either stop and start the simulation
or, open the dialogue box for the block which uses the variable name init and then click [OK]. This can be
done while the simulation is running.
To start this controller perform the following operations:
1) Start MATLAB in Windows ( If it is not already up. Do not start multiple copies)
2) type cd c :\winsim in the MATLAB Command Window
3j Load wc-sw-r by typiiîg WS-SPV-~ in :he I?IWTMY Ccmnand Window. This !oads the SIMULINK
drawing shown in Figure 4.2.1
4) Click on Code. Select Generate and Build Realtime from the Pull Down Menu. This starts the real time
code generator and compiles the code to be linked with WinCon.
5) Once the code has been generated, you will see a DOS window with the message:
* * * * * Make of ws-srv-r.wc1
is complete *
* * * *
You can close the DOS window to minimize clutter. MATLAB does not close the DOS windows
automatically.
6) Click on Simulation/Start.
7) The system starts WinCon, configures it and starts running the controller in realtime.
8) You can now plot and change gains as you please. You can save the project in WinCon so that the
SRV-R 1
0809OB-
i
i
Oi
86 9 6 96 26
6
8 8 9 8 P8 2 8
8
0809-
o B-
OB
Ot
oz
OZ
OZO
?5 -
O
o9
08
INVERTED
PENDULUMEXAMPLE
4.3 inverted Pendulum
This example covers the Inverted Pendulum IP-O1 shown in figure 4.3.1. The system is wired as shown in
Figure 4.3.2.
Figure 4.3.1 inverted pendulum hardware
The inverted pendulum has two sensors, one for the cart position and one for the inverted pendulum
angle. These sensors are attached to the MultiQ A/D inputs channel O & channel 1 respectively using the
Quanser Quick Connect Module. The system is driven by a DC motor which is powered via a power
amplifier on the power module PA-O103. The input to the power amplifier is obtained from the D/A channel
#O on the MultiQ board.
feedback controller that feeds back the following voltage to the motor:
The required controller is .
a state
i“
I
lal
I
Cart
position sensor
QUANSER
QUICK CONNECT
MODULE
Pen
Computer
L
The control system design is beyond the
scope of this manual. For details see “A
comorehensive and modular laboratory for
conirol system design and implementation” by
Quanser Consulting.
DIA #O
-
4
1
I
MULTIQ DIA
Connector
Figure 4.3.2 Wiring the inverted pendulum
Load the controller w s s e n d into SIMULINK.
The diagram shown in Figure 4.3.3 will appear. The measurements are voltages from the sensors and are
measured using A/Dchannei#O and AID channel #1. These are applied to bias removal blocks and then
fed to a calibration and differentiation block. The output of this block results in the states [x x a Ex] A
signal generator generates the commanded cart position which is subtracted from the actual cart position
to obtain the cart position error e. These are then fed to the state feedback controller which computes the
integral of.the error and applies the desired gains k, to k5to obtain the applied voltage to the motor. This
IF 1
- 53 -
INVERTED
PENDULUM
EXAMPLE
values is then sent to the D/A channel #O on the MultiQ to drive the motor through the power amplifier
4.3.1 Bias removal blocks
The two bias removal blocks are "grouped" SIMULINK blocks. Viewing one of these blocks (double click
on the block) reveals the structure shown in Figure 4.3.4 This block has two inputs. In-1 is the voltage
measured from ?he s e n s o r while In-2 is from the clock which keeps track of time from the moment the
simulation starts. The clock controls the position of a SIMULINK switch. As soon as the time is greater
than 0.1 seconds (set in the dialogue box of the switch ), the output of the switch is the value applied at
the first line. In the first 10 mseconds of the simulation, the output of the switch is the input applied at line
3. So, for the first 10 msec., the output of the block is (In-1 - In-1) = O. When the switch trips over, the
output of the switch is maintained to the last value before it switched over. Thus, the block defines the
zero position of the device to be the position it was in at t = 10 msec. The purpose for this block, is so the
user can hold the pendulum upright and the cart at x = O. The user then starts the controller which for the
first 10 msec does not do anything but measure the bias on the sensors. It then uses the measured bias to
obtain the actual angle and cart positions.
4.3.2 Calibration amd Differentiationblock
This block converts the the cart position voltage and pendulum angle voltage to the appropriate units. The
cart sensors measures 8 cm per volt while the pendulum angle sensor measures 14.5 degrees per volt.
The voltages are first low-pass filtered and then multiplied by the appropriate calibration constants as
shown in Figure 4.3.5 After converting the voltages to the desired units, the variables are applied to
Scopes, which will be available in WinCon for plotting. The two signals are then fed to limited
differentiators to obtain the cart velocity and pendulum angular velocity. Note that we use limited
differentiators rather the "pure" derivatives to reduce noise.
4.3.3 State Feedback Block
The last block before the output block is the state feedback controller which implements the feedback
gains to obtain the voltage that will be applied to the controller. The system requires five gains which are
implemented as "s1iders"in SIMULINK. While the controller is running you can click on the sliders to
change the gains during operation. Note that the integrator is a "limited integrator" block which we suggest
you always use instead of a regular unlimited integrator. This way, if the integrator reaches the maximum
value it will stop integrating and will immediately start integrating in the opposite direction when the input
signal changes sign. This is a more effective method of implementing an integrator in a real system. Note
that the integrator state is automatically reset whenever the controller is stopped and re-started. The
output of this block is fed directly to the MultiQ B/A block. The channel of the DjA is seiected in the D/A
dialogue box.
4.3.4 Safety Stop As a safety feature, the controller is automatically turned off if the pendulum angle
exceeds 10 degrees in either direction.
IP 2
INVERTED
PENDULUMEXAMPLE
Figure 4.3.3SIMULINK controller of Inverted pendulum
File
Clipboard
Simulation Style
Qpüons
Code
Edit
File
-
Clipboard
Edit o p t i o n s
Simulation
Siyle
Code
Pendulum Angle
'
+
a
Cart Velocity
Deriv
E*+Jï
Pendulum
Figure 4.3.4
Figure 4.3.5
- 55-
Pendulum Velocis,
IP 3
INVERTED P E N D U L U M E X A M P L E
File
Clipboard Edit options
Simulation
Style
Code
File Clipboard Edit
Options Simulation
Style
Limited Cart Integral
Integrator Gain
Code
in-1 Absolute
Value
12[
1.5
in-2
Pend gain
(4/
in 4
Cart Deriv
Gain
0.367
Angle limit Relational OutOperator
+,
Figure 4.3.7
+,
Pend Deriv
Gain
Sum
Figure 4.3.6
4.3.4 Running the controlier
To start this controller perform the following operations:
1) Start Matiab in Windows ( If it is not already up. Do not start multiple copies)
2 ) type cd c :\winsome in the Matlab Command Window
3) Load ws-pend by typing wsqend in the Matlab Command Window. This loads the SIMULINK
drawing shown in Figure 4.3.3
4)Click on Code. Seiect Generate and Build Realtime from the Pull Down Menu. This starts the real time
code generator and compiles the code to be linked with WinCon.
5) Once the code has been generated, you wll see a DOS window with the message:
* * * * * Make of wsqend.wc1 is complete * * * * *
You can close the DOS window to minimize clutter. Matlab does not close the DOS windows
automatically.
6) Hold the pendulum upright and the cart in the middle of the track.
7 ) Click on Simulation/Start.
8) The system starts WinCon, configures it and starts running the controller in realtime.
IP 4
- r4-
INVERTED PENDULUM
EXAMPLE
9) You can now plot and change gains as you please. You can save the project in WinCon so that the
entire controller can be started from WinCon (without SIMULINK) and run from WinCon.
30
20
10
O
-10
I
-20
-3o
O
2
4
6
8
10
Time
Figure 4.3.7 Plots obtained in realtime from WinCon
Figure 4.3.7 shows the WinCon plots that are obtained. The variables plotted are the signal generator, the
cart position and the pendulum angle. Note the non-minimum phase behaviour in cart position.
IP 5
2 MASSES
& SPRINGEXAMPLE
4.4 Linear flexible joint frequency response
In some cases, you may want to evaluate the frequency response of a system This example
demonstrates the linear flexible joint system (LFJC) and its controller performance using a sine-sweep
signal. The LFJC consists of the Inverted pendulum cart (IP-31)cotipled to a load cart via a spring as
shown in Figure 4.4.1. The input to the system is the voitage appiiea to the penduium cart whiie the output
is the position of the load cart. Note that the load cait (on the :ight) is not powered. The controller block
diagram is shown in Figure 4.4.2. It consists of zi state feedback controller that feeds back the positions of
the two carts and their respective velocities. The commanded position is subtracted from both cart
positions in order to maintain the length of the spring at rest. The interesting feature in this system is that
you can change the gains from the feedback cart as shown in Figure 4.4.3 which is an expansion of the
block named Control. By setting the two gains from the load cart to zero, we are not using output feedback
and positioning the output cart by simply positioning the input cart and letting the spring do the rest. A
better controller is obtained by feeding back the position and velocity of the output cart as well (non-zero
gains). In order to evaluate the controller, we could apply square wave inputs to the command end look at
the overshoot and damping. In this example however we will apply a sine wave of varying frequency and
observe the resonance in the system (almost a bode plot.. but not quite).
Figure 4.4.1 Hardware for flexible joint
experiment
The Command is generated from the Chirp block, which when unmasked shows the diagram in Figure
4.4.4. A sawtooth signal is applied to a MATLAB function block which generates a sine function whose
frequency depends on the value of the sawtooth signal. The sawtooth is held at zero for the first and iact
five seconds of the period. The rate of change of the chirp signal is selected to be unity per second and is
thus changing like time. The reason we use a sawtooth signal instead of the Time block is that we want to
repeat the sine sweep every 30 seconds. Figure 4.4.5 shows the input command (chirp signal) and load
cart position when the feedback gains from the load cart are set to zero. Note the resonance in the
system. Using LQR designed gains for the system, we can dampen the response to obtain the plots
shown in Figure 4.4.6. The FFT's of these signals are compared in Figures 4.4.7 and 4.4.8. All of the plots
LFJC1
- 58-
2 MASSES 6, SPRING
EXAMPLE
.
MultiQ
I
ADC $6
a
generator
Bias
removaI
Motor cart
I
a1
Itart error
U
Command
I
ib
O-
MultiQ
1
Clock
I
-kl+
- Iu I
b4
Calibration
and Differentiation
Control
sum
DAC #4
I
MultiQ
ADC kt4
w
Bias
removal
Load Cart
Fi
Stvie
D
Code
F
I
I
I
Repeating
Sequence
in-1
p
I
f(u)
Stvie
Clipboard Edit Options Simulation
Code
-2.72
Chirp control
-
-Fife
Motor cart gain
out-1
Moto: cart
0U
out-1
Fcn
13/
in 3
Figure 4.4.3 Chirp generator
are MATLAB plots obtained from data saved during
the controller execution.
t3
0u t 4
velocity gain
Figure 4.4.4 Feedback gains
LFJC2
- 5-9-
[i
t
2 MASSES& SPRING
EXAMPLE
Figure 4.4.4 Chirp signal and load cart position
when K2=K4= O
Figure 4.4.6 Chirp signal and cart output when
K, and K4have been designed using LQR
Figure 4.4.7 FFT of signals in Figure 4.4.5
Figure 4.4.8 FFT of signals in Figure 4.4.6
LFJC3
3 DOF HELICOPTER
4.4 3 DOF Heiicopter
The 3 DOF helicopter experiment
shown in Figure 4.4.1 is a prototype
of a new Quanser consulting
experiment under deveiopmeiit. The
preliminary contsoller is shown In
Figure 4.4.1 and the associated
blocks are described below. The
controlled variables are the Pitch,
Travel and Elevation of the helicopter
which are measured via encoders on
the apparatus. The outputs of the
controller are voltages applied to two
motors, namely the Front motor and
the Back motor, through DIA
The system is
channels #O & #I.
commanded via a joystick which
generates two analog voltages
measured via AID channel #O and
A/D channel #I.
I
igure 4.4.1 Diagram of 3D helicopter experiment
7
L
++
1
k-
%
w
-+
MultiQ
B
Control
Joystick
U
Travel
Control
U
Travel
I
L
I
MuitiQ
Sum
Pitch
u
Back Motor
Pitch
Control
:igure 4.4.1 3DOF helicopter controller ( file ws-heli3.m)
3D Heli - 1
3 DOF HELICOPTER
4.4.1 Joystick block The joystick block measures two analog voltages and after filtering and calibration,
generates an elevation command and a travel rate command. Note that the elevation command is
generated by integrating the signal, while the Travel rate command does not integrate the signal. A
deadband is applied to the signals in order to eliminate jitter.
1c+201
Filter X
L L J
DeadZoil e
Gain
Dead
Dead Zone1
Zone1
Gainl
Gainl
L
I
. .
V
JOySIiCK A
out-I
Limited
integrator
I
bi ultiQ
ultiQ
Joystick Y
20
-
s+20
Filter y
Filter
y
L
I
V
out-2
Travel rate
Cmd
I
Figure 4.4.2 Joystick block of helicopter Controller
4.4.3 Elevation, Travel and Pitchbiocks
P
Elevation
I-
I
Encoder
Transfer Fcn4
out-1
These block measure the three controlled
variabies and low pass filter them as well as
generate their derivatives using a limited
differentiator ( high pass filter).-One of the blocks
is shown expanded in Figure 4.4.3.
The encoder measurement is obtained from the
MultiQ board, which is then multiplied by the
calibration constant. The btock also applies the
measured value to a "scope" which will be
accessible from WinCon.
I
I
Figure 4.4.3 Expanded Elevation block
3D Heli - 2
-62-
3 DOF HELICOPTER
4.4.4 Controller blocks
These blocks generate the voltages that will be applied to the two motors. Each block is a controller using
one of the measured variables and its command. Note that there is no command for the pitch axis. The
controllei tries to maintain the pitch ksrinsntai. The travel rate command, causes disturbances in pitch,
which in turn result in travel.
Saturation
u
in-2
in-3
Out-1
The voltages generated from the
control blocks are then sent to
summers which distribute the
voltages to the two motors in the
system. Note that this is a MIMO
system but the controllers are
designed as SISO systems.
Figure 4.4.7 shows the response of
the Elevation axis to a commanded
elevation derived from the joystick
input.
Elevation
Derivative Gain
Figure 4.4.8 shows the travel rate
response to the commanded travel
rate. The variation in pitch during this
manoeuvre is shown in Figure 4.4.9
igure 4.4.4 Hevation Control block
In order to run the controller follow
the steps given in the previous
examples.
Derivative
m--:..-I:. ve Gain
Sum
Figure 4.4.5 Pitchcontrolblock
1
7
in-i
i
i
-3-+y-
i
Rate
Travel
Intagral
gain
in-2
Integrator
Limited
L;
,-+Ï
- + I
-----++:Y
Saturation 1
Travel
Rate gain
out-1
Saturation
I
1
Figure 4.4.6 Travel control block
3D Heli - 3
-63 -
3 DOF HELICOPTER
Figure 4.4.8 Travel rate response to en travel rate command
I
h
i
~
i
'i
I
\
'Ï
I
-'O
-..
,
,'
iI
i/\
I
\,
I
at.-
!
i
3 0
/
!i
i
,
\'
u
'
\
' I-.,/
-
'>d
-
I
1
a0
.
a
-0
Figure 4.4.9 Pitch reaction to travel rate command shown in Figure 4.4.8
3D Heli - 4
-64 -
HINTS & TROUBLESHOOTING
5.0 Hints and Troubleshooting
5.1 Discrete and multirate blocks
Discrete time transfer functions have a Sample time parameter which must be entered when the block is
defined. If the sanjple tiriie is shuriei than LIT eqüai io the Step size cëiecied under Reaitime Cocie
Options, then the b!ock is executed at every Step (size). If the Sample time is longer thar; the Step size,
then you have defined a multirate system. The discrete block will then be evaluated at an integer multiple
of the Step size closest to the Sample time you have defined when you generated the realtime code. This
means that if you change the Sample time of a discrete block during a simulation, it will not take effect.
The reason for this is that you have already generated code which fixes the Sample time for that block.
Also note that the coefficients computed for a discrete transfer function, must be based on the Sample
time you chose and not the Step size, [eg converting from continuous time to discrete use
c2dm(nmu,den, Sample-Time) and not cZdm(nmu,den, Step-size)]. Otherwise, the coefficients
will not be compatible with the actual implementation. Normally you would select the Sample time of a
discrete block to be the same as the Step size you selected for Real-time options unless you want a
multirate system.
5.2 Parameter changes and the message
The Simulink model has been structurally changed since the
real-time code for WinCon WBS generated. Regenerate the
real-time code.
If you change connections in the diagram or modify the number of blocks, you will need to re-compile the
code. This is also true if you change the dimensions of a matrix or vector which is being used in a
SIMULINK block. For exarnp!e, if you are using a aiimerator for a transfer !Enction n-n, = [ .2 3 .I: you
decide to change it to num = [ 3 .1] in the MATLAB Command Window, this is interpreted as a cnange
in the block diagram. You may try to change it to nun = [ o 3 .llbut you will still get the message that a
change kas occurred. This is because SIMULINK detects "O" as a no connection and a "1" as a
connection. For this reason, if you want to change a value to zero or one without re-compiling, you should
use a "very small value" for a zero. For example, changing the value of num t o [ O . 000001 3 . I] will
result in practically the same filter but will not cause a re-compile message to arise. The same principle
applies for a value of 1.
5.3 Changing a variable in the MATLAB Command Window and reflecting the change into the
running SIMULINK controller
Suppose you are using a MATLAB variable named A in a SIMULINK block. A value must be assigned to
the variable before you can generate realtime code. You assign the value of A from the MATLAB
Command Window. Once you generate the Real-time code and you are running the controller, you can
change the value of A in the MATLAB Command Window. The value does not change in
HINTS 1
HINTS 6, TROUBLESHOOTING
SIMULINWinCon until you either
a) while the controller is running, open the dialogue box for the block in which the variable A is referenced
and close it.
b) Stop and Start the controller. The new variable value will be automatically updated in the
SIMULINWinCon controller without opening the'dialogue box. The reason the value changed in
MATLAB is not automatically updated in SIMULINK is a SIMULINK specific characteristic.
5.4 Summing junction
Summing junction signs cannot be changed once the code has been generated. This is SIMULINK
specific characteristic. Do not open a Summing junction dialogue box while running code. This stops the
controller and switches Simulation Options to Normal. Always switch it back to External.
5.5 Controller does not start
If you click Start and the controller does not start, check the External switch under Simulation-Options,
also make sure you have configured the Realtime Code Options correctly as well as the External File. See
section 3.4.
5.6 Integration methods
The choice of integration method for continuous time blocks is made from the Code - Real-time Options
dialogue window. The choices under Simulation-parameters will not change integration methods of
Real-time Code. Once you compile with a specific integration method, you can only change it by
re-compiling. We suggest RK3 since it performs better that Euler but generates less code than RK5. If you
choose "None", then the outputs of continuous time blocks will be zero.
5.7 WinCon Configuration
WinCon should always be configured with zero inputs/Outputs/References(Configurefrom WinCon Main
Window) while running SIMULINK controllers. This option is only for custom written controllers from
Quanser Consulting.
5.8 STOP GontroüSimulation block
The STOP block from SIMULINUSinks does not work under external mode. If you want to stop the
controller use STOP WinCon. Obtain STOP WinGon by typing winlib in the MATLAB command Window
and selecting SOURCES.
5.9 Random Noise blocks
These blocks are very useful for parameter estimation experiments. The block from SIMULINWSources
does not work in external mode. Use the two choices from the SOURCES under winlib.
5.10 Other compilers
To date we support Watcom Vi0.0a or higher. For other compilers please contact Quanser Consulting.
HINTS 2
c
66-
_-..
HINTS & TROUBLESHOOTING
We will be happy to assist you in creating the correct templates and makefiles for your compiler
5.11 CRASH!
if the system returns with a Windows error message. Close everything down and reboot. It is a fact of life
that crashes sometimes occur (the less often the better of course.. but they do occur).
Who has not seen the cryptic message:
"An error occurred in your application if you choose to ignore ..."
It is a worthwhile habit to save all your work before re-compiling! WinCon has been rigorously tested
and we hope that we have ironed out the bugs. If there is a consistent crash occurring please contact us
with details. We will attempt to resolve the problem expeditiously. If the controller itself crashes, it is likely
that you have selected a sampiing period that is too small for the controller/computer combination you
have. Start with a slow sampling period then move faster if necessary.
IET During realtime operation, please do not be hasty in changing windows or clicking the mouse buttons.
If the hourglass symbol appears (system busy), wait until it is removed from the screen before you start
another operation.
5.12 Maximum sampling frequency
Realtime controllers run in the background. Apart from obtaining realtime control, you want your computer
to perform other tasks while the controller runs. How fast can the controller run such that you can still use
another application in the foreground? There is no precise answer to this question. It will depend on the
complexity of the controller and the speed of the processor you are using. Furthermore if your controller is
too complex, you may not achieve the sampling speed you specified. If the operations to be performed
(computation delay) take longer than one sample period, the next sample period will be ignored! Note that
computational delay from one sample to the next cannot be assumed to be constant. It depends on the
actual values being operated upon and if you have a nonlinear controller it depends on the statements
being executed. So how can you verify that the controller is sampling at the rate you specify?
Here are a few methods:
a) The simplest method of determining if you are sampling too fast is to observe behaviour of the
foreground task. For example, If the mouse cursor is not reacting as fast as it usually does, graphics is not
updating quickly or the realtime display is skipping seconds, then the controller has taken over the
processor and there is little time left in the foreground to perform other operations. This is usually a good
indication that you should reduce the sampling rate.
b) A simple and relatively precise method would be to compare the realtime display in WinCon with a hand
held digital chronometer. Start the controller and the chronometer at the same time. Compare the WinCon
displayed time with the chronometer. If after ten minutes of operation, the controller and the chronometer
are in synch (within 1 second due to delays in starting the controller and the discrepancy between your
two hands), then the controller is running at the sample speed without skipping beats. If there is a
discrepancy, then you are sampling too fast. The delay between the two times can be used to
approximate how many beats were skipped and you can then estimate the average sampling period. As a
rule of thumb, you should let 25% of processor time be available for your foreground tasks. For example, if
HINTS 3
HINTSti TROUBLESHOOTING
after 10 minutes of running a 1 Khz controller the WinCon clock was 30 seconds behind the chronometer
then the controller skipped approximately 30,000 samples. That means you acquired only 570,000
samples in 1O minutes and the average sampling period was 1.O53 mseconds. The average sampling
frequency was 949Hz. You should limit your sampling frequency to 0.75*949 = 71 1 Hz ( T, = .O014 sec.) in
order to allow enough time in the foreground to perform other tasks. Running the controller at this speed
would also guarantee that no beats are missed.
c ) If you want an accurate measure, you can dedicate one of your D/A channels to switch its output
between +Al volts at every sample. You can then examine the output of the D/A on the oscilloscope and
see if you are attaining the speed you want. If you are sampling faster than the time it takes to execute the
controller, the output will not be a square wave of the frequency you expect (half the sampling frequency
since you switch signs at every sample).
If your system requires faster sampling rates than can be achieved on the PC, you may want to consider
1) a faster computer
2) Running in DOS
3) a dedicated controller (ie a DSP).
-
Sampling period
r-
TS
The natural question to ask is if one
can predict the maximum sample rate
for a given controller. This depends
on the code that has been generated
and the data acquisition board.
P
Computation Delay
-I-
-
__ 1
/
/
/'
A,
Tc
'L.
,,
//
2
-'\
rf
\,
/
Controller
starts here
/'
Controii4r
ends here
Time left to
perform other
fasks
including
WnCon
Foreground,
Windows etc..
Figure 5.2 Timing Diagram during realtime control WinConlstart
only. Does not apply when WinCon is stopped]
Our benchmark is that the following
operations (inverted pendulum,
example 4.3) can be performed at 3
kHz leaving little time (around 5%) for
other tasks on a Pentium 90 MHz.
2 x N D acquisitions
4 x 1st order continuous time filters
1 x signal generator
6 x scalar gain
7 x additions
3 x scopes
1 x realtime clock
1 x limited integrator
1 x absolute value
1 x relational operator
1 x D/A output
1 x Stop WinCon
One can then estimate that if you double the above complexity, then the fastest rate possible is around
1500 Hz if you use the same computer. Note that the data acquisition blocks typically take longer to
execute than the other blocks. So if you maintain the same I/O channels and add some other blocks to the
above, you may still be able to achieve around 3 KHz... it all depends on complexity.
HINTS 4
HINTS & TROUBLESHOOTING
Predicting the maximum sample rate accurately is usually not possible. The safest method to obtain this
measure for a given controller is to try the controller without connecting the plant. You then keep
increasing sampling frequency until there is considerable slowing of the tasks in the foreground. If the
computer hangs while performing this test, you should reboot the system. The reason the computer would
hang is that the sample :ate was so high that theïe was 80 time lefi io interact with the user!
5.13 FL'ZZY Contïolieïs
The file c:hatiab\tooIbox\fuzzy\fuuy\sffis.c does not work with the realtime workshop. You will need to
download an update for this file from the Mathworks website at: http://www.mathworks.com.
Fuzzy controllers will require much more computational power than a state feedback controller. Sampling
periods must be selected carefully. Our experience indicates that a 2 input, 1 output FUZZY controller with
5 membership functions at each input, 9 rules and 5 membership functions at the output can only run at
200 Hz. Sample rates faster than that will not function properly.
5.14 Disk Space Make sure there are at least 10MBytes of free hard disk space on your system.
5.15 Networked systems WinCon is a realtirne system and network operations will interfere with the
performance. WinCon is designed for a standalone system and Quanser Consulting does not guarantee
performance on networked systems.
5.16 Versions!
Much too often, all software changes versions ( that is a drag ). Type ver in the Matlab command
window. You will get a display as shown below. These are the versions we have been using. If you are
using earlier versions there is no guarantee things will work. Later versions should normally cause no
problems.
ver
MATLAB Version 4.2c.l
MATLAB Site identification Number: ******
No C0ntents.m file for c:\winsim
No C0ntents.m file for c:\matlab\codegen\rt\wincon\devices
No Con!er?ts.m fi!e !or c:!matiaD\,c~Uegen\,~\~oc\,cfvicec
No C0ntents.m file for c:\matlab\codegen\rt\dos\quanser
MATLAB Toolbox Version 4.2a 25-Jul-94
SIMULINK model analysis and construction functions. Version 1 . 3 ~ 15-August-94
SIMULINK demonstrations and samples. Version 1 . 3 ~ 15-August-94
SIMULINK block iibrary. Version 1 . 3 ~ 15-August-94
SysternBuild 3.0 model import into SIMULINK. Version 1.Oa 09-Mar-94
Real-Time Workshop Version 1.IC
25-May-95
Control System Toolbox. Version 3.0b 3-Mar-93
Nonlinear Control Design Toolbox. Version 1.O 5-Nov-93
Signal Processing Toolbox. Version 3.0b 10-Jan-94
User Interface Utilities. Version 1.3 19-Oct-95
System Identification Toolbox. Version 4.0 30-May-95
Fuzzy Logic Toolbox. Version 1.O, 1-19-95
Fuzzy Logic Toolbox Demos. Version 1.O, 1-19-95
HINTS 5
Components
70
B.2
MultiQ board manual
Instructior, rnznua!, 21 pages
MULTIQ TM
8 Analog to Digital Converters
8 Digital to Analog Converters
6 Quadrature input decoderskounters
8 Digital inputs
8 Digital outputs
3 Realtime clocks
Quanser Consulting
CAUTION
The flat ribbon cable connectors are keyed and must be inseded into the
MhlLTIQ board and the TERMINAL board with the correct orientation.
Furthermore, the short cable should be used for the Analog signals and
the long cable should be used for the digital signals and encoders.
CAUTION
cable #2 (long)
i
cable #1 (short) :
MultiQ board
7
terminal board
Cable #1 : Analog signals
Cable # 2 : Digital signals and encoders
No twists in the cables!
I
I
I
The board is static electricity sensitive. Be very careful with electrical
discharge. Atways touch a ground plane BEFORE you handle the board.
Some sf the wiring you perform to the termimal board carries PûWER. Be
sure your wiring is correct as applying power incorrectly may either
damage the device you are connecting to, the board OP your computer!
NEED HELP ?
CALL US AT (905) 527 5208 or FAX your question to (905) 570 1906
OR EMAIL TO : QUANSER BNETACCESS.OM.CA
MULTIQTMI/O BOARD
Quanser Consulting
1 .O General description
v
The MULTIQ is a general purpose data acquisition and control'
board which has 8 single ended analog inputs, 8 analog outputs,
8 bits of digital input , 8 bits of digital output, 3 programmable
timers and up to 6 encoder inputs decoded in quadrature.
Interrupts can be generated by either of the three clocks, one
digital input line and the end of conversion from the N D .
The system is accessed through the PC bus and is adressable
via 16 consecutivememory mapped locations which are
selected through a DIP switch located on the board.
2.0 Principles of operation
8
P
I
8
0-6
____
A/D
D/A
Enc
--
'
PC Bus
DI0
-
I
-
Figure 1 Block diagram of MULTIQ
Turn the PC off and insert the MultiQ into a bus slot in your PC. Connect the cables as shown on the front
page of this manual. The terminal board supplied with the board is shown in Figure 2.
from sensors
use RCA connectors
i
-
k a l o g inputs
-
-3
-2
-
_
v
Clock gatesi
-
-1
u
?Digital inputs1
- 0
-
"
/ I n
:
01234567
From encoders
l
i
I
Signal conditioning
Circuitry here
Header for cable ril
I
'
j
- , i"
'
1-1
Clock outputs-?1
l
i
i-
7
Encoder inputs
L
- - - - - - - --,
I
d
L
-4
Header for cable #2 '
Digital signals & Encaders
/
I
' 7
I
! ,
5\
6'-
3
7-
- , - . - -
,
' i '
-2
Ï-
', o
t
-
~
i
Attach encoders
5 Pin Din
or 10 pin header
76543210
-
baiog outputs
j
-5
1
' I
~
Digital outputs
Use RCA connectors
To actuators
(Power amplifiers)
Figure 2 Terminal board
1
-32-
__
8
2.0.1 Terminal board
1
8
a
--+
All wiring to the board is períormed through the terminal board. Analog inputs and outputs are connected via
RCA connectors. Digital I/O is via 16 pin headers and Encoder inputs are through 5 Pin Din (Stereo)
connectors or via 10 pin headers.
2.1 Analog to digital conversion
The A/D of the MULTIQ is a single ended bipolar signed 13 bit binary (12 bit plus sign) N D . You can perform
u. ccxwercion en m e of 8 chsnne!s by re!ecting the chance! and starling a conversion. the EOC-! (end e?
conversion interrupt) bit in the STATUS REGISTER indicates that the data is ready and can be read. The data
is read by issuing 2 consecutive 8 bit reads from the AD-DATA register.
The data returned is two 8 bit words which must be combined to result in a 16 bit signed word. 5 volts input
maps to OxFFF while O volts maps to Ox0 and -5 Volts maps to OxFFFFOOO.
p
2.1.1 Wiring to the A/D
5x3
All inputs to the A/D multiplexer are single ended in the range 45 Volts and should be wired via the RCA
connectors on the terminal board labelled Analog Inputs.
2.1.2 Signal conditioning of the Analog input signals
If you wish to low pass filter the input signal before data acquisition you may do so by populating the area
labelled Signal Conditioning shown in Figure 2. The circuit for each input channel is shown in Figure 3. It is
highly recommended that you attach a capacitor at least to the input of each AID. This is simpiy done
by soldering a capacitor into the appropriate holes. The factory configuration is Ra = short, Rb = open
and C = open. The choice of the component values depends on the output impedence of the sensor and the
sampling frequency of your data acquisition program. Typically you select a cutoff frequency to be less than
half the sampling frequency (or even smaller).
Measured
signal
.
To A / D
)---"
I
Ra
Ra
A/D
O
1
2
3
4
5
6
7
I
~
RI.
R2
R3
R4
R12
R11
R1 O
R b ; c
Rb
---t-I
R5
R6
R7
i
~
~
C2
C3
C4
__
R9
factory configurati
Ra = short
Rb = open
C = open
Figure 3 Signal conditioning circuit for Analog input signals
2
-33 -
2.2 Analog output
The digital to analog (D/A) converters are 12 bit unsigned binary. An input of -5 volts maps to 0x000, O volts
to Ox3FF and 5 volts maps to OxFFF. Your program should write a 12 bit number (O to 4095) to the
appropriate register and should latch the data. The analog outputs change when the data is latched.
2.3 Ea?csder!npcJta
The board can be equipped with up to six encoder decoders. (Models -2E, 4E and 6E). The encoders data
is decoded in quadrature and used to increment or decrement a 24 bit counter. With 24 bits, you can obtain
16,777,215 counts. With a 2000 line encoder in quadrature, this results in 8000 counts per revolution and
2097 revolutions can be measured without overflowing the counters. Higher counts can be handled by
software.
2.3.1 Wiring to the Encoder inputs.
Each encoder input is equipped with one 5 pin DIN socket and one 10 pin header on the terminal board. you
can use either of these to connect an encoder to the board. The connectors supply +5V and GND to bias the
encoders and receives an 'A' channel and a 'B' channel from the encoder. You must use 5 Volt output
encoders only. Figure 4 shows the pin definition for the 5 pin DIN connector as well as the 10 pin header of
the encoders inputs and the method of wiring.
j
TTL
ESC'OPERt
I
TTL
EN C'O DERi
B
'A
I
2.4 Digital inputs
The board can read 8 digital input lines
mapped to one 1/0address. The digital
input is normally high ('I') and results in
a low ('O') when the line is pulled to
GND. Digital input line ##O can be tied to
an interrupt using the jumpers supplied.
2.5 Digital outputs
w
TOP VIEW
@ure 4 Encoder connections to the 5 pin DIN connector or the 1O
pin header.
The board can control 8 individual
digital outputs mapped to one I/O
address. Writing a 'O' to the appropriate
Dil resuits in zero voitc (TTii O W j ai
the output while writing a '1' results in 5
Volts (TTL HIGH).
2.6 Realtime clocks
The board is equipped with three independent programmable clock timers. Each timer can be programmed
to run at a frequency between 2 MHz Hz and 30.52 Hz. The principle of operation is to write a divisor (N) to
the desired clock and the output frequency will be 2.O/N MHz. (N) is a 16 bit integer value between 2 and
65535 (OxFFFF). The output of any of the three clock can be tied to an interrupt line using a jumper on the
board. The outputs are available on the terminal board for monitoring or triggering external devices.
3
3.0 PROGRAMMING
3.1 Base address selection
Base Address
3
------
B
A
9
O
O
SW2-F
O
O
SW2-F
O
O
l(0FF)
1
2
8
7
6
5
4
SW2-E
SW2-D
SW2-C
SW2-0
SW2-A
Decoded on board
SW2-E
SW2-D
SW2-C
SW2-B
SW2-A
Decoded on board
l(0FF)
O(0N)
O(0N)
l(0FF)
O(0N)
O
2
3
O
O
Base +
Read
Write
Size
o
DIGIN-PORT
DIGOUT-PORT
8 Bit
DAC-DATA
16bit
2
1
3
4
AD-D ATA
16 bit write
AD-CS
8 bit read
5
16 bi6
8
N/A
CLK-DATA
8 bit
9
NiA
NIA
N/A
A
NIA
NiA
N/A
B
N/A
N/A
NIA
C
ENC-1
ENC-1
16 bit
ENC-2
16 bit
1E
I
ENC-2
I
3.2.1 Digital port : Base + O (DIGIN-PORT & DIGOUT-PORT)
4
-
?S-
3.2.1.1 Write (DIGOUT-PORT)
This is the Digital outport port. A 16 bit write to this port outputs the 16 bit data to the digital output header on
the terminal board. Eg. writing a Ox00e5 ( binary 11100101) results in bits 0,2,5,6,7 to go high.
II
DIGIN
It
PORT Write
3.2.1.2 Read (DIGIN-PORT)
This is the Digital input port. A 16 bit read from this board returns the digital levels at the header labelled
Digital input on the terminal board. The inputs are tied high and a read with nothing connected to the header
results in reading a OxFFFF. A returned value of Ox FFa6 (last 8 bits 101O011O) means that bits 0,3,4and 6
have been pulled low by an external device (for example a switch). Note that the high word is always ones.
Ir
li
3.2.2 D/A data Port : Base + 2 (DAC-DATA)
3.2.2.1 Write (DAC-DATA)
15
14
13
12
11
10
NA
NA
NA
NA
AO
11
AO
10
3.2.2.2 Read (MOT APPLICABLE)
9
8
7
I A
9
I A
I A
7
a
6
m
6
5
4
I A
I A
4
5
3
2
1
AO
3
AO
2
AG
1
O
I A
O
3.2.3 A/D Register : Base + 4 (AD-CS and AD-DATA)
3.2.3.1 Write (AD-CS)
A write to this register (any data) initiates a conversion after the AID has been properly set up using the
CONTROL REGISTER.The program must wait for (EOC) to go high in the STATUS REGISTER before
initiating a conversion.
3.2.3.1 Read (AD-DATA)
1
1
This is an 8 bit read register and contains the high byte on the first read and the low byte on the second read.
The structure of the two 8 bit reads is shown below:
1
i
SIGN
AI
15
I
i iI
, I
~ ~ - D A T ~ ~ e a d ~ ~ r ~ t i ~ ~ ~
SIGN
SIGN
SIGN
AI
11
AI
10
o
At)-fATA[~d(Se~;r~d[;e)~
AI
14
AI
13
AI
12
AI
11
AI
AI
io
AI
9
1
AI
a
To convert the data to a voltage the two bytes should be combined into a 16 bit word as follows:
integer-data = (high-bytec<8)I(low-byte&OxFF);
volts = integer-data * 5.0/4096;
where (cc)is the shift left operator, (i) is bitwise 'OR' and (&) is bitwise 'AND'. This means mask off the left
8 bits of the low byte just in case there is extraneous noise, and then merge it with the high byte shifted left
8 bits. This results in a number between (-4096) and (4095). These are mapped to -5V and +5V.
3.2.4
CONTROL REGISTER: Base + 6 (STATUS & CONTROL)
II
Bits 0-2 (DAO DA1 DA2) : Select the D/A channel number. ea- writincl
- a 0x03 selects channel D/A ch3
Bits 0-1 (RCO RC1) : Select the realtime clock register
Bits 3-5 (A0 A l A2) : Select the analog input channel you want to Multiplex to the A/D
Bit 6: (MX) Enable the 8 channel multiplexer
Bit 7: (AZ)Enable Auto Zero on the N D
Bit 8: (CAL)Enable Autocalibration on the AID
Bit 9: (S/H)
Disable Sample and Hold on the A/D Keep this bit high all the time
Bit 10 (CLK): Select base clock frequency for the AID. 1 is 4 MHz, O is 2 MHz. (Always use 4 Mhz). Keep this
bit high al the time
Bit tl-l2(LDO,LDl): Latch data to the selected D/A channel when both bits are set high.
6
-??-
-3.2.4.2 Read (STATUS)
1
II
R
7
6
EOC-I
EOC
CT1
CT2
CTO
4
3
7
1
n
Bits 0-2(CTO,CTl CT2): Counter timeout states for the three timers.
Bit 3:(EOC) End of conversions on the N D . Goes high when N D is ready for another conversion.
Bit 4:(EOC-I) End of conversion Interrupt. Goes high when A/D conversion is complete.
3.2.5 Clock data register: base + 8 CLK-DATA
3.2.5.1 Write (CLK-DATA)
This an 8 bit write only register that accesses any of the four registers on the reaitime clock chip. The register
(CLK-O to CLK-4, see section on programming) is selected by writing to bits (RC1 RCO) of the CONTROL
REGISTER and then writing the data to CLK-DATA.
3.2.5.2 Read (NOT APPLICABLE)
7
- ?8-
3.2.6 ENCODER REGISTERS Base iOxC and Base + OxD (ENC1 & ENC-2)
3.2.6.1 Write (ENC-1)
Writing to this register selects which of the 6 encoder counter values you want to read next. The encoder
number is specified in bits (E2 E l EO)
15
14
13
12
'i1
10
9
8
7
6
5
4
3
2
1
O
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
NA
R1
RO
E2
El
EO
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
O
NA
NA
NA
NA
NA
NA
NA
NA
EN
23
EN
22
EN
21
EN
20
EN
EN
18
EN
17
EN
16
19
8
_ ” _..
.. -
-
.
.
.‘,......
4.0 SAMPLE PROGRAMS
The following are sample programs written in Tuiwo C anG can be used by your main program. These
functions are included in the file multiq.drv. The file also contains the definitions of the register locations
based on a base address 0x320 as shown below:
#define base-pori 0x320
#define digifi-port
#define digout-port
#define dac-es
#define ad-cs
#define status-reg
#define controrolreg
#define cl-reg
#define ene-reg1
#define enc-reg2
#define AD-SU
#define AD-AUTOCAL
#define AD-AUTOZ
#define AD-MUX-EN
#define AD-CLOCK-4M
base-port
base-port
base-port
base-port
base-port
base-port
base-port
base-port
base-port
i 0x00
+ Ox00
i 0x02
i 0x04
+ 0x06
+ 0x06
+ 0x08
+ GxOc
i OxOe
0x200 /* active low */
Ox100 /* active high */
0x80 P active high */
0x40 P active high */
0x400 /*high = 4 MHz */
/* IMPORTANT */
/* sample and hold disabled to prevent exrtaneous sampling */
/* and fix the clock speed to 4 MUz */
#define CONTROL-MUST (AD-SU I AD-CLOCK-4M)
unsigned int control word = CONTROL-MUST;
4.1 D/A operation
- Write the analog output channel number to bits (DA2 DA1 DAO) of CONTROL along with a (11) to LD1 and
LDO of the CONTROL REGISTER
- Write the actual data to DAC-DATA
(16 bit write lowest 12 bits carry the data).
- release the latch by writing a (00) to both bits (LDI LDO) of the CONTROL REGISTER.
4.6 .I Sample C function
void daout(int eh, int ivalue)
{
outpot?(controlreg, 0x1800 I ch I CONÏROL-MUST);
outport(dac-es, ivalue);
outport(controLreg, CONTROL-MUST);
1
4.1.2 Reset the D/A outputs
void resetda(void)
i
int zero- v;
9
zero-v = vtoi(O.0); /* see this function below */
daout(0,zero- v);
daout( 1,zero- v);
daout(2,zero-v);
daout(3,zero- v);
daout(4,zero- v);
daout(5,zero-v);
dacclt(6,zero- v);
A--.
. A / 7
--"- .
.\.
uauu<(/,Leiu-v/,
1
4.1.3 Voltage to integer conversion
This function is used to convert a desired voltage (in volts) to the appropriate integer value for the D/A.
int vtoi(f1oat v)
{
return(ceil( v*2048/5.+2047));
1
4.2 A/D OPERATIONS
4.2.1 Calibrating the A/D
This can be performed once only at the start of a program. Once calibrated, the offset and gain are used for
all subsequent measurements. To calibrate:
1) write a '1' to bit 'CAL' and to 'S/H'
of CONTROL REGISTER
2) write a '1' to 'S/H' of CONTROL REGISTER
3) wait for EOC to go high in STATUS REGISTER
4.2.1.1 Sample C function
void reseLad(void)
{
/* start calibration */
outport(controLreg, AD-AUTOCAL I CONTROL-MUS7J;
outpott(controLreg, CONTROL-MUST);
while( (hport(statu~-reg)&Ox08)== Ox00 );
1
4.2.2Acquiring a sample
1 ) select the channel and write it to control register bits (A2 A l AO) along with a '1' to (EN) , a '1' to (S/H) and
a '1' to (CLK) bits of the CONTROL REGISTER. Also write a '1' to bit (Ai)if you want auto zero before the
sample. Note that autozero takes longer and is not normally necessary.
2) wait until (EOC) in STATUS REGISTER goes high.
3) Initiate a conversion by a write to AD-CS (any value)
4) wait until EOC-I in STATUS REGISTER goes high
5) read high byte from AD-DATA
6) read low-byte from AD-DATA
10
-BI-
'
4.2.2.1 Sample C Function
int adin(int ch)
{
unsigned int hb,lb;
int toolong,maxcnt;
rnaxcnt = 30;
nosound();
controlword = CONTROL-MUST I AD-MUX-EN I (chcc3); /*.select channel and enable rnux start S/H7
P use the next line instead of above line i? yo:: w2nf to aut3 zero before every sample */
/*controlword = CONTROL-MUST I AD-AUTOZ I AD-MUX-EN I (ch<c3);*/
/* NOTE THAT IT IS SLO WER WITH AUTO ZERO */
outport(control reg,control word);
toolong = O;
while( ((inport(statu~-reg)&Ox8) == Ox00 ) && (toolong cmaucnt) ) toolong++;
if(toolong>=maxcnt) sound(400);
outportb(ad-cs, O);
while( (inport(statu.s-reg)&OxlO) == Ox00 );
hb = inport(ad-cs) & Oxe
16 = inport(ad-cs) & Oxff;
outport(control reg,CONTROL- MUST);
return ( (hbcc8) I lb);
1
Note the limited wait loop:
toolong = O;
while( ((inport(statu~-reg)&Ox8)== Ox00 ) && (toolong cmaxcnt) ) toolong++;
if(toolong>=maxcnt) sound(400);
.which ensures that the wait for EOC is left if it takes too long . If this happens, an error h a s occurred
on the AID Chip ( National Semiconductor ADC1251) during a conversion and the chip is not ready
for a conversion after sufficient waiting. This is not usually necessary but is good practice. If this error
occurs, the computer will generate a sound until issuing 'nosound()' from the calling C program. If
you d o not want the sound to g o on just delete the 'sound(400)' statement.
4.2.3 Integer to voltage conversion
The foilowing function converts from an integer value read by the N D to a floating point value in volts.
float itov(int iv)
i
return(iv*5/4095.);
1
4.3 Digital input operation:
- Read a 16 bit word from DIGIN-PORT
4.3.1 Sample C Function
int digin(void)
11
-82 -
I
return inport(digin-porf);
1
4.4 Digital output operation
- Write a 16 bit word to DIGOUT-PORT
4.4.1 Sample C Function
4.5 Encoder operations
4.5.1 Encoder reset
- write to ENCl the encoder channel you want to reset.
- write to bit RO of ENCl a '1' if the channel number is even (along with the channel number)
- write to bit R1 of ENCl a '1' if the channel number is odd (along with the channel number)
4.5.1 .l Sample C function
void enc-reset(int ch)
I
Gutport(enc-reg 1,ch);
if( (ch == O) Il(ch == 2)11(ch == 4)) outporf(enc~reg1,((ch&0x07)10x8));
if( (ch == 1) Il(ch == 3)11(ch == 5)) outporf(enc~reg1,((ch&0x07)10x10));
I
4.5.2 Encoder read
- write to ENC-1 the channel number you want to read into the lower 3 bits(E2 E l EO)
- read from ENC-1 the low byte (16 bits)
- read from E N C 2 the high byte (16 bit read, mask off the 8 most significant)
- merge the two &ti! to ehtain a ' ! o q signed int'
4.5.2.1 Sample C function
long int enc-in(int ch)
I
unsigned int low- word, high- word;
unsigned long result;
outport(enc- reg 1,ch);
low- word = inpott(enc-reg 1);
high- word =inport(enc-regZ);
result = high- word & O x f f ;
if(resu1t & 0x80) result = result I OxffOO; /*converf to signed 32 bit*/
result = (result cc 16) I low- word;
return ((long) result);
1
12
-83 -
4.6 Clock operations
The three clocks are imbedded in a single integrated circuit (INTEL 82C54). Four registers located on the
clock chip are addressed via bits (RCl RCO) of the MULTIQ's CONTROL REGISTER. In order to write a
desired value to a specific clock register, first write to (RCl RCO) of the CONTROL REGISTER the value for
the register you want to access and then write the desired value to the CLOCK DATA REGISTER (Base +
8).
O
O
CLOCK O DATA REGISTER
O
1
CLOCK 1 DATA REGISTER
1
O
CLOCK 2 DATA REGISTER
1
1
CLOCK COMMAND REGISTER
The CLOCK COMMAND REGISTER has the following bits:
7
SC1
6
5
4
3
2
1
O
SCO
RW1
RW2
M2
M1
MO
BC
The clock you want to perform an operation on is selected using bits (SC1 SCO) and the mode of operation
is selected using bits (M2 M1 MO).
In order to program a specific clock to run at a given frequency, you must first setect a divider for the clock.
For example if you want to run at a frequency 'F' the divisor is obtained by using the equation:
DIV = CEIL(2e6/Freq)
where 2e6 Hz is the base frequency for all three clocks. This will be a 16 bit integer value (O to 65535). Note
that if Freq is smaller than (2e6/65535) the clock will actually run much faster than you expect!
Next you need to write to the CLOCK COMMAND REGISTER the clock number into (SCl SCQ)and select.
mode2 into (M2 M1 MO)(Baud rate Generator). You do this by first writing to the CONTROL REGISTER bits
(RC1 RCO) a (1 1) indicating you will be writing to the CLOCK COMMAND REGISTER next and then you write
the desired data .
After you select the clock number and the mode of operation into the CLOCK CONTROL REGISTER, write
to the CLOCK DATA REGISTER (bits RC1 RCO in the CONTROL REGISTER) the low byte and then the high
byte of the divisor DIV. At this point, the clock you selected will start running at the frequency you specified.
4.6.1 Sample C functions
void clockdiv(int clk-num,int div-value)
i
unsigned int Ib,hb;
Ib = div-value & Oxff;
hb = (div-value & Oxff00)>>8;
13
- 84-
’.
._._.*
.
..’
..
....
controlword = 3 I CONTROL-MUST;
outport(controlreg,controlword);Pselect register 3 of RTC */
outportb(cl- reg, ((cIk-numc<6)10~34));
controlword = elk-num I CONTROL-MUST;
outpotf(control reg,control word);
outporfb(cl- reg,Ib);
outportb(c1k-reg, hb);
i
/* this function sets the clock frequency of fhe desired clock. it caiis clockaiv() *i
void setck-freq(int elk-num, float c l - freq)
i
float base-freq = 2ûOOûOO;
int divider;
divider = ceilíbase- freqklk- freq);
clockdiv(c1k-num, divider);
I
The states of the three clock can be monitorec. through bits (CT2 CTl and CTO) of the STATUS REGISTER.
5.0 Tying to interrupts
You may wire the following lines to some of the interrupt lines on the PC bus.
1
1
1
Bit
I Status
I Clock Timer O overflow
I Clock Timer 1 overflow
I
CTO
CTl
CT2
EOC-I
11 DI0
I
I
I
Clock timer 3 overflow
End of conversion interrupt
I Digital input bit O
1i
14
The interrupts lines that can be tied to are
interrupt#
3
5
I
controller
a_
7
LPT1: Printei
OXF
9
RESERVED
RESERVED
10
UNUSED
0x72
11
UNUSED
Ox73
12
UNUSED
0x74
15
1 UNUSED
0x77
The interrupt lines shouid be physicaliy connected on the board using the jumpers provided. You should be
certain that no other device is tied to the interrupt line you want to use.
5.1 Writing interrupt service routines
The following is a short explanation on how to write interrupt service routines on an IBM PC compatible
system. More detailed informationcan be obtained from any good book on PC architecture and the C compiler
you are using.
An interrupt service routine (ISR) is initiated every time a specified interrupt line associated with the ISR goes
high. The interrupt mask register on the PC is located at address 0x21. It is an eight bit port and in order to
activate a certain interrupt line, you must write a ‘O‘ to the associated bit in the interrupt mask register. For
example if you want to allow interrupts only from lines 2 and 7 you must write a (O1 111011) or (Ox7b) to
memory location 0x21.
Each interrupt lines causes a jump to the address located in the vector table shown above. For example if you
wan?i! function:
extern void interrupt far newtimer(void);
to be executed every time interrupt #5 occurs, you set it up in the following manner:
dicabie();/* disable interrupts */
oldtimer = getvect(0xd); /’save old isr address, see vecctor in column 3 OP fable above */
setvect(Oxd,newtimer);/* setup the new isr */
int-mask = inportb(Ox21); /“get the present mask 7
outpottb(ûx2l,int~mask&Oxdf);
/* write out a new mask that sets bit 5 to O) */
enable();Penable interrupts, at this point newfjmer is acfive and will be executed every time line 3 goes high
*/
15
-
86-
Now what happens inside the isr is also very important.
The ISR should have the following structure:
extern void interrupt far newtimer(void)
{
a m faeve data87/* assembly code to save floating point processor status */
w ' . ' ' n r n r a c r n r ?/
-~ h m v Q 7I,/,1 -,/* r l a s r fha flngfinn ynnint
disable();/* disable other interrupts */
CI,=iL<,v,
","U.
LI,"
" V Y L " l y
y,vuuuvvr
/* here is where you write your code */
/* this will be executed every time the interrupt occurs */
asm frstor data87/* restore floating point processor status */
outportb(Ox2O,Ox65);/* acknowledges interrupt to 8259 */
enable();
1
data87 must be declared globally as
char *data87[94];
6.0 Testing your board
The programs 'test-mq.c', 'test-intd and the driver file 'multiq.drv' are supplied with the board. In order to
compile these programs you need Turbo C and Turbo assembler. Executable versions are also supplied.
- make a directory MULTIQ on your hard drive
- copy all files to that directory
- Run the program test-rnq
- The program is interactive and you can plot selected data in realtime. You can select the parameters
associated with the letters in brackets [ 1. For example entering the letter [v] you will be prompted to enter a
voltage which will be output to DIA channel specified by hitting [o]. The program is interrupt driven and all
variables are monitored on the screen in realtime. The N D channel associated with the letter [i] can be plotted
in realtime as well as the encoder input associated with the letter [e]. Entering [z] will reset the encoder
selected. You can output a digital word to the digital output port by entering [d] followed by a hexadecimal
number. You can seiect the áata you want to piot in reaitime by hitting [vj. Hit 'x' to exit realtime plotting.
Selecting
allows you to alter the duration of the x axis of the realtime plot.
m
[i]: N D input channel number
[o]: D/A output channel number
[v]: output volts
[d]: Digital word out
[e]: Encoder channel
[z]: Encoder reset
[F]: Sampling Frequency(Hz)
[TI: X axis time duration(Sec)
[VI: Y axis variable:
[RI: Realtime plot
[Q]: Quit program
The program test-mq uses the IBM PC SOFTWARE INTERRUPT and changes the speed of the realtime
clock used for time of day. Run this program to test all the functions on the board except the realtime clocks.
16
- 8?-
Reset the time of day from DOS if necessary.
The program test-int uses the MULTIQ CLOCK #1 f r hardware interrupts on interrupt line #5. In order to
run this program you should install the jumper labelled CTCl! to pin interrupt 5.(FACTORY
CONFIGURATION)
6.1 Compiiing thz soüreê code
If you need to change anythinc in the source code of the above prqrams, you will need to recompile theri.,.
Use the following lines to obtain new executable code.
Turbo C users
tcc -r -B -f87-mi % I graphicsiib
Borland C users
tcc -r -B -f87-mi % I graphics.lib
where %1 is the name of the program.
Note Turbo assembler (TASM) should be in the PATH as well as (TC\BIN) or (BC\BIN). The file
EGAVGABGI must be present in the directory.
6.2 Execution speed
Function
l
Execution speed in y seconds
Digital input (16 bit)
2
~~
Digital output (16 bit)
2
1 Encoder read (24 bit)
5.5
~
.
19.2 -
Analog todigital conversion (7 3 bit)
.
.
'
r
I
1 Digital to analog conversion (12 bit)
5.0
The above information is important when determining what is the maximum sampling frequency you can set
in an ISR. Suppose you would like to sample all 8 analog input channels, output to all 8 channels, read 6
encoders and perform 16 bit digital I/O in a single interrupt service routine. These would take approximately
(2+2i5.5~6+19.2~8+5~8)
= 230.6 microseconds. Therefore the ISR should be called at a frequency slower
than 3.8 Khz. If you want to perform calculations in an ISR (which you typically would for a controller), then
the time for calculations should also be taken into consideration. Assuming the calculations you are
performing take another 230 microseconds, then the ISR should execute slower than 1.9 Khz. You would
17
- 98-
also like to have some time left over for foreground jobs. Lets's say 50% of processor time left for foreground
operations(plotting, user interaction, etc), then the ISR should be set to a maximum of 950 Hz. This is the
suggested maximum sampling frequency when the board is being used at full capacity. Of course, the less
channels are use and the simpler the controller, the faster you can set the speed of the ISR.
Select the interrupt source using the jumpers at the headers labelled Interrupts. USE ONE INTERRUPT
JUMPER PER HEADER.
1) Placing a jumper at the header labelled A/D will cause an interrupt from EOC-I to occur at the line to which
the jumper is attached. ie if the jumper is attached between A/D and the pin labelled Y, an EOC-I will cause
an interrupt number 5 to occur.
2) Placing a jumper at the header labelled CTCO will cause an interrupt from CLOCK O to occur at the line
to which the jumper is attached. ie if the jumper is attached between CTCO and the pin labelled '5', an interrupt
number 5 will occur at the frequency at which CLOCK O is operating.
3) Placing a jumper at the header labelled CTCl will cause an interrupt from CLOCK 1 to occur at the line
to which the jumper is attached. ie if the jumper is attached between CTCl and the pin labelled ?ji,an interrupt
number 5 will occur at the frequency at which CLOCK 1 is operating. THIS IS FACTORY CONFIGURATION.
4) Placing a jumper at the header labelled CTC2 will cause an interrupt from CLOCK 2 OR FROM Digital
Input #O to occur at the line to which the jumper is attached. The source depends on the jumper labelled
CTC21NT. If the jumper is between pins (12) then the source is clock 2, if the jumper is between (23) then the
source is DINO. With the CTC21NT jumper located at (12) and one jumper at (CTC2,5) an interrupt number
5 is generated at the speed of CLOCK2. With the CTC21NT jumper located at (23) and one jumper at
(CTC2,5) an interrupt number 5 is generated every time the digital input number O is pulsed from LOW to
HIGH to LOW
18
- 89-
adjust trinipoi until
Tp5 is +>.O0 volts
Trimpoi
hpader for c a b l e @
digital Inpula and encoders
l-22
Quanaer Consulting
CTZIST
1
DINO
-
SR7
>.:la'
.:
. I ;
h e a d e r for anaioz inputs
seleci interrupt line
cable # i
. , , < I
_u
Select h a a e address
Seiect interrupt sources
u c t o r j configuraïion
Jumper between CTCI
and INT5
?-
i
19
w",
4
i
- 90 -
91
B. 3 Manual: Dynaserv DD Servo-Actuator DM/SD series
B.3
Manual: Dynaserv DD Servo-Actuator DM/SD series
Instruction manual, 22 pages
Instruction
Manual
DYNASER
D M / S D Series
(New Driver Model)
IM A301-E
YOKOGAWA
IM
Yokogawa Precision Corporation
Sep. 9.
A30*
INTRODUCTION
Thank you for purchasing our DYNASERV DD Servo-Actuator (New Driver Model).
The DYNASERV is a high torque, high velocity, highly accurate outer rotor type servo-actuator
which can be used in a wide range of field applications related to FA(Factory Automation),
including industrial robots, indexes, etc.
This instruction manual covers the DMíSD series. Be sure to read this instruction manual
prior to operating the DYNASERV.
Copying or the reproduction by any means of all or any part of the contents of this manual
without permission is strictly prohibited.
Yokogawa Precision Corp. reserve the right to change the contents of this manual without
prior notification.
~
i"
While every effort has been made to ensure accuracy in the preparation of this manual, if
you should however notice any discrepancies, errors or omissions, kindly contact your dealer
or the authorized service personnel of Yokogawa Precision Corp. or it's authorized agency.
U Yokogawa Precision Corp. shall bear no responsibility for indirect o r consequential damages
such as, but not so as t o limit the foregoing, the loss of profit, or the loss of production,
caused by the use of our products in accordance with this manual.
FD No. IM A ~ O I - E
@Copyright Aug. 1993(YPC). 1st Edition :Aug. 1993(SU)
IM A301-E
I
-
~~
~~
Warning on Installation and Operation
Warnincl on installation and Operation
. Never install the motor with the rotor fixed and the stator set free for rotation.
. Ensure that the power is switched off when removing the side panel of the driver for
jumper setting, etc. Dangerously high voltage is present inside tht! unit.
. The motor rotates a t high speed with high torque. Beware of the rotating radius of the
load when operating the motor with the load installed.
. Ensure adequate grounding a t the ground terminal.
. When installing a load to the rotor of the motor, allow
12. If the motor is placed on the floor or the like as shown below when carrying or installing
the DYNASERV, the cable is bent by the weight of the motor and this bending may cut
the conductor wire. When placing the motor, be sure to use a supporting base which
protects the cable from being bent.
or more when installing the motor with the
The minimum bending radius shall be 50cable being bent. Do not apply bending force repeatedly to the cable when it is used.
The cable specifications do not include application with a rotiot.
a space of lmm or more between
the top surface of the motor and the surface of the load in order to maintain the proper
alignment of the surfaces. Never apply any force or press fit any materials into the
center hole. (See the figure below.)
Center hole
'
Minimum bending radius
50mm or more
W
R
13. Appropriate centering and alignment must be carried out when connecting the motor to a
load. The shaft metal of the motor may get damaged if the centering offset remains 1Opm
or more.
I
;. Never touch the bolts (indicated by arrow in the
figure) which fix the bottom part of the rotor of the
motor. (See the figure on the right.) Loosening or
tightening these volts may change the electrical
commutation angle, and may result in faulty
rotation.
--
oifset :10pm or less
7. Materials easily affected by magnetism must never be brought, close to the motor as the
surface of the motor is magnetized.
3. Install the motor i n an appropriate location as the motor i s not dust proof, watertight or
oil proof.
3. If the motor is used with oscillating rotation movements with a small angle (50" or less),
then carry out a running-in operation with back-and-forth movement about 10 times, each
move exceeding an angle of 90" a t least. The running-in operation must be carried out
every 10,000 times of back and forth oscillation movements in order to ensure proper
lubrication of the bearings.
14.Never carry out a withstanding voltage test. Carrying out this test ever accidentally may
damage the circuits. When such withstanding voltage tests are required, consult
Yokogawa Precision Corp. or its authorized agency.
-
10. Compatibility of the motor with the driver or vice versa when they are of a same model
is possible only when they are of the same type. (i.e. when the motor code is
DM1000050xi, and the driver code is SDlOCIOI1152, the 0000 of the motor and
the driver shall be the same.)
11. Never disassemble or modify the motor or the driver. When such disassembling or
modification is required, consult Yokogawa Precision Corp. or its authorized agency.
Yokogawa Precision Corp. or its authorized agency, accepts no responsibility for
disassembled or modified motor and driver.
ii
14.
A301-E
IM A301-E
iii
Contents
Contents
CONTENTS
.
4. OPERATION CAUTIONS
4.1 input and Output Si
INTRODUCTION ...
.............................................................
Warning on Installation and Operation ......
1. PRODUCT OUTLINE
1.1 DYNASERV, D M / S
.........................................................
1.2 Standard Product Configuration
1.3 Model and Specification Code ,
1
(1) Position Command Pulse Input
(2) Motor Rotating Direction Command Input signal (SIGNk)
(3) Velocity Command Input ( V N ..................................................
(4) Velocity Monitoring Output (VELMON) .......................................
(5) A / B Phase, UP/DOWN Pulse Output S i g n a l s ( A / U k , B / D k ) .........
a) A I B Phase Output Pulse ....................................................
b) UPIDOWN Output Pulse
...............................
4.2 Power ON/OFF .......................
5. CONTROL MODE AND ADJUSTMEN
5.1 Position Control Mode Adjustment
...............
3.2
I
Control Mode Setting
...........
(2) Feedback Pulse and Position Command Pulse Settings/ JP1
a) <RATE#l to 2> Jumpers
...........
7
..............
..............................
...............................
Signal (PULSE:k) .........................
....................................
18
18
i8
18
18
i8
18
19
20
(1) I-PD Type Position Control
...............................
(2) P Type Position Control ....
...............................
(3) Position Control System Adjustment Procedure
(4) Procedure for Adjustment without Measuring
,5.2 Velocity Control Mode Adjustment .......................................
(i) PI Type Velocity Control
....................................
(2) P Type Velocity Control ...
(3) Adjustment of Velocity Con
................................
5.3 Torque Control Mode Adjustment ......................................................
20
6. MAINTENANCE AND INSPECTION ...........................................................
6.1 Motor Section ..............................................................................
6.2 Driver Section ..............................................................................
25
7. TROUBLESHOOTING AND MEASURES ......................................................
25
25
zo
23
24
24
25
25
(3) Velocity Signal Filter Settin
Motor Trouble and Measures ...........................................................
List of LED Display .......................................................................
7.3 Procedure for Error Correction .........................................................
7.1
7.2
(3) Typical Wiring Example (In the
(4) Connection to External Controller .............................................
(5) List of Interface .....................................................................
a) Input ..............................................................................
3.4
(2) Driver Section Mounting
a) Installation Location
b) Mounting Procedure
....................
3.5 Wiring Cables ........................................................
(i) Cable Sizes a n d Rated Currents ....................
(2) Wiring Cautions ...............................................
(3) Environmental Specification
8.2 Torque vs Velocity Characteristic
8.3 Dimensional Outline Drawing ....
Inctallation ..................
(i) Motor-section Mounti
b) Mechanical Coupling
iv
12
13
13
8. OTHERS .....................................................
8.1 Standard Specification ....................................
(i) Standard Motor Specification ...................
(2) Standard Driver Specification .........................
................
15
.......................
.......................
..............
16
.................
.....................................................
................................
................................
(1) Motor (A Series)
(2) Motor (B Series)
.......................................................
(3) Driver ..................................................
8.4 Driver Block Diagram .....................................................................
27
28
31
32
32
33
33
35
16
17
IM A301-E
IM Am<-E
V
i
1.
Product OuUine
1.
1. PRODUCT OUTLINE
1.1
. - . DYNASERV.
~
1.3
Product Outline
Model and Specification Code
The DYNASERV, DMISD Series motor and driver Model Nos. specification code of the
rating nameplate are as shown in the following.
DM / SD Series
The DYNASERV series are high speed, high torque, highly accurate outer rotor type servo
actuators which embody the measurement technology and control technology developed during
Yokogawa Electric Co.'s long experience in the field.
The DYNASERV is composed of a motor section incorporating an encoder, and a driver
section.
There are two DYNASERV mode types-the 4 models of A Series with an output torque of
50-200N.m, and 4 models of B Series with an output torque of 15-60N.m. The A and B
Series have an outer diameter of 264mm and l6Omm respectively and a cylindncal hole of
5Rmm and 25mm diameter respectively.
There is a driver model for each motor.
The drivers are available in types so that they can correspond to motor types. The drivers
are available also with 100-115V power supply type and 200-230V power supply type.
(1) Motor Section and Specification Code
--A
Motor series name
--
Design version
ö Maximum output torque (Nsm with 3 digits)
---
Motor Model No. / outer diameter
(A series :dia. 10"I B series :dia. 6")
R Standard export model ---
--a With compatibilities ---
External appearance (O :Standard)
(2) Driver Section and Specification Code
n Driver series name
3
1
JI-\[
Design version -
1.2 Standard Product Configuration
The standard product set consists of the following components. When after unpacked, ensure
that the oroduct corresponds to the correct model, and also ensure that the types and quantities
of standard accessories are also correct.
E Maximum output torque (N.m with 3 digits)
a Motor Model No. I outer diameter
(A series :dia. 10"I B series : dia. 6')
--
4
1
--A
-Compatibility (2 :compatible with the former SD driver) Standard export model
X
X E Power voltage (i:100-115V power requirements I
2 :200-230V power requirements)
Drive
\
si~clnnon
5 0 - no-
__
Built-in interface board type (S : Serial pulse) -
Connector (For CNI temiinai)
o
X IMechanical resonance filter (I :With equalizer filter /
N : With notch filter I O :Without filter)
Connector
(For CN2 terminal)
8
__
% : Optional
Note : The motor and the driver are compatible within the same model type. For compatibility,
the upper
.~ five digits of the motor code type (DMOOCIOO) and the driver code type
(SDOOO0CI)shall be the same.
Figure 1.1 Standard Products
1
IM Ami-E
IM A301-E
2
2.
2.
Functional Description
2.3
FUNCTIONAL DESCRIPTION
2.
Functional Description
Driver Panel Surface
2.1 Motor Section
Rating nameplate
Control section power supply
terminals
t
Bottom View
Top View
Figure 2.1
posn
Positioning completion
widih setting switch
CNl
Natural írequency
/ .adjustment switch
li
Main power terminals
LED display
H
,
Int&gral limiter adjustment
switch
LIM
E
E
S
To1
OFI
Power grounding terminal
Parts Name of the Motor
AC GAli
MI
POSI
AGN
TOR,
Motor cable 6-phase terminal
-AC
gain adjustment control
i
DC
gain adjustment control
\Velocity
control mode
waveform output terminal
\Position
,waveform
Motor cable C-phase terminal
Motor cable grounding terminal
mode ON /OFF switch
DC GAtl
Motor cable A-phase terminal
2.2 Driver Section
-Test
7 0
wnirol mode
output teminal
CN
\
Grounding terminal
Torque monitoring terminal
* :Both GND terminals are connec:ted.
(For motor cabie connection)
Figure 2.3 Name and Exploration of the Controls and Termin.nis o n the Driver Panel
CNI connector
(For external Control connection)
CN2 connector
encoder cable uinnection)
or
Figure 2.2 Parts Name of the Driver
3
IM A301-E
IM A301-E
4
3. Preparation for Operation
3.
3. Preparation for Operation
PREPARATION FOR OPERATION
3.1 initial Setting
(i) Setting of the Jumper Switches in the Driver BOB:
(2) Jumper Settings Done Prior to Shipment
<JP1> Jumper
MODE : See the next page
CALIB : See the next page
RATE#l :Position command pulse multiplying factor setting
RATE#2 : Position command pulse multiplying factor setting
UD/AB : With jumper/A/B-phase, Without jumperlUplDom pulse
VFFH : Velocity feed forward amount setting (Note I)
VFFM : Velocity feed forward amount setting (Note i)
VFFL : Velocity feed forward amount setting (Note! 1)
GAZN H : DC gain magnification setting (Note 2)
<JP2> Jumper
I
P
: Velocity
100
:Velocity
I type control
: Velocity P type control
200
PV
VEL
TOR&
El ALM
a
aTLIM
detection fiiter (Hz) selection (Open when a mechanical
resonance filter is installed)
: Velocity detection filter (Hz) selection (Open when a mechanical
resonance filter is installed)
: Mode selection
: Velocity input
:Torque input
: Open for standard models
indicates setting prior to shipment.
Figure 3.1 Setting of the Jumper Switches in the Driver Box
(Note i)
Certain jumpers, switches and variable resistors within the driver box may need to be set
by the customer. However, prior to shipment, they are set as shown on the next page. See the
figure above for their locations.
To remove the side plate of the driver box, unscrew the &screws shown in the figure above.
CAUTION
However, prior to commencing any operation, always turn OFF the power. Further, never
touch the high-voltage generation section, even with the power turned OFF.
For setting and adjustment procedures, see the following pages. Never touch the switches
and variable resistors other than those specified.
1 Shorted I
Open
Shorted
Open
Open
Open
Shorted
Shorted
Open I Open
Open
Open
1
Switch Name
Volume Name
DC GAIN
AC GAIN
POSW
fc
I. LIM
TEST
5
1 Shorted I
1
1
I
1
1
Open
Shorted
Open
Shorted
Open
1
I
With jumper
Without jumper
DC Gainxl3
DC Gainxi
90
85
80
75
70
65
Sening Status
Minimum position
Minimum position
Set to “o”
Set to “O”
Set to “O”
Set to “OFF”
6
3. Preparation for Operation
3. Preparation for Operation
3.2 Control Mode Setting
<RATE#l to 2> Jumpers
Multiplying
The adjustment of these jumpers can change the
position command pulse signal by 1 to 8 times. (See
the table on the right.) However, changes in the
multiplication factor also change the resolution.
Open
Open
b) < i D I A B > Jumpers
The selection of these jumpers enables the selection of the , 4 / B phase or the UP/DOWN
phase. The shorted jumper results in the A / B phase, and thTe open jumper, the UP I DOWN
phase.
a)
(1) Control Mode Types
The following 6 control modes are available for the DYNASERV IIM /SD Series.
Position control mode
Speed control mode
x
--
I-PD type position control
P-P type potsition control
P-i type position control
-E
p
P type velocity control
l type velocity control
(3) Velocity Signal Filter Setting / JP2
Torque control mode
The following table shows the validity or invalidity of the switches and variable resistors
O ~
related to the control mode and the jumper pin settings for each C O Q ~ ~mode.
Tal
1
Jumper Name
iection Switch Name
!
3.1 List of Control Modes and Jumper Pin Swií.ch Settings
Position Cont
Velocity Control
I MODE
OO"
o
O
O
I1
O
r
:
O
GAIN H
O
O
O
X
X
O
X
X
X
X
Shorted
Open
Open
Open
O
X
X
n
X
X
O
O
O
O
I
+
Shorted
Shorted
Open
VEL
,"I
DC GAIN
AC GAIN
POSW
fc
These jumpers are used to select the velocity signal filter cut-off frequency. The cut-off
frequency is set Co 1OOHz with <loo> shorted, and it is set in 200Hz with <200> shorted.
However, when the resonance filter is connected, these jumpers must be kept open.
-+pO
1
0
1
X
O
Open
Open
Shorted
O
O
X
X
control mode is completed, the CN1
X
X
X
connector
ON. This COIN
positioning
signal completion
is set to
X
X
X
X
X
X
X
X
o
X
O
O
Note : 0: Validity, When the set value exerts an infiuence on motor operation.
X : invalidity, When the set value does not exert an influence on motor operation.
(2) Feedback Pulse and Position Command Pulse Settings / JP1
The servo driver receives a signal from the encoder built into the motor, then outputs an A /
B phase or UP / DOWN pulse signal to a higher-level controller. Jumper pins related to the
feedback pulse signal are <RATE#l to 2> and <UDIAB>.
In addition, the position command pulse signal multiplication factor is determined by the
setting of <RATE#i to 2 > .
width can be selected by the
[POSWI switch on the front panel.
The table on the right shows the
relationship between [POSWI
mpo^^^^
Positioning
Compietion Width
'"y
<POSW> Signal Setting
H
L
L
H
4
5
10
switches with <POSW O, 1>
6
40
signal of the CN1 connector set to
7
200
H and the positioning completion
a
4
width.
At the same time, when setting
the position completion width using
<POSW O, 1 > signal, set the
[POSWI switch in 4 steps as shown
in the table. With a combination of
and
of the <posw,
% : 1 pulse=l/max. resolution
-
H
L
L
H
'Osw
o
"i%
H
L
H
L
H
L
H
L
O
4
*
i
the same selection as the tPOSwl
switch can be carried out.
7
i
a
3. Preparation for Operation
3.
.~
3.3 External Wiring
The foilowing explains the adjustment procedure when the mechanical resonance filter (notch
type) is installed as an option. The board of the filter is located as shown below just inside the
square cut-out on the side panel. The controls <hl> and <h2:> on the board are used to set
the notch frequencies a t the fust stage and the second stage respectively. The frequencies can
be set within the range from 150Hz to 1.5kHz (the frequencies are factory-set to 1.5kHz when
shipped).
Use the controls < Q l > and <Q2> to change the setting of the Q values. The Q values can
be set within a range from 0.5 to 2.5 (O to 20kP) (the Q values are factory-set to, 2.5 at the
time of shipping). The offset voltage shall be readjusted when t.he Q value has been changed.
This voltage is to be adjusted using adjustment controls so that the voltage difference between
<TP1> and <TP3> becomes 50mV or less.
The fist-order delay filter is also located on this board. The frequencies can be selected from
20/80Hz,30112OHz and 40/160Hz, using a jumper. In addition, using an appropriate p“ of C
and R, a desired filter frequency can be set. The frequencies of the fist-order delay filter are
factory-set to 20 / 80% a t the time of shipping.
(i) External Connection Outline Diagram
.!
.. .
Driver Section
Preparation for Operation
,_,____
i
i
Motor Section
I
.---_______
-.-9
at
*
_-<-
:Li.__________
Mo!o_ca” ________________.,___.____
____________._____
---.--~
~
Note : The items shown by the dotted lines should be prepared by t h e customer.
Figure 3.3 External Connection Outline Diagram
(2) Connection between the Motor and the Driver
1I
TP,
TP~/VIN)
o/ouT)
\
First-o&er delay filter / additional C and
First-order delay filter I jumper s e n w
I
Notch Filter Board Layout
Phase (Des.)
-90
Gain (dû)
-20
-30
Frequency (Hz)
Notch Filter Board
Notch frequency : 100Hz
Q-2.0
~i~~~
3.2 Mechanical Resonance Filter (Notch Type) Adjustment (Optional)
Figure 3.4
9
Connection between the Motor and the D r i v e r
10
r
... .
E%
E
!
..
.L
,
.
.
__l..
...
i
.
I
U
- /UD-
r
3. Preparation for Operation
3. Preparation for Operation
( 5 ) List of Interface
Table 3.4 List of Output Interface (!LE!)
-
--
a) Input
Table 3.3 List of Input Interface
1 Ei.m.1
Nsme
1 Pin
No. 1
Meaning
I
Details
27 (28)
1
E
(See Note 2.)
POSW
o
:See Note l.)
11(12)
SIGN +
SIGN-
Rotating direction
command
20
19
I 21 (22) 1 Integral capacitor reset
IRST
I
I
~
C
T
/
P25(26)
~
m
m
m
37 (38)
35 (36)
33 (34)
Gain selection
39 (40)
CPU reset
I- I i I
Position command pulse
command input
Torque command input
AGND
-
...1 The integral capacitor in
Signal for detecting the original positions obtained by equally
dividing 1 revolution of the motor (100 for the A series and 60
for the B series), and changes kom H to L during CW rotation
and from L to H durinel CCW rotation.
3VL
I The motor is set to the
Set to H during overload, it simultaneously reduces motor
current automatidly to 113.
'ote : (
~~
)
indic
-
s GND signal output.
(Note 31
Toque Limit
Torque feed forward
31(32)
PULS-
Deviation counter overflow
or overspeed
hte~al/Proportional
action selection
TLIM/TFF
RST
-
Deviation counter overf!ow signal is output only in the
position control mode. and this signal is set to L when the
deviation counter value exceeds 32767.
The overspeed signal is set to L when feedback pulse output
frequency becomes greater than about 3MHz.
It is set to L if the nuniber of motor revolutions exceeds f 7 . 5
V in the position contra81 or velocity control mode.
I+
I-
together with P
The motor rotat
with the same L
(When viewed f--..
1 signai is set to L to sei
1 23(24) 1 Servo ON
1
41 (42)
R
Details
This signal is set Lo L when the deviation counter value
becomes less than the E'OSW switch set-value.
Positioning completion
signal
Analog input GND
I
Signal io select the variable DC gain range
(See Note 3.)
Driver position command pulse signal
Set to the maximum number of revolutions a t i l O V input.
CW direction/+lOV, CCW direction/-l0V. #50 pin: GND.
For torque command f 8 V
LLI
I
L
L
I
22
Note :* : The product of this GAJN value and the
ranable resistor position (0.5 to 5.5)
becomes the total gain.
Velocity / torque input analog GND
Note : ( ) indicates VCCsignal input's terminal.
(Notel) : FNO to 3 and POSW O, 1 are logically wired in the "OR" configuration with the rotary switch and jumper pin
(JP1/ GAIN H)
When using external controller, set this rotary switch to the "O" position and GAIN H to open.
b) Output
1I
Signal Name P i n No.
A+/U+
13
l4
A-/UB+/D+
29
!BByC30
15 (16)
VELMON
Note : (
17
Meaning
Position feedback pulse
signal
Servo ready
monitoring
j.
bv the iumDer on the board.
.
The motor is ready to operate with this signal set t o L.
This signal is set to the H level about 3 seconds after driver
power-ON.
Signal for monitoring the number of motor revolutions to
output positive voltage for CW rotation and negative voltage
fot CCW rotation. Velocity detection sensitivity is as shown on
the following table. (See Note 3.)
Velocity detection sensitivity is not guaranteed for the number
of motor revolutions in the range exceeding t7.5V.
1
(Note 4ì
Model
Velocity Detection Sensitivity (VI tps)
DMlOl5B to DM1060B
DM1050A t o DM1200A
5 / 2.0
511.0
Velocity Detection Limit (rps)
indicates GND signal output.
14
13
.
.
-
. .
. ~.
.
.
~.
.. .
3. Preparation for Operation
3.
3.4 Installation
Preparation for Operation
(2) Driver Section Mounting
When the product is delivered, fist check the product type and Model No. a s well a s for the
presence or absence of accessories and for the exact combination of the motor and the driver.
(i) Motor-section Mounting
The motor-section can be mounted either vertically or horizontally. However, incorrect
mounting and unsuitable mounting location may shorten the motor service life and cause
trouble. Therefore, always observe the following.
a) Installation Location
The motor section is designed for indoor use. Therefore, the installation location must be
such that :
There are no corrosive and explosive gases.
Ambient temperature is between O and 45°C
Dust concentration is low, with adequate air ventilation and low humidity.
Note : The DYNASERV is not drip proof or oil proof, so it should be covered by a suitable
drip proof and oil proof cover.
The standard driver is designed for rack mounting.
a) Installation Location
" W h e n there is a heat generation source near the installation location, ensure that
temperature does not exceed 50°C in the approximately of' the driver by providing an
appropriate heat shield or cover, etc.
When there is a vibration generating source near to the driver then mount the driver on
the rack with appropriate vibration insulators.
fl Further the installation must be at a location when the humidity is low, and when the
surrounding environment is free from high temperature!, dust, metal powders and
corrosive gases.
b) Mounting Procedure
Normally, the driver is rack mounted (L-shaped angle brackets) with its driver panel
facing forward and its top and bottom surfaces horizontal. However, it may be mounted
with its driver panel facing upward. Always avoid mounting i t with its panel surface
facing sideways or upside down. (See the figure&) below.)
Mount the driver using 4-screw holes a t the top and bottom of the driver panel.
b) Mechanical Coupling
When coupling a load with the motor rotor section, make sure there is a clearance of
more than í m m between the motor upper surface and the load.
ore than
Secure the motor rotor and stator by tightening the setscrew with torques of less than
the following values as given below.
c((
Rotor tightening torque
A series : 210kg.cm (Max.)
series : IlOkg~cm(Max.)
F I m m or
Stator tightening torque
'
n
'i
Motor base levelness deviation must be maintained less than O.Olmm.
B
25mm
more
I
Motor
1
Rack Mounting
(L-shaped angie
(a) Correct
Note : When tightening the screws. always apply LOCTITE 601 or equivalent ta these screws to lock them.
Installation
(b) Incorrect Installation
Figure 3.8 Driver Section Mounting
Figure 3.7 Tightening Torque
15
brackets)
IM
IM 4301-E
16
3. Preparation
for Operation
4.
OPERATION CAUTIONS
4.
3.5 Wiring Cables
(i) Cable Sizes and Rated Currents
Operation Cautions
4.1 Input and Output Signal Cautions
(i) Position Command Pulse Input Signal (PULSE+)
This is a drive position command pulse signal. The pulse signd uses positive switching logic
with a minimum pulse width of 1501-1s.
(2) Motor Rotating Direction Command input Signal (SIGN+)
A signal indicating the motor rotation. The motor rotates i n the CW direction with this
signal set to H and CCW direction with this signal set to L. Timing of this signal with respect
of the positioning command pulse signal at the output is as shown below.
4
Position command
Pulse signal / PULS
311s Min.
cable
4 4
p 3 w c Min.
(3) Velocity Command Input (VIN)
An analog input signal is used as the motor rotating velocity command value. The maximum
velocity in the CW direction at +6V, and the maximum velocitj in the CCW direction at -6V.
(DR Std' Series) (In the -6V to +6V, input range, input impedance is 100kQ.l
_________ -_--- oower SUPDIV
JwLI1_
Note : The p i h e should be set to active H,
This means that current does not flow
through the driver photo-coupler when the
pulse is not output.
Rotating direction
Command signal, s1Gd-L
respectively
5. Cable size is obtained under the condition tbat ambient temperature is 40°C and the rated
current flows through 3 bundled leadwires.
6. HnT : Heat resistant polyvtnyl chloride insulated wire maintains insulation resistance up t0
..
.
of 7 5 T
(TIAC
More than 150ns
Il
I
Shorted in the position mode.
be shorted on the dnver side)
/(May
(4) Velocity Monitoring Output (VELMON)
Motor analog velocity monitoring output
Output voltage : At maximum velocity +6V (CW
At maximum velocity -6V (CCW) (output impedance is Ika.)
AGND
Used with IOOkQ terminated
(5) A I B Phase, UP I DOWN Pulse Output Signals (A i U k , B I D k )
Pulse signals to indicate the motor position. The following 2 pulse output status can be
selected by jumpers on the controller board.
Figure 3.9 Wiring Cables
(2) Wiring Cautions
Use the specified multi-core twisted pair cables with collective shielding for the
interface and the encoder cables. Ensure proper end shield connections.
IIUse thick conductors as grounding cables as much as possible. Ground the DYNASERV
through a resistance of less than 1000
PSince high voltage, large current flows through the motor and the AC power cables,
ensure proper wiring connections.
17
IM WOI-E
IM A301-E
18
4. Operation
Cautions
5. Control Mode and
a) A I B Phase Output Pulse
The following pulse signal is output with the jumper
shorted.
5.1
CW Direction (clockwise)
LA
U
Position Control Mode Adjustment
In the position control mode, motor positioning control is performed according to the
command position sent from the higher-level controller. Two control methods are available in
the velocity control mode: the I-PD type control system is selected with the CN1 connector
<IACT/PACT> signal set to H, and the P type control system, with the same signal set to L.
Usually, the I-PD type control system is selected in the positioning mode of operation.
750kHZ M S .
750kHZ Mm.
5. CONTROL MODE AND ADJlJlSTMENT
I
<UD/AB> on the controller board
1 ccw Direction (Counterclockwise) 1
A-phase pulse
Adjustment
90"
B-phase pulse
(i) I-PD Type Position Control
UP/DOWNOutput Pulse
The following pulse signal is output with the jumper CUD /AB> on the controller board
opened.
I CCW Direction (counterclockwise) 1
I
CW Direction (clockwise)
This method uses position integral feedback and is suitable for highly accurate positioning.
A stable control characteristic is also achieved even under load variation. In this mode, the
adjustment of <fc switch>, <I. LIM switch> and <DC gain adjustment control> becomes
necessary.
a) <fc Switch>
The 1 to 16% position control system band is selected from a scale of O to F. However, in
this case CN1 connectors FN O to FN 3 must all be set t o H.
UP-pulse signal
!
b) <I.L.IM Switch>
This prevents the wind-up phenomenon by limiting the output of the digital integrator
during software servo computation. The larger the switch No., the larger the limited value.
The smaller the limited value, the smaller the wind-up and the shorter the setting time.
However, if the limited value becomes too small, the mostor output torque is also limited.
Therefore, it can be said that it is better to make the switch value large within the no
wind-up range. The fine adjustment is performed during the acceleration / deceleration
operation.
DOWN-pulse signal
-I
ci-
4.2 Power ON/OFF
Kindly pay attention to the following when the power is turned ON.
When turning ON the main and control circuit power supplies, t u r n them ON
simultaneously or turn ON the control circuit power first.
-I
When turning them OFF, turn them OFF simultaneously (including after instantaneous
power failure), or turn OFF the main circuit power first.
Inrush current in both the main and conti.o1 power circuits is about 35A(ZOOVAC Source) peak
and ZOA(100VAC Source) peak.
The motor is set to the servo status
I
100-200V AC
!
about 200ms after SRVON is set to L.
When the main power circuit is active,
RDY =H indicates driver trouble.
Therefore, use a sequence circuit to turn
OFF the main power circuit at RDY =H.
However, after the control and main
circuit power supplies are turned ON,
the RDY = H condition is maintained for
up to 3 seconds. Therefore, hold the
power-ON signal for more t h a n 3
seconds.
19
(Control circuit
power supply)
-
I
!
I
I
I
!
- i: 3 secondsMax.
I
c)
<DC Gain Adjustment Control>
The combination of driver CN1 connector GAIN H to L signals
results in an adjustment range of from 0.5 to 120 times. The DC
gain should be as large as possible. When there is a change in
inertia adjust the gain so that it becomes optimum a t the maximum
load.
(2) P Type Position Control
Positioning accuracy is not high because proportional control. is used
for positioning feedback. The velocity controls which can be set for
simultaneous selection are P and I types, and they can be set with a
jumper.
With the P type velocity control (P-Ptype), a torque output which is
proportional to the positioning error is obtained, and compliance control
is possible. In this control mode, only <fc switch> and <DC gain
control> are to be adjusted.
With the I type velocity control, a high tact positioning can be achieved. in this control
mode, the amount of velocity feed forward is to be adjusted with ajumper in addition to <fc
switch>, <DC gain control> and <AC gain control>.
20
5. Control Mode and Adjustment
I
Control Mode and Adjustmeni
(3) Position Control System Adjustment Proceduire (See t h e Foüowing Figure.)
(4) Procedure for Adjustment without Measuring Instruments
The position control system can be adjusted in the test mode. Turning ON the test switch
a t the front of the driver generates a 2.5% square-wave position command signal inside the
driver to output the motor position to the POSN signal terminals. At this time, ensure that the
motor exhibits reciprocal action at very small rotating angles.
The preceding section demonstrates the procedure for performing adjustments while
monitoring the waveform ; this section demonstrates an adjustment procedure that does not use
any measuring instruments. These adjustment methods are v:ilicl only in the case of the position
controi mode (I-PD type, the setting at the time of shipping).
1) Calculate or otherwise verify the load inertia. In order to make use of this adjustment
method, the load inertia must be known accurately. AL t h i s time, calculate the load
multiple (K) by dividing the load inertia (JL : kgm’ units) by the motor (DYNASERV)
rotor inertia (Jd.
2) Set the <TEST> switch on the driver front panel to [ON].
3) Take the computed load multiple and refer to the taliles of adjustment settings for the
individual DYNASERV models (see pages 22 through 23). For example, suppose that K is
[15] for a DM1200A ; thus the “5” range applies for this case. Next, fallow this row to the
right for the setting values.
4) First, look at the value in <DC gain> “Column I”. I3ecause the value is [251, turn the
<DC gain> control to [25].
When the value for either A or B series is within r.ange I or 2 (DC gain t o be set is
5 or less), change the DC gain switching signal to <H> before carrying out the
setting.
5) Similarly, take the “Column 1” values for <fc> and <LL?/I J> in the same row, and set
their respective controls to those values.
6) When the above settings have been completed, set the <TEST> switch to [OFF] to
complete the adjustments.
0
r,
5.
The adjustment procedure for I-PI)type position
control in the test mode is as follows.
Step 1:Connect an oscilloscope to the <POSN> signal AC
CIC
terminals.
Step 2 : Set the CN1 connector <SERVO> signal to L. At
this time, set the TEST switch to <OFF>.
Step 3 : Set the <TEST switch> at the front of the driver
AGND
Oscilloscope
to ON.
Step 4 : Adjust the <fc switch>. Its variable range is from
1 to 16Hz and it should be set to about 1OHz
(scale graduation : 9) under normal load conditions.
Set the <I. LIM switch> to a large value within
the range where there is no hunting.
-. GAIN H to L signal so
Select the
that they match the load condition.
Fine adjustment is done by the <DC gain adjustment control>.
Perform the above adjustments such that the POSN signal becomes a square wave.
Step 5 : Set the <TEST switch> at the front of the driver to OFF.
Step 6 : Set the CN1 connector <SERVO> signal t o H.
.s;
Note :The
GAIN value for signal selection shown below is multiplied by the DC GAIN level
value to obtain the total gain.
DC GAIN
1
.
.
Waveform before Ad+itment
@ The adjustment procedure for P-Itype position control in
t h e test mode is a s follows.
;
DC GAIN
- ; n C
Set the an
CN1
oscilloscope
connectorto<SERVO>
the <POSN>
signal
signal
to terminals.
L. At this
Step 21: Connect
\:
7,
Table 5.1 (a) Setting of the DYNASERV Controls ffor A Series)
..._...’;,DCGAIN
:AC GAIN
fc (1 io 16Hz) i _‘’
time, set the TEST switch to <OFF>.
Step 3 :Set the <TEST switch> at the front of the driver to ON.
Step 4 : Adjust the <fc switch>. I& variable range is from 1 to
l6Hz and i t should be set around the center position
under normal load conditions.
Set the <AC gain control> to a large value within the
range in which there is no hunting. Fine adjustment is
done by the <DC gain control>.
Perform the above adjustments such that the POSN signal
becomes a square wave.
Step 5 : Set the <TEST switch> at the front of the driver to OFF.
Step 6 : Set the CN1 connector <SERVO> signal to H.
21
L.
..
..
-...
.
...
I....
Waveform before Adjustment
Optimum Waveform
22
5. Control Mode and Adjustment
5. Control Mode and Adjustment
(3) Adjustment of Velocity Control System
Adjustment of velocity control system can be carried out in the test mode.
By turning the test switch on the front of the drivor to ON, applies a 2.5Hz square
waveform signal to the speed input in the driver, and the motor starts moving back and forth
movements, repeatedly, at a small rotating angle. Under this condition, observe the <VEL
signal> at the front panel on an oscilloscope, and adjust <DC gain> and <AC gain> so that
<VEL signal> becomes an optimum waveform as shown in the figure below.
AC GAIN
.. ....
DC GAIN
5.2 Velocity Control Mode Adjustment
VEL
POSN
AGND
-
'
AC GAIN
. ..-..,
...
.
.
...
Waveform before Aijiisirnent
Oscilloscope
In the velocity control mode, the motor rotating angle is controlled so as to correspond to
the velocity command voltage (-1OV to +low from the higher-level controller. The two control
methods can be selected in the velociw control mode.
The following table shows the relationship between velocity command voltage and motor
velocity.
-o
Model
DM1015B to DM1060B
DR1050A to DM1200A
I
\
I
I
(i) PI Type Velocity Control
The use of integral / proportional action in velocity control achieves smooth, disturbanceresistant control. This is the same control mode used in the conventional DC/AC servo motor
control. In this control mode, only the two <DC gain> and <AC gain> adjustment controls
are adjusted.
a) <DC Gain>
The combination of the driver CN1 connector GAIN O to 2 signals results i n an adjustment
range of from 0.5 to 120 times.
b) <AC Gain>
Velocity loop band damping is adjusted.
Figure 5.1 Adjustment in the Speed Cantrol System
5.3 Torque Control Mode Adjustment
In the torque control mode, current flows through the motor corresponding to the current
command voltage 1-8V to +8V) from the higher-level controller. Motor output torque depends
on the current. Therefore, torque is O at OV of command voltage, and the maximum torque is
produced at 8V.
Note : When desirous of using the torque control mode, carefully plan and design the velocity
& position control loops and a proper interlocking system such that, the final control
system meets the exact specifications of the application.
(2) P Type Velocity Control
Since velocity control is effective only in proportional action, response is fast but is strongly
influenced by disturbances in the controlled motor. In this control mode, only the <DC gain7
variable resistor at the front of the driver is adjusted. While in this velocity mode, the test
switch becomes invalid.
23
24
6.
Maintenance and Inspection / 7. Troubleshooting and Measures
7. Troubleshooting and Measures
6. MAINTENANCE AND INSPECTIOIN
Table 7.1 Motor Troubleshooting and Measures (Z2)
Trouble
6.1
Motor Section
Inspected Item
The motor
overheats.
Operate the motor
under no load.
overloaded.
I
+Incorrect mounting
Abnormal
round is
oroduced.
There is no need of daily maintenance for the Driver part. However, clean the Driver part
periodically to prevent it from poor insulation caused by accumulated dust.
I
Loosen set screws.
.
I
_I.
e
.
Checx
cor
souna
*Bearing trouble
+Mounting base
vihration
Page for Reference
temperature
Lower the ambient
to below
--
more than 45OC
+The motor is
Driver Section
M:easures
temperature
ambientto see is
Check
if
+Ambient temperature is
Only simple daily checks need be carried out on the Motor section. Check for noise or
excessive vibration which is not normal. Never disassemble the Motor section. If the condition
of the Motor section is not normal after 20,000 hours of use or after five years from the
installation, replace the Motor section together with the Driver section. This time duration may
change depending on the environmental and operating conditions where the Motor is used.
6.2
Estimated Cause
I
When starting the motor,
lighten thic load, or
replace the motor with a
larger output motor.
--
I ---
Tighten the swews.
I
I
I
(Contact u5.)
mountinz base.
Reinforce l.he mounting
1 U the combination is
~~
7. TROUBLESHOOTING AND MEASURES
7.1
4bnormally
imall motor
nrque
Motor Trouble and Measures
Whenever any abnormal condition occurs while operating the motor, check the LED display
on the front panel of the driver. Take appropnate countermeasures as shown below if the cause
of the abnormal condition is determinable by the indication of the LED display.
When the motor does not function normally, even after the following measures have been
taken, immediately cease operation and contact the Yokogawa Precision Corp. or it's authorized
agent.
)Incorrect motor /driver
combination
~
i
Botor runs out
f control.
ne motor
iot servo
ocked
Estimated Cause
Inspected Item
+No AC power is fed
Winng inspection
+Under over load
The motor does
not start.
Motor rotation
is
Set to L
+The servo ON (SRVON) Inspection
terminal IS set to H
+The CPU reset (RST)
Inspection
terminal is set to L
+The integral capacitor
reset (IRST) terminal is Inspection
set to L.
+fc, I. LIM, DC gain 1s
Incpection
small.
I
Operate the motor
under no load.
Inspect wiring.
+Imperfect
Check the
connection Of each
phase Of A, B.
and GND.
iinnrhinitinn
i.
Page 12
Pages 21 to 24
+Incorrect extemal
wiring
+The motor and driver
osition is
islocated.
Set to H
Set io H
lighten the load or
replace the motor with a
large output motor.
I
Lichten thim
Inad
Inspection
Check t h e
)Inappropriate jumper
setting
Pages 13, 14
Pages 21 to 24
U the combination is
setting.
Pages 5 to 9
)imperfect connection
Pages 10, 11
power
rho*& t h o
&Motor is overloaded.
bfc. I. LiM, DC gain is
small.
Table 7.1 Motor Troubleshooting and Measures (11-2)
Trouble
bincorrect motorldnver
combination
Re-wire correctly by
refemng to the
connection diagram.
Pages 10, 11
Re-wire correctly by
referring to the
connection diagram.
Pages 10, 11
bincorrect AíB-phase and
UID-pulse jumper,
selection
To be inspected.
Command pulse rate
and width are not as
specified.
Check the command pulse width.
,Feedback pulse rate
and receive circuit
response speed are not
as specified.
Check the feedback pulse rate (31vIHr Max.)
and receive circuit response speed,
)Both ends of the
feedback pulse
transmission cable
shield are not
connected to the earth.
To be inspected. If so, connect the driver to
AGND and the controller to SG.
-
-
--_
Pages 5 to 9
Pages 19, 20
Pages 19, 20
--
if the combination is
Check the
Iincorrect, then return the
~~-
I
L.
on the nameplate.
Page 2
~~~z~~
~
25
26
7. Troubleshooting and Measures
7. Troubleshooting and Measures
7.3 Procedure for Error Correction
A seven segment LED is mounted on the front panel of the driver to display the normal/
abnormal status of the motor and driver. Display details are as shown in the following tables.
-
.)
Encoder Error
v
Encoder error
1-1
1-1.
1-1
1-1
I
I
i
Normai status
No detail display
Speed over
No detail display
PAM
Indiscnminate
1
a=m
I
detail
,-4, ,
detected)
0008:~r~or
induced due t o mechanical
e c c e n t r x i t y of motor’s internal
error)
‘Reparation requued
See pages 28 to 30
d&Ohe;
I
, ! C t 0 7
Reparahon required
NO
See pages 28 to 30
Power on again
~
Within
specification
ranges
See pages 28 to 30
-r
,
I
,
$.
Correction
I
Consult Yokogawa
Precision Corp.
Release reset
No detail display
-
encoder cable
See pages 28 to 30
1 - 1
J’
Reparation required
1
or
Reparation required
See pages 28 to 30
2)
Over Speed
e
between models of
motor and driver?
NO,
__
,
Correction
Consult Yokogawa
Precision Corp.
27
28
7. Troubleshooting and Measures
-5) Amplifier Error
Over Count
9
7
0 2 q
Already tuned?
Command input.
O-={
l
YES
I.
motor and driver?
Correction
Excessive
(6) Over Load
Consult Yokogawa
Precision Corp.
(
4) Abnormal Main Power Supply
c )
O-?+
I
Motor’s rotor, locked?
( Z 3
Abnormal main power Supply
Over load
LI
Correction
Correction
Make duty low,
and reduce the load
Without specification
Power voltage,
L-J
Within specificatio
iranges
Correction
Correction
Precision Corp.
30
29
u
N
m
Y
-
5
,_
..
,~.
, .I__
-1.1
ITS12
I
q
.
.
m
d
-
U
P
C
-
T. LIM / TFF
(CN1-31)
(CN1-49)
[TORQ]
-
Torque restriction command TRQ-LIM (*eV) / Special order
Torque command TRQ (18v)
!
<Mechanical
!
?
i
/i"
.-Jm
g
a
t
B.4 Manual: BE-A/B Type Dynamic Brake
B.4 Manual: BE-A/B Type Dynamic Brake
Manual
Instruction Manual
113
Introduction
Thank you for purchasing our DYNASERV-dedicated dynamic brake.
This generation type brake was developed for DYNASERV DD motors and
is of simple construction, making it easy to assemble into industrial machinery such as robots with built-in DYNASERV and hence,
suitable for a wide range of applications.
This instruction manual describes those items that are considered
to b e necessary when using this brake so that its functions and
usage cautions are fully understood prior to commencing operation.
Cautions
Copying of part or all of the contents of this manual is
strictly prohibited.
The contents of this manual may be subject to change without
notice.
This manual is prepared carefully, but if any mistakes and/or
omissions are found, please contact (>UI- sales or service representative immediately.
Any damage or indirect damage due to our unintentional mistakes
as a result of operation in accordance with this instruction
manual may not our responsibility.
1
Contents
Outline ..................................................
Operational Cautions .....................................
Specifications ...........................................
Model No. ................................................
Product Configuration ....................................
6. Dimensional Outline Drawing and Mounting Diagram .........
7. Interface ................................................
8. Wiring ...................................................
9.
Circuit Configuration and Operation ......................
(i) Circuit configuration ................................
(2) Operation ............................................
(3) Interface circuit configuration ......................
(4) Signal and operation status ..........................
10. Operation Procedure ......................................
(1) Preparation ..........................................
(2) Connection ...........................................
(3) Operation procedure ..................................
11. Trouble and Measures .....................................
1.
2.
3.
4.
5.
2
1.
3
3
5
5
6
7
8
10
12
12
12
13
Both velocity change and capacitor versions of this brake
are available. The former is suitable for either high or
low velocity applications while the latter is for use in the
14
15
15
15
15
16
Outline
This negative action type electric pow*er generation brake was
developed especially for DYNASERV and has the following features.
Simple construction . . . No mechanical devices are required
in the motor section, and efficient torque control is
achieved simply by connecting this brake between the motor
and driver sections.
Power failure compensation . . . Even during power failure,
the same control torque as that at power-ON is available,
through the use of a built-in power failure compensator.
Both velocity change and capacitor types are available. . . .
high-velocity area, making the model range suitable for a
wide range of applications.
Maintenance free
2.
Operational Cautions
( i ) Because the brake was designed especially for use with
DYNASERV, it may not display its specified performance when
used with other motors.
(2) When the brake has been activated, do not attempt to rotate
the stopped motor by force, as doing s o may overheat the
internal resistor.
(3) When coupling this brake to a DYNASERV, do not mistake the
connection of the A, B and C phases and GND, especially in
the motor and driver sections, a s doing so may stop
DYNASERV from operating normally.
( 4 ) When this brake is operated repeatedly, operate it at minimum intervals of 1 minute, otherwlse the internal resistor
may overheat.
(5) Both 100 V AC and 200 V AC power supply voltages are available. Always check to make sure that the correct one is
being used.
3
3.
(6) When installing the brake board, separate it from the case
by more than 10 mm or keep it away from other boards more
than 90 mm when the other board is laid on top of the parts
i n s t a l l a t i o n s i d e of the brake board. (See the figure
below.) Also, if necessary, install a shielded plate as
shown in the following figure.
Specifications
Parameter
Structure
,
Printed board type
Operating Humidity
Storage Temperature
["Cl
Storage Humidity
[%]
Atmosphere
Power source
Power consumption
Shielded p l a t e
--
3 . 1 Common Item and Enviromental
--20-85
20-90RH
(Non condensiiig)
100/200VACt10%-15% 50/ljOHz
[Wl
10 (Max.)
I
Model
Applied
DYNASERV
Model
Load cond.
(J, X30)
[kg*m'l
Speed cond.
( Max.) [rps]
Briiking angle
-
Speed changing Capacitor
tyw
BE1075B
DM1075B
O. 372
O. 651
O. 465
o. 744
o. 589
O. 806
O. 713
1.023
O. 837
BE1050A
DM1050A
DR1050A
2.976
5.580
BE1100A
DM1100A
DR1100A
.
3.689
6.200
BE1150A
Dhí115OA
DR1150A
4.402
7.130
1.2
BE1200A
DM1200A
5.171
1.2
BElO15B
BE1030B
1
BE1045B
-i-
\
BE1060B
o
I\
DMlO15B
DR1015B
DM1030B
DR1030B
DM1045B
DR1045B
DM1060B
DR1 O 6 OB
~~
[' ] (Typical)
2.4
I1
2.4
I1
2.4
I1
2.4
II
type
389
- 795
279
- 541
247
396
805
287
551
216
369
258
430
231
385
256
260
178
180
- 418
2.4
1.2
i. a
1.2
J
I
11
BËl300A
DR1300A
10.540
BE1400A
DR1400A
12.400
1. o
o. 8
BE1070E
DR1070E
2.635
2.4
711
124
4.340
5.270
5.735
1.2
1.2
1.2
145
136
152
145
(Note) J, : Rotor i n e r t i a of DYNASERV
4
5
4.
Model No.
Product Model No. has the following meaning.
TTI L
4
BECICICIOO-CIO
1 : Power supply v o l t a g e 100 V AC
2 : Power s u p p l y v o l t a g e 200
v : V e l o c i t y changing type
‘-c: C a p a c i t o r type
V AC
Mocor s e r l e s name ( A l p h a b e t )
4 d i g i t s correspondlng t o motor t y p e
6.
I
I
Dimensional Outline Drawing and Mounting Diagram (Unit: mm)
Example: BE1200A-V2
Electronic brake
Corresoondinc to the
1200 motor type
A Series
Velocity changing type
Power supply voltage:
200 V AC
E l e c t r o n i c brake
Figure 6-1
Dimensional Outline Drawing
of Dynamic Brake
203.5
2
Mainframe
Standard
accessories
-
8 ‘ ty
Name
6.5
1
I
1
Connector
1
Type No. 5051-04 (Made by MOLEX)
Terminals
4
Type No.
II
TI
Parts installed
surface
Land
diameter
[email protected] a
F i g u r e 6-2 Mounting Diagram
6
7
4-
-\
----
7.
Interface
IL
I
5
VCD
Driver
C-phase
6
vBD
Driver
B-phase
7
vnD
A-phase
Driver
a
FG
Frame
aroundina
VCC
CN3
I
io
11
I
AC
I A C input
AC
A C input
I
BRON
m a
Figure 7-1
User
unit
Interface Connection Diagram
8
9
= t
5 v t o t 12
v
8.
Wiring
Notes :
Cables used for wiring related to the brake in the
above wiring diagram should be as follows.
Same specifications as those of the power cable from
the motor: Current capacity :!O A ( A Series), o r 15 A
( B series)
Cable size: H I V 2.0 mmz o r more,
Length
: less than 30 m ((B + 0 )
Same as in @
Current capacity: More than 1.00 mA DC
Twisted pair collectively shielded wire (core cross
section: More than 0.2 m m z , zinc plated, twisted
soft copper wire) Length: Less than 30 rn
Current capacity: More than 1.A AC
o
o
o
User unit
I
s,
3
I
To avoid miss operation by electrical noise,
wiring should take care of as follows
(1) To insert serge current absorb circuit, when
used solenoid, relay, and other magnetic switch
on line or closed.
(2) To insert noise filter on power souce line and
input signal line, when existing high frequency
noise generated souce on line or closed.
P
I
Figure 8-1 Wiring Diagram
10
11
9. Circuit Configuration and Operation
(1) Circuit configuration
Capacitor type
This is effective in the high-velocity region. The effect of motor coil inductance becomes large at high
velocity, and therefore it is restricted by a capacitor
which converts rotating energy to thermal energy.
Operation is the same as that of' .the velocity changing
type, but no short mode is available.
E
l
Driver
Iraking
II
I
, 'f
:oraue
J
U
Short mode
m
Braking t o r q u e i n
c a p a c i t o r mode
unit
--_---
Figure 9-1 Circuit Configuration Block Diagram
Note: In the capacitor type circuit configuration
There is no "Relay-2". but the motor output is directly
connected to the capacitor circuit from "Relay-1".
(2) Operation
Velocity changing type
Both high and low-velocity types are effective. Greater
braking torque is obtained with the coil shorted than
that of the capacitor type at low velocity. It is possible automatically to select the capacitor mode and the
short mode by detecting the velocity.
If the <BRON> and <m>
signal from the user unit is
set to "H" or the power supply is suspended. "Relay-1'' is
turned OFF and the motor is connected to the capacitor
mode of "Relay-2".
Next, as shown in Figure 9 - 2 , braking torque in the
capacitor mode becomes smaller than in the short mode, so
"Relay-2" is turned OFF to short the motor.
:
-+%LA-
A
Revolution
T r a n s f e r of c a p a c i t o r j s h o r t mode speed
6W c e r i e 4 0 . 2 5 [ r p s j , BEB s e r i e s / 0 . 4 [ r p s ]
Figure 9-2
Generated Torque! Diagram
From the above, when selecting the brake, refer to the following table.
-
12
\
Braking torque
i n s h o r t mode
Motor rotation speed [rps]
I B Series
A Series
Braking
E/
ity changing type
1
1
0.25 to 1.2
O to 0.25
1
I
0.4 to 2.4
O to 0.4
(3) Interface circuit configuration
The CN2 terminal op. this brake consists of a photocoupler
as shown in the following diagram.
Inputting <VCC> activates the cireuit, but the "H" or "L"
input signal in this case has the following meaning.
"H": <VCC> level voltage (VCC =: + 5 V to +12 V)
"L": <GND> level voltage
Note: Other pins @ and @ on the CN2 terminal have the
same circuit configuration.
13
10. Operation Procedure
CNZ
I
IS954
I
Figure 9-3 Interface Circuit Configuration
(4) Signal and operation status
<BRON>
<>
-
<Relay 1>
-
-
L
L
H
H
L
H
OFF
ON
ON
OFF
14
I
I
Connection Brake power
with motor
Short
OFF
ON
Driver
Driver
Capacitor,
short
(1) Preparation
Turn OFF the driver power of DYNASERV in use
Remove the power cable from the motor.
(2) Connection
Connect and wire the brake between the motor and the
DYNASERV driver in accordance with the connection diagram.
(3) Operation procedure
0 Prior to turning ON the DYNASERV power, turn ON the
brake power.
0 Disconnect the connection of the brake CN2 terminal, or
signal to "H".
set the <BRON> and <->
0 Check to see if the brake is activated in this status.
@ Next, connect the brake's CN2 terminal, then set the
<BRON> and <m>
signals to "L".
8 Check to see if the brake is released in this status.
8 Turn ON the DYNASERV's drier power.
Set the <m>
signal to "L" and the mode to the test
mode, then check to see if the brake is activated normally.
If the above operation causes no abnormality, the brake is
operating normally.
15
11. Trouble and Measures
Trouble
The motor does
iot start
Probable cause
Incorrect
connection
C phases and
CND.
Incorrect power
supply wiring
Check the wiring.
Make sure that
the wiring is
correct by
referring t o
the wiring
diagram.
Fuse burnt out
in the brake
Check the fuse.
Replace the
board if the
fuse is burnt
out.
Check the connection of the
motor’s A . B and
C phases and
Repair the
faulty section.
circuit
Motor rotation
is instable.
referring to
the wiring
diagram.
Incorrect
connection
GND.
The brake is
not activated.
Incorrect
signal wiring
Check the wiring.
Make sure that
the wiring is
correct by
referring to
the wiring
diagram.
Note: If it is assumed that the brake is faulty, the board
itself should be replaced. Therefore, do not replace
or repair any parts on the board.
If t h e brake fails o r is damaged in the normal operating status
due to defect attributed to faulty manufacture, within one year
of the date of purchase, it will be repaired free of charge.
16
B.5 Cabinet manual
B.5
123
Cabinet manual
Technische Universiteit
Eindhoven
Centraie Tecbniscbe Dienst
Stafgroep E/E
Documentatie nummer
350
6/ o e
I
1 2 3 / 2 3 /a /
Onderwerp
13\/MVA 3F-Q v
AC7-UAT04~
.
Project
: 3506/001/23/23/01, 16-01-1997
1/1
: 35060012.323
Dok.nr
Bedr.Ond : GTD/EE
Betreft
: Dynaserv Servo-Actuator
Facilitair Be drijf
TUE
GROEP ELEKTRONICA/ ENERGIETECHNIEK
ONDERWERP
:
Dynaserv Actuators
OPDRACHTGEVER : J. J. F.J. Garenfeld
TELEFOON
:
ONTWERP
:
TELEFOON
:
REALISATIE :
2824
B. Viveen
DOCUMENTATIE : B. Viveen
INHOUD
:
Gemeenschappelijke Technische Dienst, tel. 3494, fax. 24592 77.e-mail: [email protected]
-
I24-
l
i
Omschfilvins
Oprnefklngsn
voorzijde
Opdiacht nr
fotol.ged
-~
3:1
set B.Viveeni tel
sohad
sec
dat
23-01-98
!
-3506/001/23/23/01A4 - Documentatie nr__-
Formasti
35060012.32
.
.
Omishrtlvlng
tu3
OrD-ZL
-L
Opmerkingsn
4 r . + r i 4 nar4
IUliJ
voorzijde
1.YG.U
Opdracht nr
schsal 3:l
Formaat1
ge1 B . V i v e e n i 101
___
Pee
____
'dat
,
'23-01-9q
I A4
3506/001/23/23/01
Documentaiie nr
35060012.32
i
X1.2 X1.4
X1.l X1.4
X1.3 X1.4
15 pol. sub D
CN1
)RIVER;
)RIVER2
m
rn
Z
2
o
xE
o
o
mz
N
z
Iu
N
Iu
U
USER UNIT 1
o
z
O
USER UNIT 3
------i
VCC
BRON
VCC
S m N
GND
u
6 pol. DIN
I
u1
I
o
U
6 pol. DIN
I
v1
I
o
"1(IFj
6 pol. DIN
OrnSOh<i,"i"~
I
OVERZICHT-SCHEMA.GED
oDn.rii"l<n
SERVO VERSTERKERS
n""...*,
^.
3
5
9
11
13
15
IJ
EPLAN
H e n g e l d e r 56
P o s t b u s 246
NL-6900 AE Z e v e n a a r
Tel 0 8 3 6 0 - 9 1 7 9 0
E
KLANT
PROJEKTNAAM
TEKENINGNUMMER
OPDRACHTGEVER
: SERVO-SYSTEEM
: GTD E/EE
F a b r i k a n t (firma)
P a d (zonder \EPLAN4\P)
Projektnaam
Fabrikaat
Type
Installatieplaats
Projektleider
Bijzonderheden
:
3506/001/23/2301
: 27.N O V . 1997
V e r v a a r d i g d op
Laatste wijziging :
door :
Hoogste paginanummer : 4
A a n t a l pagiiI E I ' S
: 4
19
0
1
I
I
I
w
r - - - - - - - - - -1
I
r - - - -
I
I O=
I "
10,
I
r - - - - 1
I
z
I
IQ
1
,
;
I
a
P W
>
w
a
NNNN
m
dp-
z
w
w
k-
UI
>-
I
UI
>
O
U-
x
D
3
Ln
Tu
m
LD
m
m
rn
X
P
r
Ti
c-r
ai
ai
O
rr
C
9
m
n
LB
IJJ
C
-rl
L
H
n
O
7c
m
n
m
N
0-l
m
I--
I--
-
I--
N
Tu
m
L
3
rn
h
h
Y
rn
rt
3
O
O
Q
lo
N
-
L
x
rn
rn
W
D
a
- -
m
N
L
-
3
rn
h
m
-rl
-I
rt
O
R
In
3
3
w
C
w.
rn
w
I--
a
rn
0
A
rn
c-'
3
rn
3
R
D
E
!--
lo
7
Y
m
lo
-I
rn
rt
O
7
9
O
3
CT
O
3
ri
77
O
3
n
r
n
It
rn
wyr
C
Z
U
w.
C
rn
O
Z
x
rn
rn
n
m
D
rn
C
c
x
D
c1
!--
m
m
c1
N
N
m
..
In
N
L
rn
U
L
r
D
z
-I
rn
c
X
x
rn
n
s
D
O
H
-i
z
D
D
m
P
Ln
co
co
m
-
O
I--
c
\
c1
I
r
P
5
c1
-
m
N
xN
ll
b
I--
rt
ai
ai
D
O
N
rt
3
O
Y
fi
w
C
3
+
w
w.
lo
O
3
D
O
It
C
ar
3
O
w
n
7
O
It
ffl
a
+
O
C
C
7
ffl
5
O
rt
O
N
m
o3
m
m
rn
r
O
I
I
]
m
z
x
x
r
O
o
ffl
m
N
N
Ln
m
m
O
O
o
I
m
o
N
m
Q
C
O
O
m
11
--
-i
K
D
c1
-i
rn
rn
r
rn
s
rn
z
rn
z
D
rn
r-
O
z
E
53
rn
O
c
O
x
c
x
D
O
-
Z
D
o
m
I
rn
rn
r
-i
(3
r
rn
O
I
N
L
<
O
N
N
c
U
I
U
I
D
r
-
c1
LD
Ln
m
co
N
LD
m
-
71
m
a
D
O
a
O
O
I
a
c
x
x
z
O
n
9
U
n
4
m
co
P
m
x
O
N
N
r
r
D
x
O
n
U
C
I
x
O
I
]
Z
x
I
]
Z
x
rn
n
O
r
x
rn
o
O
r
x
o
x
z
m
n
r
O
x
-
r
r
r
rn
o
H
rn
O
O
P
m
Lo
m
rn
G
I--
-
r
rn
O
E
m
r
r
m
3
P
m
I--
co
m
m
I--
\
!--
I--
n
2;
\
C
\
-i
D
I
x
n
m
r
-
m
O
I
n
E
O
rn
r
-
I
a
rn
Z
o
x
O
r
x
-
LB
m
m
Ti
9
9
D
9
D
n
n
rn
rn
Z
71
o
O
r
rn
Z
72
o
x
z
O
r
o
O
r
- - x
x
x
-OEI-
TOTAAL
BTW 17, 5 %
K O R T I N G FL
KORTING %
FL/eenh
e x c l . BTW
AANTAL
inderdee lkode
c
1VlNVV
ped/6ed
apoyiaapJapuc
W
H
z
3
.
1
c3
W
-I
z
O
m
W
-t
cn
W
a
b
4
u3
N
d
Lo
lx
d
O
H
J
I
2s
N
2s
>
N
N
O
a
LI)
A
al
O
a
UI
Lo
4i
x
\
m
a
Lo\
m
Y
LI)
u
c
C
O
m
E
U
L
O
O
c
-
m
Cu
u3
Lo
m
b
E
a
O
O
J
H
_I
1
O
-
E
W
O
U
E
W
O
W
Y
-
1
O
z
U
z
x
W
x
u
o
J
O
x
-
d
3
a
-
m
3
W
il
a
m
U
N
N
-
rn
3
LL
H
a
O
W
m
a
LL
a
a
IT
a
IT
W
-I
-I
W
i-
Ln
W
m
a
LL
a
a
U
a
Project
: 3506/001/23/23/01, 16-01-1997
1/1
: 35060012.323
Dok.nr
Bedr.Ond : GTD/EE
Betreft : Dynaserv Servo-Actuator
Facilitair Bedrijf
TUE
1 ROOD
2 BLAUW
27 ROOD/BLAUW
28 GRIJS/ROSE
3 ROSE
4 GRIJS
29 ZWART
30 VIOLET
5 GEEL
6 GROEN
31 WIT
32 BRUIN
7 BRUIN
8 WIT
9 ROSE/GEEL
1O ROSE/GROEN
33 ROSE
34 GRIJS
35 GEEL
36 GROEN
11 GRIJS/GEEL
12 GRIJWGROEN
37 ZWART/ROOD
38 ZWART/BLAUW
13 ZWARTNVIT
14 ZWART/BRUIN
15 ROODNVIT
16 ROOD/BRUIN
39 ROOD/GRIJS
40 ROOD/ROSE
41 ZWART/ROSE
42 ZWART/GRIJS
17 BLAUWNVIT
18 BLAUW/BRUIN (afscherming)
43 ZWART/GEEL
44 BLAUW/GRIJS
19 ROSENVIT
20 ROSEIBRUIN
45 ZWART/GEEL
46 ZWART/GROEN
21 GRIJSNVIT
22 GRIJS/BRUIN
47 ROOD/GEEL
48 ROOD/GROEN
23 G E E W I T
24 GEEUBRUIN
49 BUNWIGEEL
50 BLAUW/GROEN
25 GROENNVIT
26 GROEN/BRUIN
Gemeenschappelijke Technische Dienst, tel. 3494, fax. 24592 7 7, e-mail: [email protected]
-132-
,
B. 6 Power sliprings
B.6
133
Power sliprings
- Heavy Duty design for industrialuse
- Long life time
- 2/4/6/12 rings
- ma^ 15 Amps. pm M g
- custom-made versions available
Technical Data:
Dimensions:
No. ofrhgs:
Max. operating
current:
Operating voltage:
I
IJ
I
I /
,
see drawing
24/6/12
15 A (at 50 V DC>
nom.50 V DC
max. 220 V DC*
(the max. value is
dependant on the actual
operating m e n t )
Circuit resistance: 50,l ohm
Tnsuiation resistance
lo6M
at 500 V DC:
Dielectric strength: 1000 V, (60s)
Rotation speed:
max. 250 rpm
Operating temp.:
O to 65°C ')
Protection:
rotor: TP O0
termiais: IP O0
,-.
I
.
If different data is required please use
our specification sheet!
* according to insulation group of "WE"!
'1 others on request
O
..
....
.
I
e
I«,
7-
H5 3x120' ,/
!
Signal sliprings
B. 7 Signal sliprings
B. 7
*
I'
I
i
':
*
135
. -
B.8 Conceptual design
B.8
137
Conceptual design
The RRR-robot conceptual design drawing in this Section was used as a basis for the manufacturing of the various non-standard components by the CTD. Note that some dimensions were
slightly altered during the manufacturing.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement