1234-1236-1238 AC - Os11 - 2009feb17
1234-1236-1238 AC - Os11 - 2009feb17
1234-1236-1238 AC - Os11 - 2009feb17
M O D E L S
12 3 4
12 3 6
& 1238
AC INDUCTION
MOTOR CONTROLLERS
OS 11 with VCL
2009 CURTIS INSTRUMENTS, INC.
DESIGN OF CURTIS PMC 1200 SERIES
CONTROLLERS PROTECTED BY U.S.
PATENT NO. 4626750.
CONTENTS
CONTENTS
1. OVERVIEW ..............................................................................1
2. INSTALLATION AND WIRING.............................................3
Mounting the Controller .....................................................3
High Current Connections and Wiring Guidelines..............6
Low Current Connections and Wiring Guidelines ...............8
Controller Wiring: Basic Conguration ............................12
Switch Input Wiring ..........................................................13
Throttle Wiring .................................................................13
Input/Output Specications...............................................18
3. PROGRAMMABLE PARAMETERS .....................................23
Program Menu ..................................................................24
4a. MONITOR MENU ................................................................64
4b. CONTROLLER INFORMATION MENU ...........................74
5. INITIAL SETUP .....................................................................75
6. TUNING GUIDE ...................................................................80
7. VEHICLE CONTROL LANGUAGE .....................................84
8. DIAGNOSTICS AND TROUBLESHOOTING..................110
9. MAINTENANCE .................................................................120
APPENDIX A
APPENDIX B
APPENDIX C
APPENDIX D
Theory of Operation
Vehicle Design Considerations
Programmer Operation
Specications, 1234/36/38 Controllers
iii
FIGURES / TABLES
FIGURES
FIG.
1:
FIG. 2a:
FIG. 2b:
FIG. 3:
FIG. 4:
FIG. 5:
FIG. 6:
FIG. 7:
FIG. 8:
FIG. 9:
FIG. 10:
FIG. 11:
FIG. 12:
FIG. 13:
FIG. 14:
FIG. 15:
FIG. 16:
FIG. 17:
FIG.
A-1:
FIG. A-2:
FIG.
C-1:
TABLES
TABLE
1:
TABLE
2:
TABLE
3:
TABLE
4:
TABLE
5:
TABLE
iv
1 OVERVIEW
OVERVIEW
Curtis 1234, 1236, and 1238 AC induction motor controllers deliver smooth
power unlike any previous vehicle control system. They provide unprecedented
exibility and power through inclusion of a eld-programmable logic controller
embedded in a state-of-the-art motor controller.
The embedded logic controller runs a fully functional eld-oriented AC
motor control operating system (OS) that can be user-tailored via parameter
modication; see Section 3. The OS also contains logic to execute OEMdeveloped software, called VCL, that can be used to enhance the controller
capabilities beyond the basics; see Section 7.
VCL (Vehicle Control Language) is an innovative software programming
language developed by Curtis. Many electric vehicle functions are uniquely
built into the VCL code, and additional functions can be OEM-controlled using
VCL code. VCL opens new avenues of customization, product differentiation,
and responsiveness to the market.
The CAN bus communications included in the 1234/36/38, as well as
in many other Curtis products, allow these AC induction motor controllers to
be part of an efcient distributed system. Inputs and outputs can be optimally
shared throughout the system, minimizing wiring and creating integrated
functions that often reduce the cost of the system.
Curtis 1234/36/38 controllers are the ideal solution for traction, hoist,
dual drive, and other motor drive and vehicle control needs.
Fig. 1 Curtis 1234 (left), 1236 (middle), and 1238 (right) AC induction motor controllers.
Like all Curtis controllers, the 1234/36/38 offers superior operator control of
motor drive performance. Features include:
High efciency, eld-oriented motor control algorithms
Advanced Pulse Width Modulation technology for efcient use
of battery voltage, low motor harmonics, low torque ripple, and
minimized switching losses
Extremely wide torque/speed range including full regeneration capability
Smooth low speed control, including zero speed
Curtis 1234/36/38 Manual, OS 11
More Features
1 OVERVIEW
Using the 1311 handheld programmer, you can set up the controller to perform all the basic operations. In this manual, we rst show you how to wire
your system and adjust its performance characteristics without the use of VCL.
Then, in Section 7, we show you how to adjust the system using VCL, which
interacts with a second, independent software realm resident in a powerful logic
controller embedded within the 1234/36/38 controller.
Fig. 2a Mounting
dimensions, Curtis 1234
motor controller.
Fig. 2b Mounting
C AU T I O N
B+
B-
Motor phase U.
Motor phase V.
Motor phase W.
Five brass M8 terminals are provided. Lugs should be installed as follows, using
M8 bolts sized to provide proper engagement (see diagram):
Place the lug on top of the brass terminal, followed by a
high-load safety washer with its convex side on top. The
washer should be a SCHNORR 700800, or equivalent.
If two lugs are used on the same terminal, stack them so the
lug carrying the least current is on top.
Tighten the assembly to 9.6 0.9 Nm (85 8 in-lbs).
Note: The terminals may rotate up to 5 in the cover.
These two cables should be run close to each other between the controller
and the battery. Use high quality copper lugs and observe the recommended
torque ratings. For best noise immunity the cables should not run across the
center section of the controller. With multiple high current controllers, use a
star ground from the battery B- terminal.
Motor wiring (U, V, W)
The three phase wires should be close to the same length and bundled together
as they run between the controller and the motor. The cable lengths should be
kept as short as possible. Use high quality copper lugs and observe the recommended torque ratings. For best noise immunity the motor cables should not
run across the center section of the controller. In applications that seek the
lowest possible emissions, a shield can be placed around the bundled motor
cables and connected to the B- terminal at the controller. Typical installations
will readily pass the emissions standards without a shield. Low current signal
wires should not be run next to the motor cables. When necessary they should
cross the motor cables at a right angle to minimize noise coupling.
J1
All four encoder wires should be bundled together as they run between the
motor and controller logic connector. These can often be run with the rest of
the low current wiring harness. The encoder cables should not be run near
the motor cables. In applications where this is necessary, shielded cable should
be used with the ground shield connected to the I/O ground (pin 7) at only
the controller side. In extreme applications, common mode lters (e.g. ferrite
beads) could be used.
CAN bus (Pins 21, 23, 34, 35)
The remaining low current wiring should be run according to standard practices.
Running low current wiring next to the high current wiring should always be
avoided.
Table 2
PIN
NAME
DESCRIPTION
RELATED VCL*
FUNCTIONS
REFERENCES
KSI
Keyswitch input.
Provides logic power for
the controller and power
for the coil drivers.
Setup_BDI
Keyswitch_Voltage
Prop. Driver
Proportional driver.
This is a coil driver with
current control capability
typically used for a
proportional valve on a
hydraulic manifold.
Can also be used as a
digital input.
Automate_PWM
Put_PWM
Sw_13
PWM5
PD_Current
PD_Output
PD_Throttle
VCL_PD_Throttle
Driver 4
Automate_PWM
Put_PWM
Sw_12
PWM4
PWM4_Output
Driver 3
Automate_PWM
Put_PWM
Sw_11
PWM3
PWM3_Output
Driver 2
Automate_PWM
Put_PWM
Sw_10
PWM2
PWM2_Output
Driver 1
Automate_PWM
Put_PWM
Set_Interlock
Clear_Interlock
Sw_9
PWM1
PWM1_Output
Interlock_State
Main_State
I/O Ground
Switch 2
Analog 2
Sw_2
Analog2_Input
Switch 3
Sw_3
10 Switch 4
Sw_4
11 Switch 5
Sw_5
* The related VCL columns are vital when writing VCL code (see Section 7).
VCL functions are used to access the various I/Os; VCL references are
predened names for specic pins.
Curtis 1234/36/38 Manual, OS 11
Table 2
PIN
10
NAME
DESCRIPTION
12 Switch 6
13 Coil Return
14 Switch 16 / DNC
FUNCTIONS
REFERENCES
Sw_6
Sw_16
Setup_Pot
Setup_Pot_Faults
Throttle_Pot
Throttle_Pot_Output
17 Pot2 Wiper
Setup_Pot
Setup_Pot_Faults
Brake_Pot
Brake_Pot_Output
18 Pot Low
19 Digital Out 6
Set_DigOut
Clear_DigOut
Sw_14
DigOut6
Dig6_Output
20 Digital Out 7
Set_DigOut
Clear_DigOut
Sw_15
DigOut7
Dig7_Output
21 CAN Term H
22 Switch 7
23 CANH
24 Switch 1
Analog 1
Sw_1
Analog1_Input
25 +12V Out
Ext_Supply_Current
26 +5V Out
5_Volts_Output
Ext_Supply_Current
27 Pot2 High
Pot_Low_Output
Sw_7
Setup_CAN
Setup_Mailbox
Send_Mailbox
etc.
Yes, this
remains
Brake_Pot
in VCL.
Table 2
PIN
NAME
DESCRIPTION
FUNCTIONS
REFERENCES
28 Serial TX
Setup_Serial
29 Serial RX
Setup_Serial
30 Analog Output
PWM6
Analog_Output
31 Encoder A
Quadrature encoder
input phase A.
Motor_RPM
MotorspeedA
32 Encoder B
Quadrature encoder
input phase B.
Motor_RPM
MotorspeedB
33 Switch 8
Sw_8
34 CAN Term L
35 CANL
Setup_CAN
Setup_Mailbox
Send_Mailbox
etc.
11
12
to check for welded or missing contactor faults and uses the main contactor
coil driver output to remove power from the controller and motor in the event
of various other faults. If the main contactor coil is not wired to Pin 6 of
the 35-pin connector as shown, the controller will not be able to open the
main contactor in serious fault conditions and the system will therefore
not meet EEC safety requirements.
Note that the basic wiring diagram is designed for generic applications
and may not fully meet the requirements of your system. These controllers have
very exible I/O and wiring congurations; you may wish to contact your local
Curtis representative to discuss your particular application.
THROTTLE WIRING
In this manual, the term throttle is used in two senses: as another name for the
drive throttle, and as a generic term covering both the drive throttle and the
brake throttle. Wiring is the same, whether the throttle in question is used for
braking or for acceleration.
Various throttles can be used with the 1234/36/38 controller. They
are characterized as one of ve types in the programming menu of the 1311
programmer.
Type 1:
Type 2:
Type 3:
Type 4:
Type 5:
The two throttle inputs (drive throttle and brake throttle) are programmed
independently.
Curtis 1234/36/38 Manual, OS 11
13
throttles.
Voltage Source
throttles.
+
+
-
Current Source
3-wire Potentiometer
15
throttles.
16
Throttle Type 5
Throttle Type 5 provides a different way of sending the throttle command to
the controller. This throttle type uses VCL to dene the throttle signal that will
be input into the throttle signal chain (see Figure 15, page 92). This throttle
type can be used for either the drive throttle or the brake throttle by using
the VCL variables VCL_Throttle and VCL_Brake. How the VCL program is
written will determine where the throttle signal originates from, making this
a very exible throttle input method. VCL can be written to use the throttle
pot inputs, switch inputs, or CAN communication messages as the source of
the throttle signals. If you have questions regarding this throttle type, contact
the Curtis ofce nearest you.
Setting the Throttle Type to Type 5 also allows the throttle and brake
pot inputs to be redened by a VCL program for uses other than throttle or
brake input. The variable names that VCL can use to interface with these two
inputs are Throttle_Pot_Output (see page 93) and Brake_Pot_Output (see
page 95).
17
digital inputs
low power outputs
high power outputs
analog inputs
analog output
power supply outputs
KSI and coil return inputs
throttle and brake inputs
communications port inputs/outputs
encoder inputs.
Digital inputs
These control lines can be used as digital (on/off ) inputs. Normal on connection
is direct to B+; off is direct to B-. Input will pull low (off ) if no connection
is made. All digital inputs are protected against shorts to B+ or B-.
Nine of these lines (Switches 18, 16) are designed to pull current to keep
switch contacts clean and prevent leakage paths from causing false signals.
The remaining lines are digital inputs associated with driver outputs; note
that they have much higher input impedances. The two digital output lines can
also be read as inputs, and are therefore included in this group.
The lines at pins 24 and 8 can also be used as analog inputs, and are
included in that group as well.
DIGITAL INPUT SPECIFICATIONS
SIGNAL NAME
PIN
Switch 1
Switch 2
Switch 3
Switch 4
Switch 5
Switch 6
Switch 7
Switch 8
Switch 16
Digital Out 6
Digital Out 7
24
8
9
10
11
12
22
33
14
19
20
Digital Out 6
Digital Out 7
Driver 1
Driver 2
Driver 3
Driver 4
Prop Driver
19
20
6
5
4
3
2
LOGIC
THRESHOLDS
INPUT
IMPEDANCE
VOLTAGE
RANGE*
ESD
TOLERANCE
8 kV (air
discharge)
Rising edge=
4.4 V max
Falling edge=
1.5 V min
24-36V models:
about 7.1 k
36-48V models:
about 11.0 k
48-80V models:
about 26.0 k
-10 V to
(MaxV + 10 V)
Rising edge=
29.5 V max
Falling edge=
10.1 V min
Rising edge=
4.4 V max
Falling edge=
1.5 V min
Below 5.5 V=
134 k
Above 5.5 V=
124 k
Below 10 V=
300 k
Above 10 V=
150 k
- 5 V to
(MaxV + 10 V)
- 0.5 V to
(MaxV + 10 V)
* MaxV in this and the following tables is the controllers maximum voltage: 30 V for 24V models;
45 V for 2436V models; 60 V for 3648V models; and 105 V for 4880V models.
18
Two control lines on the 1236/38 are available as low power digital outputs.
These are open collector drivers that can only sink current, not source it, and
are intended to drive LEDs or other low current loads connected to the +5V
or +12V external power supplies; see power supply output group specs. Fault
protection will turn off these outputs if output voltage exceeds about 15 V
when the output is On (low output). Both outputs are protected against shorts
to B+ or B-.
These lines can also be used as digital inputs, and are included in that
group as well.
LOW POWER OUTPUT SPECIFICATIONS
1236/38 *
SIGNAL NAME
PIN
Digital Out 6
Digital Out 7
19
20
ALLOWED
VOLTAGE
OUTPUT
IMPEDANCE
0 to 15 V
PROTECTED
VOLTAGE
ESD
TOLERANCE
- 5 V to
8 kV (air
(MaxV + 10 V) discharge)
* The digital outputs for the 1234 are below, with the high power outputs.
Seven control lines on the 1234 and ve on the 1236/38 can be used as high
power output drivers. One of these, the proportional driver, can be operated in
a current control mode for driving a proportional valve or similar load. Each
output can be independently turned on continuously (low level) or pulse width
modulated to set the average output voltage. These outputs are intended to
drive inductive loads such as contactors and electromagnetic brakes but could
also be used to drive resistive loads if peak current ratings are not exceeded. All
these outputs are protected against shorts to B+ or B-.
These lines can also be used as digital inputs, and are included in that
group as well.
HIGH POWER OUTPUT SPECIFICATIONS
SIGNAL NAME
PIN
Driver 1
Driver 2
Driver 3
Driver 4
Prop Driver
6
5
4
3
2
Digital Out 6 19
Digital Out 7 20
1234 *
PWM
0 to 100%
duty cycle
on/off
PV
CURRENT
n/a
FREQUENCY
OUTPUT
CURRENT
200 Hz 2 A max
3 A max
2 A max
PROTECTED
VOLTAGE
ESD
TOLERANCE
- 0.5 V to
keyswitch
voltage
8 kV (air
discharge)
0 to 2 A 18 kHz
in 607
nominal
steps
n/a
n/a 1 A max
19
Analog inputs
Two control lines can be used as analog inputs. Both inputs are protected
against shorts to B+ or B-.
Typically Analog 2 is used as the input for the motor temperature sensor.
This input provides a constant current appropriate for a thermistor sensor. Some
standard predened motor temperature sensors are supported in software (see
Sensor Type parameter, page 50). Note: The industry standard KTY temperature sensors are silicon temperature sensors with a polarity band; the polarity
band of a KTY sensor must be the end connected to I/O Ground (pin 7).
These lines can also be used as digital inputs, and are included in that
group as well.
ANALOG INPUT SPECIFICATIONS
SIGNAL NAME
PIN
OPERATING
VOLTAGE
INPUT
IMPEDANCE
Analog 1
Analog 2
24
8
0 to 10 V in
1024 steps
24-36V models:
about 7.1 k
36-48V models:
about 11.0 k
48-80V models:
about 26.0 k
PROTECTED
VOLTAGE
ESD
TOLERANCE
- 10 V to
8 kV (air
(MaxV + 10 V) discharge)
Analog output
A single line is available as a low power analog output and is intended to drive
instrumentation such as a battery discharge indicator. This output is generated
from a ltered PWM signal and has about 1% ripple. The 2% settling time
is <25ms for a 05V step and <30 ms for a 010V step. This output line is
protected against shorts to B+ or B-.
ANALOG OUTPUT SPECIFICATIONS
SIGNAL NAME
PIN
Analog Out
30
OUTPUT
VOLTAGE
0 to 10 V
OUTPUT
IMPEDANCE
PROTECTED
VOLTAGE
ESD
TOLERANCE
Source: 100
Sink: 66 k
- 1 V to
(MaxV + 10 V)
8 kV (air
discharge)
Two lines provide auxiliary output power for low power circuits such as electronic throttles, LED indicators, displays, position encoder, and remote I/O
boards. I/O Ground (at pin 7) is the return line for these low power devices.
Both power supply outputs are protected against shorts to B+ or B-.
POWER SUPPLY OUTPUT SPECIFICATIONS
20
SIGNAL NAME
PIN
OUTPUT
VOLTAGE
OUTPUT
CURRENT
PROTECTED
VOLTAGE
ESD
TOLERANCE
+12V Out
+5V Out
I/O Ground
25
26
7
11.5 to 14.5 V
5 V 5%
n/a
200 mA max
(combined total)
500 mA max
- 1 V to
(MaxV + 10 V)
not protected
8 kV (air
discharge)
KSI input provides power for all low power control circuits, power capacitor
precharge (before main contactor turn on), power supply outputs, and high
power output drivers. Battery voltage is sensed on the input for the VCL battery discharge function.
Coil Return should be wired to the positive battery side of the contactors
being driven so that switching noise associated with PWM operation of the
contactors is localized to the contactor wiring only.
It is important to maintain the division between KSI and coil return
in order to ensure reverse polarity protection (vehicle wiring correct, battery
terminals reversed).
KSI AND COIL RETURN INPUT SPECIFICATIONS
SIGNAL NAME
PIN
KSI
Coil Return
13
OPERATING
VOLTAGE
INPUT
CURRENT
PROTECTED
VOLTAGE
ESD
TOLERANCE
1.0 A max *
(MaxV + 10 V)
8 kV (air
discharge)
12 A max **
(KSI - 0.3 V) to
(MaxV + 10 V)
* Additionally must carry the current supplied to the driver loads by the coil return (pin 13).
**On the 1234, the combined current supplied by all seven output drivers should not exceed 10 A.
The two pot inputs are independently programmable to allow use of a voltage
throttle or a 2-wire or 3-wire resistance throttle. Voltage throttles require only
the Pot Wiper input (with I/O Ground for the return line). Resistance throttles
require Pot Wiper and Pot Low (2-wire) or Pot High, Pot Wiper, and Pot Low
(3-wire). All throttle I/O is protected against shorts to B+ or B-.
Alternatively, these two inputs can be used for analog signals other than
the throttle and brake pot inputs. Conguring the inputs for use with other
signals requires VCL programming; see Section 7.
THROTTLE INPUT SPECIFICATIONS
SIGNAL NAME
PIN
18
OPERATING
VOLTAGE
INPUT
IMPEDANCE
0 V (shorted
n/a
to Pot Low)
5 V (open
circuit)
0 to 6.25 V 290 k
(voltage
and 3-wire)
0 to 10 V
20 nom.
S/SINK
CURRENT
7 mA
nominal
(source)
0.76 mA
nominal
(source,
2-wire)
Faults if
above
11 mA
(sink)
PROTECTED
VOLTAGE
ESD
TOLERANCE
- 50 V to
8 kV (air
(MaxV + 10 V) discharge)
-1 V to
(MaxV + 10 V)
21
Communications ports
Separate CAN and serial ports provide complete communications and programming capability for all user available controller information.
The Curtis 1311 handheld programmer plugs into a connector wired to
pins 28 and 29, along with ground (pin 7) and the +12V power supply (pin
25); see wiring diagram, Figure 3. The Curtis Model 840 display can plug into
the same 4-pin connector.
Wiring the CAN Term H and CAN Term L pins together provides a local
CAN termination of 120 , 0.5 W; keep the length of these wires short. CAN
Term H and CAN Term L should never be connected to any external wiring.
COMMUNICATIONS PORT SPECIFICATIONS
SIGNAL NAME
PIN
CANH
CANL
23
35
CAN Term H
CAN Term L
Serial TX
Serial RX
21
34
28
29
SUPPORTED
PROTOCOL/DEVICES
CANopen,
NODES 2.0,
other 11-bit
identier eld
CAN protocols
Curtis 840 Display,
1311 Handheld
Programmer,
1314 PC Programming Station
DATA RATE
PROTECTED
VOLTAGE
ESD
TOLERANCE
Encoder inputs
Two control lines are internally congured to read a quadrature type position
encoder. The encoder is typically powered from the 5V supply (pin 26) or 12V
supply (pin 25), but can be powered from any external supply (from 5 V up
to B+) as long as the logic threshold requirements are met.
ENCODER INPUT SPECIFICATIONS
22
LOGIC
THRESHOLDS
SIGNAL NAME
PIN
Encoder A
Encoder B
31 Rising edge=
32
2.8 V max
Falling edge=
2.2 V min
INPUT
IMPEDANCE
MAX
FREQ.
PROTECTED
VOLTAGE
ESD
TOLERANCE
720
10 kHz - 5 V to
8 kV (air
(internal
(MaxV + 10 V) discharge)
pull-up
to +4V)
3 PROGRAMMABLE PARAMETERS
PROGRAMMABLE PARAMETERS
These controllers have a number of parameters that can be programmed using
a Curtis 1311 handheld programmer or 1314 Programming Station. The programmable parameters allow the vehicles performance to be customized to t the
needs of specic applications. For programmer operation, see Appendix C.
PROGRAMMING MENUS
The programmable parameters are grouped into nested hierarchical menus, as
shown in Table 3.
Motor response tuning
C AU T I O N
We strongly urge you to read Section 5, Initial Setup, before adjusting any of
the parameters.
Even if you opt to leave most of the parameters at their default settings, it
is imperative that you perform the procedures outlined in Section 5, which
set up the basic system characteristics for your application.
23
3 PROGRAMMABLE PARAMETERS
Table 3
24
3 PROGRAMMABLE PARAMETERS
Table 3
25
3 PROGRAMMABLE PARAMETERS
Parameter name
as it appears in the
programmer display
Allowable range
in the
programmers units
Max Speed
Max_Speed_SpdM
Parameter name
in VCL
1008000 rpm
1008000
Allowable range
in VCL units
Note: All bit variables have two VCL parameter names. The rst is the name
of the bit, and the second is the name of the byte containing the bit. The bit
position within the byte is indicated in brackets after the byte name.
Examples:
BIT NAME:
BYTE NAME:
Metric_Units
OptionBits3 [Bit 5]
BIT NAME:
BYTE NAME:
EMR_Dir_Interlock
EMR_Dir_Interlock_Bit0 [Bit 0]
In the second example, _Bit0 is part of the byte name, and does not indicate
the bit position; this byte, like all bytes, has 8 available bits.
Within the menu charts, each pair of bit variable names is shown as a
grouped set, with the bit name appearing rst and then the byte name:
Metric Units
Metric_Units
OptionBits3 [Bit 5]
26
On/Off
On/Off
ALLOWABLE
RANGE
02
02
DESCRIPTION
The maximum electrical frequency the controller will output is 300 Hz.
To determine how fast this constraint will allow your motor to spin, use the
equation
Max Motor RPM = 36000 / Number of Motor Poles
The maximum motor speed the controller will allow is 8000 rpm.
The overall maximum motor speed allowed is the least of these three constraints.
27
Max Speed
Max_Speed_SpdMx
ALLOWABLE
RANGE
1008000 rpm
1008000
Denes the maximum requested motor rpm at full throttle. Partiallyapplied throttle is scaled proportionately; e.g., 40% applied throttle
corresponds to a request for 40% of the set Max Speed Value.
Note: The maximum motor rpm is subject to the constraints on page 27.
Kp
Kp_SpdMx
0100 %
08192
Ki
Ki_SpdMx
5100 %
501000
The integral term (Ki) forces zero steady state error, so the motor
will run at exactly the commanded speed. Larger values provide tighter
control.
If the gain is set too high, you may experience oscillations as the
controller tries to control speed. If it is set too low, the motor may take
a long time to approach the exact commanded speed.
Accel Rate
Accel_Rate_SpdMx
0.130.0 sec.
10030000
Sets the rate (in seconds) at which the speed command increases
when throttle is applied. Larger values represent slower response.
Decel Rate
Decel_Rate_SpdMx
0.130.0 sec.
10030000
Sets the rate (in seconds) that is used to slow down the vehicle when
the throttle is reduced. Larger values represent slower response.
Brake Rate
Brake_Rate_SpdMx
0.130.0 sec.
10030000
Sets the rate (in seconds) at which the vehicle slows down when brake
is applied or when throttle is applied in the opposite direction. Larger
values represent slower response.
Pump Enable
On/Off
On/Off
AC_Pump_Enable_SpdM
AC_Pump_Enable_SpdM_Bit0 [Bit 0]
28
3 PROGRAMMABLE PARAMETERS: Speed Controller & Velocity Feedforward Parameters (SPEED MODE)
1 SPEED MODE
PARAMETER
Max Speed
Max_Speed_SpdM
ALLOWABLE
RANGE
1008000 rpm
1008000
Kp
Kp_SpdM
0100 %
08192
Ki
Ki_SpdM
5100 %
501000
The integral term (Ki) forces zero steady state error, so the motor will run
at exactly the commanded speed. Larger values provide tighter control.
If the gain is set too high, you may experience oscillations as the
controller tries to control speed. If it is set too low, the motor may take
a long time to approach the exact commanded speed.
1 SPEED MODE
PARAMETER
Kvff
Kvff_SpdM
ALLOWABLE
RANGE
[OPTIONAL]
DESCRIPTION
0500 A
05000
Build Rate
Vel_FF_Build_Rate_SpdM
0.15.0 sec
1005000
Release Rate
Vel_FF_Release_Rate_SpdM
0.12.0 sec
1002000
Determines how fast the Kvff term releases. If the release seems too abrupt,
slowing the release rate (i.e., setting it to a higher value) will soften the feel.
It should be set fast enough (i.e., at a low enough value) to prevent the
vehicle from running on after throttle release.
29
1 SPEED MODE
PARAMETER
ALLOWABLE
RANGE
[OPTIONAL]
DESCRIPTION
Kaff
Kaff_SpdM
0500 A
05000
Kbff
Kbff_SpdM
0500 A
05000
0.15.0 sec
1005000
Determines how fast the Kaff and Kbff terms build up.
For traction systems, if you feel or hear the mechanical slop pick up
abruptly when you move the throttle from neutral to a very small value,
slowing the build rate (i.e., setting it to a higher value) will soften the feel.
For a pump system, start with this parameter at the minimum setting.
Slowing it down (i.e., setting it to a higher value) will reduce speed overshoot if too much feedforward has been commanded.
Release Rate
0.12.0 sec
Acc_FF_Release_Rate_SpdM
1002000
Determines how fast the Kaff and Kbff terms release. It should be set fast
enough (i.e., at a low enough value) to prevent the vehicle from running
on after throttle release.
Build Rate
Acc_FF_Build_Rate_SpdM
30
1 SPEED MODE
PARAMETER
ALLOWABLE
RANGE
RESPONSE MENU
DESCRIPTION
0.130.0 sec
10030000
Sets the rate (in seconds) at which the speed command increases
when full throttle is applied at high vehicle speeds. Larger values
represent slower response. See Figure 7 for relationship between
Full Accel Rate HS, Full Accel Rate LS, and Low Accel Rate.
0.130.0 sec
10030000
Sets the rate (in seconds) at which the speed command increases
when full throttle is applied at low vehicle speeds.
0.130.0 sec
10030000
Sets the rate (in seconds) at which the speed command increases
when a small amount of throttle is applied. This rate is typically
adjusted to affect low speed maneuverability.
0.130.0 sec
10030000
Sets the rate (in seconds) that is used to slow down the vehicle
when the throttle is released to neutral at high vehicle speeds.
0.130.0 sec
10030000
Sets the rate (in seconds) that is used to slow down the vehicle
when the throttle is released to neutral at slow vehicle speeds.
0.130.0 sec
10030000
Sets the rate (in seconds) at which the vehicle slows down from high
speeds when full brake is applied or when full throttle is applied in the
opposite direction. See Figure 8 for relationship between Full Brake
Rate HS, Full Brake Rate LS, and Low Brake Rate.
0.130.0 sec
10030000
Sets the rate (in seconds) at which the vehicle slows down from low
speeds when full brake is applied or when full throttle is applied in the
opposite direction.
0.130.0 sec
10030000
Sets the rate (in seconds) at which the vehicle slows down at all
speeds when a small amount of brake is applied or when a small
amount of throttle is applied in the opposite direction.
Fig. 7 Acceleration
31
1 SPEED MODE
ALLOWABLE
RANGE
PARAMETER
0.130.0 sec.
10030000
Sets the rate (in seconds) that is used to slow down the vehicle
when the throttle is reduced without being released to neutral.
Larger values represent slower response.
HS (High Speed)
HS
0100 %
032767
Sets the percentage of the Typical Max Speed (page 53) above which
the HS parameters will be used.
LS (Low Speed)
LS
0100 %
032767
Sets the percentage of the Typical Max Speed (page 53) below which
the LS parameters will be used.
Reversal Soften
Reversal Soften_SpdM
0100 %
03000
0.130.0 sec
10030000
0.130.0 sec
10030000
This parameter works like the Max Speed Accel parameter, except that
it controls the rate at which the maximum speed setpoint is allowed to
change when the value of Max Speed is lowered.
For example, suppose you change Max Speed from 4500 rpm
to 2500 rpm. If Typical Max Speed is 5000 rpm, and the rate is 5.0
seconds, it will take 5.0 * (45002500) / 5000 = 2.0 seconds to ramp
from 4500 rpm to 2500 rpm.
Fig. 8 Braking
32
1 SPEED MODE
PARAMETER
ALLOWABLE
RANGE
Pump Enable
On/Off
AC_Pump_Enable_SpdM
On/Off
AC_Pump_Enable_SpdM_Bit0 [Bit 0]
PUMP ENABLE
DESCRIPTION
33
2 TORQUE MODE
PARAMETER
Max Speed
Max_Speed_TrqM
ALLOWABLE
RANGE
5008000 rpm
5008000
Denes the maximum allowed motor rpm for torque control mode
(independent of throttle position). In torque control mode, full throttle
requests 100% of the available torque. Partially-applied throttle is scaled
proportionately; e.g., 40% applied throttle corresponds to a request for
40% of the available torque.
Note: The maximum motor rpm is subject to the constraints on page 27.
Kp
Kp_TrqM
0100 %
08192
Ki
Ki_TrqM
5100 %
501000
The integral term (Ki) forces zero steady state error, so the motor speed
will be limited to Max Speed. Larger values provide faster control.
If the gain is set too high, you may experience oscillations as the
controller tries to limit speed. If it is set too low, it may take a long time for
the motor to approach Max Speed from overspeed.
Kd
Kd_TrqM
0100 %
08192
34
2 TORQUE MODE
RESPONSE MENU
PARAMETER
ALLOWABLE
RANGE
Accel Rate
Accel_Rate_TrqM
0.130.0 sec.
10030000
Sets the rate (in seconds) at which the motor torque increases to full
when full throttle is applied. Larger values represent slower response.
0.12.0 sec.
1002000
Brake Rate
Brake_Rate_TrqM
0.15.0 sec.
1005000
Adjusts the rate (in seconds) at which braking torque builds as the
vehicle transitions from drive to braking when direction is reversed,
the brake pedal is applied, or neutral braking begins. Lower values
represent faster times and therefore faster braking; gentler braking is
achieved by setting the braking rate to a higher value.
0.12.0 sec.
1002000
Neutral Braking
Neutral_Braking_TrqM
DESCRIPTION
0100 %
032767
2006000 rpm
2006000
35
2 TORQUE MODE
PARAMETER
ALLOWABLE
RANGE
Creep Torque
Creep_Torque_TrqM
0100 %
032767
25100 %
819232767
Determines the amount of brake pedal input that will fully cancel the .
creep torque. Amount of cancellation is proportional to the brake input.
0.15.0 sec
1005000
0.15.0 sec
1005000
Determines how fast the programmed creep torque releases when the
brake is cancelling the creep torque or when the direction switches are
cleared (neutral).
Gear Soften
Gear_Soften_TrqM
Reversal Soften
Reversal_Soften
36
0100 %
05000
2006000 rpm
2006000
Determines the motor speed below which the maximum braking current
is linearly reduced from 100% to 0% at zero speed; see Figure 11.
Setting the taper speed too low for the braking current will cause
oscillations in the motor as it attempts to brake the vehicle to a stop
on very steep slopes.
Taper speed is applicable only in response to brake pedal input; it
does not affect direction reversal braking or neutral braking.
0100 %
03000
0.130.0 sec
10030000
Fig. 10 Effect
of Gear Soften parameter
(torque control mode).
n
TORQUE
fte
o
rS
0%
25
50
0%
75
10
ea
TIME
37
RESTRAINT MENU
ALLOWABLE
RANGE
PARAMETER
DESCRIPTION
Restraint Forward
Restraint_Forward
0100 %
032767
Restraint Back
Restraint_Back
0100 %
032767
0500 rpm
0500
Denes the speed below which a much slower decel rate is used.
A setting of zero disables the function. Note: This parameter works only
in Speed Mode and Speed Mode Express.
Soft Stop Speed is useful for vehicles that have fast deceleration
and vehicles operating on ramps using the Position Hold function.
With vehicles that have fast deceleration, the driver may nd the
nal speed reduction to zero rpm uncomfortable; the vehicle may even
rock back as a result of tire wind-up. Soft Stop Speed allows the vehicle
to slow at the same fast rate until it reaches the set threshold, at which
point it changes to a slower (softer) deceleration rate. However, if the
threshold is set too high, the vehicle will feel like it is running on.
When throttle is released on a ramp, the vehicle may roll back
before Position Hold (see below) takes control. Soft Speed Stop can be
used to reduce the amount of rollback, but shouldnt be set so high the
vehicle drives up the ramp after the throttle is released.
PARAMETER
On/Off
On/Off
2100 %
822048
0100 %
08192
05000 rpm
0156
5100 rpm
5100
38
PARAMETER
DESCRIPTION
Entry Rate
Entry_Rate_Position_Hold
5100 %
501000
0100 %
02048
This function is applicable only when the Torque Preload function has
been disabled (see EM Brake menu), or its timer has expired. It introduces a proportional feedforward term into the speed controller based
on the position signal. For example, suppose the vehicle is on a ramp
and a forward throttle request is given such that the vehicle rolls back
slightly before climbing the ramp (again, assuming the torque preload
function is inactive). As the vehicle rolls back a feedforward torque term
proportional to the rollback position will be added to the torque request
until forward speed is sensed.
ALLOWABLE
RANGE
DESCRIPTION
5100 %
163832767
Sets the maximum RMS current the controller will supply to the motor
during drive operation, as a percentage of the controllers full rated
current.* Reducing this value will reduce the maximum drive torque.
5100 %
163832767
5100 %
163832767
Sets the maximum RMS regen current during braking when a brake
command is given, as a percentage of the controllers full rated current.*
Typically the brake current limit is set equal to the regen current limit.
The brake current limit overrides the regen current limit when the brake
input is active.
5100 %
163832767
Sets the maximum RMS current allowed for braking and drive when in
emergency reverse. The emergency reverse current limit is a percentage
of the controllers full rated current.*
5100 %
163832767
39
ALLOWABLE
RANGE
DESCRIPTION
Nominal Speed
PL_Nominal_Speed
1004000 rpm
1004000
Sets the base speed that will be used in the drive limiting map and
regen limiting map.
Delta Speed
PL_Delta_Speed
501000 rpm
501000
Sets the width of the delta increment that will be used in the drive limiting
map and regen limiting map.
ALLOWABLE
RANGE
DESCRIPTION
Nominal
PL_Drive_Nominal
0100 %
032767
Sets
Plus Delta
PL_Drive_Nominal_Plus_Delta
0100 %
032767
Sets
Plus 2xDelta
0100 %
PL_Drive_Nominal_Plus_2xDelta 032767
Sets
Plus 4xDelta
0100 %
PL_Drive_Nominal_Plus_4xDelta 032767
Sets
Plus 8xDelta
0100 %
PL_Drive_Nominal_Plus_8xDelta 032767
Sets
Fig. 12 Drive
current limiting map
(typical example).
40
ALLOWABLE
RANGE
DESCRIPTION
Nominal
PL_Regen_Nominal
0100 %
032767
Sets
Plus Delta
PL_Regen_Nominal_Plus_Delta
0100 %
032767
Sets
Plus 2xDelta
PL_Regen_Nominal_Plus_2xDelta
0100 %
032767
Sets
Plus 4xDelta
PL_Regen_Nominal_Plus_4xDelta
0100 %
032767
Sets
Plus 8xDelta
PL_Regen_Nominal_Plus_8xDelta
0100 %
032767
Sets
Fig. 13 Regen
41
THROTTLE MENU
PARAMETER
ALLOWABLE
RANGE
Throttle Type
Throttle_Type
15
15
DESCRIPTION
Note: Do not change this parameter while the controller is powering the
motor. Any time this parameter is changed a Parameter Change Fault
(fault code 49) is set and must be cleared by cycling power; this protects
the controller and the operator.
Forward Deadband
Forward_Deadband
05.00 V
032767
Forward Map
Forward_Map
0100 %
032767
Modies the vehicles response to the throttle input. Setting the throttle
map at 50% provides a linear output response to throttle position. Values
below 50% reduce the controller output at low throttle settings, providing
enhanced slow speed maneuverability. Values above 50% give the vehicle
a faster, more responsive feel at low throttle settings.
The map value is the percentage of controller output at half throttle
((deadband + max)/2).
Forward Max
Forward_Max
05.00 V
032767
Forward Offset
Forward_Offset
0100 %
032767
Denes the initial controller output generated when the throttle is rst
rotated out of the neutral deadband. For most vehicles, a setting of 0
is appropriate. For heavy vehicles, however, increasing the offset may
improve controllability by reducing the amount of throttle required to start
the vehicle moving.
42
ALLOWABLE
RANGE
Reverse Deadband
Reverse_Deadband
05.00 V
032767
Reverse Map
Reverse_Map
0100 %
032767
Reverse Max
Reverse_Max
05.00 V
032767
Reverse Offset
Reverse_Offset
0100 %
032767
DESCRIPTION
adjustment parameters.
Together these four generic
parameters determine the
controllers response to
throttle demand
(in forward or reverse)
and to brake demand.
In the examples shown
in this gure,
Deadband = 0.5V
Max = 4.5V
Offset = 0.
43
HPD/SRO Type
HPD_SRO_Type
OptionBits1 [Bit 4]
ALLOWABLE
RANGE
03
03
DESCRIPTION
Sequencing Delay
Sequencing_Delay
0.05.0 sec. Typically the sequencing delay feature allows the interlock switch to be cycled
0312
within a set time (the dened sequencing delay), thus preventing inadvertent
activation of HPD/SRO. This feature is especially useful in applications where
the interlock switch may bounce or be momentarily cycled during operation.
44
When programmed On, the throttle processing with fault detection will operate
normally; however, the throttle command (see Figure 15, page 92) will require
VCL to dene the connection between the OS_Throttle and VCL_Throttle
variables. This allows VCL exibility and customization of throttle processing,
while still allowing Throttle_Type 14 with throttle fault detection.
BRAKE MENU
PARAMETER
ALLOWABLE
RANGE
On/Off
On/Off
15
15
DESCRIPTION
Determines whether the brake input and algorithm are enabled, making
the brake throttle part of the motor control command.
The 1234/36/38 controllers accept a variety of brake inputs. The brake type
parameter can be programmed as follows:
1
(not applicable)
Note: Do not change this parameter while the controller is powering the motor.
Any time this parameter is changed a Parameter Change Fault (fault code 49)
is set and must be cleared by cycling power; this protects the controller and the
operator.
Brake Deadband
Brake_Deadband
05.00 V
032767
Brake Map
Brake_Map
0100 %
032767
Brake Max
Brake_Max
05.00 V
032767
Brake Offset
Brake_Offset
0100 %
032767
When programmed On, the brake processing with fault detection will
operate normally; however, the brake command (see Figure 14) will require
VCL to dene the connection between the OS_Brake and VCL_Brake
variables. This allows VCL exibility and customization of throttle processing,
while still allowing Brake_Type 13 with brake fault detection.
45
ALLOWABLE
RANGE
Brake Type
EM_Brake_Type
02
02
DESCRIPTION
The brake type parameter determines how the EM brake responds to the
interlock input, throttle, and vehicle motor speed.
0 EM brake function disabled. The EM brake driver (PWM2) is
released to general I/O use with VCL.
1 EM brake controlled by interlock. The controller will command the
EM brake to release whenever the interlock is closed (Interlock =
On). If interlock braking is enabled and the interlock opens
when the vehicle is moving at motor speed greater than
EM_Brake_Set_Speed_Threshold, the controller will brake the
vehicle to a stop (with interlock braking) and then command the EM
brake to set. If the vehicle motor speed is less than this threshold,
the EM brake will engage after the Sequencing_Delay has expired.
If interlock braking is disabled, the EM brake will engage after
the Sequencing_Delay has expired.
2 EM brake controlled by interlock and neutral. The controller will
command the EM brake to set whenever the throttle command is
zero and motor speed is less than EM_Brake_Set_Speed_Threshold.
Position Hold will be enabled automatically.
Pull In Voltage
EM_Brake_Pull_In_Voltage
0100 %
032767
The EM brake pull-in voltage allows a high initial voltage when the EM
brake rst turns on, to ensure brake release. After 1 second, this peak
voltage drops to the EM brake holding voltage.
Note: The Battery Voltage Compensated parameter controls whether
the pull-in and holding voltages are battery voltage compensated.
Holding Voltage
EM_Brake_Holding_Voltage
0100 %
032767
On/Off
On/Off
On/Off
On/Off
When programmed On, the controllers operating system will drop the
electromagnetic brake when a fault occurs that has a fault action of
ShutdownEMBrake. See Section 8 for a list of all the faults that have a fault
action of ShutdownEMBrake.
46
ALLOWABLE
RANGE
5100 rpm
5100
DESCRIPTION
Release Delay
EM_Brake_Release_Delay
402000 msec
5250
Estimated time for the EM brake to physically release after the pull-in
voltage is applied. This is used to ensure the position hold torque buildup
is complete before the brake releases. When set too low, the vehicle may
experience rollback on EM brake release.
05000 msec
0156
0800 msec
0100
The timer starts after the EM brake is set. If the timer expires before the
throttle is re-engaged, the torque preload memory will be cleared. Setting
this parameter to zero disables the timer, i.e., the preload is never cancelled. The purpose of this delay is to prevent the vehicle from lunging
forward if it is unloaded on a hill such that the torque measured by
position-hold is no longer valid.
Note: This parameter is applicable only when Torque Preload Enable =
On (see conditions above).
0120 sec
015000
47
PARAMETER
Main Enable
Main_Enable
OptionBits1 [Bit 0]
DESCRIPTION
On/Off
On/Off
When programmed On, the controllers native software controls the main
contactor when the interlock is enabled; when programmed Off, the
contactor is controlled by VCL. Note: With Main Enable programmed Off,
the controller will not be able to open the main contactor in serious fault
conditions and the system will therefore not meet EEC safety requirements.
Pull In Voltage
Main_Pull_In_Voltage
0100 %
032767
The main contactor pull-in voltage parameter allows a high initial voltage
when the main contactor driver rst turns on, to ensure contactor closure.
After 1 second, this peak voltage drops to the contactor holding voltage.
Note: The Battery Voltage Compensated parameter (below) controls
whether the pull-in and holding voltages are battery voltage compensated.
Holding Voltage
Main_Holding_Voltage
0100 %
032767
On/Off
On/Off
This parameter determines whether the main pull-in and holding voltages
are battery voltage compensated. When set On, the pull-in and holding
voltages are set relative to the set Nominal Voltage (see Battery Menu,
page 55). In other words, the output voltage is adjusted to compensate for
swings in battery voltage, so the percentage is relative to the set Nominal
Voltagenot to the actual voltage.
For example, suppose Nominal Voltage is set to 48V and Holding
Voltage is set to 75% (36V) to the output driver. Now suppose the bus voltage dips to 40V. If Battery Voltage Compensated = On, the output will still
be 36V (Nominal Voltage Holding Voltage) to the coil. If Battery Voltage
Compensated = Off, the output will be 30V (Actual Voltage Holding Voltage) to the coil.
Interlock Type
Interlock_Type
Open Delay
Open_Delay
Checks Enable
Checks_Enable
OptionBits1 [Bit 2]
48
02
02
040 sec.
02500
Applicable only when Interlock Type = 0 or 1. The delay can be set to allow the
contactor to remain closed for a period of time (the delay) after the interlock
switch is opened. The delay is useful for preventing unnecessary cycling of the
contactor and for maintaining power to auxiliary functions that may be used for
a short time after the interlock switch has opened.
On/Off
On/Off
When programmed On, the controller performs ongoing checks to ensure that
the main contactor has closed properly each time it is commanded to do so,
and that it has not welded closed. These checks (Main Contactor Welded and
Main Contactor Did Not Close) are not performed if this parameter is Off. The
main contactor driver, however, is always protected from short circuits.
Precharge Enable
Precharge_Enable
OptionBits2 [Bit 6]
ALLOWABLE
RANGE
DESCRIPTION
084.0 V
05376
When Checks Enable = On, this parameter is used as the threshold for
detecting a Main Did Not Close fault. The Main DNC Threshold is the
minimum voltage difference between the Keyswitch and Capacitor
voltages. When the voltage difference is below this threshold, and the
battery current is low, a Main Did Not Close fault will be set. Setting this
parameter lower will increase the sensitivity of the fault detect. Setting this
parameter too low may cause false fault trips due to normal voltage drops
between the keyswitch and capacitor voltages.
Setting this parameter = 0 V will disable the Main Did Not Close fault
check.
On/Off
On/Off
49
ALLOWABLE
RANGE
DESCRIPTION
PD Enable
PD_Enable
OptionBits1 [Bit 6]
On/Off
On/Off
On/Off
On/Off
PD Max Current
PD_Max_Current
0.02.0 A
0607
PD Min Current
PD_Min_Current
0.02.0 A
0607
PD Dither %
PD_Dither_Percent
0100 %
032767
PD Dither Period
PD_Dither_Period
16112 msec
17
This parameter sets the maximum allowed current through the valve,
which in turn denes its aperture.
back-and-forth motion of the valve; this keeps the valve lubricated and allows
low-friction, precise movement. The PD Dither % parameter species the
amount of dither as a percentage of the PD max current, and is applied in
a continuous cycle of add%-subtract%.
PD Kp
PD_Kp
1100 %
828192
* Sets the proportional gain of the current feedback controller. Higher gains
PD Ki
PD_Ki
1100 %
32732767
* Sets the integral gain of the current feedback controller. Integral gain tries
force the control loop to respond quickly but may cause oscillations.
to force the error to zero. Higher gains force the control loop to respond
quickly but may cause oscillations.
50
Contactor Enable
Hydraulic_Contactor_Enable
OptionBits4 [Bit 1]
ALLOWABLE
RANGE
DESCRIPTION
On/Off
On/Off
Pull In Voltage
Hydraulic_Pull_In_Voltage
0100 %
032767
Holding Voltage
Hydraulic_Holding_Voltage
0100 %
032767
51
ALLOWABLE
RANGE
DESCRIPTION
On/Off
On/Off
On/Off
On/Off
On/Off
On/Off
On/Off
On/Off
PD Checks Enable
PD_Checks_Enable
OptionBits2 [Bit 5]
On/Off
On/Off
5200 mA
52800
Sets the upper threshold of the combined current of the 5V and 12V
external supplies. At or above this threshold a fault will be created that
can be read by VCL.
5200 mA
52800
Sets the lower threshold of the combined current of the 5V and 12V
external supplies. At or below this threshold a fault will be created that
can be read by VCL.
52
MOTOR MENU
PARAMETER
ALLOWABLE
RANGE
5008000 rpm
5008000
DESCRIPTION
Set this parameter to the typical maximum motor speed of the vehicle.
This value does not need to be set precisely; an estimate will do.
All of the vehicle response rates are normalized to Typical Max Speed.
For example, suppose Typical_Max_Speed is xed at 6000 rpm, and
Full_Accel_Rate_LS_SpdM = 3.0 seconds:
If Max_Speed_SpdM = 6000 rpm, it will take 3.0 sec to accelerate from
zero to top speed (6000 rpm).
If Max_Speed_SpdM = 3000 rpm, it will take 1.5 sec to accelerate from
zero to top speed (3000 rpm).
If Max_Speed_SpdM = 1000 rpm, it will take 0.5 sec to accelerate from
zero to top speed (1000 rpm).
On/Off
On/Off
On/Off
On/Off
If, after Swap Encoder Direction has been set correctly, the vehicle drives
in the wrong direction (i.e., drives forward when in reverse, and vice
versa), try changing the setting of the Swap Two Phases parameter. This
parameter has the same effect as physically swapping the cables on any
two of the three motor phase connections.
Positive motor speed must be in the forward direction in order
for the emergency reverse feature to operate properly.
Note: Do not change this parameter while the controller is powering the
motor. Any time this parameter is changed a Parameter Change Fault
(fault code 49) is set and must be cleared by cycling power; this protects
the controller and the operator.
Adjusting this parameter can be hazardous. For instructions,
see Section 5, Step bk (page 78).
Encoder Steps
Encoder_Steps
32256
32256
Sets the number of encoder pulses per revolution. This must be set to
match the encoder; see motor nameplate.
Note: Do not change this parameter while the controller is powering
the motor. Any time this parameter is changed a Parameter Change Fault
(fault code 49) is set and must be cleared by cycling power; this protects
the controller and the operator.
Adjusting this parameter can be hazardous; setting it improperly
may cause vehicle malfunction, including uncommanded drive. For
instructions, see Section 5, Step 1 (page 76).
53
Sensor Enable
MotorTemp_Sensor_Enable
OptionBits3 [Bit 1]
Sensor Type
MotorTemp_Sensor_Type
ALLOWABLE
RANGE
On/Off
On/Off
When programmed On, the motor temperature cutback and the motor
temperature compensation features are enabled. This parameter can be
used only if a temperature sensor has been properly congured.
The motor temperature cutback feature will linearly cutback the drive
current from 100% to 0% between the Temperature Hot and Temperature
Max temperatures.
The motor temperature compensation feature will adapt the motor
control algorithms to varying motor temperatures, for improved efciency
and more consistant performance.
15
15
DESCRIPTION
-20 20 C
-200200
Often the sensor is placed in the motor at a location with a known offset
to the critical temperature; the offset can be corrected with this parameter.
The parameter can also be used to correct a known offset in the sensor
itself.
Temperature Hot
MotorTemp_Hot
0250 C
02500
Temperature Max
MotorTemp_Max
0250 C
02500
54
1003000 rpm
1003000
When a Motor Temp Sensor Fault (fault code 29) is set, a LOS (Limited
Operating Strategy) mode is engaged. The maximum speed is reduced to
the programmed Max Speed in the operating mode (Max_Speed_SpdMx,
Max_Speed_SpdM, Max_Speed_TrqM) or to the MotorTemp_LOS_Max_
Speed, whichever is lower.
BATTERY MENU
PARAMETER
Nominal Voltage
Nominal_Voltage
ALLOWABLE
RANGE
2484 V
15365376
DESCRIPTION
Must be set to the vehicles nominal battery pack voltage. This parameter
is used in determining the overvoltage and undervoltage protection thresholds
for the electronic system.
Overvoltage protection cuts back regen braking to prevent damage
to batteries and other electrical system components due to overvoltage.
Undervoltage protection prevents systems from operating at voltages below
their design thresholds.
The four threshold points are calculated from the Nominal Voltage, Undervoltage Cutback Range, User Overvoltage, and User Undervoltage parameter
settings and the controllers minimum voltage and maximum voltage ratings:
VOLTAGE RATINGS
CONTROLLER
24V
2436V
3648V
4880V
80108V
BROWNOUT
VOLTAGE *
15V
15V
20V
20V
30V
MIN
VOLTAGE
MAX
VOLTAGE
16.8V
16.8V
25.2V
33.6V
50.4V
30V
45V
60V
105V
130V
2.014.0 V
04096
This parameter sets the voltage range between the Undervoltage and
Severe Undervoltage points (see Nominal Voltage description).
A Severe Undervoltage fault will be set if the capacitor voltage falls
below either the Severe Undervoltage point (drive current limit set to 0) or
the Brownout voltage (bridge disabled, motor current set to 0).
User Overvoltage
User_Overvoltage
115200 %
293512
55
User Undervoltage
User_Undervoltage
ALLOWABLE
RANGE
5080 %
128204
DESCRIPTION
BDI Algorithm
2.09
2.04
1.73
2.09
2.04
1.90
Use the standard values for your type of batteries as the starting point in
setting the reset, full, and empty volts-per-cell parameters.
56
PARAMETER
DESCRIPTION
0.903.00 V
9003000
The reset voltage level is checked only once, when KSI is rst turned on.
Note that the BDI Reset Percent parameter also inuences the algorithm
that determines whether BDI Percentage is reset to 100%.
Reset Volts Per Cell should always be set higher than Full Volts Per
Cell.
Reset Voltage Level = Reset Volts Per Cell number of cells in the
battery pack.*
0.903.00 V
9003000
The full voltage level sets the Keyswitch Voltage that is considered to be
100% state-of-charge; when a loaded battery drops below this voltage,
it begins to lose charge. Keyswitch Voltage is viewable in the 1311 menu
Monitor Battery.
Full Voltage Level = Full Volts Per Cell number of cells in the battery
pack.*
0.903.00 V
9003000
Discharge Time
BDI_Discharge_Time
0600 min.
0600
Sets the minimum time for the BDI algorithm to count down the BDI
Percentage from 100% to 0%. The BDI algorithm integrates the time the
ltered keyswitch voltage is below the state of charge voltage level. When
that cumulative time exceeds the Discharge Time / 100, the BDI Percentage
is decremented by one percentage point and a new state of charge voltage
level is calculated.
State of Charge Level = ((Full Voltage Level - Empty Voltage Level)
BDI Percentage / 100) + Empty Voltage Level.
0100 %
0100
When a battery has a high BDI percentage, its oat voltage at KSI On
can sometimes cause false resets. The BDI Reset Percent parameter
addresses this problem by allowing the user to dene a BDI Percentage
value above which the BDI Percentage variable will not reset.
When KSI is rst powered on, the BDI Percentage variable will reset
to 100% only if ((Keyswitch Voltage > Reset Voltage Level) and (BDI
Percentage < BDI Reset Percent)).
57
VEHICLE MENU
PARAMETER
Metric Units
Metric_Units
OptionBits3 [Bit 5]
ALLOWABLE
RANGE
DESCRIPTION
On/Off
On/Off
Speed to RPM
Speed_to_RPM
10.03000.0
10030000
This parameter affects the vehicle speed displayed in the Monitor Motor
menu (see page 68), and also modies the VCL variable Vehicle_Speed;
it does not affect actual vehicle performance. The value entered for Speed
to RPM is a conversion factor that scales motor speed to vehicle speed.
KPH to RPM: (G/d)*5.305, where G = gear ratio, d = tire diameter [cm].
MPH to RPM: (G/d)*336.1, where G = gear ratio, d = tire diameter [in].
Capture Speed 1
Capture_Speed_1
08000 rpm
08000
The controller captures the time it takes the motor to go from 0 rpm to the
programmed Capture Speed. The result is stored as Time to Speed 1
in the Monitor Vehicle menu (page 71). This timer starts every time the
motor accelerates from zero speed.
Capture Speed 2
Capture_Speed_2
08000 rpm
08000
Capture Distance 1
Capture_Distance_1
11320
11320
The controller captures the time it takes the vehicle to travel from 0 rpm to
the programmed Capture Distance. The result is stored as Time to Dist 1
in the Monitor Vehicle menu (page 71). This timer starts every time the
vehicle accelerates from zero speed.
Note: For accurate distance measuring, the Speed to RPM parameter
must be set correctly.
With the Metric Units parameter programmed Off, distance is in units
of feet. With Metric Units programmed On, distance is in units of meters.
Capture Distance 2
Capture_Distance_2
11320
11320
Capture Distance 3
Capture_Distance_3
11320
11320
58
EMR Enable
EMR_Enable
OptionBits1 [Bit 1]
EMR Type
EMR_Type
ALLOWABLE
RANGE
On/Off
On/Off
01
01
Determines whether the interlock switch must be turned off after emergency
reverse before the vehicle can be driven again.
On = Interlock and throttle and direction must all be cleared.
Off = Only throttle and direction must be cleared.
Denes how long emergency reverse is allowed to be active after the vehicle
is moving in the reverse direction. This timer will restart if the vehicle ever goes
forward while emergency reverse is still active. The allowable range is 030
seconds, where 30 seconds is a special case of no time out.
When emergency reverse times out, the Emer Rev Timeout fault is set.
Cycling the emergency reverse input will clear the Emer Rev Timeout fault.
To stop the vehicle after an EMR event (not move in reverse direction),
set this parameter to 0.
EMR Speed
EMR_Speed
030 sec
03750
506000 rpm
506000
Denes the maximum reverse speed of the motor (in motor rpm), when
emergency reverse is active.
0.13.0 sec
1003000
Sets the rate (in seconds) at which the vehicle accelerates in the opposite
direction after it has been brought to a stop. If the vehicle is already traveling in
the reverse direction below the EMR Speed, the EMR Accel Rate will bring the
vehicle to the EMR Speed.
0.13.0 sec
1003000
Sets the rate (in seconds) at which the vehicle brakes to a stop when
emergency reverse is activated and the vehicle is moving forward. If the vehicle
is already traveling in the reverse direction above the EMR Speed, the EMR
Decel Rate will bring the vehicle down to the EMR Speed.
59
ALLOWABLE
RANGE
DESCRIPTION
Enable
Interlock_Brake_Enable
OptionBits3 [Bit 7]
On/Off
On/Off
Decel Rate HS
Interlock_Brake_Decel_
Rate_HS
0.130.0
10030000
Sets the rate (in seconds) that is used to slow down the vehicle when the
interlock is released at high vehicle speeds. Larger values represent slower
response.
Decel Rate LS
Interlock_Brake_Decel_
Rate_LS
0.130.0
10030000
Sets the rate (in seconds) that is used to slow down the vehicle when the
interlock is released at low vehicle speeds. Larger values represent slower
response.
08.0 sec
01000
60
ALLOWABLE
RANGE
DESCRIPTION
CANopen Interlock
CANopen_Interlock_Enable
OptionBits3 [Bit 2]
On/Off
On/Off
CAN Node ID
CAN_Node_ID
0127
0127
Sets the Node ID of the CANopen Slave system. The Node ID is the
rst 7 bits of the 11-bit identier (the COB ID).
Baud Rate
CAN_Baud_Rate
-3 2
-3 2
Sets the CAN baud rate for the CANopen Slave system:
-3=20Kbps, -2=50Kbps, -1=100Kbps,
0=125Kbps, 1=250Kbps, 2=500Kbps.
Heartbeat Rate
CANopen_Heart_Beat_Rate
16200 msec
450
Sets the rate at which the CAN heartbeat messages are sent from the
CANopen Slave system.
0200 msec
050
Sets the PDO timeout period for the CANopen Slave system. After the
slave controller has sent a PDO MISO, it will declare a PDO Timeout Fault
if the master controller has not sent a reply PDO MOSI message within the
set time. Either PDO1 MOSI or PDO2 MOSI will reset the timer. Setting the
PDO Timeout Period = 0 will disable this fault check.
16200 msec
450
Sets the minimum rate between CAN emergency messages from the
CANopen Slave system. This prevents quickly changing fault states from
generating so many emergency messages that they ood the CAN bus.
01
01
61
PARAMETER
DESCRIPTION
Contact your Curtis customer support engineer if you will be running the motor
characterization tests yourself. See Initial Setup, step bl, page 79.
ALLOWABLE
RANGE
FW Base Speed
FW_Base_Speed
2006000 rpm
2006000
This parameter needs to be reset each time the Motor Type is changed
or the low speed current limit is changed. For example, if you lower
Drive_Current_Limit (page 39) or PL_Drive_Nominal (page 40), you
should consider adjusting this parameter.
To determine the correct value, perform this tuning test. The test
should be run with batteries that have a reasonable charge. In either
Torque Control Mode or Speed Control Mode, set your accel rates to be
fastso that youll be accelerating at full current during the test. Next,
set the Base Speed parameter to the maximum value (so that it will not
interfere with the test result). From a stop, apply full throttle and accelerate
to high speed and then stop. After stopping, note the value displayed in
Monitor Controller Motor Tuning Base Speed Captured, and enter this
value for the Base Speed setting.
The test restarts each time the vehicle comes to a stop and the
throttle is released, so be sure to note the value before driving away.
Field Weakening
Field_Weakening
0100 %
01024
Determines the amount of high speed power the controller will allow,
while still maintaining maximum effciency at the allowed power. Reducing
this parameter effectively reduces controller current at high speeds, which
can reduce energy consumption and motor heating, but at the expense of
reduced available torque from the motor.
Weakening Rate
Field_Weakening_Rate
0100 %
0500
Determines the control loop gains for eld weakening. Setting the rate too
low may create surging in the vehicle as it accelerates at mid to high
speeds. Setting the rate too high may create high frequency oscillations
(usually audible) when the vehicle accelerates at mid to high speeds.
DESCRIPTION
Motor Type
Motor_Type
62
ALLOWABLE
RANGE
0200
0200
DESCRIPTION
63
4a MONITOR MENU
4a
MONITOR MENU
Through its Monitor menu, the 1311 programmer
provides access to real-time data during vehicle
operation. This information is helpful during
diagnostics and troubleshooting, and also while
adjusting programmable parameters.
MONITOR MENU
Inputs ................. p. 64
Outputs .............. p. 67
Battery ............... p. 68
Motor ................. p. 68
Controller ........... p. 69
Cutbacks ........ p. 70
Motor Tuning .. p. 70
Vehicle ............... p. 71
CAN Status ........ p. 73
DESCRIPTION
Throttle Command
Throttle_Command
-100100 %
-3276832767
Mapped Throttle
Mapped_Throttle
-100100 %
-3276832767
Throttle Pot
Throttle_Pot_Raw
05.5 V
036044
Brake Command
Brake_Command
0100 %
032767
Mapped Brake
Mapped_Brake
0100 %
032767
Pot2 Raw
Pot2_Raw
05.5 V
036044
PD Throttle
PD_Throttle
0100 %
032767
Steer Pot
Steer_Pot_Raw
05.5 V
036044
Steer Angle
Steer_Angle
Interlock
Interlock_State
System_Flags1 [Bit 0]
64
DISPLAY
RANGE
-90 90 deg
-90 90
On/Off
On/Off
4a MONITOR MENU
Emer Rev
EMR_State
System_Flags1 [Bit 1]
DISPLAY
RANGE
On/Off
On/Off
DESCRIPTION
Analog 1
Analog1_Input
010.0 V
01023
Analog 2
Analog2_Input
010.0 V
01023
Switch 1
Sw_1
Switches [Bit 0]
On/Off
On/Off
Switch 2
Sw_2
Switches [Bit 1]
On/Off
On/Off
Switch 3
Sw_3
Switches [Bit 2]
On/Off
On/Off
Switch 4
Sw_4
Switches [Bit 3]
On/Off
On/Off
Switch 5
Sw_5
Switches [Bit 4]
On/Off
On/Off
Switch 6
Sw_6
Switches [Bit 5]
On/Off
On/Off
Switch 7
Sw_7
Switches [Bit 6]
On/Off
On/Off
Switch 8
Sw_8
Switches [Bit 7]
On/Off
On/Off
Driver 1 Input
Sw_9
Switches [Bit 8]
On/Off
On/Off
Driver 2 Input
Sw_10
Switches [Bit 9]
On/Off
On/Off
65
4a MONITOR MENU
66
DISPLAY
RANGE
DESCRIPTION
Driver 3 Input
Sw_11
Switches [Bit 10]
On/Off
On/Off
Driver 4 Input
Sw_12
Switches [Bit 11]
On/Off
On/Off
PD Input
Sw_13
Switches [Bit 12]
On/Off
On/Off
DigOut6 Input
Sw_14
Switches [Bit 13]
On/Off
On/Off
DigOut7 Input
Sw_15
Switches [Bit 14]
On/Off
On/Off
Switch 16
Sw_16
Switches [Bit 15]
On/Off
On/Off
4a MONITOR MENU
DESCRIPTION
Analog Out
Analog_Output
010.0 V
032767
Digital Out 6
Dig6_Output
On/Off
On/Off
Digital Out 7
Dig7_Output
On/Off
On/Off
Driver 1 PWM
PWM1_Output
0100 %
032767
Driver 2 PWM
PWM2_Output
0100 %
032767
Driver 3 PWM
PWM3_Output
0100 %
032767
Driver 4 PWM
PWM4_Output
0100 %
032767
PD PWM
PD_Output
0100 %
032767
PD Current
PD_Current
02.0 A
0607
5 Volts
Five_Volts_Output
06.25 V
01023
DISPLAY
RANGE
5200 mA
52800
06.25 V
01023
67
4a MONITOR MENU
DISPLAY
RANGE
BDI
BDI_Percentage
0100 %
0100
Capacitor Voltage
Capacitor_Voltage
0105 V
06720
Keyswitch Voltage
Keyswitch_Voltage
0105 V
010500
DESCRIPTION
Motor RPM
Motor_RPM
68
DISPLAY
RANGE
-1200012000 rpm
-1200012000
DESCRIPTION
Temperature
Motor_Temperature
-100300 C
-10003000
MotorSpeed A
MotorspeedA
012000 rpm
012000
MotorSpeed B
MotorspeedB
012000 rpm
012000
4a MONITOR MENU
DISPLAY
RANGE
Current (RMS)
Current_RMS
01000 A
010000
Modulation Depth
Modulation_Depth
0100 %
01182
Frequency
Frequency
-300300 Hz
-1800018000
Temperature
Controller_Temperature
-100300 C
-10003000
Main State
Main_State
Regen
Regen_State
System_Flags1 [Bit 2]
010
010
On/Off
On/Off
065536
065536
VCL Error
Last_VCL_Error
065536
065536
DESCRIPTION
69
4a MONITOR MENU
DISPLAY
RANGE
DESCRIPTION
0100 %
04096
Undervoltage Cutback
UndervoltageCutback
0100 %
04096
Overvoltage Cutback
OvervoltageCutback
0100 %
04096
70
DISPLAY
RANGE
08000 rpm
08000
DESCRIPTION
4a MONITOR MENU
DESCRIPTION
Vehicle Speed
Vehicle_Speed
-327.7327.7
-3276832767
Vehicle Odometer
Vehicle_Odometer
Vehicle Acceleration
Vehicle_Acceleration
DISPLAY
RANGE
010 g
01000
Time to Speed 1
Time_to_Capture_Speed_1
0128 sec
032000
Time to Speed 2
Time_to_Capture_Speed_2
0128 sec
032000
Time to Dist 1
Time_to_Capture_Dist_1
0128 sec
032000
Time to Dist 2
Time_to_Capture_Dist_2
0128 sec
032000
71
4a MONITOR MENU
Time to Dist 3
Time_to_Capture_Dist_3
DISPLAY
RANGE
DESCRIPTION
0128 sec
032000
01000000.0
0400000000
01000000.0
0400000000
Distance Fine
-214748364.8214748364.7
Distance_Fine_Long
-21474836482147483647
72
4a MONITOR MENU
VARIABLE
DESCRIPTION
0127
0127
0 232
0 232
0 232
0 232
0 232
02
32
02
0 232
02
32
02
0 232
02
32
32
32
73
4b
74
DISPLAY
RANGE
Model Number
Model_Number
04294967295
04294967295
Serial Number
Serial Number
04294967295
04294967295
032767
032767
Hardware Version
Hardware_Ver
032.767
032767
OS Version
OS_Ver
032767
032767
Build Number
Build_Number
032767
032767
SM Version
SM_Ver
0327.67
032767
0327.67
032767
0327.67
032767
DESCRIPTION
5 INITIAL SETUP
INITIAL SETUP
The 1234/36/38 controllers can be used in a variety of vehicles, which differ
widely in characteristics. Before driving the vehicle, it is imperative that these
initial setup procedures be carefully followed to ensure that the controller is set up
to be compatible with your application. The rst step is to contact Curtis:
***
***
C AU T I O N
Once you have obtained the correct values for Motor Type, FW Base Speed,
and Field Weakening and have set them on your controller (see Motor Control
menus, page 62), you can start conducting the setup procedures. Note: If you
will be conducting the AC Motor Characterization Procedure, that will come
later.
Before starting the setup procedures, jack the vehicle drive wheels up
off the ground so that they spin freely. Double-check all wiring to ensure it is
consistent with the wiring guidelines presented in Section 2. Make sure all connections are tight. Turn on the controller and plug in the 1311 programmer.
Set the Encoder Steps parameter to the correct setting for your motors position
encoder. This information is typically available from the motor manufacturer. If
Curtis 1234/36/38 Manual, OS 11
75
5 INITIAL SETUP
C AU T I O N
Set the Sensor Type parameter to the predened type (15) that corresponds
to your motor temperature sensor. Typically, the motor temperature sensor will
be a thermistor that should be connected from Analog 2 (pin 8) to ground
(pin 7) as shown on page 12.
To check whether the parameter settings and the motor thermistor connections yield the correct motor temperature, read the Temperature value displayed
in the 1311s Monitor Motor menu (page 68). This is typically done when
the motor has not been run for many hours, to ensure the motor is at a known
(room) temperature. If the 1311 does not display the correct motor temperature,
contact your Curtis customer support engineer for help. If the correct motor
temperature is not displayed, or if there is no motor temperature sensor, this
setup procedure can continue only if the Sensor Enable is set to Off.
If the 1311 displays the correct motor temperature, continue with the
procedure and set up the Sensor Enable, Temperature Hot, and Temperature
Max parameters.
The Drive, Regen, Brake, EMR, and Interlock Current Limit parameters are a
percentage of the controllers full rated current. The controllers full rated current
is printed on the label of the controller. Set the ve current limit parameters
to your desired values.
Set the Nominal Voltage parameter to match the nominal battery pack voltage
of your system.
Before the throttle can be set up the interlock must be veried as Off, by reading the Interlock value displayed in the Monitor Inputs menu (page 64). If
the 1311 indicates the interlock is On, review how you set the Interlock Type
parameter (Main Contactor Menu) and turn the interlock off. Verify that the
1311 displays that the interlock is now Off. Contact your Curtis customer
76
5 INITIAL SETUP
support engineer to resolve any issues about the interlock before continuing
with the setup procedure.
Once you have veried the interlock is off, you can set up the throttle
input. The Throttle Type parameter must be set to match the type of throttle
(15) and wiring that you are using, as described on pages 1317. Adjust the
Forward Deadband, Forward Max, Reverse Deadband and Reverse Max parameters to match the range of your throttle. The Throttle Pot value displayed on
the Monitor Inputs menu (page 64) is useful when setting up these parameters.
For the forward and reverse directions, read the displayed throttle pot voltage
at the point when the throttle moves out of neutral and at the point just before
full throttle and enter these values for the deadband and max settings for that
direction. Set up the other parameters in the Throttle Menu as required by
the application.
You will be able to verify that your throttle settings are correct by
checking the Mapped Throttle value displayed in the Monitor Inputs menu
(page 64) over the entire range of throttle pot movement. The value displayed
for Mapped Throttle should be = 0% through the range of throttle motion
that is considered neutral. The displayed Mapped Throttle should be = 100%
through the range of motion that is considered forward throttle max and should
be = -100% through the range considered reverse throttle max. Contact your
Curtis customer support engineer to resolve any issues about the throttle setup
before continuing with the setup procedure.
If the brake function is not used by your application, set the Brake Enable
parameter = Off and Brake Type = 5.
Before the brake can be set up the interlock must be veried as Off, by
reading the Interlock value displayed in the Monitor Inputs menu (page 64).
If the 1311 indicates the interlock is On, review how you set the Interlock
Type parameter (Main Contactor Menu) and turn the interlock off. Verify
that the 1311 Monitor Menu displays that the interlock is now Off. Contact
your Curtis customer support engineer to resolve any issues about the interlock
before continuing with the setup procedure.
Once you have veried that the interlock is off, you can set up the brake
input. The Brake Type parameter must be set to match the type of brake throttle
(1, 2, 3, 5) and wiring that you are using, as described on pages 1317. Adjust
the Brake Deadband and Brake Max parameters to match the range of your brake
pot. The Brake Pot value displayed in the Monitor Inputs menu (page 64) is
useful when setting up these parameters. Read the displayed brake pot voltage
at the point when the brake moves out of neutral and at the point just before
full brake and enter in these values for the deadband and max settings. Set up
the other parameters in the Brake Menu as required by the application.
You will be able to verify that your brake settings are correct by checking
the Mapped Brake value displayed in the Monitor Inputs menu (page 64)
over the entire range of brake pot movement. The value displayed for Mapped
Brake should be = 0% through the range of brake pot motion that is considered
Curtis 1234/36/38 Manual, OS 11
77
5 INITIAL SETUP
neutral. The displayed Mapped Brake should be = 100% through the range of
motion that is considered max. Contact your Curtis customer support engineer
to resolve any issues about the brake setup before continuing with the setup
procedure.
Turn the KSI input Off and then On (to clear any parameter change faults)
and use the 1311 to check for faults in the controller. All faults must be cleared
before continuing with the setup procedure. Use Section 8 for help in troubleshooting. Contact your Curtis customer support engineer to resolve any issues
about the faults before continuing with the setup procedure.
bk
With the vehicle drive wheels still jacked up, no faults present in the controller,
the interlock Off (as veried in the Monitor Inputs menu, page 64), and both the
throttle and brake in neutral (Mapped Throttle = 0% and Mapped Brake = 0%
in the Monitor Inputs menu), the encoder direction can be checked. Use
the Monitor Motor menu (page 68) to view the Motor RPM display. Turn
the motor by hand and observe the sign of Motor RPM. Positive is forward
and negative is reverse. If you get a positive Motor RPM when you rotate the
motor in the forward direction, and a negative Motor RPM when you rotate
the motor in the reverse direction, the Swap Encoder Direction parameter is
correct and should not be changed. If you are getting negative Motor RPM
when rotating the motor forward, the Swap Encoder Direction parameter must
be changed. Cycle KSI power and repeat the procedure until you are satised
that the Swap Encoder Direction setting is correctly set. If the vehicle will use
the emergency reverse feature, the reverse direction (negative Motor RPM)
must be correctly selected so that when the Emergency reverse input is active
the motor will rotate in the reverse direction. Contact your Curtis customer
support engineer to resolve any issues about encoder direction or emergency
reverse before continuing with the setup procedure.
Now that you have the encoder direction set correctly, you can test to
see which direction the motor will spin due to how the three phase cables (U,
V, and W) are connected to the motor.
Cycle KSI input Off and then On (to clear any parameter change faults)
and use the 1311 to check for faults in the controller. All faults must be cleared
before continuing with the setup procedure.
Apply the interlock input and verify that the interlock = On (as veried
in the Monitor Inputs menu).
Then, while keeping the brake in neutral, select a direction and apply
throttle. The motor should begin to turn, but it may turn in the wrong direction. Observe the direction of rotation of the motor and if it is turning in the
wrong direction return the throttle to neutral, and change the setting of the Swap
Two Phases parameter. Cycle power, turn on interlock, and turn on direction.
Apply throttle and verify that the direction of rotation of the motor matches
78
5 INITIAL SETUP
C AU T I O N
the direction input. If the motor is turning in the correct direction but appears
to be ghting itself (struggling at full current while jerkily turning at very
low speed), change the setting of the Swap Encoder Direction parameter. If the
motor still does not respond properly you should contact your Curtis customer
support engineer to resolve any issues about encoder direction or emergency
reverse before continuing with the setup procedure.
Do not take the vehicle down off the blocks until the motor is responding properly.
Once the motor is responding properly, lower the vehicle to put the drive
wheels on the ground.
bl
bm
bn
79
6 TUNING GUIDE
TUNING GUIDE
Many aspects of vehicle performance can be optimized, using the wide variety
of adjustable parameters available to the 1234/36/38 controllers. Once a vehicle/motor/controller combination has been tuned, the parameter values can
be made standard for the system or vehicle model. Any changes in the motor,
the vehicle drive system, or the controller will require that the system be tuned
again to provide optimum performance.
Selecting the control mode (see page 27)
Before starting to tune your vehicles performance, you must select which control mode you use. Set the Control Mode Select parameter = 0 (Speed Mode
Express for either traction or pump motors), = 1 (Speed Mode, for either traction or pump motors) or = 2 (Torque Mode, for traction motors). Cycle KSI
input Off and then On (to clear any parameter change faults) and use the 1311
to check for faults in the controller. Then proceed to the tuning steps for the
control mode you have selected.
Conduct the steps in the sequence given, because successive steps build
upon the ones before. It is important that the effect of these programmable
parameters be understood in order to take full advantage of the 1234/36/38s
powerful features. Please refer to the descriptions of the applicable parameters
in Section 3 if there is any question about what any of them do.
0
Speed Mode Express is the same as Speed Mode with the exception that it has
fewer parameters and is therefore simpler to use. Most vehicle applications will
nd success with Speed Mode Express; however, for some applications vehicle
performance cannot be satisfactorily ne-tuned in Speed Mode Express. In
this case, change your control mode to Speed Mode (i.e., set Control Mode
Select =1).
a. For traction applications, set Pump Enable to Off. For AC pump applications, set this parameter On.
b. Adjust Max Speed to the maximum speed the motor should turn in the vehicle
application; this speed setting corresponds to an input of full throttle.
c. Adjust Typical Max Speed (page 53) to the approximate maximum speed
that the motor will spin. This is usually the same value as the setting for
Max Speed, but some applications have a Max_Speed_SpdMx that changes
(in the VCL software). If the Max_Speed_SpdMx changes, set Typical Max
Speed to the highest speed the motor is expected to reach. This value does not
need to be set precisely since it will not change motor performance. Typical
Max Speed sets a reference point for the rate parameters (accel, decel,
brake rates), so that applications that have a changing Max_Speed_SpdMx
will not experience changes in the rates (because the rates are referenced to
the unchanging Typical Max Speed value). Once you set the Typical Max
80
6 TUNING GUIDE
Speed parameter you should not readjust it without adjusting all the rate
parameters as well.
d. Kp and Ki typically do not need to be changed as the default values will
work well in most applications. If you want to adjust Kp (for looser or tighter
following of the speed trajectory set by the accel, decel, and brake rates),
follow the procedure in step d in the Speed Mode tuning section.
e. Adjust the Accel Rate and Decel Rate as necessary while moving the throttle
to different positions (i.e., neutral to full throttle, half throttle to full throttle,
full throttle to half throttle, full throttle to neutral, neutral to low throttle,
etc.). For AC pump applications, typically the Accel Rate and Decel Rate
are set very fast for quick response to hydraulic inputs.
f. Adjust the Brake Rate as necessary while reversing the throttle input (i.e., full
throttle forward to low throttle reverse, full throttle forward to full throttle
reverse, full throttle reverse to low throttle forward, etc.). If a brake input
is present in the application (Brake Pedal Enable = On) continue adjusting
Brake Rate by applying different amounts of brake throttle (i.e., full throttle
forward, then apply full brake or full throttle forward, then apply low brake,
etc.). For AC pump applications the Brake Rate has no effect on performance
since the AC pump will not run in reverse nor with a brake input.
AC pump motor applications, which in step a had the Pump Enable parameter
set to On, may also be controlling hydraulic valves (load hold valve, proportional
valve). The Proportional Driver parameters (page 50) and some VCL will typically be used to set up the control of these valve driver outputs. Consult with
your Curtis customer support engineer regarding hydraulic valve control.
1
SPEED MODE
a. For traction applications, set Pump Enable to Off. For AC pump applications set this parameter On.
b. Adjust Max Speed to the maximum speed the motor should turn in the vehicle
application; this speed setting corresponds to an input of full throttle.
c. Adjust the Typical Max Speed (page 53) to the approximate maximum speed
that the motor will spin. This is usually the same value as the setting for Max
Speed, but some applications have a Max_Speed_SpdM that changes (in
the VCL software). If the Max_Speed_SpdM changes, set the Typical Max
Speed to the highest speed the motor is expected to reach. This value does
not need to be set precisely since it will not change motor performance. Typical Max Speed sets a reference point for the rate parameters (accel, decel,
brake rates), so that applications that have a changing Max_Speed_SpdM
will not experience changes in the rates (because the rates are referenced to
the unchanging Typical Max Speed value). Once you set the Typical Max
Speed parameter you should not readjust it without adjusting all the rate
parameters as well.
Curtis 1234/36/38 Manual, OS 11
81
6 TUNING GUIDE
d. Kp typically does not need to be changed as the default value will work
well in most applications. This parameter controls how tightly the actual motor speed will track the requested speed trajectory (speed trajectory is set by the accel, decel, and brake rates).
If you want to adjust the Kp (for looser or tighter following of the speed
trajectory), follow these guidelines.
Set the following parameters. Before setting them, make a note
of their present (default) settings so you can return them to
these original values at the end of this procedure.
* If your vehicle has an EM Brake, set the Brake Type (page
46) to 1. This setting will release the EM Brake as soon as
interlock is asserted.
* In the Speed Mode Response menu, set all the accel and
decel rates to their fastest values (0.1 seconds); this allows
better observation of the system response.
* In the Speed Mode Speed Controller menu, set the Max
Speed to low value (1000 rpm), as high speed operation
is not needed to observe system response.
* Set Soft Stop Speed parameter to 0 rpm to disable the soft
stop speed function (see Restraint menu, page 38).
Cycle KSI to clear any faults.
Using very quick, pulsing throttle movements, increase the
throttle and then release it to 0%. The intent is to give the
speed controller torque impulses.
Increase Kp and repeat the throttle tests. Increase Kp until you
start to notice marginal stability (normally motor bouncing, or
continuous oscillation in the gears, is heard). Note: It is possible
that very heavy vehicles will not experience marginal stability
even at the highest setting of Kp.
Once the Kp setting for marginal stability is found, reduce
the Kp value in the 1311 by about one third (i.e., nal Kp =
marginal stability Kp * 2/3).
If you will be using Speed Mode Express, enter this Kp value
for the Kp parameter in the Speed Mode Express menu.
Set the Brake Type, Accel/Decel Rates, Max Speed, and Soft
Stop Speed back to their original values.
e. In the Speed Mode Response menu, adjust the ve Accel and Decel Rate
parameters as necessary while moving the throttle to different positions
(i.e., neutral to full throttle, half throttle to full throttle, full throttle to half
throttle, full throttle to neutral, neutral to low throttle, etc.). For AC pump
applications, these parameters are typically set very fast for quick response
to hydraulic inputs.
82
6 TUNING GUIDE
f. In the Speed Mode Response menu, adjust the remaining three brake rate
parameters as necessary while reversing the throttle input (i.e., full throttle
forward to low throttle reverse, full throttle forward to full throttle reverse,
full throttle reverse to low throttle forward, etc.).
If a brake input is present in the application (Brake Pedal Enable = On)
continue adjusting these three brake rates by applying different amounts of
brake throttle (i.e., full throttle forward, then apply full brake or full throttle
forward, then apply low brake, etc.). For AC pump applications these parameters have no effect on performance since the AC pump will not run in
reverse nor with a brake input.
g. The parameters in the Speed Mode Response Fine Tuning menu typically
do not need to be changed as the default values work well in most applications.
AC pump motor applications, which in step a had the Pump Enable parameter
set to On, may also be controlling hydraulic valves (load hold valve, proportional
valve). The Proportional Driver parameters (page 50) and some VCL will typically be used to set up the control of these valve driver outputs. Consult with
your Curtis customer support engineer regarding hydraulic valve control.
2
TORQUE MODE
a. Set Max Speed to the maximum speed you want to limit the motor to.
b. Kp, Ki, and Kd typically do not need to be changed as the default values will
work well in most applications. These parameters control how tightly the
controller limits the speed of the motor to the programmed Max Speed.
c. Set Typical Max Speed (page 53) to the expected maximum speed of the motor.
d. Adjust the parameters shown in Figure 9 (page 37) to set up the throttle
mapping:
Regen Current Limit (Current Limits menu, page 39)
Drive Current Limit (Current Limits menu, page 39)
Restraint Forward, Restraint Back (Restraint menu, page 38)
Neutral Braking (Torque Mode Response menu, page 35)
Neutral Taper Speed (Torque Mode Response menu, page 35)
Creep Torque (Torque Mode Response Fine Tuning menu, page 36).
e. In the Torque Mode Response menu, adjust the four accel, decel, and release
rate parameters as necessary while moving the throttle to different positions
(i.e., neutral to full throttle, half throttle to full throttle, full throttle to half
throttle, full throttle to neutral, neutral to low throttle, etc.).
f. The other parameters in the Torque Mode Response Fine Tuning menu
typically may need to be changed for some applications. Read the parameter
descriptions and adjust as necessary.
Curtis 1234/36/38 Manual, OS 11
83
7 VCL
84
7 VCL
The VCL functions described in the VCL Common Functions Manual are
available on 1234/36/38 controllers. These controllers also have these additional functions:
ENABLE_PRECHARGE()............ p. 103
DISABLE_PRECHARGE()........... p. 104
SET_DIGOUT()............................ p. 105
CLEAR_DIGOUT()....................... p. 105
ENABLE_EMER_REV()............... p. 106
DISABLE_EMER_REV().............. p. 106
SET_INTERLOCK() ..................... p. 107
CLEAR_INTERLOCK() ................ p. 107
SETUP_POT_FAULTS() .............. p. 108
START_PUMP() ........................... p. 109
STOP_PUMP() ............................ p. 109
These functions, which are not included in the VCL Common Functions
Manual, are described at the end of Section 7.
VARIABLE TYPES
VCL provides dedicated space in which to store custom variables. There are
four types of variables, based on their type of storage: volatile storage (RAM)
and three types of non-volatile storage (EEPROM) are available.
RAM variables are stored only while power is on; they are lost at powerdown. They must be initialized on power-up by explicit VCL assignments (i.e.,
User1 = 12).
NVUser115 EEPROM variables are 15 variables stored at power-down
and recalled by the operating system when the NVM_NVUser_Restore function is used. Thus, they can then be recalled at the next power-on cycle, which
restores their previous values. See the section on non-volatile memory access
in the VCL Common Functions manual for more information.
Block EEPROM are 38 blocks of 15 variables (total of 570 variables),
which are stored and recalled using the functions NVM_Block_Read and NVM_
Block_Write. The 38 blocks are called NVM3NVM40. The read and write
functions must point to the RAM variables that the EEPROM blocks should be
written from or read to. For example, NVM_Block_Read(NVM10,0,15,User20)
will read the 15 variables stored in EEPROM block NVM10 and restore
those variables to the 15 variables starting with RAM variable User20 (so the
15 EEPROM variables would be restored to User2034). See the section on
non-volatile memory access in the VCL Common Functions manual for more
information.
Parameters EEPROM variables are a special type of EEPROM variable
that is intended to be used to create OEM dened 1311 parameters. These 1311
parameters can be dened as 16-bit by using the P_User variables or they can
be dened as bit (On/Off ) by using the P_UserBit variables. These variables
Curtis 1234/36/38 Manual, OS 11
85
7 VCL
are typically written to EEPROM through the 1311 programmer interface (i.e.,
when a 1311 user changes a parameter setting using the 1311). They can be
used in the VCL code, but changing a P_User (or P_UserBit) value with VCL
will only change the variable value in RAM and will not change the value in
EEPROM. Thus, these variables are intended for creating and dening 1311
parameters only.
TYPE
RAM
QUANTITY
RANGE
120 variables
User1 User120
NVUser EEPROM
15 variables
NVUser1 NVUser15
Block EEPROM
38 blocks
(15 variables each)
NVM3 NVM40
Parameters EEPROM
P_User1 P_User100
P_UserBit1 P_UserBit20
VCL can modify the 1311 control mode parameters in RAM by using
the VCL variable name for the 1311 parameter. For example,
Brake_Rate_SpdM = 3000 ;Change Brake Rate to 3.0sec
will change the RAM value of the speed control modes Brake Rate; the new
value will be used in determining the Controller Torque Command. However,
the value of the stored EE value of this parameter remains unchanged; when
the controller is turned off, the RAM value will be lost. The next time the
controller is powered back on, the old value of Brake Rate will be restored
from EE memory. VCL cannot write to the EE memory. The 1311 parameter
settings in EE memory can be changed by using the 1311 to change the values
in the program menus.
86
7 VCL
INSTANCES
SERVICE RATE
ABS
Absolute Value
4 ms
ADC
1 ms
CAN
CAN Communications
15
4 ms
CPY
Copy
4 ms
DLY
Delay
32
1 ms
FLT
Filter
1 ms
LIM
Limit
4 ms
MAP
Map
4 ms
MTD
4 ms
NVM
Non-Volatile Memory
38
2 ms
PID
4 ms
POT
Potentiometer Input
8 ms
PWM
4 ms
RMP
Ramp
1 ms
SCL
Scaling
4 ms
SEL
4 ms
SEL_4P
32 ms
SW
Switch Input
1*
4 ms
TMR
Timers (hourmeters)
1 ms
The 1234 controller has at total of 16 digital inputs, and the 1236/38 has 15.
Eight are switch inputs (Sw_1 through Sw_8) on all the models; the 1234 has
a ninth switch input, Sw_16. These switch inputs are shown on the standard
wiring diagram (Figure 3, page 12). The remaining seven digital inputs are less
obvious: one on each driver and digital output (Sw_9 through Sw_15). These
can be used as digital inputs or to sense the state of the output or its wiring
(e.g., open coil check).
To address a digital input in a VCL program, use the desired input label
(Sw_1 through Sw_16). You must use On or Off in the code when determining
a switch state; using true/false or 1/0 will give erroneous results.
87
7 VCL
if
(Sw_1 = ON)
{
;put code here to run when switch 1 is On
}
if (Sw_16 = OFF)
{
;put code here to run when switch 16 is Off
}
All switch inputs are automatically debounced by the VCL operating system.
This prevents noisy contacts or contact bounce from causing erroneous events
in your VCL code. The debounce time can be varied from 0 to 32 milliseconds
in 4ms steps, using this function:
Setup_Switches(5); 20 milliseconds
If this line is not in the VCL code, the debounce time is set at 16 ms.
Driver and Digital Outputs
There are ve driver outputs (PWM1 through PWM5) and two digital outputs (DigOut6 and DigOut7). These outputs have variations in current and
frequency range. For their specications, see high power outputs and low
power outputs on page 19.
Driver outputs have high current FET output stages and can be pulse
width modulated (PWM) to vary the average output to inductive loads such
as contactors and relays. This is useful when the battery voltage needs to be
brought down for lower voltage coils. The two digital outputs on the 1236/38
are low current NPN transistor drivers that are only On or Off. They work well
for driving LEDs or for interfacing to another digital device. The two digital
outputs on the 1234 are 1-amp drivers that are only On or Off.
Drivers use a special VCL function to set their PWM level. This PWM
level can be set up in a signal chain to update automatically or can be set directly in the main loop. PWM can be set from 0100% using the digital range
of 0 to 32767.
Put_PWM(PWM2,16384)
will continually update the Driver 2 output with the present value of variable
User1. This automate statement needs only to be run once, usually in the initialization section of the VCL program. VCL can monitor the present value of
a PWM driver: the variable PWMx_Output (where x is the PWM channel
number) is automatically lled with the present value of the driver output.
The proportional driver (Driver 5) is different from Drivers 14. It can
be controlled in two ways: with the proportional driver processing function (see
Figure 17, page 97) or with the VCL Put_PWM() function. The VCL statement
Put_PWM(PWM5, 16383) will result in a 50% PWM output on pin 2 only
if the parameter PD Enable is set to Off. See page 95 for more information on
interfacing the proportional driver.
Control of the two digital outputs (Digital Outputs 6 and 7) is done
using the VCL functions Set_Digout() and Clear_Digout().
88
7 VCL
Set_DigOut(DigOut6)
will set Digital Output 6 On (active). VCL can monitor the present value of
a digital output driver: the bit variable Digx_Output (where x is the digital
output channel number) is automatically lled with the present value of the
driver output (On or Off ).
It is important to note that all outputs are active Low. With 100% PWM
or an output of On, the FET or transistor will be pulling hard to ground. A
DVM on the output will measure near 0 volts.
Potentiometer Inputs
These controllers have two potentiometer inputs, which are typically used for
throttle and brake. Many features (mapping, acceleration rates, etc.) are built
in as 1311 parameters. Still, there are times that these potentiometer inputs
may be needed for other functions such as steering angle or height sensing,
or simply as data inputs. The standard way to input pot information is to set
the 1311 parameter Throttle Type (or Brake Type) to an appropriate value of
14 as shown on pages 1316. When set to a value of 14, the resulting signal
chain can operate without the use of any VCL.
However, if an OEM wishes to control the throttle (or brake) signal chain
in VCL or use the throttle (or brake) inputs for signals that are not throttle (or
brake) signals, then the 1311 parameter Throttle Type (or Brake Type) should
be set to a value of 5 (page 17). Setting the 1311 parameter Throttle Type (or
Brake Type) to a value of 5 changes the routing of the appropriate signal chain
(either throttle or brake) and allows the VCL programmer access to the Throttle
Pot (or Brake Pot) output variables; see Figure 15 (page 92).
When the Throttle Type setting = 5, the Throttle_Pot_Output is a VCL
variable that the OS will update with the current value of the throttle pot input.
Similarly, when the Brake Type setting = 5, the Brake_Pot_Output is a VCL
variable that the OS will update with the current value of the brake pot input.
However, the value of the Throttle_Pot_Output (or Brake_Pot_Output) will
remain clamped to zero until the VCL function Setup_Pot() is executed.
Typically the Setup_Pot() function is executed at the beginning of a VCL
program to dene the potentiometer input connection as THREE_WIRE (uses Pot
High and Pot Low connections), TWO_WIRE (variable resistor, or rheostat, uses
Pot Low but no connection to Pot High), or ONE_WIRE (a voltage input, no
connection to either Pot High or Pot Low). THREE_WIRE potentiometer connections are the same as the 3-wire potentiometer connections shown on page 15
for a Throttle Type 2. TWO_WIRE potentiometer connections are the same as
the 2-wire potentiometer connections shown on page 14 for a Throttle Type 1.
ONE_WIRE potentiometer connections are the same as the Voltage Source or
Current Source connections shown on page 15 for a Throttle Type 2.
Note that the Setup_Pot() function will only work (and is only needed)
if the corresponding Type is set to 5 (Throttle Type = 5 or Brake Type = 5).
Setup_Pot(THROTTLE_POT,THREE_WIRE)
will set up the throttle pot input for wiring using all three connections (pins
15, 16, 18).
Curtis 1234/36/38 Manual, OS 11
89
7 VCL
To set up the brake pot input for use in VCL, use the Brake_Pot constant
in place of the Thottle_Pot constant in the Setup_Pot function.
Setup_Pot(BRAKE_POT,TWO_WIRE)
will set up the brake pot input for wiring using two connections (pins 17, 18).
The 0100% position of the potentiometer is represented by a value from
032767 in VCL. Once set up (through the VCL Setup_Pot() function) the
potentiometer value is automatically and continuously loaded into the variable
Throttle_Pot_Output or Brake_Pot_Output. It is important to use the correct
setup (ONE_WIRE, TWO_WIRE, or THREE_WIRE) since the input is automatically
re-scaled for 0100% based on the wiring used; for example, the voltage at the
Pot Low pin is automatically subtracted and re-scaled on a THREE_WIRE pot.
Another effect of setting the Throttle Type = 5 is that the signal chain
for the throttle now gets its input from a different source. The input to the
throttle chain is now a VCL variable called VCL_Throttle instead of the
throttle pot. Similarly, Brake Type = 5 means the brake signal chain will get
its input from a VCL variable called VCL_Brake rather than from the brake
pot. The VCL_Throttle and VCL_Brake variables will need to be controlled
in the VCL program.
One of the unique features of the potentiometer inputs (as opposed to the
analog inputs) is that they have automatic pot fault detection functions running in the motor controller OS. The VCL programmer has access to the pot
detection functions with the Setup_Pot_Faults() function. With this function,
VCL can set the high and low threshold at which a fault occurs. This function
also forces the pot value to a denable level if a fault occurs. Note that the
Setup_Pot_Faults() function will work for all throttle Types (15). See page 108
for more detail on this function.
Analog Inputs
These controllers have two generic analog inputs (pins 24 and 8). These are
shared as switch inputs 1 and 2 (Sw_1, Sw_2). The values of the analog inputs
are automatically placed in VCL variables Analog1_Input and Analog2_Input
every 1 millisecond. Scaling is 010V = 01023.
User2 = Analog2_Input
will ll the User2 RAM variable with the value of the voltage at pin 8.
The ltered values of the analog inputs are also available and are automatically placed in VCL variables Analog1_Filtered and Analog2_Filtered.
Scaling is 010V = 01023. The default lter value is 328 (10 Hz) and can be
changed in VCL by changing the Analog1_Filter and Analog2_Filter values.
Scaling is 0999Hz = 032767.
Analog Output
These controllers have one analog output (pin 30). This output is a special
driver output. The switching stage is ltered to provide a smooth average
voltage, instead of the actual PWM waveform seen on Drivers 15. However,
90
7 VCL
will generate 2.0 volts at the analog output. VCL can monitor this output using
the variable Analog_Output.
INTERFACING THE THROTTLE AND BRAKE COMMANDS
VCL can interface and modify the throttle and brake signals at several points, from
the potentiometer to the nal motor controller command. VCL can be used to
create a completely unique command, adjust parameters to provide MultiMode,
or modify the throttle command based on steering angle, height, etc.
The throttle and brake signal chains within the controller are sophisticated and exible. Before applying VCL to modify these chains, it is important
to fully understand the ramications of these changes. The motor command
diagram is presented in Figure 14.
Throttle Processing
The top of Figure 14 shows the throttle processing section. The throttle signal
chain ows left to right starting with the physical throttle pot. The voltage on
the throttle wiper input (pin 16) is input into the controller and has the VCL
variable name Throttle_Pot_Raw which is displayed in the 1311 Monitor Inputs
menu. This throttle signal is then modied by the Throttle Type Processing
and Throttle Mapping blocks.
The Throttle Type Processing block combines the Throttle_Type parameter
(see page 42) and the throttle potentiometer input (Throttle_Pot_Raw) to create a 16-bit variable containing the magnitude of the raw command. This raw
command passes to the Throttle Mapping block, which re-shapes the throttle
signal magnitude and direction based on the various Throttle Menu parameters
(see pages 4243) and the direction inputs.
Following the Throttle Mapping block are two switches whose purpose
is to give the throttle signal a small value (1 for the forward switch, and -1 for
the reverse switch) to indicate that a direction switch is Onbut only if the
throttle signal output from the Throttle Mapping block = 0.
The signal then passes through a selector switch. If the Throttle_Type
parameter is set to 5 (Throttle Type = VCL input, see page 42), the Throttle
Mapping block output signal is ignored and the command comes from the
VCL variable VCL_Throttle. The VCL program manipulates the VCL_Throttle
variable to get a throttle command. When the Throttle Type is set to 14, the
variable VCL_Throttle does nothing, and the Throttle Mapping block output
signal passes through.
After the Throttle Type = 5 switch, the throttle signal is modied by the
multiplying and summing nodes. These nodes can be adjusted by VCL through
the variables Throttle_Multiplier and Throttle_Offset. This is the basic input
point for creating functions like MultiMode, dual drive algorithms, and height
vs. speed control. Note that the throttle multiplier has a built-in divide by 128.
Curtis 1234/36/38 Manual, OS 11
91
7 VCL
92
7 VCL
This allows the VCL to either multiply (Throttle_Multiplier > 128) or divide
(Throttle_Multiplier < 128) the nominal throttle value. Typically the default
multiplier is set to 128, thus having no net effect. Both Throttle_Multiplier
and Throttle_Offset can be positive or negative.
The output of the multiplying and summing nodes is a VCL variable
called Mapped_Throttle, which is displayed in the 1311 Monitor Inputs menu.
Checking the value of Mapped_Throttle using the 1311 is a good way to see if
your Throttle Menu parameters are set correctly. A VCL program can control
the throttle by changing the variables VCL_Throttle (only if Throttle Type = 5),
Throttle_Multiplier, and Throttle_Offset. The effect of these variables can be
observed as Mapped_Throttle in the 1311 Monitor Inputs menu.
Mapped_Throttle next passes through a limiter that is active only if a pump
motor is being operated (Pump Enable = On, see page 33). When active, this
function limits the throttle signal to only positive (forward) motion, which is
appropriate for controlling a hydraulic pump motor.
The throttle signal continues to a selector switch that will set the throttle
signal = 0% if any of the following conditions is present: Interlock_State = Off
(see page 64), a fault has set throttle request = 0% (see the Troubleshooting
Chart, Table 5), or if Main_State 5 or 10 (see page 69).
After this selector switch the throttle signal is a VCL variable called
Throttle_Command, which is displayed in the 1311 Monitor Inputs menu.
Throttle_Command is the nal value of the throttle signal chain that is input
to the Control Mode Processing block; see Figure 16. Checking the value of
Throttle_Command using the 1311 is a good way to see the nal throttle signal. If ABS(Throttle_Command) > 1 count, the motor controller will output
signals to the motor to make it spin.
For investigating why a motor is not spinning, it is useful to use the
1311 to check the state of the throttle signal from beginning to end: using
Throttle_Pot_Raw, Mapped_Throttle, and Throttle_Command. Once these
values are known, the Motor Command Diagram (Figure 15) can be used to
nd how that signal progressed from input to nal value.
The following throttle processing variables are accessible by VCL:
VCL VARIABLE
ACCESS
Throttle_Pot_Raw
Read Only
Throttle_Pot_Output
Read Only
OS_Throttle
Read Only
Mapped_Throttle
Read Only
VCL_Throttle
Read/Write
Throttle_Multiplier
Read/Write
Throttle_Offset
Read/Write
Throttle_Command
Read Only
DESCRIPTION
93
7 VCL
Brake Processing
Brake processing is optional as it can be turned Off (by setting Brake_Pedal_Enable = Off, see page 45). If turned On, brake processing can be done with or
without VCL. Any non-zero brake command will then override the throttle signal
and the motor controller will brake to a stop as determined by the parameters
Brake Current Limit (page 39) and Brake Taper Speed (page 36).
The lower part of Figure 15 shows the brake signal processing section.
The brake signal chain ows from left to right starting with the physical brake
pot. The voltage on the brake wiper input (pin 17) is input into the controller and has the VCL variable name Pot2_Raw which is displayed in the 1311
Monitor Inputs menu. This brake signal is then modied by the Brake Type
Processing and Brake Mapping blocks.
The Brake Type Processing block uses the Brake_Type parameter (page 45)
and the brake potentiometer input (Pot2_Raw) to create a signed 16-bit variable.
This brake signal then passes to the Brake Mapping block, which re-shapes the
brake signal according to the various Brake Menu parameters (page 45).
The signal then passes through a selector switch. If the Brake_Type parameter is set to 5 (Brake Type = VCL input, see page 45), the Brake Mapping
block output signal is ignored and the command comes from the VCL variable
VCL_Brake. The VCL program manipulates the VCL_Brake variable to get a
brake command. Custom braking functions can be set up in this fashion; e.g.,
braking based on a switch position or an internal fault. The brake potentiometer
can still be used, but must be set up using the Setup_Pot() function. When the
Brake Type is set to 14, the variable VCL_Brake does nothing and the Brake
Mapping block output signal passes through.
After the Brake Type = 5 switch, the brake signal passes through a limiter
which limits the brake signal to a range of 0100% (032767). After the limiter
the brake signal is a VCL variable called Mapped_Brake, which is displayed in
the 1311 Monitor Inputs menu. Checking the value of Mapped_Brake using
the 1311 is a good way to see if your Brake Menu parameters are set correctly.
A VCL program can control the brake by changing the variable VCL_Brake
(only if Brake Type = 5).
The brake signal then goes through a second selector switch that will set
the brake signal = 0% if the Brake Pedal Enable parameter (page 45) is set Off.
If set On then the brake signal will pass through. The brake signal after this
second selector switch is a VCL variable called Brake_Command, which is
displayed in the 1311 Monitor Inputs menu.
Brake_Command is the nal value of the brake signal chain that is input
to the Control Mode Processing block; see Figure 15. Checking the value of
Brake_Command using the 1311 is a good way to see the nal brake signal.
If Brake_Command is non-zero in Speed Mode Express or Speed Mode, the
throttle signal will be set to 0%.
94
7 VCL
ACCESS
DESCRIPTION
Pot2_Raw
Read Only
Brake_Pot_Output
Read Only
OS_Brake
Read Only
VCL_Brake
Read/Write
Mapped_Brake
Read Only
Brake_Command
Read Only
95
7 VCL
96
7 VCL
ACCESS
DESCRIPTION
Mapped_Throttle
Read Only
VCL_PD_Throttle
Read/Write
VCL-accessible PD command
PD_Throttle
Read Only
PD_Current
Read Only
PD_Output
Read Only
97
7 VCL
98
Status1
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
Status2
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
Status3
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
Status4
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
7 VCL
Status5
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
Status6
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
Not Used
Not Used
Emer Rev HPD (Code 47)
Not Used
Motor Type Fault (Code 89)
Not Used
Motor Characterization Fault (Code 87)
Pump Hardware Fault (Code 97) model 1298
Status7
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
Not Used
VCL/OS Mismatch (Code 91)
EM Brake Failed to Set (Code 92)
Encoder LOS (Limited Operating Strategy) (Code 93)
Emer Rev Timeout (Code 94)
Dual Severe Fault (Code 75)
Fault On Other Traction Controller (Code 74)
Illegal Model Number (Code 98)
Status8
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
controllers only
only
99
7 VCL
=
=
=
=
=
=
=
=
VCLfault1
VCLfault2
VCLfault3
VCLfault4
VCLfault5
VCLfault6
VCLfault7
VCLfault8
UserFault2
*
Bit0
*
Bit1
*
Bit2
*
Bit3
*
Bit4
*
Bit5
*
Bit6
*
Bit7
=
=
=
=
=
=
=
=
VCLfault9
VCLfault10
VCLfault11
VCLfault12
VCLfault13
VCLfault14
VCLfault15
VCLfault16
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
(Code
51)
52)
53)
54)
55)
56)
57)
58)
59)
61)
62)
63)
64)
65)
66)
67)
The Code numbers result in the ashing of the controller status LEDs that
help identify the fault without use of a 1311. Setting the fault in VCL is done
by setting the associated fault bit in the UserFault1 and 2 variables. Clearing
the fault must also be handled by VCL and is done by clearing the associated
fault bit. For example:
if (BDI-Percentage < 10)
{
UserFault1.2 = ON
}
else
{
UserFault1.2 = OFF
}
This VCL will check to see if the Battery Discharge Indicator is less than 10%.
If it is, UserFault1 Bit1 (Code 52) is set. If the BDI is not less than 10%, the
fault is cleared. Using just the VCL above in a program will only result in the
ashing of a code 52 on controller status LEDs and no fault actions will result
nor will the 1311 display any text about the fault.
100
7 VCL
To add automatic fault actions to the VCL faults, the VCL programmer must dene the desired fault actions by using the sixteen VCL variables:
User_Fault_Action_01 through User_Fault_Action_16. Each of the UserFault
bits has a corresponding User_Fault_Action_xx variable (where xx is the
number of the VCL fault bit). When a VCL fault bit is set, the actions dened
in the corresponding User_Fault_Action_xx variable will be automatically
executed by the operating system. Here are the fault actions available in the
User_Fault_Actions_xx variables:
VARIABLE
FAULT ACTION
User_Fault_Action_xx
*
Bit0 = ShutdownMotor
*
Bit1 = ShutdownMainContactor
*
Bit2 = ShutdownEMBrake
*
*
*
*
*
*
*
*
*
*
Bit3 = ShutdownThrottle
Bit4 = ShutdownInterlock
Bit5 = ShutdownDriverl
Bit6 = ShutdownDriver2
Bit7 = ShutdownDriver3
Bit8 = ShutdownDriver4
Bit9 = ShutdownPD
Bit10 = FullBrake
Bit11 = ShutdownPump
Bit12 = TrimDisable
Bit13 = SevereDual
*
*
Bit14 = ShutdownSteer
Bit15 = LOSDual
MainLoop:
if (BDI_Percentage < 10)
{
UserFault1.2 = ON
Put_Spy_Text(BDI Low)
}
else
{
UserFault1.2 = OFF
}
goto MainLoop
This time when UserFault1.2 is set, the operating system will ShutdownInterlock
and ShutdownThrottle (which will result in a Throttle_Command = 0%) in
Curtis 1234/36/38 Manual, OS 11
101
7 VCL
MainLoop:
if (BDI_Percentage < 10)
{
UserFault1.2 = ON
Put_Spy_Text(BDI Low)
}
else
{
UserFault1.2 = OFF
}
goto MainLoop
;
;
;
;
;
;
;
;
PARAMETER_ENTRY
TYPE
WIDTH
ALT_ADDRESS
ADDRESS
BITSELECT
BITACTIVELOW
END
This example will result in the exact same actions as the last example, except
now the fault will be displayed in the 1311 System Faults menu (only while
the fault is set) and this fault will be logged into the 1311 Fault History menu
after being set. The text displayed in either of these 1311 menus will be the
text dened in the fault denition (in this example BDI Low Fault will be
displayed). The variable Hist_UserFault1 is listed as an ALT_ADDRESS. This
line controls whether the fault gets logged into fault history (and thus appears
in the 1311 Fault History menu). The two variables that can be used in the
fault denitions for ALT_ADDRESS are Hist_UserFault1 and Hist_UserFault2;
these should be used in the fault denitions with the corresponding UserFault1
and UserFault2 variables. If you wish to use VCL to clear fault history, use the
VCL function Clear_Diaghist(). Also note that this example fault denition
was for bit 1 of UserFault1. The VCL example set and cleared this bit by using
the UserFault1.2 notation (.2 being the mask that denes bit 1).
102
7 VCL
ENABLE_PRECHARGE()
This function is designed to precharge the capacitor bank before engaging a main
contactor thereby preventing current surges and to protect controller internal components and main contactor tips. This function turns on the request for precharge
of the capacitor bank from KSI. When the precharge function is enabled, power will
be supplied to the capacitor bank until the voltage is within 3 volts of KSI, or one
second has expired, or the precharge resistor energy range has been exceeded. The
current state of precharge is shown by the precharge variable (Precharge_State),
which has the following values:
0
1
2
3
4
5
Precharge
Precharge
Precharge
Precharge
Precharge
Precharge
Syntax
Enable_Precharge()
Parameters
None.
Returns
0 Precharge not enabled.
1 Precharge successfully enabled.
Error Codes
None.
Example
Enable_Precharge()
This will attempt to precharge the capacitor bank.
103
7 VCL
DISABLE_PRECHARGE()
This function is designed to abort the precharge function and clear any precharge
fault. This function aborts the request for precharge of the capacitor bank from KSI.
The resultant state of the precharge variable (Precharge_State) will be set to = 3
(for precharge aborted). The precharge states are:
0
1
2
3
4
5
Precharge
Precharge
Precharge
Precharge
Precharge
Precharge
Syntax
Disable_Precharge()
Parameters
None.
Returns
0 Precharge not aborted.
1 Precharge successfully aborted.
Error Codes
None.
Example
Disable_Precharge()
This will attempt to abort the precharge of the capacitor bank and will clear any
precharge fault.
104
7 VCL
SET_DIGOUT()
This function turns on the selected digital output. The digital outputs are active low
(On = driver on and pulled to ground, Off = open circuit at the pin).
The low power digital output is protected from excessive current (current over
15 mA); a fault will occur when this current has been exceeded, and the driver will
be shut off (open). Running the function again will reactivate the driver, and will
attempt to clear the fault.
Syntax
Set_Digout(DigOut_ID)
Parameters
DigOut_ID is the low power digital I/O identication.
DigOut6 = Digital Output 6 (pin 19).
DigOut7 = Digital Output 7 (pin 20).
Returns
0 Selected digital output not set.
1 Selected digital output successfully set.
Error Codes
Bad_ID is returned when DigOut_ID is not in the range of DigOut6 to
DigOut7.
Example
Set_Digout(DigOut6)
This example will set Digital Output 6 (pin 19) On (active low, pulled to ground).
CLEAR_DIGOUT()
This function turns off the selected digital output. The digital outputs are active low
(On = driver on and pulled to ground, Off = open circuit at the pin).
Syntax
Clear_Digout(DigOut_ID)
Parameters
DigOut_ID is the low power digital I/O identication.
DigOut6 = Digital Output 6 (pin 19).
DigOut7 = Digital Output 7 (pin 20).
Returns
0 Selected digital output not cleared.
1 Selected digital output successfully cleared.
Error Codes
Bad_ID is returned when DigOut_ID is not in the range of DigOut6 to
DigOut7.
Example
Clear_Digout(DigOut6)
This example will set Digital Output 6 (pin 19) Off (open circuit).
105
7 VCL
ENABLE_EMER_REV()
This function is used to engage emergency reverse using VCL. The 1311 EMR
Type must be set to = 1 in order for the Enable_Emer_Rev() function to operate.
If the system emergency reverse state is enabled (EMR_State bit variable = On),
the emergency reverse function will operate according to the Emergency Reverse
parameter settings; see page 59. To view the current emergency reverse state, see
the 1311 menu Monitor Inputs: Emer Rev.
When the EMR_Type is set to = 1 and neither the Enable_Emer_Rev() nor the
Disable_Emer_Rev() function has been called, the state for emergency reverse is
Off (EMR_State bit variable = Off).
Syntax
Enable_Emer_Rev()
Parameters
None.
Returns
0 Emergency reverse not enabled.
1 Emergency reverse successfully enabled.
Error Codes
None.
Example
Enable_Emer_Rev()
This will enable the emergency reverse function.
DISABLE_EMER_REV()
This function is used to disengage emergency reverse using VCL. The 1311 EMR
Type must be set to = 1 in order for the Disable_Emer_Rev() function to operate.
If the system emergency reverse state is disabled (EMR_State bit variable = Off),
the emergency reverse function will stop operating and normal motor control function will resume (including an HPD/SRO check if the HPD/SRO Enable parameter
is set to On). To view the current emergency reverse state, see the 1311 menu
Monitor Inputs: Emer Rev.
When the EMR_Type is set to = 1 and neither the Enable_Emer_Rev() nor the
Disable_Emer_Rev() function has been called, the state for emergency reverse is
Off (EMR_State bit variable = Off).
Syntax
Disable_Emer_Rev()
Parameters
None.
Returns
0 Emergency reverse not disabled.
1 Emergency reverse successfully disabled.
Error Codes
None.
Example
Disable_Emer_Rev()
This will disable the emergency reverse function.
106
7 VCL
SET_INTERLOCK()
This function is used to engage the system interlock using VCL. The 1311 Interlock
Type parameter must be set to = 1 in order for the Set_Interlock() function to operate.
If the system interlock is set (Interlock_State bit variable = On), the throttle input
signal is allowed to pass along the throttle chain; see Figure 15. Additionally, if the
main contactor is used (1311 Main Enable parameter = On), setting the interlock
will request the main closed state from the main contactor state machine. To view
the current interlock state, see the 1311 menu Monitor Inputs: Interlock. To view the
current main contactor state, see the 1311 menu Monitor Controller: Main State.
When the Interlock_Type is set to = 1 and neither the Set_Interlock() nor the
Clear_Interlock() function has been called, the state for the interlock is Off (Interlock_State bit variable = Off).
Syntax
Set_Interlock()
Parameters
None.
Returns
0 Interlock not set.
1 Interlock successfully set.
Error Codes
None.
Example
Set_Interlock()
This will engage the system interlock.
CLEAR_INTERLOCK()
This function is used to disengage the system interlock using VCL. The 1311 Interlock Type parameter must be set to = 1 in order for the Set_Interlock() function
to operate. If the system interlock is cleared (Interlock_State bit variable = Off), the
throttle input signal is not allowed to pass along the throttle chain; see Figure 14.
Additionally, if the main contactor is used (1311 Main Enable parameter = On),
clearing the interlock will request the main open state from the main contactor state
machine. To view the current interlock state, see the 1311 menu Monitor Inputs:
Interlock. The view the current main contactor state, see the 1311 menu Monitor Controller: Main State.
When the Interlock_Type is set to = 1 and neither the Set_Interlock() nor
Clear_Interlock() function has been called, the default state for the interlock is Off
(Interlock_State bit variable = Off).
Syntax
Clear_Interlock()
Parameters
None.
Returns
0 Interlock not cleared.
1 Interlock successfully cleared.
Error Codes
None.
Example
Clear_Interlock()
This will disengage the system interlock.
107
7 VCL
SETUP_POT_FAULTS()
This function sets the upper and lower wiper fault voltages for a given pot input and
sets the replacement wiper voltage value that will be used if there is a fault. The
valid range for the function parameters is 06.25 V (0400 counts). If this function
is not run, the default thresholds depend on the 1311 Throttle Type (or Brake Type)
parameter setting; see table below. If the Throttle Type = 5 (or Brake Type = 5), the
VCL function Setup_Pot will determine what fault thresholds are used.
THROTTLE TYPE
1
2
3
4
0.1 V
none
0.1 V
0.1 V
none
0.1 V
0.1 V
5.5 V
5.5 V
5.5 V
5.5 V
5.5 V
5.5 V
5.5 V
5 (ONE_WIRE)
5 (TWO_WIRE)
5 (THREE_WIRE)
Syntax
Setup_Pot_Faults(Pot_ID,Low_Fault,High_Fault,
Fault_Value)
Parameters
Pot_ID identies the throttle whose fault limits are being set:
THROTTLE_POT
BRAKE_POT
Low_Fault
Species the lower threshold voltage limit.
Scaling: 1 V = 64 counts.
High_Fault
Species the upper threshold voltage limit.
Scaling: 1 V = 64 counts.
Fault_Value
The value that is used for the pot input when there is a fault (032767).
Scaling: 32767 = 100%.
Returns
0 Setup did not execute.
1 Setup successful.
Error Codes
Bad_ID is returned when an incorrect pot ID is used.
Param_Range is returned when the voltage value is not within range.
Example
Setup_Pot_Faults(THROTTLE_POT,19,320,4000)
For the throttle pot, this will set the lower pot voltage at 0.3 volts (19/64) and the
upper pot voltage at 5.0 volts (320/64). When there is a pot fault, the value of 4000
will be used. That is 4000/32767 of the full output, or roughly 12%.
108
7 VCL
START_PUMP()
This function is used to turn on the pump lift contactor. If the 1311 parameter
Drivers Hydraulic Contactor Contactor Enable = On (VCL HydraulicContactorEnable
bit variable = On), the VCL function Start_Pump() will turn on the pump lift contactor
(Driver 3).
When HydraulicContactorEnable = On and neither Start_Pump() nor Stop_
Pump() has been called, the pump lift contactor is Off.
Syntax
Start_Pump()
Parameters
None.
Returns
0 Pump start function not enabled.
1 Pump start function successfully enabled.
Error Codes
None.
Example
Start_Pump()
This will turn on the pump lift contactor.
STOP_PUMP()
This function is used to turn off the pump lift contactor. If the 1311 parameter
Drivers Hydraulic Contactor Contactor Enable = On (VCL HydraulicContactorEnable
bit variable = On), the VCL function Start_Pump() will turn off the pump lift contactor
(Driver 3).
When HydraulicContactorEnable = On and neither Start_Pump() nor Stop_
Pump() has been called, the pump lift contactor is Off.
Syntax
Stop_Pump()
Parameters
None.
Returns
0 Pump stop function not enabled.
1 Pump stop function successfully enabled.
Error Codes
None.
Example
Stop_Pump()
This will turn off the pump lift contactor.
109
YELLOW
RED
YELLOW
(rst digit)
(2)
(second digit)
(3)
The numerical codes used by the yellow LED are listed in the troubleshooting
chart (Table 5), which also lists possible fault causes and describes the conditions that set and clear each fault.
110
STATUS
TROUBLESHOOTING
The troubleshooting chart, Table 5, provides the following information on all
the controller faults:
fault code
fault name as displayed on the programmers LCD
the effect of the fault
possible causes of the fault
fault set conditions
fault clear conditions.
Whenever a fault is encountered and no wiring or vehicle fault can be found,
shut off KSI and turn it back on to see if the fault clears. If it does not, shut
off KSI and remove the 35-pin connector. Check the connector for corrosion
or damage, clean it if necessary, and re-insert it.
111
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
12
Controller Overcurrent
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
13
14
Precharge Failed
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
15
16
17
Severe Undervoltage
Reduced drive torque.
112
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
18
Severe Overvoltage
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
22
23
Undervoltage Cutback
Reduced drive torque.
24
Overvoltage Cutback
Reduced brake torque.
25
26
113
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
27
28
29
31
31
Main Open/Short
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
32
32
EMBrake Open/Short
ShutdownEMBrake;
ShutdownThrottle;
FullBrake.
33
34
114
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
35
PD Open/Short
ShutdownPD.
36
Encoder Fault
ShutdownEMBrake.
37
Motor Open
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
38
39
41
42
43
115
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
44
45
46
EEPROM Failure
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
ShutdownInterlock;
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
47
HPD/Sequencing Fault
ShutdownThrottle.
47
49
116
POSSIBLE CAUSE
EFFECT OF FAULT
SET/CLEAR CONDITIONS
68
69
71
OS General
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
ShutdownInterlock;
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
72
PDO Timeout
ShutdownInterlock;
CAN NMT State set
to Pre-operational.
73
Stall Detected
ShutdownEMBrake;
Control Mode changed
to LOS (Limited Operating
Strategy).
1.
2.
3.
4.
74
75
Stalled motor.
Motor encoder failure.
Bad crimps or faulty wiring.
Problems with power supply for
the motor encoder.
5. See Monitor menu Motor:
Motor RPM.
Dual Drive fault: see Dual Drive manual.
117
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
87
89
91
VCL/OS Mismatch
ShutdownMotor;
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
ShutdownInterlock;
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
92
93
118
POSSIBLE CAUSE
SET/CLEAR CONDITIONS
94
98
99
Dualmotor Parameter Mismatch Dual Drive fault: see Dual Drive manual.
119
9 MAINTENANCE
MAINTENANCE
There are no user serviceable parts in Curtis 1234/36/38 controllers. No attempt
should be made to open, repair, or otherwise modify the controller. Doing
so may damage the controller and will void the warranty.
It is recommended that the controller and connections be kept clean and
dry and that the controllers fault history le be checked and cleared periodically.
CLEANING
C AU T I O N
Periodically cleaning the controller exterior will help protect it against corrosion
and possible electrical control problems created by dirt, grime, and chemicals
that are part of the operating environment and that normally exist in battery
powered systems.
When working around any battery powered system, proper safety
precautions should be taken. These include, but are not limited to: proper
training, wearing eye protection, and avoiding loose clothing and jewelry.
Use the following cleaning procedure for routine maintenance. Never use
a high pressure washer to clean the controller.
1. Remove power by disconnecting the battery.
2. Discharge the capacitors in the controller by connecting a load
(such as a contactor coil) across the controllers B+ and Bterminals.
3. Remove any dirt or corrosion from the power and signal
connector areas. The controller should be wiped clean with a
moist rag. Dry it before reconnecting the battery.
4. Make sure the connections are tight. Refer to Section 2, page 5,
for maximum tightening torque specications for the battery
and motor connections.
FAULT HISTORY
The 1311 programmer can be used to access the controllers fault history le.
The programmer will read out all the faults the controller has experienced
since the last time the fault history le was cleared. Faults such as contactor
faults may be the result of loose wires; contactor wiring should be carefully
checked. Faults such as overtemperature may be caused by operator habits or
by overloading.
After a problem has been diagnosed and corrected, it is a good idea to
clear the fault history le. This allows the controller to accumulate a new le
of faults. By checking the new fault history le at a later date, you can readily
determine whether the problem was indeed xed.
120
APPENDIX A
THEORY OF OPERATION
Curtis 1234/36/38 controllers convert DC battery power to 3-phase AC power
by precisely controlling the induction drive for high bandwidth, high efciency,
and low ripple torque generation. To realize this level of precise torque control of
induction motor drives in electric vehicles, Curtis engineers carefully evaluated
and incorporated the latest technology in microprocessors, power electronics,
and motor control.
Invented by Nikola Tesla in 1888, the induction motor became a workhorse
that contributed to the vast industrial growth in the twentieth century. Until
recently relegated to non-dynamic applications where transient response wasnt a
critical concern, induction motors are now a common motor of choice in high
performance control applications. This shift was facilitated by the enormous
advancements in microprocessors and power silicon devices in the last thirty
years, coupled with intense research and development.
The 3-phase induction motor has three sets of distributed windings in the
stator winding slots. The standard induction motor has a rotor with aluminum
bars short-circuited by cast aluminum end-rings. There are no brushes, commutators, or slip-rings, andunlike DC and synchronous motorsthere is
no need for permanent magnets or a separate current supply for the rotor. The
brushless construction of the induction motor and the rugged rotor provide
high reliability, fault tolerance, low maintenance, and low cost.
Three-phase sinusoidal voltages, electrically displaced by 120, are applied
to the phase windings to create the stator magnetic eld. The eld rotates at
the stator voltage frequency times the number of pole pairs. This rotating stator
eld induces currents in the conductive rotor bars by transformer action which,
in turn, create a second rotor magnetic eld. The rotor eld reacts to the stator eld to generate torque. The differential speed, or slip frequency, between
the stator eld and rotor speed is critical to the torque and speed control of
an induction motor.
Motor Control Algorithms
Two main approaches are commonly used for induction motor control: scalar
control and vector control.
Scalar control (e.g., volts/Hz) modulates only the magnitude and frequency
of the applied voltage or current. Although scalar control has the advantage
of being simpler than vector control, it has poor dynamic response and lower
operation efciency. The various methods used to improve performance require
extensive characterization of the motor and loads.
Vector control (e.g., indirect rotor ux orientation, stator ux orientation,
etc.) manipulates the magnitude, frequency, and phase of the control variables
A-1
A-2
topology.
Heavy busbars connect the IMS modules to the external motor connection studs. A bank of power capacitors keeps DC bus levels stable during high
frequency MOSFET switching and also reduces EMI on the external B+ and
B- cables.
Motor currents and motor speed and direction are the primary feedback
signals used in the motor control algorithms. Accurate Hall sensors detect the
motor currents; they do this by sensing the ux created by the motor currents
on the U and V motor output busbars where they pass through the capacitor
board on their way to the external motor connections. Motor speed and direction are simultaneously sensed by a quadrature-type speed encoder mounted
on the motor shaft.
A-3
APPENDIX B
VEHICLE DESIGN CONSIDERATIONS
REGARDING ELECTROMAGNETIC COMPATIBILITY (EMC)
AND ELECTROSTATIC DISCHARGE (ESD)
B-2
B-3
APPENDIX C
PROGRAMMERS
Curtis programmers provide programming, diagnostic, and test capabilities for
1234/36/38 controllers. The power for operating the programmer is supplied
by the host controller via a 4-pin connector. Two programmers are available: the
PC Programming Station (1314) and the handheld programmer (1311). The
Programming Station has features not available on the handheld unit; on the
other hand, the handheld programmer has the advantage of being more portable.
Typically the Programming Station is used to set up the parameters initially and
the handheld programmer is used to made adjustments in the eld.
Several versions of each programmer are available (User, Service, Dealer,
OEM): the User programmers can adjust only User-access parameters, whereas
the OEM programmers can adjust all the parameters.
HANDHELD PROGRAMMER (1311)
The 1311 programmer is easy to use, with self-explanatory functions. After
plugging in the programmer, wait a few seconds for it to boot up and gather
Fig. C-1 Curtis 1311
handheld programmer.
C-1
information from the controller. For experimenting with settings, the programmer can be left plugged in while the vehicle is driven.
The bookmark keys can make parameter adjustment more convenient.
To set a bookmark, press one of the three bookmark keys for more than two
seconds. To jump to a bookmarked location, press the appropriate bookmark
key quickly (for less than two seconds). For example, in setting the drive forward
throttle parameters, you might set a bookmark at the rst of these parameters
[Program Throttle Forward Offset] and another at the raw throttle readout
[Monitor Inputs Throttle Pot]; this way you can easily toggle between the
readout and the parameters.
The bookmark keys also have another function that makes programming easier. When setting the value of a parameter, you can use these keys to
adjust the increments by which the value changeswith Bookmark Key 1, the
value changes in 10-digit steps up or down; with Bookmark Key 2 pressed,
the value changes in 100-digit steps; and with Bookmark Key 3, in 1000digit stepswhich, for most parameters, takes you from the maximum to the
minimum, or vice versa.
PC PROGRAMMING STATION (1314)
The Programming Station is an MS-Windows 32-bit application that runs on a
standard Windows PC. It can do everything the handheld programmer can do,
and more. Its additional capabilities include saving/restoring sets of parameters
to/from disk and updating software. Instructions for using the Programming
Station are included with the software.
PROGRAMMER MENUS
The programmers have six menus, which in turn lead to nested submenus.
Program provides access to the programmable parameters (see Section 3).
Monitor presents real-time values during vehicle operation; these include
all inputs and outputs, as well as the mapped throttle values and conditioned
throttle requests (see Section 4a).
Faults presents diagnostic information, and also a means to clear the fault
history le (see Section 8).
Functions provides access to the controller-cloning commands (see page 63)
and to the reset command.
Information displays data about the host controller: model and serial numbers,
date of manufacture, hardware and software revisions, and itemization of other
devices that may be associated with the controllers operation.
Programmer Setup displays data about the programmer: model and serial
APPENDIX D: SPECIFICATIONS
APPENDIX D
SPECIFICATIONS
Table D-1
IP65
Weight
1234: 2.84 kg (6.3 lbs); 1236: 4.12 kg (9.1 lbs); 1238: 6.82 kg (15.0 lbs)
Dimensions (W LH)
EMC
Safety
UL
2 MIN
RATING
(amps)
1 HOUR
RATING
(amps)
24
24
200
350
TBD
170
-527X
3648
275
120
1236-44XX
-45XX
2436
2436
400
500
155
180
-53XX
3648
350
140
-63XX
4880
300
100
1238-46XX
2436
650
265
-54XX
-56XX
3648
3648
450
650
210
210
-65XX
4880
550
155
MODEL
NUMBER
1234-227X
-237X
Notes: All current ratings are rms values per motor phase. Internal algorithms automatically reduce maximum current limit when
heatsink temperature is >85C or battery voltage is outside the allowed limits. Heatsink temperature is measured internally
near the power MOSFETs.
2-minute ratings are based on an initial controller heatsink temperature of 25C and a maximum heatsink temperature
of 85C. No addtitional external heatsink is used for the 2-minute rating test.
1-hour ratings are based on an ambient temperature of 25C with the controller mounted to a heatsink with a thermal
resistance of 0.35C/W for the 1236, or 0.25C/W for the 1238, operating at a maximum baseplate temperature of 85C.
These thermal resistances are approximately equivalent to a 0.5m 0.5m 8mm thick vertical steel plate in free air with
6kph airow on one side.
D-1