PG5 and PCD FAQ
Please read this preliminary topic before to use this document.
Due to it's participation to several development of SAIA software products, Engiby is sometimes solicited for technical assistance. Please note that firstly your SAIA agent must be contacted in case of technical problems with SAIA products. Engiby is an external company distributing software solution based on SAIA PCD-hardware and development tools. Therefore we are putting some efforts to help our customers to solve technical problems when using Engiby products and SAIA products developed by Engiby.
Please take in consideration that information in this document are informal and cannot engage any responsibility of Engiby. Only the official statement of SAIA-Burgess electronics is applicable in case of incomplete, incompatible or obsolete information.
Consult also the SAIA support site for further online technical support at www.saia-burgess.com/pcdsupport.
It is not allowed to copy, distribute or mirror this document or any parts of it.
General behaviour in case of problems.
Engiby technical assistance
This informal Web page is a
free service from Engiby.
If desired Engiby offers advanced support services like Telephone-E-Mail-FAX or private support as well as dedicated workshop.
Please consult our Main Web Page or contact us.
Frequently Asked Questions
Wy do I have a lot of
Warning ‘Symbol has same type and value’ ?
These warnings are issued when the option 'Warn on symbol with same type and value' is checked in the software settings of the CPU.
With some drivers and libraries several symbols MUST have the same address.
It is actually a problem of SPM to avoid the warnings but the problem is not easy to solve. It is already better with PG5 1.3 (but still not 100%).
What are the minimum
required PGx and FW version needed for Engiby drivers ?
It is not possible to give a general response to this question. However the following guideline gives you a good help to be aware on the main restrictions :
- Old software packages like PG3 and PG4 are not supported
- Old ‘frozen’ PCD systems like PCD4.Mxx5, PCD6.M100, PCD6.M200 and PCD6.M540 in general cause problem
- Always be aware with new technologies. Bugs may still be found and FW update may be needed.
How to use Sen/Rcv
Fboxes in different S-Fup files ?
In general, it is recommended to put all Send/Rcv Fboxes in the same file with the SASI Fbox. If you need to put some Send/Rcv in other file, you can do it, with some restrictions as follow:
In the Software settings, in the Advanced tab, enter the Build option : /D_SFUPCOMM.SASI_IS_EXTN=1
Note that this will, at the same time, remove some check and may cause runtime errors in case of invalid parameters.
- The old Tx/Rx Fboxes, without SASI reference, cannot be used in this case
- The Tx/Rx Data Block Fboxes can only be used like this in PG5 1.3.
- The Tx/Rx Multiple Fboxes can only be used like this in PG5 1.3.
HMI application slows
down the PCD
A long alarm buffer (not necessarily a long alarm list) may slow down the PCD when alarms arise or return. This can cause problem to other applications and activate the watchdog. To avoid or reduce the CPU load, take care at the following points:
- Do not set the buffer length to an unnecessarily high value. Consider the default value of 50 as a reasonable limit.
- Always map the RAM DBs (Software Settings) in the extension memory, address 4000 and above.
- If necessary use a faster CPU.
With the HMI-Editor, how
can I personalize my Root menu ?
In the list of Root menu you can select some default menu (rather designed for test and demo) but also the custom or the free menu.
The 'Custom...' menus support you by selecting and formatting one values per line. The referenced variables must be declared in the Internal Resource list (Advanced tab).
The 'Free ... Text' options allows you more flexibility. You can write your own text in a PCD Text (from the Global symbol list) and use all variable commands and formats. You must also give the address of this text in Internal Resource list (Advanced tab). In this case, you are fully responsible for the text size and the formatting. The HMI routine will just initialize the terminal, place the cursor to the home position and then call your text.
Which library belong to
which PGx version ?
The version number of Fbox libraries and PGx are not the same. The reason is that PG5 have restart the version numbering by 1.0 but the library are still the same as in PG4 and continue the numbering. There following indications are general roles and may vary in some cases.
PG4 2.0.xxx -> libraries 2.0.xxx
PG5 1.0.xxx -> libraries 2.1.xxx
PG5 1.1.xxx -> libraries 2.2.xxx
PG5 1.2.xxx -> libraries 2.3.xxx
PG5 1.3.xxx -> libraries 2.4.xxx
PG5 1.4.xxx -> libraries 2.5.xxx
PG5 2.0.xxx -> libraries 2.6.xxx
For official PG5 versions, beta package and service pack the last 3 digits are generally identical. The HMI Editor and it's library has the same version as PG5.
These rules are not valid for all Engiby's libraries.
More info about libraries at http://www.engiby.ch/libfaq.htm.
How to download a PCD
program without resetting all outputs ?
For industrial application, it may be dangerous to keep outputs on when the PCD is stopped. In the other hand, for building applications, it may be required to keep outputs in there latest state while downloading a new program (Light must remains ON for instance). By default, all outputs will be reset when the PCD is in stop. There are two settings to check for changing this behavior. A hardware setting in the PCD and a software setting for the download.
1. In the PCD there is a jumper called 'RO'. This is a high security for industrial application because it is set in the PCD itself and cannot be changed by mistake during the download. Change this jumper position if you don't want to clear the outputs in stop, and during download.
2a. Downloading with the debugger in PG4 and PG5. When a download in made with the debugger, you can define if the outputs will be cleared or not with the command <File, set-load-Option, Clear-all-outputs>.
2b. Downloading in PG4. Before to download check the corresponding option in the menu <Online, Download options>.
2c. Downloading in PG5. Before to download check the corresponding option in the menu <Tools, Options, General>.
Assembler Message: Old
Fbox not anymore supported.
Various Fbox libraries can issue this kind of message. Whenever you have this kind of message it means that you have an old Fbox in your Fupla file not being supported anymore by a new library you have installed. You must simply replace the concerned Fbox and rebuild the project. To replace the Fbox, delete the existing Fbox in the Fupla file, open the 'Add Fbox' tool select the Fbox you have just deleted (usually it is automatically presented). Place the new Fbox on the Fupla page. See also the next point about new Fbox version.
I don't have all
features of an Fbox as described in the Help or in the Manual.
You are probably using an former version of an Fbox that is still supported. You can check if a new Fbox exist in the advanced info of the Fbox. Right-click on the Fbox on the Fupla page and select 'Advanced Info…'. You will see the version number in use and the version number in the library. To use the new version, replace the Fbox on the Fupla page.
Remember the following
before to replace an Fbox:
- Take note of the actual parameters because you will have to set the parameters again in the new Fbox.
- The new Fbox can be bigger and require more place on the Fupla page than the old one.
- The new Fbox can use more resources (Flags, registers, program code, extension memory) and could need reconfiguration or even a new memory if you are almost out of resources.
What do I have to care
about to use a multi-processor system ?
You have to use a multi-processor system if you use Profibus FMS on PCD4. The Profibus FMS application will run only on CPU1.
You need to create 2 independent projects (or more for PCD6) and load them individually in each CPU.
On PCD4, the serial lines 0 and 1 can used by CPU 0 only. Serial lines 2 and 3 can be used by CPU 1 only.
Flag, Register, Timer and Counters are common to all CPUs.
The Timer/Counter distribution, the time base and the volatile flags allocation are defined by CPU 0 only. Definition in other CPU will be ignored.
In PG4, the dynamic resource allocation must be mapped on different addresses in each project. The default settings will cause conflict. The Texts, and DBs, however are not common but each range exist in all CPUs.
Use absolute addresses to exchange values between CPU's.
See also the known problems below.
works above 9600 bd.
In older firmware, there was some restrictions concerning the possible baudrates on communication ports. The ports 0 and 1 use the same DUART (output driver). If one port is set to 38,4 kbd, you cannot have the second port running above 9600 bd. Therefore, if you have for instance, configured S-Bus PGU at 38,4 kbauds on port 0, you cannot use the port 1 at 19,2 kbd or 38,4 kbd. You can also not use those higher baudrate if one port is running at very low baudrates like 110 bd or 150 bd.
The same restriction apply with ports 2 and 3 which also use the same DUART.
If you try to assign an invalid baudrate, the SASI instruction will abort, an error occurs (Error flag Error LED,…) and the port cannot be used.
See also the knonw problem below.
The CPU Error LED is set
when the PGU cable is unplugged.
This is in fact the same problem as described above. If you have downloaded the program with the PGU protocol, the program is started and the port 1 can be assigned at 38.4kbd without problem. The error will only occurs when the PGU communication is left (Go Offline or cable disconnected). At this time the PCD tray to change from PGU mode to S-Bus mode and fails.
This situation critical because the port 1 is temporarily working. If, at later time, without PGU cable, the PCD is powered off and on again, the configuration of the port 0 will come first without problem but the assignation of the port 1 will fail !
Error 381 : more than
383 elements in DB
This error is issued when a DB in address range 0 to 3999 has more than 383 elements. Only DBs above 3999 can be big up to 16383 elements. Maybe you have declared such a DB, but often the DB is generated internally by a tool like the HMI-Editor or the NG-Configurator. In these cases, the generated DB is in the dynamic allocated range of DBs or RAM DBs. Check the allocated DBs in the Software settings of the concerned CPU. Set the range above 3999, maybe also the DB, not only the RAM DBs.
The way DBs are organized in a PCD is rather complex. To know more about DB sizes, DB available ranges, RAM or EPROM DBs and available memory for the DB, consult the Hardware manual or contact the SAIA support. Furthermore, don’t forget that DB 0 to 3999 requires much more CPU access time. Mapping DBs above 3999 will always speed up your application.
We also advise you to start a PCD project as follow:
- Go to the Hardware Settings - Click Upload
- Go to The Software Settings - Click Set Defaults
PG5 should automatically allocate the RAM Texts and RAM DBs into RAM. You may still need to change the DBs above 3999 to be able to create larger DBs.
Fupla of PG5 cannot
display values, LED and Fbox value when online.
This problem does not occur on all PC's. Usually, it appears when you build the project without closing Fupla during the build. You can solve the problem in the following way: In Fupla, make a Page down - Page up or close and re-open Fupla.
If the problem is still there tray the following :
- close Fupla
- go offline
- clean the CPU files with the command CPU -> Clean flies and select all boxes. Warning this will also reset the dynamic resource allocation.
- rebuild, reload the program and go online.
Build still required
after a Build
This error can be caused by various situations
1. You have saved a source file after its compilation. Maybe you have only change a setting, or comment. PG5 check the date of files to detect modified files and don't know if your change affect the code or not. Don't make change and don't save your files after you have compiled and build.
2. This can happen with the NG-Trace software. If you don't have any confgured buffer, you can uncheck the 'Link' properties of the file in SPM. If you have a configured buffer, compile in the NG-Trace after each modification before to build the program.
3. You have file names containing dots (apart the one before the file extension)
-> rename your file. Don't use dot in file name.
4. Some files are not automatically assembled.
-> Use the command Rebuild all.
5. You have copied a project from a PC to another one and the PC date/time is older than the PCD date of the former PC.
-> correct the PC date.
6. Object files have an earlier data/time than source files
-> clean object files with the command CPU - Clean files and select Objects
7. You have read only files in the CPU folder.
-> select all files, select properties, uncheck the attribute 'Read only'.
8. You are using the NG-Configurator and you did not start it from the PG5 project. In this case, the compilation may save the output file in the wrong folder. Always start the NG-Configurator from the PG5 project.
9. Even started correctly, some version NG-Configurator did save the settings after a compilation and caused this situation.
-> Ask for the newest version by Engiby.
10. You are using the NG-Trace and you have disabled the configured buffer. Also in this case you need to recompile the file, at least once. You can also uncheck the Link option of the NG-Trace file. Don't forget to re-check this option if you want to use a configured buffer again.
Some of these situations can be temporarily solved by manually edit the compiled file. This file is indicated in the error message. Open this file with a text editor, insert en empty line at the end save and close it. Do not re-compile but start now the build.
External with an HMI application and Heavac Fboxes.
You have error message like
_HEAVAC._BID.Fbox_name._BIDSTR in module My_module.obj
This error is issued if the HMI objet is not created by Fupla for the referenced Fboxes. Check the following:
- check that the Fbox name and the reference given in the HMI application are identical (use copy-past rather than retype).
- check that the option 'Objet for HMI Editor' is set to 'Yes' in the referenced Fbox.
- check that the option 'Objet for HMI Editor' is set to 'Yes' in the Heavac Init Fbox.
- ensure that the Fupla file is linked with the application.
Unresolved external used
Some symbol used by Fbox cannot be external. For instance, if the Fbox needs to declare again the symbol external for use in OBL files.
Example of error message:
_BELIMO.ADDRESS in module D:\pg5\Libs\App\Belimo3.obl
You can solve this problem by declaring that the full symbol declaration must be included in the file using it. Right click on the concerned symbol in the Global symbol list and check the option 'Use Local Declaration'.
version of HMI file can we convert to a new HMI ?
Take care that some intermediate HMI-Editor $-version does not convert old files. Normally these versions are only used for internal test by SAIA.
Beta, V (official) and SP (service pack) are able to convert HMI files from former version with some restriction.
The minimum version are the following :
For HMI 1.1 (actual version
1.1.132), the minimum is 1.0.110
For HMI 1.2 (actual version 1.2.131), the minimum is 1.1.020
For HMI 1.3 (actual version 1.3.018), the minimum is 1.1.020
To convert an old file 1.0.110 to 1.2, you must make 2 operations, first convert to 1.1.132 and then convert to 1.2.132.
with Modem Fbox Call Slave Diag ?
The following problem has been found with the Modem library on PG5 1.2 :
- If 2 Modem Driver are used, also 2 Call Slave Diag Fbox must be placed.
- Some times assembler error : Symbol not evaluated.
Work around with Modem library $ 2.3.134
The Call Slave Diag Fbox should not be used anymore.
The user can now use the system symbols to get the serial line diagnostics.
A new symbol has been added s.mdm.modem.hold to hold the line (modem is the Modem Driver Fbox name).
The flag must be set cyclically during S-Bus activities to hold the line.
Back to Engiby main page
Engiby / 26.12.2009