OpenSim教程六——Matlab接口

OpenSim的Matlab接口

OpenSim是进行人体肌骨模型仿真的免费软件,虽然它是开源的,但非计算机专业的人一般只会用官方提供的GUI。这个GUI是用JAVA写的,实现对自定义肌骨模型及其运动效果的可视化,功能比较有限。如果想自己实现一些对肌骨模型的控制,或者是想做物理实体与肌骨模型相互作用的联合仿真,则建议在Matlab中调用OpenSim的API,毕竟Matlab/Simulink有强大的数据处理和控制系统建模的能力。
本文参照官网教程,演示如何在Windows的Matlab中设置OpenSim接口。本人的软件版本信息:Windows10(64位),Matlab 2018b(64位), OpenSim 4.0,其他版本应该也可以。需要注意的是,在matlab中调用OpenSim API需要先源码安装OpenSim

设置Matlab环境

假设已安装OpenSim和Matlab。

  1. 将目录OPENSIM_INSTALL_DIR/bin(如C:/OpenSim 4.0/bin)添加到系统环境变量Path中,并确保它置于所有OpenSim安装之首;
    env
  2. 打开Matlab,更改目录到OpenSim安装文件夹下放Matlab脚本的子文件夹,默认是C:/Users//Documents/OpenSim/4.0/Code/Matlab
    matlab1
  3. 运行该文件夹下的脚本 configureOpenSim.m,在弹出的对话框中选择OpenSim的安装目录,一般是C:/OpenSim 4.0。完成后,会弹出成功对话框;
    matlab2
  4. 重启Matlab,在命令行窗口打下面指令;
>>> org.opensim.modeling.opensimCommon.GetVersion();

若出现OpenSim版本号则说明设置成功。
在这里插入图片描述

使用OpenSim库函数

在设置好Matlab环境后,需要载入OpenSim的库才能调用相关的函数,即每次在Matlab使用OpenSim API 前都要输入指令

>>> import org.opensim.modeling.*  % Import OpenSim Libraries

若查看OpenSim某个类有哪些方法,可以输入以下指令

>>> methods Body
>>> methodsview Body

后一种方式可以返回一个详细的窗口列表
在这里插入图片描述

一个Matlab例程

将Matlab目录转到当前文件夹的Hopper_Device子文件下,这里有一个官方给出的单肌肉驱动弹跳的仿真代码,挺有参考价值的,具体可以打开README.txt看下。
如运行RunHopper.m会弹出OpenSim的仿真窗口(OpenGL绘制的),随便按键盘一个键就开始仿真,按Esc退出。
在这里插入图片描述

如运行InteractiveHopper.m会出现一个交互界面,可以选择带/不带助力装置、设置不同的肌肉模型、设置助力策略、画出对应的肌肉活性度和弹跳高度。
在这里插入图片描述

  • 10
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 33
    评论
以下是基于Windows系统的OpenSim安装教程: 1. 下载OpenSimulator二进制文件 在OpenSimulator的官网(https://opensimulator.org/)上下载最新的Windows二进制文件。选择“Download”页面上的“Windows Binaries”链接,然后选择你需要的版本进行下载。 2. 解压缩OpenSimulator文件 将OpenSimulator文件解压缩到你想要存放它的文件夹中。你可以选择将其解压缩到C:\Program Files\OpenSimulator目录下,但这需要管理员权限。 3. 配置OpenSimulator文件 进入解压缩后的OpenSimulator文件夹,找到“bin”目录下的“OpenSim.ini.example”文件,并将其重命名为“OpenSim.ini”。 4. 配置OpenSimulator数据库 如果你想要使用MySQL数据库,请确保已经安装了MySQL服务器,并设置了正确的用户名和密码。在“OpenSim.ini”文件中,找到以下内容: ```[Startup] ; default is to use BasicData.ini as the data source, but you can choose ; to use a different one here. ; DataSource = "BasicData.ini" DataSource = "MySQL" ``` 将“DataSource”设为“MySQL”,并在下面添加以下内容: ```[DatabaseService] ; Connect string for the MySQL database server. ; This assumes you have a database called "opensim" which ; you have granted rights to the user specified below. ConnectionString = "Database=mysql;Server=localhost;Port=3306;Uid=root;Pwd=mypassword;Database=opensim;" ``` 将“Uid”和“Pwd”修改为你的MySQL用户名和密码,将“Database”修改为你想要使用的数据库名称。 5. 启动OpenSimulator 双击“bin”目录下的“OpenSim.exe”文件,OpenSimulator将会启动。如果出现错误,请检查“OpenSim.ini”文件中的配置是否正确。 6. 连接OpenSimulator 用一个Second Life兼容的客户端(比如Firestorm、Singularity等),连接OpenSimulator。在登录界面中,输入你的用户名和密码,以及OpenSimulator的IP地址和端口号(默认为“localhost:9000”),然后点击“连接”按钮。 7. 开始使用OpenSimulator 现在你可以在OpenSimulator中创建一个虚拟世界,并开始构建你的虚拟环境了!
评论 33
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值