Pls find below attached Crane Model and Working elements associated with each Crane .
At 01:06:09 Crane_AGV1_1 moves toward Crane_AGV_Dec1_16 to lift part.
How to avoid such interference of Crane when working elements are fixed?
Warm Regards
Shantilal
Hi Shantilal:
The problem cause is before 1:06:09.
Although I have not traced things down to the second, this is what I think is happening.
The exact details are not vital because the fix is the same regardless.
The Crane_AGV1_1 is called for to pick up a part at AGV_Dec1_16.
It has a long path to get there.
As Crane_AGV1_1 is moving, Crane_AGV1_2 is sent to unload a part at AGV_Dec1_9A.
Crane_AGV1_2 gets to AGV_Dec1_9A and starts unloading, before Crane_AGV1_1 (on its way to AGV_Dec1_16) arrives there and is forced to wait.
In some cases this can cause a gridlock with neither cranes moving ever again.
In you model it doesn’t because after completing unloading, Crane_AGV1_2 reverses direction and moves off – clearing the path for Crane_AGV1_1
to move. This may always be the case in your model, or there may be a case where gridlock occurs.
Your model does not manage interference completely – which is obvious because interference is happening.
This is a classic Crane management issue.
Your exact solution may depend on whether you are trying to model a known behavior, of just trying to find a behavior that does not lock up.
In either case you need to introduce a more robust interference avoidance – and maybe to design one first.
In my experience the easiest approach is to control the routing of a part to a decision point until you have a clear path to the destination.
So in the route logic of an element to a dec point (let’s say Dec point A as an example) you would wait until the path is ‘clear’.
i.e. until releasing the part to call for the crane will not cause an interference
This will involve a number of checks and you will have to develop an algorithm that provides efficiency.
As a simple but not efficient example:
1. Is there another crane moving between, or towards, or stopped at any Dec points between Dec point A and B inclusive
2. If so, wait until this is no longer the case
As you will see this is inefficient and so a crane may have to wait longer than necessary, so you have to refine this.
However the key here is to put this intelligence into the route logic of the element feeding the dec point.
If you try to manage this by a combination of Dec point, AGV and Controller logics you will probably find you are on a journey of increasing complexity as each refinement involves more logics and more difficulty. I am sure that it can be done this way, but in my experience it will involve you in a lot of research into existing logics and their interactions and a lot of involved programming and debugging. Hence my suggestion.
More sophisticated logics can be added and the usual place to start is at Dec Point Logics – with AGV_REACHING_DEC, for example, but you will quickly find that you move into also having to add logic to AGV and Controller logics, so beware.
Regards,
Martin BARNES |
|||
Senior Software Consultant , Manufacturing - Consulting & Technical Services |
|||
|
|||
Office: +1 248 205 5227 |
|
||
DS Americas Corp. | 900 North Squirrel Road, Suite 100 | Auburn Hills, MI 48326 | United States |
This email and any attachments are intended solely for the use of the individual or entity to whom it is addressed and may be confidential and/or privileged.
If you are not one of the named recipients or have received this email in error,
(i) you should not read, disclose, or copy it,
(ii) please notify sender of your receipt by reply email and delete this email and all attachments,
(iii) Dassault Systèmes does not accept or assume any liability or responsibility for any use of or reliance on this email.
Please be informed that your personal data are processed according to our data privacy policy as described on our website. Should you have any questions related to personal data protection, please contact 3DS Data Protection Officer at 3DS.complia...@3ds.com
For other languages, go to https://www.3ds.com/terms/email-disclaimer