4 |
Background User Checksum and Background Window
Timing Instructions
The following information is provided to allow you to guarantee full coverage of the number of program words verified by the User Program Checksum per sweep and the Background Window Diagnostics within a certain amount of time. It is important to understand that the more checksums performed and the larger the background window, the longer the sweep will take. For example setting the number of words to checksum to 176 will add 2.8 ms to each sweep.
First, you should determine the number of words to checksum per sweep.
(program size ⎟2) x (sweep time) x maximum completion time
Words per Sweep =
[max. completion time ± (program size x F)] x max. completion time ± C) ± (C x F x program size)
Where:
HWords per Sweep: The number of words to set in the PLC Configuration to be checksumed each sweep. This number must be a multiple of 8.
HProgram Size: The size of the user program in bytes. You can get this from the Logicmaster 90 PLC Memory Usage screen, which is accessed by pressing the status softkey (F3) from the Programmer Main menu, then the plcmem softkey (F5). Add the ºUSER PROGRAMº size on this screen to 10566 (this accounts for internal memory usage not added to the user program memory.
HSweep Time: The sweep time in milliseconds of the user program with checksums and background window turned off. You can get this from the Logicmaster 90 status line on any screen.
HMaximum Completion Time: The amount of time in milliseconds that you want to have full coverage of background diagnostics.
HF: A constant that represents milliseconds per byte of user program checksumed. This constant is dependent on the type of CPU module (that is CPUs with 80386 microprocessors are faster than CPUs with 80186 microprocessors). This constant is 0.008 ms/byte for the CPU 780.
HC: A constant with units in milliseconds, which is also dependent on the type of CPU. For the CPU 780 it is 4480 ms.
Following is an example of calculating the Words per Sweep, using the following data: User program Size = 89434 bytes
Program Size =User program Size + 10566 = 89434 + 10566 = 100000 bytes Sweep Time = 100 ms
Max. Completion Time = 120000 ms (2 minutes)
100000 ⎟2 x 100 x 120000
Words per Sweep =
[120000 ± 100000 x 0.008] x (120000 ± 4480) ± (4480 x 0.008 x 100000)
Words per Sweep = 174
You should round this answer (174) up to the nearest number divisible by 8 (8, 16, 24, etc.) which is 176 since Logicmaster 90 only accepts numbers divisible by 8. Next use this number in the following formula to determine how long to set the background window time.
Background Window Time =
C x (sweep time + words per sweep x F x 2)
(maximum completion time ± C)
Chapter 4 Operation | 69 |