More Frustrations with Siemens.

Join Date
Apr 2002
Location
No income tax, no capital gains tax. Freedom!
Posts
8,391
How do you define a bit constant? The documentation says:
Bool#false
should work but it doesn't.
This boolean is an input to a FB that determines whether it will read or write. I can use a variable #bTemp that is defined as a bool as an input but not Bool#false. I have tried Bool#0 and many others and nothting seems to work.
I bet you can't pass a boolean constant to a FB.
 
How do you define a bit constant? The documentation says:
Bool#false
should work but it doesn't.
This boolean is an input to a FB that determines whether it will read or write. I can use a variable #bTemp that is defined as a bool as an input but not Bool#false. I have tried Bool#0 and many others and nothting seems to work.
I bet you can't pass a boolean constant to a FB.

I normally create a boolean always-off in the first part of my program for this purpose, similar to the following:
-----||---------|/|---------------------------------()----|
ALWAYS_OFF ALWAYS_OFF ALWAYS_OFF

I also create an always-on bit by inverting this one. This is useful for parameterizing function calls with constants.

If I am disabling rungs in an existing program, I will often create a "BINAURAL_OFF" bit so I can cross-reference it later.
 
Passing TRUE and FALSE to an FC or FB works in STL.
Why it does not work in LAD or FBD ? No idea, maybe Siemens knows.
I also make my own "ConstON" and "ConstOFF" for this purpose.
 
This program is has OB1 written in ladder and it calls FBs written in STL. The idea is that I write the FBs that do the communications with the controller so the customers don't have to. This way we don't need to teach the customers about loading address registers and indirect address. I set a bit to true and another to false in OB100 and then I used the variables and not the constants.

I also had problems adding variables to a shared DB. I added the variables and immediately downloaded the DB but for some reason the symbol table doesn't get updated so I can't use the variables. After much cursing and swearing the S7 give in and lets me use the symbols. I tried doing consistency checks too but I have know idea what really causes the S7 to add the new variables in the DB to the symbol table. This problem has plagued me since the beginning but it has been minor compared to other problems.

Also, when I first connect to a S7 using MPI should I be able to use the 'display available nodes' to show what MPI channel I am using? What is more important, should it display the channel number that the PLC is using?

I get the "adapter damaged" messenge and it ticks me off because I know there is nothing wrong with my MPI cable. The Step7 simply can't connect with the PLC after trying all the channels. After much cursing and swearing the MPI adapter finally works but I have no idea why.

My S7 hates me. I know it hates me and I hate it.
 
If it isn't one thing it is another. That makes dealing with any products that use REALs difficult.

This is as bad as a noob post, no useful information is provided to help resolve the problem.

Here is an example variable table showing a floating point variable being displayed.

vat.JPG
 
WHY NOT USE REAL? Why the inconsistency? Am I supposed to guess?
FLOATING_POINT isn't used anywhere else.
I am home now and not at the S7 but I looked at the on line help and I didn't see a FLOATING_POINT either. FLOATING_POINT was probably added to later versions I have 5.3. I will get upgraded to the latest since it does support FLOATING_POINT.
 
Passing TRUE and FALSE to an FC or FB works in STL.
Why it does not work in LAD or FBD ? No idea, maybe Siemens knows.
I also make my own "ConstON" and "ConstOFF" for this purpose.

Using True and False in STL is just a "trick" by the block editor in STL mode. The STL behind the scenes uses the SET instruction on a local variable, the local variable is then passed to the FC/FB. As already stated, predefined M flags for always True and always False is the way to go.

There is another alternative, code your own True and False FC's and use those in the ladder

tru.JPG
 
WHY NOT USE REAL? Why the inconsistency? Am I supposed to guess?
FLOATING_POINT isn't used anywhere else.
I am home now and not at the S7 but I looked at the on line help and I didn't see a FLOATING_POINT either. FLOATING_POINT was probably added to later versions I have 5.3. I will get upgraded to the latest since it does support FLOATING_POINT.

If you right click on the display format, a drop down list gives you the selections:

vat1.JPG
 
OkiePC, I know what is wrong with you!

Looks like the only thing missing (aside from Peter's valid point about consistency of terminology) is a drop down arrow so you don't have to guess where to right click.
You think like an American!!! 🙃
It must be a disease that you are catching from other Americans, oh sh!t we can't have that. Of course the Germans think we are stupid. LD must think we are stupid too.
Yes, I looked for the tab on the right of the text box that shows all the valid options but the Siemens programmers are too lazy to display the options. (n)
I wonder how much time it would take a software programmer to add the options versus all the customers that waste time looking up what the options are? It might take the software programmer a day if he is incompetent but think of all the days his customer will save.

LD, I don't want to spend any more time that I have to supporting our product with any PLC. I just can't understand why I speed about 100 times more time supporting customers using Siemens PLCs. (n)

This last customer had problems because his old crippled PLC DIDN'T SUPPORT THE MAX NUMBER OF REGISTERS THAT CAN BE TRANSFERRED WITH DATA CONSISTENCY. That is a PLC problem not mine. I resent having to support the deficiency in a Siemens product.

The customers should be asking Siemens why they can transfer 64 32 bit registers back and forth with data consistency.

This problem has mostly gone away with ProfiNet but the Profibus user are still very limited in the amount of data they can transfer.
 
The customers should be asking Siemens

Really? Is there a way to communicate anything back to Siemens programmers? Is there a way to communicate anything back to Beckhoff programmers?

This not a new topic but it is a shame to see such a great hardware product marred by such deficient software. This might be a hyperbole but all German and Japanese companies should fire their software teams and hire Americans. Or Russians. Or Israelis. Or Estonians. Or anyone else who does software well.
 
Aren't you a president or vice president of your company?

Why don't you just hire someone that knows what the h*ll they are doing?

Just a thought
 

Similar Topics

Hello, i need to use P_Intlk and feed the Status interlock OK bit to a P_DOut block. However, there's 17 interlocks for this output. How can I...
Replies
1
Views
112
Hi everyone, recently i worked with a cmore panel and have the question that how can clear alarm list whit remote form,right now only can with...
Replies
0
Views
112
Hello, friends, I am trying to upgrade a system that uses an Onrom incremental encoder (E6B2-CWZ6C) connected to a Danfoss VFD (FC360), but now...
Replies
4
Views
277
Hello Friends I have took the sample program from AB webpage and modified, but I can only send 127 chars...
Replies
1
Views
188
Hello, I am new here and have been working with PLCs for a few years now. I have been tasked with setting up a Micrologix 1400….. to a Cmore 10...
Replies
10
Views
502
Back
Top Bottom