S7 - Mystery of the missing Bits

RMA

Member
Join Date
Sep 2004
Location
North of Hamburg, Germany
Posts
2,052
I've got a funny problem with some of my alarming. I'm monitoring the state of some motor driven switches using multi-instanced FBs. For testing, in the calling FB I'm jumping over most of the code and just checking one switch so that I can observe the called FB knowing that what I'm seeing relates to only that one switch. I then moved the switch by hand, so that neither the Open or Closed feedback contact was made, thus causing an error. Up to a point evrything seems to work as expected, at least in the called FB, ProTool, the Status DB and the VAT.

This is the called FB

Alarm_1A.JPG


As you can see, the Summary Fault Bit (Sammel_Fehler), the Alarm BIt (Merker Bit for ProTool) and the Fault identification Bit (Einzel_Fehler) are all being set OK. The Fault identification Bit should have been a SET not an assign and while I was changing that, I also tried changing the Alarm_Bit (which is meant to be an assign) to a SET as well, but this didn't change anything.

In the called FB, however, for some reason the Summary Fault Bit is showing up as a "0".

Alarm_4A.JPG


Now this could just be another of those peculiarities that occasionally occur in View mode, but I dont know. What I do know is that everywhere else, all the Bits are in their correct state.

What is more puzzling, is that I thought I'd come up with a cunning way to check whether any of the myriad Alarm Bits was set to trigger a jump to the fault screen in ProTool by adding all the Fault Bits in DWORDS and if the sum was > 0 doing the jump. Nice idea if it worked!

Here's the VAT, as you can see, Merker Bit M1506.4 is set (I borrowed Jesper's Fault messaging system, thanks Jesper!).

Alarm_2B.jpg


But in the calling FB for some reason, the sum remains at zero. As a result, although the alarm and everthing else is set OK and show up in ProTool when I go to the fault screen, the jump to the screen is not performed!

Alarm_3A.JPG


Anybody got any thoughts as to what might be wrong?
 
A more general point concerning "looking for non zero" in a range of variables, you should combine the variables using OR logic rather than addition. If the top bit of two variables is set, then when they are added the result will be zero !
 
You are summing DBD's but monitoring MD's, is this one of your problems?

Yep, got it in one again - I'm so used to doing everything in DBs that I evidently forgot that I'd decided to do the Alarms in Merker's as Jesper does. Obviously went back onto autopilot there!

A more general point concerning "looking for non zero" in a range of variables, you should combine the variables using OR logic rather than addition. If the top bit of two variables is set, then when they are added the result will be zero !

I obviously didn't think this one through properly either - thanks for the tip, I'll change them both on Monday.

That only leaves the curious display in the CALL where the Summary Fault shows up as a 0. But since that isn't actually doing any damage, I'll put that one down to a View "funny"!
 

Similar Topics

Hi all, Working on a system with a CompactLogix 43 processor, Kinetix 6000 servo drives, and a sercos interface between them. The 6000 is using...
Replies
1
Views
1,012
I recently installed 4 PoE security cameras at my church. Since part of the cable run was outdoors, I searched for outdoor cat5e cable. I found...
Replies
5
Views
2,434
Factory Talk ME station V10.01 Studio is v32 Below is a pallet with password visibility. I have rendered this before in other applications but it...
Replies
3
Views
2,070
I get pack of these in every Micro expansion module... I still haven't found a use for them..?
Replies
9
Views
1,925
Hello, I've taken on yet another basket case old machine running an 7 slot SLC 5/03 PLC.... I have run into a situation where I see the same 4...
Replies
3
Views
5,620
Back
Top Bottom