dsturrock Posted June 17, 2016 Share Posted June 17, 2016 People often want to model two or more vehicles or entities moving together. There are a few components to this: 1) Seizing the resource appropriately - can be done in processes, but often best done within the vehicle object to make the modeling easier. Here, a vehicle has 4 properties added to support use of an operator. 2) Animating them moving together - the picture below shows use of a second queue animated on the custom vehicle. 3) In some cases, you also need the "driver" to be shown moving. The Attached Animation Speed illustrated below, accomplishes that. I have attached a model that uses a custom vehicle object to model a wheelchair which is "driven" (pushed) by a person to pick up a patient. *********** FOR VERSION 190 AND EARLIER ************************************* VehicleWithDriver.spfx You could use the same approch, possibly with just animation changes, to model something like a truck or forklift that requires a driver. In fact, I just added a second model to that same project that illustrates use in manufacturing (e.g. a lift truck and driver).VehicleWithDriver.spfx VehicleWithDriver.spfx *********************************************************************************** ************** FOR VERSION 191 AND LATER *********************************** VehicleX3.spfx VehicleWithDriver_VehicleX3_Examples.spfx For more information on the update, see the post below. *********************************************************************************** 2 Link to comment Share on other sites More sharing options...
jzhou Posted June 18, 2016 Share Posted June 18, 2016 awesome! Link to comment Share on other sites More sharing options...
simiouser1 Posted June 27, 2016 Share Posted June 27, 2016 Very usefull. Thanks. Link to comment Share on other sites More sharing options...
dsturrock Posted March 15, 2018 Author Share Posted March 15, 2018 I just added a second model to that same project (see end of main post above) that illustrates use in manufacturing (e.g. a lift truck and driver). Link to comment Share on other sites More sharing options...
mbadawy Posted April 7, 2018 Share Posted April 7, 2018 i was wondering if VechilceX1 could carry different objects. For example carry driver (worker1), the paramedic (worker2) and patient(ModelEntity) from an accident. Can they all be bunched up on VX1 and sent on to where ever I need them? If thats not possible, what would be the way to implement that? Link to comment Share on other sites More sharing options...
dsturrock Posted April 15, 2018 Author Share Posted April 15, 2018 In the manufacturing example you can see that the vehicle sometimes carries 2 packages from the conveyor. Use the same technique. Link to comment Share on other sites More sharing options...
MichaelVPeterson Posted June 11, 2019 Share Posted June 11, 2019 In your Vehicle Properties window, those fields you have highlighted do not seem to be on my Simio version. There does not seem to be a dropdown I am missing either. Could the version of Simio have changed? Trying to do exactly this example with a piece of equipment (an entity in my model) being moved with a tug like tool that is driven by a worker. See attached for my Vehicle Properties window. Thanks, Michael Link to comment Share on other sites More sharing options...
asneath Posted June 12, 2019 Share Posted June 12, 2019 Michael, VehicleX is a Custom Object (Subclass of Vehicle) with several Definitions, Processes, etc. created by (I'm assuming) Dave. This is why you aren't seeing some of those Properties in your Vehicle Properties window. You may download the "VehicleWithDriver.spfx" file provided above and explore it further. Happy modeling, Adam Link to comment Share on other sites More sharing options...
Aziaei Posted June 15, 2019 Share Posted June 15, 2019 Hello I am working on the road transportation problem and I use the vehicles. I have a couple of questions about the vehicle's features and usage. 1) How can I define an Off Shift for the vehicles? 2) How can I extract the total amount of times or distances that a vehicle is traveling empty (without load)? 3) Is there any way to create any response regarding the average performance of all the vehicles used (i.e. average idle time of the vehicles) to perform an experiment? Thanks, Amin Link to comment Share on other sites More sharing options...
jzhou Posted June 16, 2019 Share Posted June 16, 2019 you can set Vehicle1[1].CurrentCapacity=0 to make it offshift. Link to comment Share on other sites More sharing options...
Aziaei Posted June 17, 2019 Share Posted June 17, 2019 Thank you @jzhou I could create off shift based your suggestion. Do you have any idea about my two other questions? Regards Amin Link to comment Share on other sites More sharing options...
jzhou Posted June 17, 2019 Share Posted June 17, 2019 (edited) 2) How can I extract the total amount of times or distances that a vehicle is traveling empty (without load)? you should subclass the vehicle and create a list containing all the loadstus(string) and in its process logic( like OnRiderLoaded, RideStation.Exited....) you need to assign its loadstatus appropriately. then you can get the results using a pie chart: Edited June 17, 2019 by jzhou Link to comment Share on other sites More sharing options...
Aziaei Posted June 21, 2019 Share Posted June 21, 2019 Thanks. In a network with multiple vehicles, is it possible to define vehicle-based "Task Selection Strategy" in Transport Logic? i.e. we define different priority list for vehicles? Regards Amin Link to comment Share on other sites More sharing options...
jzhou Posted June 22, 2019 Share Posted June 22, 2019 can you elaborate? i think you can..... Link to comment Share on other sites More sharing options...
jzhou Posted June 22, 2019 Share Posted June 22, 2019 can you elaborate? i think you can..... Link to comment Share on other sites More sharing options...
Aziaei Posted June 22, 2019 Share Posted June 22, 2019 Hello I mean each vehicle select its next load based on its unique strategy. for example, we define different entity priority lists for different each vehicles. I am trying to differentiate the behavior of the vehicles to select the next load. Regards Amin Link to comment Share on other sites More sharing options...
jzhou Posted June 22, 2019 Share Posted June 22, 2019 maybe you need to give us more details. for example, what is the entity priority lists for each vehicles..and what next load the vehicles will choose ? need a example... Link to comment Share on other sites More sharing options...
Liz Millar Posted February 6, 2020 Share Posted February 6, 2020 ********************* FOR VERSION 191 AND LATER ******************************* In Sprint 191, a change was made to the Seize step's On Seized Process and the Release step's On Released Process which impacted the Token Associated and Context Objects. This change effects the logic in VehicleX. For use in Simio versions 190 and earlier, please use the files at the top of this thread. Attached is an updated VehicleX (now VehicleX3) for use in Simio 191 and later, as well as the updated examples using VehicleX3. VehicleX3 now will reject an Entity's Transport Request if an operator is not available for that vehicle. This prevents entities from seizing and waiting for an unmanned vehicle. *************************************************************************************** VehicleX3.spfx VehicleWithDriver_VehicleX3_Examples.spfx 1 Link to comment Share on other sites More sharing options...
Alberto Debes Posted February 17, 2020 Share Posted February 17, 2020 Hi, I recently downloaded this model and I'm trying to understand how the vehicle with operator object was implemented. What are the relevant processes created and how would I go about creating my own? I tried understanding the vehicle properties in the Definitions tab, but there were many and I don't know how to start understanding what each does. Thanks! Link to comment Share on other sites More sharing options...
Liz Millar Posted February 18, 2020 Share Posted February 18, 2020 Hi Alberto, I recommend you take a look at a standard Vehicle object and compare the VehicleX3 to see the updates that were made. Only 6 new Properties were added to the standard Vehicle to make VehicleX3. The numerous other Properties were inherited from the Vehicle and were not changed. There are other small changes for the States, Events, and Elements as well. Doing a comparison between the standard Vehicle and VehicleX3 will be the most beneficial way for you to learn. Additionally, all the updated Process Logic in VehicleX3 has been colored. Any grey process steps were inherited from the standard Vehicle. Happy modeling, Liz 1 Link to comment Share on other sites More sharing options...
JCS Posted April 22, 2022 Share Posted April 22, 2022 Hello, and thanks for the Vehicle with Driver model; it seems quite useful. However, I've run into a problem when using two different vehicles that require the same driver; wondering if someone can help. Situation is where a Part (Entity) requires Vehicle_A with Driver_1 to go from Source to Station_1, then requires Vehicle_B with Driver_1 to go from Station_1 to Station_2 (Exit). If another Part arrives at Source (requesting Vehicle_A) while Driver_1 is busy with Vehicle_B, the request gets put into the global VehicleRequestQueue. When Driver_1 becomes free/idle, it looks at the global queue and sees the request, but for some reason Driver_1 seems to ignore it ("...failed to find and plan an eligible visit request"). Is that because the request was for Vehicle_A and not the Driver? If so, how would I get Driver_1 matched up again with Part Entity requests for Vehicle_A? Thoughts? Thanks, John Link to comment Share on other sites More sharing options...
Liz Millar Posted May 10, 2022 Share Posted May 10, 2022 Hi John, The entity is requesting a ride from the vehicle and the vehicle will seize the driver if available. However, if the vehicle is unable to seize the driver, it will reject the ride request and the entity will move to the Global Visit Request Queue, as you are seeing. You can attempt to have the Vehicle check again if it can now pick up the entity, and it will run the process to check if a driver is available. To have the Vehicle check the Global Request Queue to see if it can give a ride, use a PlanVisit step. Ensure that the Vehicle, in this case Vehicle_A, is the object executing this step. By default, the Vehicles are not aware if the Driver they need becomes available. You might consider using a Subscribe step on the Vehicle's OnInitialized process. This Subscribe step can watch for an Event and if that Event occurs, can trigger a related process. For example, the Vehicle might wait for the Driver.Released Event. When this Event occurs Process1 could run. In Process1, the Vehicle could execute the PlanVisit step. For more information, I recommend the Help pages in the Simio Reference Guide titled "PlanVisit" and "Subscribe". Happy Modeling! Link to comment Share on other sites More sharing options...
Recommended Posts