General information about application-specific
functions
Application-specific functions are optional function blocks which are
loaded in the controller according to the application requirements.
The online help for an application-specific function can only be
accessed by clicking on the "?" in the relevant parameters window.
WHERE TO FIND THE APPLICATION-SPECIFIC FUNCTIONS - HOW TO USE THEM IN
A PROGRAM
In the controller memory, these functions are stored in the pages of the
application-memory known as "slots". A controller is characterised by the
number of slots it contains. Each type of application-specific function
occupies one or more slots depending on its complexity. A controller can only
contain a limited number of application-specific functions.
The application-specific functions which can be used in CLS M2 can be
viewed under "Controller/List of application-specific functions/In CLS M2...".
This command is used to activate the display of the application-specific
function block symbols in the function bar under the "FBD-C" tab.
An application-specific function can only be used in a user program by
displaying the application-specific function blocks. Once the
application-specific function is visible in the function bar, it can be used in
the program exactly as all the other FBD, SFC, etc. functions.
However, each time the programmer places a new type of
application-specific function, a level indicator in the controller bar will
change colour and become gradually darker to indicate the number of slots which
will be used by the types of application-specific function required to execute
the program loaded on the controller. For example, if the user program uses 15
MUL/DIV functions and 7 ADD/SUB functions, only one type of ADD/SUB function (2
slots) and one type of MUL/DIV function (1 slot) must be loaded in the
controller, i.e. three slots in total. If the user adds more ADD/SUB functions,
because the application-specific function type has already been placed in the
memory, no additional slots will be necessary.
If the number of slots exceeds the slot capacity of the controller, a
memory overflow error will be signalled during program editing.
WHY "STANDARD" AND "CATALOGUE" APPLICATION-SPECIFIC
FUNCTIONS?
Application-specific functions are used in several cases:
- "Standard" application-specific functions: These are functions
representative of certain applications or special functions which have been
created to extend the programming capacities of the controllers. However, they
are not permanently loaded in the controller memory. These functions are
supplied as standard with CLS M2. Examples of these functions are MUL/DIV,
ARCHIVE, etc
- "Catalogue" application-specific functions: These are application
functions created by Crouzet which can be controlled by users of Millenium 2.
They are supplied in a single installation file. Once the application-specific
function has been installed in CLS M2, it is used as described above. The first
time a newly installed or updated CLS M2 (new version, etc.) is launched, a
dialogue box appears to enable the user to summarise the application-specific
functions present in CLS M2 in order to then reinstall any missing
application-specific functions.
Each application-specific function comprises two parts which can be
accessed separately:
- The "simulated application-specific function" part which contains all
the components required to use the application-specific function in CLS M2 and
to simulate its operation in a program intended for a selected
controller/extension(s) configuration.
- The "application-specific function executable on a controller" or
"application-specific function binary" part, which, when added to a CLS M2
which already has the "simulated application-specific function" part, can be
used to load the binary of this application-specific function in the slot(s) of
a controller in order to execute a user program containing the said
application-specific function on that controller.
The two parts can be supplied separately or together.
The "simulated catalogue application-specific function" can be
downloaded as freeware from the crouzet.com website. Users can use the
simulation to decide if they are interested in the function and its possible
impact on program performance with the controller selected from the M2 range in
the Crouzet catalogue. They can then order the application-specific function
with the target binary under the commercial terms specified by Crouzet and
execute the function on their own controllers.
USING APPLICATION-SPECIFIC FUNCTIONS IN THE CONTROLLER
Once the program containing the application-specific functions has been
compiled and (if required) simulated, the user will want to place it in the
controller connected to CLS M2 via the serial link on the PC, using the
command: Controller/Write to controller.
The result of this command depends on the application-specific functions
which have already been allocated to the memory slots of the controller.
There are six possible cases:
- 1st case: The controller contains all the
application-specific function types used in the program to be written with the
same version/release as those installed in CLS M2. The program is written,
initialised and executed in the same way as all other programs.
- 2nd case: The controller contains all the
application-specific function binaries used in the program to be written with
different versions/releases than those installed in CLS M2. CLS M2 will then
ask the user if he wishes to load the application-specific function binaries in
the controller with an identical version/release to the functions installed in
CLS M2.
- If the answer is NO, no modifications are made in the controller.
However, the Controller/Write to controller command is * not executed. If the
answer is YES, CLS M2 behaves as described in case 3.
- 3rd case: In the context of the previous case, if, when
checking the version releases of the application-specific function binaries to
be upgraded, CLS M2 discovers that some are missing, it will not modify the
application-specific functions in the controller or write the program. The user
must then contact Crouzet's after-sales service, who will provide the missing
components. Otherwise, CLS M2 will load the application-specific binaries in
the controller followed by the program.
- 4th case: The controller does not have all the
application-specific functions used in the program to be written but does have
some free slots. CLS M2 checks to see if it has the binary which can be
executed on the connected controller for the application-specific functions
which have not been loaded and checks the compatibility of the version and
release of the controller and the application-specific function(s). It then
writes this (these) binary (binaries) in the controller and writes the program
in the controller.
- 5th case: The controller does not contain all the binaries
for the types of application-specific function used in the program to be
written. There are not enough free slots but some of the application-specific
function types which have been loaded are not required to execute the progam to
be loaded. Reallocating their slots would enable all the application-specific
functions used in the program to be written to be loaded. CLS M2 will then warn
the user that all the application-specific binaries of the controller will be
deleted in order to load those which are required for program execution. If the
user agrees to the deletion, CLS M2 will check to see if it has all the
application-specific binaries of the controller, delete all the
application-specific function binaries in the controller and replace them with
all the application-specific function binaries required for program execution.
Finally, it loads the program in the controller.
- 6th case: In the context of the previous case, if, when
checking the application-specific function binaries which are available in the
CLS M2 against those present in the controller, the user discovers that some of
the application-specific function binaries to be deleted by CLS M2 are missing.
The user can refuse to modify the application-specific functions in the
controller and can contact Crouzet's after-sales service, who will provide the
missing components.
APPLICATION-SPECIFIC FUNCTIONS AVAILABLE IN SEVERAL LANGUAGES
Every application-specific function is associated with a particular
language (English or French or German or etc.). Application-specific functions
of the same type (example: MUL/DIV, ARCHIVE) but different languages do not
have the same:
- Online help
- Tool tip for labelling the function names and its inputs/outputs in
the edit and monitoring windows
- Texts for the "File/Print" command
- Parameters window
- Parameterisation dialogue boxes via the front panel of the
controller
The application-specific functions are available in each of the CLS M2
installation languages: English, French, German, Spanish, Italian.
For example, the scope of delivery of the MUL/DIV function contains 5
different application-specific functions which will appear in the window which
opens when the "Controller/List of application-specific functions/In the CLS M2
application" command is selected. The user can thus configure a display
containing any application-specific functions of the same type but different
languages. To place the application-specific function in a user program in a
given language, simply select it in the previous window and it will appear in
the toolbar under the "FBD-C" tab. From there, simply drag it into the edit
window.
If the user wishes to show or hide application-specific functions in the
function bar, he simply has to check or uncheck the function in the window
which appears when the "Controller/List of application-specific functions/In
the CLS M2 application" command is selected.
Note: The user can make the same symbol appear several times under the
FBD-C tab in the function bar. This indicates that the same function can be
used for editing purposes in several different languages. Two identical symbols
with different languages can be identified simply by placing the mouse cursor
on the symbol. The tool tip will appear containing the name of the function in
the relevant language.
Back to Contents