using 2 AB panelviews - problems

psuath

Member
Join Date
Jul 2011
Location
In Hotels
Posts
7
Hi gang, I hope you guys can help point me in the right direction.

I have to edit a machine's HMIs to replicate one button from one HMI onto another. Here's the setup:

PLC is a SLC 5/05. Main HMI is AB Panelview Plus 1000. Aux HMI is AB PV+600. Connections are via ethernet.

Main HMI has multistate button, 2 states connect to a bit. It is used to unlock safety guarding. Operators wanted the same button functionality on the Aux HMI so they don't have to keep walking over conveyors.

I replicated the multistate button on the Aux HMI. The only difference is that the main screen updates at .25 seconds, aux at 1 second. Both are sent to change "on next state" not "value".

the problem is that sometimes you have to hit the button twice to actually activate it. In the PLC i don't see the first button press toggle the bit.

now, i'm thinking of making each button a momentary push button, and either of them will latch in the "original" button bit. that way all the logic stays the same. I'm just curious as to why the initial double press.
 
I think it is a situation in which, each panelview "remembers" what the next state of the button should be when pressed. So starting out, the tag is "off" and both panelviews know that it's "off". The button is pressed on one panelview, so it then "turns the tag on". The 2nd panelview still thinks that the next button press should turn the button on, so if you use the 2nd panelview to operate the button, it will take two presses since the tag is already on and the first press will simply turn it on again. The 2nd press turns it back off, meanwhile the 1st Panelview still thinks the next press should turn off the tag...so there becomes a conflict between the two HMIs about what should happen next to a tag that is being "shared".

Ideally, you should have unique tag addresses for each HMI for at least the control tags, and add a little ladder logic to tie them to the same function in the PLC. I think this could resolve your double press issue, and I think it is the solution you described.
 
Another option, which I practice is to have the button on the HMI LATCH a bit in the PLC to TRUE. I then write PLC code to UNLATCH the bit after the command is executed.


Button Action
---||----------+-----( )-----
|
|
| Button
+------(u)----






I will also use this same method and add in a ONS, the way if I have multiple areas of code that respond to that button press I assure myself the entire PLC will see the ONS button command.
 
Paull'ys method also protects against the inevitable comms loss or corruption that leads to stuck button syndrome, at the small cost of making it more difficult to monitor the state of the address in the PLC. I use the oneshot to OTE my internal bit in one place in the code. Every bit I use that is "1shotted" gets the text "1Shot" included in the description so the viewer knows he might not see anything go green in RSLogix.

This bit then triggers one time events like bit toggling incrementing/decrementing values, etc. Then on the preceding branch I will examine that bit to turn off the HMI bit. This way, the HMI bit is true for one scan as well, but that bit can become true at any point during the scan, so I usually want to ensure that I control when during the scan I allow my code to interpret that bit by doing it in only one place.

In the HMI I use Momentary Normally Open PB objects with a minimum on time of 500ms. So, between the asynchronicity of comms and scans and multiple devices, you still have a half a second to catch the pulse and take the action.

For things like jog buttons that I want to time out, I leave the minimum on time in the HMI at zero, and put a XIC -> TON in the PLC. Then the TT bit is the time limited Jog_With_Time_Limit momentary PB. The DN bit can OTU the address to avoid stuck button syndrome...but then you need to only unlatch when the HMI isn't going to turn it right back on again...
 
Last edited:
wow, thanks for the help guys.

Somehow i think that because there is a time delay between the screens, there is a problem. I had intended to replace the multi-state buttons with momentary pushbuttons with individual "value" control but the same "indicator" value.

The two new bits will be ORd together and latch the original buttons bit that was latched. I'll still use the same indicator value.

would this be workable?

For some reason i can't post PLC code correctly, i thought there was a post, but i can't find it...
 
wow, thanks for the help guys.

Somehow i think that because there is a time delay between the screens, there is a problem. I had intended to replace the multi-state buttons with momentary pushbuttons with individual "value" control but the same "indicator" value.

The two new bits will be ORd together and latch the original buttons bit that was latched. I'll still use the same indicator value.

would this be workable?

For some reason i can't post PLC code correctly, i thought there was a post, but i can't find it...

ok, here's the code.

button 1 Action
-+---||-----+-----(L)
| |

| button 2|
+---||------+



the action sends the signal to unlock the machine guard doors. to relock the doors, the machine hardwired Reset button must be pressed.

there is an indicator bit tied to the output that controls the lock/unlock of the guard door. so if the lock is "engaged" the display will show the "Press to unlock" state of the button while the lock is "open" the button will then show the "doors are unlocked" state of the button
 
is there any difference in a SLC 5/05 between using a Binary (B3:1/1) bit and an integer bit (N9:3/1) in terms of speed/performance?

as in my post above, i plan on making the buttons momentary, and having them OR'd to latch the original button bit. The way the PLC is set up, the PanelViews use an Integer tag (N9) for the logic.
 
is there any difference in a SLC 5/05 between using a Binary (B3:1/1) bit and an integer bit (N9:3/1) in terms of speed/performance?

as in my post above, i plan on making the buttons momentary, and having them OR'd to latch the original button bit. The way the PLC is set up, the PanelViews use an Integer tag (N9) for the logic.

No difference. Just make sure you don't write an integer value to N9:3 anywhere in your program :)
 

Similar Topics

I have a project to automate four generator sets. The system will monitor and store the load demand of the factory. Once there's Power outage, the...
Replies
0
Views
55
Adding ethernet equipment to an existing panel that has none. We have some solid ethernet cables coming from other remote cabinets that I plan to...
Replies
3
Views
116
I'm trying to control a device via MODBUS RTU and the ModbusRtuMasterV2_PcCOM in Twincat 3. I've configured a device with the right com port and...
Replies
7
Views
221
Hi, I'm trying to use the IO Device Library (Product Versions) which is configured to work with the 1756-EN4TR & 1756-EN2TR but my system uses...
Replies
0
Views
59
Hello, As part of our project, we are using an M241 controller. This controller interfaces with an industrial computer and a router via a switch...
Replies
2
Views
104
Back
Top Bottom