question

Hannah S avatar image
0 Likes"
Hannah S asked Ryan Clark commented

Can you change the state that a process flow block triggers?

I'd like to change the state that a "Travel to Location" process flow block triggers. Is this possible by writing to the model tree?

FlexSim 21.2.3
processflowstate
· 3
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Joerg Vogel avatar image Joerg Vogel commented ·
Can you attach an example model which include your process. Please write what should happen in your model and what the result must be. I think, an answer will be a bit different then what you request in your question. Many Thanks! Joerg.
0 Likes 0 ·
Hannah S avatar image Hannah S Joerg Vogel commented ·

@Joerg Vogel I have an example model of an ASRS vehicle picking up items from a rack and delivering them to a queue. The movement of the vehicle occurs in two stages. The first stage uses a "Travel to Location" block to the move the vehicle into the right position on the x and z axis. The second stage uses a "Load" block to move the vehicle into the right position on the y axis. I would like this movement to trigger a different state than the first movement. Is this possible?

example 101121.fsm

0 Likes 0 ·
example-101121.fsm (56.5 KiB)
Ryan Clark avatar image Ryan Clark commented ·

Hi @Hannah S, was Felix Möhlmann's answer helpful? If so, please click the "Accept" button at the bottom of the one that best answers your question. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always unaccept and comment back to reopen your question.

0 Likes 0 ·

1 Answer

·
Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered

I don't know how to change the state that's entered by default, but you can overwrite it to achieve a similar result.

In the attached I utilize the "On Start Task" trigger of the task executer (TE) to send a message to itself if the starting task is a loading or unloading task. In the "On Message" trigger I then change the state of TE. I use the state "preprocessing" to mean "extend the slide" in this example.

The "detour" of using a message is necessary, because if the state was set in the start task trigger directly it would promptly be overwritten by the the default state.

Once the offset travel finishes, the state will automatically change to loading/unloading.

To also have a custom state for retracting the slide again, I write the last task type to a label on the TE in the "On Finish Task" trigger. That way I can check, whether the last task when starting a travel task was loading or unloading and send a message to change it to "postprocessing".

Lastly I added two "fake" travel activities in the process flow to serve as a dummy for the offset travel after loading/unloading. This makes sure the state is updated again after the slide is retracted.

example-101121_overwrite_states.fsm


5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.