Hi all,
I'd like to know your point of view on this aspect of PLC programming, the example I use is simple, but the concept can be applied to more complex systems.
I have a simple pick and place system which moves the objects from a position A to a position B.
The hardware is:
- a cylinder for horizontal movement
- a cylinder for vertical movement
- grippers
The sequence should be like this
Step 0 (evaluate conditions for start the sequence):
- object present in position A
- grippers open
- grippers over position A
- grippers up position
Step 1:
- grippers go down
- Wait for sensor down
Step 2:
- grippers close
- Wait for sensor grippers closed
Step 3:
- grippers go up
- Wait for sensor grippers up
Step 4:
- Translation of grippers to position B
- Wait for sensor position B reached
Step 5:
- Check if position B is free (no object present)
Step 6:
- Grippers go down
- Wait for sensor down
Step 7:
- Grippers open
- Wait for grippers open
Step 8:
- Grippers go up
- Wait for sensor up
Step 9:
- Translation of grippers to position A
- Wait for sensor position A reached
Step 10:
- End of cycle
Ok now the question:
We are on step 2, and we must control the closing of the grippers. What conditions have to evaluate?
(grippers on position A) + (grippers down) + (grippers open)
or only evaluate the condition of grippers down, as the other conditions we had tested during the step immediately preceding?
What I'd like to understand is this: to control a single movement of a cylinder must evaluate
ALL the conditions to do so at that moment, or I take for granted that if I arrived at that step conditions are present surely?
Again, to exit from step 2: I have to evaluate (grippers on position A) + (grippers down) + (grippers closed),
or I have to evaluate only (grippers closed), because I already evaluate (grippers on position A) + (grippers down)?
thanks a lot, sorry for confusion!
Bartech
I'd like to know your point of view on this aspect of PLC programming, the example I use is simple, but the concept can be applied to more complex systems.
I have a simple pick and place system which moves the objects from a position A to a position B.
The hardware is:
- a cylinder for horizontal movement
- a cylinder for vertical movement
- grippers
The sequence should be like this
Step 0 (evaluate conditions for start the sequence):
- object present in position A
- grippers open
- grippers over position A
- grippers up position
Step 1:
- grippers go down
- Wait for sensor down
Step 2:
- grippers close
- Wait for sensor grippers closed
Step 3:
- grippers go up
- Wait for sensor grippers up
Step 4:
- Translation of grippers to position B
- Wait for sensor position B reached
Step 5:
- Check if position B is free (no object present)
Step 6:
- Grippers go down
- Wait for sensor down
Step 7:
- Grippers open
- Wait for grippers open
Step 8:
- Grippers go up
- Wait for sensor up
Step 9:
- Translation of grippers to position A
- Wait for sensor position A reached
Step 10:
- End of cycle
Ok now the question:
We are on step 2, and we must control the closing of the grippers. What conditions have to evaluate?
(grippers on position A) + (grippers down) + (grippers open)
or only evaluate the condition of grippers down, as the other conditions we had tested during the step immediately preceding?
What I'd like to understand is this: to control a single movement of a cylinder must evaluate
ALL the conditions to do so at that moment, or I take for granted that if I arrived at that step conditions are present surely?
Again, to exit from step 2: I have to evaluate (grippers on position A) + (grippers down) + (grippers closed),
or I have to evaluate only (grippers closed), because I already evaluate (grippers on position A) + (grippers down)?
thanks a lot, sorry for confusion!
Bartech