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 > Tips and Tricks
Downloads

Tips and Tricks Share helpful modeling ideas

  #1  
Old 03-10-2016
Lucie Lerivrey Lucie Lerivrey is offline
Flexsim User
 
Join Date: Dec 2010
Posts: 24
Downloads: 58
Uploads: 0
Thanks: 34
Thanked 5 Times in 5 Posts
Rep Power: 118
Lucie Lerivrey is on a distinguished road
Default A lots of exits on 1 conveyor

Hello,

In a model, I need to put in a sorter with 100 exits.
Is there a way to massively build the whole exit logic, including the conveyor, the decision point and the exit transfer? How have you done it in other projects?

Thanks a lot for any tip!

Lucie
  #2  
Old 03-13-2016
sagar bolisetti's Avatar
sagar bolisetti sagar bolisetti is offline
Flexsim User
 
Join Date: Aug 2013
Location: Hyderabad,India
Posts: 160
Downloads: 145
Uploads: 0
Thanks: 124
Thanked 99 Times in 63 Posts
Rep Power: 150
sagar bolisetti is a jewel in the roughsagar bolisetti is a jewel in the roughsagar bolisetti is a jewel in the roughsagar bolisetti is a jewel in the rough
Default

Hi Lucie,

If you want to sort the flow of boxes into lots of exits,you would have to create several conveyor lanes after the decision point.In the properties of decision point you can send the items on continue by label or by itemtype to the output port of your decision point.
  #3  
Old 03-14-2016
Lucie Lerivrey Lucie Lerivrey is offline
Flexsim User
 
Join Date: Dec 2010
Posts: 24
Downloads: 58
Uploads: 0
Thanks: 34
Thanked 5 Times in 5 Posts
Rep Power: 118
Lucie Lerivrey is on a distinguished road
Default

Ok, but is there a way to do it by code? Having all the information in tables for example?
O "automatically" assign a decision point to each conveyor of a specific type?

Thanks!
  #4  
Old 03-14-2016
arunkrmahadeva's Avatar
arunkrmahadeva arunkrmahadeva is offline
CCS, India
 
Join Date: Sep 2013
Location: India
Posts: 71
Downloads: 67
Uploads: 0
Thanks: 285
Thanked 101 Times in 51 Posts
Rep Power: 145
arunkrmahadeva is a jewel in the rougharunkrmahadeva is a jewel in the rougharunkrmahadeva is a jewel in the rougharunkrmahadeva is a jewel in the rough
Default

Hi Lucie,

If you have the information of the objects to be generated in the global table.

Here is the set of commands you can use.

1. createcopy()/ insertcopy command to insert an instance of an object into the model

2. Set the location of the created objects using setloc() command.

3. contextdragconnection() command to set an A connection between two objects.(Also, can be used to set S connection). Connection, between the two, conveyors can also be made by setting the end position of the first conveyor and start position of the second conveyor same ( Only for conveyor module).

4. Setting the position of decision points in a conveyor is explained in the following thread
https://www.flexsim.com/community/fo...ead.php?t=3222

5. To access information from the table use table commands( gettablenum(),gettablestr() etc)

Information like labels, colours etc can be added using setlabel() & color() commands.

The above-mentioned commands will help you in building the model.

Regards,

Arun KR

Last edited by arunkrmahadeva; 03-14-2016 at 10:38 AM. Reason: add more info
The Following 3 Users Say Thank You to arunkrmahadeva For This Useful Post:
sagar bolisetti (03-14-2016)
  #5  
Old 03-14-2016
Jörg Vogel's Avatar
Jörg Vogel Jörg Vogel is offline
Flexsim User
 
Join Date: Sep 2007
Location: Hannover, Germany
Posts: 643
Downloads: 35
Uploads: 0
Thanks: 802
Thanked 665 Times in 410 Posts
Rep Power: 642
Jörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond reputeJörg Vogel has a reputation beyond repute
Default

Hello Lucie,

I haven't got any direct answer to your question,
but the thread Move Decision Point along the Conveyor by code could be a starting point. Maybe you place a lot of Decision Ponts at a dead end of your system and you move them to places in your system you like. But that is just weird idea.
The modules aren't so open anymore to get an idea how they work or where to find the commands and functions. It remeinds me of the first Versions of Flexsim I tested - like the miracle "o" operator.
Maybe Phil will help you.

Jörg

Last edited by Jörg Vogel; 03-14-2016 at 10:20 AM. Reason: Arun was faster with an answer and has got a better instruction
The Following 3 Users Say Thank You to Jörg Vogel For This Useful Post:
Steven Hamoen (03-14-2016)
  #6  
Old 03-14-2016
Phil BoBo's Avatar
Phil BoBo Phil BoBo is offline
Flexsim Development
 
Join Date: Jan 2008
Posts: 756
Downloads: 109
Uploads: 18
Thanks: 385
Thanked 1,483 Times in 525 Posts
Rep Power: 1174
Phil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond reputePhil BoBo has a reputation beyond repute
Default

Quote:
Originally Posted by Jörg Vogel View Post
Maybe Phil will help you.
Attached is a model with some FlexScript that shows how you can do some things programmatically with the new conveyor module.

The script creates a conveyor, connects a source to it, connects it to a couple sinks, repositions the exit transfers, adds a decision point, changes the decision point's type, and connects the decision point to the exit transfers.

Here's the script:
Code:
// store references to some objects in the model
treenode source2 = node("Source2", model());
treenode sink3 = node("Sink3", model());
treenode sink4 = node("Sink4", model());
// create a conveyor
treenode conveyor = createinstance(node("?StraightConveyor", library()), model());
double x = 3; double y = 3; double z = 0;
setloc(conveyor, x, y, z);
firecreateevent(conveyor, x, y, z, 1);
// connect the conveyor to some objects
contextdragconnection(source2, conveyor, "A");
treenode entryTransfer = last(model());
contextdragconnection(conveyor, sink3, "A");
treenode exitTransfer1 = last(model());
contextdragconnection(conveyor, sink4, "A");
treenode exitTransfer2 = last(model());
// adjust the positioning of the exit transfers along the conveyor
treenode exitTransferPoint1 = node(">variables/transferPoint/1+", exitTransfer1);
set(node("/distAlong", exitTransferPoint1), 3);
treenode exitTransferPoint2 = node(">variables/transferPoint/1+", exitTransfer2);
set(node("/distAlong", exitTransferPoint2), 9);
// tell the conveyor to update everything based on the changes above
function_s(conveyor, "finalizeSpatialChanges");
// create a decision point
treenode dp = createinstance(node("?DecisionPoint", library()), model());
setloc(dp, x + 2 - xsize(dp)/2, y + ysize(dp)/2, z);
function_s(dp, "finalizeSpatialChanges");
// connect the decision point to the exit transfers
contextdragconnection(dp, exitTransfer1, "A");
contextdragconnection(dp, exitTransfer2, "A");
// set the decision point's type
treenode dpType = node("/ConveyorSystem>variables/decisionPointTypes/1", model());
if (objectexists(dpType)) {
	nodepoint(getvarnode(dp, "type"), dpType);
}
// repaint the 3D view in a delayed windows message
#define WM_PAINT 0xf
postwindowmessage(windowfromnode(ownerobject(node("VIEW:/active>Documents/Perspective/1+"))), WM_PAINT, 0, 0);
This code doesn't seem to work correctly unless there is at least 1 other conveyor in the model. I think there's a timing issue with the ConveyorSystem itself in that situation.
Attached Files
File Type: fsm create_conveyor_module_objects_code.fsm (16.8 KB, 546 views)
The Following 9 Users Say Thank You to Phil BoBo For This Useful Post:
Steven Hamoen (03-14-2016)


Thread Thread Starter Forum Replies Last Post
Max content on a conveyor in new conveyor module Arne Bracke Q&A 0 02-11-2016 08:49 AM
Conveyor to conveyor transfer criteria Christian Norregaard Q&A 6 06-18-2015 05:44 AM
lots of WIP Gavin Douglas Q&A 1 03-13-2013 01:42 PM
What is the difference between a Conveyor and Basic Conveyor shivrash Q&A 2 07-21-2009 04:09 AM


All times are GMT -6.
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Copyright 1993-2018 FlexSim Software Products, Inc.