FlexSim Knowledge Base
Announcements, articles, and guides to help you take your simulations to the next level.
Sort by:
Nesse vídeo, fazemos um overview sobre o FlexSim e demonstramos como modelar diretamente pelo 3D usando as conexões padrão disponíveis no software e as diferentes formas de inserir os objetos na área de modelagem (Grid). Também demonstramos como analisar de forma bem básica as estatísticas de cada um dos objetos e uma rápida introdução sobre o Dashboard e a variável estatística presente em cada um dos objetos individualmente. Para assistir o vídeo, acesse nosso canal do youtube.
View full article
Download the files Download FlexSim’s latest lmtools-related files here: https://flexs.im/lmtools-download You can browse archived versions of both lmtools and lmadmin here: https://flexs.im/licenseserver-archive Extract the download Once the download is complete, right-click the .zip archive and choose to Extract All… Save to a folder directly on your root drive. Your lmtools download folder Your extracted folder should end up looking something like this: In later instruction steps, any time we refer to the downloaded files, these are the files we're talking about. Note on location Technically you could save your download files in any folder, but we recommend right at the root drive level for convenience. If you choose to save your download folder in an alternate location, please make sure that the directory path doesn't include any folder named "FlexSim". Since Windows files are not case sensitive, this prohibition also applies to variations like "Flexsim" or "flexsim". We have seen instances where some versions of FlexNet licensing encounter errors when the name of the vendor daemon ("flexsim" in our case) is the same as a folder in the path. A folder that includes "FlexSim" as part of a larger name is fine. For example "FlexSim_Licensing" is a fine folder name. Examples of good paths: C:\FlexSim_LMTOOLS C:\licensing\vendors\FlexSim_LMTOOLS\ C:\Program Data\FlexSim_License\ Examples of bad paths (incompatible folder names bolded): C:\flexsim\ C:\licensing\vendors\Flexsim\ C:\Program Data\licensing\FlexSim\files\
View full article
tl;dr must be stable and persistent, always able to maintain a constant connection with the client software don't use a user's personal computer as a license server use a currently supported Microsoft OS bare-metal hardware, virtual hardware, cloud hosted - all are fine if the hardware meets the OS specifications, it meets the license server specifications configure your network and firewalls to allow the client-server communication Use an always-on, accessible server (not a user's PC) Your license server should be on a stable, persistent system that is always on and always accessible via a stable IP address or fully qualified domain name. A user’s personal system is not a good license server, unless they are only serving licenses to themselves, in which case please consider contacting your local FlexSim distributor to exchange for a standalone license. Operating System Hosting FlexSim licenses requires a currently supported version of Windows (desktop or server versions are supported). FlexSim and FlexNet do not support Windows operating systems that have reached their end-of-life. See Microsoft guidance on product lifecycle. You should perform all Microsoft Updates so that your operating system is fully patched prior to installing the license server software. In the future we hope to allow FlexSim licenses to be hosted on Linux or Mac license servers, in addition to Windows. Work toward multiplatform is ongoing. We do not currently have an estimated timeline. Server Hardware If your license server hardware meets the specifications required for the chosen Microsoft OS, it will be adequate to run the license server software. Hosting licenses is generally NOT a demanding workload. Please do not confuse these minimal license server hardware requirements with the different and more demanding system requirements for running FlexSim Simulation Software. Cloud Hosting Your license server could be hosted by a cloud provider or on premises, on a virtual machine, or a bare-metal OS. Keep in mind that your license server should be a stable, persistent server that client PCs can remain connected to. If your server setup works by creating and destroying new instances of a virtual machine each time you reboot, it is NOT suitable for use as a license server. You will lose your Trusted-Storage-based FlexSim licenses when the virtual machine is terminated. Networking, firewalls, connectivity For the client software to remain licensed, it must maintain a constant network connection to your license server. The exact details of such a configuration are up to you. If you want to limit client-server connections to the local network, allow access to the license server worldwide over a VPN, or make your licenses available over the public Internet, these are all decisions you must make and configure your network and firewalls accordingly such that your FlexSim client PCs can maintain a constant connection to the license server. Further networking guidance, including information regarding firewalls and port numbers, is found in the individual instructions for lmtools or lmadmin.
View full article
Why would I delete a fulfillment? You may need to manually delete a fulfillment from your PC if: Your license is broken. Sometimes you can fix this problem yourself by attempting a repair. However, you may get a message that the repair failed. "Repair: failure. Online return/repair request for the activation ID is not originated from the original client machine." In this case contact your local FlexSim distributor to explain the situation and let them take a look. Reference this post. If they determine it is best to delete the broken fulfillment, follow the instructions below to do so. Your distributor will then force-return the broken license so that it will be available for a new activation. You mistakenly requested a force-return of a license. If you later find the fulfillment that you thought was lost, that fulfillment is no longer able to be returned normally (because it was already force-returned). In these cases, and in a few other rare circumstances, you may find it necessary to manually remove a fulfillment from your computer. This process occurs exclusively on your computer without any communication with FlexSim's main license server. Delete your fulfillment FlexSim 23.0 or greater For FlexSim version 23.0.1 or greater, you can delete fulfillments using the License Activation window. From FlexSim's main menu, choose Help > License Activation. Under the Advanced tab, find the Delete sub-tab. Choose the fulfillment you'd like to remove from your computer and click Delete. Confirm your choice to remove the fulfillment from your computer. Currently licenses that are *BROKEN* do not show up in this list (how do licenses become broken?), so if this applies to your situation you will need to use the Older versions method below. Older versions Older FlexSim versions do not have a graphical interface for removing fulfillments, but you can still do so using a FlexScript command. Find the fulfillment ID The first step is to find the fulfillment ID of the license you want to return. This is an identifier unique to the activation you're removing. View your licenses to find the fulfillment ID you wish to remove from your PC. Prepare your delete command Once you know your broken fulfillment ID, you're ready to build the command that will remove it from your computer. licenseactivation(LA_DELETE_FULFILLMENT_RECORD, "paste entire 'FID_...' fulfillmentID here"); Be sure to paste the complete fulfillment ID into the 2nd parameter. Depending on your software's licensed state, you may be able to run this command directly in a script window. If not, we'll work around that limitation by using an object's reset trigger. Execute the delete command There are two ways to manually delete your fulfillment: Run the command in a script window Use a 3D object's reset trigger Run in a Script window If your FlexSim installation is still licensed, you can open a Script window to run FlexScript commands: Run the command console. You will be prompted to confirm that you truly want to remove the fulfillment: Choose Yes to remove the fulfillment. Use a 3D object's reset trigger If your FlexSim software is not licensed the Script command console is not available. Instead, do the following: Create a new model. Drag any object into the 3D view. Create a reset trigger on that object. Enter the FlexScript command into the reset trigger. Press OK to save the script. Reset the model. Choose Yes to confirm that you truly want to remove the fulfillment. If you have any questions or problems, please search our Answers Community for possible solutions. There is a good chance someone else has already asked your question. Still not finding what you're looking for? Submit a new question and we'll check it out. If you're including any confidential information, such as license codes, be sure to mark your question as private! You can also contact your local FlexSim distributor for live phone, web, or email help.
View full article
Have you received this licensing error? Operations error: 7032 Invalid fulfillment ID: FID_ ... (entire fulfillment ID listed) You may encounter this error during an attempted license return. This error means that the license server has no record of your license activation, and therefore is not able to recognize the return action from your unknown activation. This error should only be encountered under a few rare circumstances: 1. Rollback on FlexSim's main license server FlexSim's main license server could be rolled back to an earlier time due to a necessary database restoration in order to mitigate database corruption or other unforeseen issues or circumstances. License actions, such as license activations or returns, that occurred after the last viable backup was saved, but before its restoration, will be lost. The solution for any license affected will consist of one or both of the following: If an activation occurred during the lost time period you would need to manually remove any un-returnable fulfillments. Standalone - Delete fulfillment License Server - Delete fulfillment If a license return occurred during the time period, you should contact your local FlexSim distributor to request a force-return. Explain the error and this situation. 2. Change to FlexSim's licensing infrastructure Your FlexSim product has reached End-of-Life and the license server under which your license was originally activated has been retired. This situation is outlined in FlexSim's End User License Agreement > Software End-of-life. As of this writing, FlexSim has never retired any of our FlexNet licensing infrastructure and we currently have no plans to do so. This item is included here for completeness' sake and in the event that such future licensing changes occur. If you are using software past its End-of-Life date and you think this problem may be affecting you, please contact your local FlexSim distributor.
View full article
It may be necessary in rare circumstances to manually delete a fulfillment from your license server. You may need to do this if you mistakenly requested a force-return of your license, if FlexSim's main license server was rolled back to an earlier point in time, or some other rare circumstance.   This manual process occurs exclusively on your license server without any communication with FlexSim's main license server. This procedure applies to both online and offline/secure/air-gapped license servers.   Assumed configurations   All steps below assume that you followed the installation instructions as described in our license server installation instructions, and that all FlexSim's license server files were extracted to the location C:\FlexSim_LMTOOLS. Throughout these instructions we will reference files inside that folder.   Find your fulfillment ID   On your license server, run the flexsimserveractutil.exe program (C:\FlexSim_LMTOOLS\flexsimserveractutil\flexsimserveractutil.exe) by right-clicking and selecting Run as Administrator.     In the FlexSim ServerActUtil program, go to Tools > View License Rights.     Copy the Fulfillment ID for the Activation ID you intend to manually delete by highlighting the Fulfillment ID and pressing Ctrl+C.     Delete the fulfillment   In the FlexSim ServerActUtil program, go to Connect > Delete.     Paste your fulfillment ID into the field. Press the Delete button.     You should receive an indication of success.     If you have any questions or problems, please search our Answers Community for possible solutions. There is a good chance someone else has already asked your question. Still not finding what you're looking for? Submit a new question and we'll check it out. If you're including any confidential information, such as license codes, be sure to mark your question as private! You can also contact your local FlexSim distributor for live phone, web, or email help.
View full article
You may find it necessary to check the status of your licenses. Perhaps you're trying to diagnose some issue, or you want to check which license you have activated.   Here we explain how to view the licenses activated to your PC, and their status.   View your licenses   Open FlexSim. From the main menu, go to Help > License Activation. Go to the View Licenses tab. Press the View Licenses button. You should see a list of fulfillment information, or a message indicating that there are no licenses on your PC.   What does it all mean?   If you have licenses on your PC, each license listed includes a block with status and license info, including whether the license is fully trusted and enabled or broken, the unique fulfillment ID that pertains to this specific license activation, and more. You'll also see INCREMENT blocks for each feature that makes up your license.   Take action   Check the article Licensing Procedures under the Standalone Licensing heading for instructions if you need to repair or return your license or do other sorts of license maintenance.
View full article
You may find occasion to check the status of your licenses. Perhaps you're trying to diagnose some issue, or you want to check which license is activated, or how many seats. Here we explain how to view the licenses activated to your license server, and their status. Assumed configurations All steps below assume that you followed the installation instructions as described in our license server installation instructions, and that all FlexSim's license server files were extracted to the location C:\FlexSim_LMTOOLS. Throughout these instructions we will reference files inside that folder. View License Rights On your license server, run the flexsimserveractutil.exe program (C:\FlexSim_LMTOOLS\flexsimserveractutil\flexsimserveractutil.exe) by right-clicking and selecting Run as Administrator. In the FlexSim ServerActUtil program, go to Tools > View License Rights. An information block is printed for each license activated to your license server. You will find listed the unique fulfillment ID for each activation, along with the license code (also called an activation ID and listed here as entitlement ID), its status (fully trusted/enabled, broken, etc.), the number of seats activated, and for timed licenses, an expiration date. Take Action Check the article Licensing Procedures under the Network Licensing heading for instructions if you need to repair or return your license or do any other sort of license maintenance.
View full article
[ FlexSim 2016 ] FlexSim 2016 Update 2 is available. FlexSim's start page will automatically notify you of the update and allow you to download and install the update from within FlexSim. To manually download the installer log in to your account at www.flexsim.com, then go to the Downloads section. If you have bug reports or other feedback on the software, please email dev@flexsim.com or create a new idea in the Development space. Release Notes Added support for STEP and IGES 3D shapes. Added a Quick Library popup when you double-click on empty space or A/S Connect to empty space in the 3D view. Improved object rotation manipulation in the 3D view. Added sorting to toolbox for top level items. Added the ability to use the query() command with partitioned lists, using ListName.$1 or ListName.PartitionIDStr syntax. Added support for the ON clause in SQL queries using the query() command. Added support for the ARRAY_AGG() aggregation function in SQL queries using the query() command, in the manner of PostgreSQL. Added an "Allow Multiple Pushes Before Back Order Fulfillment" setting to lists. Added a "Reevaluate All Values On Push" setting to lists. Added a Date Based feature to gantt charts. Updated the auto-numbering mechanism when naming new objects. Updated file browse dialogs to remember the last used directory. Changed the default directory for opening and saving user libraries to be within documentsdir(). Added a colors tab to the tracked variable dashboard chart. Updated the Presentation Builder interface to make the timeline more useable. Updated the Animation Creator interface. Updated the Stop Time interface. Added range and type validation to many edit fields. Overhauled the FlexSim Web Server interface. Added functionality to the Webserver to restrict access to certain models using Windows Authentication. Fixed a bug with the window docking system that caused sizing to not work properly sometimes. Fixed TimeTable Excel Import bug not working with Daily/Weekly Repeat table. Fixed the Visual Studio project files so they don't give you the linker errors when you compile flexsimcontent.dll with Visual Studio. Fixed a bug with cell heights and widths when inserting and deleting table rows or columns. Fixed line charts continuing to collect data beyond their collect time. Fixed the query() command so that it can be called within List fields. Included fixes listed in 16.0.5. Process Flow Improved Process Flow view performance. Added Split, Join, and Synchronize activities. Added right-click options for re-ranking activities in a block and removing an activity from a block. Added tooltips to activities that show you the activity type. Added copy and paste options to the Process Flow right-click menu. Populated field names of lists for SQL drop-down menu options. Updated Text editing interface to be more user friendly. Added an "Assign Event Object To" option to the Wait For Event and Event-Triggered Source. Fixed a bug with Zone Partitions not being able to be graphed. Fixed an issue with connectors losing their ranks when clicking and dragging them. Fixed the List Back Order Reevaluation Events so you can listen to activity events. Fixed the Experimenter duplicating TEs/FRs attached to Process Flow objects not properly duplicating the Process Flow instance. Fixed Sub Flows that have Resources pointing to 3D objects in the model not properly creating/destroying copies of the 3D object. Fixed Resources in Fixed Resource and Task Executer Process Flows losing their references when being updated by a user library. Fixed a bug with the Pull from List where releasing the token and leaving the back order on the list would not give you all of the pulled results when using the 'Assign To' option. Fixed a bug with capturing ProcessFlow views at resolutions larger than the window size. AGV Added new agvinfo() command options. Updated paths so that they can be contained within visual tools. Backwards Compatibility Note: the following changes may slightly change the way updated models behave. Fixed issues with routing through path junctions where 3 or more paths connect. Conveyor Fixed an issue with manually moving a waiting item off a conveyor with a restart delay.
View full article
[ FlexSim 2016 ] FlexSim 2016, version 16.0.5, is available. To download the installer log in to your account at www.flexsim.com, then go to the Downloads section and click on More Versions. If you have bug reports or other feedback on the software, please email dev@flexsim.com or create a new idea in the Development space. Release Notes Fixed sin() command not displaying in the Command Helper. Fixed a bug when shift-selecting entire rows and columns of global tables. Fixed C++ Variant comparisons where the primitive is on the left side. Fixed the return values for CURRENT_MINUTE, CURRENT_SECOND, and CURRENT_MILLISECOND in getmodelunit(). Fixed a bug with SQL parsing of FlexScript functions returning doubles in 32-bit FlexSim. Fixed some pin buttons in the Stats window. Fixed a bug in a Pull From List pick option. Fixed Crane and Robot speeds not scaling with model units. Fixed a bug with the From/To Lookup Table popup not putting quotes around table names. Fixed a bug with exporting Custom Chart data as CSV sometimes not working. Fixed some UI issues with the Edit Name box for User Libraries. Fixed an exception in the Set Label trigger popup. Conveyor Fixed header for OnMessage trigger of Photo Eyes. Fixed decision point rotation in a rotated container. Fixed a bug with calculating the time that items will split off from each other when an ahead item speeds up. Fixed a rare crashing issue with accumulated items. Fixed an issue with resuming nonaccumulating conveyors that weren't stopped. Process Flow Fixed a UI bug with the process flow variable panel in Quick Properties when opening a model. Fixed some instance references from showing just the name to now showing the path to better distinguish objects in containers. Fixed an extra line being added in the token Shared Assets list when requesting a Zone. Fixed the Quick Library so you can collapse sections. AGV Fixed issue with click-creating AGV control points before creating paths. Fixed issue with calling stopobject() on an agv when it has arrived at a control point at (near) zero speed.
View full article
FlexSim 2023 is now available for download. For more in-depth discussion of the new features, check out the official software release page: FlexSim 2023: Enhancements to Bonsai Integration (AI), Emulation, AGV/AMR, and more You can view the Release Notes in the online user manual. FlexSim 23.0.0 Release Notes If you have bug reports or other feedback on the software, please email dev@flexsim.com or create a new idea in the Development space.
View full article
FlexSim 2022 is now available for download. You can view the Release Notes in the online user manual. For more in depth discussion and videos of the new features, check out the official software release page. If you have bug reports or other feedback on the software, please email dev@flexsim.com or create a new idea in the Development space.
View full article
Preparation   You may want to brush up on how a license version is related to a product version.   When you understand what version of FlexSim will work with your license, download and install an appropriate software version for your license.   If your computer is not connected to the Internet, you will need to transfer FlexSim's installer to your computer on a USB drive or some other method.   You will also need to be able to transfer XML license files to and from your offline computer.   NOTE: If this is the first time a license has been activated on this computer, an initial XML request/response communication will be needed to configure your local Trusted Storage.   This means that for a first ever license activation on a given computer, complete the steps below for just a single Activation ID - that will configure your computer's Trusted Storage.   Once that is complete, repeat again the entire Manual XML activation process for that initial Activation ID and any other Activation IDs that will be installed to this computer.   Find your licenses   Log in to your FlexSim Account, click the Licenses link in the top menu. In the Licenses submenu, choose List. Expand the various product and version folders to find the Activation ID you wish to activate. An Activation ID looks similar to this example: yourcompany.com01-ABCDE-FGHIJ-KLMNO-FSENT16.2   Create manual activation requests   Open FlexSim Software. In FlexSim's main menu, Go to Help > License Activation. Click the Advanced tab. Go to the Manual Activation sub-tab. Enter a valid Activation ID into the field (see the Find your licenses heading, above). Click the Generate Request button. You will be prompted to save an XML file. Choose a location and filename to save your XML activation request. If this is your first time ever activating any FlexSim licenses on this PC, only generate an XML request for one activation ID (see red-highlighted note above). Otherwise, repeat steps 4-6 for all licenses you wish to activate on this PC, so that all your XML activation request files can be transferred at one time.   Submit your manual activation requests   Transfer your XML activation requests to a computer with Internet access. From your Internet-connected computer, open a web browser and login to your FlexSim Account. Click the Licenses link in the header, then choose Manual XML in the Licenses submenu. Upload your XML files by dragging them onto the drop zone. Your uploaded XML requests will be processed. Upon completion, you will be prompted to download each XML response.   Process your manual activation responses   Transfer your downloaded XML activation responses to the offline computer you are licensing. In FlexSim, using the same licensing interface where you generated your request, click the Process Response button. Browse to an XML activation response file. FlexSim should give you an indication of successful processing of your activation, and your activation will be complete. Repeat to process the XML activation responses for any other licenses you are manually activating.   IMPORTANT NOTE   If this is the first time a license has been activated on this computer, an initial request/response communication will only serve to configure your local Trusted Storage.   This means that for a first ever license activation on a given computer, after this first request/response has been successfully processed on the offline computer, a 2nd request using the same license code will need to be generated/uploaded/processed/downloaded/processed to fully activate your license.   This is a one-time event per-computer. Subsequent license activations to the same system require only one request/response XML pair. If you have any questions or problems, please search our Community for possible solutions. There is a good chance someone else has already asked your question.   Still not finding what you're looking for? Licensed users can submit a support request and we'll check it out.
View full article
Introduction to lmtools   This article is a sort of table of contents to the various articles that will take you from start to finish in installing, licensing, configuring, and running your FlexSim license server using the lmtools license manager.   background info   Server-based vs Standalone licensing - Learn the differences between these two license models, and when you might choose one over the other. License managers - lmadmin vs lmtools - FlexSim supports these two FlexNet license managers. Learn the differences, and why FlexSim recommends lmtools.   Let's get started   When installing a new license server, start here at the top and work your way down the list of articles linked below. By the end you should be in good shape to properly host and serve your FlexSim licenses.   Each link should open in its own browser tab, so once you complete a sub-task just close that tab. Then back here in this main tab click the link to the next step.   The list of links below might seem intimidating, but conceptually it's just 4 main things we're about to work through:   Preparation and Prerequisites Activate licenses to your license server Configure the licensing service Configure client PCs   If you run into any problems, you can also find additional helpful resources linked at the end of this article:   Troubleshooting Related links     1) Preparation and Prerequisites   System Requirements - almost any Windows computer could act as your license server. Click inside for the details. Download files - download the required lmtools files and extract them to an appropriate folder on your license server. FlexNet Licensing Service 64 - FlexSim is licensed using Revenera's industry-standard FlexNet licensing platform. This article prepares your license server with the background service necessary for hosting your FlexSim licenses.   2) Activate licenses to your license server   Choose the right steps below to license your server, depending on whether or not your license server can communicate over the internet directly with FlexSim's main license server.   • Online, Internet-enabled systems   License Server - Activation - Online - Activate your FlexSim licenses to your license server directly over the Internet. Should be easy-peasy. • Secure / Offline / Air-gapped systems   If your license server will not connect to the Internet (or if for any reason it cannot communicate with FlexSim's license servers) there are a few extra steps to get up and running. You've got this!   Configure Trusted Storage - Your new license server has a secure storage area for holding license info, but first it must authenticate with FlexSim's main license server. License Server - Activation - XML / Offline - the manual steps to activate your FlexSim licenses onto your license server.   3) Configure the licensing service   Configure your license service - use FlexNet's lmtools license manager to create and configure the service that will serve up your FlexSim seats. Add Windows Firewall exceptions - your licensing service needs to communicate with other PCs on the network. This will get you started.   4) Configure client PCs   With your license server installed and configured, it's finally time for your license server to fulfill its destiny and serve licenses to your client PCs.   Make sure you know the IP address or fully qualified domain name for your license server, as well as the license service port number (see #1 under Check the service status). You'll use your server's address/name and service port when configuring the client PCs.   FlexSim Version Numbering - your FlexSim license is for a particular version of FlexSim. If your software maintenance is not current, you may need to use an older version of the software. In this article you'll learn how licensing works for a given version number and where to download an appropriate version of FlexSim that will work with your license. With an appropriate version of FlexSim installed on the client PCs, you're ready to configure them to communicate with your license server. There are two ways a client PC can be configured. Choose the method below that most closely matches the main use case for your client PC:  Single-user client PCs - this method configures settings that are saved on a per-user basis. Multi-user client PCs - usually appropriate for a university computer lab or other shared-PC situation, where the configuration should be computer-based. Verify client PC licensing - Not sure if your client PC is getting licensed properly? Dive in to find out how to tell your client PC is successfully getting a license from your new license server   Troubleshooting   Isn't there a law in the universe that if something can go wrong, it will? If you're stuck in a licensing black hole, these tips might be just the thing to help you get moving.   Client/server connectivity - if the client PC and the license server can't communicate, the client PC won't be able to get a license. Troubleshooting tips - when you're pretty certain that connectivity isn't an issue, but your client PC still isn't getting a license, check here for some ideas.   Related Links   FlexSim's license file - your new licensing service uses a license file to specify port numbers. Get more background on license files and ports here.  
View full article
If you have colleagues who should also have visibility to your license codes, you can "share" your licenses with their account. Licenses should only be shared in accordance with FlexSim's end user license agreement. When you share your licenses with another FlexSim Account, they are able to view all of your activation IDs in full, as well as the activation histories of those licenses. To share your licenses with another FlexSim Account, do the following: Log in to your FlexSim Account at https://flexs.im/account. In the navigation header, click the Licenses link, then choose Sharing from the submenu: Follow the instructions to add one or more FlexSim Accounts to share your licenses with. The FlexSim Accounts must already exist. Press the Add button to submit the accounts. When you submit, if you are navigated away from the Share page, simply revisit the Sharing link as described in step 2 above. You should see the results of your share attempt. You will also see a list of the accounts you're sharing with, as well as any accounts that are sharing with you: Your licenses will now be listed in your colleague's FlexSim Account. They will see your licenses listed on their Licenses page the next time they log in. If they were currently logged in to their account while you shared your licenses, they should log out, then log back it to note the change.
View full article
FlexSim 2020 Update 2 is available. If you have bug reports or other feedback on the software, please email dev@flexsim.com or create a new idea in the Development space. Release Notes Updated the run speed slider so you can customize the ratio of display units to real seconds. Moved object properties windows into the context sensitive Properties window (formerly known as Quick Properties). Added a new Quick Properties window that appears next to your cursor when double clicking on an object. Added a pop-out button to the Labels panel of the Properties window. Added a Dark theme for FlexSim's UI. Removed help manual from the installer and linked help to docs.flexsim.com. Created a separate installer for a local help manual. Added Unit edit buttons to more edit fields. Updated the Quick Library to match the current state of collapsed and expanded panels in the main library. Removed the View Settings window and moved all its options into the Properties window. Improved performance of Properties window and various other UIs. Added Object Property tables. Added Object class properties and methods to the Variant class in FlexScript. This removes the need to use .as(Object) if you know the treenode pointed at by a Variant is an Object. Added Object.resetPosition property. Added capture groups to the string.replace() method. Enabled several SQL clauses - NOT, NOT IN, DELETE FROM, INSERT INTO, and LEFT JOIN/LEFT OUTER JOIN. Added ARRAY_VAL() sql function for accessing a value in an array. Added unit conversions to the convert() command - convert(4.5, "ft/min", MODEL_UNITS). Improved performance of loading media by making it multi-threaded. Updated the default web server 3D view to stream using WebGL data instead of video. Added Color.fromPalette options to several Set Color popups. Added a pickoption for the Source's On Creation trigger for attaching items to an Object process flow. Disabled the beeping noise when pressing Enter in edit fields. Fixed the Create Object edit mode sometimes not creating objects and just exiting (like when clicking on the library when the User Manual was active). Fixed a draw issue with tables drawing bold text sometimes. Fixed a bug with window docking. Backwards Compatibility Note: the following changes may slightly change the way updated models behave. Changed updatehotlinks() to only repaint the view if it applies a node with a viewsyncupdate attribute of 1. The keywords VALUES an DELETE were added to the sql parser. This means that previous models that use the term VALUES, Values, values, DELETE, etc. will get an error because sql now sees it as a special keyword. If you get this error, just wrap your term with square brackets: [Values] to tell the parser to not interpret it as a sql keyword. Agent Added the Agent module to the Flexsim Installer. Enabled A* walls as static agents. Added a neighbors() function to the Agent API. Fixed social forces for agents not in model space. Fixed bugs with using A* bridges. AGV The join tool now joins in all cases, defaulting to a straight path if it can't solve for a curved path. Conveyor The join tool now joins in all cases, defaulting to a straight conveyor if it can't solve for a curved conveyor. Emulation Added Allen-Bradley connections. People Improved performance of state history tables. Fixed listening to travel events on a person created with the Create Person activity. Process Flow Added new Kinematics activities. Added new Warehousing activities. Added an Enabled checkbox to the Source activities so that you can turn them off. Consolidated Fixed Resource and Task Executer process flow types into a single "Object" type. Added a right-click menu option to the 3D view so a user can right-click on an object and add an Object process flow directly. Added an Object Flow field to the Create Object activity and added a pickoption for attaching items to an instanced flow. Changed double clicking on an activity to be more consistent with the 3D view and now opens the activity's properties window. This window now has a name edit field so you can still easily rename the activity. You can also slow double click to only open the old name edit field. Improved performance of activity properties windows.
View full article
Many simulation models need to show operator or machine utilization by time period of day, or per shift: shiftutilization.fsm Under Construction Summary Until this article is completed, here is the basic idea. I use a process flow to create one token per operator in the group. Each operator token creates one token per shift. The shift token creates its own Categorical Tracked Variable (which is how state information is stored on all objects). The shift token just remains alive, holding the tracked variable. The oeprator token goes into a loop, listening to OnChange of the 3D Operator's state profile node. Whenever the state changes, the token sets the shift token's state label to the same state. This essentially copies the state changes onto another tracked variable. Another child token listens for when the shift changes. When the shift changes, the operator token puts the current shift profile into some unused state (STATE_SCHEDULED_DOWN, in this case), and then applies new state changes to the correct shift token's label. A Statistics Collector listens for when the Operator token starts the main loop at the beginning of each shift. When this happens, the collector saves a row value that is an array, composed of the operator and the shift token. The row mode is set to unique, so that each unique combo of operator/profile gets its own row. Each column in the collector is made to show the data from the shift corresponding to that row. The result is the table shown in the article, which can be plotted with a pie chart as shown above.
View full article
This supply chain demonstration model shows both a visual and statistical representation of a company's stock and backorder from day-to-day. The goal of the model was to predict shortages and backorder trends due to COVID-related disruptions. FlexSim's 3D view is used in a novel way to visualize the current stock and demand for each product. Each queue represents a different product SKU and each box represents a product unit, with red indicating product demand and blue indicating product availability. This model also contains a comprehensive set of dashboards to help visualize and interpret the data. Logistics_Supply-Shortages-Stockouts_v22-2.fsm
View full article
A number of questions on the forum involve racks being service by a combination of shuttles and elevators. There are solutions involving network, Astar and AGV navigators, but for this example we’re just going to use TaskExecuter FlowItems and conveyors. The elevator system in particular, as described to me, seemed it would benefit from the flexibility conveyors offer – particularly spacing options, and the possibility of having dog/power-and-free based travel. For the pick face we can just use the slot and item locations to give the task executers travel command, and we can use kinematics for loading and unloading tasks. This removes the need for network nodes or control points at each location and allows fine positioning of a ‘two spot’ shuttle in front of the slot. The system has been put into a container to represent the cell/aisle and it is this object that is the instance member of the ShuttleSystemProcess process flow. The cell is designed to be duplicated with each cell becoming a new member instance of the single process flow. It comprises two racks, two elevators (conveyor loops), and a shuttle return queue (also a conveyor but with no roller visual). The system assumes that by the time an inbound item arrives at the pickup position it has been assigned a slot in one of the racks in the cell – so you should assign a slot in the normal way before it reaches a shuttle. You can additionally request items for picking out of the racks by pushing the item to the global list ItemsToPick. Currently each shuttle will store and/or pick one item in one trip with a dedicated position for each. When doing both in a single trip, the order in which this happens will depend where along the level the slots are located. In the event that there are no remaining tasks but items still need to exit the cell, the shuttles at the front of the queue will be asked to circulate empty through the system, thereby allowing the outbound items to advance to the exit position. The number of shuttles in the system is a process flow variable. In the example system there are elevators at each end of the rack(s) with a number of carriers to transport shuttles to the levels. Both elevators have a process flow variable for the number of carriers to be generated. Shuttles are not allowed to pick from the same level at the same time but in order to keep the up-elevator moving the carriers can unload the shuttle to the level even if another is active on that level. The shuttles only travel along the face of the rack in one direction towards the down-elevator and once are collected by a carrier the next shuttle on that level can start its operations. It is possible to run the system with only one rack should you wish to view the operations without the second rack obscuring your view. Since different applications will use different rack dimensions the cell has a label method called “configureToRack” which will align the conveyors and decision points to Rack1 based on the level heights and size of the racks that the user has set for Rack1. There may be some limits to very small sizes when the conveyor decision points overlap. The second rack will be configured during this method call to mirror Rack1. Here’s an example invocation of this method for an instance of the cell: Model.find("RackShuttleSystem").as(Object).configureToRack The shuttles need levels to be the same height along the length of the rack. Some effort was made to configure the system based on the shuttle and carrier sizes, so you can try adjusting those to suit your needs and hopefully the alignment will work as needed. The elevator conveyor and shuttle speeds are not set by the alignment method so you can edit those in the usual way. This is an example for both learning and perhaps as a starting point for any project should you find the approach suits your application, modelling style and skills. ShuttleLiftAndRack.fsm Time taken: 1 day to build the working model - plus another to work around holes api for auto-alignment code. 17Nov Updated: to initalize shuttles at the load point (via fast entry) added shuttleQheight label for use to set the returnQ height in the cell (used by the alignment method) added a process flow variable 'shuttleLoadTime' for the time to un/load items. aligned shuttle kinematics to the speed and acceleration of the TE FlowItem.
View full article
We normally try not to introduce changes in a bug-fix release that require module developers to recompile their modules using new flexsimcontent headers. However, 17.0.4 included a bug-fix that added a virtual method on the SimpleDataType, which changes the virtual tables of any classes that inherit from that class. Because of this change, you will need to update your flexsimcontent and recompile your modules in order for them to work properly with 17.0.4. We apologize for this inconvenience. We have added a "v17.0" branch to the Module SDK repository that includes the updated flexsimcontent that you will need to compile for 17.0.4.
View full article
Top Contributors