4/5/2016 7:35 AM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
|
Last edited by: Oreca at: 4/5/2016 7:44:14 AMLast edited by: Oreca at: 4/5/2016 7:47:54 AMIf I could help you, you can use the RATE button. Thank you. |
|
This contribution was helpful to3 thankful Users |
4/7/2016 12:20 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
You have to create a sequencer which is started when abort is pressed. And you can make one if stop is pressed. But you can also make one sequencer which is started when abort or stop is activated. For this you have to set the start condition of the sequencer. And in the sequencer you can create the logic to stop everything. If you press stop or abort, the SFC goes from Run to Aborting (stopping) and then to Aborted (Stopped). In order to restart the SFC again, you have to set the SFC to Idle before you can start the SFC again. Please find enclosed the SFC OSL-> Operating State Logic. This is how a SFC responds to actions and you can see which states are possible. This is how the SFC operates.... |
If I could help you, you can use the RATE button. Thank you. |
|
4/7/2016 2:01 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
AgrS, Please find enclosed (and in my next post) attachments. I think your start condition is not set correct. AttachmentSFC(1)1.pdf (441 Downloads) |
If I could help you, you can use the RATE button. Thank you. |
|
4/7/2016 2:01 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
Second attachment |
If I could help you, you can use the RATE button. Thank you. |
|
4/7/2016 2:59 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
Hi Sorry for the confusion... In my example, the correct syntax should be: SFC(1).ABORTING = ABORTING, where SFC(1) is the SFC name and ABORTING is the output status of the SFC. You can even use input "ABORT" as well...numerous ways... This way, the SFC is set to ABORTING state, and then the sequencer is started and executes the logic. After that the SFC is automatically ended to aborted state. Hope this is clear? |
If I could help you, you can use the RATE button. Thank you. |
|
4/7/2016 3:50 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
Well, in this case "Abort" means the signal = "1". If you are right clicking the sequencer on the left bottom of the screen and then select: Sequencer properties, it will take you to the correct screen where you can select the start condition.
No, this is not correct, you must get the start condition of the sequencer. You now have set 47SFC1_SEQ(1).ABORT = Abort to the step initialization. That is not correct, you must set this in the starting condition of your sequencer: "ABORT". Access this by right click on "ABORT" in the left bottom of the screen and then select: Sequencer properties. The sequencer will start when the SFC is in Abort and executes the steps in that sequencer |
Last edited by: Oreca at: 4/7/2016 3:57:13 PMIf I could help you, you can use the RATE button. Thank you. |
|
This contribution was helpful to2 thankful Users |
4/7/2016 3:54 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
Well, that is a counter block which I do not know off. But normally in a step you have a "Initialization", "Processing" and "Termination" sequence. When a step is activated, all commands under "Initialization" will be processed. Then the step is in the "Processing" step and executes all commands under "Processing". Finally, when the transition of the current step is fulfilled, the step is in the "Termination" sequence. So, if you want to count something, you can set Count=1 in the initialization and Count=0 in the termination. |
If I could help you, you can use the RATE button. Thank you. |
|
This contribution was helpful to1 thankful Users |
4/12/2016 1:52 PM | |
Joined: 9/3/2014 Last visit: 3/13/2019 Posts: 4775 Rating: (123) |
New question published by AGrS is split to a separate thread with the subject Where I could define an input byte. Best regards |
4/21/2016 9:24 AM | |
Posts: 112 Rating: (2) |
Also the counter does not work. What do I do wrong if I keep trigger and count_ok on 1 and give count a 1 at the end of my sequence and later make it 0 again? |
4/21/2016 11:07 AM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
Hey AGrS! Please observe the SFC OSL. I think I attached this in one of my previous posts... It's the Operate State Logic for the SFC. In the diagram you can see that a Reset command is only valid when the SFC is in the ABORTED state. The SFC is then set to IDLE. The reset in your picture is connected properly. |
If I could help you, you can use the RATE button. Thank you. |
|
This contribution was helpful to1 thankful Users |
4/21/2016 11:23 AM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
It looks like the counter is custom made. You can try to put a OP_TRIG (Classic library) or TRIGGER (APL library) in front of the pulse input. See if it counts then. In SFC you only have to set the input value of the trigger block like Input=1, then that signal is automatically reset, so you don't have to set Input=0 in SFC. Are you sure the custom block is working? |
If I could help you, you can use the RATE button. Thank you. |
|
4/21/2016 5:05 PM | |
Posts: 112 Rating: (2) |
Yes you are right Oreca the counter does not work anyway. |
4/21/2016 5:27 PM |
|
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
OK!, That solves it |
If I could help you, you can use the RATE button. Thank you. |
|
4/29/2016 4:40 PM | |
Joined: 3/14/2008 Last visit: 4/18/2024 Posts: 2064 Rating: (926) |
Hey AGrS, No problem.... Uhm, yes that means you have made relevant changes to the SFC and it must go to stop. Normally, you could make sure that the process is stopped, so the SFC could go to IDLE. But that is not always possible. You have to do this on a moment when the plant is not running (or at least the SFC). When Simatic Manager cannot succeed in reactivating the SFC, something is preventing this. Normally a time of 10sec. is enough to reinitialize the SFC chart. Please see below for a more detailed view on when you can download change (without SFC reinitializing) and when not: Notes on downloading changes ●If the sequencer topology has been changed in the SFC charts/SFC types, for example, steps or transitions have been added, deleted, copied, moved or jump destination has been changed, and if the modified sequencer is active in the AS, these charts or all instances of the type must be disabled. Disabling before the download and enabling after the download is handled by the download program following positive acknowledgment of a prompt. Otherwise, the download is aborted. If you perform the download with the SIMATIC Manager function "Compile and Download Objects", the SFCs are not automatically disabled. In this case, the download will not be performed and an error message is entered in the log. ●Modifications to the interface of the SFC type are transferred to the SFC instances immediately. For this reason, the SFC instances must be disabled during the downloads and execution must be suspended in the CPU. Disabling before the download and enabling after the download is handled by the download program following positive acknowledgment of a prompt. Otherwise, the download is aborted. ●For changed SFC charts/types/instances (SFC properties, sequencer properties, object properties of the step/transitions) whose sequencer topology have not changed, you can download the changes to the CPU in the RUN after compilation without having to deactivate the changed SFC. ●If you have not changed the SFC itself, but only the objects that are accessed (for example, a symbol in the symbol table, runtime groups, block I/O), you do not have to disable the SFC before downloading changes. ●Following a download of changes, a disabled SFC with the "Autostart: on" property is not started automatically but must be started again by the operator (MAN) or using the external view/SFC instance (AUTO). |
If I could help you, you can use the RATE button. Thank you. |
|
This contribution was helpful to1 thankful Users |
Follow us on