Return to TOC Curtis 1239E-1269E Manual, os 37.0 RevA – May 2021
10 — VEHICLE CONTROL LANGUAGE (VCL)
pg. 109
e 0–100% position of the potentiometer is represented by a value from 0–32767 in VCL, and is
set up through the VCL Setup_Pot() function. It is important to use the correct setup (ONE_WIRE,
TWO_WIRE, or THREE_WIRE) since the input is automatically re-scaled for 0–100% based on the
wiring used; for example, the voltage at the Pot Low pin is automatically subtracted and re-scaled
on a THREE_WIRE pot.
Another eect of setting the rottle Type = 5 is that the signal chain for the throttle now gets its
input from a dierent source. e input to the throttle chain is now a VCL variable called VCL_
rottle instead of the throttle pot.
Similarly, Brake Type = 5 means the brake signal chain will get its input from a VCL variable called
VCL_Brake rather than from the brake pot. e VCL_rottle and VCL_Brake variables will need
to be controlled in the VCL program.
One of the unique features of the potentiometer inputs (as opposed to the analog inputs) is that
they have automatic pot fault detection functions running in the motor controller OS. e VCL
programmer has access to the pot detection functions with the Setup_Pot_Faults() function. With
this function, VCL can re-set the high and low thresholds at which a fault occurs. is function also
forces the pot value to a denable level if a fault occurs. Note that the Setup_Pot_Faults() function
will work for all throttle Types (1–5). See page 129 for more detail on this function, and Interfacing
the rottle and Brake Commands (below) for further information on both the rottle and
Brake processing.
Analog Inputs
ese controllers have two generic analog inputs (pins 24 and 8). ese are shared as switch inputs
1 and 2 (Sw_1, Sw_2). e values of the analog inputs are automatically placed in VCL variables
Analog1_Input and Analog2_Input every 1 ms. Scaling is (0 V to 10 V) = (0 to 1023).
User2 = Analog2_Input
will ll 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 automatically placed in VCL
variables Analog1_Filtered and Analog2_Filtered. Scaling is (0 V to 10 V) = (0 to 1023). e default
lter value is 328 (10 Hz) and can be changed in VCL by changing the Analog1_Filter and Analog2_
Filter values. Scaling is (0 Hz to 999 Hz) = (0 to 32767).
Analog Output
e controller has one analog output (pin 30). is output is a special driver output. e switching
stage is ltered to provide a smooth average voltage, instead of the actual PWM waveform seen on
Drivers 1–5. However, AnalogOut uses the same VCL functions Put_PWM() and Automate_PWM()
used by these other drivers.
e scaling is 0 V to 10 V = 0 to 32767.
Put_PWM(PWM6,6553)
will generate 2.0 V at the analog output. VCL can monitor this output using the variable Analog_Output.
INTERFACING THE THROTTLE AND BRAKE COMMANDS
VCL can interface and modify the throttle and brake signals at several points, from the potentiometer
to the nal motor controller command. VCL can be used to create a completely unique command,
adjust parameters to provide MultiMode, or modify the throttle command based on steering angle,
height, etc.