Curtis OS30 Manual
Curtis OS30 Manual
Curtis OS30 Manual
Models 1232E/34E/36E/38E
and 1232SE/34SE/36SE
Enhanced AC Controllers
for Induction Motors
and Surface Permanent Magnet Motors
» Software Version OS 30.0 «
CONTENTS
CONTENTS
1. OVERVIEW.............................................................................. 1
FIGURES / TABLES
FIGURES
fig. 1: Curtis 1232E/SE, 1234E/SE, 1236E/SE, 1238E controllers .... 1
fig. 2a: Mounting dimensions, Curtis 1232E/SE controller.................. 3
fig. 2b: Mounting dimensions, Curtis 1234E/SE controller.................. 4
fig. 2c: Mounting dimensions, Curtis 1236E/SE, 1238E 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 ......................................... 33
fig. 8: Braking response rate diagram ................................................ 34
fig. 9: Throttle mapping, torque control mode ................................. 40
fig. 10: Effect of gear soften parameter, torque control mode.............. 40
fig. 11: Effect of brake taper speed parameter, torque control mode .... 40
fig. 12: Drive current limiting map..................................................... 42
fig. 13: Regen current limiting map.................................................... 43
fig. 14: Throttle adjustment ............................................................... 45
fig. 15: VCL motor command diagram ............................................ 114
fig. 16: VCL control mode processing .............................................. 118
fig. 17: VCL proportional driver processing...................................... 119
. TABLES
1 — OVERVIEW
1 OVERVIEW
Curtis 1232E/SE, 1234E/SE, 1236E/SE, and 1238E AC motor controllers
provide accurate, dependable, and highly efficient control of speed and torque
of AC induction motors (ACIM) and surface permanent magnet synchronous
motors (SPM).
These AC controllers contain two microprocessors to provide exceptional
capability and functional safety. The primary microprocessor runs an advanced
field-oriented AC motor control while simultaneously running VCL software in
an embedded logic controller. The second microprocessor continuously moni-
tors the operation of the system, redundantly measuring inputs, crosschecking
results, and verifying critical timing and operations.
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 created by OEMs
as required. VCL opens new avenues of customization, allowing specific vehicle
application functions to be created quickly and easily within the motor controller
itself, often eliminating the need to use separate vehicle manager modules.
The CAN bus communications included within these controllers allow
these AC motor controllers to function as system CAN masters or CAN slaves
as 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.
These controllers are the ideal solution for traction, hoist, dual drive, and
other motor drive and vehicle control needs.
Like all Curtis controllers, the E and SE models offer superior operator control
of motor drive performance. Features include:
3 Closed-loop speed and torque control for both induction (ACIM) and
surface permanent magnet (SPM) motors
3 High efficiency, field-oriented motor control algorithms that enable
maximum possible motor torque generation for all operating conditions
More Features +
1 — OVERVIEW
140
W
U
129
B+
Status LED
B-
window
∅7.0 thru, 4 plcs
180
1232E 1232SE
71 75
8 12
W
U
V
155
140.4
Status LEDs
B+
B-
∅7.0 thru, 4 plcs
75 80
8 11
CAUTION
+ 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.
motor controllers.
275
255
M8 x 1.25,
5 plcs
1236E/SE
Status LEDs
W
165
145
FUSE
B+
B-
∅7.0 thru,
4 plcs
212 10
232
13 (typ.)
85
19
Dimensions in millimeters.
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 A.
These controllers contain ESD-sensitive components. Use appropriate
precautions in connecting, disconnecting, and handling the controller. See
installation suggestions in Appendix A for protecting the controller from ESD
damage.
M6 BOLT
11.75 mm MIN
10 mm MIN
DEPTH HIGH LOAD
DEPTH
SAFETY WASHER
1234SE
has larger LUG
terminal
M6 TERMINAL
M8 BOLT
LUG
M8 TERMINAL
13.75 mm MAX DEPTH
35 24
J1 23 13
12 1
* The related VCL columns are vital when writing VCL code (see Section 8).
VCL “functions” are used to access the various I/Os; VCL “references” are
predefined names for specific pins.
J1-1
KSI
KSI J1-13
EMERG. REV. J1-24 COIL RETURN
SWITCH 1 / ANALOG 1
PUMP
MAIN
BRAKE
PROP. VALVE
INTERLOCK J1-9 SWITCH 3
KEYSWITCH
J1-6
J1-10 DRIVER 1
SWITCH 4
J1-5
DRIVER 2
J1-11 SWITCH 5 J1-4
DRIVER 3
J1-12 SWITCH 6 J1-3
DRIVER 4
FORWARD J1-22 J1-19
SWITCH 7 DIGITAL DRIVER 6
REVERSE J1-33 J1-20
SWITCH 8 DIGITAL DRIVER 7
J1-14 J1-2
SWITCH 16 PROP. DRIVER
MAIN
EMERGENCY
STOP
B+
U
J1-8 SWITCH 2 / ANALOG 2
V AC
MOTOR MOTOR
TEMPERATURE
SENSOR W
J1-7
I/O GROUND
+5V
J1-26
Note: KTY sensor shown. BATTERY
The banded end must be J1-31
POSITION FEEDBACK A POSITION (24V–96V)
connected to I/O ground. J1-32
POSITION FEEDBACK B FEEDBACK
I/O GROUND
J1-7 **
B-
J1-30 ** quadrature encoder (ACIM motors)
ANALOG OUT (0–10V) *
sin/cos sensor (SPM motors)
CAN TERM H J1-21
Connect jumper for 120 Ω
CAN TERM L J1-34 CAN bus termination
CAN H J1-23
J1-15
THROTTLE POT
J1-27 +12V
J1-25 4
POT2 HIGH
BRAKE POT
TX
J1-28 3
J1-17 SERIAL PORT
POT2 WIPER
RX
J1-29 1 (4-pin Molex)
J1-18 I/O GROUND
J1-7 2
POT LOW
8
6 CURTIS
1232E/34E/36E/38E, 1232SE/34SE/36SE MODEL 840
5 DISPLAY
CONTROLLER
* 1232E and 1232SE do not include ANALOG OUT.
Fig. 3 Basic wiring diagram, Curtis 1232E/SE, 34E/SE, 36E/SE, and 38E motor controllers.
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
Curtis distributor or support engineer 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 these controllers. They are characterized
as one of five types in the programming menu of the 1313/1314 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. Pot Wiper input (Pin 16 or 17)
FASTER
Pot Low input (Pin 18)
5kΩ–0
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
responsibility of the OEM to provide appropriate throttle fault detection.
+
SENSOR
Pot Wiper input (Pin 16 or 17)
SENSOR OUTPUT (0–5V) -
I/O Ground Return (Pin 7)
I/O Ground Return (Pin 7)
SENSOR GROUND
Current Source
Pot Wiper input (Pin 16 or 17)
I source R throttle
I/O Ground Return (Pin 7)
3-wire Potentiometer
NOTE: Pins 15 and 16 are used together in the throttle pot; Pins 27 and 17 in the brake pot.
B+
WHT/BRN
GREEN
connector
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. Pot Wiper input (Pin 16 or 17)
FASTER
0–5kΩ
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
the corresponding Type 2 throttles; see Figure 5.
In a Type 4 throttle, the neutral point must be set up somewhere in the
center of the throw, with increasing voltage beyond this point providing increas-
ing forward command and voltages below this point providing increasing reverse
command. For example, you might set the Forward Deadband at 2.6 V with
Forward Max at 4 V, and Reverse Deadband at 2.4 V with Reverse Max at 1 V.
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 114). 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
your Curtis distributor or support engineer.
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.
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.
Note: The voltage at the switch inputs 3–8 and 16 must be above the high
threshold or below the low threshold for proper operation. Allowing these
inputs to fall between these thresholds for more than 100 milliseconds could
result in a Supervisor Fault (fault code 77).
Supervisor 5V clamp
μP DRIVER INPUTS
SWITCH INPUTS 100 kΩ (pins 6, 5, 4, 3, 2)
1-8, 16 Primary
μP
(pins 8-12, 22, μP DIGOUT INPUTS
24, 33, 14) 100 kΩ 100 kΩ
(pins 19, 20)
100 kΩ
Model 100 kΩ 127 kΩ
specific *
Supervisor 5V clamp
μP DRIVER INPUTS
SWITCH INPUTS 150 kΩ (pins 6, 5, 4, 3, 2)
1-8, 16 Primary
μP
(pins 8-12, 22, μP DIGOUT INPUTS
24, 33, 14) 150 kΩ 150 kΩ
(pins 19, 20)
150 kΩ
Model 150 kΩ 191 kΩ
specific *
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 63). 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 (see page 19).
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 pro-
tected against shorts to B+ or B-. Note: The 1232E/SE has no analog output.
Communications ports
Separate CAN and serial ports provide complete communications and pro-
gramming capability for all user available controller information.
The Curtis 1313 handheld and 1314 PC programmers plug into a con-
nector 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.
These signal tolerances must be maintained over the controller’s voltage and
temperature ranges and the vehicle’s speed range.
360 ° electrical (1 cycle)
Channel A
Channel B
90° ±30° >10 μs
180° ±18°
These signal tolerances must be maintained over the controller’s voltage and
temperature ranges and the vehicle’s speed range. The sin/cos waveform peaks
must be away from Vdd and ground by at least 0.5 V. In the example shown in
the timing diagram below, Vdd = 5 V.
Vdd 0.5 V
VA
Vdd
2 Vpp
VB
Vdd
2
Gnd 0.5 V
3 — PROGRAMMABLE PARAMETERS
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,
CAUTION
+ it is imperative that you perform the procedures outlined in Section 5,
which set up the basic system characteristics for your application.
3 — PROGRAMMABLE PARAMETERS
CONTROL MODE SELECT ............ p. 29 —Restraint .......................... p. 35 CURRENT LIMITS MENU ............. p. 41
—Restraint Forward —Drive Current Limit
0 - SPEED MODE EXPRESS ......... p. 30 —Restraint Back —Regen Current Limit
—Max Speed —Soft Stop Speed —Brake Current Limit
—Kp —Position Hold ............ p. 35 —EMR Current Limit
—Ki —Position Hold Enable —Interlock Brake Current Limit
—Accel Rate —Position Hold Timeout —Power Limiting Map ......... p. 42
—Decel Rate —Kp
—Brake Rate
—PL Nominal Speed
—Kd
—Pump Enable —Delta Speed
—Set Speed Settling Time
—Regen Lower Enable —Drive Limiting Map .... p. 42
—Set Speed Threshold
—Nominal
—Entry Rate
1 - SPEED MODE MENU —Plus Delta
—Exit Rollback Reduction
—Speed Controller ............... p. 31 —Plus 2xDelta
—Pump Enable.................. p. 36
—Plus 4xDelta
—Max Speed
—Regen Lower Enable...... p. 36 —Plus 8xDelta
—Kp
—Ki LS —Regen Limiting Map ... p. 43
2 - TORQUE MODE MENU
—Ki HS —Nominal
—Following Error Limit —Speed Limiter ................... p. 37 —Plus Delta
—Following Error Time —Max Speed —Plus 2xDelta
—Kp —Plus 4xDelta
—Vel Feedforward ........ p. 32
—Ki —Plus 8xDelta
—Kvff
—Kd
—Build Rate
—Response ........................ p. 38 THROTTLE MENU ....................... p. 44
—Release Rate
—Accel Rate —Throttle Type
—Acc Feedforward ........ p. 32
—Accel Release Rate —Forward Deadband
—Kaff
—Brake Rate —Forward Map
—Kbff —Forward Max
—Brake Release Rate
—Build Rate —Forward Offset
—Neutral Braking
—Release Rate —Reverse Deadband
—Neutral Taper Speed
—Response ......................... p. 33 —Forward Full Restraint Speed —Reverse Map
—Full Accel Rate HS —Back Full Restraint Speed —Reverse Max
—Full Accel Rate LS —Reverse Offset
—Fine Tuning ............... p. 39
—Low Accel Rate —Throttle Filter
—Creep Torque
—Neutral Decel Rate HS —HPD SRO Type
—Brake Full Creep Cancel
—Neutral Decel Rate LS —Sequencing Delay
—Creep Build Rate
—Full Brake Rate HS —VCL Throttle Enable
—Creep Release Rate
—Full Brake Rate LS
—Gear Soften
—Low Brake Rate BRAKE MENU ............................ p. 47
—Brake Taper Speed
—Brake Pedal Enable
—Fine Tuning ............... p. 34 —Reversal Soften —Brake Type
—Partial Decel Rate —Max Speed Decel —Brake Deadband
—HS (High Speed)
—Brake Map
—LS (Low Speed)
—Brake Max
—Reversal Soften
—Brake Offset
—Max Speed Accel
—Brake Filter
—Max Speed Decel
—VCL Brake Enable
3 — PROGRAMMABLE PARAMETERS
3 — PROGRAMMABLE PARAMETERS
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]
To retain parameter values changed via CANopen SDO write messages following
a key-cycle, write a non-zero value to CAN_EE_Writes_Enabled (object index
0x332F, subindex 0x00) before changing parameter values. This will cause
changes to be written to non-volatile memory immediately. After completing
the changes, write the value zero to CAN_EE_Writes_Enabled.
CAUTION
+ Do not leave CAN_EE_Writes_Enabled at a non-zero value during
normal operation, because damage to the controller’s EEPROM may occur.
If you have questions regarding the CAN features, contact your Curtis
distributor or support engineer.
Control Mode Select pcf 0 – 2 This parameter determines which control method will be in effect when
Control_Mode_Select 0 – 2 programming motor response:
0x3010 0x00 0 = speed mode express
1 = speed mode
2 = torque mode.
Contact your Curtis distributor or support engineer 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.
This maximum allowed speed is displayed in the Monitor » Motor » Max Speed
Controller Limit variable.
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
0x3840 0x00 corresponds to a request for 40% of the set Max Speed Value.
Note: The maximum motor rpm is subject to the constraints on page 29.
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
0x3842 0x00 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 s 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.
0x3843 0x00
Decel Rate 0.1 – 30.0 s 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.
0x3847 0x00
Brake Rate 0.1 – 30.0 s 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
0x3848 0x00 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.
0x3896 0x00
Regen Lower Enable On / Off This parameter works together with Pump Enable as follows.
Regen_Lower_Enable_SpdM On / Off When Pump Enable = On and Regen Lower Enable = On, the pump
Regen_Lower_Enable_SpdM_Bit0 [Bit 0] motor can turn in both the forward and the reverse direction. In this case,
0x3877 0x00 the pump can be used as the Lower function (reverse).
When Pump Enable = On and Regen Lower Enable = Off, the pump
motor can turn only in the forward direction. In this case, a hydraulic valve
is typically used for the Lower function.
When Pump Enable = Off, the Regen Lower Enable parameter
has no effect on the control system.
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
0x3011 0x00 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 29.
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.
0x3012 0x00 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
0x3015 0x00 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.
0x301D 0x00
Following Error Limit 0 – 6000 rpm Defines the maximum difference that will be allowed between the commanded
Following_Error_Limit 0 – 6000 motor speed trajectory and the actual motor rpm. The real-time difference is
0x3035 0x00 displayed in Monitor » Motor Tuning » Following Error.
If the Following Error Limit is exceeded for the Following Error Time,
a Following Error Fault (fault code 48) is declared.
Following Error Time 500 – 5000 ms Defines the maximum time the Following Error Limit can be exceeded
Following_Error_Time 250 – 2500 before a Following Error Fault is declared.
0x38C0 0x00 Following Error Time must be set long enough for the motor speed
to decelerate and accelerate to maximum speed in the opposite direction
during a direction reversal under the worst case conditions.
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.
0x3014 0x00 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 s 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
0x3093 0x00 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 – 5.0 s Determines how fast the Kvff term releases. If the release seems too abrupt,
Vel_FF_Release_Rate_SpdM 100 – 5000 slowing the release rate (i.e., setting it to a higher value) will soften the feel.
0x3094 0x00 It should be set fast enough (i.e., at a low enough value) to prevent the
vehicle from running on after throttle release.
Build Rate 0.1 – 5.0 s 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
0x3095 0x00 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 – 5.0 s Determines how fast the Kaff and Kbff terms release. It should be set fast
Acc_FF_Release_Rate_SpdM 100 – 5000 enough (i.e., at a low enough value) to prevent the vehicle from running
0x3096 0x00 on after throttle release.
Full Accel Rate HS 0.1 – 30.0 s 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
0x307F 0x00 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 s 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.
0x3016 0x00
Low Accel Rate 0.1 – 30.0 s 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
0x3081 0x00 adjusted to affect low speed maneuverability.
Neutral Decel Rate HS 0.1 – 30.0 s 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.
0x3018 0x00
Neutral Decel Rate LS 0.1 – 30.0 s 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.
0x3070 0x00
Full Brake Rate HS 0.1 – 30.0 s 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
0x301B 0x00 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 s 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
0x3077 0x00 opposite direction.
Low Brake Rate 0.1 – 30.0 s 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
0x301A 0x00 amount of throttle is applied in the opposite direction.
In this example,
Full Accel Rate LS = 1.5
HS = 70%, Full Accel Rate HS = 3.0 90% Throttle
LS = 30%,
INCREASING THROTTLE
Partial Decel Rate 0.1 – 30.0 s 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.
0x3082 0x00 Larger values represent slower response.
HS (High Speed) 0 – 100 % Sets the percentage of the Typical Max Speed (page 55) above which
HS 0 – 32767 the “HS” parameters will be used.
0x3076 0x00
LS (Low Speed) 0 – 100 % Sets the percentage of the Typical Max Speed (page 55) below which
LS 0 – 32767 the “LS” parameters will be used.
0x3075 0x00
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
0x3074 0x00 and drive current limits are set to different values.
Max Speed Accel 0.1 – 30.0 s 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
0x384A 0x00 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 s 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
0x3846 0x00 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.
In this example,
Full Brake Rate HS = 1.5 100% Brake
HS = 70%, Full Brake Rate LS = 3.0
LS = 30%,
INCREASING BRAKE
Restraint Forward 0 – 100 % Increases torque when on a steep hill in order to limit roll-forward speed.
Restraint_Forward_SpdM 0 – 32767 Setting this parameter too high may cause oscillations in the motor as it
0x3020 0x00 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_SpdM 0 – 32767 Setting this parameter too high may cause oscillations in the motor as it
0x301F 0x00 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
0x3027 0x00 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 Enable pcf 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.
0x3893 0x00
Position Hold Timeout 0.0 – 20.0 s Sets the maximum time the vehicle will stay in Position Hold before
Position_Hold_Timeout_Time 0 – 625 releasing the hold and going into Restraint mode. Setting the parameter
0x388C 0x00 to zero disables this timeout function, which means the Position Hold
will be held. Activating the interlock resets the timer.
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
0x388D 0x00 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 ms This parameter appears twice in the menu structure. For description,
Set_Speed_Settling_Time 0 – 156 see EM Brake Control menu, page 48.
0x3024 0x00
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.
0x306F 0x00
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
0x383B 0x00 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 Control menu), or its timer has expired.
0x3844 0x00 It introduces a proportional feedforward term into the speed controller
based on the position signal. For example, suppose the vehicle is on a
ramp and a forward throttle request is given such that the vehicle rolls
back slightly before climbing the ramp (again, assuming the torque pre-
load 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.
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
AC_Pump_Enable_SpdM_Bit0 [Bit 0] and stability are enhanced.
0x3896 0x00
Regen Lower Enable On / Off This parameter works together with Pump Enable as follows.
Regen_Lower_Enable_SpdM On / Off When Pump Enable = On and Regen Lower Enable = On, the pump
Regen_Lower_Enable_SpdM_Bit0 [Bit 0] motor can turn in both the forward and the reverse direction. In this case,
0x3877 0x00 the pump can be used as the Lower function (reverse).
When Pump Enable = On and Regen Lower Enable = Off, the pump
motor can turn only in the forward direction. In this case, a hydraulic valve
is typically used for the Lower function.
When Pump Enable = Off, the Regen Lower Enable parameter
has no effect on the control system.
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
0x3021 0x00 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 29.
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.
0x3023 0x00 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.
0x3025 0x00 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
0x3836 0x00 top speed. If Kd is set too low, the vehicle may overshoot top speed,
especially when traveling downhill.
Accel Rate 0.1 – 30.0 s 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.
0x3026 0x00
Accel Release Rate 0.1 – 2.0 s 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
0x3028 0x00 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 s 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,
0x3029 0x00 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 s 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.
0x3831 0x00
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
0x302E 0x00 neutral braking parameter is adjustable from 0 to 100% of the regen
current limit (see Current Limits menu, page 41).
Neutral Taper Speed 200 – 6000 rpm Determines the motor speed below which neutral braking current
Neutral_Taper_Speed_TrqM 200 – 6000 is adjusted when throttle is reduced; see Figure 9.
0x302F 0x00 The neutral braking current is linearly reduced from Neutral
Braking * Regen Current Limit at the Neutral Taper Speed to the
Creep Torque current at zero rpm motor speed.
Note: Setting the taper speed too low may cause oscillations in
the motor.
Forward Full Restraint Speed 100 – 32000 rpm Sets the speed point at which the full regen current will be applied to
Forward_Full_Restraint_Speed 100 – 32000 restrain the vehicle from rolling forward. Although this speed is never
_TrqM actually reached, it does set the slope of the restraint strength and
0x386D 0x00 can be thought of as a gain; see Figure 9. Setting this parameter too
low can cause oscillations.
Back Full Restraint Speed 100 – 32000 rpm Sets the speed point at which the full regen current will be applied to
Back_Full_Restraint_Speed_TrqM 100 – 32000 restrain the vehicle from rolling in reverse (backward). Although this
_TrqM speed is never actually reached, it does set the slope of the restraint
0x386E 0x00 strength and can be thought of as a gain; see Figure 9. Setting this
parameter too low can cause oscillations.
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
0x3071 0x00 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 47), creep torque is
progressively disabled as brake is applied so as to prevent the motor
from driving into the brakes and thus wasting energy.
Creep Torque and Neutral Taper Speed interact to create the slope
of the torque response as the vehicle approaches zero speed; see
Figure 9. If the vehicle oscillates as it coasts down toward zero speed,
try lowering Creep Torque or increasing Neutral Taper Speed.
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.
0x3837 0x00
Creep Build Rate 0.1 – 5.0 s Determines how fast the programmed creep torque builds when
Creep_Build_Rate_TrqM 100 – 5000 a direction is selected.
0x3832 0x00
Creep Release Rate 0.1 – 5.0 s 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
0x3833 0x00 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.
0x302A 0x00 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.
0x300F 0x00 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.
If the vehicle is in restraint when the brake is pressed, the applied
braking torque is affected by both Brake Taper Speed and Forward (or
Back) Full Restraint Speed. If the vehicle oscillates in this mode, it may
be necessary to increase one or more of these parameters.
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
0x3074 0x00 and drive current limits are set to different values.
CURRENT +
Throttle=100% Curve
Regen Current Limit Drive Current Limit
Creep Torque
Throttle=0% Curve
MOTOR MOTOR
RPM - RPM +
Forward/Back
Full Restraint Speed Neutral Taper Speed
Fig. 10 Effect
of Gear Soften parameter
(torque control mode). %
0% 25
%
50
%
75 0%
n
= = = = 10
=
o fte
rS
ea
TORQUE
TIME
(percent)
100
Max Speed Decel 0.1 – 30.0 s In some applications, the Max Speed value is changed frequently,
Max_Speed_Decel_TrqM 100 – 30000 through VCL or over the CAN bus. The Max Speed Accel parameter
0x3835 0x00 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.
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
0x305B 0x00 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,
0x305C 0x00 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.*
0x305D 0x00 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
0x3037 0x00 of the controller’s full rated current.*
Interlock Brake Current Limit 5 – 100 % Sets the maximum RMS regen current during interlock braking,
Interlock_Brake_Current_Limit 1638 – 32767 as a percentage of the controller’s full rated current.*
0x309D 0x00
PL 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.
0x305E 0x00
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.
0x305F 0x00
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
0x3061 0x00 and delta speed parameters. The resulting map allows the
controller to reduce the drive current as a function of speed.
Plus 2xDelta 0 – 100 % Sets Reducing the power requirements at certain speeds
PL_Drive_Nominal_Plus_2xDelta 0 – 32767 restricts performance. This can be useful for reducing motor
0x3062 0x00 heating. It can also be used to keep consistent vehicle power
with changing battery state-of-charge.
Plus 4xDelta 0 – 100 % Sets
PL_Drive_Nominal_Plus_4xDelta 0 – 32767
0x3063 0x00
Fig. 12 Drive
current limiting map NOMINAL
100
POWER LIMIT (percent current limit)
(typical example).
80
60
40
20
0
4Δ
8Δ
2Δ
Δ
ED
L+
PE
L+
L+
L+
NA
LS
NA
NA
NA
MI
NA
MI
MI
MI
NO
NO
NO
NO
MI
NO
Fig. 13 Regen
current limiting map 100
NOMINAL
(two examples).
POWER LIMIT (percent current limit)
80
60
NOMINAL
40
20
0
4Δ
8Δ
2Δ
Δ
ED
L+
PE
L+
L+
L+
NA
LS
NA
NA
NA
MI
NA
MI
MI
MI
NO
NO
NO
NO
MI
NO
THROTTLE MENU
ALLOWABLE
PARAMETER RANGE DESCRIPTION
Throttle Type pcf 1 – 5 These E and SE controllers accept a variety of throttle inputs.
Throttle_Type 1 – 5 The throttle type parameter can be programmed as follows:
0x3000 0x00
1 2-wire rheostat, 5kΩ–0 input
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.00 – 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
0x3001 0x00 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
0x3002 0x00 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.00 – 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
0x3003 0x00 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
0x3004 0x00 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 0.5 – 125.0 Hz Sets the low pass filter cutoff frequency for the throttle pot wiper input.
Throttle_Filter 131 – 32767 Higher values will make the throttle more responsive to quick changes.
0x3030 0x00 Lower values will make the throttle less responsive to electrical noise.
Offset = 0. 20
10 Deadband parameter
adjusts this endpoint.
0
0 1.0 2.0 3.0 4.0 5.0
THROTTLE INPUT VOLTAGE (volts)
HPD SRO Type pcf 0 – 3 Determines the type of HPD (High Pedal Disable) / SRO (Static Return to Off)
HPD_SRO_Type 0 – 3 protection. One type of checks is available for material-handling vehicles, and
0x30CF 0x00 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 s Typically the sequencing delay feature allows the interlock switch to be cycled
Sequencing_Delay 0 – 1250 within a set time (the defined sequencing delay), thus preventing inadvertent
0x3009 0x00 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 114) will require
VCL_Throttle_Enable_Bit0 [Bit 0] VCL to define the connection between the OS_Throttle and VCL_Throttle
0x3099 0x00 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]
0x306A 0x00
Brake Type pcf 1 – 5 These E and SE controllers accept a variety of brake inputs. The brake type
Brake_Type 1 – 5 parameter can be programmed as follows:
0x300A 0x00 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 Filter 0.5 – 125.0 Hz Sets the low pass filter cutoff frequency for the pot2 wiper input.
Brake_Filter 131 – 32767 Higher values will make the brake more responsive to quick changes.
0x3031 0x00 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 114) will
VCL_Brake_Enable_Bit0 [Bit 0] require VCL to define the connection between the OS_Brake and VCL_Brake
0x301E 0x00 variables. This allows VCL flexibility and customization of throttle processing,
while still allowing Brake_Type 1–3 with brake fault detection.
Brake Type pcf 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.
0x3097 0x00 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
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 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
0x3072 0x00 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
0x3098 0x00 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 64). 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
0x302D 0x00 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
voltage dips to 40V. If Battery Voltage Compensated = On, the output will
still be 36V (Nominal Voltage × Holding Voltage) to the coil. If Battery Volt-
age Compensated = Off, the output will be 30V (Actual Voltage × Holding
Voltage) to the coil.
et EM Brake On Fault
S 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 9 for a list of all the faults that have a fault
Fault_Bit0 [Bit 0] action of ShutdownEMBrake.
0x309B 0x00
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
0x306F 0x00 brake sets and stops the motor.
Release Delay 40 – 2000 ms 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
0x3073 0x00 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 ms 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
0x3024 0x00 position hold to settle.
Note *
Torque Preload Delay 0 – 800 ms 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
0x3090 0x00 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,
0x389D 0x00 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 s 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
0x3091 0x00 cancelled. The purpose of this delay is to prevent the vehicle from lunging
forward if it is unloaded on a hill such that the torque measured by
position-hold is no longer valid.
Note: This parameter is applicable only when Torque Preload Enable =
On (see conditions above).
EM Brake Fault Motor Revs 1.0 – 20.0 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).
0x3894 0x00
* 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,
0x306A 0x00 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.
Main Interlock Type 0 – 1 When set to 0, the main contactor and interlock each work as determined
Main_Interlock_Type 0 – 1 by their respective parameters.
0x386F 0x00 When set to 1, the main contactor will pull in with KSI (like a Type 2
interlock) but the interlock enables/disables drive and engages interlock
braking (like a Type 0 or Type 1 interlock).
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.
0x303C 0x00 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
0x303D 0x00 parameter 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 64). 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
0x302C 0x00 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
voltage dips to 40V. If Battery Voltage Compensated = On, the output will
still be 36V (Nominal Voltage × Holding Voltage) to the coil. If Battery Volt-
age Compensated = Off, the output will be 30V (Actual Voltage × Holding
Voltage) to the coil.
Open Delay 0.0 – 40.0 s Applicable only when Interlock Type = 0 or 1. The delay can be set to
Open_Delay 0 – 10000 allow the contactor to remain closed for a period of time (the delay)
0x303F 0x00 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.
Weld Check Enable On / Off When programmed On, the controller performs a test to make sure the
Weld_Check_Enable On / Off main contactor is open (not welded shut) before it is commanded to close.
OptionBits1 [Bit 2] This test is not performed if this parameter is Off. The main contactor
0x306A 0x00 driver, however, is always protected from short circuits.
Main DNC Check Enable On / Off When programmed On, the controller performs a test immediately after
Main_DNC_Check_Enable On / Off the main contactor is commanded to close, to make sure the contactor
OptionBits4 [Bit 7] has in fact closed. The test is not performed if this parameter is
0x306D 0x00 programmed Off. The main contactor driver, however, is always protected
from short circuits.
Main DNC Runtime Threshold 0.0 – 200.0 V Sets the threshold used for the ongoing check that ensures the main
Main_DNC_Runtime_Threshold 0 – 12800 contactor remains closed while in operation. The Main DNC Runtime
0x3032 0x00 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
detection. 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
0x306B 0x00 when the contactor is closed with the capacitor bank discharged.
PD Enable pcf 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
0x306A 0x00 Put_PWM (PWM5, value); see Figure 17, page 119.
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 119.
0x306A 0x00
PD Max Current 0.00 – 2.00 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,
0x3040 0x00 which in turn defines its aperture.
PD Min Current 0.00 – 2.00 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
0x3041 0x00 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
0x3042 0x00 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 ms * Sets the period for proportional valve dither.
PD_Dither_Period 1 – 7
0x3043 0x00
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.
0x3044 0x00
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
0x3045 0x00 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
0x306D 0x00 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 pull-in voltage parameter allows a high initial voltage when the
Driver3_Pull_In_Voltage 0 – 32767 contactor driver first turns on, to ensure contactor closure. After 1 second,
0x3864 0x00 this peak voltage drops to the contactor holding voltage.
Note: This voltage will be battery voltage compensated.
Holding Voltage 0–100 % The holding voltage parameter allows a reduced average voltage to be
Driver3_Holding_Voltage 0 – 32767 applied to the contactor coil once it has closed. This parameter must be
0x3865 0x00 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 0 – 200 mA Sets the upper threshold of the combined current of the 5V and 12V
External_Supply_Max 0 – 800 external supplies. At or above this threshold a fault will be created that
0x3046 0x00 can be read by VCL.
External Supply Min 0 – 200 mA Sets the lower threshold of the combined current of the 5V and 12V
External_Supply_Min 0 – 800 external supplies. At or below this threshold a fault will be created that
0x3047 0x00 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
0x3938 0x00
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.
0x304D 0x00 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 seconds
to accelerate from zero to top speed (6000 rpm).
If Max_Speed_SpdM = 3000 rpm, it will take 1.5 seconds
to accelerate from zero to top speed (3000 rpm).
If Max_Speed_SpdM = 1000 rpm, it will take 0.5 seconds to accelerate
to accelerate from zero to top speed (1000 rpm).
Motor Technology 0 – 1 Set this parameter to the type of motor in your vehicle:
Motor_Technology 0 – 1 0 = ACIM (Induction Motor)
0x3814 0x00 1 = SPM (Surface PM Motor).
Note: A Parameter Mismatch fault will result unless the Feedback Type
(see page 61) matches the Motor Technology setting:
If Motor Technology = 0 (ACIM), then Feedback Type must = 1
(quadrature encoder).
If Motor Technology = 1 (SPM), then Feedback Type must = 2
(sin/cos sensor).
Test Enable 0 – 1 This parameter is used to start the ACIM motor characterization
IM_AutoChar_Test_Enable 0 – 1 procedure. See Section 6a for the complete description of the ACIM
0x3800 0x00 motor characterization procedure.
Test Throtte -1 – 1 This parameter is used to change the direction of the motor to the
Test_Throttle -1 – 1 forward direction during ACIM motor characterization.
0x3034 0x00 See Section 6a for the complete description of the ACIM motor
characterization procedure and how this parameter is used.
Motor Poles 2 – 12 This parameter is used to select the number of poles before
IM_MotorData6 1 – 6 beginning the ACIM motor characterization procedure.
0x3805 0x00 See Section 6a for the complete description of the ACIM motor
characterization procedure and how this parameter is used.
Max Test Speed 500 – 8000 rpm This parameter is used to set the maximum motor speed allowed
IM_AutoChar_Max_Test_Speed 500 – 8000 during ACIM motor characterization.
0x38A0 0x00 See Section 6a for the complete description of the ACIM motor
characterization procedure and how this parameter is used.
Max Test Current 10 – 100 % This parameter is used to set the maximum motor current allowed
IM_AutoChar_Max_Test_Current 3277 – 32767 during ACIM motor characterization.
0x38A1 0x00 See Section 6a for the complete description of the ACIM motor
characterization procedure and how this parameter is used.
Current Reg Tuning Test Enable 0 – 1 This parameter is used to perform only the current regulation tuning
IM_CR_Tuning_Test_Enable 0 – 1 portion of the ACIM motor characterization procedure.
0x388B 0x00
FW Base Speed 200 – 12000 rpm Sets the speed at which modulation depth has reached 100% (all available
FW_Base_Speed 200 – 12000 voltage is used) and where field weakening begins. This parameter is scaled
0x3857 0x00 by an internal motor characterization parameter, so the setting of FW Base
Speed should always be done using the tuning test, which will take into
account the scaling factor. Entering a speed observed from a torque vs. speed
plot should not be done, as this number fails to take into account the internal
scaling factor.
This parameter needs to be set during initial setup and reset each time the
Motor Type or the low speed current limit is changed. For example, if you lower
Drive_Current_Limit (page 41) or PL_Drive_Nominal (page 42), you should
reset 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 Drive 0 – 100 % Sets the amount of field weakening allowed while driving the motor.
Field_Weakening_Drive 0 – 1024 Field Weakening Drive will affect efficiency and torque only at speeds above
0x3033 0x00 the programmed FW Base Speed. Low settings will result in better efficiency
but less torque; higher settings will result in more torque and less efficiency.
A setting of zero will disable field weakening, thus resulting in the highest
efficiency and lowest torque above base speed
To keep motor and controller heating to a minimum (high efficiency),
Field Weakening Drive should be set just high enough to meet the high speed
performance specifications. (Typical high speed performance specifications
are maximum drive speed with full load, or maximum lift speed with full load.)
The drive current limiting map (see page 42) can also be used to restrict
performance at all speeds.
The maximum setting of the Field Weakening Drive parameter depends on
the type of motor characterization that was used.
If the ACIM motor was dyno characterized (i.e., sent to Curtis for
characterization on the motor dyno), Field Weakening Drive can be set
anywhere in the range of 0% (lowest torque, highest efficiency) to 100%
(highest torque, lowest efficiency).
If the ACIM motor was auto characterized (i.e., characterized using the
ACIM motor characterization procedure in Section 6a), the range is restricted
by the results of the Field Weakening Test. For these motors, Field Weakening
Drive can be set anywhere in the range of 0% (lowest torque, highest efficiency)
to Max Field Weakening Drive (highest torque, lowest efficiency). For auto
characterized motors, setting Field Weakening Drive greater than the maximum
setting found in the Field Weakening Test will result in poorer efficiency and less
torque as the motor will be operating “over the slip curve.”
Note: The Field Weakening Drive setting will have no effect at motor
speeds below FW Base Speed.
Weakening Rate Drive 0 – 100 % Sets the control loop gains for field weakening. Setting the rate too low may
Field_Weakening_Rate_Drive 0 – 500 create surging in the vehicle as it accelerates at mid to high speeds. Setting
0x383C 0x00 the rate too high may create high frequency oscillations (usually audible) when
the vehicle accelerates at mid to high speeds.
Min Field Current 0 – 800 A Sets the field current when no torque is requested from the motor. This current
Min_Field_Current 0 – 8000 pre-fluxes the motor and can improve initial take-off at the expense of some
0x3821 0x00 battery consumption.
Swap Two Phases pcf 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
0x306C 0x00 parameter has the same effect as physically swapping the cables on any two
of the three motor phase connections.
Positive motor speed must be in the forward direction in order
for the emergency reverse feature to operate properly.
Note: Do not change this parameter while the controller is powering the motor.
Any time this parameter is changed a Parameter Change Fault (fault code 49)
is set and must be cleared by cycling power; this protects the controller and
the operator.
Adjusting this parameter can be hazardous. For instructions,
see Section 5, Step bl (page 91).
Motor Type pcf 0 – 302 This parameter references a predefined table of motor parameters for many
IM_Motor_Type 0 – 302 AC motors. Consult your Curtis distributor or support engineer for information
0x3809 0x00 on how to set this parameter based on your application and motor.
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
0x308F 0x00 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.
0x3083 0x00 In LOS mode the throttle commands a frequency that is interpolated linear-
ly 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
0x3085 0x00 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
0x3084 0x00 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 s 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
0x3086 0x00 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 s 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.
0x3087 0x00
Test Enable 0 – 1 This parameter is used to start the SPM motor characterization
SPM_AutoChar_Test_Enable 0 – 1 procedure. See section 6b for the complete description of the
0x3862 0x00 SPM motor characterization procedure.
Test Throtte -1 – 1 This parameter is used to verify the direction of the motor during
Test_Throttle -1 – 1 SPM motor characterization.
0x3034 0x00 See section 6b for the complete description of the SPM
motor characterization procedure and how this parameter is used.
Max Test Speed 500 – 6000 rpm This parameter is used to set the maximum motor speed
SPM_AutoChar_Max_Test_Speed 500 – 6000 allowed during SPM motor characterization.
0x38C1 0x00 See section 6b for the complete description of the SPM
motor characterization procedure and how this parameter is
used.
Max Test Current 10 – 30 % This parameter is used to set the maximum motor current
SPM_AutoChar_Max_Test_Current 3277 – 9831 allowed during SPM motor characterization.
0x38C2 0x00 See section 6b for the complete description of the SPM
motor characterization procedure and how this parameter is
used.
Feedback Type 1 – 2 Set this parameter to the type of position feedback device in your vehicle:
Feedback_Type 1 – 2 1 = quadrature encoder
0x382E 0x00 2 = sin/cos sensor.
Note: A Parameter Mismatch fault will result unless the Feedback Type
matches the Motor Technology setting (see page 55):
If Motor Technology = 0 (ACIM), then Feedback Type must = 1
(quadrature encoder).
If Motor Technology = 1 (SPM), then Feedback Type must = 2
(sin/cos sensor).
Swap Feedback Direction pcf On / Off Changes the motor encoder’s effective direction of rotation. The encoder
Swap_Feedback_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
0x306C 0x00 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.
Adjusting this parameter can be hazardous. For instructions,
see Section 5, Step bl (page 91).
Encoder Steps pcf 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.
0x304B 0x00 Note: Do not change this parameter while the controller is powering
the motor. Any time this parameter is changed a Parameter Change Fault
(fault code 49) is set and must be cleared by cycling power; this protects
the controller and the operator.
Adjusting this parameter can be hazardous; setting it improperly
☞
may cause vehicle malfunction, including uncommanded drive. For
instructions, see Section 5, Step 8 (page 90).
Fault Detection Enable On / Off When programmed On, encoder fault checking is enabled.
Encoder_Fault_Detection_Enable On / Off Three fault conditions are checked: Encoder Fault (fault code 36, Stall
Encoder_Fault_Detection_Enable_ Detected (fault code 73), and Encoder Pulse Error (fault code 88).
Bit0 [Bit 0]
0x389C 0x00
Encoder Pulse Fault Detect Time 0.0 – 3.0 s Defines the minimum time it takes for the controller, while the vehicle is
Encoder_Pulse_Fault_Detect_Time 0 – 94 in motion, to detect that the encoder and the Encoder Steps parameter do
0x393E 0x00 not match. When the Encoder Steps setup is incorrect, the motor
controller cannot properly calculate AC motor field orientation. The loss of
field orientation can cause the motor to spin up toward full speed once any
throttle is applied.
This parameter sets a timer that starts once the throttle has been
moved and then released, the drive current is significant, and the motor
is still accelerating. Note that the motor can spin at high rpm for several
seconds before conditions allow the controller to properly detect a fault.
An Encoder Pulse Error (fault code 88) is declared when this fault is
detected.
Setting the parameter to zero will disable this fault detection.
Fault Stall Time 0 – 10 s 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
0x3089 0x00 maximum throttle applied, a Stall Detected fault (fault code 73) is issued.
Sin Cos Fault Threshold 5.0 – 20.0 % Defines the allowable percent change in the Sin or Cos feedback.
Sin_Cos_Fault_Threshold 51 – 205 A Sin/Cos Sensor Fault (fault code 36) is declared if this threshold is
0x3878 0x00 exceeded five times sequentially.
Sin Min 0 – 1023 Minimum output by the Sin/Cos sensor on the Sin channel.
Feedback_Sin_Min 0 – 1023 Input detected at Position Feedback A (pin 31). The value is set
0x3863 0x00 during the SPM motor characterization procedure.
Sin Max 0 – 1023 Maximum output by the Sin/Cos sensor on the Sin channel.
Feedback_Sin_Max 0 – 1023 Input detected at Position Feedback A (pin 31). The value is set
0x385C 0x00 during the SPM motor characterization procedure.
Cos Min 0 – 1023 Minimum output by the Sin/Cos sensor on the Cos channel.
Feedback_Cos_Min 0 – 1023 Input detected at Position Feedback B (pin 32). The value is set
0x385F 0x00 during the SPM motor characterization procedure.
Cos Max 0 – 1023 Maximum output by the Sin/Cos sensor on the Cos channel.
Feedback_Cos_Max 0 – 1023 Input detected at Position Feedback B (pin 32). The value is set
0x382F 0x00 during the SPM motor characterization procedure.
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.
0x306C 0x00 The motor temperature cutback feature will linearly cut back the
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
0x307B 0x00 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
distributor or support engineer.
Note: The industry standard KTY temperature sensors are silicon
+
temperature sensors with a polarity band; the polarity band of a KTY
sensor must be the end connected to I/O Ground (pin 7).
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.
0x304A 0x00 The parameter can also be used to correct a known offset in the sensor itself.
Braking Thermal Cutback Enable On/Off When programmed On, drive current and all forms of regen braking current
BrakingThermalCutback_Enable On/Off will be cut back based on motor temperature. All forms of regen braking
BrakingThermalCutback_Enable_ current (Regen_Current_Limit, Brake_Current_Limit, EMR_Current_Limit,
Bit0 [Bit0] Interlock_Brake_Current_Limit) includes emergency reverse braking,
0x386C 0x00 interlock braking, brake input braking, direction reversal braking, neutral
braking, and speed limit braking.
When programmed Off, only drive current (and not the regen braking
currents) will be cut back based on motor temperature.
If the vehicle has mechanical brakes, setting this parameter to On may
help reduce motor heating.
Temperature Hot 0–250 °C Defines the temperature at which current cutback begins.
MotorTemp_Hot 0–2500
0x304E 0x00
Temperature Max 0–250 °C Defines the temperature at which current is cut back to zero.
MotorTemp_Max 0–2500
0x304F 0x00
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
0x308A 0x00 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 – 96 V Must be set to the vehicle’s nominal battery pack voltage. This parameter is used
Nominal_Voltage 1536 – 6144 in determining the overvoltage and undervoltage protection thresholds for the
0x3048 0x00 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 Kp and Ki, User Overvoltage, and User Undervoltage parameter settings
and the controller’s minimum voltage and maximum voltage ratings.
Overvoltage = Either Max Voltage (see Table D-1)
or User Overvoltage × Nominal Voltage, whichever is lower.
Severe Overvoltage = Overvoltage (see previous item) + 10V.
Undervoltage = Either Min Voltage (see Table D-1)
or User Undervoltage × Nominal Voltage, whichever is higher.
Severe Undervoltage = Either drive current cut back to 0% for 64 ms
or Brownout Voltage * (see Table D-1) is reached, whichever comes first.
* 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 milliseconds the controller will reset
(equivalent to cycling the keyswitch). If the capacitor voltage rises above the
Brownout voltage before 64 ms have passed the bridge will be reenabled.
The Severe Undervoltage point cannot be set lower than the Brownout voltage.
Kp UV 0.0 – 100.0 % / V
When the battery voltage goes below the undervoltage threshold
Batt_Kp_UV 0 – 1024
0x380E 0x00 (as set above), a closed loop PI (Proportional/Integral) controller
is enabled in an attempt to keep the battery voltage from drooping.
It accomplishes this by cutting back the drive current, thereby
reducing the load on the battery.
The Kp term is the proportional gain and is set in units of
% cutback per volt; for example, a setting of 25 would provide full
Ki UV 0 – 100 % current cutback with 4 V of droop.
Batt_Ki_UV 0 – 16384 The Ki term is the integral gain. Integral gain will accumulate
0x380F 0x00 the voltage droop and attempt to bring the battery droop back
to 0 V. Higher gains will react more strongly and quickly.
Typically, Kp UV and Ki UV are used together to provide the
best response. If the linear response of the previous AC controllers
is preferred, set Ki UV = 0.
User Overvoltage 105 – 200 % The value of this parameter is a percentage of the Nominal Voltage setting.
User_Overvoltage 269 – 512 The User Overvoltage parameter can be used to adjust the overvoltage threshold,
0x3049 0x00 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 0 – 95 % The value of this parameter is a percentage of the Nominal Voltage setting.
User_Undervoltage 0 – 242 The User Undervoltage parameter can be used to adjust the undervoltage threshold,
0x304A 0x00 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 programmer’s
Monitor » Battery menu. 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.900 – 3.000 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
0x3170 0x00 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.900 – 3.000 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
0x3171 0x00 begins to lose charge. Keyswitch Voltage is viewable in the programmer’s
Monitor » Battery menu.
Full Voltage Level = Full Volts Per Cell × number of cells in the battery
pack.*
Empty Volts Per Cell 0.900 – 3.000 V The empty voltage level sets the Keyswitch Voltage that is considered
BDI_Empty_Volts_Per_Cell 900 – 3000 to be 0% state-of-charge.
0x3172 0x00 Empty Voltage Level = Empty Volts Per Cell × number of cells in the
battery pack.*
Discharge Time 0 – 600 minutes 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
0x3173 0x00 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
0x3174 0x00 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 MANUAL, P/N 53134-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
0x306C 0x00 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 83.
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 79), and also modifies the VCL variable Vehicle_Speed;
0x304C 0x00 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”
0x3079 0x00 in the Monitor » Vehicle menu (page 83). 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”
0x3886 0x00 in the Monitor » Vehicle menu (page 83).
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”
0x307A 0x00 in the Monitor » Vehicle menu (page 83). 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”
0x3883 0x00 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”
0x3884 0x00 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.
0x306A 0x00
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).
0x3036 0x00 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 only if
the vehicle is moving forward (forks trailing) when emergency
reverse is activated.
3 = emergency reverse is activated by VCL functions
Enable_Emer_Rev() and Disable_Emer_Rev(), but only if
the vehicle is moving forward (forks trailing) when emergency
reverse is activated.
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.
0x389F 0x00 Off = only throttle and direction must be cleared.
EMR Time Limit 0.0 – 30.0 s 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
0x303B 0x00 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. The motor speed in reverse during an emergency
0x3038 0x00 reverse event will be the lesser of EMR_Speed and either Max_Speed_SpdMx
(for Speed Mode Express) or Max_Speed_SpdM (for Speed Mode).
Emergency Reverse is not valid for Torque Mode. See Fig.16, Control
Mode Processing, on page 118.
EMR Accel Rate 0.1 – 3.0 s 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
0x3039 0x00 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 s 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
0x303A 0x00 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.
0x309F 0x00
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.
0x309E 0x00
Interlock Brake Timeout 0.0 – 8.0 s 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
0x309C 0x00 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 48).
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 85.
OptionBits3 [Bit 2]
0x306C 0x00
CAN Node ID 1 1 – 127 The Node ID for the primary microprocessor is determined by the state
CAN_Node_ID_1 1 – 127 of switches 5 and 6 at KSI turn on:
0x3140 0x00 Node_ID_1 is selected when Sw 6 = Off and Sw 5 = Off
Node_ID_2 is selected when Sw 6 = Off and Sw 5 = On
Node_ID_3 is selected when Sw 6 = On and Sw 5 = Off
Node_ID_4 is selected when Sw 6 = On and Sw 5 = On.
If the selected parameter has a Node ID of zero, the Node_ID_1 parameter
is used. If the Node_ID_1 parameter is also zero, a default ID of 38 is used.
Supervisor Node ID 1 – 127 Sets the Node ID for the supervisor microprocessor. The Node ID is the
Supervisor_Node_ID 1 – 127 first 7 bits of the 11-bit identifier (the COB ID).
0x3872 0x00
Baud Rate -3 – 4 Sets the CAN baud rate for the CANopen Slave system:
CAN_Baud_Rate -3 – 4 -3 = 20 kbit/s, -2 = 50 kbit/s, -1 = 100 kbit/s, 0 = 125 kbit/s,
0x3142 0x00 1 = 250 kbit/s, 2 = 500 kbit/s, 3 = 800 kbit/s, 4 = 1000 kbit/s.
Heartbeat Rate 16 – 200 ms Sets the rate at which the CAN heartbeat messages are sent from the
CANopen_Heart_Beat_Rate 4 – 50 CANopen Slave system.
0x1017 0x00
PDO Timeout Period 0 – 200 ms Sets the PDO timeout period for the CANopen Slave system. After the slave
CAN_PDO_Timeout_Period 0 – 50 controller has sent a PDO MISO, it will declare a PDO Timeout Fault if the
0x3149 0x00 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 ms Sets the minimum rate between CAN emergency messages from the
CANopen_Emergency_Rate 4 – 50 CANopen Slave system. This prevents quickly changing fault states from
0x3148 0x00 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
0x3143 0x00 can make changes to the CANopen system before enabling it (by setting the
variable Suppress_CANopen_Init = 0 and running the Setup_CAN() function).
Reset Controller 0 – 1 Setting this parameter = 1 will reset the controller. This reset is similar to resetting
ResetController 0 – 1 by cycling the keyswitch. Reset Controller has the advantage of resetting without
0x3B05 0x00 causing the parameter block to be reloaded into the 1313/1314 programmer.
4a — MONITOR MENU
4a
MONITOR MENU
Through its Monitor menu, the 1313 handheld and 1314 PC programmers
provide access to real-time data during vehicle operation. This information
is helpful during diagnostics and troubleshooting, and also while adjusting
programmable parameters.
4a — MONITOR MENU
4a — MONITOR MENU
Steer Pot 0.00 – 6.25 V Voltage at steer pot wiper (pin 17) on Dual
Steer_Pot_Raw 0 – 32767 Drive traction slave.
0x38BB 0x00
4a — MONITOR MENU
4a — MONITOR MENU
4a — MONITOR MENU
4a — MONITOR MENU
Ext Supply Current 0 – 200 mA Combined current of the external +12V and
Ext_Supply_Current 0 – 800 +5V voltage supplies (pins 25 and 26).
0x3229 0x00
4a — MONITOR MENU
Max Speed Controller Limit 0 – 1200 rpm Displays the maximum allowed speed,
Max_Speed_Controller_Limit 0 – 12000 which clamps the upper limit of the Max
0x3559 0x00 Speed parameters. It is the least of the
three constraints described on page 29.
Rotor Position -32768 – 32767 The displayed value will never exceed 4095.
rotor_position_raw -32768 – 32767 0 – 4095 maps to mechanical 0°– 360°.
0x38C7 0x00
4a — MONITOR MENU
Master Timer 0 – 429496729.5 s The master timer is a timer of the total hours
Master_Timer O – 4294967295 the controller is powered on (keyswitch hours).
0x3160 0x00 The master timer is controlled by the OS
software and cannot be reset.
VCL Error Module 0 – 65535 A VCL Runtime Error (fault code 68) will
Last_VCL_Error_Module 0 – 65535 store additional information about the
0x3473 0x00 cause of a VCL runtime error in the VCL
VCL Error 0 – 65535 Error Module and VCL Error variables. The
Last_VCL_Error 0 – 65535 resulting non-zero values can be compared
0x3472 0x00 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.
4a — MONITOR MENU
SPM AutoChar Status 0 – 65535 Displays the real-time status of the SPM
SPM_Auto_Char_State_Display 0 – 65535 motor auto-characterization procedure.
0x3879 0x00 0 = motor needs characterization
1 = characterization not started
2 = aligning rotor to field
3 = tuning current regulator
4 = sin/cos peak voltage detection
5 = determining phasing
6 = determining sin/cos compensation
7 = characterization complete
8 = characterization error.
Motor Characterization Error 0 – 65535 A Motor Characterization Fault (fault code 87)
Motor_Characterization_Error 0 – 65535 will store additional information in the Motor
0x3899 0x00 Characterization Error variable:
0 = sequencing error. Normally caused
by turning off Motor Characterization
Test Enable before running the test.
1 = encoder signal seen but step size
Notes: not auto-detected; set up Encoder
Steps manually
Errors 1 and 8 apply to
2 = motor temp sensor fault
ACIM motors only.
3 = motor temp hot cutback fault
Errors 20, 21, and 23 apply 4 = controller overtemp cutback fault
to SPM motors only. 5 = controller undertemp cutback fault
Errors indicate the motor 6 = undervoltage cutback fault
characterization data is 7 = severe overvoltage fault
invalid, except in the case 8 = encoder signal not seen, or one or
of Error 1. both channels missing
9 = motor parameters out of character-
ization range.
20 = sin/cos sensor not found
21 = phasing not detected
22 = sin/cos sensor characterization
failure
23 = started characterization procedure
while motor rotating.
Parameter Mismatch Error 0 – 65535 A Parameter Mismatch Fault Fault (fault code 99)
Parameter_Mismatch_Error 0 – 65535 will store additional information in the
0x388F 0x00 Parameter Mismatch Error variable:
0 = none
1 = Dual Motor Enable = On, and
Control Mode Select is not set to
either 0-Speed Mode Express or
1-Speed Mode
2 = Feedback Type is incompatible
with Motor Technology setting.
4a — MONITOR MENU
Base Speed Captured 0 – 65535 rpm Displays the value of the motor base speed
Base_Speed_Captured 0 – 65535 captured in the most recent acceleration.
0x35BE 0x00 This value is used to set the FW Base
Speed parameter, using the FW Base Speed
set procedure described on page 57 or using
the ACIM motor characterization procedure
(Section 6a).
Test Field Current 0 – 800 A Field test current reading to be used during
Test_Field_Current 0–80 – 800000 the ACIM motor characterization procedure
0x3873 0x00 (Section 6a).
4a — MONITOR MENU
Time to Speed 1 0.00 – 128.00 s Time taken for the vehicle to go from zero
Time_to_Capture_Speed_1 0 – 32000 rpm to the programmed Capture Speed 1
0x35BF 0x00 (see Program » Vehicle menu, page 67)
during its most recent such acceleration.
Time to Speed 2 0.00 – 128.00 s Time taken for the vehicle to go from zero
Time_to_Capture_Speed_2 0 – 32000 rpm to the programmed Capture Speed 2
0x35BB 0x00 (see Program » Vehicle menu, page 67)
during its most recent such acceleration.
Time Between Speeds 0.00 – 128.00 s Time taken for the vehicle to go from
Time_Between_Capture_ 0 – 32000 programmed Capture Speed 1 to
Speeds programmed Capture Speed 2 (see
0x35C4 0x00 Program » Vehicle menu, page 61) during
its most recent such acceleration.
Time to Dist 1 0.00 – 128.00 s Time taken for the vehicle to travel from
Time_to_Capture_Distance_1 0 – 32000 zero rpm to the programmed Capture
0x3612 0x00 Distance 1 (see Program » Vehicle menu,
page 67) during its most recent such trip.
For accurate distance measurements,
the Speed to RPM parameter must be set
correctly (page 67).
Time to Dist 2 0.00 – 128.00 s Time taken for the vehicle to travel from
Time_to_Capture_Distance_2 0 – 32000 zero rpm to the programmed Capture
0x3613 0x00 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 67).
4a — MONITOR MENU
Time to Dist 3 0.00 – 128.00 s Time taken for the vehicle to travel from
Time_to_Capture_Distance_3 0 – 32000 zero rpm to the programmed Capture
0x3614 0x00 Distance 3 (see Program » Vehicle menu,
page 67) during its most recent such trip.
For accurate distance measurements,
the Speed to RPM parameter must be
set correctly (page 67).
4a — MONITOR MENU
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
0x3466 0x00 three indicating the day. For example, if the
serial number printed on your controller is
15045L.11493, the Mfg Date Code variable
will have the value of 15045 (45th day of
2015).
Param Blk Version 0 – 327.67 Version number of the parameter block that
Param_Blk_Ver 0 – 32767 is loaded into the controller.
0x3468 0x00
Vehicle Serial Number 0 – 4294967295 Provided for OEM use and definition.
Vehicle_Serial_Number 0 – 4294967295
0x393D 0x00
5 — INITIAL SETUP
5
INITIAL SETUP
The 1232E/SE, 1234E/SE, 1236E/SE, and 1238E controllers can be used in
a variety of vehicles, which differ widely in characteristics. Before driving the
vehicle, it is imperative that these initial setup procedures be carefully followed
to ensure that the controller is set up to be compatible with your application.
If Curtis has given you the values for Motor Type, FW Base Speed, and Field
Weakening and you have set them on your controller (see Motor Control
Tuning menus, pages 57–58), you can start conducting the setup procedures.
If you will be using the automated Motor Characterization Procedure, that will
come later—after you have completed steps 1 through bl.
For SPM applications, start the setup procedures now.
5 — INITIAL SETUP
CAUTION
+ Before beginning the setup procedures, jack the vehicle drive wheels up off
the ground so that they spin freely. Double-check all wiring to ensure it is
consistent with the wiring guidelines presented in Section 2. Make sure all
connections are tight. Turn on the controller and plug in the 1313 handheld
or 1314 PC programmer.
5 — INITIAL SETUP
Type parameter (Drivers » Main Contactor Menu) and turn the interlock off.
Verify that the programmer displays that the interlock is now Off. Contact your
Curtis distributor or 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 param-
eters to match the range of your throttle. The Throttle Pot value displayed on
the Monitor » Inputs menu (page 74) 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 74) 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 distributor or support engineer to resolve any issues about the throttle
setup before continuing with the setup procedure.
5 — INITIAL SETUP
over the entire range of brake pot movement. The value displayed for Mapped
Brake should be = 0% through the range of brake pot motion that is considered
neutral. The displayed Mapped Brake should be = 100% through the range
of motion that is considered max. Contact your Curtis distributor or support
engineer to resolve any issues about the brake setup before continuing with
the setup procedure.
5 — INITIAL SETUP
when rotating the motor forward, the Swap Feedback Direction parameter must
be changed. Cycle KSI power and repeat the procedure until you are satisfied
that the Swap Feedback Direction setting is correctly set. If the vehicle will
use the emergency reverse feature, the reverse direction (negative Motor RPM)
must be correctly selected so that when the Emergency reverse input is active
the motor will rotate in the reverse direction. Contact your Curtis distributor
or support engineer to resolve any issues about encoder direction or emergency
reverse before continuing with the setup procedure.
5 — INITIAL SETUP
6a
AUTOMATED ACIM MOTOR
CHARACTERIZATION PROCEDURE
The test procedure is performed in two parts. Both parts must be completed
for proper controller setup. The first part applies to all systems, and the second
part is different for traction systems and hydraulic systems. It is assumed that
Initial Setup steps 1 through bl have been completed.
The procedure assumes the motor is approximately room temperature
(30°C); do not characterize a hot motor without a temperature sensor.
If characterizing a traction system, the vehicle should have its drive wheels
clearly off ground, and the vehicle should be safely blocked from accidental
movement. The drive wheels should be freely spinning—any dragging brake
or excessive friction may invalidate this test, or cause it to fail.
If characterizing a hydraulic system, the motor must be unbolted from
the hydraulic pump and allowed to spin freely. The test will not work properly
if the motor is left connected to the pump. Note: The motor may spin to high
speed in either direction.
Hint: The procedure is easier to conduct if you add the various motor character-
istics Program parameters and Monitor variables to your 1313’s Favorites folder.
CAUTION
+ WARNING – Motor will start to rotate after next step.
9. Note that no cutbacks should be in effect (thermal, voltage, etc.) when these
tests are run. Also, the power limiting maps should not cut back current over
the characterization speed range. Check and verify that the power limiting
map parameters are set to 100% over the characterization speed range.
Current Limits » Power Limiting Map (page 42)
14. Now adjust the SlipGain parameter to provide maximum torque at stall
(0 rpm motor speed). Note: The present SlipGain value was determined
by the auto-characterization procedure, and is not the default value.
Motor » Control Algorithms » 0-ACIM » Characterization Tests » SlipGain
This can be accomplished in various ways, but the following two methods
are preferred, with (a) being the most accurate:
(a) Configure the vehicle to measure stall torque, by using a load cell / draw
bar test. Note: You will want to perform this test quickly to avoid excessive
motor heating and provide the most accurate results.
Turn off encoder fault detection (Motor » Encoder Fault Setup » Fault
Detection Enable).
While applying and holding full throttle, adjust SlipGain until you
measure peak torque.
If you want to have encoder fault detection active, turn it back on.
(b) Set the Accel Rates to very fast values. (In Speed Mode Express: Accel
Rate. In Speed Mode: Full Accel LS, Full Accel HS, Low Accel. In Torque
Mode: Accel Rate.)
On the 1313 programmer, add these two items to the Favorites shortcut,
so you can easily toggle between them:
Monitor » Vehicle » Time to Dist 1
Program » Motor Control Tuning » IM Motor Characterization Tests » SlipGain.
Set Capture Speed 1 (Program » Vehicle » Capture Speed 1, page 67) to
a value close to the Max Speed setting. The Time to Dist 1 timer monitors
how long it takes the motor to get to this predetermined speed. The timer
starts counting when full throttle is applied and stops counting when Cap-
ture Speed 1 is reached.
This test should be run repeatedly over the same stretch of flat or up-
hill ground. Adjust the SlipGain value until the Time to Dist 1 value is
minimized. Loading the vehicle will improve results. Repeat with Capture
Speed 2 and Time to Dist 2.
+ 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.
16. Decide between more efficient or more torque operation at high speeds, by
adjusting Field Weakening Drive. Note: The present Field Weakening Drive
value (0%) was determined by the auto-characterization procedure, and is
not the default value (50%).
Motor » Control Algorithms » 0-ACIM » Field Weakening Control »
Field Weakening Drive
Increasing the parameter toward 100% will progressively allow more torque
(along with more current) at high motor speeds, but increasing it too much
will actually reduce torque while still driving a great deal of current. The
auto-characterization value of 0% will give the most efficient motor oper-
ation, but will not give the highest torque at high speeds.
If more torque is required at high speeds, you will need to run the Field
Weakening Drive test.
On the 1313 programmer, add these two items to the Favorites shortcut,
along with Field Weakening Drive, so you can easily toggle between them:
Monitor » Vehicle » Time Between Speeds (page 83)
Program » Vehicle »Capture Speed 1, 2 (page 67).
Set Capture Speed 1 and 2 to values that are close to the Max Speed
setting. Ideally the Capture Speed 1, 2 values should be above the second
corner point of the motor torque – speed curve. For example, if the Max
Speed is set to 4000 rpm, set Capture Speed = 3500 rpm and Capture Speed
2 = 3800 rpm:
Program » Speed Mode Express »Max Speed (page 30)
Program » Speed Mode »Speed Controller »Max Speed (page 31)
Program » Torque Mode »Speed Limiter »Max Speed (page 37)
From a stop, apply full throttle to accelerate to a speed greater than
Capture Speed 2. Note the value displayed in Monitor » Vehicle » Time
Between Speeds.
Now increase the Field Weakening Drive setting and repeat the accel-
eration in the same direction, with the same load, and with the same full
throttle and again note the Time Between Speeds value.
Keep adjusting the Field Weakening Drive value and repeating the test
until you find the Field Weakening Drive value that results in the smallest
Time Between Speeds. This Field Weakening Drive value should be used
for applications that require the most torque at high speeds.
Some Field Weakening Drive settings may result in a test acceleration
run where Capture Speed 2 cannot be obtained. These Field Weakening
Drive settings cannot provide enough torque to get the vehicle past Cap-
ture Speed 2. The final setting used for Field Weakening Drive should be
somewhere between 0% (most efficient, least motor heating) and the setting
found in this test (highest torque at high speeds).
Note: The Field Weakening Drive setting will have no effect at motor speeds
below FW Base Speed.
17. Return to Section 5 and complete Initial Setup steps bn through bo.
13. Now adjust the SlipGain parameter to provide maximum torque at low
speeds. Note: The present SlipGain value was determined by the auto-char-
acterization procedure, and is not the default value.
Motor » Control Algorithms » 0-ACIM » Characterization Tests » SlipGain
Set Max Speed to a fairly low speed (but high enough to be able to lift
a load on the forks), typically 800 rpm. The Max Speed setting must be
below the motor base speed, which is measured in the next step.
Put a very heavy load on the forks, preferable a max load.
Apply full throttle, and vary the SlipGain until the motor current is mini-
mized (Monitor » Controller » Current (RMS)). If the vehicle has a multistage
mast, work in the first stage only so that the load is consistent.
14. Run the FW Base Speed test.
Set Max Speed to the maximum desired pump speed.
Set FW Base Speed = 6000 rpm. The test should be run with batteries
that have a reasonable charge.
Motor » Control Algorithms » 0-ACIM » Field Weakening Control » FW Base Speed
Set the Accel Rates to be very fast, so that you’ll be accelerating at full
current during the test.
Because the pump can accelerate past FW Base Speed quickly, it is
necessary to pre-flux the motor current prior to running this test to get an
accurate measure of base speed. To pre-flux the motor, note the displayed
Test Current value (Monitor » Controller » Motor Tuning » Test Field Current)
and enter this value for Min Field Current.
Motor » Control Algorithms » 0-ACIM » Field Weakening Control » Min Field Current
CAUTION
+ The controller is now running current with no throttle, so continue
this test without delay to prevent motor and controller heating.
From a stop, quickly apply full throttle to accelerate to a high speed.
After the motor settles at a speed for a moment, release the throttle to stop.
Note the value of the Base Speed Captured (Monitor » Controller » Motor
Tuning » Base Speed Captured), and enter this value for the FW 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 reapplying the throttle.
CAUTION
+ When finished, be sure to set the Min Field Current = 0 to cancel
the pre-flux current.
6b
AUTOMATED SPM MOTOR
CHARACTERIZATION PROCEDURE
7. If any faults are present, stop and resolve the issue before continuing.
CAUTION
+ WARNING – Motor will start to rotate after next step.
8. Set Test Throttle = +1.
Motor » Control Algorithms » 1-SPM » Characterization Tests » Test Throttle.
9. The controller will start to inject test pulses. After a few minutes (when
pulsing stops), the motor will begin to rotate very slowly. It is critical to
verify the motor is turning in the FORWARD vehicle direction. If it is
not, set Test Throttle = 0, wait for the motor to come to a stop, then set
Test Throttle = –1. The motor will start again in the same direction. The
controller will properly set the direction at the end of characterization
process. (Note: This is a different operation than that in the ACIM char-
acterization procedure, which does turn the motor in the other direction
when Test Throttle is set negative.)
10. After about a minute, the motor will spin up to a moderate speed, then to
high speed (limited by Max Test Speed) in each direction.
11. When the automated test is complete, the controller will have a Parameter
Change Fault. This is normal. Check whether other faults are present. If
you have a Characterization Error fault, read the number at Monitor » Con-
troller » Motor Characterization Error and reference the following table.
An error during the SPM test indicates the motor characterization data is
invalid; contact your Curtis distributor or support engineer.
Motor Characterization Errors
0 Sequencing error. Normally caused by turning off Motor
Characterization Test Enable before running test.
2 Motor temperature sensor fault
3 Motor overtemperature >150°C (active only when temp
sensor is present)
4 Controller overtemperature
5 Controller undertemperature
6 Battery undervoltage
7 Battery severe overvoltage
9 Motor parameter out of characterization range; check to be
sure motor has no load
20 Sin/cos sensor not found
21 Phasing not detected
22 Sin/cos sensor characterization failure
23 Started motor characterization while motor rotating.
7 — TUNING GUIDE
7 TUNING GUIDE
Many aspects of vehicle performance can be optimized, using the wide variety
of adjustable parameters available to these E and SE 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 55) 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
7 — TUNING GUIDE
Speed parameter you should not readjust it without adjusting all the rate
parameters as well.
d. Kp and Ki typically do not need to be changed as the default values will
work well in most applications. If you want to adjust Kp (for looser or tighter
following of the speed trajectory set by the accel, decel, and brake rates),
follow the procedure in step “d” in the Speed Mode tuning section.
e. Adjust the Accel Rate and Decel Rate as necessary while moving the throttle
to different positions (i.e., neutral to full throttle, half throttle to full throttle,
full throttle to half throttle, full throttle to neutral, neutral to low throttle,
etc.). For AC pump applications, typically the Accel Rate and Decel Rate
are set very fast for quick response to hydraulic inputs.
f. Adjust the Brake Rate as necessary while reversing the throttle input (i.e., full
throttle forward to low throttle reverse, full throttle forward to full throttle
reverse, full throttle reverse to low throttle forward, etc.). If a brake input
is present in the application (Brake Pedal Enable = On) continue adjusting
Brake Rate by applying different amounts of brake throttle (i.e., full throttle
forward, then apply full brake or full throttle forward, then apply low brake,
etc.). For AC pump applications the Brake Rate has no effect on performance
since the AC pump will not run in reverse nor with a brake input.
☞ AC pump motor applications, which in step “a” had the Pump Enable parameter
set to On, may also be controlling hydraulic valves (load hold valve, proportional
valve). The Proportional Driver parameters (page 52) and some VCL will typ-
ically be used to set up the control of these valve driver outputs. Consult with
your Curtis distributor or support engineer regarding hydraulic valve control.
a. For traction applications, set Pump Enable to Off. For AC pump applications
set this parameter On.
b. Adjust Max Speed to the maximum speed the motor should turn in the
vehicle application; this speed setting corresponds to an input of full throttle.
c. Adjust the Typical Max Speed (page 55) to the approximate maximum speed
that the motor will spin. This is usually the same value as the setting for
Max Speed, but some applications have a Max_Speed_SpdM that changes
(in the VCL software). If the Max_Speed_SpdM changes, set the Typical
Max Speed to the highest speed the motor is expected to reach. This value
does not need to be set precisely since it will not change motor performance.
Typical Max Speed sets a reference point for the “rate” parameters (accel, decel,
brake rates), so that applications that have a changing Max_Speed_SpdM
will not experience changes in the rates (because the rates are referenced to
the unchanging Typical Max Speed value). Once you set the Typical Max
Speed parameter you should not readjust it without adjusting all the rate
parameters as well.
7 — TUNING GUIDE
d. Kp typically does not need to be changed as the default value will work well
in most applications. This parameter controls how tightly the actual motor
speed will track the requested speed trajectory (speed trajectory is set by the
accel, decel, and brake rates).
If you want to adjust the Kp (for looser or tighter following of the speed
trajectory), follow these guidelines.
• Set the following parameters. Before setting them, make a note
of their present (default) settings so you can return them to
these original values at the end of this procedure.
* If your vehicle has an EM Brake: In the EM Brake Control
menu (page 48), set the Brake Type 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 a 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 35).
• 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 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.
7 — TUNING GUIDE
f. In the Speed Mode » Response menu, adjust the remaining three brake rate
parameters as necessary while reversing the throttle input (i.e., full throttle
forward to low throttle reverse, full throttle forward to full throttle reverse,
full throttle reverse to low throttle forward, etc.).
If a brake input is present in the application (Brake Pedal Enable = On)
continue adjusting these three brake rates by applying different amounts of
brake throttle (i.e., full throttle forward, then apply full brake or full throt-
tle forward, then apply low brake, etc.). For AC pump applications these
parameters have no effect on performance since the AC pump will not run
in reverse nor with a brake input.
g. The parameters in the Speed Mode » Response » Fine Tuning menu typically
do not need to be changed as the default values work well in most 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 52) and some VCL will typ-
ically be used to set up the control of these valve driver outputs. Consult with
your Curtis distributor or 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 55) to the expected maximum speed of the motor.
d. Adjust the parameters shown in Figure 9 (page 40) to set up the throttle
mapping:
• Regen Current Limit (Current Limits menu, page 41)
• Drive Current Limit (Current Limits menu, page 41)
• Forward/Back Full Restraint Speed (Torque Mode » Response menu, page 38)
• Brake Taper Speed (Torque Mode » Response » Fine Tuning menu, page 39)
• Neutral Braking (Torque Mode » Response menu, page 38)
• Neutral Taper Speed (Torque Mode » Response menu, page 38)
• Creep Torque (Torque Mode » Response » Fine Tuning menu, page 39).
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.
8 — VCL
8 — VCL
The VCL functions described in the VCL Common Functions Manual are
available on 1232E/SE, 1234E/SE, 1236E/SE, and 1238E controllers. These
controllers also have these additional functions:
ENABLE_PRECHARGE()............................... p. 126
DISABLE_PRECHARGE().............................. p. 127
SET_DIGOUT()............................................... p. 128
CLEAR_DIGOUT().......................................... p. 128
ENABLE_EMER_REV().................................. p. 129
DISABLE_EMER_REV()................................. p. 129
SET_INTERLOCK()......................................... p. 130
CLEAR_INTERLOCK().................................... p. 130
SETUP_POT_FAULTS().................................. p. 131
START_PUMP().............................................. p. 132
STOP_PUMP()................................................ p. 132
AUTOMATE_FREQUENCY_OUTPUT()......... p. 133
These functions, which are not included in the VCL Common Functions
Manual, are described at the end of Section 8.
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 pow-
er-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,Us-
er20) 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 programmable parameters.
These parameters can be defined as 16-bit by using the P_User variables or
8 — VCL
they can be defined as bit (On/Off) by using the P_User_Bit variables. These
variables are typically written to EEPROM through the 1313 handheld or 1314
PC programmer interface (i.e., when a user changes a parameter setting using
the programmer). They can be used in the VCL code, but changing a P_User
(or P_User_Bit) value with VCL will only change the variable value in RAM
and will not change the value in EEPROM. Thus, these variables are intended
for creating and defining programmable parameters only.
VCL can modify the control mode parameters in RAM by using the VCL
variable name for the programmable parameter. For example,
will change the RAM value of the Speed Mode Express’s Brake Rate; the new
value will be used in determining the braking rate. However, the value of the
parameter’s stored EE value 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. To save
this RAM value in VCL, you must use the NVM_Write_Parameter function
((i.e., NVM_Write_Parameter(Brake_Rate_SpdMx)).
Parameter values that are changed by using the 1313 handheld or 1314 PC
programmer are saved directly to EE memory. The 1313/1314 changes will be
retained and restored the next time the controller is powered back on.
8 — VCL
8 — VCL
if (Sw_1 = ON)
{
;put code here to run when switch 1 is On
}
if (Sw_16 = OFF)
{
;put code here to run when switch 16 is Off
}
All switch inputs are automatically debounced by the VCL operating system.
This prevents noisy contacts or contact bounce from causing erroneous events
in your VCL code. The debounce time can be varied from 0 to 32 milliseconds
in 4ms steps, using this function:
Setup_Switches(5); 20 milliseconds
If this line is not in the VCL code, the debounce time is set at 16 ms.
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 119) 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 117 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().
8 — VCL
Set_DigOut(DigOut6)
will set Digital Output 6 On (active). VCL can monitor the present value of
a digital output driver: the bit variable Digx_Output (where “x” is the digital
output channel number) is automatically 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/1314 programmer parameters. Still, there are times that these potenti-
ometer 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 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 parameter Throttle Type (or Brake Type) should
be set to a value of 5 (page 17). Setting the 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 114).
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).
8 — VCL
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–999 Hz = 0–32767.
Analog Output
The 1234E/36E/38E and 1234SE/36SE controllers have one analog output
(pin 30); the 1232E/SE has no analog output. This output is a special driver
output. The switching stage is filtered to provide a smooth average voltage, in-
stead of the actual PWM waveform seen on Drivers 1–5. However, AnalogOut
8 — VCL
uses the same Put_PWM() and Automate_PWM() used by these other drivers.
The scaling is 0–10 V = 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 Monitor » Inputs
menu of the 1313/1314 programmer. 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 44) 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 44–46) 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 44), 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.”
VCL_Throttle ShutdownThrottle
Forward Switch Throttle Type <4 or
and ThrottleInvalid
Reverse Switch Forward = Off Throttle_Multiplier or
and Main Cont.
Throttle Type Throttle_Offset
Reverse = On Not Closed
+1 and or
Throttle TMap = 0 +100%
+ Interlock_State = Off
X + Control Mode Select Controller
TMap U Phase
Throttle_Command = 0, 1, 2 Torque
-100% Command Motor W Phase
Throttle 0 = Speed Mode Express
Throttle Type <4 Control 1 = Speed Mode Control
-1 Type = 5 Brake_Command V Phase
and 1 Mode 2 = Torque Mode
Throttle Type or
Forward = On 128 Select = 0 or 1
Throttle Processing VCL_
and and [see Fig. 16, page 118]
Pot Raw Throttle Mapping Throttle_
Reverse = Off AC_Pump_ Enable_
Enable = On SpdM = On
and Control Mode Processing
TMap = 0 and
Mapped_
Throttle <0
OS Throttle
Mapped Throttle
Throttle Command
24 NOVEMBER 2015
Brake Offset
Brake Max
Brake Map
Brake Deadband VCL_Brake
Brake Type
+100% FullBrake
Brake 0%
0% +100%
Brake Type = 5 Brake Pedal
or Enable = On
VCL_Brake_
Brake Type Enable = On
Processing Brake Mapping
Pot2 Raw
OS Brake
Mapped Brake
8 — VCL
This allows the VCL to either multiply (Throttle_Multiplier > 128) or divide
(Throttle_Multiplier < 128) the nominal throttle value. Typically the default
multiplier is set to 128, thus having no net effect. Both Throttle_Multiplier
and Throttle_Offset can be positive or negative.
The output of the multiplying and summing nodes is a VCL variable called
Mapped_Throttle, which is displayed in the Monitor » Inputs menu of the 1313
handheld or 1314 PC programmer. Checking the value of Mapped_Throttle
using the programmer 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 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 36). 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 74), a fault has set throttle request = 0% (see the Troubleshooting
Chart, Table 5), or if Main_State ≠ 5 or 10 (see page 80).
After this selector switch the throttle signal is a VCL variable called
Throttle_Command, which is displayed in the Monitor » Inputs menu. Throt-
tle_Command is the final value of the throttle signal chain that is input to the
Control Mode Processing block; see Figure 16. 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/1314 programmer 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.
8 — VCL
Brake Processing
Brake processing is optional as it can be turned Off (by setting Brake_Ped-
al_Enable = Off, see page 47). If turned On, brake processing can be done with
or without VCL. When the controller is in Speed Mode, 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 41)
and Brake Taper Speed (page 39). When the controller is in Torque Mode, the
brake command is multiplied by 2 and subtracted from the throttle command
to produce the final command; thus a 50% brake command will cancel a 100%
throttle command.
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 controller and
has the VCL variable name Pot2_Raw which is displayed in the programmer’s
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 47)
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 47).
The signal then passes through a selector switch. If the Brake_Type pa-
rameter is set to 5 (Brake Type = VCL input, see page 47), 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 Monitor » Inputs menu. Checking the value of Mapped_Brake
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 47) 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/1314 programmer’s 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. If Brake_Command is
non-zero in Speed Mode Express or Speed Mode, the throttle signal will be
set to 0%.
8 — VCL
118
Note: In Speed Mode Express it is possible to include some of the Speed Mode Back Full Restraint Speed P.H. Kd
parameters. You can use any Speed Mode parameters except those with the same Forward Full Restraint Speed P.H. Set Speed Threshold
8 — VCL
names as their Speed Mode Express counterparts (for example, Max Speed) or Brake Rate P.H. Entry Rate
with names including the words Accel Rate, Decel Rate, or Brake Rate. Decel Rate P.H. Exit Rollback Reduction
Accel Rate EMR Time Limit
Ki EMR Speed
Kp EMR Accel Rate
EMR_State = On
Max Speed EMR Decel Rate
and
Interlock_State = On
-EMR Speed
0
SPEED MODE EXPRESS
Motor_RPM
0%
-EMR Speed 1
SPEED MODE Control
Mode
Select
= 0, 1, 2
Motor_RPM 0
Controller Torque Command
1
[see Fig. 15]
2
Neutral Braking
Brake Release Rate Neutral Taper Speed
Brake Rate Creep Torque
Accel Release Rate Gear Soften
Accel Rate Brake Taper Speed
Kd Reversal Soften
Ki Max Speed Decel
Kp Restraint Forward
Max Speed Restraint Back
2
TORQUE MODE
Bold = Parameters
Motor_RPM Italics = Other R/W Variables
8 — VCL
PD Max Current
PD Max Current PD Dither Period PD Kp Put_PWM(PWM5,xxxx)
PD Min Current PD Dither Percent PD Ki
Hyd ShutdownPD
Lower + %Dither
Enable = On PD_Output
Kp +
VCL_PD_Throttle + 0%
PD_Throttle 2A PD Enable
+ = On
0A -
Mapped_Throttle - %Dither Ki
-1
0% 0 32767 Dither Period
0%
ShutdownThrottle Current Mapping Dither PI Control
or
ThrottleInvalid PD_Current
or
(CANopen Interlock = On
and
CAN NMT State = Pre-operational)
PD Throttle
PD PWM
Bold = Parameters Italics = Other R/W Variables Bold Italics = Monitor Variables
8 — VCL
Status2
* Bit0 = HPD/Sequencing Fault (Code 47)
* Bit1 = Severe B+ Undervoltage (Code 17)
* Bit2 = Severe B+ Overvoltage (Code 18)
* Bit3 = B+ Undervoltage Cutback (Code 23)
* Bit4 = B+ Overvoltage Cutback (Code 24)
* Bit5 = Sin/Cos Sensor Fault (Code 36)
* 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 Open/Short (Code 26)
* Bit2 = Digital Out 7 Open/Short (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)
8 — VCL
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 = Bad Calibrations (Code 82)
* Bit1 = [Not Used]
* Bit2 = Emer Rev HPD (Code 47)
* Bit3 = [Not Used]
* Bit4 = Motor Type Fault (Code 89)
* Bit5 = Supervisor Fault (Code 77)
* Bit6 = Motor Characterization Fault (Code 87)
* Bit7 = [Not Used]
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 = [Not Used]
* Bit1 = [Not Used]
* Bit2 = [Not Used]
* Bit3 = Parameter Mismatch (Code 99)
* Bit4 = Severe KSI Undervoltage (Code 17)
* Bit5 = [Not Used]
* Bit6 = [Not Used]
* Bit7 = Encoder Pulse Count Fault (Code 88)
Status9
* Bit0 = Supervisor Incompatible (Code 78)
* Bit1 = [Not Used]
* Bit2 = [Not Used]
* Bit3 = [Not Used]
* Bit4 = [Not Used]
* Bit5 = [Not Used]
* Bit6 = Driver Supply Fault (Code 83)
* Bit7 = Following Error (Code 48)
8 — VCL
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 programmer. 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 programmer display any text about the fault.
8 — VCL
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 = [reserved] [n/a]
* 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 ad-
8 — VCL
dition to flashing the code 52 on the controller status LEDs. An additional VCL
line was added (Put_Spy_Text (“BDI Low”)) to show how additional actions
beyond those provided in the User_Fault_Action_xx can be programmed using
VCL. In this example the Put_Spy_Text(“BDI Low”) will result in the message
“BDI Low” appearing on the model 840 display (presumably as a message to
the vehicle operator). This example will still not result in any display on the
1313/1314 programmer System Faults and Fault History menus.
To add the fault text on the System Faults and Fault History menus it
is necessary to create a Fault Definition. Creating fault definitions is a subject
that is covered in detail in the VCL Programmer’s Guide (Section 5, Support
for the 1313 Handheld Programmer). Here is an example of a fault definition:
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 programmer’s System Faults menu (only while
the fault is set) and this fault will be logged into the Fault History menu after
being set. The text displayed in either of these 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 con-
trols whether the fault gets logged into fault history (and thus appears in the
programmer’s 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).
8 — VCL
8 — VCL
ENABLE_PRECHARGE()
This function is designed to precharge the capacitor bank before engaging a main
contactor thereby preventing current surges and to protect controller internal 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 the factory-set range of KSI, or the precharge time
limit 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.
Note: Use this function only when the precharge is under VCL control.
8 — VCL
DISABLE_PRECHARGE()
This function is designed to abort the precharge function and clear any precharge
fault. This function aborts the request for precharge of the capacitor bank from KSI.
The resultant state of the precharge variable (Precharge_State) will be set to = 3
(for precharge aborted). The precharge states are:
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.
8 — VCL
SET_DIGOUT()
This function turns on the selected digital output. The digital outputs are active low
(On = driver on and pulled to ground, Off = open circuit at the pin).
Syntax Set_Digout(DigOut_ID)
Parameters
DigOut_ID is the digital output 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 digital output 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).
8 — VCL
ENABLE_EMER_REV()
This function is used to engage emergency reverse using VCL. The EMR Type
parameter must be set to = 1 in order for the Enable_Emer_Rev() function to op-
erate. 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 68. To view the current emergency reverse
state, see Monitor » Inputs: Emer Rev on the 1313/1314 programmer.
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 EMR
Type parameter must be set to = 1 in order for the Disable_Emer_Rev() function
to operate. If the system emergency reverse state is disabled (EMR_State bit
variable = Off), the emergency reverse function will stop operating and normal
motor control function will resume (including an HPD/SRO check if the HPD/SRO
Enable parameter is set to On). To view the current emergency reverse state, see
Monitor » Inputs: Emer Rev on the 1313/1314 programmer.
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.
8 — VCL
SET_INTERLOCK()
This function is used to engage the system interlock using VCL. The Interlock Type
parameter (page 50) 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 (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 Monitor » Inputs: Interlock. To view the current
main contactor state, see 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 Interlock
Type parameter must be set to = 1 in order for the Set_Interlock() function to
operate. If the system interlock is cleared (Interlock_State bit variable = Off), the
throttle input signal is not allowed to pass along the throttle chain; see Figure 15.
Additionally, if the main contactor is used (Main Enable parameter = On), clearing
the interlock will request the main open state from the main contactor state ma-
chine. To view the current interlock state, see Monitor » Inputs: Interlock. To view
the current main contactor state, see Monitor » Controller: Main State.
When the Interlock_Type is set to = 1 and neither the Set_Interlock() nor
Clear_Interlock() function has been called, the default state for the interlock is Off
(Interlock_State bit variable = Off).
Syntax Clear_Interlock()
Parameters None.
Returns
0 – Interlock not cleared.
1 – Interlock successfully cleared.
Error Codes None.
Example Clear_Interlock()
This will disengage the system interlock.
8 — VCL
SETUP_POT_FAULTS()
This function sets the upper and lower wiper fault voltages for a given pot input
and sets the replacement wiper voltage value that will be used if there is a fault.
The valid range for the function parameters is 0–6.25 V (0–400 counts). If this
function is not run, the default thresholds depend on the 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%.
8 — VCL
START_PUMP()
This function is used to turn on the pump lift contactor (pin 4). If the parameter
Drivers » Driver3 » 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 (pin 4). If the parameter Driv-
ers » Driver3 » 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.
8 — VCL
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.
Note: The frequency range is 0–4000 Hz, with 4 Hz being
the minimum active frequency, and 0–3 Hz = Off.
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 6) 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 handheld or 1314 PC programmer or (2) by observing
the fault codes issued by the Status LEDs. See Table 5 for a summary of LED
display formats.
The 1313/1314 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 programmer 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 conditions
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 6, 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.
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.
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.
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.
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.
17 Severe B+ 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 64) 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.
17 Severe KSI Undervoltage 1. See Monitor menu » Battery: Set: KSI voltage dropped below 8.4 V
If below brownout voltage, Keyswitch Voltage. (Brownout occurs at 8.0 V.)
motor current is switched off 2. Non-controller system drain on Clear: Bring KSI voltage above 8.4 V.
and reset may occur. low power circuit voltage.
3. Resistance in low power circuit too high.
4. Low power circuit power source
disconnected while driving.
5. Blown fuse.
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.
36 Sin/Cos Sensor Fault 1. Sin/cos sensor failure. Set: Motor Sin/Cos sensor 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.
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
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.
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.
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
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;
ShutdownDriver1; the runtime VCL module ID and
ShutdownDriver2; error code definitions found in the
ShutdownDriver3; specific OS system information file.
ShutdownDriver4;
ShutdownPD;
FullBrake.
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 54).
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.
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.
78 Supervisor Incompatible
1. The main OS is not compatible Set: Incompatible software.
ShutdownMotor;
with the Supervisor OS. Clear: Load properly matched OS code
ShutdownMainContactor;
or update the Supervisor code; cycle KSI.
ShutdownEMBrake;
ShutdownThrottle;
ShutdownInterlock;
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake.
82 Bad Calibrations 1. Internal controller fault. Set: Internal controller fault detection.
ShutdownMotor; Clear: Cycle KSI.
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake.
83 Driver Supply 1. Internal controller fault in the voltage Set: Internal controller fault detection.
ShutdownMotor; supply for the driver circuits. Clear: Cycle KSI.
ShutdownMainContactor;
ShutdownEMBrake;
ShutdownThrottle;
FullBrake.
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
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.
Encoder Pulse Count Fault
88 1. Encoder Steps parameter does not Set: Motor lost IFO control and accelerated
match the actual motor encoder.
ShutdownMotor; without throttle command.
ShutdownMainContactor; Clear: Ensure the Encoder Steps parameter
ShutdownEMBrake; matches the actual encoder; cycle KSI.
ShutdownThrottle;
ShutdownInterlock;
ShutdownDriver1;
ShutdownDriver2;
ShutdownDriver3;
ShutdownDriver4;
ShutdownPD;
FullBrake.
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.
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.
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 EMR 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. KSI cycles, a check is made to confirm
ShutdownMainContactor; 2. Software and hardware do not match. a legal Model_Number, and a fault is
ShutdownEMBrake; 3. Controller defective. issued if one is not found.
ShutdownThrottle; Clear: Download appropriate software
FullBrake. for your controller model.
99 Parameter Mismatch 1. Dual Motor Enable parameter is set On Set: When the Dual Drive software is
ShutdownMotor; and Control Mode Select parameter enabled, the controller must be set to
ShutdownMainContactor; not set to 1 (Speed Mode Express) either Speed Mode Express or Speed Mode;
ShutdownEMBrake; or 2 (Speed Mode). otherwise this fault is set.
ShutdownThrottle; 2. Motor Technology and Feedback Motor Techology=0 must be paired
FullBrake. Type parameters do not match. with Feedback Type=1, and Motor Tech-
nology=1 must be paired with Feedback
Type=2; otherwise this fault is set.
Clear: Adjust parameters to appropriate
values and cycle KSI.
10 — MAINTENANCE
10 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.
CAUTION
+ 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, pages
6–7, for maximum tightening torque specifications for the
battery and motor connections.
FAULT HISTORY
The 1313 handheld or 1314 PC programmer can be used to access the control-
ler’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
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 B
EN13849 COMPLIANCE
Communication
Link
SUPERVISOR
MICROPROCESSOR Shutdown
APPENDIX C
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.
Favorites — allows you to create shortcuts to your frequently-used adjustable
parameters and monitor variables.
APPENDIX D: SPECIFICATIONS
APPENDIX D
SPECIFICATIONS
Thermal cutback Controller linearly reduces maximum current limit with an internal
heatsink temperature from 85°C (185°F) to 95°C (203°F);
complete cutoff occurs above 95°C (203°F) and below -40°C (-40°F)
Package environmental rating IP65 per IEC529; compliance requires AMPSEAL 35-pin connector header
APPENDIX D: SPECIFICATIONS
MODEL CHART
NOMINAL MAXIMUM S2–60 MINUTE CONTINUOUS
MODEL BATTERY VOLTAGE CURRENT CONTINUOUS CURRENT FOR
NUMBER (V) (A) CURRENT (A) DESIGN LIFE (A)
1232E-21XX 24 180 90 80
1232E-23XX 24 250 125 100
1232E-51XX 36–48 150 75 79
1232E-52XX 36–48 200 100 90
1232E-62XX 48–80 175 80 45
1232E-72XX 72–96 175 80 tbd