Is there a way to control the action of an external program through MATLAB?

28 views (last 30 days)
I am using a co - simulation software by TLK - Thermo for my MATLAB simulations. One of the problem that prevents me from running batches of simulation presently is that once the two models are compiled I have to be physically present to click a button to initiate SYNC in the TLK - Thermo Simulation Server interface. This same button is also activated by a key combination of "Alt + 3". I was wondering if there is a way to write a small code/script that can do the same thing when both the models are ready to by SYNCED thus allowing me to run a batch simulation in one go.
If anyone knows a way to control an external program action through MATLAB with some example it would be really helpful. Thanks in advance.

Answers (2)

Steven Lord
Steven Lord on 19 May 2016
On Windows, see if the external program has a COM interface.
On other platforms, or if the external program does not offer a COM interface, you could try using the Java Robot interface. Locating the button you want to press could be tricky; you might be able to work around this by clicking on the button manually the first time and storing the location of that click, then reusing that location in subsequent runs.

Todd Leonhardt
Todd Leonhardt on 19 May 2016
You can use Java to automate GUI interaction. See this article for more information on that: http://undocumentedmatlab.com/blog/gui-automation-robot/

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!