Applies To: |
|
Summary: |
When using Citect's SSEVEN driver with the Siemens S7 PLC and Siemens standard PID library, some values are not displayed correctly. Why? |
Solution: |
Citect uses a "blocking" approach to
reading registers from a PLC to maximise the performance /
utilisation of communications links. This approach requires that
addresses start on consistent address boundaries within the PLC's
memory structure.
As an example of an inconsistent address boundary, the following register setup will not work:
As an example of a consistent address boundary, the following register setup will work:
The use of the Siemens Standard PID library enforces what Citect considers to be 'inconsistent' address boundaries. This means that Citect will report incorrect values for some tags. To avoid this situation, one of the following methods must be used when using the Siemens Standard PID library with Citect:
To display the tag, you need to create a function to convert the array of bytes into a word. Use the following as an example of the function:
Then use the expression S7ByteToInt(TAG1) in any place where you need to display TAG1 as a word. |
Keywords: |
Related Links
Attachments