IanfromOz
Member
Hi All,
I'm planning to use a Red Lion Graphite system to control and monitor a small pilot plant with perhaps 100 - 120 I/O plus 6 or 7 VSDs via comms.
My background is larger DCS systems so I'm struggling a bit to get up to speed with the way PLCs and HMIs work. I chose the RL Graphite as their HMIs seem very well regarded and integrated with the Graphite controllers and IEC61131 Control functions. The area giving me grief at the moment is the interactions/relationships between physical I/O, Data Tags and the local variables & Project (global) variables in the IEC61131 Control engine.
In the Control engine:
* I have a User Defined Function Block (UDFB) with 8 parameters that I wish to use numerous times in my project.
* I would also like to divide my control logic into a number of different 'Main' programs for modularity and readability.
* I will define Data Tags for all the parameters of each instance of the UDFB and all physical I/O so they accessible throughput the HMI.
* I also wish to access some of these parameters in different Control programs.
* If I defined local variables in each Control program with their ‘sources’ being the same Data Tag, will this link the two local variables together? For example, say I have a local variable called XV101PV (this is the opened/closed status of valve XV101) defined in Prog1 and in Prog2. And both instances of XV101PV have their source defined at Data Tag ‘Project.XV101.PV’ (it’s written in Prog1 and read in Prog2), will the Prog2 local variable track the Prog1 local variable? And if so, is this an appropriate way to pass the value?
* OR does every instance of a parameter that I may wish to access in different Control programs have to be defined as a Project (global) variable? If so, there will need to be quite a lot of them, which I thought was considered poor practice.
* OR am I going about the whole thing the wrong way?
All help most appreciated.
I'm planning to use a Red Lion Graphite system to control and monitor a small pilot plant with perhaps 100 - 120 I/O plus 6 or 7 VSDs via comms.
My background is larger DCS systems so I'm struggling a bit to get up to speed with the way PLCs and HMIs work. I chose the RL Graphite as their HMIs seem very well regarded and integrated with the Graphite controllers and IEC61131 Control functions. The area giving me grief at the moment is the interactions/relationships between physical I/O, Data Tags and the local variables & Project (global) variables in the IEC61131 Control engine.
In the Control engine:
* I have a User Defined Function Block (UDFB) with 8 parameters that I wish to use numerous times in my project.
* I would also like to divide my control logic into a number of different 'Main' programs for modularity and readability.
* I will define Data Tags for all the parameters of each instance of the UDFB and all physical I/O so they accessible throughput the HMI.
* I also wish to access some of these parameters in different Control programs.
* If I defined local variables in each Control program with their ‘sources’ being the same Data Tag, will this link the two local variables together? For example, say I have a local variable called XV101PV (this is the opened/closed status of valve XV101) defined in Prog1 and in Prog2. And both instances of XV101PV have their source defined at Data Tag ‘Project.XV101.PV’ (it’s written in Prog1 and read in Prog2), will the Prog2 local variable track the Prog1 local variable? And if so, is this an appropriate way to pass the value?
* OR does every instance of a parameter that I may wish to access in different Control programs have to be defined as a Project (global) variable? If so, there will need to be quite a lot of them, which I thought was considered poor practice.
* OR am I going about the whole thing the wrong way?
All help most appreciated.