Impossible becomes possible, Please help with this tia portal code.

thewalkerist

Member
Join Date
May 2021
Location
Izmir
Posts
178
Hello, Now here is my problem guys. I weigh my weight and i wait for the slow_fill_required_weight to be lesser than my slow fill limit which is 1500. After that has been done i check if my step_7 is activated or not. If its not activated then cool i can go yes? cool.


Now on to the 6th Step. On my 6th Step i check if my weight is bigger than my required amound or not. If it is then randy-dandy coolio i can go on to step-7. Cool but wait a minute. Why am i still in step-6? Whats going on? And why is my step 7 looks energised but down it doesnt give out any energy? Can you please help me? How is this possible?

Screenshot (747).png
 
thewalkerist


Check you are not writing to %M1.4 elsewhere in the program. Its what usually happens to cause this sort of thing. I'm not sure if TIA portal has a double coil check.
 
thewalkerist.
Using Merker addresses is risky for exactly this reason.
You can check if there are overlapping addresses by calling the cross reference F11, and selecting "Show overlapping access". It is one of the icons in the menu bar at the top of the view.
But the correct remedy is to not use Merkers, except for legacy code or 'quick-and-dirty' program changes that are added only temporarily.
Use DB addresses instead, which makes unintentional overlapping access practically impossible.
 
Use DB addresses instead, which makes unintentional overlapping access practically impossible.


In theory, yes.


In practice, I can't count the number of times I've found programmers new to the Siemens Way who had created an array of bools in an FB to use for edge detection, and then started using them in the instance DB outside the FB. Thus half the bits were double used, nothing was working, and they couldn't understand why. What's scarier is that some of them SEEMED like they were working....



Fortunately, the cross reference tool is more likely to find something like that now, but for a while internal and external references to the instance were completely separate.
 
In practice, I can't count the number of times I've found programmers new to the Siemens Way who had created an array of bools in an FB to use for edge detection, and then started using them in the instance DB outside the FB. Thus half the bits were double used, nothing was working, and they couldn't understand why. What's scarier is that some of them SEEMED like they were working....
That is not overlapping addressing, but I see what you mean.
When you come from a legacy PLC with only flat global data memory, and you come to a modern PLC, there should be at least an introductory course. How memory is structured is one of the most important lessons.
 
MB0 and MB1 are often assigned to the clock bits and status bits generated by the CPU - check these settings in the CPU

clk.jpg
 

Similar Topics

Folks, I have a client with an old ABB Advant / MOD300 system (v14.4). Around y2k I installed the ABB Industrial IT MOD300 OPC Server 1.1/2...
Replies
1
Views
184
How would I go about creating a button in FactoryTalk ME with 2 tags and 4 states?? One binary input and one binary output; these tags are...
Replies
5
Views
2,627
Greetings, after doing some online modifications on a Beckhoff CX5040 PLC with Twincat 3 I get this error: I cannot get online, not even after...
Replies
3
Views
3,667
I am trying to tune a run out old water heating system for the screw of an extruder. I have come to the conclusion that the water flow has simply...
Replies
6
Views
3,389
Impossible - in the sense that this error is happening. Except, it is! Scenario: I have 4 GE touchscreens, all addressed properly by IP...
Replies
13
Views
4,029
Back
Top Bottom