ATTENTION

This FlexSim Community Forum is read-only. Please post any new questions, ideas, or discussions to our new community (we call it Answers) at https://answers.flexsim.com/. Our new Question & Answer site brings a modern, mobile-friendly interface and more focus on getting answers quickly. There are a few differences between how our new Q&A community works vs. a classic, threaded-conversation-style forum like the one below, so be sure to read our Answers Best Practices.


flexsim.com

Go Back   FlexSim Community Forum > FlexSim Software > Q&A
FAQ Downloads Calendar Search Mark Forums Read

Q&A Using Flexsim and building models

Reply
 
Thread Tools Display Modes
  #1  
Old 09-09-2010
Lydia Franck Lydia Franck is offline
Flexsim User
 
Join Date: Apr 2009
Location: Sankt Augustin, Germany
Posts: 23
Downloads: 0
Uploads: 0
Thanks: 11
Thanked 0 Times in 0 Posts
Rep Power: 133
Lydia Franck is on a distinguished road
Default LOAD and UNLOAD on Robot

Hello all,

in my model I use a robot to pick (LOAD) and place (UNLOAD) parts from and to conveyors. As the conveyors move, the parts to pick and pallets to place the parts on move away. So there can occur problems:
- the part to LOAD has already gone to the sink
- the part to LOAD has already moved out of the region reachable by the robot
- the pallet to UNLOAD on has already gone to the sink
- the pallet to UNLOAD on has already moved out of the region reachable by the robot

Is there a way to recognize these cases in the Load and Unload Triggers of the robot, i.e. before an error message pops up?

Many thanks in advance for your help,
Lydia.
Reply With Quote
  #2  
Old 09-09-2010
Lars-Olof Leven Lars-Olof Leven is offline
Flexsim Distributor
 
Join Date: Aug 2007
Location: Sweden, Borlnge
Posts: 312
Downloads: 278
Uploads: 2
Thanks: 300
Thanked 256 Times in 139 Posts
Rep Power: 328
Lars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to behold
Default

Hi Lydia,

What I know there is no way to keep track when an item arrive or leave an area.
You need to write your own logic to do that.

The basic approach I should use is to have a table on the robot (or other object) that keeps track of the items inside reaching area.
When an item arrives to the area it pass a photo eye and the item is stored in a table, leaving the are (passing a new photo eye) remove the item from table.
You will also need to have logic that triggers the robot to pick item, checking if the robot is on the way to load or unload, and last when finished with the task check if there are more items to load/unload.

Hope this give you some idea how to solve your problem.

Lars-Olof
Reply With Quote
  #3  
Old 09-09-2010
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 682
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

Other option would be to use CALLSUBTASK and when the robot starts to work on that task first check if the product is still valid
Reply With Quote
  #4  
Old 09-10-2010
Sebastian Hemmann's Avatar
Sebastian Hemmann Sebastian Hemmann is offline
Flexsim User
 
Join Date: Sep 2009
Location: Braunschweig (Germany)
Posts: 439
Downloads: 52
Uploads: 0
Thanks: 472
Thanked 217 Times in 154 Posts
Rep Power: 317
Sebastian Hemmann is a splendid one to beholdSebastian Hemmann is a splendid one to beholdSebastian Hemmann is a splendid one to beholdSebastian Hemmann is a splendid one to beholdSebastian Hemmann is a splendid one to beholdSebastian Hemmann is a splendid one to beholdSebastian Hemmann is a splendid one to behold
Default

Hi Lydia,

I´m not sure if I understood you right or even if this can help you.
When I started with Flexsim I found a Collision option in the Properties of every Taskexecuter. There you can set a sphere and everytime a collision happens a trigger is fired. Couldn´t figur out if it only works the situations two taskexecuter meet each other. But am sure, that it should work with every object in the model.
Probably this is what you are looking for!? Or anybody can give a hint, that this option is only for other tasks!?
__________________
Hemmi
Reply With Quote
  #5  
Old 09-13-2010
Lydia Franck Lydia Franck is offline
Flexsim User
 
Join Date: Apr 2009
Location: Sankt Augustin, Germany
Posts: 23
Downloads: 0
Uploads: 0
Thanks: 11
Thanked 0 Times in 0 Posts
Rep Power: 133
Lydia Franck is on a distinguished road
Default

Dear Lars-Olof, Steven, and Sebastian,

thank you very much for your fast replies. I am sorry for the delay in my answering.

@Lars-Olof:
I have to think further about your idea of tracking parts with tables. I think it is applicable to the case of parts/pallets having left the reachable region of the robot.
What do you mean by "triggering the robot"?

@Steven:
The CALLSUBTASK seems to be a good idea for the case of parts/pallets having been destroyed in the meantime. How would you check if the part is still valid? (Search for it in the tree?)

@Sebastian:
Maybe collision check is for avoiding crashes between objects e.g. transporters? I am not yet sure if this functionality is applicable to my issue. Thank you for the hint nonetheless.

Best regards and thanks again, Lydia.
Reply With Quote
  #6  
Old 09-13-2010
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 682
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

Hi Lydia,

To check if it is still valid you could use:

"objectexists" to see if it is not destroyed
and if it exists look at the up( item ) to see in which conveyor/object it currently is to see if it still is a valid item.

Steven

Last edited by Steven Hamoen; 09-13-2010 at 10:49 AM.
Reply With Quote
  #7  
Old 09-13-2010
Lars-Olof Leven Lars-Olof Leven is offline
Flexsim Distributor
 
Join Date: Aug 2007
Location: Sweden, Borlnge
Posts: 312
Downloads: 278
Uploads: 2
Thanks: 300
Thanked 256 Times in 139 Posts
Rep Power: 328
Lars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to beholdLars-Olof Leven is a splendid one to behold
Default

Hi Lydia,

What I mean with triggering the robot is that when a part arrives to region and passing the phot eye you need to send a signal to the robot to let i know that now it is a part that can be picked or loaded.
If the robot is an sequence for loading or oicking do nothing, if the robot is idle do the loading/picking. If the robot is in process if loading/picking the when this process is finished a check in table is needed to se what next part to load/pick are.

You must probaly write your own logic (task sequence) to do the job, here CALLSUBTASK cna be good.

You must in one way or other be able to keep track of the parts in your allowed loading/picking area.

Hope it clearify some.

Lars-Olof
Reply With Quote
  #8  
Old 09-15-2010
Lydia Franck Lydia Franck is offline
Flexsim User
 
Join Date: Apr 2009
Location: Sankt Augustin, Germany
Posts: 23
Downloads: 0
Uploads: 0
Thanks: 11
Thanked 0 Times in 0 Posts
Rep Power: 133
Lydia Franck is on a distinguished road
Default

Quote:
Originally Posted by Steven Hamoen View Post

To check if it is still valid you could use:
"objectexists" to see if it is not destroyed
and if it exists look at the up( item ) to see in which conveyor/object it currently is to see if it still is a valid item.
Thank you, Steven. One more question: what is the difference between "not destroyed" and "valid"?

Best, Lydia.
Reply With Quote
  #9  
Old 09-15-2010
Lydia Franck Lydia Franck is offline
Flexsim User
 
Join Date: Apr 2009
Location: Sankt Augustin, Germany
Posts: 23
Downloads: 0
Uploads: 0
Thanks: 11
Thanked 0 Times in 0 Posts
Rep Power: 133
Lydia Franck is on a distinguished road
Default

Quote:
Originally Posted by Lars-Olof Leven View Post
Hi Lydia,

What I mean with triggering the robot is that when a part arrives to region and passing the phot eye you need to send a signal to the robot to let i know that now it is a part that can be picked or loaded.
If the robot is an sequence for loading or oicking do nothing, if the robot is idle do the loading/picking. If the robot is in process if loading/picking the when this process is finished a check in table is needed to se what next part to load/pick are.

You must probaly write your own logic (task sequence) to do the job, here CALLSUBTASK cna be good.

You must in one way or other be able to keep track of the parts in your allowed loading/picking area.

Hope it clearify some.

Lars-Olof
OK, I see - thank you!
My concept is a bit different: I regularly check all the items waiting to be picked and assign them to the robots and pallets. The advantage is that all robots are considered simultaneously so the assignment can somehow be globally optimized.

My problem is that between assignment and actual task executing time flies so that parts/pallets have moved further.

I found out that a robot picks a part even if it is out of reach (so the Max Extension param seems to be just for the graphics??).
Though I can check the part's position in the LOAD trigger I cannot prevent the robot from picking the part ...

Best, Lydia.
Reply With Quote
  #10  
Old 09-15-2010
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 682
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

Quote:
Originally Posted by Lydia Franck View Post
One more question: what is the difference between "not destroyed" and "valid"?
What I ment was that if it is still existing it might have left the conveyor already from where the robot can pick it up. So if it has already passed the positions where the robot can pick it up it is not destroyed but it is not valid because you can't handle that item at that moment in time.

I hope this makes it a bit clearer
Reply With Quote
  #11  
Old 09-15-2010
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 682
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default

Quote:
Originally Posted by Lydia Franck View Post
One more question: what is the difference between "not destroyed" and "valid"?
What I ment was that if the item is still existing it might have left the conveyor or positions already, from where the robot can pick it up. So if it has already passed the positions where the robot can pick it up it is not destroyed but it is not valid because you can't handle that item at that moment in time.

I hope this makes it a bit clearer
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Problems with load/ unload tasksequences Sebastian Hemmann Q&A 7 11-19-2009 12:58 AM
Help with Robot Larry Goins Q&A 2 08-07-2009 12:20 AM
How to unload all the same itemtype flowitem into the matching queue altogether? karl huang Q&A 12 02-21-2009 12:45 AM
TaskExecuter should unload more then one item...How? TilmanDHL Tips and Tricks 1 01-28-2009 01:54 AM
Robot processing Sung Kim Q&A 7 08-27-2008 06:48 AM


All times are GMT -6. The time now is 11:24 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Copyright 1993-2018 FlexSim Software Products, Inc.