DINT 32bit Limitation

netasp

Member
Join Date
Jan 2020
Location
ON
Posts
3
Guys,
I am new to PLC concept and I am trying to evaluate an existing program written in RSLogix5000 which has a faulting module up to 32 bit fault...using DINT.

If I want to increase my number of faults to more than 32 faults, what would be the best way?
 
See attached

Pretty much you create an array of Dints - Alarm[6]. the you have 6x32 --192 for your alarms. you can make it bigger if needed. But do not use Alarm0.0 for an alarm because in the supplied logic it will result in an alarm number of 0. In the attached ACD the logic produces an alarm number for each alarm.. kinda nice for data collection.
 
Thank you very much. I will try to convert it into a first up alarming system using masking and XOR logic
 
There are two options in Factory Talk View ME for an Alarm Trigger. As explained by Rayman you can create an Array to increase your 32 bit alarms. Which would also require you to create an additional trigger per word in your array. You also have the option of using Values which would give you 2,147,483,647 alarms the max value of a DINT. If you use the Bit option. Then Alarm bit.0 would use a message trigger value of 1 and Alarm bit.31 would use a message trigger value of 32. If Alarm word = 0 then no alarm active. This can be confusing to new users. The Bit option is looking at the Bit's position in the alarm word.

If you chose the Value option then instead of setting an Alarm bit true if an alarm happens you would have to move a value into the word. Then the alarm message trigger would need to be equal to the value. This is an easier option for setting first alarm by requiring that the alarm word must be equal to zero before allowing an alarm. Once the first alarm is reset then move zero into alarm word. Thereby allowing next alarm to activate.

I set them up like this:
If reset alarm active and alarm word = alarm value then move zero into alarm word.
 
There are two options in Factory Talk View ME for an Alarm Trigger. As explained by Rayman you can create an Array to increase your 32 bit alarms. Which would also require you to create an additional trigger per word in your array. You also have the option of using Values which would give you 2,147,483,647 alarms the max value of a DINT.




And for alarmvalues is maybe advisable to use hex values as they are easier to remember than long int or Dint value.
 

Similar Topics

Hi I am being given several fault words (as a DINT) from a Drive that I am receiving into a Compactlogix L33ER controller. I have a small...
Replies
12
Views
1,135
I am working on a project with a Controllogix 5582 processor using v32 firmware where I will be communicating with a Genset using Modbus TCP. It...
Replies
14
Views
924
Hi! It is always said, that DINT is the most performant datatype in AB plcs. I while ago i made a performance test. Several instructions like ADD...
Replies
4
Views
650
Im trying to use a MSG instruction to get the serial numbers of all addon cards and display the serials on a HMI interface. I have the logic done...
Replies
2
Views
547
Just something I think about when choosing data types in Studio 5000. It seems logical, but I've never looked deeply into the question. When...
Replies
12
Views
1,352
Back
Top Bottom