Jump to content
Simio Forum


  • Content Count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About silverChariot

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Sure, here you are. You can try this one. The inputs are the function name without .m and the function address. CallMATLAB2.dll
  2. Hi atuba, Thank you for your friendly reply! I'm using Matlab 2019a and Simio12 in Windows10. I did try to use the CallMATLAB dll file online, but that required the corresponding software version and system version. I rewrite the code in C# that calls Matlab with cmd. The created dll file works but requires a pause after the CallMatlab step, and it was inconvenient but helped me obtains the experiment result. I will definitely try your suggestion next time the optimization-based simulation is needed. Thank you!
  3. Hi gocken, Thank you for your reply and your attention to this problem! The current method that adds a breakpoint after 'CallMATLAB' function works in my project. Before Simio runs MATLAB, Simio will send out needed data to SQL server and then call MATLAB function. MATLAB receives the data through the database, implements the algorithm, and writes the data into the database. The Simio program pauses at the step that Simio reads the MATLAB results from the database. I have validated the .dll file with a simple MATLAB program that plays a music file and it works. Because the Simio
  4. Pausing Simio can be implemented by add a breakpoint after the step that calls MATLAB function and continue the model manually after the MATLAB program is finished.
  5. To pause Simio can be implemented by add a breakpoint after the step that calls MATLAB function and continue the model after the MATLAB program is finished.
  6. Hi Lucas, Your method works! The ItemAtIndex() returns an entity object in the defined station, and I'll just need to go through the queue to check for the following work. Really appreciate your help! Thank you. Shu
  7. Hello guys, Does anyone know how to implement the pause of Simio when an algorithm is called from Simio and running? I am doing optimization-based experiments, which are designed to use MATLAB to do the calculation for optimization problems and Simio for discrete event experiments. Calling MATLAB from Simio can be implemented by defining a step to call a C# program that calls MATLAB function. But the problem is the Simio only pauses till MATLAB is opened, and the Simio experiment as well as the MATLAB algorithm will continue simultaneously. The MATLAB result should be introduced into
  8. Hello, guys, I do not know how to determine if a detached queue contains a certain kind of entity. I create an element station1 and a detached queue which sets the queue state as Station1.Contents. In Decide step, the station1.contents only returns the number of objects in the station, and I cannot use contains(obj) after station.contents, even though contains(obj) is a function for QueueState and Station.Contents should return the queue of entities currently located in the station, according to the help documentation. Is there any method to access the candidates or objects in the se
  9. This can be done by calling c# from simio and calling Matlab from c# with Simio API. Details can be found here: https://www.sciencedirect.com/science/article/pii/S1569190X16301356 And here: https://www.simio.com/resources/events/2018-User-Group-Meeting/presentations/API.pdf But another problem is that how do we pause Simio until the MATLAB problem is finished? Any suggestions on this?
  10. Hello everyone, I met a problem during the use of 'CallMatlab' UserExtension process. I am using Simio 8, MATLAB 2019a, and Windows 10, following the process introduced here: The problem is that when Simio is trying to call MATLAB function, some files are not registered and a certain dll cannot be found. Has anyone met such a problem before? Or is there anyway to write the CallMatlab myself? Thank you. Shu
  • Create New...