EcoStruxure Automation Expert / IEC 61499 Forum
Schneider Electric support forum to acquire and share knowledge about EcoStruxure Automation Expert and IEC 61499 standard for distributed control systems.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2023-10-30 03:48 PM . Last Modified: 2023-10-31 07:50 AM
Using a Scadapack 474, switching from Telepace, trying to figure out EDT vs DDT. I know DDT is a structured variable, with Quality, Value, and several sub fields whereas EDT is just a single 16 or 32 bit variable. My question is, if I am only ever using the .Value field of a DDT, would there be a reason to not just make the variable an EDT instead of a DDT? My program isn't large enough to have to worry about memory size or anything like that. I am also using Modbus TCP to read some variables, so I'd have to assign Modbus addresses to these variables, can a Modbus be assigned to just the .Value field of a DDT or the High or Low setpoint values, or is that another reason to use EDT?
Thanks
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2023-11-06 02:28 PM . Last Modified: 2023-11-06 02:58 PM
Hello...
Looks like this issue might better have been posted in the Remote Operations Forum, where discussions usually take place about SCADAPacks. Below is a link to Remote Operations. By default you'll go to the Geo SCADA forum, so when you get there, click the "Remote Operations Forum" button in the lower left ...
https://community.se.com/t5/Remote-Operations/ct-p/scada-and-telemetry-solutions-category
However, I can provide at least a partial answer for you. An EDT is an Elementary Data Type, created in the Logic Editor and only available there. All the usual data types such as Real, Boolean, DINT, INT and so on can be assigned. A DDT is a Derived Data Type, and is created in RemoteConnect's Object configuration tab. If you assign the object a Logic Variable Type it will then also be available in Logic Editor.
The ADV_ or "advanced" logic variable types add quite a few extra parameters that may (or may not) be useful. You'll want to experiment with that. For example, creating a tank level object as a T_SPx70_ADV_ANALOG type gives you the option to set up multiple high and low level setpoints without logic. Very cool. Give it a try, create one as (e.g.) UINT and another as ADV_ANALOG, then in Logic Editor you can see the difference.
A Modbus address is typically assigned to an object in its object configuration dialog in RemoteConnect, on the object's Modbus tab. If doing a Read or Write of a (e.g.) UINT analog, you'll just get (or write to) the .value parameter.
If you want to assign a Modbus address to a parameter other than .value, you can move that parameter in logic. For example, let's say you've created Tank_Level as an ADV_ANALOG and Tank_Hi as a Digital T_SPx70_Boolean. Using a Move block:
Tank_Level.H1_State -> MOVE BLOCK -> Tank_Hi
You could then assign a Modbus address to monitor Tank_Hi if you like.
OR... you could push a new level setpoint from a UINT Modbus analog in this way:
Tank_Hi_Setpoint.Value -> MOVE BLOCK -> Tank_Level.H1_Limit
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2023-11-07 01:50 AM
When assigning memory locations to structures the complete structure is assigned memory addresses. You can choose to read a single memory location from this structure but this requires a single modbus transaction, it is usually better to either allocate the tags you wish to read to a set of EDT which are allocated to contiguous memory locations or create one data structure that contains everything you want to read and assign this to a memory location.
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2023-11-07 02:44 AM
Hi
I am not sure to understand and 1499 specialists can surely give you a better answer.
I think there is a confusion between DDT and VTQ. As said in previous answers a DDT are arrays, structures alias enums whereas VTQ stand for Value, Timestamps and Quality. I think these are usefull informations and should be kept. In your Modbus Bus Master when reading a register your symlink will be a VTQ. If you don't care about T and Q, you can still use an EDT in your application and an implicit conversion will occur or you can use a VTQ_DECODE FB.
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2023-11-08 07:53 AM
Just to be clear, all... This issue is related to programming of a SCADAPack RTU with RemoteConnect and Logic Editor. Logic Editor is based on Control Expert (Unity Pro) but has significant differences. I've suggested to Russ that he re-post his question in the Remote Operations Forum instead, to avoid any further confusing responses.
Link copied. Please paste this link to share this article on your social media post.
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.