MATLAB Answers

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

16 ビュー (過去 30 日間)
Aman Kalia
Aman Kalia 2016 年 5 月 19 日
回答済み: Todd Leonhardt 2016 年 5 月 19 日
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.

回答 (2 件)

Steven Lord
Steven Lord 2016 年 5 月 19 日
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 2016 年 5 月 19 日
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!

Translated by