7. Maintenance and Fault Finding
GEM80-500 Series Controller
GEM80-500 Technical Manual (T2025En)
(08/04)
Page 7-10
Code
Fault Message
Possible Causes
Recommended
Recovery
#148 Serial
link
configuration error at
P%d.
Incorrect Serial Link P-Table
configuration data.
Edit program
#149
GEMCAN module %d
error %d
Incorrect GEMCAN P-Table
configuration data.
Edit program
#150
GEMCAN module %d
error %d, see P%d
Incorrect GEMCAN P-Table
configuration data.
Edit program
#151
GEMCAN module %d
error %d, see P%d and
P%d
Incorrect GEMCAN P-Table
configuration data.
Edit program
7.9.2 Compilation
Checks
On compilation, the controller performs the following checks:
(a) Matching data table sizes to program requirements by searching for the highest
specified location in each table.
Notes:
(1) This does not take into account blocks of data used by GEM
80 Special
Functions where only the first location is specified. If such a block of data is
at the end of a table, a specific reference must be included to create a large
enough table.
(2) Also note that existing data table locations will be removed if they are no
longer required by a program that has been modified. This can create
confusion in the case of the P-table since they may be created simply by
attempting to access them through a suitable GEM
80 Programming Package.
Consider the situation where an address list containing P1000 has been
created and the value 21 written to it. The program (which contains no
reference above P500) is then re-compiled. On re-entering the data list
mode, the message INVALID ADDRESS is displayed. If the list is cleared and
P1000 re-entered, it will be found to contain 0 and not 21. This is because
P1000 had been deleted on recompilation, but then recreated when the data
list was renewed.
(b) Generating and checking the I/O configuration data for Basic and Verification I/O.
(c) Checking the legality of data table accesses, e.g. OUT to a P-table is not allowed.
(d) Checks the structure of the user program, e.g. depth of nesting of Obey Blocks.
(e) Checking the correctness of VALUE instructions with COUNT and DELAY GEM
80
Special Functions. This checking ensures that if a VALUE is required, it is present
and of an acceptable type (e.g. write-enabled data table).
(f) Checking that there is a START OF BLOCK instruction for every END OF BLOCK
instruction and vice versa, and checking LABEL and JUMP GEM
80 Special
Functions.