Java调用simulink
来源:互联网 发布:js indexof array 编辑:程序博客网 时间:2024/05/22 17:26
matlab官方指导:http://cn.mathworks.com/help/matlab/matlab_external/run-simulink-simulation-from-java.html
1.安装matlab2016b 或 matlab2017a
2. 把matlabroot/bin/win64添加到path环境变量中,不然java启动不了matlab,会报no nativemvm in java.library.path错误
3.安装Java1.7或以上版本(注意java 32/64bit 与 matlab 相对应)
4. 把matlab安装路径下的\extern\engines\java\jar\engine.jar导入java工程
5.把simulink文件(.mdl或.slx)复制到java工程,这里以txt.slx为例,位置如下:
6. Java调用代码:
import com.mathworks.engine.*;import java.util.concurrent.Future;import java.util.Arrays;public class RunSimulation { public static void main(String[] args) throws Exception { MatlabEngine eng = MatlabEngine.startMatlab(); Future<Void> fLoad = eng.evalAsync("load_system('txt')"); while (!fLoad.isDone()){ System.out.println("Loading Simulink model..."); Thread.sleep(10000); } Future<Void> fSim = eng.evalAsync("simOut = sim('txt','SaveOutput'," + "'on','OutputSaveName','yOut'," + "'SaveTime','on','TimeSaveName','tOut');"); while (!fSim.isDone()) { System.out.println("Running Simulation..."); Thread.sleep(10000); } // Get simulation data eng.eval("y = simOut.get('yOut');"); eng.eval("t = simOut.get('tOut');"); // Graph results and create image file eng.eval("plot(t,y)"); eng.eval("print('vdpPlot','-djpeg')"); // Return results to Java double[][] y = eng.getVariable("y"); double[] t = eng.getVariable("t"); // Display results System.out.println("Simulation result " + Arrays.deepToString(y)); System.out.println("Time vector " + Arrays.toString(t)); eng.close(); }}
注:具体的输入、输出参数由simulink模型而定。
阅读全文
0 0
- Java调用simulink
- simulink
- Simulink
- Simulink
- simulink调用自定义函数S-Function
- MATLAB\Simulink与python之间相互调用
- (Matlab) simulink和m文件的相互调用
- matlab GUI与simulink混合调用以及参数传递
- (控制)把SIMULINK转成C语言并在VS中调用
- 编写S-Function,创建Simulink模型并生成C++代码,编译生成可调用的动态库dll(From Simulink model to DLL A tutorial)
- simulink 封装
- simulink(转载)
- Simulink学习笔记1--simulink基础
- Simulink学习笔记2--simulink模块操作
- Simulink学习笔记3--Simulink信号操作
- Simulink学习笔记5--Simulink仿真设置
- Simulink小问题集锦
- simulink很强大
- Bootstrap学习之模态框(Modal)插件
- Hexo+Github搭建网站
- Fzu 2203 单纵大法好【二分+贪心】
- js 两种写法监听鼠标的滑动问题
- loadrunner 问题1:录制时0envents,怎么解决:在Win7旗舰版安装并运行LoadRunner11
- Java调用simulink
- Bandit算法与推荐系统
- 东北酱油 模拟赛 期望dp
- Android webview 注入JS
- 【机房重构】——设计模式的运用
- 找不到支撑位和压力位?看完本文可帮到你
- 51nod 一级算法题简略记录
- [转]Java 开发环境搭建
- (个人)AR电子书系统创新实训第五周(1)