Curtis 1232, 34, 36, 38 (Versão 14.0) - Manual
Curtis 1232, 34, 36, 38 (Versão 14.0) - Manual
Curtis 1232, 34, 36, 38 (Versão 14.0) - Manual
Models 1232/34/36/38
AC Induction Motor Controllers
» Software Version OS 14.0 «
CONTENTS
1. OVERVIEW ..............................................................................1
9. MAINTENANCE .................................................................123
FIGURES
FIG. 1: Curtis 1232, 1234, 1236, and 1238 controllers ....................... 1
FIG. 2a: Mounting dimensions, Curtis 1232 controller ........................ 3
FIG. 2b: Mounting dimensions, Curtis 1234 controller ........................ 4
FIG. 2c: Mounting dimensions, Curtis 1236/38 controllers ................. 5
FIG. 3: Basic wiring diagram .............................................................. 12
FIG. 4: Wiring for Type 1 throttles .................................................... 14
FIG. 5: Wiring for Type 2 throttles .................................................... 15
FIG. 6: Wiring for Type 3 throttles .................................................... 16
FIG. 7: Acceleration response rate diagram ......................................... 32
FIG. 8: Braking response rate diagram................................................ 33
FIG. 9: Throttle mapping, torque control mode ................................ 38
FIG. 10: Effect of gear soften parameter, torque control mode ............. 38
FIG. 11: Effect of brake taper speed parameter, torque control mode ... 38
FIG. 12: Drive current limiting map .................................................... 41
FIG. 13: Regen current limiting map ................................................... 42
FIG. 14: Throttle adjustment ............................................................... 44
FIG. 15: VCL motor command diagram .............................................. 94
FIG. 16: VCL control mode processing ................................................ 98
FIG. 17: VCL proportional driver processing ....................................... 99
TABLES
1
OVERVIEW
Curtis 1232, 1234, 1236, and 1238 AC induction motor controllers deliver
smooth power unlike any previous vehicle control system. They provide
unprecedented flexibility and power through inclusion of a field-programmable
logic controller embedded in a state-of-the-art motor controller.
The embedded logic controller runs a fully functional field-oriented AC
motor control operating system (OS) that can be user-tailored via parameter
modification; see Section 3. The OS also contains logic to execute OEM-
developed 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 1232/34/36/38, as well as
in many other Curtis products, allow these AC induction motor controllers to
be part of an efficient 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 1232/34/36/38 controllers are the ideal solution for traction, hoist,
dual drive, and other motor drive and vehicle control needs.
Like all Curtis controllers, the 1232/34/36/38 offers superior operator control
of motor drive performance. Features include:
✓ High efficiency, field-oriented motor control algorithms
✓ Advanced Pulse Width Modulation technology for efficient 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
More Features ☞
Familiarity with your Curtis controller will help you install and operate it prop-
erly. We encourage you to read this manual carefully. If you have questions,
please contact the Curtis office nearest you.
☞ Using the 1313 handheld programmer, you can set up the controller to per-
form all the basic operations. In this manual, we first 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 1232/34/36/38 controller.
2
INSTALLATION AND WIRING
Fig. 2a Mounting
dimensions, Curtis 1232
motor controller.
Fig. 2b Mounting
dimensions, Curtis 1234
motor controller.
☞
C AU T I O N Working on electrical systems is potentially dangerous. Protect yourself against
uncontrolled operation, high current arcs, and outgassing from lead acid batteries:
UNCONTROLLED OPERATION — Some conditions could cause the motor to run out of
control. Disconnect the motor or jack up the vehicle and get the drive wheels off the
ground before attempting any work on the motor control circuitry.
HIGH CURRENT ARCS — Batteries can supply very high power, and arcing can occur if they
are short circuited. Always open the battery circuit before working on the motor control
circuit. Wear safety glasses, and use properly insulated tools to prevent shorts.
LEAD ACID BATTERIES — Charging or discharging generates hydrogen gas, which can
build up in and around the batteries. Follow the battery manufacturer’s safety recom-
mendations. Wear safety glasses.
Fig. 2b Mounting
dimensions, Curtis 1236
and 1238 motor controllers.
You will need to take steps during the design and development of your
end product to ensure that its EMC performance complies with applicable
regulations; suggestions are presented in Appendix B.
The 1232/34/36/38 controllers contain ESD-sensitive components.
Use appropriate precautions in connecting, disconnecting, and handling the
controller. See installation suggestions in Appendix B for protecting the con-
troller from ESD damage.
J1
* 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
predefined names for specific pins.
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 flexible I/O and wiring configurations; 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 1232/34/36/38 controller. They
are characterized as one of five types in the programming menu of the 1313
programmer.
The two throttle inputs (drive throttle and brake throttle) are programmed
independently.
Throttle Type 1
For these 2-wire resistive potentiometers, shown in Figure 4, full throttle request
corresponds to 0 Ω measured between the pot wiper pin and the Pot Low pin.
Fig. 4 Wiring for Type 1
throttles.
Broken wire protection is provided by the controller sensing the current flow
from the pot wiper input (pin 16 or 17) through the potentiometer and into
Pot Low (pin 18). If the Pot Low input current falls below 0.65 mA, a throttle
fault is generated and the throttle request is zeroed. Note: Pot Low (pin 18)
must not be tied to ground (B-).
Throttle Type 2
With these throttles, the controller looks for a voltage signal at the wiper input.
Zero throttle request corresponds to 0 V and full throttle request to 5 V. A variety
of devices can be used with this throttle input type, including voltage sources,
current sources, 3-wire pots, and electronic throttles. The wiring for each is
slightly different, as shown in Figure 5, and they have varying levels of throttle
fault protection.
When a voltage source is used as a throttle, it is the responsibility of the
OEM to provide appropriate throttle fault detection. For ground-referenced
0–5V throttles, the controller will detect open breaks in the wiper input but
cannot provide full throttle fault protection.
To use a current source as a throttle, a resistor must be added to the circuit
to convert the current source value to a voltage; the resistor should be sized to
provide a 0–5V signal variation over the full current range. It is the responsibil-
ity of the OEM to provide appropriate throttle fault detection.
+
-
Current Source
3-wire Potentiometer
Throttle Type 3
For these 2-wire resistive potentiometers, shown in Figure 6, full throttle request
corresponds to 5 kΩ measured between the pot wiper pin and the Pot Low pin.
Fig. 6 Wiring for Type 3
throttles.
Broken wire protection is provided by the controller sensing the current flow
from the wiper input (pin 16 or 17) through the potentiometer and into Pot
Low (pin 18). If the Pot Low input current falls below 0.65 mA, a throttle
fault is generated and the throttle request is zeroed. Note: Pot Low (pin 18)
must not be tied to ground (B-).
Throttle Type 4
Type 4 throttles operate in wigwag style. No signals to the controller’s forward
and reverse inputs are required; the direction is determined by the wiper input
value. Only 0–5V voltage sources and 3-wire potentiometers can be used as
Type 4 throttles. The controller interface for Type 4 throttles is the same as for
Type 2 throttles; see Figure 5. The neutral point will be with the wiper at 2.5
V, measured between pot wiper input (pin 16) and I/O ground return (pin 7).
The controller will provide increasing forward speed as the wiper input value is
increased, and increasing reverse speed as the wiper input value is decreased.
When a 3-wire pot is used, the controller provides full fault protection.
When a voltage throttle is used, the controller will detect open breaks in the
wiper input but cannot provide full throttle fault protection.
Throttle Type 5
Throttle Type 5 provides a different way of sending the throttle command to
the controller. This throttle type uses VCL to define the throttle signal that
will be “input” into the throttle signal chain (see Figure 15, page 94). 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 pro-
gram is written will determine the source of the throttle signal, making this
a very flexible 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 office nearest you.
Setting the Throttle Type to Type 5 also allows the throttle and brake
pot inputs to be redefined 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 95) and Brake_Pot_Output (see
page 97).
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 1–8, 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.
* “MaxV” in this and the following tables is the controller’s maximum voltage:
30 V for 24V models;
45 V for 24–36V models; 60 V for 36–48V models; and 105 V for 48–80V models.
1234/36/38 5V clamp
DRIVER INPUTS
(pins 6, 5, 4, 3, 2)
µP
1232/34 DIGOUT INPUTS 150 kΩ
(pins 19, 20)
5V clamp 150 kΩ
SWITCH INPUTS
1-8, 16
(pins 8-12, 22,
24, 33, 14) µP
100 kΩ
24-36V 7.5 kΩ
36-48V 12 kΩ 100 kΩ 5V clamp
48-80V 33 kΩ
1246/38 DIGOUT INPUTS
(pins 19, 20) µP
124 kΩ
10 kΩ
1232
5V clamp 5V clamp
SWITCH INPUTS
1-8, 16 DRIVER INPUTS
(pins 8-12, 22, (pins 6, 5, 4, 3, 2)
24, 33, 14) µP µP
20 kΩ DIGOUT INPUTS 20 kΩ
(pins 19, 20)
7.5 kΩ 20 kΩ 20 kΩ
* The digital outputs for the 1234 are below, with the high power outputs.
* On the 1232 and 1234, the combined current supplied † Drivers 1–4 frequency is set by
by all seven output drivers should not exceed 10 A. the PWM Frequency parameter.
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 predefined motor temperature sensors are supported in software (see
Sensor Type parameter, page 50). Note: The industry standard KTY tempera-
ture 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 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 filtered PWM signal and has about 1% ripple. The 2% settling time
is <25ms for a 0–5V step and <30 ms for a 0–10V step. This output line is
protected against shorts to B+ or B-. Note: The 1232 has no analog output.
* 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.
Communications ports
Separate CAN and serial ports provide complete communications and program-
ming capability for all user available controller information.
The Curtis 1313 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.
Encoder inputs
Two control lines are internally configured 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 and differential voltage requirements are met.
3 PROGRAMMABLE PARAMETERS
PROGRAMMING MENUS
The programmable parameters are grouped into nested hierarchical menus, as
shown in Table 3.
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
☞
C AU T I O N
is imperative that you perform the procedures outlined in Section 5, which
set up the basic system characteristics for your application.
CONTROL MODE SELECT ........... p. 28 2 - TORQUE MODE MENU CURRENT LIMITS MENU ............. p. 40
—Speed Limiter ................... p. 35 —Drive Current Limit
0 - SPEED MODE EXPRESS ....... p. 29 —Max Speed —Regen Current Limit
—Max Speed —Kp —Brake Current Limit
—Kp —Ki —EMR Current Limit
—Ki —Kd —Interlock Brake Current Limit
—Accel Rate
—Response ....................... p. 36 —Power Limiting Map .... p. 41
—Decel Rate
—Accel Rate —PL Nominal Speed
—Brake Rate
—Accel Release Rate —Delta Speed
—Pump Enable
—Brake Rate
—Drive Limiting Map ..... p. 41
—Brake Release Rate
—Nominal
1 - SPEED MODE MENU —Neutral Braking
—Plus Delta
—Speed Controller ............... p. 30 —Neutral Taper Speed
—Plus 2xDelta
—Max Speed —Fine Tuning ............... p. 37 —Plus 4xDelta
—Kp —Creep Torque —Plus 8xDelta
—Ki LS —Brake Full Creep Cancel
—Regen Limiting Map .... p. 42
—Ki HS —Creep Build Rate
—Nominal
—Vel Feedforward ......... p. 30 —Creep Release Rate
—Plus Delta
—Kvff —Gear Soften
—Plus 2xDelta
—Build Rate —Brake Taper Speed
—Plus 4xDelta
—Release Rate —Reversal Soften
—Plus 8xDelta
—Acc Feedforward ........ p. 31 —Max Speed Decel
EM BRAKE CONTROL MENU ........ p. 47 MOTOR MENU ............................ p. 54 EMERGENCY REVERSE MENU ..... p. 61
—Brake Type —Typical Max Speed —EMR Enable
—Pull In Voltage —Swap Encoder Direction —EMR Type
—Holding Voltage —Swap Two Phases —EMR Dir Interlock
—Battery Voltage Comp
—Encoder Steps —EMR Time Limit
—Set EM Brake On Fault
—Encoder Fault Setup .......... p. 55 —EMR Speed
—Set Speed Threshold
—Fault Detection Enable —EMR Accel Rate
—Release Delay
—Fault Stall Time —EMR Decel Rate
—Set Speed Settling Time
—Torque Preload Delay —LOS Upon Encoder Fault
—Torque Preload Enable —LOS Max Speed INTERLOCK BRAKING MENU ....... p. 62
—Torque Preload Cancel Delay —LOS Max Current —Enable
—EM Brake Fault Motor Revs —LOS Max Mod Depth —Decel Rate HS
—LOS Accel Rate —Decel Rate LS
DRIVERS MENU —LOS Decel Rate —Interlock Brake Timeout
—Main Contactor ................ p. 49 —Temperature Control .......... p. 56
—Main Enable —Sensor Enable CAN INTERFACE MENU ............... p. 63
—Pull In Voltage —Sensor Type —CANopen Interlock
—Holding Voltage —CAN Node ID
—Sensor Offset
—Battery Voltage Comp —Baud Rate
—Temperature Hot
—Interlock Type —Heartbeat Rate
—Temperature Max
—Open Delay —PDO Timeout Period
—MotorTemp LOS Max Speed
—Checks Enable —Emergency Message Rate
—Main DNC Threshold —Suppress CANopen Init
—Precharge Enable BATTERY MENU ......................... p. 57
—Nominal Voltage
—Proportional Driver ........... p. 51 MOTOR CONTROL TUNING MENU
—PD Enable —Undervoltage Cutback Range
—User Overvoltage —Motor Characterization Tests . p. 64
—Hyd Lower Enable
—PD Max Current —User Undervoltage —Field Weakening Control .... p. 64
—PD Min Current —Reset Volts Per Cell —FW Base Speed
—PD Dither % —Full Volts Per Cell —Field Weakening
—PD Dither Period —Empty Volts Per Cell —Weakening Rate
—PD Kp —Discharge Time —Motor Type ..................... p. 64
—PD Ki —BDI Reset Percent
—Hydraulic Contactor .......... p. 52 RESET CONTROLLER ................. p. 64
—Contactor Enable DUAL DRIVE MENU ........ see Sec. 4 of
—Pull In Voltage of the Dual Drive
—Holding Voltage addendum, p/n 37022-DD.
Note: All bit variables have two VCL parameter names. The first 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: Metric_Units
byte name: OptionBits3 [Bit 5]
bit name: EMR_Dir_Interlock
byte name: 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 first and then the byte name:
Metric Units On/Off
Metric_Units On/Off
OptionBits3 [Bit 5]
Control Mode Select 0–2 This parameter determines which control method will be in effect when
Control_Mode_Select 0–2 programming motor response:
0 = SPEED MODE EXPRESS
1 = SPEED MODE
2 = TORQUE MODE.
Contact Curtis if you are interested in a custom control method.
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.
☞ The overall maximum motor speed allowed is the least of these three constraints.
Max Speed 100–8000 rpm Defines the maximum requested motor rpm at full throttle. Partially-
Max_Speed_SpdMx 100–8000 applied 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 28.
Ki 5–100 % The integral term (Ki) forces zero steady state error, so the motor
Ki_SpdMx 50–1000 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 0.1–30.0 sec. Sets the rate (in seconds) at which the speed command increases
Accel_Rate_SpdMx 100–30000 when throttle is applied. Larger values represent slower response.
Decel Rate 0.1–30.0 sec. Sets the rate (in seconds) that is used to slow down the vehicle when
Decel_Rate_SpdMx 100–30000 the throttle is reduced. Larger values represent slower response.
Brake Rate 0.1–30.0 sec. Sets the rate (in seconds) at which the vehicle slows down when brake
Brake_Rate_SpdMx 100–30000 is applied or when throttle is applied in the opposite direction. Larger
values represent slower response.
Pump Enable On/Off This parameter should be programmed On to operate a pump motor
AC_Pump_Enable_SpdM On/Off rather than a vehicle drive motor. Speed controller responsiveness and
AC_Pump_Enable_SpdM_Bit0 [Bit 0] stability are enhanced, and the motor is allowed to turn only in the forward
direction.
Max Speed 100–8000 rpm Defines the maximum requested motor rpm at full throttle. Partially-applied
Max_Speed_SpdM 100–8000 throttle is scaled proportionately; e.g., 40% applied throttle corresponds to
a request for 40% of the set Max Speed Value.
If Max_Speed_SpdM is set <100 rpm (through VCL or CAN), the throttle
request is zeroed.
Note: The maximum motor rpm is subject to the constraints on page 28.
Kp 0–100 % Determines how aggressively the speed controller attempts to match the speed
Kp_SpdM 0–8192 of the motor to 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 behave sluggishly and be
difficult to control.
Ki LS 5–100 % The Ki LS parameter sets the Ki for low vehicle speeds. The integral term (Ki)
Ki_SpdM 50–1000 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.
Ki HS 5–100 % The Ki HS parameter sets the integral term (Ki) for high vehicle speeds; see
Ki_HS_SpdM 50–1000 description of Ki LS.
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Kvff 0–500 A This velocity feedforward term is designed to improve throttle responsiveness
Kvff_SpdM 0–5000 and speed controller performance, especially at low speeds.
For traction systems, set it to 50–70% of the current needed to maintain
a very low speed, unloaded, on flat ground.
For a pump system, set it to the lowest load current (i.e., the current
running at the minimum load). Alternatively, the responsiveness of a pump
speed control loop can be significantly enhanced by using a VCL program to
continuously update this parameter to the appropriate value as each pump
load is requested.
Build Rate 0.1–5.0 sec Determines how fast the Kvff term builds up.
Vel_FF_Build_Rate_SpdM 100–5000 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.1–2.0 sec Determines how fast the Kvff term releases. If the release seems too abrupt,
Vel_FF_Release_Rate_SpdM 100–2000 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.
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Build Rate 0.1–5.0 sec Determines how fast the Kaff and Kbff terms build up.
Acc_FF_Build_Rate_SpdM 100–5000 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 over-
shoot if too much feedforward has been commanded.
Release Rate 0.1–2.0 sec Determines how fast the Kaff and Kbff terms release. It should be set fast
Acc_FF_Release_Rate_SpdM 100–2000 enough (i.e., at a low enough value) to prevent the vehicle from running
on after throttle release.
Full Accel Rate HS 0.1–30.0 sec Sets the rate (in seconds) at which the speed command increases
Full_Accel_Rate_HS_SpdM 100–30000 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.
Full Accel Rate LS 0.1–30.0 sec Sets the rate (in seconds) at which the speed command increases
Full_Accel_Rate_LS_SpdM 100–30000 when full throttle is applied at low vehicle speeds.
Low Accel Rate 0.1–30.0 sec Sets the rate (in seconds) at which the speed command increases
Low_Accel_Rate_SpdM 100–30000 when a small amount of throttle is applied. This rate is typically
adjusted to affect low speed maneuverability.
Neutral Decel Rate HS 0.1–30.0 sec Sets the rate (in seconds) that is used to slow down the vehicle
Neutral_Decel_Rate_HS_SpdM 100–30000 when the throttle is released to neutral at high vehicle speeds.
Neutral Decel Rate LS 0.1–30.0 sec Sets the rate (in seconds) that is used to slow down the vehicle
Neutral_Decel_Rate_LS_SpdM 100–30000 when the throttle is released to neutral at slow vehicle speeds.
Full Brake Rate HS 0.1–30.0 sec Sets the rate (in seconds) at which the vehicle slows down from high
Full_Brake_Rate_HS_SpdM 100–30000 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.
Full Brake Rate LS 0.1–30.0 sec Sets the rate (in seconds) at which the vehicle slows down from low
Full_Brake_Rate_LS_SpdM 100–30000 speeds when full brake is applied or when full throttle is applied in the
opposite direction.
Low Brake Rate 0.1–30.0 sec Sets the rate (in seconds) at which the vehicle slows down at all
Low_Brake_Rate_SpdM 100–30000 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
response rate diagram.
In this example,
HS = 70%,
LS = 30%,
Typ Max Spd = 5000 rpm.
Partial Decel Rate 0.1–30.0 sec. Sets the rate (in seconds) that is used to slow down the vehicle
Partial_Decel_Rate_SpdM 100–30000 when the throttle is reduced without being released to neutral.
Larger values represent slower response.
HS (High Speed) 0–100 % Sets the percentage of the Typical Max Speed (page 54) above which
HS 0–32767 the “HS” parameters will be used.
LS (Low Speed) 0–100 % Sets the percentage of the Typical Max Speed (page 54) below which
LS 0–32767 the “LS” parameters will be used.
Reversal Soften 0–100 % Larger values create a softer reversal from regen braking to drive
Reversal Soften_SpdM 0–3000 when near zero speed. This helps soften the transition when the regen
and drive current limits are set to different values.
Max Speed Accel 0.1–30.0 sec In some applications, the Max Speed value is changed frequently,
Max_Speed_Accel_SpdM 100–30000 through VCL or over the CAN bus. The Max Speed Accel parameter
controls the rate at which the maximum speed setpoint is allowed to
change when the value of Max Speed is raised. The rate set by this
parameter is the time to ramp from 0 rpm to Typical Max Speed rpm.
For example, suppose Max Speed is raised from 1000 rpm to 4000
rpm. If Typical Max Speed is 5000 rpm, and the rate is 10.0 seconds,
it will take 10.0 * (4000–1000) / 5000 = 6.0 seconds to ramp from 1000
rpm to 4000 rpm.
Max Speed Decel 0.1–30.0 sec This parameter works like the Max Speed Accel parameter, except that
Max_Speed_Decel_SpdM 100–30000 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 * (4500–2500) / 5000 = 2.0 seconds to ramp
from 4500 rpm to 2500 rpm.
Fig. 8 Braking
response rate diagram.
In this example,
HS = 70%,
LS = 30%,
Typ Max Spd = 5000 rpm.
Pump Enable On/Off This parameter should be programmed On to operate a pump motor
AC_Pump_Enable_SpdM On/Off rather than a vehicle drive motor. Speed controller responsiveness and
AC_Pump_Enable_SpdM_Bit0 [Bit 0] stability are enhanced, and the motor is allowed to turn only in the forward
direction.
Max Speed 500–8000 rpm Defines the maximum allowed motor rpm for torque control mode
Max_Speed_TrqM 500–8000 (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 28.
Kp 0–100 % Determines how aggressively the speed controller attempts to limit the
Kp_TrqM 0–8192 speed of the motor to Max Speed. Larger values provide tighter control.
If Kp is set too high, you may experience oscillations as the controller
tries to control speed. Setting Kp too low may result in a top speed much
higher than Max Speed.
Ki 5–100 % The integral term (Ki) forces zero steady state error, so the motor speed
Ki_TrqM 50–1000 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 0–100 % Provides damping as the vehicle approaches top speed, thereby reducing
Kd_TrqM 0–8192 overshoot. If Kd is set too high, the vehicle may take too long to reach
top speed. If Kd is set too low, the vehicle may overshoot top speed,
especially when traveling downhill.
Accel Rate 0.1–30.0 sec. Sets the rate (in seconds) at which the motor torque increases to full
Accel_Rate_TrqM 100–30000 when full throttle is applied. Larger values represent slower response.
Accel Release Rate 0.1–2.0 sec. Determines how quickly deceleration will be initiated when the throttle
Accel_Release_Rate_TrqM 100–2000 is released while the vehicle is still accelerating. If the release rate
is fast (i.e., set to a low value), the transition is initiated abruptly.
The transition is smoother if the release rate is set to a higher value
(slower transition); however, setting the rate too high can cause the
vehicle to feel uncontrollable when the throttle is released, as it will
continue to drive for a short time.
Brake Rate 0.1–5.0 sec. Adjusts the rate (in seconds) at which braking torque builds as the
Brake_Rate_TrqM 100–5000 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.
Brake Release Rate 0.1–2.0 sec. Adjusts the rate (in seconds) at which braking torque releases as
Brake_Release_Rate_TrqM 100–2000 as the vehicle transitions from braking to drive.
Neutral Braking 0–100 % Neutral braking occurs progressively when the throttle is reduced
Neutral_Braking_TrqM 0–32767 toward the neutral position or when no direction is selected. The
neutral braking parameter is adjustable from 0 to 100% of the regen
current limit (see Current Limits menu, page 40).
Neutral Taper Speed 200–6000 rpm Determines the motor speed below which braking current is adjusted
Neutral_Taper_Speed_TrqM 200–6000 in both the positive and negative directions when throttle is reduced;
see Figure 8.
In the positive direction, the neutral braking current is linearly
reduced from 100% at the Neutral Taper Speed to the Creep Torque
current at zero rpm motor speed.
In the negative direction, the restraint current is linearly
increased from the Creep Torque current at zero rpm motor speed
to the restraint current at the Neutral Taper Speed.
Note: Setting the taper speed too low may cause oscillations in
the motor.
Creep Torque 0–100 % Determines the amount of torque applied to the vehicle at a stop with
Creep_Torque_TrqM 0–32767 no throttle input, to emulate the feel of an automatic transmission
automobile; see Figure 9. WARNING! When interlock is engaged,
creep torque allows vehicle propulsion if a direction is selected even
though no throttle is applied. Care should be taken when setting up
this parameter.
If pedal braking is enabled (see page 46), creep torque is
progressively disabled as brake is applied so as to prevent the motor
from driving into the brakes and thus wasting energy.
Brake Full Creep Cancel 25–100 % Determines the amount of brake pedal input that will fully cancel the .
Brake_Full_Creep_Cancel_TrqM 8192–32767 creep torque. Amount of cancellation is proportional to the brake input.
Creep Build Rate 0.1–5.0 sec Determines how fast the programmed creep torque builds when
Creep_Build_Rate_TrqM 100–5000 a direction is selected.
Creep Release Rate 0.1–5.0 sec Determines how fast the programmed creep torque releases when the
Creep_Release_Rate_TrqM 100–5000 brake is cancelling the creep torque or when the direction switches are
cleared (neutral).
Gear Soften 0–100 % Adjusts the throttle take-up from linear (0% setting) to an S curve.
Gear_Soften_TrqM 0–5000 Larger values create softer throttle take-up, in forward and reverse.
Softening is progressively reduced at higher speeds; see Figure 10.
Brake Taper Speed 200–6000 rpm Determines the motor speed below which the maximum braking current
Brake_Taper_Speed_TrqM 200–6000 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.
Reversal Soften 0–100 % Larger values create a softer reversal from regen braking to drive
Reversal_Soften 0–3000 when near zero speed. This helps soften the transition when the regen
and drive current limits are set to different values.
Max Speed Decel 0.1–30.0 sec In some applications, the Max Speed value is changed frequently,
Max_Speed_Accel_TrqM 100–30000 through VCL or over the CAN bus. The Max Speed Accel parameter
controls the rate at which the maximum speed setpoint is allowed to
change when the value of Max Speed is lowered. The rate set by this
parameter is the time to ramp from Typical Max Speed rpm to 0 rpm.
For example, suppose you change Max Speed from 3000 rpm to
1000 rpm. If Typical Max Speed is 5000 rpm, and the rate is 5.0 sec-
onds, it will take 5.0 * (3000–1000) / 5000 = 2.0 seconds to ramp from
3000 rpm to 1000 rpm.
Fig. 10 Effect
of Gear Soften parameter
(torque control mode). %
0% 25
%
50
%
75 0%
n
= = = = 10
=
ofte
rS
TORQUE
ea
G
TIME
RESTRAINT MENU
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Restraint Forward 0–100 % Increases torque when on a steep hill in order to limit roll-forward speed.
Restraint_Forward 0–32767 Setting this parameter too high may cause oscillations in the motor as it
attempts to limit the roll-forward speed.
Restraint Back 0–100 % Increases torque when on a steep hill in order to limit roll-back speed.
Restraint_Back 0–32767 Setting this parameter too high may cause oscillations in the motor as it
attempts to limit the roll-back speed.
Soft Stop Speed 0–500 rpm Defines the speed below which a much slower decel rate is used.
Soft_Stop_Speed 0–500 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 find the
final 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 shouldn’t be set so high the
vehicle drives up the ramp after the throttle is released.
POSITION HOLD MENU [SPEED MODE & SPEED MODE EXPRESS only]
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Position Hold Enable On/Off Allows the Position Hold mode to be entered at zero throttle when
Position_Hold_Enable On/Off the vehicle comes to a stop.
Position_Hold_Enable_Bit0 [Bit 0] Note: EM Brake Type = 2 also enables the Position Hold function.
Kd 0–100 % Determines the damping in Position Hold mode. Some damping must
Kd_Position_Hold 0–8192 be present in the control system to keep the vehicle from oscillating
slowly (“bouncing”). High Kd will improve the dynamic response of the
Position Hold controller, but too much Kd will cause fast instability.
Set Speed Settling Time 0–5000 msec This parameter appears twice in the menu structure. For description,
Set_Speed_Settling_Time 0–156 see EM Brake Control menu, page 48.
Set Speed Threshold 5–100 rpm This parameter appears twice in the menu structure. For description,
Set_Speed_Threshold 5–100 see EM Brake Control menu, page 48.
Entry Rate 5–100 % When the vehicle transitions from forward speed to reverse speed
Entry_Rate_Position_Hold 50–1000 or from reverse speed to forward speed (for example, when coming to
a stop going up a steep ramp), Position Hold is automatically entered
immediately at zero speed—regardless of this parameter.
This parameter applies when the vehicle needs to be brought to
a stop without the assistance of gravity (for example, when moving
forward down a ramp). This rate determines how quickly zero speed
is attained after the ramped speed request reaches zero. Setting this
parameter too high will make the stop seem very abrupt, and may even
cause the vehicle to roll back slightly. When the parameter is set lower,
the vehicle take longer to come to a stop and enter Position Hold mode.
Exit Rollback Reduction 0–100 % This function is applicable only when the Torque Preload function has
Exit_Rollback_Reduction 0–2048 been disabled (see EM Brake menu), or its timer has expired. It intro-
duces 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.
Drive Current Limit 5–100 % Sets the maximum RMS current the controller will supply to the motor
Drive_Current_Limit 1638–32767 during drive operation, as a percentage of the controller’s full rated
current.* Reducing this value will reduce the maximum drive torque.
Regen Current Limit 5–100 % Sets the maximum RMS regen current, as a percentage of the controller’s
Regen_Current_Limit 1638–32767 full rated current.* The regen current limit applies during neutral braking,
direction reversal braking, and speed limiting when traveling downhill.
Brake Current Limit 5–100 % Sets the maximum RMS regen current during braking when a brake
Brake_Current_Limit 1638–32767 command is given, as a percentage of the controller’s 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.
EMR Current Limit 5–100 % Sets the maximum RMS current allowed for braking and drive when in
EMR_Current_Limit 1638–32767 emergency reverse. The emergency reverse current limit is a percentage
of the controller’s full rated current.*
Interlock Brake Current Limit 5–100 % Sets the maximum RMS regen current during interlock braking, as a
Interlock_Brake_Current_Limit 1638–32767 percentage of the controller’s full rated current.*
Nominal Speed 100–4000 rpm Sets the base speed that will be used in the drive limiting map and
PL_Nominal_Speed 100–4000 regen limiting map.
Delta Speed 50–1000 rpm Sets the width of the delta increment that will be used in the drive limiting
PL_Delta_Speed 50–1000 map and regen limiting map.
Plus Delta 0–100 % Sets These parameters define the percentage of drive current limit
PL_Drive_Nominal_Plus_Delta 0–32767 that will be applied at the speeds defined by the nominal speed
and delta speed parameters. The resulting map allows the
Plus 2xDelta 0–100 % Sets controller to reduce the drive current as a function of speed.
PL_Drive_Nominal_Plus_2xDelta 0–32767 Reducing the power requirements at certain speeds
restricts performance. This can be useful for reducing motor
Plus 4xDelta 0–100 % Sets heating. It can also be used to keep consistent vehicle power
PL_Drive_Nominal_Plus_4xDelta 0–32767 with changing battery state-of-charge.
Fig. 12 Drive
current limiting map
(typical example).
Fig. 13 Regen
current limiting map
(two examples).
THROTTLE MENU
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Throttle Type 1–5 The 1232/34/36/38 controllers accept a variety of throttle inputs.
Throttle_Type 1–5 The throttle type parameter can be programmed as follows:
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 0–5.00 V Defines the wiper voltage at the throttle deadband threshold. Increasing
Forward_Deadband 0–32767 the throttle deadband setting will increase the neutral range. This
parameter is especially useful with throttle assemblies that do not reliably
return to a well-defined neutral point, because it allows the deadband to
be defined wide enough to ensure that the controller goes into neutral
when the throttle mechanism is released.
Forward Map 0–100 % Modifies the vehicle’s response to the throttle input. Setting the throttle
Forward_Map 0–32767 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 0–5.00 V Defines the wiper voltage required to produce 100% controller output.
Forward_Max 0–32767 Decreasing the throttle max setting reduces the wiper voltage and
therefore the full stroke necessary to produce full controller output.
This parameter allows reduced-range throttle assemblies to be
accommodated.
Forward Offset 0–100 % Defines the initial controller output generated when the throttle is first
Forward_Offset 0–32767 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.
Throttle Filter 2.0–125.0 Hz Sets the low pass filter cutoff frequency for the throttle pot wiper input.
Throttle_Filter 524–32767 Higher values will make the throttle more responsive to quick changes.
Lower values will make the throttle less responsive to electrical noise.
HPD/SRO Type 0–3 Determines the type of HPD/SRO protection. One type of checks is available
HPD_SRO_Type 0–3 for material-handling vehicles, and two types for golf-style vehicles.
If any of the HPD/SRO checks finds an input sequencing problem, an
HPD/Sequencing Fault (flash code 47) is set.
Sequencing Delay 0.0–5.0 sec. Typically the sequencing delay feature allows the interlock switch to be cycled
Sequencing_Delay 0–312 within a set time (the defined 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.
VCL Throttle Enable On/Off When programmed On, the throttle processing with fault detection will operate
VCL_Throttle_Enable On/Off normally; however, the throttle command (see Figure 15, page 94) will require
VCL_Throttle_Enable_Bit0 [Bit 0] VCL to define the connection between the OS_Throttle and VCL_Throttle
variables. This allows VCL flexibility and customization of throttle processing,
while still allowing Throttle_Type 1–4 with throttle fault detection.
BRAKE MENU
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Brake Pedal Enable On/Off Determines whether the brake input and algorithm are enabled, making
Brake_Pedal_Enable On/Off the brake throttle part of the motor control command.
OptionBits1 [Bit 3]
Brake Type 1–5 The 1232/34/36/38 controllers accept a variety of brake inputs. The brake type
Brake_Type 1–5 parameter can be programmed as follows:
1 2-wire rheostat, 5kΩ–0 input
2 single-ended 3-wire 1kΩ–10kΩ potentiometer,
0–5V voltage source, or current source
3 2-wire rheostat, 0–5kΩ input
4 (not applicable)
5 VCL input (VCL_Brake)
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 Map 0–100 % The four Brake throttle adjustment parameters are the same as
Brake_Map 0–32767 their Drive throttle counterparts; see descriptions and Figure 14.
Brake Filter 2.0–125.0 Hz Sets the low pass filter cutoff frequency for the pot2 wiper input.
Brake_Filter 524–32767 Higher values will make the brake more responsive to quick changes.
Lower values will make the brake less responsive to electrical noise.
VCL Brake Enable On/Off When programmed On, the brake processing with fault detection will
VCL_Brake_Enable On/Off operate normally; however, the brake command (see Figure 15, page 94) will
VCL_Brake_Enable_Bit0 [Bit 0] require VCL to define the connection between the OS_Brake and VCL_Brake
variables. This allows VCL flexibility and customization of throttle processing,
while still allowing Brake_Type 1–3 with brake fault detection.
Brake Type 0–2 The brake type parameter determines how the EM brake responds to the
EM_Brake_Type 0–2 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 0–100 % The EM brake pull-in voltage allows a high initial voltage when the EM
EM_Brake_Pull_In_Voltage 0–32767 brake first 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 0–100 % The EM brake holding voltage allows a reduced average voltage to be
EM_Brake_Holding_Voltage 0–32767 applied to the brake coil once the brake has been released. This
parameter must be set high enough to hold the brake released under all
shock and vibration conditions the vehicle will be subjected to.
Note: The Battery Voltage Compensated parameter controls whether
the pull-in and holding voltages are battery voltage compensated.
Battery Voltage Compensated On/Off This parameter determines whether the EM brake pull-in and holding
EM_Brake_Battery_Voltage_ On/Off voltages are battery voltage compensated. When set On, the pull-in and
Compensated holding voltages are compensated relative to the set Nominal Voltage (see
EM_Brake_Battery_Voltage_ Battery Menu, page 57). In other words, the output voltage is adjusted to
Compensated_Bit0 [Bit 0] compensate for swings in battery voltage, so the percentage is relative to
the set Nominal Voltage—not 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 volt-
age 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 Volt-
age) to the coil.
Set EM Brake On Fault On/Off When programmed On, the controller’s operating system will drop the
EM_Brake_Set_Upon_Fault On/Off electromagnetic brake when a fault occurs that has a fault action of
EM_Brake_Set_Upon_ ShutdownEMBrake. See Section 8 for a list of all the faults that have a fault
Fault_Bit0 [Bit 0] action of ShutdownEMBrake.
Set Speed Threshold 5–100 rpm Determines the speed below which the EM brake will be commanded
Set_Speed_Threshold 5–100 to set. Setting this speed too high may cause a jerky stop when the EM
brake sets and stops the motor.
Release Delay 40–2000 msec Estimated time for the EM brake to physically release after the pull-in
EM_Brake_Release_Delay 5–250 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.
Set Speed Settling Time 0–5000 msec Determines how long the position hold function is allowed to operate
Set_Speed_Settling_Time 0–156 before the EM brake is set. This time should be set long enough for the
position hold to settle.
Note *
Torque Preload Delay 0–800 msec Estimated worst-case time to build up the torque required to hold the
EM_Brake_Torque_Preload_ 0–100 vehicle stationary on a hill prior to EM brake release. This is used in
Delay conjunction with Release Delay to determine when to release the brake
and allow the speed request to slew away from zero.
Note *
Torque Preload Enable On/Off When enabled, this function eliminates rollback when the throttle is
EM_Brake_Torque_Preload_Enable On/Off re-engaged on a ramp by forcing the vehicle to first enter position-hold
EM_Brake_Torque_Preload_ before setting the EM brake, and then “remembering” the amount of torque
Enable_Bit0 [Bit 0] that was necessary to hold it on the ramp. When throttle is re-engaged,
this value is loaded in the motor before the EM brake is released. The
torque value is cleared automatically when KSI power is cycled.
Off = When a valid throttle input is received, the speed controller will
start with no torque preload as soon as the Release Delay expires. This will
allow some rollback when the EM brake releases.
On = When a valid throttle input is received, the speed controller will
start with a pre-set torque as measured by position-hold when the vehicle
came to a stop.
Note *
Torque Preload Cancel Delay 0–120 sec The timer starts after the EM brake is set. If the timer expires before the
EM_Brake_Torque_Preload_ 0–15000 throttle is re-engaged, the torque preload memory will be cleared. Setting
Cancel_Delay this parameter to zero disables the timer, i.e., the preload is never can-
celled. 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).
EM Brake Fault Motor Revs 1.0–20.0 revs Defines the allowable number of motor revolutions after the EM brake
EM_Brake_Fault_Motor_Revs 10–200 is set before an EM Brake Failed to Set fault is issued (fault code 92).
*This parameter is applicable only when Speed Mode or Speed Mode Express
is selected and either Position Hold Enable = On or EM Brake Type = 2.
Main Enable On/Off When programmed On, the controller’s native software controls the main
Main_Enable On/Off contactor when the interlock is enabled; when programmed Off, the
OptionBits1 [Bit 0] 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 0–100 % The main contactor pull-in voltage parameter allows a high initial voltage
Main_Pull_In_Voltage 0–32767 when the main contactor driver first 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 0–100 % The main contactor holding voltage parameter allows a reduced average
Main_Holding_Voltage 0–32767 voltage to be applied to the contactor coil once it has closed. This param-
eter must be set high enough to hold the contactor closed under all shock
and vibration conditions the vehicle will be subjected to.
Note: The Battery Voltage Compensated parameter (below) controls
whether the pull-in and holding voltages are battery voltage compensated.
Battery Voltage Compensated On/Off This parameter determines whether the main pull-in and holding voltages
Main_Driver_Battery_Voltage_ On/Off are battery voltage compensated. When set On, the pull-in and holding
Compensated voltages are set relative to the set Nominal Voltage (see Battery Menu,
Main_Driver_Battery_Voltage_ page 55). In other words, the output voltage is adjusted to compensate for
Compensated_Bit0 [Bit 0] swings in battery voltage, so the percentage is relative to the set Nominal
Voltage—not 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 volt-
age 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 Volt-
age) to the coil.
Open Delay 0–40 sec. Applicable only when Interlock Type = 0 or 1. The delay can be set to allow the
Open_Delay 0–2500 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.
Checks Enable On/Off When programmed On, the controller performs ongoing checks to ensure that
Checks_Enable On/Off the main contactor has closed properly each time it is commanded to do so,
OptionBits1 [Bit 2] 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.
Main DNC Threshold 0–84.0 V When Checks Enable = On, this parameter is used as the threshold for
Main_DNC_Threshold 0–5376 detecting a Main Did Not Close fault. The Main DNC Threshold is the
maximum voltage difference between the Keyswitch and Capacitor
voltages. When the voltage difference is above 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.
Precharge Enable On/Off Turns the precharge feature on and off. Precharge provides a limited
Precharge_Enable On/Off current charge of the controller’s internal capacitor bank before the main
OptionBits2 [Bit 6] contactor is closed. This decreases the arcing that would otherwise occur
when the contactor is closed with the capacitor bank discharged.
PD Enable On/Off Determines how the PWM of the proportional driver is controlled.
PD_Enable On/Off When programmed On, it is controlled by the controller’s PD current control
OptionBits1 [Bit 6] software. When programmed Off, it is controlled by the VCL function
Put_PWM (PWM5, value); see Figure 17, page 99.
Hyd Lower Enable On/Off When programmed On, lowering is controlled by throttle position.
Hyd_Lower_Enable On/Off When programmed Off, lowering is controlled by the VCL variable VCL_PD_
OptionBits1 [Bit 7] Throttle; see Figure 17, page 99.
PD Max Current 0.0–2.0 A * The Lower speed is determined by the aperture of the proportional valve.
PD_Max_Current 0–607 This parameter sets the maximum allowed current through the valve,
which in turn defines its aperture.
PD Min Current 0.0–2.0 A * Sets the minimum allowed current through the proportional valve.
PD_Min_Current 0–607 Most proportional valves need a non-zero closed current in order to start
opening immediately when Lower is requested.
PD Dither % 0–100 % * Dither provides a constantly changing current in the coil to produce a rapid
PD_Dither_Percent 0–32767 back-and-forth motion of the valve; this keeps the valve lubricated and allows
low-friction, precise movement. The PD Dither % parameter specifies the
amount of dither as a percentage of the PD max current, and is applied in
a continuous cycle of add%-subtract%.
PD Dither Period 16–112 msec * Sets the period for proportional valve dither.
PD_Dither_Period 1–7
PD Kp 1–100 % * Sets the proportional gain of the current feedback controller. Higher gains
PD_Kp 82–8192 force the control loop to respond quickly but may cause oscillations.
PD Ki 1–100 % * Sets the integral gain of the current feedback controller. Integral gain tries
PD_Ki 327–32767 to force the error to zero. Higher gains force the control loop to respond
quickly but may cause oscillations.
Contactor Enable On/Off When programmed On, VCL functions control Driver 3 as the hydraulic
Hydraulic_Contactor_Enable On/Off pump contactor.
OptionBits4 [Bit 1] On: The VCL function Start_Pump() will close the pump contactor
according to the defined pull-in and holding voltages. The VCL function
Stop_Pump() will open the pump contactor.
Off: Driver 3 will be available for general VCL usage. Start_Pump()
and Stop_Pump() will not have any effect.
Pull In Voltage 0–100 % The hydraulic contactor pull-in voltage parameter allows a high initial
Hydraulic_Pull_In_Voltage 0–32767 voltage when the hydraulic contactor driver first turns on, to ensure con-
tactor closure. After 1 second, this peak voltage drops to the contactor
holding voltage.
Note: This voltage will be battery voltage compensated.
Holding Voltage 0–100 % The hydraulic contactor holding voltage parameter allows a reduced
Hydraulic_Holding_Voltage 0–32767 average voltage to be applied to the contactor coil once it has closed. This
parameter must be set high enough to hold the contactor closed under all
shock and vibration conditions the vehicle will be subjected to.
Note: This voltage will be battery voltage compensated.
External Supply Max 5–200 mA Sets the upper threshold of the combined current of the 5V and 12V
External_Supply_Max 52–800 external supplies. At or above this threshold a fault will be created that
can be read by VCL.
External Supply Min 5–200 mA Sets the lower threshold of the combined current of the 5V and 12V
External_Supply_Min 52–800 external supplies. At or below this threshold a fault will be created that
can be read by VCL.
PWM Frequency 100–1000 Hz This single parameter defines the frequency of Drivers 1 through 4.
PWM_Frequency 100–1000
MOTOR MENU
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Typical Max Speed 500–8000 rpm Set this parameter to the typical maximum motor speed of the vehicle.
Typical_Max_Speed 500–8000 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 fixed 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).
Swap Encoder Direction On/Off Changes the motor encoder’s effective direction of rotation. The encoder
Swap_Encoder_Direction On/Off provides data used to calculate motor position and speed. This parameter
OptionBits3 [Bit 0] must be set such that when the motor is turning forward, the controller
reports back a positive motor speed.
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.
Swap Two Phases On/Off If, after Swap Encoder Direction has been set correctly, the vehicle drives
Swap_Two_Phases On/Off in the wrong direction (i.e., drives forward when in reverse, and vice
OptionBits3 [Bit 3] 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.
Encoder Steps 32–256 Sets the number of encoder pulses per revolution. This must be set to
Encoder_Steps 32–256 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.
Fault Detection Enable On/Off When programmed On, encoder fault checking is enabled.
Encoder_Fault_Detection_Enable On/Off Two fault conditions are checked: Encoder Fault (fault code 36) and Stall
Encoder_Fault_Detection_Enable_ Detected (fault code 73).
Bit0 [Bit 0]
Fault Stall Time 0–10 sec Sets a timer when no motor encoder movement is detected. If no motor
Enc_Fault_Stall_Time 0–5000 encoder movement is detected for the programmed Fault Stall time, with
maximum throttle applied, a Stall Detected fault (fault code 73) is issued.
LOS Upon Encoder Fault On/Off Limited Operating Strategy (LOS) is typically used to drive the vehicle back
LOS_Upon_Encoder_Fault On/Off to a repair center at very low speeds in the event the motor encoder fails.
LOS_Upon_Encoder_Fault_ Following an encoder failure ((either Encoder Fault (fault code 36) or
Bit0 [Bit 0] Stall Detected (fault code 73)), and after the Interlock is cycled, the vehicle
enters LOS mode thus allowing drive without motor encoder feedback.
In LOS mode, the ability to achieve maximum torque—even for a very
short time—is considered more important than smoothness.
When LOS mode is entered, the Encoder LOS fault (fault code 93)
becomes active and the encoder fault ((either Encoder Fault (fault code 36)
or Stall Detected (fault code 73)) is cleared.
When this parameter is programmed On, LOS mode will be entered in
the event of an encoder fault followed by an Interlock cycle.
When programmed Off, in the event of an encoder fault the encoder
fault remains and drive is disabled.
LOS Max Speed 100–2000 rpm This parameter indirectly defines the maximum speed for LOS mode by
Enc_LOS_Max_Speed 100–2000 setting the maximum frequency that corresponds to LOS Max Speed.
In LOS mode the throttle commands a frequency that is interpolated lin-
early between zero (at Throttle Command = 0%) and the programmed LOS
Max Speed (at Throttle Command = 100%).
LOS Max Current 100–650 A In LOS mode, a partial or full throttle command will result in the maximum
Enc_LOS_Max_Current 1000–6500 current set by this parameter. This current setting is clamped by the
controller’s rated current.
LOS Max Mod Depth 15–100 % In LOS mode, the maximum modulation depth acts to limit the current
Enc_LOS_Max_Mod_Depth 177–1182 at higher speeds. This parameter should be set such that the modulation
depth limit is reached prior to the LOS Max Speed limit, so that the motor
current will fall off from LOS Max Current at higher speeds. This may allow
the vehicle to drive longer in LOS mode, as it lessens the chance of the
motor or controller overheating.
LOS Accel Rate 2.0–15.0 sec Defines the rate (in seconds) at which the frequency increases when full
Enc_LOS_Accel_Rate 2000–15000 throttle is applied, while operating in LOS mode. This parameter should be
set to a slow rate (high parameter value) so the frequency command has a
very slow slew rate to ensure that the max torque point is hit for a reason-
able period of time; this decreases the probability of going over the slip
curve, and allows ramps or obstacles to be overcome.
LOS Decel Rate 2.0–15.0 sec Defines the rate (in seconds) at which the frequency decreases when
Enc_LOS_Decel_Rate 2000–15000 throttle is released, while operating in LOS mode.
Sensor Enable On/Off When programmed On, the motor temperature cutback and the motor
MotorTemp_Sensor_Enable On/Off temperature compensation features are enabled. This parameter can be
OptionBits3 [Bit 1] used only if a temperature sensor has been properly configured.
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 efficiency
and more consistant performance.
Sensor Type 1–5 Five sensor types are predefined in the software:.
MotorTemp_Sensor_Type 1–5 Type 1 KTY83–122
Type 2 2× Type 1, in series
Type 3 KTY84–130 or KTY84–150
Type 4 2× Type 3, in series
Type 5 PT1000.
Custom sensor types can be set up easily, if none of the five predefined
types is appropriate for your application. Please contact your Curtis
customer support engineer.
Sensor Temp Offset -20 – 20 °C Often the sensor is placed in the motor at a location with a known offset
MotorTemp_Sensor_Offset -200–200 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 0–250 °C Defines the temperature at which drive current cutback begins.
MotorTemp_Hot 0–2500
Temperature Max 0–250 °C Defines the temperature at which drive current is cut back to zero.
MotorTemp_Max 0–2500
MotorTemp LOS Max Speed 100–3000 rpm When a Motor Temp Sensor Fault (fault code 29) is set, a LOS (Limited
MotorTemp_LOS_Max_Speed 100–3000 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
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Nominal Voltage 24–84 V Must be set to the vehicle’s nominal battery pack voltage. This parameter
Nominal_Voltage 1536–5376 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, Under-
voltage Cutback Range, User Overvoltage, and User Undervoltage parameter
settings and the controller’s minimum voltage and maximum voltage ratings:
VOLTAGE RATINGS
BROWNOUT MIN MAX
CONTROLLER VOLTAGE * VOLTAGE VOLTAGE
24V 15V 16.8V 30V
24–36V 15V 16.8V 45V
36–48V 20V 25.2V 60V
48–80V 20V 33.6V 105V
72–96V 30V 50.4V 120V
* The Brownout Voltage is determined by the controller base type and cannot
be changed. When the capacitor voltage falls below the Brownout voltage
the bridge is switched off (i.e., motor current is switched off). If the capacitor
voltage stays below the Brownout voltage for > 64 msec the controller will reset
(equivalent to cycling the keyswitch). If the capacitor voltage rises above the
Brownout voltage before 64 msec have passed the bridge will be reenabled.
The Severe Undervoltage point can be set lower than the Brownout voltage.
Undervoltage Cutback Range 2.0–14.0 V This parameter sets the voltage range between the Undervoltage and
Undervoltage_Cutback_Range 0–4096 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 115–200 % The value of this parameter is a percentage of the Nominal Voltage setting.
User_Overvoltage 293–512 The User Overvoltage parameter can be used to adjust the overvoltage
threshold, which is the voltage at which the controller will cut back regen
braking to prevent damage to the electrical system.
Typically this parameter is changed only when the controller is being
used in an application at the low end of the controller’s range: such as
a 48–80V controller being used in a system with a 48V battery pack. In
this case, the overvoltage threshold can be raised by setting the User
Overvoltage to a higher value. The overvoltage threshold can never be
raised above the controller’s power base maximum voltage rating.
User Undervoltage 50–80 % The value of this parameter is a percentage of the Nominal Voltage setting.
User_Undervoltage 128–204 The User Undervoltage parameter can be used to adjust the undervoltage
threshold, which is the voltage at which the controller will cut back drive current
to prevent damage to the electrical system.
Typically this parameter is changed only when the controller is being used
in an application at the high end of the controller’s range: such as a 24–36V
controller being used in a system with a 36V battery pack. In this case, the
undervoltage threshold can be lowered by setting the User Undervoltage to
a lower value. The undervoltage threshold can never be lowered below the
controller’s power base minimum voltage rating.
BDI Algorithm
The BDI (battery discharge indicator) algorithm continuously calculates
the battery state-of-charge whenever KSI is on. The result of the BDI algo-
rithm is the variable BDI Percentage, which is viewable in the 1313 menu
Monitor » Battery. When KSI is turned off, the present BDI Percentage is
stored in nonvolatile memory.
The standard values for volts per cell are as follows, for flooded lead
acid and sealed maintenance-free batteries.
BATTERY TYPE
FLOODED SEALED
Use the standard values for your type of batteries as the starting point in
setting the reset, full, and empty volts-per-cell parameters.
Reset Volts Per Cell 0.90–3.00 V The reset voltage level is checked only once, when KSI is first turned on.
BDI_Reset_Volts_Per_Cell 900–3000 Note that the BDI Reset Percent parameter also influences 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.*
Full Volts Per Cell 0.90–3.00 V The full voltage level sets the Keyswitch Voltage that is considered to be
BDI_Full_Volts_Per_Cell 900–3000 100% state-of-charge; when a loaded battery drops below this voltage,
it begins to lose charge. Keyswitch Voltage is viewable in the 1313 menu
Monitor » Battery.
Full Voltage Level = Full Volts Per Cell × number of cells in the battery
pack.*
Empty Volts Per Cell 0.90–3.00 V The empty voltage level sets the Keyswitch_Voltage that is considered to
BDI_Empty_Volts_Per_Cell 900–3000 be 0% state-of-charge.
Empty Voltage Level = Empty Volts Per Cell × number of cells in the
battery pack.*
Discharge Time 0–600 min. Sets the minimum time for the BDI algorithm to count down the BDI
BDI_Discharge_Time 0–600 Percentage from 100% to 0%. The BDI algorithm integrates the time the
filtered 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.
BDI Reset Percent 0–100 % When a battery has a high BDI percentage, its float voltage at KSI On
BDI_Reset_Percent 0–100 can sometimes cause false resets. The BDI Reset Percent parameter
addresses this problem by allowing the user to define a BDI Percentage
value above which the BDI Percentage variable will not reset.
When KSI is first powered on, the BDI Percentage variable will reset
to 100% only if ((Keyswitch Voltage > Reset Voltage Level) and (BDI
Percentage < BDI Reset Percent)).
FOR DUAL DRIVE PARAMETERS, SEE THE DUAL DRIVE ADDENDUM, P/N 37022-DD.
VEHICLE MENU
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Metric Units On/Off When this parameter is programmed On, the distance variables (Vehicle
Metric_Units On/Off Odometer, Braking Distance Captured, Distance Since Stop, Distance Fine,
OptionBits3 [Bit 5] and the Capture Distance variables) will accumulate and display in metric
units (km, meters, or decimeters). When programmed Off, the distance
variables will accumulate and display in English units (miles, feet, or inches).
Distance variables are displayed in the Monitor » Vehicle menu, page 73.
Speed to RPM 10.0–3000.0 This parameter affects the vehicle speed displayed in the Monitor » Motor
Speed_to_RPM 100–30000 menu (see page 70), and also modifies 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)*5305, where G = gear ratio, d = tire diameter [mm].
MPH to RPM: (G/d)*336.1, where G = gear ratio, d = tire diameter [in].
Capture Speed 1 0–8000 rpm The controller captures the time it takes the motor to go from 0 rpm to the
Capture_Speed_1 0–8000 programmed Capture Speed. The result is stored as “Time to Speed 1”
in the Monitor » Vehicle menu (page 73). This timer starts every time the
motor accelerates from zero speed.
Capture Speed 2 0–8000 rpm This parameter allows a second capture speed to be defined, and works
Capture_Speed_2 0–8000 identically to Capture Speed 1. The result is stored as “Time to Speed 2”
in the Monitor » Vehicle menu (page 73).
Capture Distance 1 1–1320 The controller captures the time it takes the vehicle to travel from 0 rpm to
Capture_Distance_1 1–1320 the programmed Capture Distance. The result is stored as “Time to Dist 1”
in the Monitor » Vehicle menu (page 73). 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 1–1320 This parameter allows a second capture distance to be defined, and works
Capture_Distance_2 1–1320 identically to Capture Distance 1. The result is stored as “Time to Dist 2” in
the Monitor » Vehicle menu.
Capture Distance 3 1–1320 This parameter allows a third capture distance to be defined, and works
Capture_Distance_3 1–1320 identically to Capture Distance 1. The result is stored as “Time to Dist 3” in
the Monitor » Vehicle menu.
EMERGENCY REVERSE MENU [SPEED MODE & SPEED MODE EXPRESS only]
ALLOWABLE
PARAMETER RANGE DESCRIPTION
EMR Enable On/Off Determines whether the emergency reverse function is active.
EMR_Enable On/Off On = emergency reverse is enabled.
OptionBits1 [Bit 1] Off = emergency reverse is disabled.
EMR Type 0–3 Determines where the input comes from for emergency reverse.
EMR_Type 0–3 0 = emergency reverse activated by switch 1 (pin 24).
1 = emergency reverse is activated by VCL functions
Enable_Emer_Rev() and Disable_Emer_Rev().
2 = emergency reverse activated by switch 1 (pin 24), but works only
when vehicle is moving forward (forks trailing).
3 = emergency reverse is activated by VCL functions
Enable_Emer_Rev() and Disable_Emer_Rev(), but works only
when vehicle is moving forward (forks trailing).
EMR Dir Interlock On/Off Determines whether the interlock switch must be turned off after emergency
EMR_Dir_Interlock On/Off reverse before the vehicle can be driven again.
EMR_Dir_Interlock_Bit0 [Bit 0] On = Interlock and throttle and direction must all be cleared.
Off = Only throttle and direction must be cleared.
EMR Time Limit 0–30 sec Defines how long emergency reverse is allowed to be active after the vehicle
EMR_Time_Limit 0–3750 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 0–30
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 50–6000 rpm Defines the maximum reverse speed of the motor (in motor rpm), when
EMR_Speed 50–6000 emergency reverse is active.
EMR Accel Rate 0.1–3.0 sec Sets the rate (in seconds) at which the vehicle accelerates in the opposite
EMR_Accel_Rate 100–3000 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.
EMR Decel Rate 0.1–3.0 sec Sets the rate (in seconds) at which the vehicle brakes to a stop when
EMR_Decel_Rate 100–3000 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.
Decel Rate HS 0.1–30.0 Sets the rate (in seconds) that is used to slow down the vehicle when the
Interlock_Brake_Decel_ 100–30000 interlock is released at high vehicle speeds. Larger values represent slower
Rate_HS response.
Decel Rate LS 0.1–30.0 Sets the rate (in seconds) that is used to slow down the vehicle when the
Interlock_Brake_Decel_ 100–30000 interlock is released at low vehicle speeds. Larger values represent slower
Rate_LS response.
Interlock Brake Timeout 0–8.0 sec Controls the maximum allowable duration of an interlock braking event.
Interlock_Brake_Timeout 0–1000 The timer starts as soon as the interlock signal is removed. If the time expires
before the vehicle has slowed below the Set_Speed_Threshold, the EM brake
will engage automatically.
This timeout allows parallel usage of regen braking and the EM brake to
reduce stopping distance. If Interlock Brake Timeout expires and the motor is
still moving, regen braking will continue to retard vehicle motion in conjunction
with the EM brake.
Note: This parameter is only applicable when EM_Brake_Type = 1 or 2
(see page 47).
CANopen Interlock On/Off When programmed On, CAN NMT State must = 5 (operational state)
CANopen_Interlock_Enable On/Off in order for the interlock to be set; see Monitor » CAN Status menu, page 75.
OptionBits3 [Bit 2]
CAN Node ID 0–127 Sets the Node ID of the CANopen Slave system. The Node ID is the
CAN_Node_ID 0–127 first 7 bits of the 11-bit identifier (the COB ID).
Baud Rate -3 – 2 Sets the CAN baud rate for the CANopen Slave system:
CAN_Baud_Rate -3 – 2 -3=20Kbps, -2=50Kbps, -1=100Kbps,
0=125Kbps, 1=250Kbps, 2=500Kbps.
Heartbeat Rate 16–200 msec Sets the rate at which the CAN heartbeat messages are sent from the
CANopen_Heart_Beat_Rate 4–50 CANopen Slave system.
PDO Timeout Period 0–200 msec Sets the PDO timeout period for the CANopen Slave system. After the
CAN_PDO_Timeout_Period 0–50 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.
Emergency Message Rate 16–200 msec Sets the minimum rate between CAN emergency messages from the
CANopen_Emergency_ 4–50 CANopen Slave system. This prevents quickly changing fault states from
Message_Rate generating so many emergency messages that they flood the CAN bus.
Suppress CANopen Init 0–1 When Suppress CANopen Init is set = 1, at KSI On the initialization of the
Suppress_CANopen_Init 0–1 CANopen system is suppressed. Typically this is done so that the VCL
program can make changes to the CANopen system before enabling it (by
setting the variable Suppress_CANopen_Init = 0 and running the Setup_
CAN() function).
Contact your Curtis customer support engineer if you will be running the motor
characterization tests yourself. See Initial Setup, step bl, page 81.
FW Base Speed 200–6000 rpm This parameter needs to be reset each time the Motor Type is changed
FW_Base_Speed 200–6000 or the low speed current limit is changed. For example, if you lower Drive_
Current_Limit (page 40) or PL_Drive_Nominal (page 41), 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 fast—so that you’ll 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 0–100 % Determines the amount of high speed power the controller will allow, while still
Field_Weakening 0–1024 maintaining maximum effficiency 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 0–100 % Determines the control loop gains for field weakening. Setting the rate too low
Field_Weakening_Rate 0–500 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.
Motor Type 0–200 This parameter references a predefined table of motor parameters for many
Motor_Type 0–200 AC motors. Consult your local Curtis customer support engineer for information
on how to set this parameter based on your application and motor.
Reset Controller 0–1 Setting this parameter = 1 will reset the controller. This reset is similar to resetting
Reset_Controller 0–1 by cycling the keyswitch. Reset Controller has the advantage of resetting without
causing the parameter block to be reloaded into the 1313/1314 programmer.
4a
MONITOR MENU
Steer Pot 0–5.5 V Voltage at steer pot wiper (pin 17) on Dual
Steer_Pot_Raw 0–36044 Drive traction slave.
Ext Supply Current 5–200 mA Combined current of the external +12V and
Ext_Supply_Current 52–800 +5V voltage supplies (pins 25 and 26).
VCL Error Module 0–65536 A VCL Runtime Error (fault code 68) will
Last_VCL_Error_Module 0–65536 store additional information about the
cause of a VCL runtime error in the VCL
VCL Error 0–65536 Error Module and VCL Error variables. The
Last_VCL_Error 0–65536 resulting non-zero values can be compared
to the runtime VCL module ID and error
code definitions listed in the controller’s OS
SysInfo file, which should help pinpoint the
VCL error that caused the runtime error.
Motor Characterization Error 0–65536 A Motor Characterization Error (fault code 87)
Motor_Characterization_Error 0–65536 will store additional information in the Motor
Characterization Error variable:
0 = none
1 = encoder signal seen but unable to
determine step size; must set up
Encoder Step Size manually
2 = motor temp sensor fault
3 = motor temp hot cutback fault
4 = controller overtemp cutback fault
5 = controller undertemp cutback fault
6 = undervoltage cutback fault
7 = severe overvoltage fault
8 = encoder signal not seen, or one or
both channels missing
9 = motor parameters out of character-
ization range.
Base Speed Captured 0–8000 rpm Displays the value of the motor base speed
Base_Speed_Captured 0–8000 captured in the most recent acceleration.
This value is used to set the Base
Speed parameter (Program » Motor Control
Tuning » Field Weakening Control menu),
using the Base Speed set procedure
described on page 62.
Time to Speed 1 0–128 sec Time taken for the vehicle to go from zero
Time_to_Capture_Speed_1 0–32000 rpm to the programmed Capture Speed 1
(see Program » Vehicle menu, page 60)
during its most recent such acceleration.
Time to Speed 2 0–128 sec Time taken for the vehicle to go from zero
Time_to_Capture_Speed_2 0–32000 rpm to the programmed Capture Speed 2
(see Program » Vehicle menu, page 60)
during its most recent such acceleration.
Time Between Speeds 0–128 sec Time taken for the vehicle to go from
Time_Between_Capture_Speeds 0–32000 programmed Capture Speed 1 to pro-
grammed Capture Speed 2 (see Pro-
gram » Vehicle menu, page 60) during its
most recent such acceleration.
Time to Dist 1 0–128 sec Time taken for the vehicle to travel from
Time_to_Capture_Dist_1 0–32000 zero rpm to the programmed Capture
Distance 1 (see Program » Vehicle menu,
page 60) during its most recent such trip.
For accurate distance measurements,
the Speed to RPM parameter must be set
correctly (page 60).
Time to Dist 2 0–128 sec Time taken for the vehicle to travel from
Time_to_Capture_Dist_2 0–32000 zero rpm to the programmed Capture
Distance 2 (see Program » Vehicle menu)
during its most recent such trip.
For accurate distance measurements,
the Speed to RPM parameter must be set
correctly (page 60).
Time to Dist 3 0–128 sec Time taken for the vehicle to travel from
Time_to_Capture_Dist_3 0–32000 zero rpm to the programmed Capture
Distance 3 (see Program » Vehicle menu,
page 60) during its most recent such trip.
For accurate distance measurements,
the Speed to RPM parameter must be set
correctly (page 60).
PDO1 MOSI Byte Map* 0 – 232 Mapping objects for PDO1 MOSI’s eight bytes.
PDO1 MISO Byte Map* 0 – 232 Mapping objects for PDO1 MISO’s eight bytes.
PDO2 MOSI Byte Map* 0 – 232 Mapping objects for PDO2 MOSI’s eight bytes.
PDO2 MISO Byte Map* 0 – 232 Mapping objects for PDO2 MISO’s eight bytes.
4b
CONTROLLER INFORMATION MENU
This menu provides ID and version numbers for your controller hardware and
software.
Mfg Date Code 0–32767 Controller date of manufacture, with the first
Manuf_Date 0–32767 two digits indicating the year and the last
three indicating the day. For example, if the
serial number printed on your controller is
08045L.11493, the Mfg Date Code variable
will have the value of 08045 (45th day of
2008).
Param Blk Version 0–327.67 Version number of the parameter block that
Param_Blk_Ver 0–32767 is loaded into the controller.
Vehicle Serial Number 0–4294967295 Provided for OEM use and definition.
Vehicle_Serial_Number 0–4294967295 If not set by the OEM, the value will be zero.
5
INITIAL SETUP
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 64), you can start conducting the setup procedures. Note: If you
will be conducting the AC Motor Characterization Procedure, that will come
later.
☞
C AU T I O N
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 con-
nections are tight. Turn on the controller and plug in the 1313 programmer.
support engineer to resolve any issues about the interlock before continuing
with the setup procedure.
Once you have verified the interlock is off, you can set up the throttle
input. The Throttle Type parameter must be set to match the type of throttle
(1–5) and wiring that you are using, as described on pages 13–17. Adjust
the Forward Deadband, Forward Max, Reverse Deadband and Reverse Max
parameters to match the range of your throttle. The Throttle Pot value dis-
played on the Monitor » Inputs menu (page 66) 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 66) 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.
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.
matches the direction input. If the motor is turning in the correct direction but
appears to be “fighting 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.
☞
C AU T I O N Do not take the vehicle down off the blocks until the motor is re-
sponding properly.
Once the motor is responding properly, lower the vehicle to put the drive
wheels on the ground.
6
TUNING GUIDE
Many aspects of vehicle performance can be optimized, using the wide variety
of adjustable parameters available to the 1232/34/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.
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
find success with Speed Mode Express; however, for some applications vehicle
performance cannot be satisfactorily fine-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 applica-
tions, 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 54) 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
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 51) and some VCL will typi-
cally be used to set up the control of these valve driver outputs. Consult with
your Curtis customer support engineer regarding hydraulic valve control.
a. For traction applications, set Pump Enable to Off. For AC pump applica-
tions 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 54) 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. Typi-
cal 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.
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 ac-
tual motor speed will track the requested speed trajectory (speed trajec-
tory 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
47) 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 39).
• 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 1313 by about one third (i.e., final 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 five 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.
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 pa-
rameters 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 applica-
tions.
☞ 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 51) and some VCL will typi-
cally be used to set up the control of these valve driver outputs. Consult with
your Curtis customer support engineer regarding hydraulic valve control.
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 54) to the expected maximum speed of the motor.
d. Adjust the parameters shown in Figure 9 (page 38) to set up the throttle
mapping:
• Regen Current Limit (Current Limits menu, page 40)
• Drive Current Limit (Current Limits menu, page 40)
• Restraint Forward, Restraint Back (Restraint menu, page 39)
• Neutral Braking (Torque Mode » Response menu, page 36)
• Neutral Taper Speed (Torque Mode » Response menu, page 36)
• Creep Torque (Torque Mode » Response » Fine Tuning menu, page 37).
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.
The VCL functions described in the VCL Common Functions Manual are
available on 1232/34/36/38 controllers. These controllers also have these ad-
ditional functions:
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 power-
down. They must be initialized on power-up by explicit VCL assignments (i.e.,
User1 = 12).
NVUser1–15 EEPROM variables are 15 variables stored at power-down
and recalled by the operating system when the NVM_NVUser_Restore func-
tion 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 NVM3–NVM40. 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 User20–34). 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 defined 1313 parameters. These 1313
parameters can be defined as 16-bit by using the P_User variables or they can
VCL can modify the 1313 control mode parameters in RAM by using
the VCL variable name for the 1313 parameter. For example,
will change the RAM value of the speed control mode’s 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 1313 parameter
settings in EE memory can be changed by using the 1313 to change the values
in the program menus.
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.
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 ini-
tialization 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 filled with the present value of the driver output.
The proportional driver (Driver 5) is different from Drivers 1–4. It can
be controlled in two ways: with the proportional driver processing function
(see Figure 17, page 99) 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 97 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().
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 filled 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 1313 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 1313 parameter Throttle Type (or Brake Type) to an appropriate value of
1–4 as shown on pages 13–16. When set to a value of 1–4, 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 1313 parameter Throttle Type (or Brake Type) should
be set to a value of 5 (page 17). Setting the 1313 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 94).
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 define 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 con-
nections 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).
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 0–100% position of the potentiometer is represented by a value from
0–32767 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 0–100% 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 run-
ning 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 definable level if a fault occurs. Note that the
Setup_Pot_Faults() function will work for all throttle Types (1–5). See page 110
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 0–10V = 0–1023.
User2 = Analog2_Input
will fill the User2 RAM variable with the value of the voltage at pin 8.
The filtered values of the analog inputs are also available and are auto-
matically placed in VCL variables Analog1_Filtered and Analog2_Filtered.
Scaling is 0–10V = 0–1023. The default filter value is 328 (10 Hz) and can be
changed in VCL by changing the Analog1_Filter and Analog2_Filter values.
Scaling is 0–999Hz = 0–32767.
Analog Output
The 1234/36/38 controllers have one analog output (pin 30); the 1232 has no
analog output. This output is a special driver output. The switching stage is
filtered to provide a smooth average voltage, instead of the actual PWM wave-
form seen on Drivers 1–5. However, AnalogOut uses the same Put_PWM()
and Automate_PWM() used by these other drivers. The scaling is 0–10V =
0–32767.
Put_PWM(PWM6,6553)
will generate 2.0 volts at the analog output. VCL can monitor this output using
the variable Analog_Output.
Throttle Processing
The top of Figure 15 shows the throttle processing section. The throttle signal
chain flows 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 1313 Monitor » Inputs
menu. This throttle signal is then modified by the Throttle Type Processing
and Throttle Mapping blocks.
The Throttle Type Processing block combines the Throttle_Type param-
eter (see page 43) 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 43–44) 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 On—but 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 43), 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 1–4, 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 modified 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.”
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 1313 Monitor » Inputs menu.
Checking the value of Mapped_Throttle using the 1313 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 1313 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 34). 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 66), a fault has set throttle request = 0% (see the Troubleshooting
Chart, Table 5), or if Main_State ≠ 5 or 10 (see page 71).
After this selector switch the throttle signal is a VCL variable called
Throttle_Command, which is displayed in the 1313 Monitor » Inputs menu.
Throttle_Command is the final 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 1313 is a good way to see the final throttle sig-
nal. 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
1313 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
find how that signal progressed from input to final value.
The following throttle processing variables are accessible by VCL:
Brake Processing
Brake processing is optional as it can be turned Off (by setting Brake_Pedal_En-
able = Off, see page 46). 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 40) and Brake Taper Speed (page 37).
The lower part of Figure 15 shows the brake signal processing section.
The brake signal chain flows from left to right starting with the physical brake
pot. The voltage on the brake wiper input (pin 17) is input into the control-
ler and has the VCL variable name Pot2_Raw which is displayed in the 1313
Monitor » Inputs menu. This brake signal is then modified by the Brake Type
Processing and Brake Mapping blocks.
The Brake Type Processing block uses the Brake_Type parameter (page 46)
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 46).
The signal then passes through a selector switch. If the Brake_Type pa-
rameter is set to 5 (Brake Type = VCL input, see page 46), 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 1–4, 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 0–100% (0–32767). After the limiter
the brake signal is a VCL variable called Mapped_Brake, which is displayed in
the 1313 Monitor » Inputs menu. Checking the value of Mapped_Brake using
the 1313 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 46) 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 1313 Monitor » Inputs menu.
Brake_Command is the final value of the brake signal chain that is input
to the Control Mode Processing block; see Figure 16. Checking the value of
Brake_Command using the 1313 is a good way to see the final brake signal.
If Brake_Command is non-zero in Speed Mode Express or Speed Mode, the
throttle signal will be set to 0%.
Status1
* Bit0 = Main Contactor Welded (Code 38)
* Bit1 = Main Contactor Did Not Close (Code 39)
* Bit2 = Pot Low Overcurrent (Code 45)
* Bit3 = Throttle Wiper Low (Code 42)
* Bit4 = Throttle Wiper High (Code 41)
* Bit5 = Pot2 Wiper Low (Code 44)
* Bit6 = Pot2 Wiper High (Code 43)
* Bit7 = EEPROM Failure (Code 46)
Status2
* Bit0 = HPD/Sequencing Fault (Code 47)
* Bit1 = Severe Undervoltage (Code 17)
* Bit2 = Severe Overvoltage (Code 18)
* Bit3 = Undervoltage Cutback (Code 23)
* Bit4 = Overvoltage Cutback (Code 24)
* Bit5 = Not Used
* Bit6 = Controller Overtemp Cutback (Code 22)
* Bit7 = Controller Severe Undertemp (Code 15)
Status3
* Bit0 = Controller Severe Overtemp (Code 16)
* Bit1 = Coill Driver Open/Short (Code 31)
* Bit2 = Coi12 Driver Open/Short (Code 32)
* Bit3 = Coil3 Driver Open/Short (Code 33)
* Bit4 = Coi14 Driver Open/Short (Code 34)
* Bit5 = PD Open/Short (Code 35)
* Bit6 = Main Open/Short (Code 31)
* Bit7 = EMBrake Open/Short (Code 32)
Status4
* Bit0 = Precharge Failed (Code 14)
* Bit1 = Digital Out 6 Overcurrent (Code 26)
* Bit2 = Digital Out 7 Overcurrent (Code 27)
* Bit3 = Controller Overcurrent (Code 12)
* Bit4 = Current Sensor Fault (Code 13)
* Bit5 = Motor Temp Hot Cutback (Code 28)
* Bit6 = Parameter Change Fault (Code 49)
* Bit7 = Motor Open (Code 37)
Status5
* Bit0 = External Supply Out of Range (Code 69)
* Bit1 = Motor Temp Sensor Fault (Code 29)
* Bit2 = VCL Run Time Error (Code 68)
* Bit3 = +5V Supply Failure (Code 25)
* Bit4 = OS General (Code 71)
* Bit5 = PDO Timeout (Code 72)
* Bit6 = Encoder Fault (Code 36)
* Bit7 = Stall Detected (Code 73)
Status6
* Bit0 = Not Used
* Bit1 = Not Used
* Bit2 = Emer Rev HPD (Code 47)
* Bit3 = Not Used
* Bit4 = Motor Type Fault (Code 89)
* Bit5 = Not Used
* Bit6 = Motor Characterization Fault (Code 87)
* Bit7 = Pump Hardware Fault (Code 97) — model 1298 controllers only
Status7
* Bit0 = Not Used
* Bit1 = VCL/OS Mismatch (Code 91)
* Bit2 = EM Brake Failed to Set (Code 92)
* Bit3 = Encoder LOS (Limited Operating Strategy) (Code 93)
* Bit4 = Emer Rev Timeout (Code 94)
* Bit5 = Dual Severe Fault (Code 75)
* Bit6 = Fault On Other Traction Controller (Code 74)
* Bit7 = Illegal Model Number (Code 98)
Status8
* Bit0 = Pump Overcurrent (Code 95) — model 1298 controllers only
* Bit1 = Pump BDI (Code 96) — model 1298 controllers only
* Bit2 = Pump HPD (Code 47) — model 1298 controllers only
* Bit3 = Dualmotor Parameter Mismatch (Code 99)
* Bit4 = Not Used
* Bit5 = Not Used
* Bit6 = Not Used
* Bit7 = Not Used
UserFault2
* Bit0 = VCLfault9 (Code 59)
* Bit1 = VCLfault10 (Code 61)
* Bit2 = VCLfault11 (Code 62)
* Bit3 = VCLfault12 (Code 63)
* Bit4 = VCLfault13 (Code 64)
* Bit5 = VCLfault14 (Code 65)
* Bit6 = VCLfault15 (Code 66)
* Bit7 = VCLfault16 (Code 67)
The “Code” numbers result in the flashing of the controller status LEDs that
help identify the fault without use of a 1313. 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:
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
flashing of a code 52 on controller status LEDs and no fault actions will result
nor will the 1313 display any text about the fault.
To add automatic fault actions to the VCL faults, the VCL program-
mer must define 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 defined
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 Disable the motor
* Bit1 = ShutdownMainContactor Shut down the main contactor
(only if Main Enable = On)
* Bit2 = ShutdownEMBrake Shut down the EM brake
(only if EM Brake Disable Upon
Fault = On)
* Bit3 = ShutdownThrottle Set the Throttle_Command = 0%
* Bit4 = ShutdownInterlock Set the Interlock_State = Off
* Bit5 = ShutdownDriverl Shut down Driver1
* Bit6 = ShutdownDriver2 Shut down Driver2
* Bit7 = ShutdownDriver3 Shut down Driver3
* Bit8 = ShutdownDriver4 Shut down Driver4
* Bit9 = ShutdownPD Shut down Proportional Driver
* Bit10 = FullBrake Set the Brake_Command = 100%
* Bit11 = ShutdownPump Shut down DC pump
* Bit12 = TrimDisable Disable Dual Drive trim
calculation.
* Bit13 = SevereDual For Dual Drive system, one con-
troller has a severe fault but
the main contactor must stay
closed so the other controller
can continue to operate.
* Bit14 = ShutdownSteer Steer angle = 0°
* Bit15 = LOSDual For Dual Drive system, set the
max speed to Dual_LOS_Max_Speed
parameter for operation in
Limited Operating Strategy.
This time when UserFault1.2 is set, the operating system will ShutdownInterlock
and ShutdownThrottle (which will result in a Throttle_Command = 0%) in
MainLoop:
if (BDI_Percentage < 10)
{
UserFault1.2 = ON ;Set User fault bit
Put_Spy_Text(“BDI Low”) ;Send message to Model 840 display
}
else
{
UserFault1.2 = OFF ;Clear User fault bit
}
goto MainLoop
This example will result in the exact same actions as the last example, except
now the fault will be displayed in the 1313 System Faults menu (only while
the fault is set) and this fault will be logged into the 1313 Fault History menu
after being set. The text displayed in either of these 1313 menus will be the
text defined in the fault definition (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 1313 Fault History menu). The two variables that can be used in the
fault definitions for ALT_ADDRESS are Hist_UserFault1 and Hist_UserFault2;
these should be used in the fault definitions 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 definition
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 defines bit 1).
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 com-
ponents 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:
Syntax Enable_Precharge()
Parameters None.
Returns
0 – Precharge not enabled.
1 – Precharge successfully enabled.
Example Enable_Precharge()
This will attempt to precharge the capacitor bank.
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:
Syntax Disable_Precharge()
Parameters None.
Returns
0 – Precharge not aborted.
1 – Precharge successfully aborted.
Example Disable_Precharge()
This will attempt to abort the precharge of the capacitor bank and will clear any
precharge fault.
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 identification.
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 identification.
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).
ENABLE_EMER_REV()
This function is used to engage emergency reverse using VCL. The 1313 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 61. To view the current emergency reverse state, see
the 1313 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.
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 1313 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 func-
tion 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 1313 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.
Example Disable_Emer_Rev()
This will disable the emergency reverse function.
SET_INTERLOCK()
This function is used to engage the system interlock using VCL. The 1313 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 (1313 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 1313 menu Monitor » Inputs: Interlock. To view the
current main contactor state, see the 1313 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 (Inter-
lock_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 1313 In-
terlock 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 (1313 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 1313 menu Monitor » Inputs:
Interlock. The view the current main contactor state, see the 1313 menu Moni-
tor » 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.
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 0–6.25 V (0–400 counts). If this function
is not run, the default thresholds depend on the 1313 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.
1 0.1 V 5.5 V
2 none 5.5 V
3 0.1 V 5.5 V
4 0.1 V 5.5 V
5 (ONE_WIRE) none 5.5 V
5 (TWO_WIRE) 0.1 V 5.5 V
5 (THREE_WIRE) 0.1 V 5.5 V
Syntax Setup_Pot_Faults(Pot_ID,Low_Fault,High_Fault,
Fault_Value)
Parameters
Pot_ID identifies the throttle whose fault limits are being set:
THROTTLE_POT
BRAKE_POT
Low_Fault
Specifies the lower threshold voltage limit.
Scaling: 1 V = 64 counts.
High_Fault
Specifies 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 (0–32767).
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%.
START_PUMP()
This function is used to turn on the pump lift contactor. If the 1313 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 1313 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.
AUTOMATE_FREQUENCY_OUTPUT()
This function sets up the PD Driver (pin 2) PWM output to yield a frequency
proportional to the input variable at an execution rate of 16 ms. This output can be
used to drive an electronic speedometer or tachometer.
An additional VCL variable called Frequency_Output_Duty_Cycle works in
conjunction with the Automate_Frequency_Output() function to modify the duty
cycle of the output. The default value of Frequency_Output_Duty_Cycle is 50% (or
16384).
Syntax Automate_Frequency_Output()
Parameters
@Source Index of source value to be the input.
MinInput Holds the minimum value for the input.
MaxInput Holds the maximum value for the input.
MinOutput Holds the minimum value for the output in Hz.
MaxOutput Holds the maximum value for the output in Hz.
Returns
0 – PWM not automated.
1 – PWM automated.
Error Codes
Param_Range is returned when a parameter is out of range.
PT_Range is returned when the Parameter Table Index is out of range.
Example
To set up the PD Driver to output 500–1500 Hz (at duty cycle = 25%) for motor
speed in the range 100–4000 rpm:
Automate_Frequency_Output(@ABS_Motor_Speed,100,4000,500,1500)
These controllers detect a wide variety of faults or error conditions. Faults can
be detected by the operating system or by the VCL code. This section describes
the faults detected by the operating system.
Faults detected by VCL code (faults 51–67 in Table 5) cannot be defined
here as they will vary from application to application. Refer to the appropriate
OEM documentation for information on these faults.
DIAGNOSTICS
Diagnostics information can be obtained in either of two ways: (1) by reading
the display on a 1313 programmer or (2) by observing the fault codes issued
by the Status LEDs. See Table 4 for a summary of LED display formats.
The 1313 programmer will display all faults that are currently set as well
as a history of the faults that have been set since the history log was last cleared.
The 1313 displays the faults by name.
The pair of LEDs built into the controller (one red, one yellow) produce
flash codes displaying all the currently set faults in a repeating cycle. Each code
consists of two digits. The red LED flashes once to indicate that the first digit
of the code will follow; the yellow LED then flashes the appropriate number of
times for the first digit. The red LED flashes twice to indicate that the second
digit of the code will follow; the yellow LED flashes the appropriate number
of times for the second digit.
✱ ✲✲ ✱✱ ✲✲✲
(first 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 condi-
tions that set and clear each fault.
DISPLAY STATUS
Yellow and red LEDs both on solid Controller is in Flash program mode.
Red LED and yellow LED flashing Controller has detected a fault.
alternately 2-digit code flashed by yellow LED
identifies the specific fault; one or two
flashes by red LED indicate whether
first or second code digit will follow.
TROUBLESHOOTING
The troubleshooting chart, Table 5, provides the following information on all
the controller faults:
• fault code
• fault name as displayed on the programmer’s 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.
12 Controller Overcurrent 1. External short of phase U,V, or W Set: Phase current exceeded the current
ShutdownMotor; motor connections. measurement limit.
ShutdownMainContactor; 2. Motor parameters are mis-tuned. Clear: Cycle KSI.
ShutdownEMBrake; 3. Controller defective.
ShutdownThrottle; 4. Speed encoder noise problems.
FullBrake;
ShutdownPump.
13 Current Sensor Fault 1. Leakage to vehicle frame from phase Set: Controller current sensors have
ShutdownMotor; U, V, or W (short in motor stator). invalid offset reading.
ShutdownMainContactor; 2. Controller defective. Clear: Cycle KSI.
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
14 Precharge Failed 1. See Monitor menu » Battery: Set: Precharge failed to charge the capacitor
ShutdownMotor; Capacitor Voltage. bank to the KSI voltage.
ShutdownMainContactor; 2. External load on capacitor bank (B+ Clear: Cycle Interlock input or use VCL
ShutdownEMBrake; connection terminal) that prevents function Enable_Precharge().
ShutdownThrottle; the capacitor bank from charging.
FullBrake;
ShutdownPump.
15 Controller Severe Undertemp 1. See Monitor menu » Controller: Set: Heatsink temperature below -40°C.
ShutdownMotor; Temperature. Clear: Bring heatsink temperature
ShutdownMainContactor; 2. Controller is operating in an extreme above -40°C, and cycle interlock or KSI.
ShutdownEMBrake; environment.
ShutdownThrottle;
FullBrake;
ShutdownPump.
16 Controller Severe Overtemp 1. See Monitor menu » Controller: Set: Heatsink temperature above +95°C.
ShutdownMotor; Temperature. Clear: Bring heatsink temperature
ShutdownMainContactor; 2. Controller is operating in an extreme below +95°C, and cycle interlock or KSI.
ShutdownEMBrake; environment.
ShutdownThrottle; 3. Excessive load on vehicle.
FullBrake; 4. Improper mounting of controller.
ShutdownPump.
17 Severe Undervoltage 1. Battery Menu parameters are Set: Capacitor bank voltage dropped
Reduced drive torque. misadjusted. below the Severe Undervoltage limit
2. Non-controller system drain on battery. (see page 57) with FET bridge enabled.
3. Battery resistance too high. Clear: Bring capacitor voltage above
4. Battery disconnected while driving. Severe Undervoltage limit.
5. See Monitor menu » Battery:
Capacitor Voltage.
6. Blown B+ fuse or main contactor
did not close.
18 Severe Overvoltage 1. See Monitor menu » Battery: Set: Capacitor bank voltage exceeded
ShutdownMotor; Capacitor Voltage. the Severe Overvoltage limit (see page 57)
ShutdownMainContactor; 2. Battery menu parameters are with FET bridge enabled.
ShutdownEMBrake; misadjusted. Clear: Bring capacitor voltage below
ShutdownThrottle; 3. Battery resistance too high for given Severe Overvoltage limit, and then
FullBrake; regen current. cycle KSI.
ShutdownPump. 4. Battery disconnected while regen braking.
22 Controller Overtemp Cutback 1. See Monitor menu » Controller: Set: Heatsink temperature exceeded 85°C.
Reduced drive and brake Temperature. Clear: Bring heatsink temperature below
torque. 2. Controller is performance-limited 85°C.
at this temperature.
3. Controller is operating in an extreme
environment.
4. Excessive load on vehicle.
5. Improper mounting of controller.
23 Undervoltage Cutback 1. Normal operation. Fault shows that Set: Capacitor bank voltage dropped below
Reduced drive torque. the batteries need recharging. the Undervoltage limit (see page 57) with
Controller is performance limited the FET bridge enabled.
at this voltage. Clear: Bring capacitor voltage above the
2. Battery parameters are misadjusted. Undervoltage limit.
3. Non-controller system drain on battery.
4. Battery resistance too high.
5. Battery disconnected while driving.
6. See Monitor menu » Battery:
Capacitor Voltage.
7. Blown B+ fuse or main contactor
did not close.
24 Overvoltage Cutback 1. Normal operation. Fault shows that Set: Capacitor bank voltage exceeded the
Reduced brake torque. regen braking currents elevated the Overvoltage limit (see page 57) with the
battery voltage during regen braking. FET bridge enabled.
Controller is performance limited Clear: Bring capacitor voltage below the
at this voltage. Overvoltage limit.
2. Battery parameters are misadjusted.
3. Battery resistance too high for given
regen current.
4. Battery disconnected while regen braking.
5. See Monitor menu » Battery:
Capacitor Voltage.
25 +5V Supply Failure 1. External load impedance on the Set: +5V supply (pin 26) outside the
None, unless a fault action +5V supply (pin 26) is too low. +5V±10% range.
is programmed in VCL. 2. See Monitor menu » outputs: Clear: Bring voltage within range.
5 Volts and Ext Supply Current.
26 Digital Out 6 Overcurrent 1. External load impedance on Digital Set: Digital Output 6 (pin 19) current
Digital Output 6 driver Output 6 driver (pin 19) is too low. exceeded 15 mA.
will not turn on. Clear: Remedy the overcurrent cause
and use the VCL function Set_DigOut()
to turn the driver on again.
27 Digital Out 7 Overcurrent 1. External load impedance on Digital Set: Digital Output 7 (pin 20) current
Digital Output 7 driver Output 7 driver (pin 20) is too low. exceeded 15 mA.
will not turn on. Clear: Remedy the overcurrent cause
and use the VCL function Set_DigOut()
to turn the driver on again.
28 Motor Temp Hot Cutback 1. Motor temperature is at or above Set: Motor temperature is at or above the
Reduced drive torque. the programmed Temperature Hot Temperature Hot parameter setting.
setting, and the requested current is Clear: Bring the motor temperature
being cut back. within range.
2. Motor Temperature Control Menu
parameters are mis-tuned.
3. See Monitor menu » Motor:
Temperature and » Inputs: Analog2.
4. If the application doesn’t use a motor
thermistor, Temp Compensation
and Temp Cutback should be
programmed Off.
29 Motor Temp Sensor Fault 1. Motor thermistor is not connected Set: Motor thermistor input (pin 8) is at
MaxSpeed reduced (LOS, properly. the voltage rail (0 or 10V).
Limited Operating Strategy), 2. If the application doesn’t use a motor Clear: Bring the motor thermistor input
and motor temperature thermistor, Motor Temp Sensor voltage within range.
cutback disabled. Enable should be programmed Off.
3. See Monitor menu » Motor:
Temperature and » Inputs: Analog2.
31 Coil1 Driver Open/Short 1. Open or short on driver load. Set: Driver 1 (pin 6) is either open or
ShutdownDriver1. 2. Dirty connector pins. shorted. This fault can be set only when
3. Bad crimps or faulty wiring. Main Enable = Off.
Clear: Correct open or short, and cycle driver.
31 Main Open/Short 1. Open or short on driver load. Set: Main contactor driver (pin 6) is
ShutdownMotor; 2. Dirty connector pins. either open or shorted. This fault can be
ShutdownMainContactor; 3. Bad crimps or faulty wiring. set only when Main Enable = On.
ShutdownEMBrake; Clear: Correct open or short, and cycle driver
ShutdownThrottle;
FullBrake;
ShutdownPump.
32 Coil2 Driver Open/Short 1. Open or short on driver load. Set: Driver 2 (pin 5) is either open or
ShutdownDriver2. 2. Dirty connector pins. shorted. This fault can be set only when
3. Bad crimps or faulty wiring. EM Brake Type = 0.
Clear: Correct open or short, and cycle driver.
32 EMBrake Open/Short 1. Open or short on driver load. Set: Electromagnetic brake driver (pin 5)
ShutdownEMBrake; 2. Dirty connector pins. is either open or shorted. This fault can
ShutdownThrottle; 3. Bad crimps or faulty wiring. be set only when EM Brake Type >0.
FullBrake. Clear: Correct open or short, and cycle driver.
33 Coil3 Driver Open/Short 1. Open or short on driver load. Set: Driver 3 (pin 4) is either open or
ShutdownDriver3. 2. Dirty connector pins. shorted.
3. Bad crimps or faulty wiring. Clear: Correct open or short, and cycle driver.
34 Coil4 Driver Open/Short 1. Open or short on driver load. Set: Driver 4 (pin 3) is either open or
ShutdownDriver4. 2. Dirty connector pins. shorted.
3. Bad crimps or faulty wiring. Clear: Correct open or short, and cycle driver.
35 PD Open/Short 1. Open or short on driver load. Set: Proportional driver (pin 2) is either
ShutdownPD. 2. Dirty connector pins. open or shorted.
3. Bad crimps or faulty wiring. Clear: Correct open or short, and cycle driver.
36 Encoder Fault 1. Motor encoder failure. Set: Motor encoder phase failure detected.
ShutdownEMBrake; 2. Bad crimps or faulty wiring. Clear: Cycle KSI.
ShutdownThrottle. 3. See Monitor menu » Motor:
Motor RPM.
37 Motor Open 1. Motor phase is open. Set: Motor phase U, V, or W detected
ShutdownMotor; 2. Bad crimps or faulty wiring. open.
ShutdownMainContactor; Clear: Cycle KSI.
ShutdownEMBrake;
ShutdownThrottle;
FullBrake;
ShutdownPump.
38 Main Contactor Welded 1. Main contactor tips are welded Set: Just prior to the main contactor
ShutdownMotor; closed. closing, the capacitor bank voltage (B+
ShutdownMainContactor; 2. Motor phase U or V is disconnected connection terminal) was loaded for a
ShutdownEMBrake; or open. short time and the voltage did not
ShutdownThrottle; 3. An alternate voltage path (such as an discharge.
FullBrake; external precharge resistor) is Clear: Cycle KSI
ShutdownPump. providing a current to the capacitor
bank (B+ connection terminal).
39 Main Contactor Did Not Close 1. Main contactor did not close. Set: With the main contactor commanded
ShutdownMotor; 2. Main contactor tips are oxidized, closed, the capacitor bank voltage (B+
ShutdownMainContactor; burned, or not making good contact. connection terminal) did not charge to B+.
ShutdownEMBrake; 3. External load on capacitor bank Clear: Cycle KSI.
ShutdownThrottle; (B+ connection terminal) that pre-
FullBrake; vents capacitor bank from charging.
ShutdownPump. 4. Blown B+ fuse.
41 Throttle Wiper High 1. See Monitor menu » Inputs: Set: Throttle pot wiper (pin 16) voltage
ShutdownThrottle. Throttle Pot. is higher than the high fault threshold
2. Throttle pot wiper voltage too high. (can be changed with the VCL function
Setup_Pot_Faults()).
Clear: Bring throttle pot wiper voltage
below the fault threshold.
42 Throttle Wiper Low 1. See Monitor menu » Inputs: Set: Throttle pot wiper (pin 16) voltage
ShutdownThrottle. Throttle Pot. is lower than the low fault threshold
2. Throttle pot wiper voltage too low. (can be changed with the VCL function
Setup_Pot_Faults()).
Clear: Bring throttle pot wiper voltage
above the fault threshold.
43 Pot2 Wiper High 1. See Monitor menu » Inputs: Set: Pot2 wiper (pin 17) voltage
FullBrake. Pot2 Raw. is higher than the high fault threshold
2. Pot2 wiper voltage too high. (can be changed with the VCL function
Setup_Pot_Faults()).
Clear: Bring Pot2 wiper voltage below
the fault threshold.
44 Pot2 Wiper Low 1. See Monitor menu » Inputs: Set: Pot2 wiper (pin 17) voltage
FullBrake. Pot2 Raw. is lower than the low fault threshold
2. Pot2 wiper voltage too low. (can be changed with the VCL function
Setup_Pot_Faults()).
Clear: Bring Pot2 wiper voltage
above the fault threshold.
45 Pot Low Overcurrent 1. See Monitor menu » Outputs: Set: Pot low (pin 18) current exceeds 10mA.
ShutdownThrottle; Pot Low. Clear: Clear pot low overcurrent condition
FullBrake. 2. Combined pot resistance connected and cycle KSI.
to pot low is too low.
46 EEPROM Failure 1. Failure to write to EEPROM Set: Controller operating system tried to
ShutdownMotor; memory. This can be caused by write to EEPROM memory and failed.
ShutdownMainContactor; EEPROM memory writes initiated Clear: Download the correct software (OS)
ShutdownEMBrake; by VCL, by the CAN bus, by and matching parameter default settings
ShutdownThrottle; adjusting parameters with the into the controller and cycle KSI.
ShutdownInterlock; programmer, or by loading new
ShutdownDriver1;
ShutdownDriver2; software into the controller.
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
47 HPD/Sequencing Fault 1. KSI, interlock, direction, and throttle Set: HPD (High Pedal Disable) or
ShutdownThrottle. inputs applied in incorrect sequence. sequencing fault caused by incorrect
2. Faulty wiring, crimps, or switches at sequence of KSI, interlock, direction, and
KSI, interlock, direction, or throttle throttle inputs.
inputs. Clear: Reapply inputs in correct sequence.
3. See Monitor menu » Inputs.
47 Emer Rev HPD 1. Emergency Reverse operation has Set: At the conclusion of Emergency
ShutdownThrottle; concluded, but the throttle, forward Reverse, the fault was set because various
ShutdownEMBrake. and reverse inputs, and interlock inputs were not returned to neutral.
have not been returned to neutral. Clear: If EMR_Interlock = On, clear the
interlock, throttle, and direction inputs.
If EMR_Interlock = Off, clear the
throttle and direction inputs.
49 Parameter Change Fault 1. This is a safety fault caused by a Set: Adjustment of a parameter setting
ShutdownMotor; change in certain parameter that requires cycling of KSI.
ShutdownMainContactor; settings so that the vehicle will not Clear: Cycle KSI.
ShutdownEMBrake; operate until KSI is cycled.
ShutdownThrottle; For example, if a user changes the
FullBrake; Throttle Type this fault will appear
ShutdownPump. and require cycling KSI before the
vehicle can operate.
51–67 OEM Faults 1. These faults can be defined by the Set: See OEM documentation.
(See OEM documentation.) OEM and are implemented in the Clear: See OEM documentation.
application-specific VCL code. See
OEM documentation.
68 VCL Run Time Error 1. VCL code encountered a runtime Set: Runtime VCL code error condition.
ShutdownMotor; VCL error. Clear: Edit VCL application software to
ShutdownMainContactor; 2. See Monitor menu » Controller: fix this error condition; flash the new
ShutdownEMBrake; VCL Error Module and VCL Error. compiled software and matching
ShutdownThrottle; This error can then be compared to parameter defaults; cycle KSI.
ShutdownInterlock; the runtime VCL module ID and
ShutdownDriver1;
ShutdownDriver2; error code definitions found in the
ShutdownDriver3; specific OS system information file.
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
69 External Supply Out of Range 1. External load on the 5V and 12V Set: The external supply current (combined
None, unless a fault action supplies draws either too much or current used by the 5V supply [pin 26]
is programmed in VCL. too little current. and 12V supply [pin 25]) is either greater
2. Fault Checking Menu parameters than the upper current threshold or lower
Ext Supply Max and Ext Supply Min than the lower current threshold. The two
are mis-tuned. thresholds are defined by the External
3. See Monitor menu » Outputs: Supply Max and External Supply Min
Ext Supply Current. parameter settings (page 53).
Clear: Bring the external supply current
within range.
71 OS General 1. Internal controller fault. Set: Internal controller fault detected.
ShutdownMotor; Clear: Cycle KSI.
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
ShutdownInterlock;
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
72 PDO Timeout 1. Time between CAN PDO messages Set: Time between CAN PDO messages
ShutdownThrottle; received exceeded the PDO received exceeded the PDO Timeout
CAN NMT State set Timeout Period. Period.
to Pre-operational. Clear: Cycle KSI or receive CAN NMT
message.
73 Stall Detected 1. Stalled motor. Set: No motor encoder movement detected.
ShutdownEMBrake; 2. Motor encoder failure. Clear: Either cycle KSI, or
ShutdownThrottle; 3. Bad crimps or faulty wiring. detect valid motor encoder signals while
Control Mode changed to 4. Problems with power supply for operating in LOS mode and return
LOS (Limited Operating the motor encoder. Throttle Command = 0 and
Strategy). 5. See Monitor menu » Motor: Motor RPM = 0.
Motor RPM.
74 Fault On Other Traction Dual Drive fault: see Dual Drive manual.
Controller
75 Dual Severe Fault Dual Drive fault: see Dual Drive manual.
87 Motor Characterization Fault 1. Motor characterization failed during Set: Motor characterization failed during
ShutdownMotor; characterization process. See Monitor the motor characterization process.
ShutdownMainContactor; menu » Controller: Motor Clear: Correct fault; cycle KSI.
ShutdownEMBrake; Characterization Error for cause:
ShutdownThrottle; 0=none
FullBrake; 1=encoder signal seen, but step size
ShutdownPump. not determined; set Encoder Step
Size manually
2=motor temp sensor fault
3=motor temp hot cutback fault
4= controller overtemp cutback fault
5=controller undertemp cutback fault
6=undervoltage cutback fault
7=severe overvoltage fault
8=encoder signal not seen, or one or
both channels missing
9=motor parameters out of character-
ization range.
89 Motor Type Fault 1. The Motor_Type parameter value Set: Motor_Type parameter is set to an
ShutdownMotor; is out of range. illegal value.
ShutdownMainContactor; Clear: Set Motor_Type to correct value
ShutdownEMBrake; and cycle KSI.
ShutdownThrottle;
FullBrake;
ShutdownPump.
91 VCL/OS Mismatch 1. The VCL software in the controller Set: VCL and OS software do not match;
ShutdownMotor; does not match the OS software in when KSI cycles, a check is made to verify
ShutdownMainContactor; the controller. that they match and a fault is issued when
ShutdownEMBrake; they do not.
ShutdownThrottle; Clear: Download the correct VCL and OS
ShutdownInterlock; software into the controller.
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake;
ShutdownPump.
92 EM Brake Failed to Set 1. Vehicle movement sensed after the Set: After the EM Brake was commanded
ShutdownEMBrake; EM Brake has been commanded to set and time has elapsed to allow the
ShutdownThrottle. to set. brake to fully engage, vehicle movement
Position Hold is engaged 2. EM Brake will not hold the motor has been sensed.
when Interlock=On. from rotating. Clear: Activate the throttle.
93 Encoder LOS (Limited 1. Limited Operating Strategy (LOS) Set: Encoder Fault (Code 36) or Stall
Operating Strategy) control mode has been activated, as Detect Fault (Code 73) was activated,
Enter LOS control mode. a result of either an Encoder Fault and Brake or Interlock has been applied
(Code 36) or a Stall Detect Fault to activate LOS control mode, allowing
(Code 73). limited motor control.
2. Motor encoder failure. Clear: Cycle KSI or, if LOS mode was acti-
3. Bad crimps or faulty wiring. vated by the Stall Fault, clear by ensuring
4. Vehicle is stalled. encoder senses proper operation, Motor
RPM = 0, and Throttle Command = 0.
94 Emer Rev Timeout 1. Emergency Reverse was activated Set: Emergency Reverse was activated and
ShutdownEMBrake; and concluded because the EMR ran until the EMR Timeout timer expired.
ShutdownThrottle. Timeout timer has expired. Clear: Turn the emergency reverse input
2. The emergency reverse input is Off.
stuck On.
98 Illegal Model Number 1. Model_Number variable contains Set: Illegal Model_Number variable; when
ShutdownMotor; illegal value. For 1234/36/38 models, KSI cycles, a check is made to confirm
ShutdownMainContactor; a value other than 1234, 1236, 1238, a legal Model_Number, and a fault is
ShutdownEMBrake; or 1298 is illegal. For 1232 models, issued if one is not found.
ShutdownThrottle; a value other than 1232 is illegal. Clear: Download appropriate software
FullBrake; 2. Software and hardware do not match. for your controller model.
ShutdownPump. 3. Controller defective.
99 Dualmotor Parameter Mismatch Dual Drive fault: see Dual Drive manual.
9
MAINTENANCE
CLEANING
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.
☞
C AU T I O N
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 controller’s B+ and B-
terminals.
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 specifications for the battery
and motor connections.
FAULT HISTORY
The 1313 programmer can be used to access the controller’s fault history file.
The programmer will read out all the faults the controller has experienced
since the last time the fault history file 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 file. This allows the controller to accumulate a new file
of faults. By checking the new fault history file at a later date, you can readily
determine whether the problem was indeed fixed.
APPENDIX A
THEORY OF OPERATION
Power Section
The power section efficiently generates high current 3-phase AC signals from
the DC battery voltage to drive the AC motor as requested by the motor con-
trol algorithms.
The power section is implemented as three high frequency MOSFET
half-bridge power stages controlled by three pulse width modulators, as shown
in Figure A-2. Each half-bridge power stage is a parallel array of high-side and
low-side power MOSFETs mounted to Insulated Metal Substrate (IMS) circuit
board. This technology provides a very low thermal resistance to the heatsink
and enables high power capability in a compact area.
Heavy busbars connect the IMS modules to the external motor connec-
tion 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 flux 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 direc-
tion are simultaneously sensed by a quadrature-type speed encoder mounted
on the motor shaft.
APPENDIX B
VEHICLE DESIGN CONSIDERATIONS
REGARDING ELECTROMAGNETIC COMPATIBILITY (EMC)
AND ELECTROSTATIC DISCHARGE (ESD)
Emissions
Signals with high frequency content can produce significant emissions if con-
nected to a large enough radiating area (created by long wires spaced far apart).
Contactor drivers and the motor drive output from Curtis controllers can
contribute to RF emissions. Both types of output are pulse width modulated
square waves with fast rise and fall times that are rich in harmonics. (Note:
contactor drivers that are not modulated will not contribute to emissions.)
The impact of these switching waveforms can be minimized by making the
wires from the controller to the contactor or motor as short as possible and by
placing the wires near each other (bundle contactor wires with Coil Return;
bundle motor wires separately).
For applications requiring very low emissions, the solution may involve
enclosing the controller, interconnect wires, contactors, and motor together in
one shielded box. Emissions can also couple to battery supply leads and throttle
circuit wires outside the box, so ferrite beads near the controller may also be
required on these unshielded wires in some applications. It is best to keep the
noisy signals as far as possible from sensitive wires.
Immunity
Immunity to radiated electric fields can be improved either by reducing overall
circuit sensitivity or by keeping undesired signals away from this circuitry. The
controller circuitry itself cannot be made less sensitive, since it must accurately
detect and process low level signals from sensors such as the throttle potenti-
ometer. Thus immunity is generally achieved by preventing the external RF
energy from coupling into sensitive circuitry. This RF energy can get into the
controller circuitry via conducted paths and radiated paths.
APPENDIX C
CURTIS WEEE / RoHS STATEMENT, MARCH 2009
WEEE
The Directive 2002/96/EC on Waste Electrical and Electronic Equipment (WEEE)
was adopted by the European Council and Parliament and the Council of the Eu-
ropean Union on January 27, 2003. The aim of the directive was to improve the
collection and recycling of WEEE throughout the EU, and to reduce the level of
non-recycled waste. The directive was implemented into law by many EU member
states during 2005 and 2006. This document provides a general description of
Curtis’s approach to meeting the requirements of the WEEE legislation.
Note that the directive gave some flexibility to the member states in imple-
menting their individual WEEE regulations, leading to the definition of varying
implementation requirements by country. These requirements may involve consid-
erations beyond those reflected in this document. This statement is not intended
and shall not be interpreted or construed to be legal advice or to be legally binding
on Curtis or any third party.
Commitment
Curtis is committed to a safe and healthy environment and has been working
diligently to ensure its compliance with WEEE legislation. Curtis will comply
with WEEE legislation by:
• Designing its equipment with consideration to future dismantling,
recovery and recycling requirements;
• Marking its products that fall within the scope of the directive with
the required symbol and informing users of their obligation;
• To separate WEEE from general waste and dispose of it through the
provided recycling systems;
• Reporting information as required by each member state;
• Facilitating the collection, recycling and disposal of WEEE from private
households and other than private households (businesses) as defined
by the applicable member state regulation;
• Providing information to treatment centres according to the require-
ments defined in the local regulation.
RoHS
For several years now, Curtis has been implementing a rigorous program with the
aim of achieving full compliance with the Restrictions on the use of Hazardous
Substances (RoHS) Directive, 2002/95/EC.
Curtis has taken all available steps to eliminate the use of the six restricted
hazardous substances listed in the directive wherever possible. As a result of the
Curtis RoHS program, many of our instrumentation product lines are now fully
RoHS compliant.
However, Curtis’s electronic motor speed controller products are safety-critical
devices, switching very large currents and designed for use in extreme environmental
conditions. For these product lines, we have successfully eliminated five out of the
six restricted hazardous substances. The single remaining issue preventing full RoHS
compliance is the unsuitability of the lead-free solders available to date, due to the
well-documented issues such as tin whiskers, and premature failure (compared with
leaded solder) due to shock, vibration, and thermal cycling.
Curtis is closely monitoring all RoHS developments globally, and in par-
ticular is following the automotive industry’s attempts to introduce lead-free solder
as a result of the End of Life Vehicle (ELV) Directive, 2003/53/EC. To date, the
automotive industry has rejected all lead-free solder pastes due to a significant
reduction in reliability compared to leaded soldering.
Curtis firmly believes that the operating environments, safety requirements,
and reliability levels required of automotive electronics are directly analogous to
that of our speed controller products. As such, Curtis will not be switching to a
lead-free solder process until lead-free solder pastes and techniques are available
that meet the requirements of the RoHS study groups and ELV Automotive In-
dustry bodies. That is, when all known issues, including that of tin whiskers, are
satisfactorily resolved.
At this moment in time, all Curtis motor speed controllers used on industrial
vehicle applications are also regarded as exempt under EEE category 9 of the RoHS
directive 2002/95/EC. This means there is no requirement at this time for Curtis
control systems used on such equipment to comply with the directive. Curtis will
work closely with all key customers to ensure that whenever possible, we are in a
position to continue the supply of products should these exemptions expire.
APPENDIX D
PROGRAMMING DEVICES
PROGRAMMER FUNCTIONS
Programmer functions include:
Parameter adjustment — provides access to the individual programmable pa-
rameters.
Monitoring — presents real-time values during vehicle operation; these include
all inputs and outputs.
Diagnostics and troubleshooting — presents diagnostic information, and also a
means to clear the fault history file.
Programming — allows you to save/restore custom parameter settings files and
also to update the system software (not available on the 1311).
Favorites — allows you to create shortcuts to your frequently-used adjustable
parameters and monitor variables (not available on the 1311).
APPENDIX E
SPECIFICATIONS
Package environmental rating IP65; compliance requires AMPSEAL 35-pin connector header
Dimensions, W× L×H; Weight 1232: 140 × 180 × 71 mm (5.5" × 7.1" × 2.8"); 1.70 kg (3.8 lbs)
1234: 155 × 212 × 75 mm (6.1" × 8.3" × 3.0"); 2.84 kg (6.3 lbs);
1236: 165 × 232 × 85 mm (6.5" × 9.1" × 3.4"); 4.12 kg (9.1 lbs)
1238: 275 × 232 × 85 mm (10.8" × 9.1" × 3.4"); 6.82 kg (15.0 lbs)
EMC Designed to the requirements of EN12895
Safety Designed to the requirements of EN1175
UL UL recognized component per UL583
Note: Regulatory compliance of the complete vehicle system
with the controller installed is the responsibility of the OEM.
NOMINAL 2 MIN 1 HOUR
MODEL BATTERY VOLTAGE RATING RATING
NUMBER (volts) (amps) (amps)
1232-22XX 24 200 150
Notes: All current ratings are rms values per motor phase. Internal algorithms automatically reduce maximum current limit when
heatsink temperature is >85°C 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 25°C and a maximum heatsink temperature
of 85°C. No addtitional external heatsink is used for the 2-minute rating test.
1-hour ratings are based on an ambient temperature of 25°C with the controller mounted to a heatsink with a thermal
resistance of 0.43°C/W for the 1234, or 0.35°C/W for the 1236, or 0.25°C/W for the 1238, operating at a maximum baseplate
temperature of 85°C. These thermal resistances are approximately equivalent to a 0.5m × 0.5m × 8mm thick vertical steel
plate in free air with 6kph airflow on one side.