clarkwym Posted March 31, 2018 Share Posted March 31, 2018 Hello! In my model, there are 5 machines running for production. Each machine has opportunity to be failed, the mean time between two failures is exponential(4.5) hours, and the repair time will last triangular(20,25,30) minutes. I use 5 Resource to represent these 5 machines and place them on the canvas because I want to see the state changing of each machine during the model running. Five entities will be created at the time zero simultaneously and the Source will only create 5 entities, those entities arrive at a Server which capacity be set to 5 and the Server’s processing time is exponential(4.5) hours. When one entity go out the Server, it means one machine (Resource) failed. My question is how can I find the corresponding resource related to this entity and change its state to failure and then after certain time duration of repairing to change its state to busy. Say, if entity 3 go out the Server, then I need to set the state of Resource 3 to failure and then change it back to busy. I want to use list or table to achieve my job such that the model can fit for very large amount of machine’s condition, e.g. 1000 machines. Thanks! Link to comment Share on other sites More sharing options...
dsturrock Posted April 1, 2018 Share Posted April 1, 2018 Perhaps I am missing your question, but I think what you are asking for is pretty much built-in behavior. In the attached model I just added a label to the entity so you can see what is happening.SeizeAndReleaseFromList.spfx [attachment=0]Capture.PNG[/attachment] Link to comment Share on other sites More sharing options...
clarkwym Posted April 11, 2018 Author Share Posted April 11, 2018 Hi Dave, Thank you for your quick response. Sorry for reply late. Let me simplified my question. Imagine in a taxi company, there are 100 taxi cars and 100 taxi drivers, each driver own his specific car, i.e. any driver can only use the car assigned to him and he cannot use the taxi car which belong to other drivers. The drivers will start their daily work at any time point from 6 am to 9 am, and that may be uniformly. After 8 or 9 hours working, the driver will drive his car back to the parking yard of the taxi company. What I want is to realize the situation that specific driver seize his specific car and then to release the taxi after 8 or 9 hours delay in Simio environment. In other words, driver 1 seize car 1 and release car 1, driver 2 seize car 2 and release car 2, and so on. Can I use a list or a table to arrange the drivers and cars? And I also want to watch the animation of car busy or idle by using resource object, and even consider the failure and repair conditions of cars. Clark Link to comment Share on other sites More sharing options...
dsturrock Posted April 15, 2018 Share Posted April 15, 2018 First of all, if every driver is locked to a specific car, and vice-versa, then it seems like too much detail to model both. What not model only the cars or only the drivers? But if you need to do this I might suggest having the car and required driver in a table, the have a custom car that each time before it starts a move, its driver (read from the table) is seized, and then released after the move. Link to comment Share on other sites More sharing options...
clarkwym Posted April 17, 2018 Author Share Posted April 17, 2018 In "seize" object, there is only option "select from list" , only list name can show in popup list and table name can not, so how to seize from table? Link to comment Share on other sites More sharing options...
jzhou Posted April 17, 2018 Share Posted April 17, 2018 This is an excerpt from user manual "Starting in Simio sprint 156, the Seize, Move, Route and Release steps (not all steps) allow for specifying the list members within a table and referencing the TableName.ColumnName within the Object List Name or Node List Name properties. Note that the user has to manually add 'Table.ObjectColumn' to the List Name property because it does not appear in the dropdown or right click table reference. Once specified, this then allows table referencing of list members to be done within the Secondary Resources section of many objects, as well as the Resource Requirements section of task sequence type processing. Routing Logic within object TransferNodes may also include the table type lists. Please note that this also includes the use of table state columns (Enterprise edition) for the list which, combined with the Output tables (see Enterprise Data Window page) and the RemoveRows step, allows for dynamic runtime building of lists. See the SimBits UsingRelationalTablesToDefineNodeLists and UsingRelationalTablesToDefineTaskResourceLists for more examples. " Link to comment Share on other sites More sharing options...
clarkwym Posted April 18, 2018 Author Share Posted April 18, 2018 OK, Thanks Jeff, I will look up the document and Simbit for further information. Link to comment Share on other sites More sharing options...
clarkwym Posted April 18, 2018 Author Share Posted April 18, 2018 I have made a model for using table through referring list. In this model, I create 10 entities represent for 10 machines, and 10 resources for the animation of status of counterpart entities, and also import 2 engineers for repairing the failed machine. Any list only consist 1 resource such that the entity can seize the specific resource by using the instruction table1[modelentity.SN_ResourceSeized].RS. Is there any method more simpler especially when the number of entity grows very fast, e.g 200 entities? MachineRepair.spfx Link to comment Share on other sites More sharing options...
Recommended Posts