Beijer HMI / IX Developer to PLC Handshake

GTUnit

Member
Join Date
Oct 2009
Location
Orange, CA
Posts
401
Hello,



I am using a Beijer ix12b with IX Developer and really need some help with analog button data entry and writing to the PLC.

Basically I need a handshake function when entering numeric data using the panel buttons.

When you enter a numeric value into the Analog/Numeric button on the screen, how do I know that that that data got to the PLC tag. How can I verify this happened and I can use that data to execute my program.

Other panels like Automation Direct Cmore make this functionality very easy by providing separate and additional handshake tags for the Numeric Data Entry button.

I cant figure this out and it is really frustrating.
Any help you can provide would be greatly appreciated.
 
Hi GTUnit,

What PLC are you using?

Just out of interest why do you want the handshake function?

In my application, using a Siemens PLC, we just write the values. If the value doesn't "stick" it will just jump back to whatever it was. And that only happens when the value is overwritten by the PLC or from another source.
 
Hi boneless,

Allen Bradley Compactlogix.

The operator will use the panel to enter recipe data into an array.

The Array is indirectly addressed with a "pointer" tag. Recipe[100] is written as Recipe[pointer]. When pointer equals 2 then we are looking at Recipe[2].
An operator uses "UP" and "DOWN" arrow buttons on the screen to index the pointer value up and down, selecting the next or previous recipe.

I need to write the Analog/Numeric Button value to the currently selected array element ONLY when the operator enters the value on the screen and presses <enter>

All other times, I need to read the value from the selected array element and display in the Analog/Numeric button.
 
Last edited:
I was using the "Input Value Changed" action to trigger a "New_Data" bit but the PLC sees the bit before the just entered data arrives in the array. So I am essentially writing the old data into the array. Its a timing problem that Panels like Cmore resolve using handshake tags so that the panel waits to receive a "I got the data ok" response from the PLC before the panel closes the data entry window and considers the process complete.
 
Hi,

The InputValueChanged event is fired as soon as you press enter, not when the value has been sent and acknowledged by the PLC.

You could try the ValueChange event instead, however, in that case it will also fire when the value is changed from the controller (which is maybe not desirable in this user case).

You can also add actions to the tag itself (in the tag editor). You could then detect if the tag has changed it's value and execute actions based on that.

//Supporter
 
You could use the equivalent of the DTR instruction in the PLC (data transition in A/B speak, one of the only input instructions that is also destructive)...

If the numeric entry data has changed (not equal to) then make them match and pass logic truth forward on the rung.

Is the operator entry automatically writing to the correct array position or to some other place?

In either case, you are just looking for the data entry to be different than the data displayed. When they are different, make them equal and execute what ever other logic you need (in this case you would write the temporary storage location of the data entry to the array position).

This is handshaking, when you have separate display and entry values, those values are used as handshaking without needing any special bits. You have a whole value to use for the comparison whenever it changes (entry is not equal to stored[selected]), so there are no timing issues if you handshake it that way on the PLC end.

Using bits for handshaking is nice when you only have one number to display and enter and you need to control who owns it during power up, for example, or for security reasons.
 
OkiePC
The operator entry writes to a temporary tag.
The data in the temporary tag then gets copied into the selected array position.

While your solution is good and works, it presents some problems.
Lets say I want to enter the SAME data into several array locations.
I use the pointer to point to the next array element.
I enter the same data in the Data Entry field.
In this case, because the data did not change, there is nothing to trigger the data to be written to the array.

If there is another way to do this I would really appreciate some advice. This software has been a disappointment so far.
 
If there is another way to do this I would really appreciate some advice. This software has been a disappointment so far.

It's not going to help you but I feel the same. I downloaded the free demo version of IX dev just to get to grips with it should a job come up with one of these HMI's

I hated it from the start. Absolutely none intuitive. I couldn't even make a normal on/off button work. I have always found Beijers software to be very good - but this was very complicated for simple tasks.

I am hoping I don't need to use them.
 
OkiePC
The operator entry writes to a temporary tag.
The data in the temporary tag then gets copied into the selected array position.

While your solution is good and works, it presents some problems.
Lets say I want to enter the SAME data into several array locations.
I use the pointer to point to the next array element.
I enter the same data in the Data Entry field.
In this case, because the data did not change, there is nothing to trigger the data to be written to the array.

If there is another way to do this I would really appreciate some advice. This software has been a disappointment so far.


I have done some projects with IX and allen-bradley...
When I want to do the recipe handling on the PLC (mostly I use the panel recipe system), I have a numeral display with the current recipe opened.
Then I have open recipe button that displays a pop-up with a combo-box (it can be a numeral entry as well) where you have the recipes available for opening. You select the recipe and then on the pop-up you have 2 buttons, an OK button, which will set a tag to tell the plc to open the selected recipe, and will close the pop-up, and a CANCEL button which would just close the pop-up, without setting the tag to open the recipe.

This system works quite well (for me at least), and if you want more control you could even control the display of the OK and CANCEL button throw the plc.


So far I have worked with several HMIs and I found this IX as one of the most flexible. It true however that is not the most intuitive one (not having a momentary button is crazy, for example).
 

Similar Topics

hello every body. I want to upload program from E100 HMI Beijer. I have " E - Designer " software and CAB5 programing cable. I tried with USB to...
Replies
18
Views
3,222
Hello, Maybe it is just a simple problem, but I cannot solve it. I have a Wago 750-881 connected to a Beier HMI through IP TCP, the connection is...
Replies
0
Views
886
Well, I'm working with this ABB plc project, and It's been a learning experience coming from Allen Bradley. The project can't be changed to an AB...
Replies
1
Views
1,165
Hello, Can somebody tell me how to Upload and Download program from Beijer 1071 Panel Operator/HMI to a CF Card directly without E-Designer, since...
Replies
2
Views
1,448
Hi. I need to get an upload from a Cimrex 30 HMI. According to a label on the back, it's made by Beijer. See attached photos. It's successfully...
Replies
5
Views
2,580
Back
Top Bottom