question

Steven Chen avatar image
0 Likes"
Steven Chen asked Joerg Vogel commented

Reverse convery direction by script

Hi,

As I read from this topic:

https://answers.flexsim.com/questions/26301/reversing-conveyor-dynamically.html

If I build two conveyors that one is forward, another is backward and place them at same location so they look like only one conveyor. How do I transfer items to another conveyor at correct item location when conveyor reversing direction?

FlexSim 18.0.2
conveyor
· 1
5 |100000

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

Jeff Nordgren avatar image Jeff Nordgren commented ·
@steven.chen

It sounds like you may have built a sample model of this? Can you attached the model here so that we can see, specifically, what you are wanting to do?

Thanks.

0 Likes 0 ·

1 Answer

Joerg Vogel avatar image
2 Likes"
Joerg Vogel answered Joerg Vogel commented

You can place both conveyors side by side. Next you connect the first with the second conveyor by an object connection ("a"-type). The exit and entry transfers are at the ends of the conveyors.You move both transfers to the long side of the conveyors. The transfers are facing each other. Then you connect a second time the first with second conveyor. You need these pairs of transfers to let the flowitem exiting the first and entering the second conveyor. The amount of transfer pairs decides how long the distance is before the items can switch to the conveyor of the other move direction. Then you need an event, when the items should change over to the second conveyor. The items can only exit through transfers as long as they didn't passed the transfer. You can change the destination of every item to an exit transfer that is in front of the item on the first conveyor. The command "destination" is described in the flexscript class reference in the class "Conveyor.Item". Please read and copy the methods presented their to identify the items on the conveyor and the conveyor itself. If you need to change the direction of items on the second conveyor to the first back you need those transfer connections pairs in opposite direction, too. When you move the second over the first conveyor, flexsim creates internal transfers at the ends of the conveyors. You must delete these internal transfers. Otherwise the items leaving a conveyor are entering the other.

The color change indicates when the direction change starts.

You can place short conveyors in a line and connects the output to its counterpart in the other reverse transfer direction. You have to set the destination for each item on the conveyors again.


· 2
5 |100000

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

Steven Chen avatar image Steven Chen commented ·

@Jörg Vogel, thanks for your answer.

So there is no possible way to indicate position of item on conveyor?

Or can I create an entry transfer dynamically at selected position when reversion occurred? (And destroy transfer after item moved)

Below is my model I tested before, but it not work correctly. When conveyor reverse direction, every item on conveyor should move backward.

conveyor-reverse.fsm

0 Likes 0 ·
Joerg Vogel avatar image Joerg Vogel Steven Chen commented ·

The flexsim engine calculates on given facts the next events in the future. If you compute exactly the time stamp when the conveyor will reverse you can place an exit transfer at the right distance before the item enters the conveyor section. If you need the reverse point randomly by time or distance, the answer is probably, no, you can't do it in the conveyor module. You can always place an own fixed resource object that looks like a conveyor, behaves like a conveyor, but is only a special animated processor. You will loose all the benefits of the conveyor system and of course the statistic results, since their will be a gap in the system, where you place your object.

The other, not anymore recommended approach, is to use the depracated legacy conveyor objects.You have to switch them in the library on. Main Menu > File > Global Preferences > Environment > [activate] Display Legacy Conveyors in the Library. You will see the objects Conveyor, MergeSort, Basic Conveyor. You need the Basic Conveyor. Then you can look for the commands bcsetdirection, bcsetitemconveystate and posts in the old community forum about the basic conveyor. It isn't an easy approach because you have to initialize every entering item, receive every item and release the items by code and triggers. And by the way the support of these objects ended some time ago. If there are errors, if you insert them in an actual flexsim version there will be no warrenty that the conveyor will work at all.

0 Likes 0 ·