# Simulation Aids Module Public Beta

**URL:** <https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403>\
**Category:** General Discussion\
**Created:** [August 26, 2015, 9:11pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403 "2015-08-26T21:11:39Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 26, 2015, 9:11pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/1 "2015-08-26T21:11:39Z")

</div>

Automation Professionals is pleased to announce the public availability of the Simulation Aids Module (superseded by a bugfix version below…) for beta testing and general evaluation. The beta module is free and not time-limited in any way. I’m am considering keeping it free when placed in the marketplace at a future date. Feedback on that is appreciated, too. 🙂 As a free module, support is limited to the forums.

The module itself is composed of four expression functions that help me test projects in-house when physical components are off-limits or don’t yet exist. There’s a handful of auxiliary scripting functions that enhance the experience, but the expression functions are the main event:  
[ul][li]objectScript()  
An alternative to runScript that packages any number of additional function arguments as an “args” tuple for use within the script expression. Also, in client or designer scopes, provides access to the binding properties.[/li]  
[li]ramp()  
Given speed and acceleration limits, compute values on a trajectory from the current value to a target position. Supports separate forward and reverse speeds. Updates on a given poll rate in client and designer scopes, and at the scan class rate in gateway scope.[/li]  
[li]recorder()  
Given a sample interval, row count limit, and sample values, return a dataset constructed from snapshots of the values at the requested interval. Discards the oldest row when the row limit is reached. Will not over-sample when values change faster than requested. Not available in Gateway scope.[/li]  
[li]view()  
Process a dataset into a new dataset, using jython expressions for each column to return, and in optional “Where”, “Group By”, “Having”, and “Order By” clauses. Extra arguments are converted into an “args” tuple for efficient use within the jython expressions. Not available in Gateway scope.[/li][/ul]  
There’s fairly detailed documentation embedded in the module, accessible from the configuration pages.

---

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [August 27, 2015, 1:01pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/2 "2015-08-27T13:01:22Z")

</div>

That’s just good stuff, Phil! 🙂

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 29, 2015, 10:30pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/3 "2015-08-29T22:30:21Z")

</div>

Thanks! These were too useful to not share. Expression functions like these are particularly handy in the designer, as you don’t have to go to preview mode for them to execute. And if you have some jython code that absolutely has to execute, whether in design mode or preview mode or in a client, objectScript() is your friend.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 1, 2015, 12:42am UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/4 "2015-09-01T00:42:21Z")

</div>

Found some bugs ☹ Typo in the generated code for the view() function, and an error unwrapping Dataset return values from the objectScript() function.

New version: [Simulation Aids Module](http://www.automation-pros.com/ignition/SimulationAids-0.9.0.1509010030.modl)

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 1, 2015, 8:29pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/5 "2015-09-01T20:29:15Z")

</div>

I’ve created a sample project that interactively exercises the major features of this module. Includes various dataset filtering and ordering operations with the view() function, a “drum sequencer” style setpoint generator using objectScript(), the ramp() and recorder() functions in client tags, and user-editable pseudo-SQL from a text edit field.  
The setpoint generator shows how to use the binding with objectScript() to efficiently poll only as often as necessary: at varying intervals from a constant configuration.  
Created with v7.7.0.  
[SimAidsDemo2015-09-01a.proj](https://us1.discourse-cdn.com/inductiveautomation/original/2X/3/3fadd1a9362e23e57e68db6ac482584b2ffcc92e.proj) (52.8 KB)

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 16, 2015, 12:23pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/6 "2015-09-16T12:23:49Z")

</div>

Found another bug. Also built for multiple api levels.

New versions:  
[Simulation Aids Module for v7.5](http://www.automation-pros.com/ignition/Simulation%20Aids-0.9.1.1509161214-api4.modl)  
[Simulation Aids Module for v7.6](http://www.automation-pros.com/ignition/Simulation%20Aids-0.9.1.1509161214-api5.modl)  
[Simulation Aids Module for v7.7](http://www.automation-pros.com/ignition/Simulation%20Aids-0.9.1.1509161214-api6.modl)  
[Simulation Aids Module for v7.8](http://www.automation-pros.com/ignition/Simulation%20Aids-0.9.1.1509161214-api7.modl)

Warning – not tested at all yet for v7.5 and v7.6.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [October 8, 2015, 4:46pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/7 "2015-10-08T16:46:27Z")

</div>

The Simulation Aids module is now publicly released. Announcement [here](https://inductiveautomation.com/forum/viewtopic.php?f=50&t=14532). 😃

---

<div class="post-metadata">

**Author:** ![Darren1](https://avatars.discourse-cdn.com/v4/letter/d/b2d939/32.png) [@Darren1](https://forum.inductiveautomation.com/u/Darren1)\
**Post date:** [June 1, 2017, 8:43pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/8 "2017-06-01T20:43:15Z")

</div>

Is that SimAidsDemo.proj still available by chance? The links seem to be broken.  
I’m able to download the module though, many thanks for that!

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [June 2, 2017, 12:31am UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/9 "2017-06-02T00:31:10Z")

</div>

Ah, yes. Use [this link](https://www.automation-pros.com/ignition/SimAidsDemo2015-10-13.proj) to get that Demo project. Be sure to use the designer to look under the hood!

---

<div class="post-metadata">

**Author:** ![Darren1](https://avatars.discourse-cdn.com/v4/letter/d/b2d939/32.png) [@Darren1](https://forum.inductiveautomation.com/u/Darren1)\
**Post date:** [June 2, 2017, 11:11pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/10 "2017-06-02T23:11:33Z")

</div>

Thank you so much!!! 😄

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 26, 2024, 2:40pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/11 "2024-02-26T14:40:53Z")

</div>

Note to modern visitors: This module has been renamed:

> [@Automation Professionals' Integration Toolkit Module](https://forum.inductiveautomation.com/t/automation-professionals-integration-toolkit-module/74934):
>
> Automation Professionals is pleased to announce the immediately availability of a major upgrade to its free Simulation Aids Integration Toolkit module. The new feature justifying the "major upgrade" language is the implementation of eleven thirty-one new expression functions which use iteration to accomplish complex transforms of datasets and lists, to or from other datasets and lists, applying filtering, ordering, and computed new columns along the way. While there are certain operations that…

---

<div class="post-metadata">

**Author:** ![italogustavoaraujo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/italogustavoaraujo/32/55235_2.png) [@italogustavoaraujo](https://forum.inductiveautomation.com/u/italogustavoaraujo)\
**Post date:** [February 26, 2024, 4:10pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/12 "2024-02-26T16:10:16Z")

</div>

Hello, I need to download version 1.8.0, and I can't find it. I need to reinstall the ignition and the module was not saved in the backup.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/2/e2bf6406185ce0aad39ab3420623ec36a4acfbe2.png)

---

<div class="post-metadata">

**Author:** ![italogustavoaraujo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/italogustavoaraujo/32/55235_2.png) [@italogustavoaraujo](https://forum.inductiveautomation.com/u/italogustavoaraujo)\
**Post date:** [February 26, 2024, 4:22pm UTC](https://forum.inductiveautomation.com/t/simulation-aids-module-public-beta/10403/13 "2024-02-26T16:22:42Z")

</div>

I installed the following version and it worked correctly, thank you!  
[https://www.automation-pros.com/ignition/Integration%20Toolkit-2.0.15.240431913-v81.modl](https://www.automation-pros.com/ignition/Integration%20Toolkit-2.0.15.240431913-v81.modl)
