Jump to content

Search the Community

Showing results for 'ElectricVehicle SimBit'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Simio Public Forums
    • Welcome and How To Become a Simio Insider
    • Simio News and Announcements
    • Simio Product Details
    • Simio-Related Positions Desired or Positions Available
    • Help Getting Started with Simio
  • Forums for Simio Insiders Only (See Public Forums Welcome topic to sign up)
    • SI General Discussions
    • SI Sprint Releases
    • SI Shared Items
    • SI Ideas and Suggestions
    • SI Known Issues and Workarounds
    • SI Performance Tips
    • SI Non-US Cultures
    • SI Student Competition
    • SI Educational
    • SI Libraries and Objects
    • SI Animation and Visualization
    • SI Distributions, Functions, and Expressions
    • SI Simio Tabs
    • SI Experimentation and Optimization
    • SI Functional Approaches
    • SI Industries / Domains
    • SI Types of Simulation
    • SI Emulation
    • SI API

Categories

  • Files
    • Academic Information
    • Product Information
    • Case Studies

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me


First Name


Last Name


Company/University Name


OCCUPATION


ICQ


WEBSITE


YAHOO


AOL


LOCATION


FACEBOOK


GOOGLEPLUS


SKYPE


TWITTER


YOUTUBE

  1. Before you start adding state variables to a library object, I suggest that you first familiarize yourself with all of the existing states. One easy way to do this is to instantiate the object (e.g., Worker1) and then go to any expression field and type "Worker." and look at the list. In the case of Worker, there are over 100 states, functions, and properties built-in to the Worker object. Another way is to subclass the Worker, then go to the Definitions tab of the MyWorker object and you can see all of the built-in definitions by category: There is a pretty good chance that what you need is already there. But if not, use the same screen illustrated above and add whatever state (or property, event, ...) that you need. As far as referencing or assigning that custom state or a built-in state, it is done using ObjectName.StateName. For example if you added a state named TimeStartedMove to MyWorker, and you wanted to assign that value, you might assign MyWorker.TimeStartedMove to TimeNow. The tricky part, especially with more complex objects like Workers, is to determine exactly when/how to assign that value. Sometimes you can interact with the model itself to insert an Assign at the correct location (let's say in the Loaded Add-on Process). Or sometimes you might need to override the process logic in your custom object. The SimBits RecordDistanceTraveled and ElectricVehicle are examples to review.
  2. If you haven't already done so, I'd start by reviewing the SimBit ResourceSelectionConcepts. It contains several models that explain different types of resource selection. In particular, I'd suggest a combination of the following approaches: Create a table for each Worker (and/or each Server) where columns in the table represent the constraint or exclusions. For example, you might have a server table with columns for each day, and each column might contain a list of workers who can potentially be used on that day. Use resource lists to select from. possibly with exclusion conditions (maybe referring back to a table) of which resources cannot be used on that server and that day.
  3. Hello Vinicius, thank you for you help but I still having problems with the model. I can understand the logic behind of the SimBit "CombineMultipleEntityTypeOntoPallets" but I have some doubts. I change the model adding a combiner, I creted a intergrer model entity state to identify the quantity of containers, and I have a real state to identify the container but I dont know how change the batch logic of the container to each product. In the definitios tab you can see the batch logics. I hope you can help me Best regards. OptimoContenedores3.spfx
  4. Hello, I wouldn't use process for this one. There is a simple approach that you can use by modifying the SimBit "CombineMultipleEntityTypeOntoPallets". You'll need 3 ModelEntity Integer States to identify the quantity required of each Bin according to the Product. Let's say ModelEntity.Big, ModelEntity.Small and ModelEntity.Med. You can modify "Ops_Exited" step to assign those quantities. For the Producto1 for example, you'll have ModelEntity.Big == 1, ModelEntity.Med == 1 and ModelEntity.Small == 0. A little tip: you can use "Is.Producto1" (or "Is.Producto2", etc) on a decide step to identify which Producto is it. Now on the Combiner Object, follow the Simbit and change the BatchQuantity, to ModelEntity.Big, ModelEntity.Med and ModelEntity.Small. This should work.
  5. Hi there, I'm very much a novice, but currently leveraging the logic in VisitAllServersInAnyOrder simbit to ensure an entity visits an entity is never reworked more than once. I've updated the model entity with required state variables and created a "MyServer" to create the "HasEntityVisited" etc etc. I'm using the "Candidate.MyServer.HasEntityVisited==False" logic for the selection condition in the output node routing logic. However, whenever I run the model I get the error message "Referenced definition type "MyServer" does not match executing type "BasicNode". I've gone over and over the various elements and compared to the working simbit, but can't identify the issue. Any help would be greatly appreciated. Thanks in advance. Garrett
  6. That's because there is a routing table in this case. That's how it was set in this simbit before I made the updates. I also I tried to set the "Routing Table" as the initial sequence for the entity and I'm still getting the same error.
  7. Does the screen shots not helping? I made the changes from the "DashboardForScheduling" simbit in this case. I attached the simbit example with the changes that I made. DashboardsForSchedulingExamples_RoutingsUpdate.spfx
  8. I used the "DashboardForScheduling" simbit as an example for this case. For the order that is using "FinishedGoodA" material, I want to change the sequence after the welding process is complete if both shape stations are not available. So, I created an alternative sequence table and referenced in the process logic I created. Whenever this happens, I get same type of error message. Do you think this is happening because the normal routing table is referenced at the source object?
  9. Ok I can do a trace and see what I find. Also, I do have different entity/job types getting processed. In my routing tables, I do have the entities specified in the table. I'm trying to use the "ChooseAlternateSequence" simbit as a reference. Is it possible to do this if you have more than one entity type?
  10. Hello, I'm having strugles trying to configure the setup for the next process: some entities have a diferent processing time and setup time, before to enter to be processed in the workcenters, the workcenter have to be cleaned. I looked the simbit, "ServerWithSequenceDependenrSetup" but I'm confused with the configuration of the processing task. I dont know why we have two lines and o why only one have associeted the change-over matrix.
  11. there are several easy ways to do this. 1) Subclass the Resource or Worker object with the only change is to add a property or state (ex PTime) to hold the processing time specific to that resource. 2) Put your process times in a table and reference the correct table row for the doctor that is working. The SimBit WorkerPoolWithEfficiency does something somewhat similar.
  12. Hi Nicolas, I would investigate the Server property called Initial Capacity. This sets how many units of capacity are going to be available for the Server. You could also change this during the run by Assigning the Server's CurrentCapacity State Variable. I suggest checking out the SimBit titled "Worker Uses Work Schedule". You can access the SimBits in the Support ribbon in Simio. In this SimBit, I recommend changing the Initial Capacity for the Servers. You could set them to '6' or any value. When you run, you will see that the entities only move into the Process Station when they have successfully Seized the Secondary Resource. So even though there is 6 units available only 1 will be use when the Worker is able to process the entity. You can also experiment with giving the Worker a different Initial Number In System value so there can be more Workers. You will still see the same behavior; the number of entities that move into the Server for processing will be the number of Workers that were available to be seized. Happy Modeling! Liz
  13. This is problematic in Simio because Simio considers only entity length (not width) and only when on a Path or Conveyor. I think the first thing to do is fix the nose to tail problem. If you happen to use Conveyors to model this, there are built-in features to manage spacing while stopped and different spacing while moving. But unfortunately Conveyors are limited to a single direction, so are perhaps not appropriate if this is a bi-directional taxiway. If you are using Paths, you can fix this by making each plane longer when you draw it. For example, if you are drawing a plane that is 50M long and you want it to stay at least 10M behind the plane in front of it, place a nearly invisible dot about 10M in front of the plane's nose, making the total plane length (including safety spacing) be 60M. Although Simio will still put the entities nose to tail, there will be a 10M safety spacing between the physical planes. The problem of conflict at merge points is a bit more tedious to fix. I'd recommend a resource-based approach, like illustrated in the SimBit in Merging Conveyors Controlled by Gate. You can use this approach even when using Paths.
  14. What you can do is set up a table with a column of DateTime Property for the arrivals and change the Source Arrival Mode accordingly. I strongly recommend you guys to take a look on the Simbits available, they are a really good tool to guide you through your first steps into Simio. For instance, you can find the solution for your problem on a Simbit called AppointmentArrivals.
  15. Hi, What you could do is set up another column with the weights (likelihood) of creating each entity type... so you can set up probabilities any way you want it. Look SelectEntityTypeFromTable - SimBit to learn how to do it.
  16. Hello Gosia, I recommend using two State Variables to record the start and end times using the function TimeNow upon the Vehicle’s arrival to a Node. A Decide step is needed to check if the Current Node is different from the Destination Node and that is when values of the State Variables are assigned using the Assign step. The Processes will be set at the Vehicle’s Add-On Process Triggers On Entered Node and On Exiting Node. You can visit the SimBit section under the Support ribbon and check the SimBit titled “Record Distance Traveled” to see a similar example. Another approach is to create a custom Vehicle Class and use a Level State Variable instead of the two Real State Variables to collect information of the travel time. I suggest exploring the Level State Variable in the Help pages under the chapter titled “States”. I recommend checking the SimBit titled “Using Level States (from project Infection Propagation Using Continuous And Flow)” as well. Best Regards, Khaled
  17. Hi, A combiner is able to combine 1 or more entities into a parent entity. The number of entities that are batched together is specified in the property Batch Quantity. I recommend looking at the SimBit "Combine Multiple Entity Types Onto Pallets" for an example. Best, Khaled
  18. Hi There, I have lots of experience in simulation but I'm new to Simio - my apologies if my Simio vocabulary/conceptualization is off or if this question has been asked already. I'm working to build a queue model simulation with a network of services and multiple staff types. In my mind, it makes the best sense to do this using the standard library of servers and resource pools (to visualize the network for stakeholders and be able to model multiple staff with different schedules that can each respond to multiple services). Right now, I am starting with a single stage M/M/c type queue to make sure that my implementation is correct before scaling this upwards. I checked out the SimBit titled 'Source – Server – Sink' that has three different M/M/c implementations; however, none of them use Resource Pool objects or combine process triggers with the standard library. I was able to implement a basic model that tries to combine a resource pool with a server by triggering separate Seize and Release process triggers on entry to the server object and after the processing time is completed, respectively. It runs without error; however, the results for average time in system (calculated by an average of a tally statistic that is only recorded for every 500th customer/entity), the results are one third less than in a scenario where I don't use a resource pool and set the capacity of the server explicitly, (which I validated against M/M/c formulae results). Does anyone have tips for how to link servers and resource pools and troubleshoot this scenario? Is there a SimBit or other example out there that is relevant? Am I triggering the seize/resource processes at the wrong points in time? Or is my framework for how to conceptualize this in the Simio environment missing a key concept? Thanks!!
  19. Hi Barry, I tried a bit and I am quite sure that PartTypes.HowMuch.RandomRow(RandomNumberStream) works. Use integers for RandomNumberStream to set/get the specific random streams. I tested it on RandomValueFromTable simbit (i.e., PartTypes.HowMuch.RandomRow(0), PartTypes.HowMuch.RandomRow(1)) and get different results for each. Also, when I restart the simulation I got the same results for each, as well.
  20. Check the SimBit project called "Neural Networks" for a detailed example of this new feature.
  21. Hi Jason, I recommend checking out the SimBit, found in the Support ribbon in Simio, titled "Hierachy with Tables". This could show you an idea of how you might use a Repeat Group Property to read in a Data Table at the parent model in to the sub model. Liz
  22. The name of the simbit is: CombineMultipleEntityTypesOntoPallets.spfx
  23. Just use combiner object. There is a very close simbit in simbit library, just check it out.
  24. Note: WkA and WkB essentially do the same thing, so I'm essentially just explaining WkA on the seizing worker to make things simpler. What needs to happen: I need Wk1 to wait until WkA is at the output node before processing the entity. Then resume movement (to go to input of BPICK) only after the event of Output@APICKRiderWaiting (basically the processing finished; I found it only works when I use the wait for rider waiting). The same thing needs to happen with BPICK. Then Wk1 needs to head back to nRouter. Current State & Problems: Right now it does not wait to process the entity until WkA/B gets there. I have tried adding that as a row in the events more logic, but it doesn't work. I have also tried putting a Wait step with that as it's event before the other Wait. However, Wk1 still gets to APICK/BPICK and immediately the entity is processed. Wk1 does however work on not moving on until the entity is processed. One problem with that though is that Wk1 does not go back to nRouter after finishing at BPICK. I have tried several things like setting node, but perhaps I didn't have that step in the right place. Both entities have a destination by the way. This next photo is showing the seizing of the worker. The decide and execute steps refer to interrupting processes but all those still include the seizing step you see here. I have also attached my model in case you need to run or see it. It may be hard to follow all the logic on other add-on processes other than the ones I showed you. I have other problems in other areas, but this problem I'm posting about is not that affected by the other problems of the model I think. Though honestly, if you find that you may have a solution or fixes in basic logic to those (because its glaring) then by all means, share them. ((And yes, I have looked at InterruptibleOperator simbit as well as other Interrupting example simbits but am still confused on the whole thing.)) ModelForQuestionCOPY5v.3.spfx Thank you!
  25. Hi LizMB, I have a few specific recommendations for you below, but generally I suggest looking into the SimBit models provided on Simio's Support Ribbon. A PDF opens with each model that contains a detailed description, so they are a great tool for learning specific approaches and techniques. A few that I believe are related to your particular problem are "Moveable Operator", "Interruptible Operator","Keeping Worker Reserved", and "Entity Follows Sequence". Worker1 carries both entities to their respective nodes and leaves them in their respective stations after worker(A/B) "checks them" (I used a delay to simulate this check) and then Worker1 moves on. For this objective, I suggest setting up your drop off stations A and B as a Servers. Use the Processing Time property to represent the "check" while seizing both workers needed (see the Operator related SimBit for more information). Make sure all entities are assigned a sequence, so Worker 1 knows where to drop them off. The worker(A/B) only picks up the entity if needed. So if the worker was with another entity in process (like Srv(A/B)), he would go check the new entity so that worker1 can move on, but would return to finish out the first entity to the end. Assign entities that enter the pick up stations a higher priority, and interrupt the Workers at SrvA and Srvb if a pick up task arrives (See Interruptible Operator for more information). Ensure that the Workers have the needed paths to travel to all of the destinations required in all directions. Currently, WorkerA and WorkerB cannot travel to the Outputs of the Servers. Other suggestions: Look into using a Timer Element that could trigger the entity creations at SrcA and SrcB. That should remove the need for Source1 and Sink1. If the Worker's travel doesn't need to be defined by a path, I suggest setting the Initial Travel Mode to 'Free Space Only'. The error message you are receiving is related to the Add-on Processes on the A and B nodes. Whenever Worker 1 enters either of those nodes the process is triggered and tries to complete the process with relation to the Worker. Restructuring the model with Servers in this area should help you get around this issue. Thanks, Ryan
×
×
  • Create New...