5 — VEHICLE CONTROL LANGUAGE (VCL)
Curtis Model 1351 – December 2018
pg. 78
5 — VEHICLE CONTROL LANGUAGE (VCL)
VCL OVERVIEW
The 1351 System Controller fully utilizes the Curtis Vehicle Control Language (VCL). VCL is an easy to
program “C-like” language providing all the power and flexibility to control any application. VCL programs
run protected and securely; monitored for proper operation to protect the system from erratic behaviors.
The 1351 carries over most of the VCL from the Curtis E and F-Series controllers and will be familiar
to skilled developers. Several new features have been added to enhance the 1351’s ability to act as
a system controller and master. Since the 1351 does not have any motor controller functions, VCL
runs substantially faster on the 1351 than on any of the VCL controllers to date.
This chapter summarizes VCL as applicable to the 1351. It describes many of the functions specific
to the 1351 system controller. For a more complete understanding of the functions and capabilities
of VCL, see the original VCL Programmer’s Guide, and VCL Common Functions Manual, available
from Curtis. Also consult the Application Note:
Migrating VCL projects from E to F-series
*
All VCL functions applicable to the 1351 are listed in Appendix A. The functions are also available
in the
System Information
(sys info) an html-file that is available in the CSS VCL Studio app (VCL
Studio/Help menu/
System Information
). The
System Information
file is always the most up-to-date
source of VCL functions, variables, constants, faults, parameters, CAN objects, etc. pertaining to the
1351. Its basis is from the actual software version of the 1351 System Controller.
SUMMARY OF VCL BASICS
• VCL is not case-sensitive:
put_driver(), Put_Driver(), and PUT_DRIVER()
are identical.
• Spaces in variable names are not allowed in VCL; use underscores in place of spaces.
Example:
Nominal_Voltage
is the VCL name for the CSS/1313 HHP parameter
Nominal Voltage.
• Functions are followed by parentheses; for example:
Reset_Controller()
is a function
Reset_Voltage
is a variable.
• Logical statements must be inside parentheses; examples:
IF (setpoint >50)
ELSE IF ((setpoint <20) & (temperature >100)).
• Comments are preceded by semicolons.
; This comment is invisible to VCL
* VCL programming assistance (and the Application Note: Migrating VCL projects from E to F-series) is available from Curtis.
Contact your Curtis distributor or support engineer for help or training with the setup and VCL programming of the 1351 System
Controller and its application.
The original VCL manuals (principles of VCL) are embedded within the Curtis WinVCL program. WinVCL is the controller
programming software for the Curtis serial-programmable controllers (e.g., the E/SE controllers). WinVCL is not applicable to the
CAN-programmable 1351 System Controller and F-series controllers.
See
for the CANbus software and hardware applicable to program parameters, setup, and troubleshoot the 1351
System Controller.