Detailed story at the bottom of this post.
The real question is do you know of a clean way to breakout all of the sub elements in a UDT? I have 66 elements in this UDT. They are BOOL, REAL, & Timers. They are mixed around so I have 11 BOOL, 3 REAL, a few BOOL, a few REAL, a few TIMER, etc. etc. I have 12 of these TAG that are 66 sub elements long.
I have to break each sub element out in to individual tags. The only way I see to do this is BRUTE FORCE. There are no arrays, no BOOL packed into DINT. Straight forward tags in a UDT.
XIC TAG1.BOOL1 OTE TAG1_BOOL1
XIC TAG1.BOOL2 OTE TAG1_BOOL2
XIC TAG1.BOOL3 OTE TAG1_BOOL3
MOV TAG1.REAL1 TAG1_REAL1
MOV TAG1.TIMER1.ACC TAG1_TIMER1_ACC
.
.
.
XIC TAG2.BOOL1 OTE TAG2_BOOL1
.
.etc
So this will be around 1000 rungs by the time I am finished. Do you have a cleaner way. Each sub element has to be its own tag when I am finished.
I don't know anything about how Siemens is programming their system. I don't even have Siemens software. Please don't ask a question, because I am undereducated to answer your questions about Siemens.
I have a customer that is having Siemens build their BAS (Building Automation System) This customer has a redundant CLX system L55 Ver 13 running a cold room. The system is certified by the DEA (not the correct terminology but you get the point) I can't change any of the PLC in these ControlLogixs. Siemens is trying to read data from the controllers and can only read the Controller scoped tags. They can not read program scoped or controller scoped UDT.
I am going to use a CompactLogix to Message the ControlLogix and do a tag read. The put all of this code in the CompactLogix so Siemens can look at the individual tags of this controller.
The real question is do you know of a clean way to breakout all of the sub elements in a UDT? I have 66 elements in this UDT. They are BOOL, REAL, & Timers. They are mixed around so I have 11 BOOL, 3 REAL, a few BOOL, a few REAL, a few TIMER, etc. etc. I have 12 of these TAG that are 66 sub elements long.
I have to break each sub element out in to individual tags. The only way I see to do this is BRUTE FORCE. There are no arrays, no BOOL packed into DINT. Straight forward tags in a UDT.
XIC TAG1.BOOL1 OTE TAG1_BOOL1
XIC TAG1.BOOL2 OTE TAG1_BOOL2
XIC TAG1.BOOL3 OTE TAG1_BOOL3
MOV TAG1.REAL1 TAG1_REAL1
MOV TAG1.TIMER1.ACC TAG1_TIMER1_ACC
.
.
.
XIC TAG2.BOOL1 OTE TAG2_BOOL1
.
.etc
So this will be around 1000 rungs by the time I am finished. Do you have a cleaner way. Each sub element has to be its own tag when I am finished.
I don't know anything about how Siemens is programming their system. I don't even have Siemens software. Please don't ask a question, because I am undereducated to answer your questions about Siemens.
I have a customer that is having Siemens build their BAS (Building Automation System) This customer has a redundant CLX system L55 Ver 13 running a cold room. The system is certified by the DEA (not the correct terminology but you get the point) I can't change any of the PLC in these ControlLogixs. Siemens is trying to read data from the controllers and can only read the Controller scoped tags. They can not read program scoped or controller scoped UDT.
I am going to use a CompactLogix to Message the ControlLogix and do a tag read. The put all of this code in the CompactLogix so Siemens can look at the individual tags of this controller.