How to avoid colision in cranes?

How to avoid colision in cranes?

julio_r
Not applicable
137 Views
14 Replies
Message 1 of 15

How to avoid colision in cranes?

julio_r
Not applicable

I have a problem with cranes that only move in one axis inside a pathway, but cannot overlap in the model. I tried using the collision module inside the cranes but I haven’t been successful.

I don’t mind if this is achieved by agv or any other mean of transportation, but it must be two in the same pathway and not crossing each other or getting on top of one another.

The origins and destinations are crossed, and restricting these for the transports is not an option (eliminating crossed flows)

I attach my model, that is not working properly right now.

Thank you,

Accepted solutions (1)
138 Views
14 Replies
Replies (14)
Message 2 of 15

joerg_vogel_HsH
Mentor
Mentor

Can you explain how the crane should behave, if there is happening a collision? Maybe you have to define areas which a crane allocates and then send the other crane to another area or dispatch to the second crane a transport task that doesn't interfere with the first crane.

0 Likes
Message 3 of 15

julio_r
Not applicable

@Jörg Vogel It´s having collisions because of crossed paths, but I want these paths to be croosed and the two cranes not crossing each other. What I was thinking was more a scenario where one crane kind of pushes the other until it reaches its destination if necessary. I´ll send another model where there are more chances of collisions.

pregunta.fsm

Thank you!

0 Likes
Message 4 of 15

anthony_johnsonT83CM
Autodesk
Autodesk
Accepted solution

Here are my suggestions:

1. Take the cranes off the network. The crane collision logic pick option uses crane offset travel, which does not use travel networks, and travel networks actually get in the way.

2. Set all accelerations/decelerations to 0 on the crane. This will allow the cranes to get out of each others way in proper time.

3. Increase the lift radius on the cranes to a very large value. This makes it so the cranes will never have to take time to lift, i.e. they will immediately travel horizontally when they need to get out of each others way.

Admittedly the crane collision pick option is somewhat simplistic, but given those changes it does work. For a more complex scenario I would suggest using process flow to handle it (we hope to someday make a process flow template for crane collision avoidance). You could have a resource whose "resources" are an array of numbers, each number representing a location range in the model. The cranes would get tasks and then allocate the numbers associated with getting to the location. Then there would need to be some logic for getting out of the way when you can't allocate what you need. It would definitely be more complicated to implement, but if that is the requirement, process flow would likely be the way to go.

collisionavoidingcranes.fsm

Message 5 of 15

julio_r
Not applicable

Thank you @anthony.johnson,

The problem with that solution is I have my origins and my destinations opposed in the layout, I´ve been trying to use agv too, but I need they only move only in an axis. I first though of cranes because I saw a similar answer here, but maybe AGVs is the way to go.

This is a more realistic model of what I need, but without collisions and the task executers crossing each other:

example21.fsm

0 Likes
Message 6 of 15

anthony_johnsonT83CM
Autodesk
Autodesk

Again, I'd say don't use a travel network, either AGV or regular travel network. Those just complicate the issue because they have their own allocation schemes that might interfere with what you are trying to do. Another option is to use the asrsvehicle object. The asrs vehicle only travels on one axis. I've attached a model that uses the asrsvehicle object with the crane collision logic. collisionavoidingcranes.fsm

Message 7 of 15

julio_r
Not applicable

Thanks a lot!!, that's exactly what I was looking for. I think now I understand the avoid collision option much better

0 Likes
Message 8 of 15

patrickABAWF
Collaborator
Collaborator

Hello Anthony. I have a similar model: 2 overhead cranes on the same tracks and they have to not collide which each other while doing their thing.

I was wondering if there now is a better way to model this collision avoidance for cranes vs what you indicated above in 2017?

Thanks a lot,

0 Likes
Message 9 of 15

joerg_vogel_HsH
Mentor
Mentor
0 Likes
Message 10 of 15

patrickABAWF
Collaborator
Collaborator
I tried that but it doesn't work because the Proximity System makes one of the cranes go around the other crane and that is not possible in real life.

The Proximity System moves the crane in y to avoid the other one but I need something that only looks at the x value.

Unless I missed something?

If nothing exists I will try to program it but I was hoping for a plug n play solution since it's something we've been talking about for 20 years.

0 Likes
Message 11 of 15

patrickABAWF
Collaborator
Collaborator
Actually it doesn't go around. I made a mistake. I will keep trying to do it with proximity system
0 Likes
Message 12 of 15

ryan_c10
Not applicable

Hi @Patrick Cloutier,

If you still need additional help with your related question, please post that question as a separate post. See Best practices for using this Answers site - FlexSim Community for more details.

Thanks!

0 Likes
Message 13 of 15

BargainMan
Not applicable

Hey,bro,i want to know if u don't use Agent Systems .So how did you achieve collision avoidance for cranes.I downloaded your model and couldn't find a way to implement this idea. Can you help me solve it? Thank you and look forward to your reply.

0 Likes
Message 14 of 15

joerg_vogel_HsH
Mentor
Mentor

n agent system is a newer feature not available then!

0 Likes
Message 15 of 15

jason_lightfootVL7B4
Autodesk
Autodesk
If you use a process flow to implement the system Anthony described then it's probably easiest to push movement jobs to a list like the AGV templates use, and then construct the movement tasks from each pulled job and book linear ranges.