1/9/2021 4:22 PM | |
Joined: 9/27/2006 Last visit: 4/17/2025 Posts: 12346 Rating:
|
Hello Henrick; In most cases, Digital inputs and outputs on a CPU are located inside the Process Image data area of the CPU, and they are cyclically accessed by the CPU scan. Typical addresses are I22.4, O 3.7... Whan you deal with addresses that are not within the CPU Process Image tables, you are working with peripheral addresses, which is indicated by the prefix P: PIW256, PQW272 (truefor a S7-300, for a S7-1200 and S7-1500, you would write %IX256:P). Analog inputs and outputs are generally located in this area, as are values transfered over a fieldbus (Profibus, Profinet...). Being outside of the Process Image table, the register values of tha analog input modules are not accessed by the CPU unless the program reads them in explicitely, If in a network you place a MOVE instruction between PIW256 and a MWzzz or DBy.DBWxx the value at the peripheral input will be transfered at the moment the network is processed (immediate read). - Where and when do you need peripheral addressing? https://support.industry.siemens.com/cs/ww/en/view/18325417 - From the S7-1200 Programmable Controller manual: Accessg the data on the S7-1200 https://support.industry.siemens.com/cs/ww/en/view/109772940/89249487883 If you enable the MOVE operation to be controlled by the value of a specific tag, you could decide at what moment the peripheral value is read in to the CPU. If in parallel you add a MOVE 0 (to the same destination address) when the controlling tag is 0, then you can achieve what you want. Hope this helps, Daniel Chartier |
Last edited by: dchartier at: 01/09/2021 16:29:03 |
|
Follow us on