Why Does RSLogix 5000 Not Like This?

Archie

Member
Join Date
May 2002
Location
Orangeburg, SC
Posts
1,944
The rung in the attached picture reports errors on both instructions. The data type is LINT and it is version 20. If the data type is changed to DINT, both errors go away. Is this a V20 problem or should I be specifying it in a different way?

RS5000Errors.jpg
 
My understanding is that the 64-bit Long Integer is not a native datatype in the ControlLogix and is intended mostly for the processing of timestamps.

You can't multiply or divide or add or subtract a LINT element, nor can you compare it or specify a single bit.

You can MOV or COP or CPS with that datatype or use one of the timestamp-specific AOIs that go with it. RA Knowledgbase 609427 has a good summary.

So if your need is for arrays, you'll have to stick with DINT or BOOL[x] datatypes.
 
The EQU instruction doesn't support the LINT data type in any version, as far as I'm aware. I don't think there are many instructions that DO support LINT.

As to the OTL, if you define an INT, DINT, LINT and a REAL in your tag database, you can expand out the INT and the DINT to view each individual bit - but you can't do it with the REAL or the LINT. Given that you can't address REAL bits individually, and the fact that they behave the same way in the tag browser, I suspect the same applies to a LINT.

Side note - I've always wondered why you can't do it with a REAL - it's still 32 bits, and if you're using them for boolean operations the number is just as nonsensical whether you interpret the whole 32 bits as a DINT or a REAL. But in any case, computer says no!

EDIT: Wow, I'm slow today - Ken got TWO replies in before me!
 
Thanks Ken and ASF. I was attempting to represent a state machine with bits in a larger element. It has more than 32 states, so I thought I would use a LINT, but could not get RSLogix to accept the way I was accessing it. I wasn't sure if I was missing something in the way LINTs had to be accessed. I just changed it to an array of DINTs.
 
Thanks Ken and ASF. I was attempting to represent a state machine with bits in a larger element. It has more than 32 states, so I thought I would use a LINT, but could not get RSLogix to accept the way I was accessing it. I wasn't sure if I was missing something in the way LINTs had to be accessed. I just changed it to an array of DINTs.


You can do this with an array. People have been doing this when there was only 16 bits and 100s of steps.
 

Similar Topics

Hi all, I have an issue with 1756-L62S (revision 20.13) safety lock. We can't figure out who put safety lock on our project. Before I try...
Replies
0
Views
1,028
Hi all, I have an issue with 1756-L62S (revision 20.13) safety lock. We can't figure out who put safety lock on our project. Before I try...
Replies
2
Views
2,430
I have installed rs logix 5000 v 20, and I have a project file (.acd) ehere the controller is 1756-L71..... my software does not contains 1756...
Replies
3
Views
3,867
Hi, I installed RSLogix Emulate 5000 19.01.00 on a PC but it fails at start-up. No error messages during installation. The error message I get...
Replies
1
Views
2,413
Back
Top Bottom