在Linux/Ubuntu系统中安装SIMPACK2021x

1. 为什么需要在Linux系统上安装SIMPACK

简而言之,若需要实现基于Simpack的硬件在环(HiL)和软件在环(SiL)系统,其实时仿真Realtime模块仅完整支持Linux系统。

Realtime模块的常见应用包括驾驶模拟器、舒适度模拟器,或与发动机测试平台进行接口。下图为Simpack官方文档的实例,笔者也搭建了一套以Simpack Realtime为核心的类似系统。

Realtime求解器本身经过优化,可以在多个核心上并行运行,而动画和记录器分别在单独的核心上运行。动画和记录器都通过用户数据报协议(User Datagram Protocol,UDP)与Realtime模块求解器通信。求解器与Realtime目标通信,而Realtime目标可以与外部硬件进行接口。Simpack Realtime可与多个不同的目标一起使用,以连接外部硬件/软件执行HiL/SiL模拟,例如dSPACE、Concurrent SIMulation Workbench和Simulink。

在Linux系统中,Realtime支持各个Target,包括:

  • Target 'dspace'
  • Targets 'concurrent' and 'concurrent-rfactor'
  • Target 'udp-general'
  • Target 'sensowheel'
  • Target 'logitech-g27'
  • Target 'sensowheel-g27'
  • Target 'rfactor-pro'
  • Target 'android-udp'
  • Target 'sfunction'
  • Target 'simat'

Windows系统仅支持以下Target:Logitech G27方向盘、Matlab/Simulink SIMAT。其中, Matlab/Simulink SIMAT就是比较常用的Simpack-Simulink联合仿真。

2. Ubuntu系统中安装SIMPACK2021x的操作步骤

解压安装包,生成文件夹的名称为DS Simulia SimPack 2021x Win Linux X64。

1)安装 SIMPACK。

在 .../DS Simulia SimPack 2021x Win Linux X64/install文件夹下,首先修改spck-2021x-build107-linux64-installer.bin的文件权限,允许文件作为程序执行。

之后,在终端中运行

sudo ./spck-2021x-build107-linux64-installer.bin 

 将跳出熟悉的Simpack安装界面。

 选择确认安装——“是”。

 选择安装路径。

 勾选Simpack 2021x与OLicense Server。

正在安装中。

2)安装Olicense Server

SIMPACK安装完毕后,会跳出许可证允许文件作为程序执行程序的安装界面。

正常选择安装。

 安装结束后,取消勾选Launch OLicense-Server,Finish。

同时,也取消勾选 Launch Simpack now。

3)Crack许可证文件

将Crack文件夹Crack下的 olicenseserver.lin 替换掉OLicense-Server安装路径下的文件。

若权限不足,则使用chmod +777指令修改对应文件夹权限。

  • /opt文件夹处使用
    sudo chmod +777 Optimum/
  • /opt/Optimum文件夹处使用
    sudo chmod +777 OLicenseServer/

获得文件夹修改权限后,可以删除原有olicenseserver.lin文件,再复制新的Crack文件夹的olicenseserver.lin文件到相应位置。

Tips: 如果端口 80 被 IIS 或其他 Web 服务器占用,请将 "olicenseserver.ini" 从 SolidSQUAD\ChangePort 文件夹覆盖到安装 olicenseserver.lin 的目录。

在OLicenseServer安装目录中,本例为/opt/Optimum/OLicenseServer,修改olicenseserver.lin的文件权限,允许文件作为程序执行。并在终端中运行:

sudo ./olicenseserver.lin 

大部分情况下,将会遇到如下错误:

olicenseserver.lin: loadlocale.c:130: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.

这个错误与 Linux 系统上的区域设置(locales)有关。这意味着在加载 olicenseserver.lin 时,程序试图访问一个不存在的本地化数据。为解决此问题,请在终端中输入:

gedit ~/.bashrc

在打开的.bashrc文件的最后一行,补充如下段落:

export LC_ALL=C
export LC_CTYPE=C.UTF-8

如下图第133、134行。 

再次启动终端,在 /opt/Optimum/OLicenseServer中输入

sudo ./olicenseserver.lin 

 将会出现localhost:80端口已被打开。

4)导入许可证文件 

打开网络浏览器,导航到 "http://localhost:80" 以打开 OLicenseServer 控制界面。 如果使用 "ChangePort" 配置,请导航到 "http://localhost:81"。 在导入许可证操作中,从 SolidSQUAD 目录选择 SIMPACKAG_SSQ.olixml,点击导入并等待多个 "accepted" 消息。

 关闭 Web 界面。

5)在Simpack前处理GUI界面中输入License地址

若Simpack没有在桌面上生成快捷方式,则可以在/opt/Simpack-2021x/run/bin/linux64/simpack-gui中找到GUI前处理界面。

可以通过搜索gui后,右键选择运行,或者使用以下命令:

cd /opt/Simpack-2021x/run/bin/linux64 
./simpack-gui

Simpack后处理程序,位于/opt/Simpack-2021x/run/bin/linux64/simpack-post。

可以通过搜索post后,右键选择运行,或者使用以下命令:

cd /opt/Simpack-2021x/run/bin/linux64 
./simpack-post

根据以上程序打开方式,打开 Simpack前处理界面,在 DSLS 错误提示上选择忽略, 转到 "Extras - Licensing",选择 "OLicense" 作为许可证类型,选择 "localhost:80" 作为许可证服务器。 如果使用 "ChangePort" 配置,请将 "localhost:81" 用作许可证服务器。

此时,顺利进入Simpack GUI界面,可以继续建模计算,完成安装。

 注意:每次重启开机时,Olicenseserver可能不会自动启动,需要手动进入OLicenseServer安装目录,即/opt/Optimum/OLicenseServer中输入

sudo ./olicenseserver.lin 

再启动Simpack前处理GUI界面程序。

猜你喜欢

转载自blog.csdn.net/wenquantongxin/article/details/130537652