![]() |
||
|
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc. |
||
| ||
New Here? Please read this important info!!!
|
|
#1 | |
|
Lifetime Supporting Member
|
Proficy: Machine Edition / Memory Areas
I am working with Proficy: ME with a PAC RX3i controller. Normally I would map variables to a memory space on the CPU. However this controller supports "Symbolic" memory that variables are automatically assigned to if one does not specify a specific address for the data.
An excerpt from the help file: Quote:
|
|
|
|
|
#2 |
|
Member
![]() Join Date: May 2003
Location: Upstate, SC
Posts: 205
|
Typically, you will use CPU-mapped variables in your programs and give the variable some meaningful name to enhance readability of the program. For instance, something like Alarm_Reset could be mapped to %M00001. Then, you can configure Proficy to display the variable name, address or both.
Where I have found symbolic variables to be quite useful is when declaring variables for timers and counters. Timers and counters use three consecutive words of memory for the Current Value, Preset Value and a control word. If you use CPU-mapped variables, you have to ensure that you do not "step on" any of these words with other CPU-mapped variables or instructions that will overwrite the timer/counter data words. Symbolic variables are perfect for this. In fact, when I place a counter or timer instruction in a program, I will just type in the name of the symbolic variable that I want to use and Proficy will create the variable. The thing is that when Proficy creates the variable, it will not set the variable as retentive. When you verify the program, Proficy will display a message that it is setting all symbolic variables to retentive. If you re-verify, the message does not come back unless you have defined new symbolic variables. Regards, Ken Last edited by KP_EENG; January 28th, 2008 at 09:45 AM. |
|
|
|
#3 |
|
Lifetime Supporting Member + Moderator
|
For the most part, it doesn't really matter whether you use symbolic variables or traditionally addressed variables. Ken has identified one example where symbolic addresses can prevent a frequently-encountered problem.
Use CPU-mapped variables for things that need to appear on an HMI panel, especially if the HMI uses serial communications. The serial port drivers in your HMI will be looking for traditional addresses. Furthermore, the serial port drivers are at their most efficient when you use contiguous addresses for anything displayed on the HMI. That's because the drivers read data by sending a command that says "Send me X bytes of data from memory type Y starting at address Z". |
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|
Similar Topics
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Panelview Plus 1000 - Out Of Memory Error | mcrawford | LIVE PLC Questions And Answers | 0 | October 9th, 2007 10:25 AM |
| HEAP Internal Errors in Intouch 9.5 SP3 | CalfeMic | LIVE PLC Questions And Answers | 7 | July 26th, 2007 07:18 AM |
| Proficy Machine Edition | GMc | LIVE PLC Questions And Answers | 5 | July 4th, 2005 10:16 AM |
| Siemens PLC program lost after power down | TEOWK | LIVE PLC Questions And Answers | 24 | May 30th, 2005 01:17 AM |
| SLC 5/03 data loss | andydaoust | LIVE PLC Questions And Answers | 1 | October 10th, 2002 06:38 PM |